Commit 25f7a13b authored by 华国豪's avatar 华国豪 🙄

前端修改: 领队用款制单唯一入口,领队用款新增挂账信息,修改其他bug

parent c31aacf8
...@@ -64,6 +64,7 @@ const webpackConfig = merge(baseWebpackConfig, { ...@@ -64,6 +64,7 @@ const webpackConfig = merge(baseWebpackConfig, {
filename: config.build.index, filename: config.build.index,
template: 'index.html', template: 'index.html',
inject: true, inject: true,
hash: new Date().getTime(),
minify: { minify: {
removeComments: true, removeComments: true,
collapseWhitespace: true, collapseWhitespace: true,
......
...@@ -3,12 +3,11 @@ ...@@ -3,12 +3,11 @@
// see http://vuejs-templates.github.io/webpack for documentation. // see http://vuejs-templates.github.io/webpack for documentation.
const path = require('path') const path = require('path')
const version = '1.0.0.0'
module.exports = { module.exports = {
dev: { dev: {
// Paths // Paths
assetsSubDirectory: 'static', assetsSubDirectory: `static/${version}`,
assetsPublicPath: '/', assetsPublicPath: '/',
proxyTable: { proxyTable: {
// '/boundsearch': { // 矩形区域检索entity // '/boundsearch': { // 矩形区域检索entity
......
...@@ -53,6 +53,9 @@ ...@@ -53,6 +53,9 @@
._border_color_r{ ._border_color_r{
border-color: #c94052; border-color: #c94052;
} }
.font_color_b{
color: #106BAF !important;
}
._border_color_b{ ._border_color_b{
border-color: #106BAF; border-color: #106BAF;
} }
...@@ -255,7 +258,8 @@ ...@@ -255,7 +258,8 @@
</table> </table>
<div class="rb_top_row _r_mt10" v-if="GetDetail.AuditSteps&&GetDetail.AuditSteps.length"> <div class="rb_top_row _r_mt10" v-if="GetDetail.AuditSteps&&GetDetail.AuditSteps.length">
<template v-for="(item,index) in GetDetail.AuditSteps"> <template v-for="(item,index) in GetDetail.AuditSteps">
<p>{{item.AuditDescription}} <p>
<span class="font_color_b">{{item.AuditDescription}}</span>
<template v-if="item.AuditRecordList&&item.AuditRecordList.length!=0"> <template v-if="item.AuditRecordList&&item.AuditRecordList.length!=0">
<span class="_r_name" v-for="(s,si) in item.AuditRecordList" v-if="((item.Sort==0) || (item.Sort!=0&&s.AuditStatus==2))&&item.AuditRecordList.length" :class="item.Sort==0&&!isPrintPage?'_jump_page':''" @click="item.Sort==0&&!isPrintPage?jumpPage('enrollTotal',GetDetail.TCID,2):''">{{s.AuditName}} </span> <span class="_r_name" v-for="(s,si) in item.AuditRecordList" v-if="((item.Sort==0) || (item.Sort!=0&&s.AuditStatus==2))&&item.AuditRecordList.length" :class="item.Sort==0&&!isPrintPage?'_jump_page':''" @click="item.Sort==0&&!isPrintPage?jumpPage('enrollTotal',GetDetail.TCID,2):''">{{s.AuditName}} </span>
</template> </template>
......
...@@ -75,6 +75,13 @@ ...@@ -75,6 +75,13 @@
._p_time{ ._p_time{
top: 40px; top: 40px;
} }
.font_color_b{
color: #106BAF !important;
}
.font_color_r{
color: #c94052 !important;
}
</style> </style>
<template v-if="GetDetail.DetailList.length>0"> <template v-if="GetDetail.DetailList.length>0">
<div class="Receipt_box" :class="[GetDetail.Type==1 || GetDetail.Type==5?'':'color_blur',isPrintPage?'_PrintPageStyle':'']" :style="{width:width,backgroundColor:color}" @click.stop v-loading='loading'> <div class="Receipt_box" :class="[GetDetail.Type==1 || GetDetail.Type==5?'':'color_blur',isPrintPage?'_PrintPageStyle':'']" :style="{width:width,backgroundColor:color}" @click.stop v-loading='loading'>
...@@ -269,7 +276,8 @@ ...@@ -269,7 +276,8 @@
</table> </table>
<div class="rb_top_row _r_mt10" v-if="GetDetail.AuditSteps&&GetDetail.AuditSteps.length"> <div class="rb_top_row _r_mt10" v-if="GetDetail.AuditSteps&&GetDetail.AuditSteps.length">
<template v-for="(item,index) in GetDetail.AuditSteps"> <template v-for="(item,index) in GetDetail.AuditSteps">
<p>{{item.AuditDescription}} <p>
<span :class="[GetDetail.Type==1 || GetDetail.Type==5?'font_color_r':'font_color_b']">{{item.AuditDescription}}</span>
<template v-if="item.AuditRecordList&&item.AuditRecordList.length!=0"> <template v-if="item.AuditRecordList&&item.AuditRecordList.length!=0">
<span class="_r_name" v-for="(s,si) in item.AuditRecordList" v-if="((item.Sort==0) || (item.Sort!=0&&s.AuditStatus==2))&&item.AuditRecordList.length" :class="item.Sort==0&&!isPrintPage?'_jump_page':''" @click="item.Sort==0&&!isPrintPage?jumpPage('enrollTotal',GetDetail.TCID,2):''">{{s.AuditName}} </span> <span class="_r_name" v-for="(s,si) in item.AuditRecordList" v-if="((item.Sort==0) || (item.Sort!=0&&s.AuditStatus==2))&&item.AuditRecordList.length" :class="item.Sort==0&&!isPrintPage?'_jump_page':''" @click="item.Sort==0&&!isPrintPage?jumpPage('enrollTotal',GetDetail.TCID,2):''">{{s.AuditName}} </span>
</template> </template>
......
...@@ -66,6 +66,9 @@ ...@@ -66,6 +66,9 @@
background-color: white; background-color: white;
font-size: 12px; font-size: 12px;
} }
.font_color_r{
color: #c94052 !important;
}
</style> </style>
<template v-if="GetDetail.DetailList.length>0" > <template v-if="GetDetail.DetailList.length>0" >
<div class="Receipt_box" :class="[GetDetail.Type==1|| GetDetail.Type==5?'':'color_blur',isPrintPage?'_PrintPageStyle':'']" :style="{width:width,backgroundColor:color}" @click.stop v-loading='loading'> <div class="Receipt_box" :class="[GetDetail.Type==1|| GetDetail.Type==5?'':'color_blur',isPrintPage?'_PrintPageStyle':'']" :style="{width:width,backgroundColor:color}" @click.stop v-loading='loading'>
...@@ -233,7 +236,8 @@ ...@@ -233,7 +236,8 @@
</table> </table>
<div class="rb_top_row _r_mt10" v-if="GetDetail.AuditSteps&&GetDetail.AuditSteps.length"> <div class="rb_top_row _r_mt10" v-if="GetDetail.AuditSteps&&GetDetail.AuditSteps.length">
<template v-for="(item,index) in GetDetail.AuditSteps"> <template v-for="(item,index) in GetDetail.AuditSteps">
<p>{{item.AuditDescription}} <p>
<span class="font_color_r">{{item.AuditDescription}}</span>
<template v-if="item.AuditRecordList&&item.AuditRecordList.length!=0"> <template v-if="item.AuditRecordList&&item.AuditRecordList.length!=0">
<span class="_r_name _no_border" v-for="(s,si) in item.AuditRecordList" v-if="((item.Sort==0) || (item.Sort!=0&&s.AuditStatus==2))&&item.AuditRecordList.length" :class="item.Sort==0&&!isPrintPage?'_jump_page':''" @click="item.Sort==0&&!isPrintPage?jumpPage('enrollTotal',GetDetail.TCID,2):''">{{s.AuditName}} </span> <span class="_r_name _no_border" v-for="(s,si) in item.AuditRecordList" v-if="((item.Sort==0) || (item.Sort!=0&&s.AuditStatus==2))&&item.AuditRecordList.length" :class="item.Sort==0&&!isPrintPage?'_jump_page':''" @click="item.Sort==0&&!isPrintPage?jumpPage('enrollTotal',GetDetail.TCID,2):''">{{s.AuditName}} </span>
</template> </template>
......
...@@ -277,7 +277,7 @@ ...@@ -277,7 +277,7 @@
<td>{{item.UseTimeStr}}</td> <td>{{item.UseTimeStr}}</td>
<td> <td>
<p style="height: 60px!important; display: flex;align-items: center; padding:0 20px;" v-for="subItem in item.DiningSummaryList"> <p style="height: 60px!important; display: flex;align-items: center; padding:0 20px;" v-for="subItem in item.DiningSummaryList">
{{subItem.DiningName}} {{subItem.RealName? subItem.RealName : subItem.DiningName}}
</p> </p>
</td> </td>
<td> <td>
...@@ -459,7 +459,7 @@ ...@@ -459,7 +459,7 @@
<el-input v-if="item.LeaderGetPrice < (TotalNav.reimburseTotalPrice.PlanPrice * 0.95)" class="w300" type="number" v-model="item.LeaderGetPriceT"></el-input> <el-input v-if="item.LeaderGetPrice < (TotalNav.reimburseTotalPrice.PlanPrice * 0.95)" class="w300" type="number" v-model="item.LeaderGetPriceT"></el-input>
</td> </td>
<td> <td>
<p v-for="(subItem, subIndex) in item.FinanceIds"><span class="cursorpointer text-decoration" @click="goFncUrl('FinancialDocumentsDetail', subItem)">{{subItem}}</span>&nbsp;&nbsp;<span class="cursorpointer text-decoration" @click="goFncUrl('Application', subItem)">申请书</span> &nbsp;&nbsp;<span class="cursorpointer text-decoration" @click="goFncUrl('DebitNote', subItem)">借支单</span></p> <p v-for="(subItem, subIndex) in item.FinanceIds"><span class="cursorpointer text-decoration" @click="goFncUrl('FinancialDocumentsDetail', subItem.FinanceId)">{{subItem.FinanceId}}</span>&nbsp;&nbsp;<span class="cursorpointer text-decoration" @click="goFncUrl('Application', subItem.FinanceId)" v-if="subItem.IsPublic === 4">申请书</span> &nbsp;&nbsp;<span class="cursorpointer text-decoration" @click="goFncUrl('DebitNote', subItem.FinanceId)">借支单</span></p>
</td> </td>
<td width="80" class="_zhidan"> <td width="80" class="_zhidan">
<input type="button" v-if="isUpdate=='true' && item.LeaderGetPrice < (TotalNav.reimburseTotalPrice.PlanPrice * 0.95)" value="制单" class="normalBtn" @click="goZhiDan(item)" /> <input type="button" v-if="isUpdate=='true' && item.LeaderGetPrice < (TotalNav.reimburseTotalPrice.PlanPrice * 0.95)" value="制单" class="normalBtn" @click="goZhiDan(item)" />
...@@ -687,6 +687,7 @@ ...@@ -687,6 +687,7 @@
return '晚餐' return '晚餐'
}, },
getNav(){ getNav(){
let _this = this
this.apipost('dmcstatistics_post_GetHotelStaticsByTCIDs',{TCIDs:this.$route.query.id},res=>{ this.apipost('dmcstatistics_post_GetHotelStaticsByTCIDs',{TCIDs:this.$route.query.id},res=>{
if(res.data.resultCode==1){ if(res.data.resultCode==1){
let nav = res.data.data let nav = res.data.data
...@@ -697,7 +698,7 @@ ...@@ -697,7 +698,7 @@
}) })
nav.forEach((x, i)=>{ nav.forEach((x, i)=>{
if (i === 0) { if (i === 0) {
x.LeaderGetPriceT = (this.TotalNav.reimburseTotalPrice.PlanPrice * 0.95) - num; x.LeaderGetPriceT = Math.floor(((_this.TotalNav.reimburseTotalPrice.PlanPrice * 0.95) - num) *100) / 100;
} else { } else {
x.LeaderGetPriceT = 0 x.LeaderGetPriceT = 0
} }
......
...@@ -784,6 +784,20 @@ ...@@ -784,6 +784,20 @@
<p v-if="item.VisaFileList.length!==0" v-for="(item2, index2) in item.VisaFileList" :key="index2"> <p v-if="item.VisaFileList.length!==0" v-for="(item2, index2) in item.VisaFileList" :key="index2">
<span style="cursor:pointer;text-decoration: underline;" @click="downloadFile(item2)">{{item2.Name}}</span> <span style="cursor:pointer;text-decoration: underline;" @click="downloadFile(item2)">{{item2.Name}}</span>
</p> </p>
<p>
<span>出票状态:</span>
<span class="fz16 fbold">
<el-tooltip class="item" effect="dark" content="全部出票" placement="top">
<span style="color: #4BCA81;" v-if="item.MakeInvoice==1"></span>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="未处理" placement="top">
<span style="color: #E95252" v-if="item.MakeInvoice=='-1'">x</span>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="已出中段/部分出票" placement="top">
<span style="color: #E95252" v-if="item.MakeInvoice=='0'">O</span>
</el-tooltip>
</span>
</p>
</div> </div>
<div class="d7"> <div class="d7">
<el-button-group style="display:block;"> <el-button-group style="display:block;">
......
...@@ -700,6 +700,20 @@ ...@@ -700,6 +700,20 @@
<span style="margin-left:10px;">{{$t('visa.v_tvisa')}}</span> <span style="margin-left:10px;">{{$t('visa.v_tvisa')}}</span>
{{item.GroupVisaNum}} {{item.GroupVisaNum}}
</p> </p>
<p>
<span>出票状态:</span>
<span class="fz16 fbold">
<el-tooltip class="item" effect="dark" content="全部出票" placement="top">
<span style="color: #4BCA81;" v-if="item.MakeInvoice==1"></span>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="未处理" placement="top">
<span style="color: #E95252" v-if="item.MakeInvoice=='-1'">x</span>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="已出中段/部分出票" placement="top">
<span style="color: #E95252" v-if="item.MakeInvoice=='0'">O</span>
</el-tooltip>
</span>
</p>
</div> </div>
</div> </div>
<div class="el-col"> <div class="el-col">
......
<style>
.height_auto.el-select .el-input{
height: auto
}
</style>
<template> <template>
<div class="flexOne"> <div class="flexOne">
<div class="query-box"> <div class="query-box">
...@@ -69,7 +75,7 @@ ...@@ -69,7 +75,7 @@
:visible.sync="outerVisible" :visible.sync="outerVisible"
center center
:before-close="closeChangeMachie"> :before-close="closeChangeMachie">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px"> <el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="130px">
<table class="layerTable layerNoIcon"> <table class="layerTable layerNoIcon">
<tr> <tr>
<td> <td>
...@@ -99,15 +105,21 @@ ...@@ -99,15 +105,21 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<el-form-item label="升降级标准" prop="standard"> <el-form-item label="会员特权" prop="remark">
<el-input v-model="addMsg.standard" type="textarea"/> <el-select filterable multiple v-model='addMsg.jurisdictionListS' class="w217 height_auto">
<el-option v-for='item in jurisdictionsList'
:label='item.name'
:value='item.id'
:key='item.id'>
</el-option>
</el-select>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<el-form-item label="星级有效期延长的条件" prop="condition"> <el-form-item label="备注" prop="remark">
<el-input v-model="addMsg.condition" type="textarea"/> <el-input v-model="addMsg.remark" type="textarea"/>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
...@@ -132,34 +144,47 @@ export default { ...@@ -132,34 +144,47 @@ export default {
addMsg:{ addMsg:{
id:0, id:0,
name: '', name: '',
state: '', state: 1,
tradeMoneyReq: '', tradeMoneyReq: '',
tradePeopleReq: '', tradePeopleReq: '',
remark: '', remark: '',
jurisdictionList: [] jurisdictionList: [],
jurisdictionListS: [],
}, },
rules:{ rules:{
memberLevel: [{ required: true, message: '请输入会员等级', trigger: "blur" }], memberLevel: [{ required: true, message: '请输入会员等级', trigger: "blur" }],
name: [{ required: true, message: '请输入等级名称', trigger: "blur" }], name: [{ required: true, message: '请输入等级名称', trigger: "blur" }],
tradeMoneyReq: [{required: true, message: '交易金额要求', trigger: "blur"}], tradeMoneyReq: [{required: true, message: '交易金额要求', trigger: "blur"}],
tradePeopleReq: [{ required: true, message: '交易人头数要求', trigger: "change" }], tradePeopleReq: [{ required: true, message: '交易人头数要求', trigger: "blur" }],
standard: [{ required: true, message: '请输入升降级标准', trigger: "blur" }], remark: [{ required: true, message: '请输入备注', trigger: "blur" }],
condition: [{ required: true, message: '请输入星级有效期延长的条件', trigger: "blur" }], jurisdictionListS: [{ required: true, message: '请选择特权', trigger: "change" }],
}, },
loading:false, loading:false,
outerVisible:false, outerVisible:false,
dialogTitle:'', dialogTitle:'',
dataList:[], dataList:[],
awardRelationList:[], awardRelationList:[],
jurisdictionsList: [],
}; };
}, },
mounted() { mounted() {
this.getList(); this.getList();
this.getjurisdictions()
}, },
filters: { filters: {
}, },
methods: { methods: {
getjurisdictions: function () {
this.apiJavaPost("/api/member/getjurisdictions", this.msg, res => {
this.loading = false;
if (res.data.resultCode === 1) {
this.jurisdictionsList = res.data.data;
} else {
this.Error(res.data.message)
}
}, null);
},
//获取数据 //获取数据
getList() { getList() {
this.loading = true; this.loading = true;
...@@ -186,60 +211,51 @@ export default { ...@@ -186,60 +211,51 @@ export default {
}, },
//提交添加 //提交添加
addAward(){ addAward(){
this.addMsg.lotteryId = this.$route.query.lotteryId; this.addMsg.jurisdictionList = [];
if(this.addMsg.awardType==1||this.addMsg.awardType==2){ if (this.addMsg.jurisdictionListS.length < 1) return this.Error('请选择会员特权!')
this.addMsg.awardRelationId = 0; this.addMsg.jurisdictionListS.forEach(x=>{
this.addMsg.jurisdictionList.push({
id: x
})
})
this.apiJavaPost("/api/member/save", this.addMsg, res => {
if (res.data.resultCode === 1) {
this.Success(res.data.message);
this.outerVisible = false;
this.getList();
} else {
this.Error(res.data.message)
} }
this.apiJavaPost("/api/sell/lottery/setLotteryAward", this.addMsg, res => { }, null);
if (res.data.resultCode === 1) {
this.Success(res.data.message);
this.outerVisible = false;
this.getList();
} else {
this.Error(res.data.message)
}
}, null);
}, },
//修改信息 //修改信息
updateData(item){ updateData(item){
this.addMsg.id=item.id; this.outerVisible = true;
this.addMsg.lotteryId = item.lotteryId; this.apiJavaPost("/api/member/get", {id: item.id}, res => {
this.addMsg.awardName = item.awardName; if (res.data.resultCode === 1) {
this.addMsg.awardType = item.awardType; let msg = res.data.data;
this.addMsg.awardRelationId = item.awardRelationId; let jurisdictionListS = [];
this.addMsg.awardCount = item.awardCount; msg.jurisdictionList.forEach(x=>{
this.addMsg.awardStatus = item.awardStatus; jurisdictionListS.push(x.id)
this.addMsg.rank = item.rank; })
this.getAwardRelationId(3); msg.jurisdictionListS = jurisdictionListS
}, this.addMsg = msg;
//根据奖项类型请求关联Id } else {
getAwardRelationId(id){ this.Error(res.data.message)
let branchId = this.$route.query.branchId; }
if(id==3){ }, null);
let msg = {
couponId:this.addMsg.awardRelationId,
branchId:branchId
}
this.apiJavaPost("/api/sell/lottery/getCouponsList", msg, res => {
if (res.data.resultCode === 1) {
this.awardRelationList = res.data.data;
} else {
this.Error(res.data.message)
}
}, null);
}
}, },
//重置信息 //重置信息
resetInfo(){ resetInfo(){
var newMsg = { var newMsg = {
id:0, id:0,
lotteryId:0, name: '',
awardName:'', state: 1,
awardType:1, tradeMoneyReq: '',
awardRelationId:0, tradePeopleReq: '',
awardCount:'', remark: '',
awardStatus:1, jurisdictionList: [],
rank:'', jurisdictionListS: [],
} }
this.addMsg = newMsg; this.addMsg = newMsg;
}, },
......
<style>
.height_auto.el-select .el-input{
height: auto
}
</style>
<template> <template>
<div class="flexOne"> <div class="flexOne">
<div class="query-box"> <div class="query-box">
<ul class="user_time_picker"> <ul class="user_time_picker">
<li>
<span>
<em>特权名称</em>
<el-input v-model="msg.name" @keyup.enter.native="getList"></el-input>
</span>
</li>
<li> <li>
<input type="button" @click=" " class="hollowFixedBtn" value="查询"> <span>
<input type="button" @click="outerVisible = true,dialogTitle=$t('active.ad_addad'),resetInfo()" class="normalBtn" :value="$t('pub.addBtn')"> <em>会员等级</em>
<el-select filterable v-model="msg.memberId">
<el-option label="不限" :value="-1"></el-option>
<el-option v-for="item in MemberRateSimpleList" :label="item.name" :value="item.id" :key="item.id" ></el-option>
</el-select>
</span>
</li>
<li>
<span>
<em>状态</em>
<el-select filterable v-model="msg.state">
<el-option label="不限" :value="-1"></el-option>
<el-option label="正常" :value="1"></el-option>
<el-option label="禁用" :value="0"></el-option>
</el-select>
</span>
</li>
<li>
<input type="button" @click="getList" class="hollowFixedBtn" value="查询">
<input type="button" @click="outerVisible = true,dialogTitle='新增特权',resetInfo()" class="normalBtn" :value="$t('pub.addBtn')">
</li> </li>
</ul> </ul>
</div> </div>
...@@ -12,31 +43,53 @@ ...@@ -12,31 +43,53 @@
<div class="clearfix"></div> <div class="clearfix"></div>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading"> <table class="singeRowTable" border="0" cellspacing="0" cellpadding="0" v-loading="loading">
<tr> <tr>
<th>会员等级</th> <th>特权编号</th>
<th>等级名称</th> <th>特权名称</th>
<th>积分</th> <th>关联会员等级名称</th>
<th>特权</th> <th>图标</th>
<th>升降级标准</th> <th>特权描述</th>
<th>星级有效期延长的条件</th> <th>状态</th>
<th>操作</th> <th>操作</th>
</tr> </tr>
<tr v-for="item in dataList"> <tr v-for="item in dataList">
<td>{{item.rank}}</td> <td>{{item.code}}</td>
<td>{{item.awardName}}</td> <td>{{item.name}}</td>
<td>{{item.awardCount}}</td> <td>
<td>{{item.awardWinningCount}}</td> {{item.rateName}}
<td>223</td> </td>
<td>22</td> <td>{{item.icon}}</td>
<td> <td>{{item.remark}}</td>
<el-tooltip class="item" effect="dark" :content="$t('active.ld_editInfo')" placement="top"> <td>{{item.state === '1' ? '正常' : '禁用'}}</td>
<td>
<el-tooltip class="item" effect="dark" :content="$t('active.ld_editInfo')" placement="top">
<el-button
type="primary"
icon="el-icon-edit"
circle
@click="outerVisible=true,dialogTitle='修改特权',updateData(item)"
></el-button>
</el-tooltip>
<template>
<el-tooltip class="item" effect="dark" content="禁用" placement="top">
<el-button
v-show="item.state === '1'"
type="danger"
icon="el-icon-remove-outline"
circle
@click="setJurisdictionStatus(item.id, 0)"
></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="启用" placement="top">
<el-button <el-button
type="primary" v-show="item.state === '0'"
icon="el-icon-edit" type="success"
icon="el-icon-circle-check"
circle circle
@click="outerVisible=true,dialogTitle=$t('active.ld_editInfo'),updateData(item)" @click="setJurisdictionStatus(item.id, 1)"
></el-button> ></el-button>
</el-tooltip> </el-tooltip>
</td> </template>
</td>
</tr> </tr>
</table> </table>
<div class="noDataNotice" v-if="dataList.length<1"> <div class="noDataNotice" v-if="dataList.length<1">
...@@ -48,47 +101,40 @@ ...@@ -48,47 +101,40 @@
:title="dialogTitle" :title="dialogTitle"
:visible.sync="outerVisible" :visible.sync="outerVisible"
center center
:before-close="closeChangeMachie" :before-close="closeChangeMachie">
> <el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="130px">
<el-form :model="addMsg" :rules="rules" ref="addMsg" label-width="100px">
<table class="layerTable layerNoIcon"> <table class="layerTable layerNoIcon">
<tr> <tr>
<td> <td>
<el-form-item label="会员等级" prop="memberLevel"> <el-form-item label="特权编号" prop="code">
<el-input v-model="addMsg.memberLevel" class="w217" /> <el-input v-model="addMsg.code" placeholder="" class="w217" />
</el-form-item> </el-form-item>
</td> </td>
<td> <td>
<el-form-item label="等级名称" prop="memberName"> <el-form-item label="特权名称" prop="name">
<el-input v-model="addMsg.memberName" class="w217" /> <el-input v-model="addMsg.name" class="w217" />
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
<tr>
<td> <td>
<el-form-item label="积分" prop="integral"> <el-form-item label="图标" prop="icon">
<el-input v-model="addMsg.integral" class="w217" /> <el-input v-model="addMsg.icon" placeholder="" class="w217" />
</el-form-item> </el-form-item>
</td> </td>
<td> <td>
<el-form-item label="特权" prop="privilege" > <el-form-item label="特权状态" prop="state">
<el-select filterable v-model="addMsg.privilege" class="w217" > <el-select filterable v-model="addMsg.state">
<el-option :label="$t('pub.unlimitedSel')" :value="0"></el-option> <el-option label="正常" :value="1"></el-option>
<el-option v-for="item in awardRelationList" :label="item.couponsName" :value="item.couponId" :key="item.couponId"></el-option> <el-option label="禁用" :value="0"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<el-form-item label="升降级标准" prop="standard"> <el-form-item label="备注" prop="remark">
<el-input v-model="addMsg.standard" type="textarea"/> <el-input v-model="addMsg.remark" type="textarea"/>
</el-form-item>
</td>
</tr>
<tr>
<td colspan="2">
<el-form-item label="星级有效期延长的条件" prop="condition">
<el-input v-model="addMsg.condition" type="textarea"/>
</el-form-item> </el-form-item>
</td> </td>
</tr> </tr>
...@@ -107,48 +153,68 @@ export default { ...@@ -107,48 +153,68 @@ export default {
return { return {
//请求 //请求
msg: { msg: {
lotteryId: '', state: -1,
name: '',
memberId: -1,
}, },
addMsg:{ addMsg:{
id:0, id:0,
memberLevel: '', name: '',
memberName: '', state: 1,
integral: '', icon: '',
privilege: '', remark: '',
standard: '', code: '',
condition: ''
}, },
rules:{ rules:{
memberLevel: [{ required: true, message: '请输入会员等级', trigger: "blur" }], name: [{ required: true, message: '请输入特权名称', trigger: "blur" }],
memberName: [{ required: true, message: '请输入等级名称', trigger: "blur" }], remark: [{ required: true, message: '请输入备注', trigger: "blur" }],
integral: [{required: true, message: '请输入积分', trigger: "blur"}], icon: [{ required: true, message: '请输入图标', trigger: "blur" }],
privilege: [{ required: true, message: '请选择特选', trigger: "change" }], code: [{ required: true, message: '请输入编号', trigger: "blur" }],
standard: [{ required: true, message: '请输入升降级标准', trigger: "blur" }],
condition: [{ required: true, message: '请输入星级有效期延长的条件', trigger: "blur" }],
}, },
loading:false, loading:false,
outerVisible:false, outerVisible:false,
dialogTitle:'', dialogTitle:'',
dataList:[], dataList:[],
awardRelationList:[], MemberRateSimpleList: [],
}; };
}, },
mounted() { mounted() {
this.msg.lotteryId = this.$route.query.lotteryId; this.getList();
// this.getList(); this.getMemberRateSimpleList()
}, },
filters: { filters: {
}, },
methods: { methods: {
// 设置特权状态
setJurisdictionStatus: function (id, type) {
this.apiJavaPost("/api/member/setJurisdictionStatus", {id: id, state: type}, res => {
this.loading = false;
if (res.data.resultCode === 1) {
this.Success(res.data.message);
this.getList();
} else {
this.Error(res.data.message)
}
}, null);
},
getMemberRateSimpleList: function () {
this.apiJavaPost("/api/member/getMemberRateSimpleList", this.msg, res => {
this.loading = false;
if (res.data.resultCode === 1) {
this.MemberRateSimpleList = res.data.data;
} else {
this.Error(res.data.message)
}
}, null);
},
//获取数据 //获取数据
getList() { getList() {
this.loading = true; this.loading = true;
this.apiJavaPost("/api/sell/lottery/getLotteryAwardList", this.msg, res => { this.apiJavaPost("/api/member/getAllJurisdictions", this.msg, res => {
this.loading = false; this.loading = false;
if (res.data.resultCode === 1) { if (res.data.resultCode === 1) {
this.dataList = res.data.data; this.dataList = res.data.data;
console.log(this.dataList,'datalist');
} else { } else {
this.Error(res.data.message) this.Error(res.data.message)
} }
...@@ -167,60 +233,37 @@ export default { ...@@ -167,60 +233,37 @@ export default {
}, },
//提交添加 //提交添加
addAward(){ addAward(){
this.addMsg.lotteryId = this.$route.query.lotteryId; this.apiJavaPost("/api/member/saveJurisdiction", this.addMsg, res => {
if(this.addMsg.awardType==1||this.addMsg.awardType==2){ if (res.data.resultCode === 1) {
this.addMsg.awardRelationId = 0; this.Success(res.data.message);
this.outerVisible = false;
this.getList();
} else {
this.Error(res.data.message)
} }
this.apiJavaPost("/api/sell/lottery/setLotteryAward", this.addMsg, res => { }, null);
if (res.data.resultCode === 1) {
this.Success(res.data.message);
this.outerVisible = false;
this.getList();
} else {
this.Error(res.data.message)
}
}, null);
}, },
//修改信息 //修改信息
updateData(item){ updateData(item){
this.addMsg.id=item.id; this.outerVisible = true;
this.addMsg.lotteryId = item.lotteryId; this.apiJavaPost("/api/member/getJurisdiction", {id: item.id}, res => {
this.addMsg.awardName = item.awardName; if (res.data.resultCode === 1) {
this.addMsg.awardType = item.awardType; let msg = res.data.data;
this.addMsg.awardRelationId = item.awardRelationId; this.addMsg = msg;
this.addMsg.awardCount = item.awardCount; } else {
this.addMsg.awardStatus = item.awardStatus; this.Error(res.data.message)
this.addMsg.rank = item.rank; }
this.getAwardRelationId(3); }, null);
},
//根据奖项类型请求关联Id
getAwardRelationId(id){
let branchId = this.$route.query.branchId;
if(id==3){
let msg = {
couponId:this.addMsg.awardRelationId,
branchId:branchId
}
this.apiJavaPost("/api/sell/lottery/getCouponsList", msg, res => {
if (res.data.resultCode === 1) {
this.awardRelationList = res.data.data;
} else {
this.Error(res.data.message)
}
}, null);
}
}, },
//重置信息 //重置信息
resetInfo(){ resetInfo(){
var newMsg = { var newMsg = {
id:0, id:0,
lotteryId:0, name: '',
awardName:'', state: 1,
awardType:1, icon: '',
awardRelationId:0, remark: '',
awardCount:'', code: '',
awardStatus:1,
rank:'',
} }
this.addMsg = newMsg; this.addMsg = newMsg;
}, },
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
<div class="item" :class="{active:openMode==0}" @click="chosen(0)"> <div class="item" :class="{active:openMode==0}" @click="chosen(0)">
<img src='../../assets/img/chosen_two.png' /> <img src='../../assets/img/chosen_two.png' />
<p> <p>
单页面多标签模式(此模式适合电脑性能较低的用户) 多页面单标签模式(此模式适合电脑性能较低的用户)
</p> </p>
</div> </div>
</div> </div>
......
<style> <style>
.leaderPayTable{ .leaderPayTable {
width:100%; width: 100%;
margin:10px auto; margin: 10px auto;
text-align: center; text-align: center;
font-size: 12px; font-size: 12px;
color: #333; color: #333;
border-collapse: collapse; border-collapse: collapse;
background-color: #fff; background-color: #fff;
border: 1px solid #d1d1d1; border: 1px solid #d1d1d1;
} }
.leaderPayTable th{ .leaderPayTable th {
background: #E6E6E6; background: #e6e6e6;
padding:8px 0; padding: 8px 0;
color: #333; color: #333;
border: 1px solid #d1d1d1; border: 1px solid #d1d1d1;
font-weight:bold; font-weight: bold;
}
} .leaderPayTable tr td {
.leaderPayTable tr td{ background-color: #fff;
background-color:#fff; padding: 8px 0;
padding:8px 0; height: 32px;
height: 32px; border: 1px solid #d1d1d1;
border: 1px solid #d1d1d1; }
} .LeaderPrintDiv .LeaderTitle {
.LeaderPrintDiv .LeaderTitle{ padding: 10px;
padding:10px; text-align: left;
text-align: left; }
} .leaderPayTable .itemName {
.leaderPayTable .itemName { text-align: left;
text-align: left; padding: 0 10px;
padding: 0 10px; }
} @media print {
@media print{ .LeaderPrintDiv .btnListDiv {
.LeaderPrintDiv .btnListDiv{display:none} display: none;
} }
.comTotal{ }
text-align:left; .comTotal {
padding-left:30px!important; text-align: left;
} padding-left: 30px !important;
.LeaderPrintDiv{ }
width:100%; .LeaderPrintDiv {
position: absolute; width: 100%;
} position: absolute;
.LeaderPrintDiv .childDiv{ }
width:1000px; .LeaderPrintDiv .childDiv {
margin:0 auto; width: 1000px;
} margin: 0 auto;
.LeaderPrintDiv .childDiv ._Titles{ }
font-size: 14px; .LeaderPrintDiv .childDiv ._Titles {
} font-size: 14px;
.wLeader2 .el-textarea__inner{ }
height:130px; .wLeader2 .el-textarea__inner {
} height: 130px;
.LeaderPrintDiv .btnListDiv{ }
margin:20px auto; .LeaderPrintDiv .btnListDiv {
text-align: center; margin: 20px auto;
} text-align: center;
.LeaderPrintDiv .leader2Btn{ }
color: #fff; .LeaderPrintDiv .leader2Btn {
padding: 0 15px; color: #fff;
height: 30px; padding: 0 15px;
background: #E95252; height: 30px;
border: 1px solid #E95252; background: #e95252;
cursor: pointer; border: 1px solid #e95252;
border-radius: 15px; cursor: pointer;
} border-radius: 15px;
}
.cursorpointer{cursor: pointer;}
.text-decoration{text-decoration: underline;}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
}
input[type="number"] {
-moz-appearance: textfield;
}
.w150{
width: 150px !important;
}
</style> </style>
<template> <template>
<div class="LeaderPrintDiv"> <div class="LeaderPrintDiv">
<div class="childDiv"> <div class="childDiv">
<table border="0" cellspacing='1' class="leaderPayTable"> <table border="0" cellspacing="1" class="leaderPayTable">
<tr> <tr>
<th width="130">团号</th> <th width="130">团号</th>
<th width="250">行程名称</th> <th width="250">行程名称</th>
<th width="110">出发时间</th> <th width="110">出发时间</th>
<th width="90">行程天数</th> <th width="90">行程天数</th>
<th width="90">成人</th> <th width="90">成人</th>
<th width="90">占床小孩</th> <th width="90">占床小孩</th>
<th width="90">不占床小孩</th> <th width="90">不占床小孩</th>
<th width="90">婴儿人数</th> <th width="90">婴儿人数</th>
<th width="110">人数</th> <th width="110">人数</th>
<th width="110">领队</th> <th width="110">领队</th>
</tr> </tr>
<tr v-for="item in nav"> <tr v-for="item in nav">
<td>{{item.NewCombinationNum}}</td> <td>{{item.NewCombinationNum}}</td>
<td class="_Titles">{{item.Titles}}</td> <td class="_Titles">{{item.Titles}}</td>
<td> <td>{{item.StartDateStr}}</td>
{{item.StartDateStr}} <td>{{item.DayNum}}</td>
</td> <td>{{item.CommonReport.HouseStatistics.ManNum}}</td>
<td>{{item.DayNum}}</td> <td>{{item.CommonReport.HouseStatistics.NeedBed}}</td>
<td>{{item.CommonReport.HouseStatistics.ManNum}}</td> <td>{{item.CommonReport.HouseStatistics.NoNeedBed}}</td>
<td>{{item.CommonReport.HouseStatistics.NeedBed}}</td> <td>{{item.CommonReport.HouseStatistics.BabyNum}}</td>
<td>{{item.CommonReport.HouseStatistics.NoNeedBed}}</td> <td>{{item.CommonReport.HouseStatistics.RealityNum}}</td>
<td>{{item.CommonReport.HouseStatistics.BabyNum}}</td> <td>{{item.GuideName}}</td>
<td>{{item.CommonReport.HouseStatistics.RealityNum}}</td> </tr>
<td>{{item.GuideName}}</td> <tr v-if="!nav.length">
</tr> <td colspan="10">暂无数据</td>
</table> </tr>
<table border="0" cellspacing='1' class="leaderPayTable"> </table>
<tbody> <table border="0" cellspacing="1" class="leaderPayTable">
<tr> <tbody>
<th>项目类型</th> <tr>
<th>项目内容</th> <th>项目类型</th>
<th>实付金额</th> <th>项目内容</th>
<th>备注</th> <th>实付金额</th>
</tr> <th>备注</th>
<template v-for='(item,index) in dataList.ScenicList'> </tr>
<tr> <template v-for="(item,index) in dataList.ScenicList">
<td v-if="index==0" :rowspan="dataList.ScenicList.length">景点门票</td> <tr>
<td> <td v-if="index==0" :rowspan="dataList.ScenicList.length">景点门票</td>
<div class="itemName" v-for="subItem in item.ScenicStatisticsList"> <td>
{{subItem.ScenicName}} <div
</div> class="itemName"
</td> v-for="subItem in item.ScenicStatisticsList"
<td> >{{subItem.ScenicName}}</div>
<div v-for="subItem in item.ScenicStatisticsList"> </td>
{{subItem.TotalPrice}} {{subItem.CurrencyStr}} <td>
</div> <div
</td> v-for="subItem in item.ScenicStatisticsList"
<td> >{{subItem.TotalPrice}} {{subItem.CurrencyStr}}</div>
<template v-for='(sitem,sindex) in item.ScenicStatisticsList'> </td>
{{sitem.Remarks}} <td>
</template> <template v-for="(sitem,sindex) in item.ScenicStatisticsList">{{sitem.Remarks}}</template>
</td> </td>
</tr> </tr>
</template> </template>
<!-- <tr v-if="dataList.ScenicList.length>0"> <tr v-for="(item,index) in dataList.BusList">
<td class="comTotal" colspan="4">合计:{{totalScenicPrice}}</td> <td v-if="index==0" :rowspan="dataList.BusList.length">交通</td>
</tr> --> <td>
<tr v-for="(item,index) in dataList.BusList"> {{item.ParkExplain}}
<td v-if="index==0" :rowspan="dataList.BusList.length">交通</td> <!-- <span v-if='index==0'>接机</span>
<td>
{{item.ParkExplain}}
<!-- <span v-if='index==0'>接机</span>
<span v-if='index!=0&&index!=dataList.BusList.length-1'>{{item.AirportPickUpStr}}</span> <span v-if='index!=0&&index!=dataList.BusList.length-1'>{{item.AirportPickUpStr}}</span>
<span v-if='index==dataList.BusList.length-1'>送机</span> --> <span v-if='index==dataList.BusList.length-1'>送机</span>-->
</td> </td>
<td> <td>{{moneyFormat(item.TotalPrice)}} {{item.CurrencyStr}}</td>
{{moneyFormat(item.TotalPrice)}} {{item.CurrencyStr}} <td>{{item.Remarks}}</td>
</td> </tr>
<td> <template v-for="(item,index) in dataList.DiningList">
{{item.Remarks}} <tr class="splitP ScenicTr">
</td> <td v-if="index==0" :rowspan="dataList.DiningList.length">餐饮</td>
</tr> <td>
<!-- <tr v-if="dataList.BusList.length>0"> <div
<td class="comTotal" colspan="4">合计:{{totalTrafficPrice}}</td> class="itemName"
</tr> --> v-for="subItem in item.DiningSummaryList"
<template v-for='(item,index) in dataList.DiningList'> >{{subItem.NewDiningName}}</div>
<tr class="splitP ScenicTr"> </td>
<td v-if="index==0" :rowspan="dataList.DiningList.length">餐饮</td> <td>
<td> <div
<div class="itemName" v-for="subItem in item.DiningSummaryList"> v-for="subItem in item.DiningSummaryList"
{{subItem.NewDiningName}} >{{subItem.TotalPrice}} {{subItem.CurrencyStr}}</div>
</div> </td>
</td> <td>
<td> <template v-for="(sitem,sindex) in item.DiningSummaryList">{{sitem.Remarks}}</template>
<div v-for="subItem in item.DiningSummaryList"> </td>
{{subItem.TotalPrice}} {{subItem.CurrencyStr}} </tr>
</div> </template>
</td> <template v-for="(item,index) in dataList.HotelList">
<td> <tr>
<template v-for='(sitem,sindex) in item.DiningSummaryList'> <td v-if="index==0" :rowspan="dataList.HotelList.length">酒店</td>
{{sitem.Remarks}} <td width="30%">
</template> <div class="itemName">{{item.NewHotelName}}</div>
</td> </td>
</tr> <td>{{item.TotalPrice}} {{item.CurrencyStr}}</td>
</template> <td>{{item.Remarks}}</td>
<!-- <tr v-if="dataList.DiningList.length>0"> </tr>
<td class="comTotal" colspan="4">合计:{{totalDinnerPrice}}</td> </template>
</tr> --> <tr v-if="(dataList.ScenicList && !dataList.ScenicList.length) ||
<template v-for='(item,index) in dataList.HotelList'> (dataList.BusList && !dataList.BusList.length) ||
<tr> (dataList.DiningList && !dataList.DiningList.length) ||
<td v-if="index==0" :rowspan="dataList.HotelList.length">酒店</td> (dataList.HotelList && !dataList.HotelList.length)">
<td width="30%"> <td colspan="4">暂无数据</td>
<div class="itemName" >{{item.NewHotelName}}</div> </tr>
</td> </tbody>
<td>{{item.TotalPrice}} {{item.CurrencyStr}}</td> </table>
<td>{{item.Remarks}}</td> <table border="0" cellspacing="1" class="leaderPayTable">
</tr> <tr>
</template> <th>类型</th>
<!-- <tr v-if="dataList.HotelList.length>0"> <th>金额</th>
<td class="comTotal" colspan="4">合计:{{totalHotelPrice}}</td> </tr>
</tr> <tr v-show="totalList.SelfPayingExpendTotalPrice>0">
<tr> <td>自费支出</td>
<td colspan="4">总计:{{allTotal}}</td> <td>{{moneyFormat(totalList.SelfPayingExpendTotalPrice)}}</td>
</tr> --> </tr>
</tbody> <tr v-show="totalList.SelfPayingIncomeTotalPrice>0">
</table> <td>自费收入</td>
<table border="0" cellspacing='1' class="leaderPayTable"> <td>{{moneyFormat(totalList.SelfPayingIncomeTotalPrice)}}</td>
<tr> </tr>
<th>类型</th> <tr v-show="totalList.IncomeTotalPrice>0">
<th>金额</th> <td>消费收入</td>
</tr> <td>{{moneyFormat(totalList.IncomeTotalPrice)}}</td>
<tr v-show="totalList.PlanTotalPrice>0"> </tr>
<td>领取团款</td> <tr
<td>{{moneyFormat(totalList.PlanTotalPrice)}}</td> v-show="(totalList.ExpendTotalPrice-totalScenicPrice-totalTrafficPrice-totalDinnerPrice-totalHotelPrice)>0"
</tr> >
<tr v-show="totalList.SelfPayingExpendTotalPrice>0"> <td>其他费用</td>
<td>自费支出</td> <td>{{moneyFormat(totalList.ExpendTotalPrice-totalScenicPrice-totalTrafficPrice-totalDinnerPrice-totalHotelPrice)}}</td>
<td>{{moneyFormat(totalList.SelfPayingExpendTotalPrice)}}</td> </tr>
</tr> <tr v-show="totalScenicPrice>0">
<tr v-show="totalList.SelfPayingIncomeTotalPrice>0"> <td>景点门票</td>
<td>自费收入</td> <td>{{moneyFormat(totalScenicPrice)}}</td>
<td>{{moneyFormat(totalList.SelfPayingIncomeTotalPrice)}}</td> </tr>
</tr> <tr v-show="totalTrafficPrice>0">
<tr v-show="totalList.IncomeTotalPrice>0"> <td>交通</td>
<td>消费收入</td> <td>{{moneyFormat(totalTrafficPrice)}}</td>
<td>{{moneyFormat(totalList.IncomeTotalPrice)}}</td> </tr>
</tr> <tr v-show="totalDinnerPrice>0">
<tr v-show="(totalList.ExpendTotalPrice-totalScenicPrice-totalTrafficPrice-totalDinnerPrice-totalHotelPrice)>0"> <td>餐饮</td>
<td>其他费用</td> <td>{{moneyFormat(totalDinnerPrice)}}</td>
<td>{{moneyFormat(totalList.ExpendTotalPrice-totalScenicPrice-totalTrafficPrice-totalDinnerPrice-totalHotelPrice)}}</td> </tr>
</tr> <tr v-show="totalHotelPrice>0">
<tr v-show="totalScenicPrice>0"> <td>酒店</td>
<td>景点门票</td> <td>{{moneyFormat(totalHotelPrice)}}</td>
<td>{{moneyFormat(totalScenicPrice)}}</td> </tr>
</tr> </table>
<tr v-show="totalTrafficPrice>0"> <table border="0" cellspacing="1" class="leaderPayTable" v-if="TotalPriceData.length>0">
<td>交通</td> <tr>
<td>{{moneyFormat(totalTrafficPrice)}}</td> <th>币种</th>
</tr> <th>预付合计</th>
<tr v-show="totalDinnerPrice>0"> <th>实际领款</th>
<td>餐饮</td> <th>实付合计</th>
<td>{{moneyFormat(totalDinnerPrice)}}</td> <th>领队退款</th>
</tr> </tr>
<tr v-show="totalHotelPrice>0"> <tr
<td>酒店</td> v-for="item in TotalPriceData"
<td>{{moneyFormat(totalHotelPrice)}}</td> v-if="item.PlanPrice > 0 || item.PlanTotalPrice > 0 || item.ExpendTotalPrice > 0"
</tr> >
</table> <td>{{item.CurrencyStr}}</td>
<table border="0" cellspacing='1' class="leaderPayTable" v-if="TotalPriceData.length>0"> <td>{{moneyFormat(item.PlanPrice)}}</td>
<tr> <td>{{moneyFormat(item.PlanTotalPrice)}}</td>
<th>币种</th> <td>{{moneyFormat(item.ExpendTotalPrice)}}</td>
<th>预付合计</th> <td>{{moneyFormat(item.PlanTotalPrice - item.ExpendTotalPrice)}}</td>
<th>实际领款</th> </tr>
<th>实付合计</th> <tr v-if="!TotalPriceData.length">
<th>领队退款</th> <td colspan="5">暂无数据</td>
</tr> </tr>
<tr v-for="item in TotalPriceData" v-if="item.PlanPrice > 0 || item.PlanTotalPrice > 0 || item.ExpendTotalPrice > 0"> </table>
<td>{{item.CurrencyStr}}</td> <table class="leaderPayTable" border="0" cellspacing="1" cellpadding="0">
<td>{{moneyFormat(item.PlanPrice)}}</td> <tr>
<td>{{moneyFormat(item.PlanTotalPrice)}}</td> <th width="80">单号</th>
<td>{{moneyFormat(item.ExpendTotalPrice)}}</td> <th>挂账金额</th>
<td>{{moneyFormat(item.PlanTotalPrice - item.ExpendTotalPrice)}}</td> <th>挂账类型</th>
</tr> <th>挂账对象</th>
</table> <th>单据状态</th>
<template v-if="dataList.LeaderApply && dataList.LeaderApply.Status && dataList.LeaderApply.Status==1"> <th>创建时间</th>
<el-input type="textarea" placeholder="请输入备注信息" v-model="dataList.LeaderApply.AccountForReason" class="wLeader2"/> <th>创建人</th>
</template> </tr>
<div class="btnListDiv" > <template v-for="(item, index) in TotalNav">
<input type="button" class="leader2Btn" @click="AuditOrder(2)" value="审核通过" v-show="dataList.LeaderApply.Status==1"/> <tr v-for="(subItem, subIndex) in item.FinanceList">
<input type="button" class="leader2Btn" @click="AuditOrder(1)" value="审核不通过" v-show="dataList.LeaderApply.Status==1"/> <td>
<input type="button" class="leader2Btn" value="打印" @click="printTable()"> <span>{{subItem.FrID}}</span>
<input type="button" class="leader2Btn" value="查看详情" @click="Lookdetails()"> </td>
<td>
<span>{{subItem.Money}}</span>
</td>
<td>
<span>{{subItem.HangingAccountsTypeStr}}</span>
</td>
<td>
<span>{{subItem.RemitterName}}{{subItem.AccountNumber}}</span>
</td>
<td>
<span>{{subItem.StatusStr}}</span>
</td>
<td>
<span>{{subItem.CreateDateStr}}</span>
</td>
<td>
<span>{{subItem.createByStr}}</span>
</td>
</tr>
</template>
<tr v-if="!TotalNav.FinanceList || !TotalNav.FinanceList.length">
<td colspan="7">暂无数据</td>
</tr>
</table>
<table class="leaderPayTable" border="0" cellspacing="1" cellpadding="0">
<tr>
<th width="140">团号</th>
<th width="200">实际领款</th>
<th>结算金额</th>
<th>结算财务单号</th>
<th>操作</th>
</tr>
<tr v-for="(item, index) in TotalNav">
<td>{{item.TCNUMS}}</td>
<td style="padding: 5px 20px; height: 40px; border: none;">
<p style="margin: 0;text-align: left">
已领款:
<span style="color: red;">{{moneyFormat(item.LeaderGetPrice)}}</span>
</p>
<div style="margin: 0;text-align: left">
财务单号:
<template v-for="(subItem, subIndex) in item.FinanceIds">
<p style="margin: 0;text-align: left">
<span
class="cursorpointer text-decoration"
@click="goFncUrl('FinancialDocumentsDetail', subItem.FinanceId)"
>{{subItem.FinanceId}}</span>&nbsp;&nbsp;
<span
class="cursorpointer text-decoration"
@click="goFncUrl('Application', subItem.FinanceId)"
v-if="subItem.IsPublic === 4"
>申请书</span> &nbsp;&nbsp;
<span
class="cursorpointer text-decoration"
@click="goFncUrl('DebitNote', subItem.FinanceId)"
>借支单</span>
</p>
</template>
</div> </div>
</div> </td>
<a :href='blankUrl' id='blankLink' target="_blank" style="display:none">1</a> <td>
<span v-if="item.LeaderClosePrice > 0">实际结算金额: {{item.LeaderClosePrice}}</span>
&nbsp;&nbsp;
<el-input
size="mini"
class="w150"
type="number"
v-model="item.LeaderGetPriceT"></el-input>
</td>
<td>
<p v-for="(subItem, subIndex) in item.FinanceCloseList" style=" margin: 0;">
<span
class="cursorpointer text-decoration"
@click="goFncUrl('FinancialDocumentsDetail', subItem.FinanceId)"
>{{subItem.FinanceId}}</span>&nbsp;&nbsp;
</p>
</td>
<td width="80" class="_zhidan">
<input
type="button"
value="制单"
class="leader2Btn"
@click="goZhiDan(item)"
>
</td>
</tr>
<tr v-if="!TotalNav && !TotalNav.length">
<td colspan="5">暂无数据</td>
</tr>
</table>
<template
v-if="dataList.LeaderApply && dataList.LeaderApply.Status && dataList.LeaderApply.Status==1"
>
<el-input
type="textarea"
placeholder="请输入备注信息"
v-model="dataList.LeaderApply.AccountForReason"
class="wLeader2"
/>
</template>
<div class="btnListDiv">
<input
type="button"
class="leader2Btn"
@click="AuditOrder(2)"
value="审核通过"
v-show="dataList.LeaderApply.Status==1"
>
<input
type="button"
class="leader2Btn"
@click="AuditOrder(1)"
value="审核不通过"
v-show="dataList.LeaderApply.Status==1"
>
<input type="button" class="leader2Btn" value="打印" @click="printTable()">
<input type="button" class="leader2Btn" value="查看详情" @click="Lookdetails()">
</div>
</div> </div>
<a :href="blankUrl" id="blankLink" target="_blank" style="display:none">1</a>
</div>
</template> </template>
<script> <script>
export default { export default {
data () { data() {
return { return {
isUpdate: false, isUpdate: false,
loading:false, loading: false,
msg: { msg: {
TCIDs: '', TCIDs: "",
NewCombinationNum: '' NewCombinationNum: ""
}, },
nav:[], nav: [],
dataList:[], dataList: {LeaderApply: {Status: 0}},
//合计景点 //合计景点
totalScenicPrice:0, totalScenicPrice: 0,
//合计餐饮 //合计餐饮
totalDinnerPrice:0, totalDinnerPrice: 0,
//合计酒店 //合计酒店
totalHotelPrice:0, totalHotelPrice: 0,
//合计交通 //合计交通
totalTrafficPrice:0, totalTrafficPrice: 0,
allTotal:0, allTotal: 0,
totalList:[], totalList: [],
isShowRemark:false, isShowRemark: false,
TotalPriceData: [], TotalPriceData: [],
blankUrl:'', blankUrl: "",
} TotalNav: [],
}, };
methods: { },
//获取数据 methods: {
getList(){ goZhiDan: function(obj) {
this.loading = true let id = [3];
this.apipost('dmcstatistics_post_GetNewLeaderPayStatics', this.msg, res => { let TCIDARR = [obj.TCIDS];
this.loading = false let orderObj = {
if (res.data.resultCode == 1) { OrderID: 0,
this.dataList = res.data.data; OrderSource: 8,
this.dataList.HotelList.forEach(x=>{ Obj: {},
this.totalHotelPrice+=parseFloat(x.TotalPrice) SourceID: 0,
}) CostType: 57,
this.dataList.BusList.forEach(x=>{ TCIDList: TCIDARR,
this.totalTrafficPrice+=parseFloat(x.TotalPrice); Money: obj.LeaderGetPriceT,
}) TCNUMS: obj.TCNUMS
this.dataList.ScenicList.forEach(x=>{ };
this.totalScenicPrice+= parseFloat(x.ScenicStatisticsList[0].TotalPrice); let fullPath = `/ChoiceAddFinancialDocuments?Type=${2}&templateID=${JSON.stringify(id)}&companyID=${obj.OutBranchId}&orderObj=${JSON.stringify(orderObj)}&blank=y&tab=领队报账`;
}) let dom = document.querySelector("#blankLink");
this.dataList.DiningList.forEach(x=>{ dom.href = `http://${window.location.host}/#${fullPath}`;
this.totalDinnerPrice+= parseFloat(x.DiningSummaryList[0].TotalPrice); dom.click();
}) },
this.allTotal = (this.totalHotelPrice+this.totalTrafficPrice+this.totalScenicPrice+this.totalDinnerPrice).toFixed(2); goFncUrl: function(path, id) {
this.isShowRemark=true; // this.$router.push({ name: path, query: { id: id, blank: "y" } });
} else { let fullPath = `/${path}?id=${id}&blank=y&tab=`;
this.Error(res.data.message) let dom = document.querySelector("#blankLink");
} dom.href = `http://${window.location.host}/#${fullPath}`;
}, err => {}) dom.click();
}, },
//获取顶部数据 getNavT() {
getNav() { let _this = this
this.apipost('dmcstatistics_post_GetNewStaticsByTCIDs', { this.apipost(
TCIDs: this.$route.query.id "dmcstatistics_post_GetHotelStaticsByTCIDs",
}, res => { { TCIDs: this.$route.query.id },
if (res.data.resultCode == 1) { res => {
this.nav = res.data.data; if (res.data.resultCode == 1) {
} else { let TotalNav = res.data.data;
this.Error(res.data.message) TotalNav.forEach(x => {
} TotalNav.LeaderGetPriceT = 0;
}, err => {}) });
this.TotalNav = TotalNav;
} else {
this.$message.error(res.data.message);
}
}, },
// 获取总金额 err => {}
getTotalPrice: function(){ );
this.apipost('dmcstatistics_post_GetNewTotalPrice', { },
TCIDs: this.$route.query.id //获取数据
}, res => { getList() {
if (res.data.resultCode == 1) { this.loading = true;
this.TotalPriceData = res.data.data; this.apipost(
} else { "dmcstatistics_post_GetNewLeaderPayStatics",
this.Error(res.data.message) this.msg,
} res => {
}, err => {}) this.loading = false;
if (res.data.resultCode == 1) {
this.dataList = res.data.data;
this.dataList.HotelList.forEach(x => {
this.totalHotelPrice += parseFloat(x.TotalPrice);
});
this.dataList.BusList.forEach(x => {
this.totalTrafficPrice += parseFloat(x.TotalPrice);
});
this.dataList.ScenicList.forEach(x => {
this.totalScenicPrice += parseFloat(
x.ScenicStatisticsList[0].TotalPrice
);
});
this.dataList.DiningList.forEach(x => {
this.totalDinnerPrice += parseFloat(
x.DiningSummaryList[0].TotalPrice
);
});
this.allTotal = (
this.totalHotelPrice +
this.totalTrafficPrice +
this.totalScenicPrice +
this.totalDinnerPrice
).toFixed(2);
this.isShowRemark = true;
} else {
this.Error(res.data.message);
}
}, },
//获取总额 err => {}
getTotal(obj) { );
let totalPrice = 0 },
obj.forEach(x => { //获取顶部数据
totalPrice += x.UserNum * x.UnitPrice getNav() {
}) this.apipost(
return totalPrice "dmcstatistics_post_GetNewStaticsByTCIDs",
{
TCIDs: this.$route.query.id
}, },
//打印 res => {
printTable(){ if (res.data.resultCode == 1) {
window.print(); this.nav = res.data.data;
} else {
this.Error(res.data.message);
}
}, },
//获取总额 err => {}
getTotalMoney(){ );
this.apipost('dmcstatistics_post_GetTotalPrice', { },
TCIDs: this.$route.query.id // 获取总金额
}, res => { getTotalPrice: function() {
if (res.data.resultCode == 1) { this.apipost(
this.totalList = res.data.data; "dmcstatistics_post_GetNewTotalPrice",
} else { {
this.Error(res.data.message) TCIDs: this.$route.query.id
}
}, err => {})
}, },
//审核 res => {
AuditOrder(type){ if (res.data.resultCode == 1) {
if(type==1&&(this.dataList.LeaderApply.AccountForReason==null||this.dataList.LeaderApply.AccountForReason=='')){ this.TotalPriceData = res.data.data;
this.Error('请填写备注信息'); } else {
return; this.Error(res.data.message);
} }
this.dataList.LeaderApply.Status=type;
let msg = this.dataList.LeaderApply;
this.apipost('dmcstatistics_post_AuditLeaderapply',msg, res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
}, err => {})
}, },
Lookdetails(){ err => {}
console.log(this.$route.query.id); );
console.log(this.$route.query.NewCombinationNum);
let fullPath = `/leaderPay?id=${this.$route.query.id}&NewCombinationNum=${this.$route.query.NewCombinationNum}&isUpdate=${true}&blank=y&tab=领队报账`
let dom = document.querySelector("#blankLink")
dom.href=`http://${window.location.host}/#${fullPath}`
//console.log(that.$refs.blankLink.click())
dom.click()
// this.$router.push({
// name: 'leaderPay',
// query: {
// id: this.$route.query.id,
// NewCombinationNum:this.$route.query.NewCombinationNum,
// isUpdate: true,
// blank: 'y',
// tab: '领队报账'
// }
// })
}
}, },
created() { //获取总额
getTotal(obj) {
let totalPrice = 0;
obj.forEach(x => {
totalPrice += x.UserNum * x.UnitPrice;
});
return totalPrice;
}, },
mounted() { //打印
this.isUpdate = this.$route.query.isUpdate; printTable() {
this.msg.TCIDs = this.$route.query.id; window.print();
this.getNav();
this.getList();
this.getTotalMoney();
this.getTotalPrice();
}, },
} //获取总额
getTotalMoney() {
this.apipost(
"dmcstatistics_post_GetTotalPrice",
{
TCIDs: this.$route.query.id
},
res => {
if (res.data.resultCode == 1) {
this.totalList = res.data.data;
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
//审核
AuditOrder(type) {
if (
type == 1 &&
(this.dataList.LeaderApply.AccountForReason == null ||
this.dataList.LeaderApply.AccountForReason == "")
) {
this.Error("请填写备注信息");
return;
}
this.dataList.LeaderApply.Status = type;
let msg = this.dataList.LeaderApply;
this.apipost(
"dmcstatistics_post_AuditLeaderapply",
msg,
res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
},
err => {}
);
},
Lookdetails() {
console.log(this.$route.query.id);
console.log(this.$route.query.NewCombinationNum);
let fullPath = `/leaderPay?id=${this.$route.query.id}&NewCombinationNum=${
this.$route.query.NewCombinationNum
}&isUpdate=${true}&blank=y&tab=领队报账`;
let dom = document.querySelector("#blankLink");
dom.href = `http://${window.location.host}/#${fullPath}`;
//console.log(that.$refs.blankLink.click())
dom.click();
// this.$router.push({
// name: 'leaderPay',
// query: {
// id: this.$route.query.id,
// NewCombinationNum:this.$route.query.NewCombinationNum,
// isUpdate: true,
// blank: 'y',
// tab: '领队报账'
// }
// })
}
},
created() {},
mounted() {
this.isUpdate = this.$route.query.isUpdate;
this.msg.TCIDs = this.$route.query.id;
this.getNav();
this.getList();
this.getTotalMoney();
this.getTotalPrice();
this.getNavT();
}
};
</script> </script>
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