Commit 4e736e6f authored by 华国豪's avatar 华国豪 🙄

新增考核页面,

parent 505a7c74
......@@ -78,6 +78,17 @@
.page_iisMg ._icon_btn i.icon-sousuo{background-color: #47BF8C;}
.page_iisMg ._icon_btn i.icon-sousuo:hover{background-color: #66bb97}
.page_iisMg ._icon_btn i.icon-sousuo:active{background-color: #35ab79}
._zhuihui{
display: inline-block;
height: 20px;
width: 20px;
border-radius: 50%;
color: white;
background-color: #e42d2d;
text-align: center;
line-height: 20px;
cursor: pointer;
}
</style>
<template>
<div class="page_iisMg">
......@@ -151,34 +162,55 @@
<th>状态</th>
<th>操作</th>
</tr>
<tr v-for="(item, index) in dataList" :key="index" v-loading="loading">
<td class="cursorpointer" @click="goUrlT('productQuery', item.TCNUM, '产品查询')">{{item.TCNUM}}({{item.TCID}})</td>
<td>{{item.OrderId}}</td>
<td>{{item.CreateByStr}}</td>
<td>{{item.CustomerName}}:{{item.CustomerContact}}</td>
<td>{{item.ApplyMoney}}</td>
<td>{{item.ApplyMoney - item.AactualMoney}}</td>
<td>{{item.CreateDate.replace('T', ' ')}}</td>
<td>
<span v-if="item.InvoiceApplyState === 1" class="status_Application">申请中</span>
<span v-else-if="item.InvoiceApplyState === 2" class="status_Cancle">已取消</span>
<span v-else-if="item.InvoiceApplyState === 3" class="status_Passed">已通过</span>
<span v-else-if="item.InvoiceApplyState === 4" class="status_Rejected">已拒绝</span>
<span v-else-if="item.InvoiceApplyState === 5" class="status_owe">欠票</span>
<span v-else-if="item.InvoiceApplyState === 6" class="status_Recover">发票追回</span>
</td>
<td class="_icon_btn">
<el-tooltip class="item" effect="dark" :content="$t('fnc.chakan')" placement="top">
<i class="iconfont icon-sousuo" @click="goIisDetail(item.ID)"></i>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="追回" placement="top">
<i v-if="item.InvoiceApplyState === 5" class="iconfont icon-ico_commodity_defaul" @click="setStatus(item.ID, 6)"></i>
</el-tooltip>
<!-- <el-tooltip class="item" effect="dark" content="拒绝" placement="top">
<i v-if="item.InvoiceApplyState === 1" class="iconfont icon-quxiao1" @click="setStatus(item.ID, 4)"></i>
</el-tooltip> -->
</td>
</tr>
<template v-for="(item, index) in dataList" v-loading="loading">
<tr>
<td class="cursorpointer" @click="goUrlT('productQuery', item.TCNUM, '产品查询')" :rowspan="item.InvoiceApplyList.length">{{item.TCNUM}}({{item.TCID}})</td>
<td class="cursorpointer" :rowspan="item.InvoiceApplyList.length" @click="goUrlO(item.OrderId)">{{item.OrderId}}</td>
<td :rowspan="item.InvoiceApplyList.length">{{item.CreateByStr}}</td>
<td :rowspan="item.InvoiceApplyList.length">{{item.CustomerName}}:{{item.CustomerContact}}</td>
<td :rowspan="item.InvoiceApplyList.length">{{item.ApplyTotalPrice}}</td>
<td :rowspan="item.InvoiceApplyList.length">
<span>{{item.DpreadPrice - item.ApplyTotalPrice}}</span>
<span v-if="(item.DpreadPrice - item.ApplyTotalPrice) < 0" class="_zhuihui" @click="zhuihui(item.OrderId)"></span>
</td>
<td>{{item.InvoiceApplyList[0].CreateDate}}</td>
<td>
<span v-if="item.InvoiceApplyList[0].InvoiceApplyState === 1" class="status_Application">申请中</span>
<span v-else-if="item.InvoiceApplyList[0].InvoiceApplyState === 2" class="status_Cancle">已取消</span>
<span v-else-if="item.InvoiceApplyList[0].InvoiceApplyState === 3" class="status_Passed">已通过</span>
<span v-else-if="item.InvoiceApplyList[0].InvoiceApplyState === 4" class="status_Rejected">已拒绝</span>
<span v-else-if="item.InvoiceApplyList[0].InvoiceApplyState === 5" class="status_owe">欠票</span>
<span v-else-if="item.InvoiceApplyList[0].InvoiceApplyState === 6" class="status_Recover">发票追回</span>
</td>
<td class="_icon_btn">
<el-tooltip class="item" effect="dark" :content="$t('fnc.chakan')" placement="top">
<i class="iconfont icon-sousuo" @click="goIisDetail(item.InvoiceApplyList[0].ID)"></i>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="追回" placement="top">
<i v-if="item.InvoiceApplyList[0].InvoiceApplyState === 5" class="iconfont icon-ico_commodity_defaul" @click="setStatus(item.InvoiceApplyList[0].ID, 6)"></i>
</el-tooltip>
</td>
</tr>
<tr v-for="(item2, index2) in item.InvoiceApplyList" :key="index2" v-if="index2!==0">
<td>{{item2.CreateDate}}</td>
<td>
<span v-if="item2.InvoiceApplyState === 1" class="status_Application">申请中</span>
<span v-else-if="item2.InvoiceApplyState === 2" class="status_Cancle">已取消</span>
<span v-else-if="item2.InvoiceApplyState === 3" class="status_Passed">已通过</span>
<span v-else-if="item2.InvoiceApplyState === 4" class="status_Rejected">已拒绝</span>
<span v-else-if="item2.InvoiceApplyState === 5" class="status_owe">欠票</span>
<span v-else-if="item2.InvoiceApplyState === 6" class="status_Recover">发票追回</span>
</td>
<td class="_icon_btn">
<el-tooltip class="item" effect="dark" :content="$t('fnc.chakan')" placement="top">
<i class="iconfont icon-sousuo" @click="goIisDetail(item2.ID)"></i>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="追回" placement="top">
<i v-if="item2.InvoiceApplyState === 5" class="iconfont icon-ico_commodity_defaul" @click="setStatus(item2.ID, 6)"></i>
</el-tooltip>
</td>
</tr>
</template>
</table>
<div class="noDataNotice" v-if="dataList.length<1"><i class="iconfont icon-kong"></i> <p>没有找到你需要的数据</p></div>
<div v-if="dataList.length>0">
......@@ -220,6 +252,13 @@ export default {
};
},
methods: {
zhuihui: function (OrderId) {
this.apipost('InvoiceApply_get_BatchUpdateInvoiceApply', {OrderId: OrderId}, res=>{
if (res.data.resultCode == 1) {
this.getPageList()
}
}, null)
},
goIisDetail: function (id) {
this.$router.push({
name: 'invoicesManagerDetail',
......@@ -253,7 +292,7 @@ export default {
if (this.msg.OrderId === '') {
this.msg.OrderId = 0
}
this.apipost('InvoiceApply_get_GetInvoiceApplyList', this.msg, res=>{
this.apipost('InvoiceApply_get_GetGroupByInvoiceApplyList', this.msg, res=>{
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.dataList = res.data.data.pageData
......@@ -272,7 +311,10 @@ export default {
},
goUrlT: function (path, obj, title){
this.$router.push({ name:path,query:{"id":obj,blank:'y',tab:title}})
},
},
goUrlO: function (OrderId) {
this.$router.push({ name: 'enrollTotal', query: { id: OrderId, blank: 'y', tab: '报名统计'} });
},
handleCurrentChange: function (val) { //翻页
this.msg.pageIndex = val;
this.getPageList();
......
......@@ -79,9 +79,18 @@
</td>
</tr>
<tr>
<td>平台ID</td>
<td colspan="3" class="w600 text-align-left font-weight">
{{detail.OrderId}}
<td>订单号</td>
<td colspan="3" class="w600 text-align-left font-weight cursorpointer">
<span @click="goUrlO(detail.OrderId)">{{detail.OrderId}}</span>
</td>
</tr>
<tr>
<td>财务单据</td>
<td colspan="3" class="w600 text-align-left font-weight cursorpointer">
<template v-for="item in orderList.FrIDs">
<span @click="goUrlSFD('SalesFinancialDetail', '销售财务单据', detail.OrderId, detail.TCNUM, detail.TCID)">{{item}}</span>
</template>
<span v-if="orderList.FrIDs && orderList.FrIDs.length<1">暂无</span>
</td>
</tr>
<tr>
......@@ -128,9 +137,25 @@
</td>
</tr>
</table>
<el-dialog title="提示信息" width="400px" :visible.sync="dialogFormVisible2" center :before-close="closeChangeMachie" >
<el-form label-width="110px">
<el-form-item label="税号:">
<el-input class="" v-model="msg.InvoiceNo" placeholder="请输入税号"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer" >
<el-button class="hollowFixedBtn" @click="dialogFormVisible2=false">{{$t('pub.cancelBtn')}}</el-button>
<el-button class="normalBtn" type="primary" @click="setStatus(3)">{{$t('pub.sureBtn')}}</el-button>
</div>
</el-dialog>
<div style="padding:20px 0">
<el-row v-if="detail.InvoiceNo">
税号:{{detail.InvoiceNo}}
</el-row>
</div>
<div class="iis_save" v-if="!noDetail && detail.InvoiceApplyState===1">
<button class="normalBtn" @click="setStatus(3)">通过</button>
<button class="normalBtn" @click="dialogFormVisible = true">拒绝</button>
<button class="normalBtn" @click="dialogFormVisible2 = true">通过</button>
<button class="hollowFixedBtn" @click="dialogFormVisible = true">拒绝</button>
</div>
<div class="iis_save" v-else-if="noDetail && detail.InvoiceApplyState===1">
<button class="normalBtn" @click="setStatus(2)">{{$t('pub.cancelBtn')}}</button>
......@@ -156,16 +181,21 @@ export default {
orderList: {},
loading: true,
dialogFormVisible: false,
dialogFormVisible2: false,
AccountInfo: '',
msg: {
RefuseRemarks: '',
ID: 0,
InvoiceApplyState: 0,
InvoiceNo: '',
},
noDetail: false,
};
},
methods: {
goUrlO: function (OrderId) {
this.$router.push({ name: 'enrollTotal', query: { id: OrderId, blank: 'y', tab: '报名统计'} });
},
goUrlT: function (path, obj, title){ // 跳转团页面
this.$router.push({ name:path,query:{"id":obj,blank:'y',tab:title}})
},
......@@ -182,6 +212,9 @@ export default {
},
setStatus: function (type) { // 审核发票单据
this.msg.InvoiceApplyState = type
if (type === 3 && this.msg.InvoiceNo==='') {
return this.$message.error('请填写税号!')
}
this.apipost('InvoiceApply_get_UpdateInvoiceApply', this.msg, res=>{
if (res.data.resultCode == 1) {
this.$message.success(res.data.message)
......@@ -189,7 +222,6 @@ export default {
setTimeout(()=>{
this.$router.push({
name: 'invoicesManager',
query: {blank: "y",}
});
},1000)
} else {
......@@ -229,6 +261,17 @@ export default {
}
)
},
goUrlSFD: function (path, name, OrderId, tcnum, tcid) {
let obj = {
OrderId: OrderId,
tcnum: tcnum,
tcid: tcid
}
this.$router.push({
name: path,
query: {blank: 'y', tab: name, item: JSON.stringify(obj)}
})
},
},
mounted() {
let id = this.$route.query.id
......
......@@ -324,6 +324,18 @@
<span v-if="item.financeList.length===0" style="cursor: default;">暂无数据</span>
</div>
</div>
<div>
<div>发票单据:</div>
<div>
<span v-for="(item2,index2) in item.invoiceApplyList" :key="index2">
<span v-if="item2.invoiceApplyState===6" class="groupTourOrder_tickets_blue" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===1" class="groupTourOrder_tickets_green" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===5" class="groupTourOrder_tickets_red" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===3" class="groupTourOrder_tickets_black" @click="goIisDetail(item2.id)">{{item2.id}}</span>
</span>
<span v-if="item.invoiceApplyList.length===0" style="cursor: default;">暂无数据</span>
</div>
</div>
</td>
</tr>
</tbody>
......@@ -608,7 +620,13 @@
//关闭修改业务员
closeSalseDiv(){
this.showChangeSales=false;
}
},
goIisDetail: function (id) { // 跳转发票详情页面
this.$router.push({
name: 'invoicesManagerDetail',
query: { id: id,noDetail: 1,blank: "y",}
});
},
},
mounted() {
let userInfo = this.getLocalStorage();
......@@ -632,7 +650,7 @@
this.msg.CreateBy = this.$route.query.EmployeeId === undefined ? "-1" : this.$route.query.EmployeeId;
this.msg.QStartDate = this.$route.query.starTime === undefined ? "" : this.$route.query.starTime;
this.msg.QEndDate = this.$route.query.endTime === undefined ? "" : this.$route.query.endTime;
if (this.msg.QStartDate === "" && this.msg.QEndDate === "") {
if (this.msg.QStartDate === "" && this.msg.QEndDate === "" && !this.msg.tempOrderId) {
let nowDay = new Date().toLocaleDateString();
this.msg.QStartDate = nowDay;
this.msg.QEndDate = nowDay;
......
......@@ -1810,7 +1810,7 @@
</table>
</div>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total></el-pagination>
layout="total,prev, pager, next, jumper" :page-size='msg.pageSize' :total='total'></el-pagination>
<el-dialog custom-class='w450' title="行程下载" :visible.sync="travelControlTripLayerShow" center>
<tripDownLoadCommon ref="tripDownLoadCommon" :tripObj="tripObj"
@headCallBack="hideTripDown" :downType="2"></tripDownLoadCommon>
......
......@@ -1739,6 +1739,7 @@
<div v-if="isUpdateOrder" @click='zhuanLoading = true,OPRemarkMsg.OrderId = item.orderId'>OP备注</div>
<!-- v-if="item.isUpdateOrderCommission" -->
<div v-if="isUpdateOrderCommission" @click='TCMsg.OrderId = item.orderId, TCMsg.CommissionMinusRate = item.commissionMinusRate,TCMsg.LatestCommissionMoney=item.latestCommissionMoney, TiChengLoading = true'>修改提成</div>
<div v-if='item.confirmFileList.length>0 && ((item.receivableMoney - item.invoiceApplyTotal) > 0)' @click='goUrlAdd("invoicesManagerAdd", item.orderId, item.tcid, item.customerId)'>申请发票</div>
<div v-if="item.isOrder=='1'&&(item.orderState=='1'||item.orderState=='2')" @click='setChargeLoss(item)'>
<span v-if="item.isChargeLossOrders==1">恢复收损单</span>
<span v-else>设为收损单</span>
......@@ -1819,6 +1820,18 @@
<span v-if="item.refundFinanceList.length===0" style="cursor: default;">暂无数据</span>
</div>
</div>
<div>
<div>发票单据:</div>
<div>
<span v-for="(item2,index2) in item.invoiceApplyList" :key="index2">
<span v-if="item2.invoiceApplyState===6" class="groupTourOrder_tickets_blue" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===1" class="groupTourOrder_tickets_green" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===5" class="groupTourOrder_tickets_red" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===3" class="groupTourOrder_tickets_black" @click="goIisDetail(item2.id)">{{item2.id}}</span>
</span>
<span v-if="item.invoiceApplyList.length===0" style="cursor: default;">暂无数据</span>
</div>
</div>
</td>
</tr>
</tbody>
......@@ -2053,6 +2066,16 @@
<span v-if="item.refundFinanceList.length===0" style="cursor: default;">暂无数据</span>
</div>
</div>
<div>发票单据:</div>
<div>
<span v-for="(item2,index2) in item.invoiceApplyList" :key="index2">
<span v-if="item2.invoiceApplyState===6" class="groupTourOrder_tickets_blue" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===1" class="groupTourOrder_tickets_green" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===5" class="groupTourOrder_tickets_red" @click="goIisDetail(item2.id)">{{item2.id}}</span>
<span v-else-if="item2.invoiceApplyState===3" class="groupTourOrder_tickets_black" @click="goIisDetail(item2.id)">{{item2.id}}</span>
</span>
<span v-if="item.invoiceApplyList.length===0" style="cursor: default;">暂无数据</span>
</div>
</td>
</tr>
</tbody>
......@@ -2450,6 +2473,19 @@ export default {
}
},
methods: {
goIisDetail: function (id) { // 跳转发票详情页面
this.$router.push({
name: 'invoicesManagerDetail',
query: { id: id,noDetail: 1,blank: "y",}
});
},
// 申请发票
goUrlAdd: function (path, OrderId, TCID, customerId) {
this.$router.push({
name: path,
query: {OrderId: OrderId, TCID: TCID, customerId: customerId, blank: "y",}
});
},
//跳转
goUrlTS (path, id, orderId, title) {
this.$router.push({
......
<template>
<div class="commissionDetails-box">
<!-- <div class="query-box">
<ul>
<li>
<input type="button" class="normalBtn" value="导出" @click="exportExcel">
</li>
</ul>
</div> -->
<v-table
v-if="isReady"
is-horizontal-resize
column-width-drag
style="width:100%"
:columns="columns"
:table-data="dataList"
:filter-method="filterMethod"
:total="total"
:pageSize="msg.pageSize"
:pageIndex="msg.pageIndex"
:handleCurrentChange="handleCurrentChange"
:multiple-sort="multipleSort"
:is-loading="loading"
sort-always
@sort-change="sortChange"
@on-custom-comp="customCompFunc"
></v-table>
<div style="height:20px;"> </div>
</div>
</template>
<script>
import Vue from 'vue'
import XLSX from 'xlsx'
var FileSaver = require('file-saver')
export default {
data() {
return {
activeName: "first",
commonName: "姓名",
loading: false,
msg: {
pageIndex: 1,
pageSize: 20,
ParentId: 0,
OrderBy: "",
BName:-1,
EmName: '',
Periods: '201903',
RB_Branch_Id: -1,
RB_Department_Id: 0,
},
total: 0,
currentPage: 1,
columns: [],
remoteLoading: false,
total: 0,
dataList: [],
isReady: false,
multipleSort: false,
loading: true,
CompanyList:[],
dataListTwo: [],
stringPerons:'',
periodsList: [],
};
},
methods: {
exportExcel(){
const defaultCellStyle = {'!cols': [{wpx: 60}, {wpx: 200}, {wpx: 60}, {wpx: 150},{wpx:60}]};
const wopts = { bookType:'xlsx', bookSST:false, type:'binary', defaultCellStyle: defaultCellStyle, showGridLines: true};
const wb = { SheetNames: ['提成统计'], Sheets: {}, Props: {} };
let data = []
this.dataList.forEach(x=>{
let obj={
'公司':x.bName,
'部门':x.departmentName,
'员工':x.createByStr,
'提成金额':x.commissionMoney.toFixed(2),
'额外奖励':x.otherMoney.toFixed(2),
'额外扣除':x.backMoney.toFixed(2),
'应发提成':x.sumMoney.toFixed(2),
'收客数':x.peopleCount,
'单签证人数':x.visaPeopleCount,
'所属期数':x.periods
}
data.push(obj)
})
wb.Sheets['提成统计'] = XLSX.utils.json_to_sheet(data)
//创建二进制对象写入转换好的字节流
let tmpDown = new Blob([this.s2ab(XLSX.write(wb, wopts))], { type: "application/octet-stream" })
FileSaver.saveAs(tmpDown, "提成统计.xls");
},
s2ab (s) {
if (typeof ArrayBuffer !== 'undefined') {
var buf = new ArrayBuffer(s.length);
var view = new Uint8Array(buf);
for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
return buf;
} else {
var buf = new Array(s.length);
for (var i = 0; i != s.length; ++i) buf[i] = s.charCodeAt(i) & 0xFF;
return buf;
}
},
filterMethod(filters){
console.log("filter", filters);
let data = JSON.parse(JSON.stringify(this.dataListTwo))
let dataListTwo = JSON.parse(JSON.stringify(this.dataListTwo))
if (filters.bName!='' && filters.bName!='__all__'){
data = data.filter(item => item.bName.indexOf(filters.bName)!=-1);
}
if (filters.departmentName!=''){
data = data.filter(item => item.departmentName.indexOf(filters.departmentName)!=-1);
}
if (filters.emName!=''){
data = data.filter(item => item.emName.indexOf(filters.emName)!=-1);
}
if (filters.periods!=''){
data = data.filter(item => item.periods.indexOf(filters.periods)!=-1);
}
if ((filters.bName === '' || filters.bName==='__all__') && filters.departmentName === '' && filters.createByStr === ''){
data = dataListTwo
}
this.dataList = data
console.log(data)
},
customCompFunc(params) {
if (params.type === "see") {
this.getInfo(params.data)
}
},
getCompanyList() {
//获取公司列表
this.apipost(
"admin_get_BranchGetList",
this.getCompanyMsg,
res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x => {
x.disabled = false;
});
this.CompanyList = data;
this.initColums();
} else {
}
},
err => {}
);
},
initColums() {
this.isReady = false;
let that = this;
let companyList = [];
let periodsList = this.periodsList;
this.CompanyList.forEach(x => {
let item = {};
item.label = x.BName;
item.value = x.BName;
companyList.push(item);
});
let ppList = [];
this.dataList.forEach(x=>{
ppList.push({
label: x.emName,
value: x.emName
})
})
console.log(companyList)
let company = {
field: "bName",
title: "公司",
width: 40,
titleAlign: "left",
columnAlign: "left",
isResize: true,
result: "",
filterMultiple: false,
filters: companyList,
type: "select"
// filterMultiple: false,
// filters: companyList,
// result: "",
// type: "select",
// orderBy: "asc"
// isFrozen:true
};
let department = {
field: "departmentName",
title: "部门",
width: 80,
titleAlign: "left",
columnAlign: "left",
isResize: true,
result: "",
filterMultiple: false,
filters: companyList,
type: "text"
};
let userName = {
field: "emName",
title: "姓名",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
result: "",
filterMultiple: false,
filters: ppList,
type: "select"
};
let periods = {
field: "periods",
title: "期数",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
result: "",
filterMultiple: false,
filters: periodsList,
type: "select"
};
let rejectCount = {
field: "rejectCount",
title: "单据驳回次数",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 100,
orderBy: "",
};
let receivedPeopleCount = {
field: "receivedPeopleCount",
title: "收客总人数",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 100,
orderBy: "",
};
let orderCount = {
field: "orderCount",
title: "订单数量",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
orderBy: "",
};
let uncollected = {
field: "uncollected",
title: "未收款金额",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
orderBy: "",
formatter: function(rowData, rowIndex, pagingIndex, field) {
return `<span>${rowData.uncollected <= 0 ? '' : that.moneyFormat(rowData.uncollected)}</span>`
}
};
let lateCount = {
field: "lateCount",
title: "迟到次数",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
orderBy: "",
};
let leaveEarlyCount = {
field: "leaveEarlyCount",
title: "早退次数",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
orderBy: "",
};
let complainCount = {
field: "complainCount",
title: "投诉次数",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
orderBy: "",
};
let discountPrice = {
field: "discountPrice",
title: "少价金额",
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
orderBy: "",
formatter: function(rowData, rowIndex, pagingIndex, field) {
return `<span>${rowData.discountPrice <= 0 ? '' : that.moneyFormat(rowData.discountPrice)}</span>`
}
};
this.columns = [];
this.columns.push(company);
this.columns.push(department);
this.columns.push(userName);
this.columns.push(periods);
this.columns.push(rejectCount);
this.columns.push(receivedPeopleCount);
this.columns.push(orderCount);
this.columns.push(uncollected);
this.columns.push(lateCount);
this.columns.push(leaveEarlyCount);
this.columns.push(complainCount);
this.columns.push(discountPrice);
this.isReady = true;
},
sortChange(param) {
console.log(param)
// if(param.sumMoney==''){
if(param.complainCount!=''){
this.msg.OrderBy='a.ComplainCount '+param.complainCount
}
if(param.discountPrice!=''){
this.msg.OrderBy='a.DiscountPrice '+param.discountPrice
}
if(param.lateCount!=''){
this.msg.OrderBy='a.LateCount '+param.lateCount
}
if(param.leaveEarlyCount!=''){
this.msg.OrderBy='a.LeaveEarlyCount '+param.leaveEarlyCount
}
if(param.orderCount!=''){
this.msg.OrderBy='a.OrderCount '+param.orderCount
}
if(param.receivedPeopleCount!=''){
this.msg.OrderBy='a.ReceivedPeopleCount '+param.receivedPeopleCount
}
if(param.rejectCount!=''){
this.msg.OrderBy='a.RejectCount '+param.rejectCount
}
if(param.uncollected!=''){
this.msg.OrderBy='a.Uncollected '+param.uncollected
}
//this.tableData = this.orderBy(d, ["incomeVal"], param.income).results;
this.getList();
// }else{
// let d=JSON.parse(JSON.stringify(this.dataList))
// this.dataList = this.orderBy(d, ["sumMoney"], param.sumMoney).results;
// }
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
getList() {
this.loading = true;
this.apipost(
"user_get_assessment_simple",
this.msg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
this.total = res.data.data.count;
this.dataListTwo = JSON.parse(JSON.stringify(this.dataList))
} else {
this.Error(res.data.message);
}
},
null
);
},
//切换排序
handleClick(tab, event) {
if (this.activeName == "first") {
// this.commonName='姓名'
this.msg.OrderStr = "UserId";
} else {
// this.commonName='公司名'
this.msg.OrderStr = "RB_Branch_Id";
}
this.getList();
},
//跳转
getInfo(item) {
var dateStr = item.periods;
var year = dateStr.substring(0, 4);
var month = dateStr.substring(4, 6);
var nextMonthFirstDay = new Date(year, month, 1);
var oneDay = 1000 * 60 * 60 * 24;
var entDay = new Date(nextMonthFirstDay - oneDay).Format("yyyy-MM-dd");
var startDay = year + "-" + month + "-" + "01";
var userId = item.userId;
this.$router.push({
path: "enrollTotal",
query: {
EmployeeId: userId,
starTime: startDay,
endTime: entDay,
blank:'y'
}
});
}
},
mounted() {
this.msg.pageSize = 10000; //不分页
this.msg.ParentId = this.$route.query.ParentId;
let dt=new Date()
this.stringPerons=(dt.getMonth()==0?(dt.getFullYear()-1):dt.getFullYear())+''+(dt.getMonth().toString().length<2?'0':'')+(dt.getMonth()==0?12:dt.getMonth());
let cont = dt.getMonth()
for(let i = 1; i <= cont; i ++){
let o = i < 10 ? '0'+i : i;
this.periodsList.push({
label: `2019${o}`,
value: `2019${o}`,
})
}
this.getList();
this.getCompanyList();
},
created(){
Vue.component('commission-table-operation',{
template:`<div style='width:80px;height:40px;background:#fff;text-align:center;position: relative;left:-5px;padding-top: 6px;padding-top:6px;'><el-button type="primary" size='mini' icon="el-icon-view" circle @click="see(rowData,index)"></el-button></div>`,
props:{
rowData:{
type:Object
},
field:{
type:String
},
index:{
type:Number
}
},
methods:{
see(){
let params = {type:'see',data:this.rowData};
this.$emit('on-custom-comp',params);
}
}
})
}
};
</script>
<style>
.commissionDetails-box .el-button.is-circle{padding: 5px !important;}
.commissionDetails-box .v-table-body-cell span {
display: block;
width: 100%;
}
</style>
......@@ -282,6 +282,14 @@ export default {
title: '提成详情'
},
},
{
path: '/ExaminationStatistics', //考核管理
name: 'ExaminationStatistics',
component: resolve => require(['@/components/administrative/ExaminationStatistics'], resolve),
meta: {
title: '考核管理'
},
},
{
path: '/leaderManagement', //领队导游管理
name: 'leaderManagement',
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment