门店日报&充值比例赠送

master
十七 4 years ago
parent 4308095e50
commit 82601ea74f

@ -1,278 +1,286 @@
import { service } from "../utils/service"; import { service } from "../utils/service";
import { localPath } from "./api.js"; import { localPath } from "./api.js";
// 添加门店月度任务 门店端-门店月度任务-添加门店月度任务 // 添加门店月度任务 门店端-门店月度任务-添加门店月度任务
export function addMonthTask(params) { export function addMonthTask(params) {
return service({ return service({
url: "/demay/ssm/monthTask/add", url: "/demay/ssm/monthTask/add",
method: "post", method: "post",
data: params data: params
}); });
} }
// 删除门店月度任务 门店端-门店月度任务-删除门店月度任务 // 删除门店月度任务 门店端-门店月度任务-删除门店月度任务
export function delMonthTask(params) { export function delMonthTask(params) {
return service({ return service({
url: "/demay/ssm/monthTask/delete", url: "/demay/ssm/monthTask/delete",
method: "post", method: "post",
data: params data: params
}); });
} }
// 分页查询门店月度任务 门店端-门店月度任务-分页查询门店月度任务 // 分页查询门店月度任务 门店端-门店月度任务-分页查询门店月度任务
export function monthTaskPage(params) { export function monthTaskPage(params) {
return service({ return service({
url: "/demay/ssm/monthTask/page", url: "/demay/ssm/monthTask/page",
method: "post", method: "post",
data: params data: params
}); });
} }
// 门店月度任务统计 门店端-门店月度任务-门店月度任务统计 // 门店月度任务统计 门店端-门店月度任务-门店月度任务统计
export function monthTaskStatistic(params) { export function monthTaskStatistic(params) {
return service({ return service({
url: "/demay/ssm/monthTask/statistic", url: "/demay/ssm/monthTask/statistic",
method: "post", method: "post",
data: params data: params
}); });
} }
// 修改门店月度任务 门店端-门店月度任务-修改门店月度任务 // 修改门店月度任务 门店端-门店月度任务-修改门店月度任务
export function editMonthTask(params) { export function editMonthTask(params) {
return service({ return service({
url: "/demay/ssm/monthTask/update", url: "/demay/ssm/monthTask/update",
method: "post", method: "post",
data: params data: params
}); });
} }
// 门店月度任务状态修改 门店端-门店月度任务-门店月度任务状态修改 // 门店月度任务状态修改 门店端-门店月度任务-门店月度任务状态修改
export function editMonthTaskState(params) { export function editMonthTaskState(params) {
return service({ return service({
url: "/demay/ssm/monthTask/updateStates", url: "/demay/ssm/monthTask/updateStates",
method: "post", method: "post",
data: params data: params
}); });
} }
// 当日负卡金记录查询 // 当日负卡金记录查询
export function dayStatistic(params) { export function dayStatistic(params) {
return service({ return service({
url: "/demay/ssm/negativeCard/dayStatistic", url: "/demay/ssm/negativeCard/dayStatistic",
method: "post", method: "post",
data: params data: params
}); });
} }
// 门店会员统计列表 门店端-门店统计-门店会员统计列表 // 门店会员统计列表 门店端-门店统计-门店会员统计列表
export function storeStatisticMemberList(params) { export function storeStatisticMemberList(params) {
return service({ return service({
url: "/demay/ssm/storeStatistic/memberList", url: "/demay/ssm/storeStatistic/memberList",
method: "post", method: "post",
params: params params: params
}); });
} }
// 门店会员统计列表 门店端-门店统计-会员排行榜充值统计 // 门店会员统计列表 门店端-门店统计-会员排行榜充值统计
export function memberRecharge(params) { export function memberRecharge(params) {
return service({ return service({
url: "/demay/ssm/storeStatistic/memberRecharge", url: "/demay/ssm/storeStatistic/memberRecharge",
method: "post", method: "post",
data: params, data: params,
headers: { headers: {
"Content-Type": "application/x-www-form-urlencoded" "Content-Type": "application/x-www-form-urlencoded"
} }
}); });
} }
// 门店项目统计列表 门店端-门店统计-当日门店项目统计列表 // 门店项目统计列表 门店端-门店统计-当日门店项目统计列表
export function memberCourse(params) { export function memberCourse(params) {
return service({ return service({
url: "/demay/ssm/storeStatistic/memberCourse", url: "/demay/ssm/storeStatistic/memberCourse",
method: "post", method: "post",
data: params, data: params,
headers: { headers: {
"Content-Type": "application/x-www-form-urlencoded" "Content-Type": "application/x-www-form-urlencoded"
} }
}); });
} }
// 门店项目统计列表 门店端-门店统计-门店项目统计列表 // 门店项目统计列表 门店端-门店统计-门店项目统计列表
export function storeStatisticProjectList(params) { export function storeStatisticProjectList(params) {
return service({ return service({
url: "/demay/ssm/storeStatistic/projectList", url: "/demay/ssm/storeStatistic/projectList",
method: "post", method: "post",
data: params data: params
}); });
} }
// 门店员工统计列表 门店端-门店统计-门店员工统计列表 // 门店员工统计列表 门店端-门店统计-门店员工统计列表
export function storeStatisticStaffMonthList(params) { export function storeStatisticStaffMonthList(params) {
return service({ return service({
url: "/demay/ssm/storeStatistic/staffMonthList", url: "/demay/ssm/storeStatistic/staffMonthList",
method: "post", method: "post",
data: params data: params
}); });
} }
// 查询员工工资 门店端-统计报表-查询员工工资 // 查询员工工资 门店端-统计报表-查询员工工资
export function selectSalary(params) { export function selectSalary(params) {
return service({ return service({
url: "/demay/ssm/salary/selectSalary", url: "/demay/ssm/salary/selectSalary",
method: "post", method: "post",
data: params data: params
}); });
} }
// 添加员工工资 门店端-统计报表-添加员工工资 // 添加员工工资 门店端-统计报表-添加员工工资
export function addSalary(params) { export function addSalary(params) {
return service({ return service({
url: "/demay/ssm/salary/add", url: "/demay/ssm/salary/add",
method: "post", method: "post",
data: params data: params
}); });
} }
// 删除员工工资 门店端-统计报表-删除员工工资 // 删除员工工资 门店端-统计报表-删除员工工资
export function delSalary(params) { export function delSalary(params) {
return service({ return service({
url: "/demay/ssm/salary/delete", url: "/demay/ssm/salary/delete",
method: "post", method: "post",
data: params data: params
}); });
} }
// 门店日报 // 门店日报
export function storeDaily(params) { export function storeDaily(params) {
return service({ return service({
url: "/demay/ssm/storeStatistic/storeDaily", url: "/demay/ssm/storeStatistic/storeDaily",
method: "post", method: "post",
data: params data: params
}); });
} }
//多日期的门店日报
// 门店项目统计列表 门店端-门店统计-月度门店项目统计列表 export function storeDailys(params) {
export function projectMonthList(params) { return service({
return service({ url: "/demay/ssm/storeStatistic/storeDailys",
url: "/demay/ssm/storeStatistic/projectMonthList", method: "post",
method: "post", data: params
data: params });
}); }
}
// 门店项目统计列表 门店端-门店统计-月度门店项目统计列表
// 查询门店业绩分类统计表 export function projectMonthList(params) {
export function achiCommLists(params) { return service({
return service({ url: "/demay/ssm/storeStatistic/projectMonthList",
url: "/demay/ssm/staff/achiCommLists", method: "post",
method: "post", data: params
data: params });
}); }
}
export function achiCommListsgroup(params) { // 查询门店业绩分类统计表
return service({ export function achiCommLists(params) {
url: "/demay/ssm/staff/achiCommListsgroup", return service({
method: "post", url: "/demay/ssm/staff/achiCommLists",
data: params method: "post",
}); data: params
} });
}
//导出 export function achiCommListsgroup(params) {
export function exportachi(params) { return service({
return service({ url: "/demay/ssm/staff/achiCommListsgroup",
url: "/demay/ssm/staff////////achiCommListsgroup/exportachi", method: "post",
method: "post", data: params
data: params, });
responseType: "blob" }
});
} //导出
// 查询门店业绩分类统计表 export function exportachi(params) {
export function achiCommClassifyLists(params) { return service({
return service({ url: "/demay/ssm/staff////////achiCommListsgroup/exportachi",
url: "/demay/ssm/staff/achiCommClassifyLists", method: "post",
method: "post", data: params,
data: params responseType: "blob"
}); });
} }
//明细导出 // 查询门店业绩分类统计表
export function acehioprtx(params) { export function achiCommClassifyLists(params) {
return service({ return service({
url: "/demay/ssm/staff//achiCommLists/exportachi", url: "/demay/ssm/staff/achiCommClassifyLists",
method: "post", method: "post",
responseType: "blob", data: params
data: params });
}); }
} //明细导出
//导出员工工资单据明细 export function acehioprtx(params) {
export function exportachiwhole(params) { return service({
return service({ url: "/demay/ssm/staff//achiCommLists/exportachi",
url: "/demay/ssm/staff/achiCommLists/exportachiwhole", method: "post",
method: "post", responseType: "blob",
data: params data: params
}); });
} }
//查询项目单品贡献率 selectType; 0=查全公司1=查门店 //导出员工工资单据明细
export function rateContribution(params) { export function exportachiwhole(params) {
return service({ return service({
url: "/demay/ssm/staff/rateContribution", url: "/demay/ssm/staff/achiCommLists/exportachiwhole",
method: "post", method: "post",
data: params data: params
}); });
} }
//明细 //查询项目单品贡献率 selectType; 0=查全公司1=查门店
export function rateContributionMx(params) { export function rateContribution(params) {
return service({ return service({
url: "/demay/ssm/staff/rateContributionMx", url: "/demay/ssm/staff/rateContribution",
method: "post", method: "post",
data: params data: params
}); });
} }
//明细s //明细
export function rateContributionMxs(params) { export function rateContributionMx(params) {
return service({ return service({
url: "/demay/ssm/staff/rateContributionMxs", url: "/demay/ssm/staff/rateContributionMx",
method: "post", method: "post",
data: params data: params
}); });
} }
//明细order //明细s
export function rateContributionMxOrder(params) { export function rateContributionMxs(params) {
return service({ return service({
url: "/demay/ssm/staff/rateContributionMxOrder", url: "/demay/ssm/staff/rateContributionMxs",
method: "post", method: "post",
data: params data: params
}); });
} }
//明细order
//查询服务单品贡献率 selectType; 0=查全公司1=查门店 export function rateContributionMxOrder(params) {
export function selectCashRateContribution(params) { return service({
return service({ url: "/demay/ssm/staff/rateContributionMxOrder",
url: "/demay/ssm/staff/selectCashRateContribution", method: "post",
method: "post", data: params
data: params });
}); }
}
//明细 //查询服务单品贡献率 selectType; 0=查全公司1=查门店
export function selectCashRateContributionMx(params) { export function selectCashRateContribution(params) {
return service({ return service({
url: "/demay/ssm/staff/selectCashRateContributionMx", url: "/demay/ssm/staff/selectCashRateContribution",
method: "post", method: "post",
data: params data: params
}); });
} }
//明细s //明细
export function selectCashRateContributionMxs(params) { export function selectCashRateContributionMx(params) {
return service({ return service({
url: "/demay/ssm/staff/selectCashRateContributionMxs", url: "/demay/ssm/staff/selectCashRateContributionMx",
method: "post", method: "post",
data: params data: params
}); });
} }
//明细order //明细s
export function selectCashRateContributionMxOrder(params) { export function selectCashRateContributionMxs(params) {
return service({ return service({
url: "/demay/ssm/staff/selectCashRateContributionMxOrder", url: "/demay/ssm/staff/selectCashRateContributionMxs",
method: "post", method: "post",
data: params data: params
}); });
} }
//换房 //明细order
export function roomChange(params) { export function selectCashRateContributionMxOrder(params) {
return service({ return service({
url: "/demay/ssm/storeSettlement/roomChange", url: "/demay/ssm/staff/selectCashRateContributionMxOrder",
method: "post", method: "post",
data: params data: params
}); });
} }
//换房
export function roomChange(params) {
return service({
url: "/demay/ssm/storeSettlement/roomChange",
method: "post",
data: params
});
}

