hongxilin 5 months ago
parent
commit
59075da84b
  1. 7
      vue/gold-system/src/views/audit/rechargeAudit.vue
  2. 3
      vue/gold-system/src/views/audit/refundAudit.vue
  3. 67
      vue/gold-system/src/views/consume/addConsume.vue
  4. 4
      vue/gold-system/src/views/consume/allConsume.vue
  5. 2
      vue/gold-system/src/views/login.vue
  6. 18
      vue/gold-system/src/views/managerecharge/rate.vue
  7. 225
      vue/gold-system/src/views/recharge/addRecharge.vue
  8. 4
      vue/gold-system/src/views/recharge/adminRecharge.vue
  9. 4
      vue/gold-system/src/views/recharge/allRecharge.vue
  10. 111
      vue/gold-system/src/views/refund/addRefund.vue
  11. 6
      vue/gold-system/src/views/refund/allRefund.vue
  12. 80
      vue/gold-system/src/views/workspace/index.vue

7
vue/gold-system/src/views/audit/rechargeAudit.vue

@ -183,17 +183,20 @@ const get7Days = function () {
const adminAll = function () { const adminAll = function () {
console.log("adminAll"); console.log("adminAll");
rechargeVo.value.status = ""; rechargeVo.value.status = "";
getObj.value.pageNum = 1;
get(); get();
}; };
// //
const adminWait = function () { const adminWait = function () {
rechargeVo.value.status = 0; rechargeVo.value.status = 0;
getObj.value.pageNum = 1;
get(); get();
console.log("adminWait"); console.log("adminWait");
}; };
// //
const adminPass = function () { const adminPass = function () {
rechargeVo.value.status = 1; rechargeVo.value.status = 1;
getObj.value.pageNum = 1;
get(); get();
console.log("adminPass"); console.log("adminPass");
}; };
@ -405,10 +408,10 @@ onMounted(async function () {
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="head-card-element"> <div class="head-card-element">
<el-text class="mx-1" size="large">支付方式</el-text>
<el-text class="mx-1" size="large">充值方式</el-text>
<el-select <el-select
v-model="rechargeVo.payWay" v-model="rechargeVo.payWay"
placeholder="请选择支付方式"
placeholder="请选择充值方式"
size="large" size="large"
style="width: 240px" style="width: 240px"
clearable clearable

3
vue/gold-system/src/views/audit/refundAudit.vue

@ -170,17 +170,20 @@ const get7Days = function () {
const adminAll = function () { const adminAll = function () {
console.log("adminAll"); console.log("adminAll");
consumeDetail.value.status = ""; consumeDetail.value.status = "";
getObj.value.pageNum = 1;
get(); get();
}; };
// //
const adminWait = function () { const adminWait = function () {
consumeDetail.value.status = 0; consumeDetail.value.status = 0;
getObj.value.pageNum = 1;
get(); get();
console.log("adminWait"); console.log("adminWait");
}; };
// //
const adminPass = function () { const adminPass = function () {
consumeDetail.value.status = 1; consumeDetail.value.status = 1;
getObj.value.pageNum = 1;
get(); get();
console.log("adminPass"); console.log("adminPass");
}; };

67
vue/gold-system/src/views/consume/addConsume.vue

@ -41,7 +41,12 @@ const add = async function () {
"http://192.168.8.93:10010/consume/add", "http://192.168.8.93:10010/consume/add",
addConsume.value addConsume.value
); );
if (result.code === 0) {
ElMessage.error(result.msg);
return;
} else {
ElMessage.success("添加成功");
}
// //
addConsume.value = {}; addConsume.value = {};
addConsume.value.adminId = adminData.value.adminId; addConsume.value.adminId = adminData.value.adminId;
@ -54,6 +59,8 @@ const add = async function () {
user.value = {}; user.value = {};
} catch (error) { } catch (error) {
console.log("请求失败", error); console.log("请求失败", error);
ElMessage.error("添加失败,请检查输入内容是否正确");
// //
} }
}; };
@ -62,6 +69,11 @@ const addBefore = () => {
if (valid) { if (valid) {
ElMessageBox.confirm("确认添加?") ElMessageBox.confirm("确认添加?")
.then(() => { .then(() => {
addConsume.value.freeCoin = Number(-addConsume.value.freeCoin);
addConsume.value.rechargeCoin = Number(
-addConsume.value.rechargeCoin
);
addConsume.value.taskCoin = Number(-addConsume.value.taskCoin);
add(); add();
console.log("添加成功"); console.log("添加成功");
imageUrl.value = ""; imageUrl.value = "";
@ -171,7 +183,8 @@ const userGold = ref({});
const getUserGold = async function (jwcode) { const getUserGold = async function (jwcode) {
try { try {
const result = await API.post( const result = await API.post(
"http://192.168.8.93:10010/statistics/getMess/" + jwcode
"http://192.168.8.93:10010/statistics/getMess/" + jwcode,
{}
); );
if (result.code === 0) { if (result.code === 0) {
addConsume.value.jwcode = ""; addConsume.value.jwcode = "";
@ -321,65 +334,71 @@ function calculateCoins() {
</el-form> </el-form>
<!-- 客户信息栏 --> <!-- 客户信息栏 -->
<el-card style="width: 700px; float: right" class="customer-info">
<el-form
:model="user"
label-width="auto"
style="max-width: 600px"
label-position="left"
<el-card style="float: right" class="customer-info">
<el-form :model="user" label-width="auto" label-position="left">
<el-text size="large" style="margin-left: 20px; font-weight: bold"
>客户信息</el-text
> >
<el-text size="large" style="margin-left: 20px">客户信息</el-text>
<el-row style="margin-top: 20px">
<el-col :span="12">
<el-row style="margin-top: 20px; display: flex">
<el-col :span="10">
<el-form-item label="姓名:"> <el-form-item label="姓名:">
<p>{{ user.name }}</p> <p>{{ user.name }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="历史金币总数"> <el-form-item label="历史金币总数">
<p>{{ user.totalRechargeGold }}</p> <p>{{ user.totalRechargeGold }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="精网号"> <el-form-item label="精网号">
<p>{{ user.jwcode }}</p> <p>{{ user.jwcode }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="当前金币总数"> <el-form-item label="当前金币总数">
<p>{{ user.sumgold }}</p>
<span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{
user.buyJb + user.free6 + user.free12 + user.coreJb
}}</span>
<span
style="display: inline; white-space: nowrap; color: #b1b1b1"
v-if="user.buyJb"
>(充值金币:{{ user.buyJb }};免费金币:{{
user.free6 + user.free12
}};任务金币:{{ user.coreJb }})</span
>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="首次充值日期"> <el-form-item label="首次充值日期">
<p v-if="user.firstRechargeDate"> <p v-if="user.firstRechargeDate">
{{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }} {{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }}
</p> </p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="充值次数"> <el-form-item label="充值次数">
<p>{{ user.rechargeTimes }}</p>
<p style="color: #2fa1ff">{{ user.rechargeTimes }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="负责客服"> <el-form-item label="负责客服">
<p>{{ adminData.name }}</p> <p>{{ adminData.name }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="消费次数"> <el-form-item label="消费次数">
<p>{{ user.spendTimes }}</p>
<p style="color: #2fa1ff">{{ user.spendTimes }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="所属门店"> <el-form-item label="所属门店">
<p>{{ adminData.area }}</p> <p>{{ adminData.area }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="待审核"> <el-form-item label="待审核">
<p>
<p style="color: #2fa1ff">
{{ user.A }} {{ user.A }}
</p> </p>
</el-form-item> </el-form-item>

4
vue/gold-system/src/views/consume/allConsume.vue

@ -235,7 +235,7 @@ getGoods();
<el-text class="mx-1" size="large">商品名称</el-text> <el-text class="mx-1" size="large">商品名称</el-text>
<el-select <el-select
v-model="detailVo.productName" v-model="detailVo.productName"
placeholder="请选择活动名称"
placeholder="请选择商品名称"
size="large" size="large"
style="width: 240px" style="width: 240px"
clearable clearable
@ -254,7 +254,7 @@ getGoods();
<el-text class="mx-1" size="large">消费平台</el-text> <el-text class="mx-1" size="large">消费平台</el-text>
<el-select <el-select
v-model="detailVo.consumePlatform" v-model="detailVo.consumePlatform"
placeholder="请选择支付方式"
placeholder="请选择消费平台"
size="large" size="large"
style="width: 240px" style="width: 240px"
clearable clearable

2
vue/gold-system/src/views/login.vue

@ -26,7 +26,7 @@ const login = async function () {
console.log("请求成功", result); console.log("请求成功", result);
} else { } else {
form.value.password = ""; form.value.password = "";
form.value.userjwcode = "";
form.value.jwcode = "";
ElMessage.error(result.data.msg); ElMessage.error(result.data.msg);
} }
} catch (error) { } catch (error) {

18
vue/gold-system/src/views/managerecharge/rate.vue

@ -556,6 +556,24 @@ const checkNumber = function () {
<el-form-item label="提交人:"> <el-form-item label="提交人:">
<el-input disabled :value="adminData.name" style="width: 240px" /> <el-input disabled :value="adminData.name" style="width: 240px" />
</el-form-item> </el-form-item>
<el-form-item label="开始时间:">
<el-date-picker
v-model="rateEdit.startTime"
type="date"
placeholder="请选择时间"
:default-value="new Date()"
value-format="YYYY-MM-DD"
/>
</el-form-item>
<el-form-item label="结束时间:">
<el-date-picker
v-model="rateEdit.endTime"
type="date"
placeholder="请选择时间"
:default-value="new Date()"
value-format="YYYY-MM-DD"
/>
</el-form-item>
<el-form-item> <el-form-item>
<div class="dialog-footer"> <div class="dialog-footer">
<el-button type="primary" @click="edit">修改</el-button> <el-button type="primary" @click="edit">修改</el-button>

225
vue/gold-system/src/views/recharge/addRecharge.vue

@ -141,9 +141,9 @@ const getUser = async function (jwcode) {
console.log("用户信息", user.value); console.log("用户信息", user.value);
console.log("用户信息", user.value.firstRechargeDate); console.log("用户信息", user.value.firstRechargeDate);
if (result.data.code === 0) { if (result.data.code === 0) {
ElMessage.error(result.data.msg);
ElMessage.error(result.msg);
} else { } else {
ElMessage.success(result.data.msg);
ElMessage.success(result.msg);
} }
} catch (error) { } catch (error) {
console.log("请求失败", error); console.log("请求失败", error);
@ -197,35 +197,35 @@ getCurrency();
// //
const imageUrl = ref(""); const imageUrl = ref("");
// //
// const handleAvatarSuccess = (response, uploadFile) => {
// // imageUrl.value = URL.createObjectURL(uploadFile.raw);
// // console.log("", response, uploadFile);
// // addRecharge.value.rechargeVoucher = `http://192.168.8.93:10010/upload/${response.data}`;
// // console.log("", addRecharge.value.rechargeVoucher);
// // Base64
//
const handleAvatarSuccess = (response, uploadFile) => {
imageUrl.value = URL.createObjectURL(uploadFile.raw);
console.log("图片上传成功", response, uploadFile);
addRecharge.value.rechargeVoucher = `http://192.168.8.93:10010/upload/${response.data}`;
console.log("图片名称", addRecharge.value.rechargeVoucher);
// Base64
// const reader = new FileReader(); // const reader = new FileReader();
// reader.onloadend = () => { // reader.onloadend = () => {
// const base64data = reader.result; // const base64data = reader.result;
// const data = { // const data = {
// rechargeVoucher: base64data, // rechargeVoucher: base64data,
// }; // };
// // JSON
// axios
// .post("http://192.168.8.93:10010/upload", data)
// .then((res) => {
// console.log("", res);
// addRecharge.value.rechargeVoucher = `http://192.168.8.93:10010/upload/${response.data}`;
// console.log("", addRecharge.value.rechargeVoucher);
// })
// .catch((error) => {
// console.error("", error);
// });
// };
// JSON
axios
.post("http://192.168.8.93:10010/upload", data)
.then((res) => {
console.log("图片上传成功", res);
addRecharge.value.rechargeVoucher = `http://192.168.8.93:10010/upload/${response.data}`;
console.log("图片名称", addRecharge.value.rechargeVoucher);
})
.catch((error) => {
console.error("图片上传失败", error);
});
};
// reader.readAsDataURL(uploadFile.raw); // reader.readAsDataURL(uploadFile.raw);
// imageUrl.value = URL.createObjectURL(uploadFile.raw); // imageUrl.value = URL.createObjectURL(uploadFile.raw);
// console.log("", response, uploadFile); // console.log("", response, uploadFile);
// };
// const handleAvatarSuccess = (response, uploadFile) => { // const handleAvatarSuccess = (response, uploadFile) => {
// // Base64 // // Base64
// const reader = new FileReader(); // const reader = new FileReader();
@ -291,65 +291,125 @@ const imageUrl = ref("");
// reader.readAsDataURL(file); // reader.readAsDataURL(file);
// }); // });
// }; // };
const handleAvatarSuccess = (response, file, fileList) => {
//
imageUrl.value = URL.createObjectURL(file.raw);
};
// const handleAvatarSuccess = (response, file, fileList) => {
// //
// imageUrl.value = URL.createObjectURL(file.raw);
// };
const beforeAvatarUpload = (file) => {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.onload = (e) => {
const base64Data = e.target.result;
const imgData = {
image: base64Data,
fileName: file.name,
};
const formData = new FormData();
formData.append("imageData", JSON.stringify(imgData));
// 使 fetch axios formData
fetch("http://192.168.8.93:10010/upload", {
method: "POST",
body: formData,
})
.then((response) => response.json())
.then((data) => {
ElMessage.success("上传成功");
resolve();
})
.catch((error) => {
ElMessage.error("上传失败");
reject();
});
};
reader.readAsDataURL(file);
});
};
// const beforeAvatarUpload = (file) => {
// return new Promise((resolve, reject) => {
// const reader = new FileReader();
// reader.onload = (e) => {
// const base64Data = e.target.result;
// const imgData = {
// image: base64Data,
// fileName: file.name,
// };
// const formData = new FormData();
// formData.append("imageData", JSON.stringify(imgData));
// // 使 fetch axios formData
// fetch("http://192.168.8.93:10010/upload", {
// method: "POST",
// body: formData,
// })
// .then((response) => response.json())
// .then((data) => {
// ElMessage.success("");
// resolve();
// })
// .catch((error) => {
// ElMessage.error("");
// reject();
// });
// };
// reader.readAsDataURL(file);
// });
// };
// const beforeAvatarUpload = (file) => {
// return new Promise((resolve, reject) => {
// const reader = new FileReader();
// reader.onload = (e) => {
// const base64Data = e.target.result;
// const imgData = {
// image: base64Data,
// fileName: file.name,
// };
// // imgData JSON
// const jsonData = JSON.stringify(imgData);
// // 使 fetch axios JSON
// fetch("http://192.168.8.93:10010/upload", {
// method: "POST",
// headers: {
// "Content-Type": "application/json", // JSON
// },
// body: jsonData, // JSON
// })
// .then((response) => response.json())
// .then((data) => {
// ElMessage.success("");
// resolve();
// })
// .catch((error) => {
// ElMessage.error("");
// reject();
// });
// };
// reader.readAsDataURL(file);
// });
// };
// //
const options = [ const options = [
{ {
value: "现金充值",
label: "现金充值",
value: "微信",
label: "微信",
}, },
{ {
value: "龙鳞卡",
label: "龙鳞卡",
value: "支付宝",
label: "支付宝",
}, },
{ {
value: "弘粉卡",
label: "弘粉卡",
value: "银联",
label: "银联",
},
{
value: "信用卡",
label: "信用卡",
},
{
value: "借记卡",
label: "借记卡",
},
{
value: "现金充值",
label: "现金充值",
}, },
]; ];
//id
const getActivityById = async function (row) {
try {
// POST
const result = await API.post(
"http://192.168.8.93:10010/recharge/activity/select",
{ activity: { activityId: row } }
);
addRecharge.value.rechargeRatio = result.data[0].rechargeRatio;
console.log("看看有了吗", result.value);
} catch (error) {
console.log("请求失败", error);
}
};
const handleSelectionChange = (row) => {
getActivityById(row);
};
const calculatedFreeGold = computed(() => { const calculatedFreeGold = computed(() => {
if (!addRecharge.value.activityId == 0) { if (!addRecharge.value.activityId == 0) {
const paidGold = Number(addRecharge.value.paidGold) || 0; const paidGold = Number(addRecharge.value.paidGold) || 0;
const activityId = Number(addRecharge.value.activityId) || 1; // 0
const activityId = Number(addRecharge.value.rechargeRatio) || 1; // 0
return Math.ceil(paidGold / activityId); return Math.ceil(paidGold / activityId);
} }
}); });
const calculatedRechargeGold = computed(() => { const calculatedRechargeGold = computed(() => {
if (!addRecharge.value.rateId == 0) { if (!addRecharge.value.rateId == 0) {
const paidGold = Number(addRecharge.value.paidGold) || 0; const paidGold = Number(addRecharge.value.paidGold) || 0;
@ -415,7 +475,7 @@ const addLine = function () {
}); });
} }
// //
const handleSelectionChange = function (val) {
const handleSelectionChangebatch = function (val) {
console.log("val===", val); console.log("val===", val);
batchDelObj.value = val; batchDelObj.value = val;
} }
@ -647,51 +707,60 @@ const batchAdd = function () {
<p>{{ user.name }}</p> <p>{{ user.name }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="历史金币总数"> <el-form-item label="历史金币总数">
<p>{{ user.totalRechargeGold }}</p> <p>{{ user.totalRechargeGold }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="精网号"> <el-form-item label="精网号">
<p>{{ user.jwcode }}</p> <p>{{ user.jwcode }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="当前金币总数"> <el-form-item label="当前金币总数">
<p>{{ user.sumgold }}</p>
<span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{
user.buyJb + user.free6 + user.free12 + user.coreJb
}}</span>
<span
style="display: inline; white-space: nowrap; color: #b1b1b1"
v-if="user.buyJb"
>(充值金币:{{ user.buyJb }};免费金币:{{
user.free6 + user.free12
}};任务金币:{{ user.coreJb }})</span
>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="首次充值日期"> <el-form-item label="首次充值日期">
<p v-if="user.firstRechargeDate"> <p v-if="user.firstRechargeDate">
{{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }} {{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }}
</p> </p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="充值次数"> <el-form-item label="充值次数">
<p>{{ user.rechargeTimes }}</p>
<p style="color: #2fa1ff">{{ user.rechargeTimes }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="负责客服"> <el-form-item label="负责客服">
<p>{{ adminData.name }}</p> <p>{{ adminData.name }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="消费次数"> <el-form-item label="消费次数">
<p>{{ user.spendTimes }}</p>
<p style="color: #2fa1ff">{{ user.spendTimes }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="所属门店"> <el-form-item label="所属门店">
<p>{{ adminData.area }}</p> <p>{{ adminData.area }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="待审核"> <el-form-item label="待审核">
<p>
<p style="color: #2fa1ff">
{{ user.A }} {{ user.A }}
</p> </p>
</el-form-item> </el-form-item>
@ -707,7 +776,7 @@ const batchAdd = function () {
</el-row> </el-row>
<el-row> <el-row>
<el-table :data="batchData" border max-height="540px" style="height: 540px;" <el-table :data="batchData" border max-height="540px" style="height: 540px;"
@selection-change="handleSelectionChange">
@selection-change="handleSelectionChangebatch">
<el-table-column type="selection" width="50px" /> <el-table-column type="selection" width="50px" />
<el-table-column property="index" label="序号" width="55px"> <el-table-column property="index" label="序号" width="55px">
<template #default="scope"> <template #default="scope">

4
vue/gold-system/src/views/recharge/adminRecharge.vue

@ -152,23 +152,27 @@ const get7Days = function () {
const adminAll = function () { const adminAll = function () {
console.log('adminAll'); console.log('adminAll');
rechargeVo.value.status = ''; rechargeVo.value.status = '';
getObj.value.pageNum = 1;
get(); get();
} }
// //
const adminWait = function () { const adminWait = function () {
rechargeVo.value.status = 0; rechargeVo.value.status = 0;
getObj.value.pageNum = 1;
get(); get();
console.log('adminWait'); console.log('adminWait');
} }
// //
const adminPass = function () { const adminPass = function () {
rechargeVo.value.status = 1; rechargeVo.value.status = 1;
getObj.value.pageNum = 1;
get(); get();
console.log('adminPass'); console.log('adminPass');
} }
// //
const adminReject = function () { const adminReject = function () {
rechargeVo.value.status = 2; rechargeVo.value.status = 2;
getObj.value.pageNum = 1;
get(); get();
console.log('adminReject'); console.log('adminReject');
} }

4
vue/gold-system/src/views/recharge/allRecharge.vue

@ -168,23 +168,27 @@ const get7Days = function () {
const adminAll = function () { const adminAll = function () {
console.log("adminAll"); console.log("adminAll");
rechargeVo.value.status = ""; rechargeVo.value.status = "";
getObj.value.pageNum = 1;
get(); get();
}; };
// //
const adminWait = function () { const adminWait = function () {
rechargeVo.value.status = 0; rechargeVo.value.status = 0;
getObj.value.pageNum = 1;
get(); get();
console.log("adminWait"); console.log("adminWait");
}; };
// //
const adminPass = function () { const adminPass = function () {
rechargeVo.value.status = 1; rechargeVo.value.status = 1;
getObj.value.pageNum = 1;
get(); get();
console.log("adminPass"); console.log("adminPass");
}; };
// //
const adminReject = function () { const adminReject = function () {
rechargeVo.value.status = 2; rechargeVo.value.status = 2;
getObj.value.pageNum = 1;
get(); get();
console.log("adminReject"); console.log("adminReject");
}; };

111
vue/gold-system/src/views/refund/addRefund.vue

@ -81,9 +81,6 @@ const addBefore = () => {
if (valid) { if (valid) {
ElMessageBox.confirm("确认添加?") ElMessageBox.confirm("确认添加?")
.then(() => { .then(() => {
addRefund.value.freeCoin = Number(-addRefund.value.freeCoin);
addRefund.value.rechargeCoin = Number(-addRefund.value.rechargeCoin);
addRefund.value.taskCoin = Number(-addRefund.value.taskCoin);
add(); add();
console.log("添加成功"); console.log("添加成功");
addRefund.value.allCoin = 0; addRefund.value.allCoin = 0;
@ -151,9 +148,9 @@ const getUser = async function (jwcode) {
Number(user.value.pendingSpendTimes); Number(user.value.pendingSpendTimes);
console.log("用户信息", user.value); console.log("用户信息", user.value);
if (result.data.code === 0) { if (result.data.code === 0) {
ElMessage.error(result.data.msg);
ElMessage.error(result.msg);
} else { } else {
ElMessage.success(result.data.msg);
ElMessage.success(result.msg);
} }
} catch (error) { } catch (error) {
console.log("请求失败", error); console.log("请求失败", error);
@ -197,7 +194,8 @@ const getGoods = async function (jwcode) {
try { try {
// POST // POST
const result = await API.post( const result = await API.post(
"http://192.168.8.93:10010/consume/getDeatil/" + addRefund.value.jwcode
"http://192.168.8.93:10010/consume/getDeatil/" + addRefund.value.jwcode,
{}
); );
if (result.code === 0) { if (result.code === 0) {
addRefund.value.jwcode = ""; addRefund.value.jwcode = "";
@ -214,6 +212,7 @@ const getGoods = async function (jwcode) {
console.log("请求失败", error); console.log("请求失败", error);
ElMessage.error("查询失败,请检查精网号是否正确"); ElMessage.error("查询失败,请检查精网号是否正确");
// //
addRefund.value.jwcode = "";
} }
}; };
const calculatedRechargeGoods = computed(() => { const calculatedRechargeGoods = computed(() => {
@ -233,14 +232,40 @@ watch(calculatedRechargeGoods, (newVal) => {
// //
//
const getProductByOrderCode = async function (item) {
try {
// POST
const result = await API.post(
"http://192.168.8.93:10010/refund/searchByOrderCode?orderCode=" + item,
{}
);
addRefund.value.contactId = result.data.detailId;
addRefund.value.refundGoods = result.data.productName;
addRefund.value.orderCode = result.data.orderCode;
addRefund.value.taskCoin = result.data.taskCoin * -1;
addRefund.value.freeCoin = result.data.freeCoin * -1;
addRefund.value.rechargeCoin = result.data.rechargeCoin * -1;
addRefund.value.allCoin =
result.data.taskCoin * -1 +
result.data.freeCoin * -1 +
result.data.rechargeCoin * -1;
console.log("请求成功", addRefund.value);
if (result.data.code === 0) {
ElMessage.error(result.data.msg);
} else {
ElMessage.success("选择成功");
}
} catch (error) {
console.log("请求失败", error);
ElMessage.error("查询失败,请检查精网号是否正确");
//
}
};
const handleSelectionChange = (value) => { const handleSelectionChange = (value) => {
getProductByOrderCode(value);
console.log("选择的订单号", value);
const selectedItem = goods.value.find((item) => item.detailId === value); const selectedItem = goods.value.find((item) => item.detailId === value);
if (selectedItem) {
addRefund.value.contactId = selectedItem.detailId;
addRefund.value.refundGoods = selectedItem.productName;
}
console.log("选择的商品", addRefund.value.refundGoods);
console.log("选择的商品ID", addRefund.value.contactId); // ID
}; };
</script> </script>
@ -282,9 +307,9 @@ const handleSelectionChange = (value) => {
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item prop="contactId" label="退款商品">
<el-form-item prop="contactId" label="订单号">
<el-select <el-select
v-model="addRefund.contactId"
v-model="addRefund.orderCode"
placeholder="请选择" placeholder="请选择"
style="width: 300px" style="width: 300px"
@change="handleSelectionChange" @change="handleSelectionChange"
@ -292,14 +317,14 @@ const handleSelectionChange = (value) => {
<el-option <el-option
v-for="item in goods" v-for="item in goods"
:key="item.value" :key="item.value"
:label="item.productName"
:value="item.detailId"
:label="item.productName + item.orderCode"
:value="item.orderCode"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<div style="display: flex; align-items: center"> <div style="display: flex; align-items: center">
<el-form-item prop="taskCoin" label="任务金币" style="float: left"> <el-form-item prop="taskCoin" label="任务金币" style="float: left">
<el-input v-model="addRefund.taskCoin" style="width: 100px" />
<el-input v-model="addRefund.taskCoin" style="width: 100px" disabled />
<p></p> <p></p>
</el-form-item> </el-form-item>
<el-form-item <el-form-item
@ -310,6 +335,7 @@ const handleSelectionChange = (value) => {
<el-input <el-input
v-model="addRefund.freeCoin" v-model="addRefund.freeCoin"
style="float: left; width: 100px" style="float: left; width: 100px"
disabled
/> />
<p></p> <p></p>
</el-form-item> </el-form-item>
@ -321,6 +347,7 @@ const handleSelectionChange = (value) => {
<el-input <el-input
v-model="addRefund.rechargeCoin" v-model="addRefund.rechargeCoin"
style="float: left; width: 100px" style="float: left; width: 100px"
disabled
/> />
<p></p> <p></p>
</el-form-item> </el-form-item>
@ -352,65 +379,71 @@ const handleSelectionChange = (value) => {
</el-form> </el-form>
<!-- 客户信息栏 --> <!-- 客户信息栏 -->
<el-card style="width: 700px; float: right" class="customer-info">
<el-form
:model="user"
label-width="auto"
style="max-width: 600px"
label-position="left"
<el-card style="float: right" class="customer-info">
<el-form :model="user" label-width="auto" label-position="left">
<el-text size="large" style="margin-left: 20px; font-weight: bold"
>客户信息</el-text
> >
<el-text size="large" style="margin-left: 20px">客户信息</el-text>
<el-row style="margin-top: 20px">
<el-col :span="12">
<el-row style="margin-top: 20px; display: flex">
<el-col :span="10">
<el-form-item label="姓名:"> <el-form-item label="姓名:">
<p>{{ user.name }}</p> <p>{{ user.name }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="历史金币总数"> <el-form-item label="历史金币总数">
<p>{{ user.totalRechargeGold }}</p> <p>{{ user.totalRechargeGold }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="精网号"> <el-form-item label="精网号">
<p>{{ user.jwcode }}</p> <p>{{ user.jwcode }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="当前金币总数"> <el-form-item label="当前金币总数">
<p>{{ user.sumgold }}</p>
<span style="color: #2fa1ff; margin-right: 5px" v-if="user.buyJb">{{
user.buyJb + user.free6 + user.free12 + user.coreJb
}}</span>
<span
style="display: inline; white-space: nowrap; color: #b1b1b1"
v-if="user.buyJb"
>(充值金币:{{ user.buyJb }};免费金币:{{
user.free6 + user.free12
}};任务金币:{{ user.coreJb }})</span
>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="首次充值日期"> <el-form-item label="首次充值日期">
<p v-if="user.firstRechargeDate"> <p v-if="user.firstRechargeDate">
{{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }} {{ moment(user.firstRechargeDate).format("YYYY-MM-DD HH:mm:ss") }}
</p> </p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="充值次数"> <el-form-item label="充值次数">
<p>{{ user.rechargeTimes }}</p>
<p style="color: #2fa1ff">{{ user.rechargeTimes }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="负责客服"> <el-form-item label="负责客服">
<p>{{ adminData.name }}</p> <p>{{ adminData.name }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="消费次数"> <el-form-item label="消费次数">
<p>{{ user.spendTimes }}</p>
<p style="color: #2fa1ff">{{ user.spendTimes }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="10">
<el-form-item label="所属门店"> <el-form-item label="所属门店">
<p>{{ adminData.area }}</p> <p>{{ adminData.area }}</p>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-col :span="14">
<el-form-item label="待审核"> <el-form-item label="待审核">
<p>
<p style="color: #2fa1ff">
{{ user.A }} {{ user.A }}
</p> </p>
</el-form-item> </el-form-item>

6
vue/gold-system/src/views/refund/allRefund.vue

@ -151,23 +151,27 @@ const get7Days = function () {
const adminAll = function () { const adminAll = function () {
console.log("adminAll"); console.log("adminAll");
detail.value.auditStatus = ""; detail.value.auditStatus = "";
getObj.value.pageNum = 1;
get(); get();
}; };
// //
const adminWait = function () { const adminWait = function () {
detail.value.auditStatus = 0; detail.value.auditStatus = 0;
getObj.value.pageNum = 1;
get(); get();
console.log("adminWait"); console.log("adminWait");
}; };
// //
const adminPass = function () { const adminPass = function () {
detail.value.auditStatus = 1; detail.value.auditStatus = 1;
getObj.value.pageNum = 1;
get(); get();
console.log("adminPass"); console.log("adminPass");
}; };
// //
const adminReject = function () { const adminReject = function () {
detail.value.auditStatus = 2; detail.value.auditStatus = 2;
getObj.value.pageNum = 1;
get(); get();
console.log("adminReject"); console.log("adminReject");
}; };
@ -304,7 +308,7 @@ getGoods();
<el-text class="mx-1" size="large">退款商品</el-text> <el-text class="mx-1" size="large">退款商品</el-text>
<el-select <el-select
v-model="detail.refundGoods" v-model="detail.refundGoods"
placeholder="请选择支付方式"
placeholder="请选择退款商品"
size="large" size="large"
style="width: 240px" style="width: 240px"
clearable clearable

80
vue/gold-system/src/views/workspace/index.vue

@ -123,11 +123,11 @@ const get = async function () {
{} {}
); );
const result5 = await API.post( const result5 = await API.post(
"http://192.168.8.93:10010/statistics/getMediumAreaPay",
"http://192.168.8.147:10010/statistics/getMediumAreaPay",
{} {}
); );
const result6 = await API.post( const result6 = await API.post(
"http://192.168.8.93:10010/statistics/getMediumAreaConsume",
"http://192.168.8.147:10010/statistics/getMediumAreaConsume",
{} {}
); );
const result7 = await API.post( const result7 = await API.post(
@ -290,31 +290,58 @@ const get = async function () {
ConsumeRank.value = areaTotalConsume.value; ConsumeRank.value = areaTotalConsume.value;
option3Data.value = [ option3Data.value = [
{ value: Math.abs(statistics.value.rechargeSumCoin), name: "充值金币" },
{ value: Math.abs(statistics.value.freeSumCoin), name: "免费金币" },
{ value: Math.abs(statistics.value.taskSumCoin), name: "任务金币" },
{
value: Math.abs(statistics.value.rechargeSumCoin),
name: "充值金币" + " | " + statistics.value.rechargeSumCoin,
},
{
value: Math.abs(statistics.value.freeSumCoin),
name: "免费金币" + " | " + statistics.value.freeSumCoin,
},
{
value: Math.abs(statistics.value.taskSumCoin),
name: "任务金币" + " | " + statistics.value.taskSumCoin,
},
]; ];
option4Data.value = [ option4Data.value = [
{ {
value: Math.abs(getYearConsumeCoin.value.yearSumRechargeCoin), value: Math.abs(getYearConsumeCoin.value.yearSumRechargeCoin),
name: "充值金币",
name:
"充值金币" +
" | " +
Math.abs(getYearConsumeCoin.value.yearSumRechargeCoin),
}, },
{ {
value: Math.abs(getYearConsumeCoin.value.yearSumFreeCoin), value: Math.abs(getYearConsumeCoin.value.yearSumFreeCoin),
name: "免费金币",
name:
"免费金币" +
" | " +
Math.abs(getYearConsumeCoin.value.yearSumFreeCoin),
}, },
{ {
value: Math.abs(getYearConsumeCoin.value.yearSumTaskCoin), value: Math.abs(getYearConsumeCoin.value.yearSumTaskCoin),
name: "任务金币",
name:
"任务金币" +
" | " +
Math.abs(getYearConsumeCoin.value.yearSumTaskCoin),
}, },
]; ];
console.log("option4Data", option4Data.value); console.log("option4Data", option4Data.value);
option5Data.value = [ option5Data.value = [
{ value: Math.abs(getSumCoin.value.todayRecharge), name: "充值金币" },
{ value: Math.abs(getSumCoin.value.todayFree), name: "免费金币" },
{ value: Math.abs(getSumCoin.value.todayTask), name: "任务金币" },
{
value: Math.abs(getSumCoin.value.todayRecharge),
name: "充值金币" + " | " + getSumCoin.value.todayRecharge,
},
{
value: Math.abs(getSumCoin.value.todayFree),
name: "免费金币" + " | " + getSumCoin.value.todayFree,
},
{
value: Math.abs(getSumCoin.value.todayTask),
name: "任务金币" + " | " + getSumCoin.value.todayTask,
},
]; ];
console.log("option5Data", option5Data.value); console.log("option5Data", option5Data.value);
// //
@ -429,7 +456,12 @@ const get = async function () {
Number(HCData.value[0].value) + Number(HCData.value[0].value) +
Number(LinkData.value[0].value) + Number(LinkData.value[0].value) +
Number(goldData.value[0].value), Number(goldData.value[0].value),
name: "第1学科",
name:
"第一学科" +
(Number(ERPData.value[0].value) +
Number(HCData.value[0].value) +
Number(LinkData.value[0].value) +
Number(goldData.value[0].value)),
}, },
{ {
value: value:
@ -437,7 +469,12 @@ const get = async function () {
Number(HCData.value[1].value) + Number(HCData.value[1].value) +
Number(LinkData.value[1].value) + Number(LinkData.value[1].value) +
Number(goldData.value[1].value), Number(goldData.value[1].value),
name: "第2学科",
name:
"第二学科" +
(Number(ERPData.value[1].value) +
Number(HCData.value[1].value) +
Number(LinkData.value[1].value) +
Number(goldData.value[1].value)),
}, },
{ {
value: value:
@ -445,7 +482,12 @@ const get = async function () {
Number(HCData.value[2].value) + Number(HCData.value[2].value) +
Number(LinkData.value[2].value) + Number(LinkData.value[2].value) +
Number(goldData.value[2].value), Number(goldData.value[2].value),
name: "第3学科",
name:
"第三学科" +
(Number(ERPData.value[2].value) +
Number(HCData.value[2].value) +
Number(LinkData.value[2].value) +
Number(goldData.value[2].value)),
}, },
{ {
value: value:
@ -453,7 +495,12 @@ const get = async function () {
Number(HCData.value[3].value) + Number(HCData.value[3].value) +
Number(LinkData.value[3].value) + Number(LinkData.value[3].value) +
Number(goldData.value[3].value), Number(goldData.value[3].value),
name: "第4学科",
name:
"第四学科" +
(Number(ERPData.value[3].value) +
Number(HCData.value[3].value) +
Number(LinkData.value[3].value) +
Number(goldData.value[3].value)),
}, },
]; ];
@ -473,6 +520,7 @@ const changeGoldTypePay = function () {
payRank.value = {}; payRank.value = {};
if (goldTypePay.value == "全部类型") { if (goldTypePay.value == "全部类型") {
payRank.value = areaTotalPay.value; payRank.value = areaTotalPay.value;
console.log("这是中国过过过过", payRank.value);
} else if (goldTypePay.value == "充值金币") { } else if (goldTypePay.value == "充值金币") {
payRank.value = areaRechargePay.value; payRank.value = areaRechargePay.value;
} else if (goldTypePay.value == "免费金币") { } else if (goldTypePay.value == "免费金币") {
@ -958,7 +1006,7 @@ onMounted(async function () {
</el-col> </el-col>
<el-col :span="6"> <el-col :span="6">
<el-card> <el-card>
<p>全年累计消金币数</p>
<p>全年累计消金币数</p>
<p class="head-mid-font"> <p class="head-mid-font">
{{ formatNum(Math.abs(getYearConsumeCoin.yearsumCoin)) }} {{ formatNum(Math.abs(getYearConsumeCoin.yearsumCoin)) }}
</p> </p>

Loading…
Cancel
Save