Commit 7abb166d authored by 黄奎's avatar 黄奎

Merge branch 'master' of http://gitlab.oytour.com/luochao/superman

# Conflicts:
#	src/plug/index.js
parents 995f8498 8f6a7584
......@@ -417,12 +417,23 @@
</template>
<div class="_explain">
<div class="illustrate-text">
<p class="illustrate-left">附加说明:<span class="fr" v-if="GetDetail.ComplainID > 0" @click="goUrl('ComplaintsDetail', GetDetail.ComplainID,GetDetail.OrderID)"> <span style="color:#000">投诉单号:</span>
<p class="illustrate-left">附加说明:<span class="fr" v-if="GetDetail.ComplainID > 0"
@click="goUrl('ComplaintsDetail', GetDetail.ComplainID,GetDetail.OrderID)"> <span style="color:#000">投诉单号:</span>
<span class="cursorpointer text-decoration">{{GetDetail.ComplainID}}</span></span>
<span v-if="(GetDetail.TemplateId==28 || GetDetail.TemplateId==30) && GetDetail.OtherType!=63 && GetDetail.OtherType!=64" @click="Gourl(GetDetail)" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">提成详情</span>
<span v-if="(GetDetail.TemplateId==29 || GetDetail.TemplateId==31) && OPState && GetDetail.OtherType!=63 && GetDetail.OtherType!=64" @click="GoOPurl(GetDetail)" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">提成详情</span>
<span v-if="CostTypeState" @click="GourlCostType('VisitRecord',1)" style="margin:0 10px;cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">拜访记录</span>
<span v-if="CostTypeState" @click="GourlCostType('yingyanMap',2)" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">鹰眼轨迹</span>
<span v-if="(GetDetail.TemplateId==28 || GetDetail.TemplateId==30) && GetDetail.OtherType!=63 &&
GetDetail.OtherType!=64"
@click="Gourl(GetDetail)" style="cursor: pointer;float: right;color: #000;font-size: 14px;
text-decoration: underline;">
提成详情</span>
<span v-if="(GetDetail.TemplateId==29 || GetDetail.TemplateId==31) && OPState && GetDetail.OtherType!=63 && GetDetail.OtherType!=64"
@click="GoOPurl(GetDetail)" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">
提成详情</span>
<span v-if="CostTypeState" @click="GourlCostType('VisitRecord',1)" style="margin:0 10px;cursor: pointer;float: right;
color: #000;font-size: 14px;text-decoration: underline;">
拜访记录</span>
<span v-if="CostTypeState" @click="GourlCostType('yingyanMap',2)" style="cursor: pointer;float: right;color: #000;
font-size: 14px;text-decoration: underline;">
鹰眼轨迹</span>
<span v-if="GetDetail.OtherType==6" style="cursor: pointer;float: right;color: #000;font-size: 12px;">
<span style="text-decoration: underline;margin-right:10px" @click="goHand(1,GetDetail)">团号:{{GetDetail.TCNUM}}</span>
<span style="text-decoration: underline;" @click="goHand(2,GetDetail)">相关单据:{{GetDetail.ReFinanceId}}</span>
......@@ -1936,17 +1947,26 @@ export default {
},
GoOPurl(GetDetail){
this.$router.push({
name: 'OpComPersonDetails',
query: {
EmployeeId:GetDetail.AccountEmployeeId,
PeriodsId:GetDetail.OPPeriodsId,
RB_Branch_Id:GetDetail.RB_Branch_Id,
blank: "y",
tab: "op提成明细"
}
this.$router.push({
name: 'OPsalesCommissiondetails',
query: {
PeriodId: GetDetail.ReFinanceId,
OutBranchId: String(GetDetail.RB_Branch_Id),
blank: "y",
tab: "op提成明细"
}
});
// this.$router.push({
// name: 'OpComPersonDetails',
// query: {
// EmployeeId:GetDetail.AccountEmployeeId,
// PeriodsId:GetDetail.OPPeriodsId,
// RB_Branch_Id:GetDetail.RB_Branch_Id,
// blank: "y",
// tab: "op提成明细"
// }
// });
},
Gourl(GetDetail){
if(GetDetail.OtherType==43){//9月9号新增 如果是43 就跳转到国内的详情 反之按之前的来用
......@@ -2878,6 +2898,9 @@ export default {
if(item.CostTypeName=="差旅费"){
this.CostTypeState=true;
}
if (item.CostTypeName == "业务提成(操作)") {
this.OPState = true;
}
})
}
......
......@@ -1738,7 +1738,7 @@
name: 'OPsalesCommissiondetails',
query: {
PeriodId: GetDetail.ReFinanceId,
OutBranchId: stringify(GetDetail.RB_Branch_Id),
OutBranchId: String(GetDetail.RB_Branch_Id),
blank: "y",
tab: "op提成明细"
}
......
......@@ -4,20 +4,20 @@
position: relative;
top: 1px;
}
.opUl li {
display: inline-block;
margin: 10px 15px 10px 0;
}
.domesticCommissiondetails .opUl li input {
height: 34px !important;
}
.domesticCommissiondetails .singeRowTable tr td {
padding: 8px 5px;
}
.domesticCommissiondetails .hoverSpan span:hover {
cursor: pointer;
text-decoration: underline;
......@@ -75,10 +75,10 @@
</div>
<div style="display: flex;align-items: center;height: 50px;justify-content: space-between;">
<div style="display: flex;align-items: center;">
</div>
<input type="button" class="normalBtn" value="导出" @click="exportExcel">
</div>
<table v-loading="loading" class="singeRowTable" border="0" cellspacing="0" cellpadding="0"
style="margin-top: 10px;">
......@@ -107,7 +107,7 @@
<th>年终比例</th>
<th>期数</th>
<th width='300'>备注</th>
<!-- <th>操作</th> -->
</tr>
<tr v-for="item in dataList">
......@@ -120,7 +120,7 @@
<td>{{item.EmName}}</td>
<td><span class="cursor-p" @click="clickUrl(item,1)">{{item.OrderId}}</span></td>
<td>{{item.OrderTypeName}}</td>
<td style="font-size: 12px;">{{item.TCNUM?item.TCNUM:'-'}}
<td style="font-size: 12px;" :style="{'cursor':item.TCID?'pointer':''}" @click="item.TCID?goTravel(item.TCID):''">{{item.TCNUM?item.TCNUM:'-'}}
<p v-if="item.OutBranchName">{{item.OutBranchName?item.OutBranchName:'-'}}</p>
</td>
<td>{{item.LineName?item.LineName:'-'}}</td>
......@@ -131,7 +131,7 @@
<template v-else>-</template>
</td>
<td>{{item.Way==1?'销售额':'利润比'}}</td>
<td>{{item.OrderProfit?item.OrderProfit:'-'}}</td>
<td>{{item.YCommission?item.YCommission:'-'}}</td>
<td>{{item.Commission?item.Commission:'-'}}</td>
......@@ -159,12 +159,12 @@
<inAccordanceWith v-if="objNew" :msgNew="objNew"></inAccordanceWith>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible = false">取消</button> &nbsp;
<button class="normalBtn" type="primary" @click="outerVisible = false">确定</button>
<button class="normalBtn" type="primary" @click="outerVisible = false">确定</button>
</div>
</el-dialog>
</div>
</template>
<script>
import inAccordanceWith from "./inAccordanceWithDialog"
import moment from "moment"
......@@ -232,7 +232,7 @@
},
clickUrl(item,type){
if(type==2){//线索
}else{
this.OrderStatistics(item)
}
......@@ -292,8 +292,8 @@
err => {}
);
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
......@@ -329,13 +329,22 @@
}
);
},
goTravel(TCID) { //跳转到团队列表
this.$router.push({
path: 'TeamBalancePayment',//TravelControlList
query: {
id: TCID,
blank: 'y',
tab: '团队收支'//团控列表
}
});
},
exportExcel() { //导出
var fileName = "印象票务提成人员表.xls";
this.crmGetLocalFile("/api/Commission/GetCommissionOrderDetialToExcel", this.msg, fileName);
}
}
}
</script>
\ No newline at end of file
......@@ -372,11 +372,11 @@
},
goTravel(TCID) { //跳转到团队列表
this.$router.push({
path: 'TravelControlList',
path: 'TeamBalancePayment',//TravelControlList
query: {
TCID: TCID,
id: TCID,
blank: 'y',
tab: '团控列表'
tab: '团队收支'//团控列表
}
});
}
......
......@@ -321,20 +321,28 @@
},err=>{})
},
goTuanDetails(row) {
let name = ''
if (row.IsOneDayOrder == 1) {
name = 'groupTourOrderByTuanOne'
} else {
name = 'groupTourOrderByTuan'
}
this.$router.push({
name: name,
query: {
id: row.TCID,
tcmun: row.TCNUM,
blank: "y",
}
});
this.$router.push({
path: 'TeamBalancePayment',//TravelControlList
query: {
id: row.TCID,
blank: 'y',
tab: '团队收支'//团控列表
}
});
// let name = ''
// if (row.IsOneDayOrder == 1) {
// name = 'groupTourOrderByTuanOne'
// } else {
// name = 'groupTourOrderByTuan'
// }
// this.$router.push({
// name: name,
// query: {
// id: row.TCID,
// tcmun: row.TCNUM,
// blank: "y",
// }
// });
},
clickUrl(row,type){
let data = [{
......
......@@ -587,6 +587,15 @@
</el-select>
</span></p>
</div>
<!-- <div>
<p>签约客户:<span>
<el-select filterable v-model='msg.SigningCustomerId' class="w135 _border_b_1">
<el-option v-for='item in CustomerIdList' :label='item.customerName' :value='item.customerId'
:key='item.customerId'>
</el-option>
</el-select>
</span></p>
</div> -->
</div>
<div class="_remark">
<p>{{$t('system.label_info')}}</p>
......@@ -778,6 +787,7 @@
Status: 0,
},
departmentList: [],
CustomerIdList: [],
companyList: [],
edit: false,
IsUploadPic: 0,
......@@ -1843,6 +1853,20 @@
}
}, err => {})
},
getCustomerIdList() {this.apipost(
"customer_post_GetSigningCustomerPage",
{pageIndex: 1,pageSize: 1000,CustomerStatus: 0},
res => {
if (res.data.resultCode == 1) {
this.CustomerIdList = res.data.data.pageData;
} else {
this.loading = false;
this.$message.error(res.data.message);
}
},
err => {},
);
},
getCompany() { // 获取公司
this.apipost('admin_get_BranchGetList', this.companyMsg, res => {
let data = res.data.data;
......@@ -1931,6 +1955,7 @@
}
},
mounted() {
this.getCustomerIdList();
let userInfo = this.getLocalStorage();
this.department = userInfo.DepartName;
this.emplyeeName = userInfo.emName;
......
......@@ -4,26 +4,26 @@
position: relative;
top: 1px;
}
.opUl li {
display: inline-block;
margin: 10px 15px 10px 0;
}
.domesticCommissiondetails .opUl li input {
height: 34px !important;
}
.domesticCommissiondetails .singeRowTable tr td {
padding: 8px 5px;
}
.domesticCommissiondetails .hoverSpan span:hover {
cursor: pointer;
text-decoration: underline;
color: red;
}
</style>
<template>
<div class="flexOne domesticCommissiondetails">
......@@ -69,7 +69,7 @@
</el-option>
</el-select>
</li>
<!-- <li>
<em>订单号</em>
<el-input maxlength="50" v-model="msg.OrderId" class="permiss-input w200"
......@@ -80,9 +80,9 @@
<el-input maxlength="50" v-model="msg.TCNUM" class="permiss-input w200"
@keyup.native.enter="handleCurrentChange(1)" :placeholder="$t('pub.pleaseImport')"></el-input>
</li>
</ul>
</div>
<!-- <li>
......@@ -94,12 +94,12 @@
<span style="margin-left: 15px;">总人数:{{TotalNum}}</span>
</div>
<input type="button" class="normalBtn" value="导出" @click="exportExcel">
</div>
<table v-loading="loading" class="singeRowTable" border="0" cellspacing="0" cellpadding="0"
style="margin-top: 10px;">
<tr>
<th>公司</th>
<th>部门</th>
<th>销售</th>
......@@ -108,14 +108,14 @@
<!-- <th>订单号</th> -->
<th>人数</th>
<th>提成</th>
<th>期数</th>
<th width='400'>备注</th>
<!-- <th>操作</th> -->
</tr>
<tr v-for="item in dataList">
<td>{{item.BranchName}}</td>
<td>{{item.DeptName}}</td>
<td>{{item.UserName}}</td>
......@@ -124,24 +124,24 @@
<span style="cursor: pointer;text-decoration: underline;" @click="goTravel(item.TCID)">
{{item.TCNUM}}({{item.TCID}})
</span>
</td>
<td>{{item.TCProfit}}</td>
<td>{{item.PeopleCount}}</td>
<td>{{item.CommissionMoney}}</td>
<td>{{item.Periods}}</td>
<td>{{item.Description}}</td>
<!-- <td>
<el-tooltip class="item" effect="dark" content="查看" placement="top">
<el-button type="primary" class="CM_look" @click="goUrl('OPCommissionDetail',item.ID)"
icon="iconfont icon-chakan" circle></el-button>
</el-tooltip>
</td> -->
</tr>
<tr v-if="dataList.length==0">
......@@ -152,10 +152,10 @@
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.pageIndex"
layout="total,prev, pager, next, jumper" :page-size='msg.pageSize' :total='total'>
</el-pagination>
</div>
</template>
<script>
import moment from "moment"
export default {
......@@ -186,7 +186,7 @@
TotalMoney: 0,
TotalNum: 0,
disabled: true
}
},
mounted() {
......@@ -205,7 +205,7 @@
if (this.$route.query.TCNUM) {
this.msg.TCNUM = this.$route.query.TCNUM
}
if (this.$route.query.RB_Department_Id && this.$route.query.RB_Department_Id > 0) {
this.msg.RB_Department_Id = Number(this.$route.query.RB_Department_Id)
}
......@@ -275,7 +275,7 @@
res => {
if (res.data.resultCode == 1) {
this.BranchList = res.data.data;
}
},
err => {}
......@@ -290,7 +290,7 @@
if (this.PeriodsList && this.PeriodsList.length > 0) {
// this.msg.Periods = Number(this.PeriodsList[0].Id)
}
} else {
this.Error(res.data.message);
}
......@@ -298,8 +298,8 @@
null
);
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
......@@ -342,7 +342,7 @@
let msg = JSON.parse(JSON.stringify(this.msg))
if (msg.OrderId == '') {
msg.OrderId = 0
}
let userInfo = this.getLocalStorage();
msg.EmployeeIdUser = userInfo.EmployeeId
......@@ -351,17 +351,16 @@
},
goTravel(TCID) { //跳转到团队列表
this.$router.push({
path: 'TravelControlList',
path: 'TeamBalancePayment',//TravelControlList
query: {
TCID: TCID,
id: TCID,
blank: 'y',
tab: '团控列表'
tab: '团队收支'//团控列表
}
});
}
}
}
</script>
\ No newline at end of file
......@@ -81,7 +81,7 @@
icon="iconfont icon-chakan" circle></el-button>
</el-tooltip>
<el-tooltip v-if="cMaker==true" class="item" effect="dark" content="制单" placement="top">
<el-button @click="YijianZD(item)" type="danger" class="CM_look" v-if="cMaker==true"
<el-button @click="YijianZD(item)" type="danger" class="CM_look" v-if="cMaker==true"
icon="iconfont icon-mui-icon-add" circle></el-button>
</el-tooltip>
......@@ -168,7 +168,7 @@
if (res.data.resultCode == 1) {
this.PeriodsList = res.data.data;
// if(this.PeriodsList && this.PeriodsList.length>0){
// this.msg.Periods = Number(this.PeriodsList[0].Id)
// this.msg.Periods = Number(this.PeriodsList[0].Id)
// }
......@@ -237,7 +237,7 @@
);
},
YijianZD(item) {
let Money
let Money
if(this.msg.OutBranchId>-1){
if(item.BranchCommission>0){
Money=item.BranchCommission
......@@ -270,7 +270,7 @@
query.id = 28
query.Name = "总部销售提成单"
}
this.$router.push({
path: "/addFinancialDocuments",
query
......@@ -291,4 +291,4 @@
}
}
</script>
\ No newline at end of file
</script>
......@@ -345,11 +345,11 @@
},
goTravel(TCID) { //跳转到团队列表
this.$router.push({
path: 'TravelControlList',
path: 'TeamBalancePayment',//TravelControlList
query: {
TCID: TCID,
id: TCID,
blank: 'y',
tab: '团控列表'
tab: '团队收支'//团控列表
}
});
}
......
......@@ -628,6 +628,34 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="签约月结客户" prop="SigningType">
<el-checkbox v-model='addMsg.SigningType'>
</el-checkbox>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="签约资料" prop="SigningFile">
<el-upload v-if="!saveMsg || !saveMsg.length" class="upload-demo" :disabled="!addMsg.SigningType"
style="display:inline-block;position:relative;top:-1px;left:3px;" :http-request="uploadFileBtn"
:show-file-list="false" action="">
<el-button size="small" type="primary">签约材料</el-button>
</el-upload>
<template v-if="addMsg.SigningType && saveMsg&& saveMsg.length>0">
<template v-for="(subItem,subIndex) in saveMsg">
<a style="margin-left:20px;color:blue;cursor:pointer;" target="_blank" :key="subIndex"
@click="downloadFile(subItem.Path,subItem.FileName)">{{subItem.FileName}}</a>
<a :key="subIndex+1000" style="margin-left:20px;color:blue;cursor:pointer;"
@click="DeleteFile(subIndex)">删除</a>
</template>
</template>
</el-form-item>
</el-col>
</el-row>
<el-row v-if="isShow" :gutter="20">
<el-col :span="18">
......@@ -815,6 +843,10 @@
export default {
data() {
return {
saveMsg: [],
headers: {
'Content-Type': 'application/octet-stream'
},
addLayer1: false,
allowAdd: true,
defaultImg: 'this.src="' + require("../../assets/img/litheader.png") + '"',
......@@ -982,6 +1014,41 @@
}
},
methods: {
uploadFileBtn(file) { //上传
if (file.file.size > 1024 * 1024 * 100) {
this.$message.warning('文件大小不能超过100M!')
return
}
let that = this
let newArr = [];
newArr.push(file.file)
let path = "/Upload/Temporary/"
this.$message.info('上传中...')
this.UploadSelfFileT(path, newArr, x => {
let fileSize = file.file.size < 1024 ? file.file.size : (file.file.size / 1024).toFixed(0);
this.saveMsg = []
console.log('file', file, x)
this.saveMsg.push({
Path: x.data.FilePath,
FileName: file.file.name,
MD5Sign: file.file.uid,
FileSize: fileSize,
FolderId: this.msg.ParentId
})
});
},
//删除文件
DeleteFile(subIndex) {
this.saveMsg.splice(subIndex, 1);
},
//下载文件
downloadFile(fileUrl, fileName) {
const link = document.createElement('a');
link.href = fileUrl;
link.download = fileName;
document.body.appendChild(link);
link.click();
},
yichangde(obj) {
this.apipost("app_get_GetCustomerException", {
customerId: obj.customerId
......@@ -1432,7 +1499,9 @@
}
}, err => {})
},
saveVisa() { // 保存
saveVisa() { //
this.addMsg.SigningType = this.addMsg.SigningType ? 1 : 0
console.log('save', this.addMsg, this.updateMsg)
if(!this.addMsg.contactNumber){
this.$message.error('请输入联系电话')
return
......@@ -1445,6 +1514,12 @@
this.$message.error('请输入联系人')
return
}
if(this.addMsg.SigningType && !this.saveMsg.length){
this.$message.error('请上传签约材料')
return
} else {
this.addMsg.SigningFile = this.saveMsg[0].Path
}
// if(!this.addMsg.UniqueCode){
// this.$message.error('请输入统一编码')
// return
......
......@@ -136,7 +136,18 @@
</div>
</div>
</div>
<!-- <div>
<span>签约额度</span>
<el-input v-model="addMsg.SigningPrice" type="number"></el-input>
</div>
<div>
<span>有效日期</span>
<el-date-picker class="h34"
v-model="addMsg.SigningEndTime"
type="date"
value-format="yyyy-MM-dd">
</el-date-picker>
</div> -->
<div class="customerApprovalLayercontentBtn" v-show="(customerStatus==0||customerStatus==1)&&isOk==-1">
<input type="button" class="normalBtn" :value="$t('visa.v_tongguo')" @click="isOk=1;addMsg.AdviceStatus=1"/>
<input type="button" class="hollowFixedBtn" :value="$t('visa.v_jujue')" @click="isOk=0;addMsg.AdviceStatus=2"/>
......@@ -171,8 +182,6 @@
&nbsp;&nbsp;
<input type="button" class="hollowFixedBtn mg0" :value="$t('pub.cancelBtn')" @click="isOk=-1"/>
</div>
</div>
</div>
......
This diff is collapsed.
This diff is collapsed.
......@@ -147,7 +147,7 @@
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<!--出发是否联运-->
......@@ -190,7 +190,7 @@
<el-switch v-model="addMsg.IsReturnIntermodal" active-value="1" inactive-value="2"
@change="getUnionTravelPrice(priceObj, 2)"></el-switch>
</el-form-item>
</el-col>
<el-col :span="4">
<!--返程联运时间-->
......
......@@ -1151,7 +1151,7 @@
this.tripDetails = this.list[index].flightList;
},
goBuy(obj) {
this.teamInfo = obj;
this.teamInfo = JSON.parse(JSON.stringify(obj));
this.isShowTeamOrder = true;
},
// 产品详情
......
......@@ -3204,6 +3204,22 @@ export default {
title: '月结签约客户列表'
},
},
{ // 月结签约客户 财务单据
path: '/signedFinance',
name: 'signedFinance',
component: resolve => require(['@/components/SalesModule/signedFinance'], resolve),
meta: {
title: '财务单据'
},
},
{ // 月结签约客户 财务单据
path: '/signedFinanceAll',
name: 'signedFinanceAll',
component: resolve => require(['@/components/SalesModule/signedFinanceAll'], resolve),
meta: {
title: '财务单据列表'
},
},
{ // 销售 销售任务详情
path: '/saleTaskDetail',
name: 'saleTaskDetail',
......
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