@ -107,7 +107,7 @@
</el-form-item> </el-form-item>
<el-form-item label="充后赠送:"> <el-form-item label="充后赠送:">
<div class="form-width-ms"> <div class="form-width-ms">
<span class="text-red text-price">{{ form.giftAfterMoney }}</span> <span class="text-red text-price" v-if="giftAfterShow">{{ form.giftAfterMoney }}</span>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="备注说明:"> <el-form-item label="备注说明:">
@ -122,7 +122,7 @@
<br> <br>
<el-form-item label="充后赠送:" v-show="!sessionStorageData.recharge"> <el-form-item label="充后赠送:" v-show="!sessionStorageData.recharge">
<div class="form-width-ms"> <div class="form-width-ms">
<span class="text-red text-price">{{ form.giftAfterMoney }}</span> <span class="text-red text-price" v-if="giftAfterShow">{{ form.giftAfterMoney }}</span>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="备注说明:" v-show="!sessionStorageData.recharge"> <el-form-item label="备注说明:" v-show="!sessionStorageData.recharge">
@ -421,6 +421,7 @@ export default {
pageInfo: { pageInfo: {
lists: [], lists: [],
}, },
giftAfterShow: true, //
payLists: [], // payLists: [], //
staffLists: [{ brandNumber: "", staffName: "", ratio: 100 }], staffLists: [{ brandNumber: "", staffName: "", ratio: 100 }],
managerLists: [{ brandNumber: "", staffName: "", ratio: 100 }], managerLists: [{ brandNumber: "", staffName: "", ratio: 100 }],
@ -592,6 +593,8 @@ export default {
this.form.rechargeTypeId = v.id; this.form.rechargeTypeId = v.id;
this.form.discount = v.discount; this.form.discount = v.discount;
this.form.typeRatio = v.typeRatio; this.form.typeRatio = v.typeRatio;
this.form.donateType = v.donateType;
this.form.giftMoney = v.giftMoney;
this.form.collectionAmount = 0; this.form.collectionAmount = 0;
this.form.collectionCashAmount = 0; this.form.collectionCashAmount = 0;
if (this.liftType == 0) { if (this.liftType == 0) {
@ -654,10 +657,17 @@ export default {
if (!this.form.giftBeforeMoney) { if (!this.form.giftBeforeMoney) {
this.form.giftBeforeMoney = 0; this.form.giftBeforeMoney = 0;
} }
let giftMoney = 0;
if (v.donateType == 1) {
giftMoney =
((v.giftMoney * this.form.rechargeAmount) / 100).toFixed(2) *
1;
} else {
giftMoney = v.giftMoney;
}
this.form.giftAfterMoney = this.form.giftAfterMoney =
this.form.giftBeforeMoney + v.giftMoney; (this.form.giftBeforeMoney + giftMoney).toFixed(2) * 1;
} }
this.money = this.form.giftAfterMoney;
if (this.sessionStorageData.recharge == true) { if (this.sessionStorageData.recharge == true) {
if (this.form.integralCheckbox == true) { if (this.form.integralCheckbox == true) {
let list = JSON.parse( let list = JSON.parse(
@ -692,14 +702,13 @@ export default {
if (!v.giftMoney) { if (!v.giftMoney) {
v.giftMoney = 0; v.giftMoney = 0;
this.form.giftAfterMoney = this.form.giftAfterMoney =
this.form.giftBeforeMoney + v.giftMoney; (this.form.giftBeforeMoney + v.giftMoney).toFixed(2) * 1;
} else { } else {
this.form.giftAfterMoney = this.form.giftAfterMoney =
this.form.giftBeforeMoney + v.giftMoney; (this.form.giftBeforeMoney + v.giftMoney).toFixed(2) * 1;
} }
} }
} }
this.money = this.form.giftAfterMoney;
let form = { ...this.form }; let form = { ...this.form };
this.form = {}; this.form = {};
this.form = form; this.form = form;
@ -863,10 +872,14 @@ export default {
if (this.typeList.giftMoney == null) { if (this.typeList.giftMoney == null) {
this.typeList.giftMoney = 0; this.typeList.giftMoney = 0;
this.form.giftAfterMoney = this.form.giftAfterMoney =
this.form.giftBeforeMoney + this.typeList.giftMoney; (this.form.giftBeforeMoney + this.typeList.giftMoney).toFixed(
2
) * 1;
} else { } else {
this.form.giftAfterMoney = this.form.giftAfterMoney =
this.form.giftBeforeMoney + this.typeList.giftMoney; (this.form.giftBeforeMoney + this.typeList.giftMoney).toFixed(
2
) * 1;
} }
this.$alert("查询会员信息 : " + res.message, "提示", { this.$alert("查询会员信息 : " + res.message, "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
@ -938,66 +951,31 @@ export default {
} }
this.form.afterMoney = this.form.afterMoney =
this.form.collectionCashAmount + this.form.beforeMoney + integralMoney; this.form.collectionCashAmount + this.form.beforeMoney + integralMoney;
if (this.form.debtMoney != 0) { if (
this.form.giftAfterMoney = this.form.giftBeforeMoney; this.form.debtMoney * 1 >
if ( (
this.form.debtMoney * 1 > (this.form.rechargeAmount *
( this.sessionStorageData.recDebtRatio *
(this.form.rechargeAmount * 1) /
this.sessionStorageData.recDebtRatio * 100
1) / ).toFixed(2) *
100 1
).toFixed(2) * ) {
1 this.$message.warning({
) { message:
this.$message.warning({ "本次支付金额最多可以欠款 : " +
message: (
"本次支付金额最多可以欠款 : " + (this.form.rechargeAmount *
( this.sessionStorageData.recDebtRatio *
(this.form.rechargeAmount * 1) /
this.sessionStorageData.recDebtRatio * 100
1) / ).toFixed(2) *
100 1,
).toFixed(2) * });
1,
});
}
} else {
this.form.giftAfterMoney = this.money;
} }
}, },
empty() { empty() {
// this.form = {
// mobilePhone: null,
// memberName: null,
// sex: null,
// collectionCashAmount: null,
// beforeMoney: 0,
// afterMoney: 0,
// description: null,
// rechargeTypeName: null,
// integralCheckbox: false,
// debtMoney: null,
// additionDate: null,
// rechargeAmount: 0,
// debtMoney: 0,
// afterMoney: 0,
// giftAfterMoney: 0,
// giftBeforeMoney: 0,
// };
// this.debtMoneys = 0;
// this.integral = 0;
// this.integralMoney = 0;
// this.consumeIntegral = 0;
// this.payLists = [];
// this.staffLists = [{ ratio: 100 }];
// this.managerLists = [{ ratio: 100 }];
// this.adminList = [{ ratio: 100 }];
// this.activeName = [""];
// this.setStaffRatio();
// this.getCtList();
// },
Object.assign(this.$data, this.$options.data.call(this)); Object.assign(this.$data, this.$options.data.call(this));
this.setPage(); this.setPage();
}, },
@ -1159,7 +1137,6 @@ export default {
this.$message.success({ this.$message.success({
message: res.message, message: res.message,
}); });
this.money = 0;
} else { } else {
this.$alert(res.message, "提示", { this.$alert(res.message, "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
@ -1178,7 +1155,6 @@ export default {
this.$message.success({ this.$message.success({
message: res.message, message: res.message,
}); });
this.money = 0;
} else { } else {
this.$alert(res.message, "提示", { this.$alert(res.message, "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
@ -1324,7 +1300,6 @@ export default {
list.push(items); list.push(items);
}); });
this.payLists = list; this.payLists = list;
this.num();
} else { } else {
this.$alert("现付列表" + res.message, "提示", { this.$alert("现付列表" + res.message, "提示", {
confirmButtonText: "确定", confirmButtonText: "确定",
@ -1389,16 +1364,32 @@ export default {
// //
num() { num() {
var num = 0; var num = 0;
var form = { ...this.form };
this.payLists.forEach((item) => { this.payLists.forEach((item) => {
num += item.payMoney * 1; num += item.payMoney * 1;
}); });
this.form.collectionCashAmount = num; form.collectionCashAmount = num;
if (this.form.integralCheckbox == true) { if (form.integralCheckbox == true) {
this.form.collectionAmount = form.collectionAmount = form.collectionCashAmount + this.integralMoney;
this.form.collectionCashAmount + this.integralMoney;
} else { } else {
this.form.collectionAmount = this.form.collectionCashAmount; form.collectionAmount = form.collectionCashAmount;
} }
let giftMoney = 0;
if (form.donateType == 1) {
giftMoney =
((form.giftMoney * form.collectionCashAmount) / 100).toFixed(2) * 1;
} else {
giftMoney = form.giftMoney;
}
form.giftAfterMoney = (form.giftBeforeMoney + giftMoney).toFixed(2) * 1;
console.log(form.giftBeforeMoney + giftMoney);
console.log(form.giftAfterMoney);
this.giftAfterShow = false;
this.form = {};
this.form = { ...form };
console.log(this.form);
this.giftAfterShow = true;
}, },
// //
handleSizeChange(val) { handleSizeChange(val) {

@ -1,344 +1,260 @@
<template> <template>
<!-- 员工工资 --> <!-- 员工工资 -->
<div> <div>
<div class="staffRanking_header padding-bottom-xs"> <div class="staffRanking_header padding-bottom-xs">
<div> <div>
当前年/月份{{ month }} <span class="demonstration padding-left-xs">选择日</span>
<el-button size="mini" @click="del" type="primary" v-role="6006001"></el-button> <el-date-picker v-model="days" :picker-options="pickerOptions" @change="changeMonth" type="daterange" value-format="yyyy-MM-dd" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期">
</div> </el-date-picker>
<div class="block"> </div>
<span class="demonstration padding-left-xs">选择日</span> <div class="block">
<el-date-picker v-model="days" :picker-options="pickerOptions" @change="changeMonth" type="daterange" value-format="yyyy-MM-dd HH:mm:ss" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"> </div>
</el-date-picker> </div>
</div> <el-table @row-dblclick="confirm" :data="tableDate" :header-cell-style="{
</div> background: 'linear-gradient(#6cb3ff, #1873d4)',
<el-table @row-dblclick="confirm" :data="tableDate" :header-cell-style="{ color: '#eeeeee',
background: 'linear-gradient(#6cb3ff, #1873d4)', }" :summary-method="getSummaries" show-summary border max-height="700">
color: '#eeeeee', <el-table-column align="center" min-width="80" prop="date" label="日期"></el-table-column>
}" :summary-method="getSummaries" show-summary border max-height="700"> <el-table-column align="center" min-width="80" prop="cashPeopleNum" label="客单数">
<el-table-column align="center" min-width="80" prop="datae" label="日期"></el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="kedans" label="客单数"> {{scope.row.cashPeopleNum?scope.row.cashPeopleNum:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.kedans?scope.row.kedans:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="rechargeMoney" label="充值金额">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeyj" label="充值金额"> {{scope.row.rechargeMoney?scope.row.rechargeMoney:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeyj?scope.row.rechargeyj:'--'}} </el-table-column>
</template>
</el-table-column> <el-table-column align="center" min-width="80" prop="rechargeOrderNum" label="充值人数">
<template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="courseOfTreatmentYJ" label="充值人数"> {{scope.row.rechargeOrderNum?scope.row.rechargeOrderNum:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.courseOfTreatmentYJ?scope.row.courseOfTreatmentYJ:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="cashMoney" label="服务金额">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="lcCardyj" label="服务金额"> {{scope.row.cashMoney?scope.row.cashMoney:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.lcCardyj?scope.row.lcCardyj:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="man" label="男客">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeTurnCourseChia" label="男客"> {{scope.row.man?scope.row.man:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeTurnCourseChia?scope.row.rechargeTurnCourseChia:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="woman" label="女客">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeTurnCourseChia" label="女客"> {{scope.row.woman?scope.row.woman:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeTurnCourseChia?scope.row.rechargeTurnCourseChia:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="repayMoney" label="还款金额">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeTurnCourseChia" label="还款金额"> {{scope.row.repayMoney?scope.row.repayMoney:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeTurnCourseChia?scope.row.rechargeTurnCourseChia:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="refundMoney" label="退款金额">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeTurnCourseChia" label="退款金额"> {{scope.row.refundMoney?scope.row.refundMoney:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeTurnCourseChia?scope.row.rechargeTurnCourseChia:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="newMemberNum" label="新增会员">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeTurnCourseChia" label="新增会员"> {{scope.row.newMemberNum?scope.row.newMemberNum:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeTurnCourseChia?scope.row.rechargeTurnCourseChia:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="startMemberNum" label="启用会员">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeTurnCourseChia" label="启用会员"> {{scope.row.startMemberNum?scope.row.startMemberNum:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeTurnCourseChia?scope.row.rechargeTurnCourseChia:'--'}} </el-table-column>
</template> <el-table-column align="center" min-width="80" prop="memberNum" label="会员总数">
</el-table-column> <template slot-scope="scope">
<el-table-column align="center" min-width="80" prop="rechargeTurnCourseChia" label="会员总数"> {{scope.row.memberNum?scope.row.memberNum:'--'}}
<template slot-scope="scope"> </template>
{{scope.row.rechargeTurnCourseChia?scope.row.rechargeTurnCourseChia:'--'}} </el-table-column>
</template> </el-table>
</el-table-column> <perform ref="perform"></perform>
</el-table> </div>
<perform ref="perform"></perform> </template>
</div>
</template> <script>
import { storeDailys, exportachi, exportachiwhole } from "@/api/statistics.js";
<script> import { partten } from "../../../../partten/index";
import { import perform from "./examine/index";
selectSalary, export default {
addSalary, components: { perform },
delSalary, data() {
achiCommListsgroup, return {
exportachi, days: "",
exportachiwhole, tableDate: [{}],
} from "@/api/statistics.js"; month: partten.months,
import { partten } from "../../../../partten/index"; queryForm: {},
import perform from "./examine/index"; pickerOptions: {
export default { //
components: { perform }, onPick: ({ maxDate, minDate }) => {
data() { this.choiceDate = minDate.getTime();
return { if (maxDate) {
days: "", this.choiceDate = "";
tableDate: [{}], }
month: partten.months, },
pickerOptions: { disabledDate: (time) => {
// const self = this;
onPick: ({ maxDate, minDate }) => { if (!!self.choiceDate) {
this.choiceDate = minDate.getTime(); const startDay =
if (maxDate) { (new Date(self.choiceDate).getDate() - 1) * 24 * 3600 * 1000;
this.choiceDate = ""; const endDay =
} (new Date(
}, new Date(self.choiceDate).getFullYear(),
disabledDate: (time) => { new Date(self.choiceDate).getMonth() + 1,
const self = this; 0
if (!!self.choiceDate) { ).getDate() -
const startDay = new Date(self.choiceDate).getDate()) *
(new Date(self.choiceDate).getDate() - 1) * 24 * 3600 * 1000; 24 *
const endDay = 3600 *
(new Date( 1000;
new Date(self.choiceDate).getFullYear(), let minTime = self.choiceDate - startDay;
new Date(self.choiceDate).getMonth() + 1, let maxTime = self.choiceDate + endDay;
0 return time.getTime() < minTime || time.getTime() > maxTime;
).getDate() - }
new Date(self.choiceDate).getDate()) * },
24 * },
3600 * };
1000; },
let minTime = self.choiceDate - startDay; methods: {
let maxTime = self.choiceDate + endDay; //
return time.getTime() < minTime || time.getTime() > maxTime; exit() {
} let date1 = this.formatTime(this.days[0], "YYYY-MM-DD");
}, let date2 = this.formatTime(this.days[1], "YYYY-MM-DD");
}, let form = { startDate: date1, endDate: date2 };
}; exportachi(form).then((res) => {
}, let blob = new Blob([res]);
methods: { var a = document.createElement("a");
// var url = window.URL.createObjectURL(blob);
exit() { console.log(url);
let date1 = this.formatTime(this.days[0], "YYYY-MM-DD 00:00:00"); a.href = url;
let date2 = this.formatTime(this.days[1], "YYYY-MM-DD 23:59:59"); a.download = "员工业绩导出表.xlsx";
let form = { startDate: date1, endDate: date2 }; a.click();
exportachi(form).then((res) => { window.URL.revokeObjectURL(url);
let blob = new Blob([res]); });
var a = document.createElement("a"); },
var url = window.URL.createObjectURL(blob); exits() {
console.log(url); let date1 = this.formatTime(this.days[0], "YYYY-MM-DD");
a.href = url; let date2 = this.formatTime(this.days[1], "YYYY-MM-DD");
a.download = "员工业绩导出表.xlsx"; let form = { startDate: date1, endDate: date2 };
a.click(); exportachiwhole(form).then((res) => {
window.URL.revokeObjectURL(url); let blob = new Blob([res]);
}); var a = document.createElement("a");
}, var url = window.URL.createObjectURL(blob);
exits() { console.log(url);
let date1 = this.formatTime(this.days[0], "YYYY-MM-DD 00:00:00"); a.href = url;
let date2 = this.formatTime(this.days[1], "YYYY-MM-DD 23:59:59"); a.download = "员工工资明细导出表.xlsx";
let form = { startDate: date1, endDate: date2 }; a.click();
exportachiwhole(form).then((res) => { window.URL.revokeObjectURL(url);
let blob = new Blob([res]); });
var a = document.createElement("a"); },
var url = window.URL.createObjectURL(blob);
console.log(url); changeMonth(res) {
a.href = url; this.days = res;
a.download = "员工工资明细导出表.xlsx"; this.getData();
a.click(); },
window.URL.revokeObjectURL(url); getData() {
}); this.queryForm.startDate = this.days[0];
}, this.queryForm.endDate = this.days[1];
handleStaffName(index) { storeDailys(this.queryForm).then((res) => {
let tableDate = Array.from(this.tableDate); if (res.code == "000000") {
tableDate[index].show = true; res.rows.forEach((item) => {
this.tableDate = Array.from(tableDate); item.baseSalary = item.baseSalary == null ? 0 : item.baseSalary * 1;
}, item.commSalary = item.commSalary == null ? 0 : item.commSalary * 1;
del() { item.sumNumber = (item.baseSalary + item.commSalary).toFixed(2) * 1;
this.$confirm("将之前保存数据库的数据进行删除 , 是否继续", "提示", { item.startDate = form.startDate;
confirmButtonText: "确定", item.endDate = form.endDate;
cancelButtonText: "取消", });
type: "warning", this.tableDate = res.rows;
cancelButtonClass: "cancelbtnFalses", } else {
confirmButtonClass: "confirmbtnFalses", this.$alert(res.message, "提示", {
}).then(() => { confirmButtonText: "确定",
delSalary({ type: 3 }).then((res) => { confirmButtonClass: "confirmbtnFalses",
if (res.code == "000000") { type: "warning",
this.$message.success({ message: res.message }); center: true,
} else { callback: (action) => {},
this.$alert(res.message, "提示", { });
confirmButtonText: "确定", }
confirmButtonClass: "confirmbtnFalses", });
type: "warning", },
center: true, confirm(row) {
callback: (action) => {}, row.type = 3;
}); this.$refs.perform.show(row);
} },
}); //
}); //
}, getSummaries(param) {
seve() { const { columns, data } = param;
this.$confirm("将当前数据保存到数据库备份 , 是否继续保存", "提示", { const sums = [];
confirmButtonText: "确定", columns.forEach((column, index) => {
cancelButtonText: "取消", if (index === 0) {
type: "warning", sums[index] = "合计";
cancelButtonClass: "cancelbtnFalses", return;
confirmButtonClass: "confirmbtnFalses", }
}).then(() => {
addSalary(this.tableDate).then((res) => { const values = data.map((item) => Number(item[column.property]));
if (res.code == "000000") { if (column.property == "baseSalary") {
this.$message.success({ message: res.message }); sums[index] = values.reduce((prev, curr) => {
} else { const value = Number(curr);
this.$alert(res.message, "提示", { if (!isNaN(value)) {
confirmButtonText: "确定", return (prev + curr).toFixed(2) * 1;
confirmButtonClass: "confirmbtnFalses", } else {
type: "warning", sums[index] = "--";
center: true, }
callback: (action) => {}, }, 0);
}); sums[index] += " ";
} } else if (column.property == "zyj") {
}); sums[index] = values.reduce((prev, curr) => {
}); const value = Number(curr);
}, if (!isNaN(value)) {
changeMonth(res) { return (prev + curr).toFixed(2) * 1;
console.log(res); } else {
let date = this.formatTime(res[1], "YYYY-MM-DD 23:59:59"); sums[index] = "--";
var form = { startDate: res[0], endDate: date }; }
let month = this.formatTime(this.month, "YYYY-MM"); }, 0);
achiCommListsgroup(form).then((res) => { sums[index] += " ";
if (res.code == "000000") { } else if (column.property == "totalWages") {
res.rows.forEach((item) => { sums[index] = values.reduce((prev, curr) => {
item.baseSalary = item.baseSalary == null ? 0 : item.baseSalary * 1; const value = Number(curr);
item.commSalary = item.commSalary == null ? 0 : item.commSalary * 1; if (!isNaN(value)) {
item.sumNumber = (item.baseSalary + item.commSalary).toFixed(2) * 1; return (prev + curr).toFixed(2) * 1;
item.startDate = form.startDate; } else {
item.endDate = form.endDate; sums[index] = "--";
console.log(item); }
}); }, 0);
sums[index] += " ";
this.tableDate = res.rows; } else if (column.property == "totaltc") {
} else { sums[index] = values.reduce((prev, curr) => {
this.$alert(res.message, "提示", { const value = Number(curr);
confirmButtonText: "确定", if (!isNaN(value)) {
confirmButtonClass: "confirmbtnFalses", return (prev + curr).toFixed(2) * 1;
type: "warning", } else {
center: true, sums[index] = "--";
callback: (action) => {}, }
}); }, 0);
} sums[index] += " ";
}); } else {
}, sums[index] = "--";
achiCommListsgroup() { }
let month = this.formatTime(new Date(), "YYYY-MM-DD hh:mm:ss"); });
let date1 = this.formatTime(new Date(), "YYYY-MM-DD 00:00:00"); return sums;
let date2 = this.formatTime(new Date(), "YYYY-MM-DD 23:59:59"); },
let form = { startDate: date1, endDate: date2 }; },
achiCommListsgroup(form).then((res) => { created() {
if (res.code == "000000") { let sDate = this.formatTime(new Date(), "YYYY-MM-DD");
res.rows.forEach((item) => { let eDate = this.formatTime(new Date(), "YYYY-MM-DD");
item.baseSalary = item.baseSalary == null ? 0 : item.baseSalary * 1; this.days = [sDate, eDate];
item.commSalary = item.commSalary == null ? 0 : item.commSalary * 1; this.getData();
item.sumNumber = (item.baseSalary + item.commSalary).toFixed(2) * 1; },
item.startDate = form.startDate; };
item.endDate = form.endDate; </script>
});
this.tableDate = res.rows; <style>
} else { .staffRanking_header {
this.$alert(res.message, "提示", { display: flex;
confirmButtonText: "确定", justify-content: space-between;
confirmButtonClass: "confirmbtnFalses", }
type: "warning", </style>
center: true,
callback: (action) => {},
});
}
});
},
confirm(row) {
row.type = 3;
this.$refs.perform.show(row);
},
//
//
getSummaries(param) {
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = "合计";
return;
}
const values = data.map((item) => Number(item[column.property]));
if (column.property == "baseSalary") {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return (prev + curr).toFixed(2) * 1;
} else {
sums[index] = "--";
}
}, 0);
sums[index] += " ";
} else if (column.property == "zyj") {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return (prev + curr).toFixed(2) * 1;
} else {
sums[index] = "--";
}
}, 0);
sums[index] += " ";
} else if (column.property == "totalWages") {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return (prev + curr).toFixed(2) * 1;
} else {
sums[index] = "--";
}
}, 0);
sums[index] += " ";
} else if (column.property == "totaltc") {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return (prev + curr).toFixed(2) * 1;
} else {
sums[index] = "--";
}
}, 0);
sums[index] += " ";
} else {
sums[index] = "--";
}
});
return sums;
},
},
created() {
let sDate = this.formatTime(new Date(), "YYYY-MM-DD 00:00:00");
let eDate = this.formatTime(new Date(), "YYYY-MM-DD 23:59:59");
this.days = [sDate, eDate];
// this.achiCommListsgroup();
},
};
</script>
<style>
.staffRanking_header {
display: flex;
justify-content: space-between;
}
</style>

Loading…
Cancel
Save