Commit 364d09f4 authored by 华国豪's avatar 华国豪 🙄

解决 src/plug/index.js冲突

parents 42434fa7 a4c72007
...@@ -543,12 +543,13 @@ vertical-align:middle ...@@ -543,12 +543,13 @@ vertical-align:middle
bottom: 0; bottom: 0;
left: 50px; left: 50px;
padding: 10px; padding: 10px;
overflow: auto; overflow: hidden;
font-family: 'PingFangSc-Fine'; font-family: 'PingFangSc-Fine';
z-index: 999; z-index: 999;
right: 0; right: 0;
background-color: #fff; background-color: #fff;
border-top: 3px solid #38425d; border-top: 3px solid #38425d;
padding-bottom: 30px;
} }
.bottom-box .btm-title{ .bottom-box .btm-title{
padding-left: 10px; padding-left: 10px;
...@@ -569,4 +570,46 @@ vertical-align:middle ...@@ -569,4 +570,46 @@ vertical-align:middle
.page_ShoppingReimbursementDetails .avatar-uploader-icon { .page_ShoppingReimbursementDetails .avatar-uploader-icon {
height: auto !important; height: auto !important;
} }
\ No newline at end of file
/************************** luochao 重新定义表格样式 BEGIN *******************************/
.al-tab{
width: 100%;
border-collapse: collapse;
}
.al-tab .center.th,.al-tab .center.td{
text-align: center !important;
}
.al-tab,.al-tab th, .al-tab td{
border:1px solid #ddd;
}
.al-tab caption{
font-size: 18px;
color: #333;
height: 40px;
line-height: 40px;
text-align: left;
padding-left: 12px;
}
.al-tab th{
background: #E6E6E6;
height: 40px;
line-height: 40px;
color: #333;
font-size: 16px;
font-weight: 300;
text-align: left;
padding-left:5px;
}
.al-tab td{
height: 40px;
line-height: 40px;
color: #333;
font-size: 12px;
font-weight: 300;
text-align: left;
padding-left:5px;
}
/************************** luochao 重新定义表格样式 END *******************************/
\ No newline at end of file
...@@ -793,9 +793,13 @@ export default { ...@@ -793,9 +793,13 @@ export default {
let f = parseFloat(this.msg.OriginalFee); let f = parseFloat(this.msg.OriginalFee);
this.msg.Fee = (r*f).toFixed(2); this.msg.Fee = (r*f).toFixed(2);
let allPrice = 0; let allPrice = 0;
this.msg.detailList.forEach(x=>{ // this.msg.detailList.forEach(x=>{ //2019-02-01注释:页面手续费只需要计算一次,多个费用说明,重复计算 BY:W
allPrice = allPrice+parseFloat(x.bTotalPrice)-parseFloat(this.msg.Fee); // allPrice = allPrice+parseFloat(x.bTotalPrice)-parseFloat(this.msg.Fee);
// })
this.msg.detailList.forEach(x=>{
allPrice = allPrice+parseFloat(x.bTotalPrice);
}) })
allPrice =allPrice-parseFloat(this.msg.Fee);
this.allPrice = allPrice.toFixed(2); this.allPrice = allPrice.toFixed(2);
this.allPriceTo =this.$commonUtils.addCommas(this.allPrice); this.allPriceTo =this.$commonUtils.addCommas(this.allPrice);
this.chinaAllPrice=this.$commonUtils.changeMoneyToChinese(this.allPrice); this.chinaAllPrice=this.$commonUtils.changeMoneyToChinese(this.allPrice);
...@@ -805,9 +809,14 @@ export default { ...@@ -805,9 +809,14 @@ export default {
let f = parseFloat(this.msg.OriginalFee); let f = parseFloat(this.msg.OriginalFee);
this.msg.Fee = (r*f).toFixed(2); this.msg.Fee = (r*f).toFixed(2);
let allPrice = 0; let allPrice = 0;
this.msg.detailList.forEach(x=>{
allPrice = allPrice+parseFloat(x.bTotalPrice)-parseFloat(this.msg.Fee); // this.msg.detailList.forEach(x=>{ //2019-02-01注释:页面手续费只需要计算一次,多个费用说明,重复计算 BY:W
// allPrice = allPrice+parseFloat(x.bTotalPrice)-parseFloat(this.msg.Fee);
// });
this.msg.detailList.forEach(x=>{
allPrice = allPrice+parseFloat(x.bTotalPrice);
}) })
allPrice =allPrice-parseFloat(this.msg.Fee);
this.allPrice = allPrice.toFixed(2); this.allPrice = allPrice.toFixed(2);
this.allPriceTo =this.$commonUtils.addCommas(this.allPrice); this.allPriceTo =this.$commonUtils.addCommas(this.allPrice);
this.chinaAllPrice=this.$commonUtils.changeMoneyToChinese(this.allPrice) ; this.chinaAllPrice=this.$commonUtils.changeMoneyToChinese(this.allPrice) ;
......
<template> <template>
<div> <div class="rule-box">
<div class="query-box"> <div class="query-box">
<ul> <ul>
<li> <li>
<input <input type="button" class="normalBtn" value="新增" @click="addNew">
type="button"
class="normalBtn"
value="新增"
@click="addShow=true,text='新增',ed=false"
>
<input type="button" class="normalBtn" @click="downMuban()" value="导出">
</li> </li>
</ul> </ul>
</div> </div>
<v-table <v-table
v-if="isReady" v-if="isReady"
is-horizontal-resize is-horizontal-resize
column-width-drag
column-height-drag
style="width:100%" style="width:100%"
:is-loading="loading"
:columns="columns" :columns="columns"
:table-data="tableData" :table-data="tableData"
:filter-method="filterMethod" :filter-method="filterMethod"
...@@ -25,119 +22,233 @@ ...@@ -25,119 +22,233 @@
:pageIndex="pageIndex" :pageIndex="pageIndex"
:handleCurrentChange="handleCurrentChanges" :handleCurrentChange="handleCurrentChanges"
:multiple-sort="multipleSort" :multiple-sort="multipleSort"
:is-loading="loading"
sort-always sort-always
@sort-change="sortChange" @sort-change="sortChange"
@on-custom-comp="customCompFunc"
></v-table> ></v-table>
<!-- @on-custom-comp="customCompFunc" --> <!-- @on-custom-comp="customCompFunc" -->
<div class="bottom-box"> <div class="bottom-box" v-show="showForm" v-loading="formLoading">
<div class="btm-title">新增规则</div> <div class="btm-title">{{addMsg.ID==0?'新增规则':'修改规则'}}</div>
<div> <div>
<el-form <el-form
class="_info_box clearfix" class="_info_box clearfix"
:model="addMsg" :model="addMsg"
ref="addMsg" ref="addMsg"
:rules="rules"
label-width="110px" label-width="110px"
:rules="rules"
> >
<el-row> <el-row>
<el-col :span="4" :gutter="20"> <el-col :span="4" :gutter="20">
<el-form-item label="账户别名:"> <el-form-item label="账户别名:" prop="RuleName">
<el-input v-model="addMsg.RuleName" ></el-input> <el-input v-model="addMsg.RuleName"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4" :gutter="20"> <el-col :span="5" :gutter="20">
<el-form-item label="提成类别:"> <el-form-item label="提成类别:">
<el-select filterable v-model="addMsg.CommissionMethod" class> <el-select filterable v-model="addMsg.CommissionMethod" class>
<el-option label="交易额" value=1></el-option> <el-option label="交易额" :value="1"></el-option>
<el-option label="毛利" value=2></el-option> <!-- <el-option label="毛利" :value="2"></el-option> -->
<el-option label="人头数" value=3></el-option> <el-option label="人头数" :value="3"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4" :gutter="20"> <el-col :span="5" :gutter="20">
<el-form-item label="提成方式:"> <el-form-item label="提成方式:">
<el-select filterable v-model="addMsg.CommissionType" class> <el-select filterable v-model="addMsg.CommissionType" class>
<el-option label="百分比" value=1></el-option> <el-option label="固定百分比" :value="1" v-if='addMsg.CommissionMethod==1'></el-option>
<el-option label="定额" value=2></el-option> <el-option label="阶梯百分比" :value="2" v-if='addMsg.CommissionMethod==1'></el-option>
</el-select> <el-option label="固定金额" :value="3" v-if='addMsg.CommissionMethod==3'></el-option>
</el-form-item> <el-option label="阶梯金额" :value="4" v-if='addMsg.CommissionMethod==3'></el-option>
</el-col> </el-select>
<el-col :span="4" :gutter="20"> </el-form-item>
<el-form-item label="提成比例:"> </el-col>
<el-input v-model="addMsg.CommissionVariable"> <el-col :span="5" :gutter="20">
<template slot="append">{{addMsg.CommissionType==1?'%':'/人'}}</template> <el-form-item label="提成比例:" prop="CommissionVariable">
</el-input> <el-input
</el-form-item> v-model="addMsg.CommissionVariable"
</el-col> type="int"
<el-col :span="4" :gutter="20"> :disabled="addMsg.CommissionType%2!=1"
<el-form-item label="提成要求:"> >
<el-select filterable v-model="addMsg.Require" class> <template slot="append">{{addMsg.CommissionType==1?'%':'/人'}}</template>
<el-option label="已收定金" value=1></el-option> </el-input>
<el-option label="尾款收齐" value=2></el-option> </el-form-item>
</el-select> </el-col>
</el-form-item> <el-col :span="5" :gutter="20">
</el-col> <el-form-item label="提成要求:">
<el-col :span="4" :gutter="20"> <el-select v-model="addMsg.Require" class>
<el-form-item label="结算周期:"> <el-option label="已收定金" :value="1"></el-option>
<el-select filterable v-model="addMsg.BalanceCyc" class> <el-option label="尾款收齐" :value="2"></el-option>
<el-option label="按单结算" value=1></el-option> </el-select>
<el-option label="按月结算" value=2></el-option> </el-form-item>
</el-select> </el-col>
</el-form-item> </el-row>
</el-col> <el-row>
</el-row> <el-col :span="4" :gutter="20">
<el-row> <el-form-item label="结算周期:">
<el-col :span="4" :gutter="20"> <el-select v-model="addMsg.BalanceCyc" class>
<el-form-item label="结算要求:"> <el-option label="按单结算" :value="1"></el-option>
<el-select filterable v-model="addMsg.BalanceCyc" class> <el-option label="按月结算" :value="2"></el-option>
<el-option label="强制完成周期内所有订单提成要求" value=1></el-option> </el-select>
<el-option label="不用强制完成" value=0></el-option> </el-form-item>
</el-select> </el-col>
</el-form-item> <el-col :span="5" :gutter="20">
</el-col> <el-form-item label="结算要求:">
<el-col :span="4" :gutter="20"> <el-select v-model="addMsg.IsFinishAll" class>
<el-form-item label="适用公司:"> <el-option label="强制完成周期内所有订单提成要求" :value="1"></el-option>
<el-select filterable v-model="addMsg.BalanceCyc" class> <el-option label="不用强制完成" :value="0"></el-option>
<el-option label="强制完成周期内所有订单提成要求" value=1></el-option> </el-select>
</el-select> </el-form-item>
</el-form-item> </el-col>
</el-col> <el-col :span="5" :gutter="20">
<el-col :span="4" :gutter="20"> <el-form-item label="适用公司:" prop="UsingBranchArray">
<el-form-item label="适用线路:"> <el-select
<el-select filterable v-model="addMsg.BalanceCyc" class> filterable
<el-option label="强制完成周期内所有订单提成要求" value=1></el-option> multiple
</el-select> collapse-tags
</el-form-item> @change="changeData(1)"
</el-col> v-model="addMsg.UsingBranchArray"
<el-col :span="4" :gutter="20"> class
<el-form-item label="启用时间"> >
<el-select filterable v-model="addMsg.BalanceCyc" class> <el-option label="集团通用" value="-1"></el-option>
<el-option label="强制完成周期内所有订单提成要求" value=1></el-option> <el-option
</el-select> v-for="(item, index) in CompanyList"
</el-form-item> :label="item.BName"
</el-col> :value="item.Id.toString()"
</el-row> :key="index"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item label="适用线路:" prop="UsingLineArray">
<el-select
filterable
multiple
collapse-tags
@change="changeData(2)"
v-model="addMsg.UsingLineArray"
class
>
<el-option label="所有线路" value="-1"></el-option>
<el-option
v-for="(item, index) in lines"
:label="item.lineName"
:value="item.lineID.toString()"
:key="index"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item label="启用时间:">
<el-date-picker v-model="addMsg.EffectDate" type="date" placeholder="选择启用时间"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<table class="al-tab" v-show="addMsg.CommissionType%2==0">
<caption>阶梯提成比例设定</caption>
<thead>
<th>序号</th>
<th>起始人数</th>
<th>终止人数</th>
<th>基础比列</th>
<th>额外奖励</th>
<th>操作</th>
</thead>
<tbody>
<tr v-for="(item, index) in addMsg.RuleClassList" :key="index">
<td>{{index+1}}</td>
<td>
<el-input-number
size="small"
style="margin:0 12px"
:min="1"
:max="item.EndPeople"
v-model="item.StartPeople"
class="w120"
></el-input-number>
</td>
<td>
<el-input-number
size="small"
style="margin:0 15px"
:min="item.StartPeople"
v-model="item.EndPeople"
class="w100"
></el-input-number>
</td>
<td>
<el-input
placeholder="请输入基础比例"
size="small"
v-model="item.BaseVariable"
class="w200"
>
<template slot="append">{{addMsg.CommissionType==2?'%':'/人'}}</template>
</el-input>
</td>
<td>
<el-input
placeholder="请输入外卖奖励"
size="small"
v-model="item.AddedVariable"
class="w200 temp"
>
<template slot="append">
<el-select v-model="item.AddedMethod" class>
<el-option label="/人" :value="2"></el-option>
<el-option label="%" :value="1"></el-option>
</el-select>
</template>
</el-input>
</td>
<td>
<el-button
type="primary"
icon="el-icon-plus"
size="mini"
circle
v-if="index==addMsg.RuleClassList.length-1"
@click="addCommissionType"
></el-button>
<el-button
type="danger"
icon="el-icon-delete"
size="mini"
circle
@click="deleteCommissionType(index)"
v-if="addMsg.RuleClassList.length>1"
></el-button>
</td>
</tr>
</tbody>
</table>
</el-row>
</el-form> </el-form>
</div> </div>
<div class="btm-opera-btn"> <div class="btm-opera-btn">
<input <input type="button" class="normalBtn" value="保存" @click="save">
type="button" <input type="button" class="cancelBtn" value="取消" @click="changeShow(0)">
class="normalBtn"
value="保存"
>
<input
type="button"
class="cancelBtn"
value="取消"
>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import Vue from "vue";
export default { export default {
data() { data() {
var checkVariable = (rule, value, callback) => {
if (value == null || value.length == 0) {
return callback(new Error("提成比列不能为空"));
}
let a = parseFloat(value);
if (isNaN(a)) {
callback(new Error("提成比例必须是整数"));
} else {
callback();
}
};
return { return {
columns: [], columns: [],
remoteLoading: false, remoteLoading: false,
...@@ -148,27 +259,146 @@ export default { ...@@ -148,27 +259,146 @@ export default {
loading: false, loading: false,
pageSize: 1000, pageSize: 1000,
pageIndex: 1, pageIndex: 1,
msg:{}, msg: {},
CompanyList:[], CompanyList: [],
addMsg:{ addMsg: {},
ID:0, lines: [],
RuleName:"", rules: {
CommissionMethod:'1', RuleName: [
CommissionType:'1', { required: true, message: "请输入规则名称", trigger: "blur" }
Require:'1', ],
CommissionVariable:'0', UsingLineArray: [
UsingLine:'', {
UsingBranch:'', type: "array",
EffectDate:null, required: true,
RB_Group_Id:0, message: "请至少选择一个适用线路",
BalanceCyc:'', trigger: "blur"
IsFinishAll:'0', }
IsDelete:1 ],
UsingBranchArray: [
{
type: "array",
required: true,
message: "请至少选择一个适用公司",
trigger: "blur"
}
],
CommissionVariable: [{ validator: checkVariable, trigger: "blur" }]
}, },
rules: {} showForm: false,
formLoading: false,
searchMsg: {
RB_Group_Id: 0
}
}; };
}, },
methods: { methods: {
customCompFunc(params) {
if (params.type === "delete") {
this.delete(params.data.ID);
//this.financeinfoRemove(params.id,params.alias)
} else if (params.type === "edit") {
this.addNew(params.data);
}
},
delete(id) {
this.$confirm("此操作将永久删除该提成规则, 是否继续?", "删除提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
})
.then(() => {
let msg = {
id
};
this.apipost("sellcommission_rule_delete", msg, x => {
if (x.data.resultCode == 1) {
this.Success("删除成功");
this.getData()
} else {
this.Error(this.data.message);
}
});
})
.catch(() => {});
},
addNew(data) {
if (!data.ID) {
this.addMsg = {
ID: 0,
RuleName: "",
CommissionMethod: 1,
CommissionType: 1,
Require: 1,
CommissionVariable: 0,
UsingLineArray: ["-1"],
UsingBranchArray: ["-1"],
UsingLine: "",
UsingBranch: "",
EffectDate: null,
RB_Group_Id: this.searchMsg.RB_Group_Id,
BalanceCyc: 1,
IsFinishAll: 0,
IsDelete: 1,
RuleClassList: [
{
StartPeople: 1,
EndPeople: 1,
BaseVariable: 0,
AddedVariable: 0,
AddedMethod: 1
}
]
};
} else {
data.UsingLineArray = data.UsingLine.split(",");
data.UsingBranchArray = data.UsingBranch.split(",");
this.addMsg = data;
}
this.changeShow(1);
},
save() {
//sellcommission_rule_set
this.$refs["addMsg"].validate(valid => {
if (valid) {
this.formLoading = true;
this.addMsg.UsingLine = this.addMsg.UsingLineArray.join(",");
this.addMsg.UsingBranch = this.addMsg.UsingBranchArray.join(",");
this.apipost("sellcommission_rule_set", this.addMsg, x => {
if (x.data.resultCode == 1) {
this.changeShow(0);
this.Success("保存成功");
this.getData();
} else {
this.Error(x.data.message);
}
this.formLoading = false;
});
} else {
return false;
}
});
},
changeShow(t) {
this.showForm = t == 1;
},
deleteCommissionType(index) {
this.addMsg.RuleClassList.splice(index, 1);
},
addCommissionType() {
let obj = {
StartPeople:
this.addMsg.RuleClassList[this.addMsg.RuleClassList.length - 1]
.EndPeople + 1,
EndPeople:
this.addMsg.RuleClassList[this.addMsg.RuleClassList.length - 1]
.EndPeople + 1,
Variable: 0,
AddedVariable: 0,
AddedMethod: "1"
};
this.addMsg.RuleClassList.push(obj);
},
initColums() { initColums() {
this.isReady = false; this.isReady = false;
let that = this; let that = this;
...@@ -182,7 +412,8 @@ export default { ...@@ -182,7 +412,8 @@ export default {
width: 40, width: 40,
filters: [{}], filters: [{}],
isResize: true, isResize: true,
type: "text" type: "text",
isFrozen: true
}; };
let companyList = []; let companyList = [];
this.CompanyList.forEach(x => { this.CompanyList.forEach(x => {
...@@ -198,12 +429,19 @@ export default { ...@@ -198,12 +429,19 @@ export default {
titleAlign: "left", titleAlign: "left",
columnAlign: "left", columnAlign: "left",
isResize: true, isResize: true,
filterMultiple: false, filterMultiple: true,
filters: companyList, filters: companyList,
result: "", result: [],
type: "select" type: "select",
// isFrozen:true isFrozen: true
}; };
let lines = [];
this.lines.forEach(x => {
let item = {};
item.label = x.lineName;
item.value = x.lineID;
lines.push(item);
});
let LineName = { let LineName = {
field: "LineName", field: "LineName",
title: "适用线路", title: "适用线路",
...@@ -211,30 +449,33 @@ export default { ...@@ -211,30 +449,33 @@ export default {
titleAlign: "left", titleAlign: "left",
columnAlign: "left", columnAlign: "left",
isResize: true, isResize: true,
result: "", result: [],
filterMultiple: false, filterMultiple: true,
filters: [{}], filters: lines,
type: "text" isFrozen: true,
formatter: function(rowData, rowIndex, pagingIndex, field) {
if (rowData.UsingLine == "-1") {
return "所有线路";
} else {
let lineNames = "";
rowData.UsingLine.split(",").forEach(x => {
that.lines.forEach(y => {
if (y.lineID == x) {
lineNames += y.lineName + ",";
}
});
});
return lineNames;
}
}
}; };
let Rules = { let Rules = {
title: "提成规则", title: "提成规则",
field: "RuleDescription",
titleAlign: "left", titleAlign: "left",
columnAlign: "left", columnAlign: "left",
isResize: true, width: 300
width: 80, // orderBy: "desc"
orderBy: "desc",
// formatter: function(rowData, rowIndex, pagingIndex, field) {
// if (
// rowData["Initialbalance"] >= rowData["RiskLimitMoney"] &&
// rowData["Initialbalance"] != 0
// )
// return `<span style='color:red;font-weight:bold'>${rowData[
// "Initialbalance"
// ].toFixed(
// 2
// )}</span><span style='color:red;margin-left:12px;'>超限</span>`;
// else return rowData["Initialbalance"].toFixed(2);
// }
}; };
let EffectDate = { let EffectDate = {
field: "EffectDate", field: "EffectDate",
...@@ -243,32 +484,17 @@ export default { ...@@ -243,32 +484,17 @@ export default {
columnAlign: "left", columnAlign: "left",
isResize: true, isResize: true,
width: 80, width: 80,
// formatter: function(rowData, rowIndex, pagingIndex, field) { formatter: function(rowData, rowIndex, pagingIndex, field) {
// return rowData.SettlementType == 1 return rowData.EffectDate.split("T")[0];
// ? rowData.Commission.toFixed(2) + "%" }
// : rowData.Commission + "/人";
// },
// filterMultiple: true,
// result: [],
// filters: [
// {
// label: "交易额百分比",
// value: "1"
// },
// {
// label: "交易人头数",
// value: "2"
// }
// ],
//type: "check"
}; };
let CommissionLog = { let CommissionLog = {
title: "提成记录", title: "提成记录",
titleAlign: "left", titleAlign: "left",
columnAlign: "left", columnAlign: "left",
isResize: true, isResize: true,
width: 80, width: 80
orderBy: "", // orderBy: "",
// formatter: function(rowData, rowIndex, pagingIndex, field) { // formatter: function(rowData, rowIndex, pagingIndex, field) {
// return rowData.Royalty.toFixed(2); // return rowData.Royalty.toFixed(2);
// } // }
...@@ -279,28 +505,20 @@ export default { ...@@ -279,28 +505,20 @@ export default {
columnAlign: "left", columnAlign: "left",
isResize: true, isResize: true,
width: 80, width: 80,
// formatter: function(rowData, rowIndex, pagingIndex, field) { formatter: function(rowData, rowIndex, pagingIndex, field) {
// return `<span style='color:${ let cyc = "";
// rowData.HaveContract == 0 ? "red" : "blue" if (rowData.BalanceCyc == "1") {
// };margin-right:12px;'>${ cyc = "按单结算(";
// rowData.HaveContract == 0 ? "无合同" : "有合同" } else {
// }</span><span>${ cyc = "按月结算(";
// rowData.ContraceDateRange ? rowData.ContraceDateRange : "" }
// }</span>`; if (rowData.IsFinishAll == "1") {
// }, cyc += "必选完成周期内所有的提成要求)";
// filterMultiple: true, } else {
// result: [], cyc += "不强制完成周期内所有的提成要求)";
// filters: [ }
// { return cyc;
// label: "有合同", }
// value: "1"
// },
// {
// label: "无合同",
// value: "0"
// }
// ],
// type: "check"
}; };
let opera = { let opera = {
title: "操作", title: "操作",
...@@ -321,6 +539,22 @@ export default { ...@@ -321,6 +539,22 @@ export default {
this.columns.push(opera); this.columns.push(opera);
this.isReady = true; this.isReady = true;
}, },
changeData(type) {
let temp = [];
if (type == 1) {
temp = this.addMsg.UsingBranchArray;
} else if (type == 2) {
temp = this.addMsg.UsingLineArray;
}
let len = temp.length;
if (len > 1) {
if (temp[len - 1] == -1) {
temp.splice(0, len - 1);
} else if (temp.indexOf("-1") != -1) {
temp.splice(temp.indexOf("-1"), 1);
}
}
},
handleCurrentChanges(val) { handleCurrentChanges(val) {
this.pageIndex = val; this.pageIndex = val;
this.getList(); this.getList();
...@@ -358,18 +592,92 @@ export default { ...@@ -358,18 +592,92 @@ export default {
x.disabled = false; x.disabled = false;
}); });
this.CompanyList = data; this.CompanyList = data;
this.initColums(); this.getline();
} else { } else {
} }
}, },
err => {} err => {}
); );
}, },
getline() {
let msg = { pageIndex: 0, pageSize: 100 };
this.apipost(
"line_post_GetPageList",
msg,
x => {
this.lines = x.data.data.pageData;
// console.log(this.lines)
this.initColums();
this.getData();
},
err => {}
);
},
getData() {
this.loading = true;
this.apipost("sellcommission_rule_get", this.searchMsg, x => {
this.tableData = x.data.data;
this.loading = false;
});
}
}, },
mounted () { mounted() {
this.getCompanyList() this.searchMsg.RB_Group_Id = this.addMsg.RB_Group_Id = this.getLocalStorage().RB_Group_id;
this.getCompanyList();
Vue.component("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-edit" circle @click="update(rowData,index)"></el-button><el-button type="danger" size='mini' icon="el-icon-delete" circle @click="deleteRow(rowData,index)"></el-button></div>`,
props: {
rowData: {
type: Object
},
field: {
type: String
},
index: {
type: Number
}
},
methods: {
update() {
let params = { type: "edit", data: this.rowData };
this.$emit("on-custom-comp", params);
},
deleteRow() {
let params = { type: "delete", data: this.rowData };
this.$emit("on-custom-comp", params);
}
}
});
} }
}; };
</script> </script>
<style> <style>
/* .rule-box .el-select__tags{
top: 100%;
} */
.rule-box .el-input .el-input__inner,
.rule-box .el-select .el-input {
height: auto;
}
.rule-box .el-select {
display: block;
}
.el-input-group__append,
.el-input-group__prepend {
border-radius: 0;
}
.rule-box .el-date-editor.el-input,
.rule-box .el-date-editor.el-input__inner {
width: 100%;
}
.rule-box .temp .el-input-group__append {
width: 70px;
}
.rule-box .temp .el-select {
background: #409eff;
color: #fff;
}
.rule-box .temp .el-select .el-input .el-select__caret {
color: #f1f1f1;
}
</style> </style>
...@@ -376,7 +376,7 @@ ...@@ -376,7 +376,7 @@
CreateBy:'', CreateBy:'',
OrderId:0 OrderId:0
}, },
userId:0 userId:0,
}; };
}, },
methods: { methods: {
......
...@@ -263,7 +263,7 @@ ...@@ -263,7 +263,7 @@
<td>{{item.refund}}</td> <td>{{item.refund}}</td>
<td>{{item.platformTax}}</td> <td>{{item.platformTax}}</td>
<td>{{moneyFormat(item.zaiTuMoney)}}</td> <td>{{moneyFormat(item.zaiTuMoney)}}</td>
<td>{{moneyFormat(item.weiShouMoney)}}</td> <td class="weiShou">{{moneyFormat(item.weiShouMoney)}}</td>
<td class="fz12" :style="item.orderState===3?'color: #e95252;':''">{{item.statsstr}}</td> <td class="fz12" :style="item.orderState===3?'color: #e95252;':''">{{item.statsstr}}</td>
</tr> </tr>
<tr> <tr>
...@@ -939,5 +939,8 @@ ...@@ -939,5 +939,8 @@
display: inline-block; display: inline-block;
margin: 0 10px 0 0; margin: 0 10px 0 0;
} }
.enrollTotalSearchTable .weiShou{
color: red;
}
</style> </style>
...@@ -57,7 +57,7 @@ ...@@ -57,7 +57,7 @@
<th width="80">返佣总计</th> <th width="80">返佣总计</th>
<th width="80">汇率</th> <th width="80">汇率</th>
<th width="80">凭证</th> <th width="80">凭证</th>
<th width="80" >财务单据</th> <th width="80">财务单据</th>
<th width="80">操作</th> <th width="80">操作</th>
</tr> </tr>
<tr v-if="list.length==0"> <tr v-if="list.length==0">
......
...@@ -799,6 +799,10 @@ ...@@ -799,6 +799,10 @@
font-size: 14px; font-size: 14px;
vertical-align: top; vertical-align: top;
} }
.RegistrationList .nowrap{
white-space:nowrap;
}
</style> </style>
<template> <template>
...@@ -1316,6 +1320,8 @@ ...@@ -1316,6 +1320,8 @@
</div> </div>
</div> </div>
<div class="RL_rightBtn" v-if="isShow===true"> <div class="RL_rightBtn" v-if="isShow===true">
<!--item.TCID,item.OutBranchId-->
<input type="button" class="normalBtn" @click="goTeamBalance(ConfigData.Config.TCID,ConfigData.Config.OutBranchId)" value="团报" />
<input type="button" class="normalBtn" @click="SetOutNotice()" :value="'出团通知书('+(SetNoticeMsg.OutNotice==1?'OK':'暂定')+')'" /> <input type="button" class="normalBtn" @click="SetOutNotice()" :value="'出团通知书('+(SetNoticeMsg.OutNotice==1?'OK':'暂定')+')'" />
<input type="button" @click="CancelLeader" v-if="ConfigData.Leader!=null&&ConfigData.Leader.LeaderId>0" class="normalBtn" <input type="button" @click="CancelLeader" v-if="ConfigData.Leader!=null&&ConfigData.Leader.LeaderId>0" class="normalBtn"
value="重选领队" /> value="重选领队" />
...@@ -1330,18 +1336,18 @@ ...@@ -1330,18 +1336,18 @@
<tr> <tr>
<th width="240">单号</th> <th width="240">单号</th>
<th width="150">客户信息</th> <th width="150">客户信息</th>
<th width="70">人数/机位数</th> <th width="70" class="nowrap">人数/机位数</th>
<th width="110">单价</th> <th width="110" class="nowrap">单价</th>
<th width="110">成交单价</th> <th width="110" class="nowrap">成交单价</th>
<th width="110">应收总额</th> <th width="110" class="nowrap">应收总额</th>
<th width="110">实收</th> <th width="110" class="nowrap">实收</th>
<th width="110">退款</th> <th width="110" class="nowrap">退款</th>
<th width="110">平台税金</th> <th width="110" class="nowrap">平台税金</th>
<th width="110">平台在途</th> <th width="110" class="nowrap">平台在途</th>
<th width="80">待收金额</th> <th width="110" class="nowrap">待收金额</th>
<th width="100">状态</th> <th width="100" class="nowrap">状态</th>
<th width="130">确认函</th> <th width="130" class="nowrap">确认函</th>
<th width="150">操作</th> <th width="150" class="nowrap">操作</th>
</tr> </tr>
<tr> <tr>
<td v-show="OrderDataList.Length==0" colspan="14" align="center">暂无数据</td> <td v-show="OrderDataList.Length==0" colspan="14" align="center">暂无数据</td>
...@@ -1394,9 +1400,9 @@ ...@@ -1394,9 +1400,9 @@
</tr> </tr>
</table> </table>
</div> </div>
<span v-if='item.GuestNumStatus==1' style="color:#1AA86B;" class="personNo" slot="reference">{{item.GuestNum}}/{{item.YSeatNum>0? item.YSeatNum+'Y ':''}}{{item.ESeatNum>0? item.ESeatNum+'E ':''}}{{item.FSeatNum>0? item.FSeatNum+'F ':''}}</span> <span v-if='item.GuestNumStatus==1' style="color:#1AA86B; " class="personNo nowrap" slot="reference">{{item.GuestNum}}/{{item.YSeatNum>0? item.YSeatNum+'Y ':''}}{{item.ESeatNum>0? item.ESeatNum+'E ':''}}{{item.FSeatNum>0? item.FSeatNum+'F ':''}}</span>
<span v-if='item.GuestNumStatus==2' style="color:#E95252;" class="personNo" slot="reference">{{item.GuestNum}}/{{item.YSeatNum>0? item.YSeatNum+'Y ':''}}{{item.ESeatNum>0? item.ESeatNum+'E ':''}}{{item.FSeatNum>0? item.FSeatNum+'F ':''}}</span> <span v-if='item.GuestNumStatus==2' style="color:#E95252; " class="personNo nowrap" slot="reference">{{item.GuestNum}}/{{item.YSeatNum>0? item.YSeatNum+'Y ':''}}{{item.ESeatNum>0? item.ESeatNum+'E ':''}}{{item.FSeatNum>0? item.FSeatNum+'F ':''}}</span>
<span v-if='item.GuestNumStatus==3' style="color:#666;" class="personNo" slot="reference">{{item.GuestNum}}/{{item.YSeatNum>0? item.YSeatNum+'Y ':''}}{{item.ESeatNum>0? item.ESeatNum+'E ':''}}{{item.FSeatNum>0? item.FSeatNum+'F ':''}}</span> <span v-if='item.GuestNumStatus==3' style="color:#666; " class="personNo nowrap" slot="reference">{{item.GuestNum}}/{{item.YSeatNum>0? item.YSeatNum+'Y ':''}}{{item.ESeatNum>0? item.ESeatNum+'E ':''}}{{item.FSeatNum>0? item.FSeatNum+'F ':''}}</span>
</el-popover> </el-popover>
</td> </td>
<td>{{item.TC_Price}}</td> <td>{{item.TC_Price}}</td>
...@@ -1571,17 +1577,17 @@ ...@@ -1571,17 +1577,17 @@
</tr> </tr>
</table> </table>
</div> </div>
<span v-if='childItem.GuestNumStatus==1' style="color:#1AA86B;" class="personNo" slot="reference">{{childItem.GuestNum}}/{{childItem.YSeatNum>0? childItem.YSeatNum+'Y ':''}}{{childItem.ESeatNum>0? childItem.ESeatNum+'E ':''}}{{childItem.FSeatNum>0? childItem.FSeatNum+'F ':''}}</span> <span v-if='childItem.GuestNumStatus==1' style="color:#1AA86B; " class="personNo nowrap" slot="reference">{{childItem.GuestNum}}/{{childItem.YSeatNum>0? childItem.YSeatNum+'Y ':''}}{{childItem.ESeatNum>0? childItem.ESeatNum+'E ':''}}{{childItem.FSeatNum>0? childItem.FSeatNum+'F ':''}}</span>
<span v-if='childItem.GuestNumStatus==2' style="color:#E95252;" class="personNo" slot="reference">{{childItem.GuestNum}}/{{childItem.YSeatNum>0? childItem.YSeatNum+'Y ':''}}{{childItem.ESeatNum>0? childItem.ESeatNum+'E ':''}}{{childItem.FSeatNum>0? childItem.FSeatNum+'F ':''}}</span> <span v-if='childItem.GuestNumStatus==2' style="color:#E95252;" class="personNo nowrap" slot="reference">{{childItem.GuestNum}}/{{childItem.YSeatNum>0? childItem.YSeatNum+'Y ':''}}{{childItem.ESeatNum>0? childItem.ESeatNum+'E ':''}}{{childItem.FSeatNum>0? childItem.FSeatNum+'F ':''}}</span>
<span v-if='childItem.GuestNumStatus==3' style="color:#666;" class="personNo" slot="reference">{{childItem.GuestNum}}/{{childItem.YSeatNum>0? childItem.YSeatNum+'Y ':''}}{{childItem.ESeatNum>0? childItem.ESeatNum+'E ':''}}{{childItem.FSeatNum>0? childItem.FSeatNum+'F ':''}}</span> <span v-if='childItem.GuestNumStatus==3' style="color:#666; " class="personNo nowrap" slot="reference">{{childItem.GuestNum}}/{{childItem.YSeatNum>0? childItem.YSeatNum+'Y ':''}}{{childItem.ESeatNum>0? childItem.ESeatNum+'E ':''}}{{childItem.FSeatNum>0? childItem.FSeatNum+'F ':''}}</span>
</el-popover> </el-popover>
</td> </td>
<td>{{childItem.TC_Price}}</td> <td class="nowrap">{{childItem.TC_Price}}</td>
<td>{{childItem.Unit_Price}}</td> <td>{{childItem.Unit_Price}}</td>
<td> <td class="nowrap">
<p>{{childItem.PreferPrice}}</p> <p>{{childItem.PreferPrice}}</p>
</td> </td>
<td> <td class="nowrap">
<el-popover style='padding: 0;' width="400" trigger="click"> <el-popover style='padding: 0;' width="400" trigger="click">
<div class="personNolayer"> <div class="personNolayer">
<table border="0" cellspacing="1" cellpadding="1"> <table border="0" cellspacing="1" cellpadding="1">
...@@ -1608,10 +1614,10 @@ ...@@ -1608,10 +1614,10 @@
@click="getOrderDetail(childItem)" slot="reference">{{childItem.Income}}</span> @click="getOrderDetail(childItem)" slot="reference">{{childItem.Income}}</span>
</el-popover> </el-popover>
</td> </td>
<td>{{childItem.Refund}}</td> <td class="nowrap">{{childItem.Refund}}</td>
<td>{{childItem.PlatformTax}}</td> <td class="nowrap">{{childItem.PlatformTax}}</td>
<td>{{childItem.ZaiTuMoney}}</td> <td class="nowrap">{{childItem.ZaiTuMoney}}</td>
<td><span :class="{color_red_order:childItem.DueInMoney!==childItem.PreferPrice}">{{childItem.DueInMoney}}</span></td> <td class="nowrap"><span :class="{color_red_order:childItem.DueInMoney!==childItem.PreferPrice}">{{childItem.DueInMoney}}</span></td>
<td class="fz12"><span :class="{'RL-redType':childItem.statsstr=='候补'}">{{childItem.statsstr}}</span></td> <td class="fz12"><span :class="{'RL-redType':childItem.statsstr=='候补'}">{{childItem.statsstr}}</span></td>
<td> <td>
<div @click="goOpenUrl('confirmationOrder',childItem.OrderId)" style="cursor:pointer;">电子确认函</div> <div @click="goOpenUrl('confirmationOrder',childItem.OrderId)" style="cursor:pointer;">电子确认函</div>
...@@ -2824,14 +2830,14 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue"; ...@@ -2824,14 +2830,14 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue";
if (this.addMsg.Commission > 0) { if (this.addMsg.Commission > 0) {
this.addMsg.CommissionShareMoney = this.addMsg.Commission / 2; this.addMsg.CommissionShareMoney = this.addMsg.Commission / 2;
this.addMsg.Commission = this.addMsg.Commission =
this.addMsg.Commission - this.addMsg.CommissionShareMoney; (this.addMsg.Commission - this.addMsg.CommissionShareMoney).toFixed(2);
} else { } else {
this.addMsg.CommissionShareMoney = "0"; this.addMsg.CommissionShareMoney = "0";
} }
} }
} }
} else { } else {
this.addMsg.Commission = Number(this.addMsg.PreferPrice) * 0.01 this.addMsg.Commission = (Number(this.addMsg.PreferPrice) * 0.01).toFixed(2)
} }
}, },
getHouseNo() { getHouseNo() {
...@@ -3808,6 +3814,18 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue"; ...@@ -3808,6 +3814,18 @@ import updateSalesMan from "../../commonPage/updateSalesMan.vue";
//关闭修改业务员 //关闭修改业务员
closeSalseDiv(){ closeSalseDiv(){
this.showChangeSales=false; this.showChangeSales=false;
},
//跳转到团报
goTeamBalance(id, OutBranchId) {
this.$router.push({
name: "TeamBalancePayment",
query: {
id: id,
OutBranchId: OutBranchId,
blank: "y",
tab: "团队收支明细"
}
});
} }
}, },
mounted() { mounted() {
......
<style>
.ComDetail_nav{margin: 20px 0 0 0 ;background-color: #f5f5f5;margin-bottom:20px;}
.ComDetail_nav li{float: left;font-size: 14px;color: #666666;padding: 15px 20px;cursor: pointer;position: relative;background-color: #f1f1f1;margin-right: 5px}
.ComDetail_nav li._active{background-color:#FFFFFF;color: #333333 }
.ComDetail_nav li._active::after{content: "";width: 20px;height: 3px;background-color: #E95252;display: inline-block;position: absolute;bottom: 0;left: 38%;}
.CD_orderNum{
color: #3980C8;
border-bottom: 1px dotted #3980C8;
cursor: pointer;
}
</style>
<template>
<div>
<!-- <ul class="ComDetail_nav clearfix">
<li :class="active==1?'_active':''" @click="active=1,commonName='姓名'">按人排序</li>
<li :class="active==2?'_active':''" @click="active=2,commonName='公司名'">按公司排序</li>
</ul> -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="按人排序" name="first"></el-tab-pane>
<el-tab-pane label="按公司排序" name="second"></el-tab-pane>
</el-tabs>
<table border="0" cellspacing="0" cellpadding="0" class="singeRowTable">
<tr>
<th width="300">{{commonName}}</th>
<th>提成金额</th>
<th>期数</th>
<th width="500">备注</th>
<th>操作</th>
</tr>
<tr v-for="item in dataList">
<td>{{item.createByStr}}</td>
<td>{{item.commissionMoney}}</td>
<td>{{item.periods}}</td>
<!-- <td>{{item.ruleName}}</td> -->
<td></td>
<td>
<input type="button" @click="getInfo(item)" class="normalBtn" value="详情"/>
</td>
</tr>
</table>
<!-- 分页 -->
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size='msg.pageSize' :total='total'>
</el-pagination>
</div>
</template>
<script>
export default {
data(){
return{
activeName: "first",
commonName:'姓名',
loading:false,
msg:{
pageIndex: 1,
pageSize: 20,
ParentId:0,
OrderStr:'UserId'
},
total:0,
currentPage: 1,
dataList:[]
}
},methods:{
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
getList(){
this.loading = true;
this.apipost(
"sellcommission_GetDetailsList",
this.msg,
res => {
this.loading = false;
if(res.data.resultCode==1){
this.dataList = res.data.data.pageData;
this.total = res.data.data.count;
console.log(this.dataList,'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,
}
});
}
},mounted(){
this.msg.ParentId = this.$route.query.ParentId;
this.getList();
}
}
</script>
<style>
.CM_look{
padding:4px!important;
position: relative;
top:1px;
}
</style>
<template>
<div class="flexOne">
<div class="query-box">
<ul>
<li>
<input type="button" class="normalBtn" @click="generateTable" value="生成提成报表"/>
</li>
</ul>
</div>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<th>期数</th>
<th>提成总金额</th>
<th>操作人</th>
<th>日期</th>
<th>操作</th>
</tr>
<tr v-for="item in dataList">
<td>{{item.periods}}</td>
<td>{{item.sumPrice}}</td>
<td>{{item.createByStr}}</td>
<td>{{item.createStr}}</td>
<td>
<!-- <el-tooltip class="item" effect="dark" content="取消" placement="top">
<el-button type="danger" icon="el-icon-delete" circle></el-button>
</el-tooltip> -->
<el-tooltip class="item" effect="dark" content="查看" placement="top">
<el-button type="primary" class="CM_look" @click="goUrl('CommissionDetail',item.id)" icon="iconfont icon-chakan" circle></el-button>
</el-tooltip>
</td>
</tr>
</table>
<!-- 分页 -->
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage"
layout="total,prev, pager, next, jumper" :page-size='msg.PageSize' :total='total'>
</el-pagination>
</div>
</template>
<script>
export default {
data() {
return {
msg: {
PageIndex: 1,
PageSize: 20
},
loading:false,
//数据源
dataList:[],
total:0,
currentPage: 1,
}
},
mounted() {
this.getList();
},
methods: {
handleCurrentChange(val) {
this.msg.PageIndex = val;
this.getList();
},
goUrl(path,id) {
this.$router.push({
path: path,
query: {
ParentId:id,
blank: 'y',
tab: '报价详情'
}
});
},
//获取数据
getList() {
this.loading = true;
this.apipost(
"sellcommission_GetPageList",
this.msg,
res => {
this.loading = false;
if(res.data.resultCode==1){
this.dataList = res.data.data.pageData;
this.total = res.data.data.count;
}else{
this.Error(res.data.message);
}
},
null
);
},
//生成提成报表
generateTable(){
let msg = {
UserId: 0
}
this.apipost(
"sellcommission_SetGenerateCommission",msg,
res => {
if(res.data.resultCode==1){
this.dataList = res.data.data.pageData;
this.total = res.data.data.count;
}else{
this.Error(res.data.message);
}
},
null
);
}
}
}
</script>
<style>
.confirmOrder{
width:950px;
}
</style>
<template> <template>
<div class="travelControlTrip detail-box"> <div class="travelControlTrip detail-box">
<div class="trip_cover" v-show="pdfLoading" v-loading="pdfLoading"></div> <div class="trip_cover" v-show="pdfLoading" v-loading="pdfLoading"></div>
...@@ -454,7 +460,7 @@ ...@@ -454,7 +460,7 @@
</div> </div>
</div> </div>
</div> </div>
<el-dialog title="修改信息" :visible.sync="editMsgShow" center> <el-dialog title="修改信息" custom-class="confirmOrder" :visible.sync="editMsgShow" center>
<el-form :model="editForm" label-width="100px"> <el-form :model="editForm" label-width="100px">
<p class="edit_form_box_tit">集合地点&联系人</p> <p class="edit_form_box_tit">集合地点&联系人</p>
<div class="edit_form_box"> <div class="edit_form_box">
...@@ -527,6 +533,14 @@ ...@@ -527,6 +533,14 @@
<el-button type="danger" icon="el-icon-delete" @click="removePriceFlight(index,priceFlight,1)" <el-button type="danger" icon="el-icon-delete" @click="removePriceFlight(index,priceFlight,1)"
circle></el-button> circle></el-button>
</el-tooltip> </el-tooltip>
<el-tooltip class="item" v-if="index!=0" style="margin-left:0" effect="dark" content="上移" placement="top-start">
<el-button type="danger" icon="iconfont icon-shangyi" @click="MoveItem(priceFlight,index,0)"
circle></el-button>
</el-tooltip>
<el-tooltip class="item" v-if="index!=editForm.travelOrderFlightList.length-1" style="margin-left:0" effect="dark" content="下移" placement="top-start">
<el-button type="danger" icon="iconfont icon-xiayi1" @click="MoveItem(priceFlight,index,1)"
circle></el-button>
</el-tooltip>
</td> </td>
</tr> </tr>
</table> </table>
...@@ -1115,7 +1129,29 @@ ...@@ -1115,7 +1129,29 @@
this.$set(this.tripList, j, x) this.$set(this.tripList, j, x)
x.dateTime = this.setDate(j); x.dateTime = this.setDate(j);
}) })
} },
//上移下移(IsUp:0上移,1下移)
MoveItem(item, subIndex, IsUp) {
var currentItem = this.editForm.travelOrderFlightList[subIndex];
//上移
if (IsUp == 0) {
if (subIndex > 0) {
var upItem = this.editForm.travelOrderFlightList[subIndex - 1];
this.$set(this.editForm.travelOrderFlightList, subIndex - 1, currentItem);
this.$set(this.editForm.travelOrderFlightList, subIndex, upItem);
this.$forceUpdate();
}
} else {
//下移
if (subIndex != this.editForm.travelOrderFlightList.length - 1) {
var downItem = this.editForm.travelOrderFlightList[subIndex + 1];
this.$set(this.editForm.travelOrderFlightList, subIndex + 1, currentItem);
this.$set(this.editForm.travelOrderFlightList, subIndex, downItem);
this.$forceUpdate();
}
}
},
}, },
components: { components: {
oneday, oneday,
......
<style>
</style>
<template> <template>
<div class="flexOne"> <div class="flexOne">
<div class="query-box"> <div class="query-box">
<ul> <ul>
<li> <li>
<span><em>角色名称</em><el-input v-model='msg.Name' placeholder="请输入内容"></el-input></span> <span><em>角色名称</em>
</li> <el-input v-model='msg.Name' placeholder="请输入内容"></el-input>
<li> </span>
<span><em>状态</em><el-select v-model='msg.Status' placeholder="不限"> </li>
<el-option label='不限' value=''></el-option> <li>
<el-option label='正常' value='0'></el-option> <span><em>状态</em>
<el-option label='冻结' value='1'></el-option> <el-select v-model='msg.Status' placeholder="不限">
</el-select> <el-option label='不限' value=''></el-option>
</span> <el-option label='正常' value='0'></el-option>
</li> <el-option label='冻结' value='1'></el-option>
<!-- <li> </el-select>
<span><em>版本</em><el-select v-model='msg.Versions_Id' placeholder="不限"> </span>
<el-option label='不限' value=''></el-option> </li>
<el-option v-for='item in versions' <li>
:key="item.Id" <input type="button" class="hollowFixedBtn" @click="resetPageIndex();getList()" value="查询" />
:label="item.VersionsName" <input type="button" @click="outerVisible = true,dialogTitle='新增角色',resetForm('addMsg')" class="normalBtn"
:value="item.Id" value="新增" />
></el-option> </li>
</el-select> </ul>
</span> </div>
</li> --> <table class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<li> <tr>
<input type="button" class="hollowFixedBtn" @click="resetPageIndex();getList()" value="查询" /> <th width="300">角色名称</th>
<input type="button" @click="outerVisible = true,dialogTitle='新增角色',resetForm('addMsg')" class="normalBtn" value="新增" /> <th width="800">描述</th>
</li> <th width="100">状态</th>
</ul> <th>操作人</th>
</div> <th>操作</th>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0"> </tr>
<tr> <tr v-for="(item,index) in dataList">
<th width="300">角色名称</th> <td>{{item.Name}}</td>
<th width="800">描述</th> <td>{{item.Description}}</td>
<th width="100">状态</th> <td>{{item.Status==0?'正常':'冻结'}}</td>
<!-- <th>版本名称</th> --> <td>{{item.EmName}}</td>
<th>操作人</th> <td>
<th>操作</th> <el-row>
</tr> <el-tooltip class="item" effect="dark" content="修改" placement="top-start">
<tr v-for="(item,index) in dataList"> <el-button @click="outerVisible = true,dialogTitle='修改角色',updateData(item.Id)" type="primary" icon="el-icon-edit"
<td>{{item.Name}}</td> circle></el-button>
<td>{{item.Description}}</td> </el-tooltip>
<td>{{item.Status==0?'正常':'冻结'}}</td>
<!-- <td>{{item.VersionsName}}</td> -->
<td>{{item.EmName}}</td>
<td>
<el-row>
<el-tooltip class="item" effect="dark" content="修改" placement="top-start">
<el-button @click="outerVisible = true,dialogTitle='修改角色',updateData(item.Id)" type="primary" icon="el-icon-edit" circle></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="权限" placement="top-start">
<el-button @click="goUrl('permissionList',item.Id)" type="primary" icon="iconfont icon-quanxianguanli" circle></el-button>
</el-tooltip>
</el-row>
</td>
</tr>
</table>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper" :page-size=msg.pageSize :total=total>
</el-pagination>
<el-dialog custom-class='w450' :title="dialogTitle" :visible.sync="outerVisible" center :before-close="closeChangeMachie">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px" >
<el-form-item maxlength='50' label="角色名称" prop="Name">
<el-input class='w217' type="text" v-model="addMsg.Name" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
<!-- <el-form-item label="版本" prop="Versions_Id">
<el-select class='w217' v-model='addMsg.Versions_Id' placeholder="请选择">
<el-option v-for='item in versions' :key="item.Id" :label="item.VersionsName" :value="item.Id"></el-option>
</el-select>
</el-form-item> -->
<el-form-item label="状态" prop="Status">
<el-switch v-model="addMsg.Status" active-value="0" inactive-value="1"></el-switch>
</el-form-item>
<el-form-item label="描述" prop="Description">
<el-input maxlength='250' class='w217' type="textarea" v-model="addMsg.Description"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible = false,resetForm('addMsg'),getList()">{{$t('pub.cancelBtn')}}</button> &nbsp;
<button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button>
</div>
</el-dialog>
</div>
<el-tooltip class="item" effect="dark" content="权限" placement="top-start">
<el-button @click="goUrl('permissionList',item.Id)" type="primary" icon="iconfont icon-quanxianguanli"
circle></el-button>
</el-tooltip>
</el-row>
</td>
</tr>
</table>
<el-pagination background @current-change="handleCurrentChange" :current-page.sync="currentPage" layout="total,prev, pager, next, jumper"
:page-size=msg.pageSize :total=total>
</el-pagination>
<el-dialog custom-class='w450' :title="dialogTitle" :visible.sync="outerVisible" center :before-close="closeChangeMachie">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px">
<el-form-item maxlength='50' label="角色名称" prop="Name">
<el-input class='w217' type="text" v-model="addMsg.Name" :placeholder="$t('pub.pleaseImport')"></el-input>
</el-form-item>
<el-form-item label="状态" prop="Status">
<el-switch v-model="addMsg.Status" active-value="0" inactive-value="1"></el-switch>
</el-form-item>
<el-form-item label="描述" prop="Description">
<el-input maxlength='250' class='w217' type="textarea" v-model="addMsg.Description"></el-input>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<button class="hollowFixedBtn" @click="outerVisible = false,resetForm('addMsg'),getList()">{{$t('pub.cancelBtn')}}</button>
&nbsp;
<button class="normalBtn" type="primary" @click="submitForm('addMsg')">{{$t('pub.saveBtn')}}</button>
</div>
</el-dialog>
</div>
</template> </template>
<script> <script>
export default { export default {
data() { data() {
return { return {
switchValue:'1', switchValue: '1',
dialogTitle: '', dialogTitle: '',
insideDialogTxt: '保存成功!', insideDialogTxt: '保存成功!',
outerVisible: false, outerVisible: false,
innerVisible: false, innerVisible: false,
isRight:true, isRight: true,
versions: [], versions: [],
total: 0, total: 0,
currentPage: 1, currentPage: 1,
dataList: [], dataList: [],
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 15, pageSize: 15,
Status: '0', Status: '0',
Name: '', Name: '',
}, },
addMsg:{ addMsg: {
Id:'0', Id: '0',
Name:'', Name: '',
Description:'', Description: '',
Status:'0', Status: '0',
}, },
rules:{ rules: {
Name:[ Name: [{
{ required: true, message: '请输入名称', trigger: 'blur' } required: true,
], message: '请输入名称',
Status:[ trigger: 'blur'
{ required: false, message: '', trigger: 'change' } }],
], Status: [{
Description:[ required: false,
{ required: false, message: '请输入描述', trigger: 'change' } message: '',
], trigger: 'change'
}],
}, Description: [{
verSionMsg: { required: false,
Status: 0 message: '请输入描述',
}, trigger: 'change'
} }],
},
mounted() { },
verSionMsg: {
// this.msg.Versions_Id = this.$route.query.id Status: 0
this.getList() },
}, }
methods: { },
getList() { //获取列表数据 mounted() {
this.apipost("admin_get_RoleGetPageList", this.msg, res => { this.getList()
if(res.data.resultCode==1){ },
this.dataList = res.data.data.pageData; methods: {
this.total = res.data.data.count; getList() { //获取列表数据
console.log(this.dataList) this.apipost("admin_get_RoleGetPageList", this.msg, res => {
}else{} if (res.data.resultCode == 1) {
}, err => {}) this.dataList = res.data.data.pageData;
}, this.total = res.data.data.count;
getVersion() { //获取版本信息 } else {}
this.apipost('admin_get_SysVersionsGetList', this.verSionMsg, res => { }, err => {})
this.versions = res.data.data; },
//console.log(this.versions) getVersion() { //获取版本信息
}, err => { this.apipost('admin_get_SysVersionsGetList', this.verSionMsg, res => {
}) this.versions = res.data.data;
}, }, err => {})
addData(){ //添加角色 },
this.apipost("admin_post_RoleSet",this.addMsg,res=>{ addData() { //添加角色
if(res.data.resultCode==1) this.apipost("admin_post_RoleSet", this.addMsg, res => {
{ if (res.data.resultCode == 1) {
this.$message.success(res.data.message) this.$message.success(res.data.message)
this.outerVisible=false; this.outerVisible = false;
this.getList() this.getList()
this.resetForm('addMsg'); this.resetForm('addMsg');
}else{ } else {
this.$message.error(res.data.message) this.$message.error(res.data.message)
} }
},err=>{}) }, err => {})
}, },
updateData(id){ //修改角色 updateData(id) { //修改角色
this.addMsg.Id=id; this.addMsg.Id = id;
this.apipost('admin_get_RoleGet',{RoleId:id},res=>{ this.apipost('admin_get_RoleGet', {
if(res.data.resultCode==1){ RoleId: id
console.log(res.data.data) }, res => {
this.addMsg.Name = res.data.data.Name if (res.data.resultCode == 1) {
this.addMsg.Description = res.data.data.Description this.addMsg.Name = res.data.data.Name
// this.addMsg.Versions_Id = res.data.data.Versions_Id this.addMsg.Description = res.data.data.Description
this.addMsg.Status = res.data.data.Status.toString(); this.addMsg.Status = res.data.data.Status.toString();
}else{} } else {}
},err=>{}) }, err => {})
// this.addMsg = this.dataList[index] },
// this.addMsg.Status = this.dataList[index].Status.toString(); deleteData(id) {
}, this.apipost('admin_post_RoleRemove', {
deleteData(id){ RoleId: id
this.apipost('admin_post_RoleRemove', {RoleId:id}, res => { }, res => {
if(res.data.resultCode==1){ if (res.data.resultCode == 1) {
this.getList() this.getList()
}else{ } else {
alert(res.data.message) alert(res.data.message)
} }
}, err => {}) }, err => {})
}, },
handleCurrentChange(val) { handleCurrentChange(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.getList(); this.getList();
}, },
resetPageIndex() { resetPageIndex() {
this.msg.pageIndex = 1; this.msg.pageIndex = 1;
this.currentPage = 1 this.currentPage = 1
}, },
goUrl(name,id){ goUrl(name, id) {
this.$router.push({ name: name,query:{"id":id,blank:'y',tab:'权限设置'}}) this.$router.push({
}, name: name,
submitForm(addMsg) {//提交创建、修改表单 query: {
this.$refs[addMsg].validate((valid) => { "id": id,
if (valid) { blank: 'y',
this.addData(); tab: '权限设置'
}
} else { })
return false; },
} submitForm(addMsg) { //提交创建、修改表单
}); this.$refs[addMsg].validate((valid) => {
}, if (valid) {
closeChangeMachie(done){//弹出框关闭初始化弹框内表单 this.addData();
done(); } else {
this.resetForm('addMsg'); return false;
}, }
resetForm(formName) {//弹出框取消 初始化谈框内表单 });
this.addMsg.Id='0'; },
this.addMsg.Status='0'; closeChangeMachie(done) { //弹出框关闭初始化弹框内表单
this.$refs[formName].resetFields(); done();
} this.resetForm('addMsg');
} },
} resetForm(formName) { //弹出框取消 初始化谈框内表单
this.addMsg.Id = '0';
this.addMsg.Status = '0';
this.$refs[formName].resetFields();
}
}
}
</script> </script>
\ No newline at end of file
<style>
.LM_mainDiv {
overflow-y: auto;
}
.LP_table {
margin-top: 10px;
background-color: #fff;
border-top: 1px solid #d1d1d1;
border-left: 1px solid #d1d1d1;
border-right: 1px solid #d1d1d1;
font-size: 14px;
/* width:100%; */
min-width: 5752px;
padding-bottom: 5px;
}
.LP_table tr {
height: 40px;
}
.LP_table tr th {
border-bottom: 1px solid #d1d1d1;
border-right: 1px solid #d1d1d1;
position: relative;
background-color: #E6E6E6;
width:250px;
}
th[class=first]:before {
content: "";
position: absolute;
width: 1px;
height: 252px;
/*这里需要自己调整,根据td的宽度和高度*/
top: 0;
left: 0;
background-color: #d1d1d1;
display: block;
transform: rotate(-81deg);
/*这里需要自己调整,根据线的位置*/
transform-origin: top;
}
.LP_table td {
border-bottom: 1px solid #d1d1d1;
border-right: 1px solid #d1d1d1;
text-align: center;
padding: 5px;
min-width: 250px;
}
.LP_table .el-button--primary {
padding: 5px;
}
.Lp_role {
position: absolute;
top: 15px;
left: 30px;
}
.Lp_company {
position: absolute;
right: 30px;
top: 5px;
}
</style>
<template>
<div>
<div class="query-box">
<ul>
<li>
<input type='button' class="normalBtn" @click="AddItem()" value="新增"></input>
</li>
</ul>
</div>
<div class="LM_mainDiv">
<!--保存-->
<table border="0" cellspacing="0" cellpadding="0" class="LP_table" v-loading="this.loading">
<tr>
<th class="first">
<span class="Lp_role">角色</span>
<span class="Lp_company">公司</span>
</th>
<template v-for="item in BranchList">
<th>
{{item.BName}}
</th>
</template>
<th>
操作
</th>
</tr>
<tr v-for="(item,index) in PageData">
<td>
<el-select :placeholder="$t('pub.pleaseSel')" class="w150" v-model="item.RoleId">
<el-option label="不限" :value="0"></el-option>
<el-option v-for="item in RoleList" :label="item.Name" :value="item.Id" :key="item.Id"></el-option>
</el-select>
</td>
<template v-for="subItem in item.DetailExtList">
<td>
<el-input class="w80" placeholder="金額" v-model="subItem.LessMoney"></el-input>
<el-input class="w80" placeholder="百分比" v-model="subItem.LessPercent"></el-input>
</td>
</template>
<td>
<input type='button' class="normalBtn" @click="SaveLessPrice(item)" value="保存"></input>
<input type='button' class="normalBtn" @click="RemoveItem(item,index)" value="删除"></input>
</td>
</tr>
</table>
</div>
</div>
</template>
<script>
export default {
data() {
return {
//分公司列表
BranchList: [],
qMsg: {
PageIndex: 1,
PageSize: 100
},
PageData: [],
//角色列表
RoleList: [],
loading:false
};
},
methods: {
AddItem() {
var obj = {
Id: 0,
RoleId: 0,
DetailExtList: [],
};
this.BranchList.forEach(item => {
obj.DetailExtList.push({
Id: 0,
ManagerId: 0,
RB_Branch_Id: item.Id,
LessMoney: 0,
LessPercent: 0
});
});
if (this.PageData == null) {
this.PageData = [];
}
this.PageData.push(obj);
},
//保存少价管理
SaveLessPrice(item) {
this.apipost(
"lessprice_post_Set", item,
res => {
if (res.data.resultCode == 1) {
this.Success("操作成功!");
this.GetList();
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//获取列表
GetList() {
this.loading = true;
this.apipost(
"lessprice_get_GetPageList", this.qMsg,
res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.BranchList = res.data.data.branchList;
this.PageData = res.data.data.DataList.pageData;
}
},
err => {}
);
},
//获取列表
GetRoleList() {
this.apipost(
"admin_get_RoleGetList", {},
res => {
if (res.data.resultCode == 1) {
this.RoleList = res.data.data;
}
},
err => {}
);
},
//获取列表
RemoveItem(item, index) {
var that = this;
this.Confirm("是否删除此少价信息?", function () {
if (item.Id > 0) {
that.apipost(
"lessprice_post_Remove", {
ID: item.Id
},
res => {
if (res.data.resultCode == 1) {
that.Success("操作成功!");
that.GetList();
} else {
that.Error(res.data.message);
}
},
err => {}
);
} else {
that.PageData.splice(index, 1);
}
});
},
},
mounted() {
this.GetRoleList();
this.GetList();
},
};
</script>
...@@ -116,12 +116,12 @@ export default { ...@@ -116,12 +116,12 @@ export default {
let domainUrl = ''; let domainUrl = '';
let locationName = window.location.hostname; let locationName = window.location.hostname;
// domainUrl = "http://192.168.2.214:8082"; //214主域名 // domainUrl = "http://192.168.2.214:8082"; //214主域名
domainUrl = "http://192.168.2.88"; //王悦主域名 // domainUrl = "http://192.168.2.88"; //王悦主域名
// domainUrl = "http://127.0.0.1"; //214主域名 // domainUrl = "http://127.0.0.1"; //214主域名
// domainUrl = "http://192.168.2.16:8083"; //刘东主域名 // domainUrl = "http://192.168.2.16:8083"; //王悦主域名
// domainUrl = "http://127.0.0.1"; //214主域名 // domainUrl = "http://127.0.0.1"; //214主域名
// domainUrl = "http://192.168.2.65:8025"; //吴春主域名 // domainUrl = "http://192.168.2.65:8025"; //吴春主域名
// domainUrl = "http://192.168.2.106:8082"; //罗超主域名 domainUrl = "http://192.168.2.106:8082"; //罗超主域名
if (locationName.indexOf('oytour')!==-1) { if (locationName.indexOf('oytour')!==-1) {
domainUrl = "https://reborn.oytour.com"; domainUrl = "https://reborn.oytour.com";
}else if (locationName.indexOf('viitto')!==-1) { }else if (locationName.indexOf('viitto')!==-1) {
...@@ -525,7 +525,6 @@ export default { ...@@ -525,7 +525,6 @@ export default {
//价钱格式化,三位数逗号分隔,保留两位小数 duanjun //价钱格式化,三位数逗号分隔,保留两位小数 duanjun
Vue.prototype.moneyFormat = function (value) { Vue.prototype.moneyFormat = function (value) {
if(!value) return ('0.00')
let nStr = Number(value).toFixed(2) let nStr = Number(value).toFixed(2)
nStr += ''; nStr += '';
let x = nStr.split('.'); let x = nStr.split('.');
......
...@@ -248,6 +248,22 @@ export default { ...@@ -248,6 +248,22 @@ export default {
title: '新增付款对象' title: '新增付款对象'
}, },
}, },
{
path: '/CommissionManagement', //提成管理
name: 'CommissionManagement',
component: resolve => require(['@/components/administrative/CommissionManagement'], resolve),
meta: {
title: '提成管理'
},
},
{
path: '/CommissionDetail', //提成详情
name: 'CommissionDetail',
component: resolve => require(['@/components/administrative/CommissionDetail'], resolve),
meta: {
title: '提成详情'
},
},
{ {
path: '/leaderManagement', //领队导游管理 path: '/leaderManagement', //领队导游管理
name: 'leaderManagement', name: 'leaderManagement',
...@@ -2003,7 +2019,14 @@ export default { ...@@ -2003,7 +2019,14 @@ export default {
meta: { meta: {
title: '账户类型' title: '账户类型'
}, },
}, { //财务 现金日报表 },{ //少价管理
path: '/LessPriceManagement',
name: 'LessPriceManagement',
component: resolve => require(['@/components/systemManagement/LessPriceManagement'], resolve),
meta: {
title: '少价管理'
}
},{ //财务 现金日报表
path: '/CashReport', path: '/CashReport',
name: 'CashReport', name: 'CashReport',
component: resolve => require(['@/components/FinancialModule/CashReport'], resolve), component: resolve => require(['@/components/FinancialModule/CashReport'], resolve),
...@@ -2257,7 +2280,7 @@ export default { ...@@ -2257,7 +2280,7 @@ export default {
name: 'EasyReport', name: 'EasyReport',
component: resolve => require(['@/components/FinancialModule/ReportForm/EasyReport'], resolve), component: resolve => require(['@/components/FinancialModule/ReportForm/EasyReport'], resolve),
meta: { meta: {
title: '联运收入' title: '简易报表'
}, },
}, { // 销售 制作广告 }, { // 销售 制作广告
path: '/advert', path: '/advert',
......
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