Commit 2fe734af authored by Mac's avatar Mac
parents a3a3fb49 070274fd
.newSummaryLogin .item img {
width: 100%;
}
.Summary_login_Div {
width: 480px;
height: 420px;
position: absolute;
text-align: center;
background: #fff;
border-radius: 12px;
-webkit-box-shadow: 1px -1px 25px rgba(249, 7, 32,0.2);
box-shadow: 1px -1px 25px rgba(249, 7, 32,0.2);
z-index: 2018;
margin: auto;
top: 0;
left: 0;
bottom: 0;
right: 0;
float:right;
margin-right:165px;
}
.newSummaryLogin .error-msg{
color:#cccccc;
font-size:12px;
text-align: left;
width:300px;
margin:0 auto 0;
height:20px;
padding-left: 16px;
}
.newSummaryLogin .error-msg img{
position:relative;
top:3px;
margin:0 10px 0 5px;
}
.Summary_login_Div .sumMainTitle{
font-size:28px;
padding-top:40px;
color:#111111;
margin-bottom:40px;
font-weight:bold;
}
.Summary_login_Div .littTitle{
font-size:18px;
color:#333333;
}
.Summary_login_Div .icon-login-name,.icon-login-password{
width:16px;
height:15px;
display:inline-block;
position:absolute;
top:10px;
color: #000000
}
.Summary_login_Div .login-commonBotm{
width:260px;
position:relative;
margin:10px auto 0;
}
.Summary_login_Div .login-commonBotm img{
float:left;
margin-top:14px;
}
.Summary_login_Div input.input{
width:260px;
height:40px;
outline:none;
padding-left: 30px;
border:none;
border-bottom: 1px solid #CCCCCC;
color: #333333;
caret-color:#E95252;
}
.Summary_login_Div input::-webkit-input-placeholder {
color: #999999;
font-size: 12px;
}
.newSummaryLogin .sumPhone{width:100%;text-align:center;color:#333;margin-bottom:10px;}
.Summary_login_Div input:-webkit-autofill , .Summary_login_Div textarea:-webkit-autofill, .Summary_login_Div select:-webkit-autofill {
-webkit-text-fill-color: #ededed !important;
-webkit-box-shadow: 0 0 0px 1000px transparent inset !important;
background-color:transparent;
background-image: none;
transition: background-color 50000s ease-in-out 0s;
}
.Summary_login_Div .sLoginBtn{
margin-top:30px;
width:300px;
height:40px;
background:#EE4454;
border-radius:20px;
outline:none;
border:none;
color:#fff;
transition: all linear 0.5s;
}
.Summary_login_Div .sLoginBtn:hover{
opacity:.8;
cursor:pointer;
background-color: #E95252;
color: #FFFFFF
}
.Summary_login_Div .validatCode{
color:#333333;
}
.newSummaryLogin .msgTips p{
color:#333333!important;
}
.newSummaryLogin .msgTips p, .newSummaryLogin .msgTips h2{
color:#333333!important;
}
.newSummaryLogin .bindTitle{margin-bottom:10px;}
.newSummaryLogin .changeBtn{
margin-top:10px;
}
.login-box .forgetPw{
width:300px;
height:40px;
text-align: right;
margin:auto;
color:#999999;
font-size:12px;
text-align: right;
line-height: 40px;
}
.forgetPw span{
cursor: pointer;
}
.newSummaryLogin .login-box .forgetPw span:hover{
color: #E95252;
}
.newSummaryLogin .login-way{
width:300px;
height:40px;
margin:25px auto;
font-size:12px;
color:#CCCCCC;
display: none;
line-height:40px;
}
.newSummaryLogin .wayLeft{
float:left;
}
.newSummaryLogin .icon-login-qqicon{
width:16px;
height:15px;
display:inline-block;
position:relative;
top:3px;
background:url(../img/qqIco.png) no-repeat;
}
.newSummaryLogin .icon-login-wechaticon{
width:19px;
height:15px;
display:inline-block;
position:relative;
top:3px;
background:url(../img/wechatIco.png) no-repeat;
}
.newSummaryLogin .wayRight{
float:right;
}
.newSummaryLogin .validatCode{
position: absolute;
right:0;
top:13px;
padding-left:10px;
color:#333;
font-size:12px;
letter-spacing: 2px;
border-left:1px solid #cccccc;
}
.newSummaryLogin .validatCode span:first-child{cursor: pointer;}
.newSummaryLogin .btValidate{
margin-top:30px;
}
.newSummaryLogin .login_elephant{
position: absolute;
left:-15px;
top:-80px;
}
.newSummaryLogin .homepage-hero-module,
.video-container {
position: relative;
height: 100vh;
overflow: hidden;
}
.newSummaryLogin .name_bline_left{position: absolute;right: 115px;bottom: 0;width: 0;height: 2px;background-color: #E95252;transition: all linear 0.5s;}
.newSummaryLogin .name_bline_right{position: absolute;left: 115px;bottom: 0;width: 0;height: 2px;background-color: #E95252;transition: all linear 0.5s;}
.newSummaryLogin .pwd_bline_left{position: absolute;right: 115px;bottom: 0;width: 0;height: 2px;background-color: #E95252;transition: all linear 0.5s;}
.newSummaryLogin .pwd_bline_right{position: absolute;left: 115px;bottom: 0;width: 0;height: 2px;background-color: #E95252;transition: all linear 0.5s;}
.newSummaryLogin .login-Div input:-webkit-autofill , .login-Div textarea:-webkit-autofill, .login-Div select:-webkit-autofill {
-webkit-text-fill-color: #ededed !important;
-webkit-box-shadow: 0 0 0px 1000px transparent inset !important;
background-color:transparent;
background-image: none;
transition: background-color 50000s ease-in-out 0s;
}
.newSummaryLogin ._bline_w{width: 145px;}
...@@ -528,6 +528,7 @@ ...@@ -528,6 +528,7 @@
<SaleOrderModule v-if="OrderSource==10&&SourceID&&OrderID" :SourceID='SourceID' :OrderID='OrderID'/> <SaleOrderModule v-if="OrderSource==10&&SourceID&&OrderID" :SourceID='SourceID' :OrderID='OrderID'/>
<TicketFinace v-if="OrderSource==4&&SourceID&&Callback&&ID" :SourceID='SourceID' :Callback='Callback' :id='ID'/> <TicketFinace v-if="OrderSource==4&&SourceID&&Callback&&ID" :SourceID='SourceID' :Callback='Callback' :id='ID'/>
<TicketingModule v-if="OrderSource==9&&FrID&&ID" :FrID='FrID' :id='ID'/> <TicketingModule v-if="OrderSource==9&&FrID&&ID" :FrID='FrID' :id='ID'/>
<ChongDiPage v-if="GetDetail.Type === 7 || isChongDi" :dataList="ChongDiList" :type="danjuType"/>
</div> </div>
<div class="_tit _tit2 w890px"> <div class="_tit _tit2 w890px">
...@@ -784,6 +785,7 @@ import teamProductModule from "../commonPage/teamProductModule.vue"; ...@@ -784,6 +785,7 @@ import teamProductModule from "../commonPage/teamProductModule.vue";
import TicketFinace from "../commonPage/TicketFinace.vue"; import TicketFinace from "../commonPage/TicketFinace.vue";
import SaleOrderModule from "../commonPage/SaleOrderModule.vue"; import SaleOrderModule from "../commonPage/SaleOrderModule.vue";
import TicketingModule from "../commonPage/TicketingModule.vue"; import TicketingModule from "../commonPage/TicketingModule.vue";
import ChongDiPage from "../commonPage/ChongDiPage.vue";
import myDJieBill from "./FinancialSubmodule/DjieMergeBillModule.vue"; import myDJieBill from "./FinancialSubmodule/DjieMergeBillModule.vue";
export default { export default {
data(){ data(){
...@@ -847,6 +849,9 @@ export default { ...@@ -847,6 +849,9 @@ export default {
currentPage:1, currentPage:1,
total: 0, total: 0,
}, },
isChongDi: false,
ChongDiList: [],
danjuType: ''
} }
},components:{ },components:{
'my-FlowChartModule': myFlowChartModule, 'my-FlowChartModule': myFlowChartModule,
...@@ -860,6 +865,7 @@ export default { ...@@ -860,6 +865,7 @@ export default {
'SaleOrderModule':SaleOrderModule, 'SaleOrderModule':SaleOrderModule,
'TicketFinace':TicketFinace, 'TicketFinace':TicketFinace,
'myDJieBill': myDJieBill, 'myDJieBill': myDJieBill,
'ChongDiPage': ChongDiPage,
}, },
created(){ created(){
this.ID = this.$route.query.id; this.ID = this.$route.query.id;
...@@ -867,6 +873,33 @@ export default { ...@@ -867,6 +873,33 @@ export default {
let userinfo = this.getLocalStorage(); let userinfo = this.getLocalStorage();
this.bossID = userinfo.EmployeeId; this.bossID = userinfo.EmployeeId;
},methods:{ },methods:{
// 获取冲抵列表
getChongDiList(data){
this.danjuType = data.Type
let cmd = 'Financial_post_GetHangingAccountList'
if (data.Type === 7){
cmd = 'Financial_post_GetHangingMatchFinanceList'
}
this.apipost(cmd,{FrID: data.FrID}, res => {
if(res.data.resultCode == 1) {
let data = res.data.data;
this.ChongDiList = data;
}
}, err => {})
},
chongJudge(data){
// 收支冲抵显示
let p1 = false;
data.DetailList.map(item=>{
if (item.CostTypeName === '挂账单冲抵') {
p1 = true
}
})
if (p1 || data.Type === 7) {
this.isChongDi = true;
this.getChongDiList(data)
}
},
goUrl(path, id) { goUrl(path, id) {
this.$router.push({ this.$router.push({
name: path, name: path,
...@@ -1193,6 +1226,7 @@ export default { ...@@ -1193,6 +1226,7 @@ export default {
} }
}) })
} }
this.chongJudge(data)
this.GetDetail = data; this.GetDetail = data;
// 截取掉驳回后面的审核步骤 // 截取掉驳回后面的审核步骤
this.ZhiDanRen = this.GetDetail.CreatBy; this.ZhiDanRen = this.GetDetail.CreatBy;
......
...@@ -1199,6 +1199,26 @@ export default { ...@@ -1199,6 +1199,26 @@ export default {
isResize: true, isResize: true,
componentName: "TCIDJumpWang" componentName: "TCIDJumpWang"
}, },
{
field: "GZIncome",
// formatter: this.moneyFormat,
title: "挂账收入",
width: 90,
titleAlign: "left",
columnAlign: "right",
isResize: true,
componentName: "TCIDJumpWang"
},
{
field: "CDIncome",
// formatter: this.moneyFormat,
title: "冲抵收入",
width: 90,
titleAlign: "left",
columnAlign: "right",
isResize: true,
componentName: "TCIDJumpWang"
},
{ {
field: "ShiJiLiRun", field: "ShiJiLiRun",
formatter: this.moneyFormat, formatter: this.moneyFormat,
......
...@@ -118,7 +118,7 @@ ...@@ -118,7 +118,7 @@
<tr> <tr>
<td width="70" style="text-align:center;" colspan="2"> <td width="70" style="text-align:center;" colspan="2">
<span style="color:red">{{subItem.NewHotelName}}</span> <span style="color:red">{{subItem.NewHotelName}}</span>
<el-popover placement="right" width="500" trigger="click" v-model="subItem.isShowPop"> <el-popover placement="right" width="540" trigger="click" v-model="subItem.isShowPop">
<comCheckHotel :ref="'comCheckHotel'+index+subIndex+''" v-on:childHotel="childHotelList" :UseDate="item.UseTimeStr"> <comCheckHotel :ref="'comCheckHotel'+index+subIndex+''" v-on:childHotel="childHotelList" :UseDate="item.UseTimeStr">
</comCheckHotel> </comCheckHotel>
<el-button size="small" type="danger" :data-index="'comCheckHotel'+index+subIndex+''" <el-button size="small" type="danger" :data-index="'comCheckHotel'+index+subIndex+''"
......
<style> <style>
@import "../assets/css/login.css"; @import "../assets/css/summaryLogin.css";
</style>
<style>
</style> </style>
<template> <template>
<div class="login-box"> <div class="login-box newSummaryLogin">
<div class="homepage-hero-module"> <div class="homepage-hero-module">
<!--<div class="video-container">--> <div :style="{'height':'100vh'}">
<!--<div :style="fixStyle" class="filter"></div>--> <div class="item">
<!--<video :style="fixStyle" autoplay loop class="fillWidth" v-on:canplay="canplay" ref="audio">--> <img :style="{'height':'100vh'}" src="../assets/img/summary.jpg" />
<!--<source src="/static/video/wt3.mp4" type="video/mp4"/>-->
<!--浏览器不支持 video 标签,建议升级浏览器。-->
<!--</video>-->
<!--<div class="poster hidden" v-if="!vedioCanPlay">-->
<!--<img :style="fixStyle" alt="">-->
<!--</div>-->
<!--</div>-->
<div class="silder-box" ref='box' :style="{'height':'100vh'}" v-show="height>0">
<div class="item" v-for="(item,index) in imgs" :key="index">
<img :style="{'height':'100vh'}" :class="index==crtIndex?'active':''" ref="swiper" :src="item">
</div> </div>
</div> </div>
<!--<img src="../assets/img/login_bg_1.jpg" alt="">--> </div>
</div> <form class="Summary_login_Div">
<div class="cover"></div>
<form class="login-Div">
<div v-if="isShow==1"> <div v-if="isShow==1">
<div class="mainTitle">{{groupModel.GroupName?groupModel.GroupName:''}}</div> <div class="sumMainTitle">{{groupModel.GroupName?groupModel.GroupName:''}}</div>
<div class="login-commonBotm T1"> <div class="login-commonBotm">
<i class="icon-login-name iconfont icon-user11"></i> <i class="icon-login-name iconfont icon-user11"></i>
<input class="input" @focus="name_bline=true" @blur="name_bline=false" maxlength="20" autocomplete="new-password" v-model="userInfo.name" style="background-color:transparent !important;" type="text" :placeholder="$t('login.login_account')" @keyup.enter="doLogin"/> <input class="input" @focus="name_bline=true" @blur="name_bline=false" maxlength="20" autocomplete="new-password" v-model="userInfo.name" style="background-color:transparent !important;" type="text" :placeholder="$t('login.login_account')" @keyup.enter="doLogin"/>
<div class="name_bline_left" :class="name_bline==true?'_bline_w':''"></div> <div class="name_bline_left" :class="name_bline==true?'_bline_w':''"></div>
...@@ -45,7 +35,7 @@ ...@@ -45,7 +35,7 @@
<div class="error-msg"> <div class="error-msg">
<div v-show="passwordIsShow"><img src="../assets/img/login-error-tips.png"/>{{ passwordErrorMsg }}</div> <div v-show="passwordIsShow"><img src="../assets/img/login-error-tips.png"/>{{ passwordErrorMsg }}</div>
</div> </div>
<button type="button" class="loginBtn" :class="{'loginIng':loginState==1}" :disabled="loginState==1" @click="doLogin">{{loginState==1?'登录中...':'登录'}}</button> <button type="button" class="sLoginBtn" :class="{'loginIng':loginState==1}" :disabled="loginState==1" @click="doLogin">{{loginState==1?'登录中...':'登录'}}</button>
<div class="forgetPw"> <div class="forgetPw">
<span @click="updatePwd">{{$t('login.login_forgetpwd')}}?</span> <span @click="updatePwd">{{$t('login.login_forgetpwd')}}?</span>
</div> </div>
...@@ -61,9 +51,9 @@ ...@@ -61,9 +51,9 @@
</div> </div>
</div> </div>
<div v-if="isShow==2" class="phoneLogin"> <div v-if="isShow==2" class="phoneLogin">
<div class="mainTitle bindTitle">{{groupModel.GroupName?groupModel.GroupName:''}}</div> <div class="sumMainTitle bindTitle">{{groupModel.GroupName?groupModel.GroupName:''}}</div>
<div class="bindPhone">绑定手机号</div> <div class="sumPhone">绑定手机号</div>
<div class="login-commonBotm T1"> <div class="login-commonBotm">
<i class="icon-login-name iconfont icon-phone1"></i> <i class="icon-login-name iconfont icon-phone1"></i>
<input class="input" @focus="name_bline=true" @blur="name_bline=false" onkeyup="value=value.replace(/[^\d]/g,'')" maxlength="11" autocomplete="new-password" v-model="mobileNumber" style="background-color:transparent !important;" type="text" placeholder="请输入手机号"/> <input class="input" @focus="name_bline=true" @blur="name_bline=false" onkeyup="value=value.replace(/[^\d]/g,'')" maxlength="11" autocomplete="new-password" v-model="mobileNumber" style="background-color:transparent !important;" type="text" placeholder="请输入手机号"/>
<div class="name_bline_left" :class="name_bline==true?'_bline_w':''"></div> <div class="name_bline_left" :class="name_bline==true?'_bline_w':''"></div>
...@@ -85,13 +75,13 @@ ...@@ -85,13 +75,13 @@
<div class="error-msg"> <div class="error-msg">
<div v-show="passwordIsShow"><img src="../assets/img/login-error-tips.png"/>{{ passwordErrorMsg }}</div> <div v-show="passwordIsShow"><img src="../assets/img/login-error-tips.png"/>{{ passwordErrorMsg }}</div>
</div> </div>
<input type="button" class="loginBtn" @click="doBind" value="确认绑定"/> <input type="button" class="sLoginBtn" @click="doBind" value="确认绑定"/>
</div> </div>
<div v-if="isShow==3" class="phoneLogin"> <div v-if="isShow==3" class="phoneLogin">
<div class="mainTitle bindTitle">{{groupModel.GroupName?groupModel.GroupName:''}}</div> <div class="sumMainTitle bindTitle">{{groupModel.GroupName?groupModel.GroupName:''}}</div>
<div class="bindPhone">修改密码</div> <div class="sumPhone">修改密码</div>
<div class="login-commonBotm T1"> <div class="login-commonBotm">
<i class="icon-login-name iconfont icon-phone1"></i> <i class="icon-login-name iconfont icon-phone1"></i>
<input class="input" @focus="name_bline=true" onkeyup="value=value.replace(/[^\d]/g,'')" maxlength="11" @blur="name_bline=false" autocomplete="new-password" v-model="mobileNumber" style="background-color:transparent !important;" type="text" placeholder="请输入手机号"/> <input class="input" @focus="name_bline=true" onkeyup="value=value.replace(/[^\d]/g,'')" maxlength="11" @blur="name_bline=false" autocomplete="new-password" v-model="mobileNumber" style="background-color:transparent !important;" type="text" placeholder="请输入手机号"/>
<div class="name_bline_left" :class="name_bline==true?'_bline_w':''"></div> <div class="name_bline_left" :class="name_bline==true?'_bline_w':''"></div>
...@@ -118,13 +108,14 @@ ...@@ -118,13 +108,14 @@
</div> </div>
</div> </div>
<div class="forgetPw"> <div class="forgetPw">
<div class="error-msg" style="float:left;width:auto;">
<div v-show="passwordIsShow"><img src="../assets/img/login-error-tips.png"/>{{ passwordErrorMsg }}</div>
</div>
<span @click="goLogin">去登录</span> <span @click="goLogin">去登录</span>
</div> </div>
<div class="error-msg"> <input type="button" class="sLoginBtn changeBtn" @click="changePwd" value="确认修改"/>
<div v-show="passwordIsShow"><img src="../assets/img/login-error-tips.png"/>{{ passwordErrorMsg }}</div>
</div>
<input type="button" class="loginBtn changeBtn" @click="changePwd" value="确认修改"/>
</div> </div>
<img class="login_elephant" src="../assets/img/elephant.gif" alt=""/>
</form> </form>
</div> </div>
</template> </template>
...@@ -431,6 +422,13 @@ export default { ...@@ -431,6 +422,13 @@ export default {
this.apipost("user_change_password_by_mobileNumber", msg, res => { this.apipost("user_change_password_by_mobileNumber", msg, res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.isShow = 1; this.isShow = 1;
this.$notify.success({
title: "提示",
customClass: "msgTips",
message: res.data.message,
showClose: false,
duration: 3000
});
} else { } else {
this.$notify.error({ this.$notify.error({
title: "提示", title: "提示",
......
...@@ -291,8 +291,8 @@ ...@@ -291,8 +291,8 @@
</li> </li>
<li> <li>
<button class="hollowFixedBtn" @click="getList()">查询</button> <button class="hollowFixedBtn" @click="getList()">查询</button>
<button class="normalBtn" v-show="!buttonshow" @click="cancelEdit(),addShow=true" v-if="msg.isFinacial==1">添加</button> <!-- <button class="normalBtn" v-show="!buttonshow" @click="cancelEdit(),addShow=true" v-if="msg.isFinacial==1">添加</button> -->
<button class="normalBtn" v-show="buttonshow" @click="AddVisaProduct" v-if="msg.isFinacial==1">添加(新)</button> <button class="normalBtn" @click="AddVisaProduct" v-if="msg.isFinacial==1">添加</button>
</li> </li>
</ul> </ul>
</div> </div>
...@@ -395,7 +395,7 @@ ...@@ -395,7 +395,7 @@
</td> </td>
<td class="groupTourOrderIcon"> <td class="groupTourOrderIcon">
<el-button-group> <el-button-group>
<el-tooltip <!-- <el-tooltip
class="item" class="item"
effect="dark" effect="dark"
content="修改" content="修改"
...@@ -408,15 +408,15 @@ ...@@ -408,15 +408,15 @@
icon="iconfont icon-img_bianji_small" icon="iconfont icon-img_bianji_small"
@click="getDetail(item)" @click="getDetail(item)"
></el-button> ></el-button>
</el-tooltip> </el-tooltip> -->
<el-tooltip <el-tooltip
class="item" class="item"
effect="dark" effect="dark"
content="修改(新)" content="修改"
placement="top-start" placement="top-start"
v-if="item.SendVisaStatus==1&&msg.isFinacial==1" v-if="item.SendVisaStatus==1&&msg.isFinacial==1"
> >
<el-button v-show="buttonshow" <el-button
type="primary" type="primary"
style="background:#409EFF; border-color:#409EFF" style="background:#409EFF; border-color:#409EFF"
icon="iconfont icon-img_bianji_small" icon="iconfont icon-img_bianji_small"
...@@ -665,15 +665,15 @@ export default { ...@@ -665,15 +665,15 @@ export default {
addShow: false, addShow: false,
currentPage: 1, currentPage: 1,
VisaManagementList: [], VisaManagementList: [],
buttonshow:false, // buttonshow:false,
Type:0, Type:0,
}; };
}, },
created(){ created(){
let locationName = window.location.hostname; // let locationName = window.location.hostname;
if (locationName.indexOf('viitto') !== -1 || locationName.indexOf('www') !== -1){ // if (locationName.indexOf('viitto') !== -1 || locationName.indexOf('www') !== -1){
this.buttonshow=true; // this.buttonshow=true;
} // }
}, },
methods: { methods: {
......
This diff is collapsed.
...@@ -193,7 +193,6 @@ ...@@ -193,7 +193,6 @@
<div>应收:<span>{{moneyFormat(moneyAll.otheryTotalyf)}}</span></div> <div>应收:<span>{{moneyFormat(moneyAll.otheryTotalyf)}}</span></div>
<div>实收:<span class="Team_Coins">{{moneyFormat(moneyAll.otheryTotalsf)}}</span></div> <div>实收:<span class="Team_Coins">{{moneyFormat(moneyAll.otheryTotalsf)}}</span></div>
<div>待收:<span class="Team_Coins">{{moneyFormat(moneyAll.otheryTotalyf-moneyAll.otheryTotalsf)}}</span></div> <div>待收:<span class="Team_Coins">{{moneyFormat(moneyAll.otheryTotalyf-moneyAll.otheryTotalsf)}}</span></div>
<div>挂账总收入:<span>{{moneyFormat(AllCont.Income)}}</span></div>
<!--<div> <!--<div>
注:应收=订单应收总额,实收=订单实收总额 注:应收=订单应收总额,实收=订单实收总额
</div>--> </div>-->
...@@ -211,7 +210,6 @@ ...@@ -211,7 +210,6 @@
<div>应付:<span>{{DataList.TeamBalance.ShouldPay}}</span></div> <div>应付:<span>{{DataList.TeamBalance.ShouldPay}}</span></div>
<div>实付:<span class="Team_Coins">{{DataList.TeamBalance.ActualPay}}</span></div> <div>实付:<span class="Team_Coins">{{DataList.TeamBalance.ActualPay}}</span></div>
<div>待付:<span class="Team_Coins">{{DataList.TeamBalance.WaitPay}}</span></div> <div>待付:<span class="Team_Coins">{{DataList.TeamBalance.WaitPay}}</span></div>
<div>挂账总支出:<span>{{moneyFormat(AllCont.Expend)}}</span></div>
<div> <div>
注:成本单据总额(包含退款)+提成-小费收入-地接收入 注:成本单据总额(包含退款)+提成-小费收入-地接收入
</div> </div>
...@@ -229,7 +227,7 @@ ...@@ -229,7 +227,7 @@
<div>实际利润:<span>{{DataList.TeamBalance.ExpectedProfit}}</span></div> <div>实际利润:<span>{{DataList.TeamBalance.ExpectedProfit}}</span></div>
<div>当前利润:<span class="Team_Coins">{{DataList.TeamBalance.ActualProfit}}</span></div> <div>当前利润:<span class="Team_Coins">{{DataList.TeamBalance.ActualProfit}}</span></div>
<div> <div>
注:实收-(应付/实付)+佣金收入+自费收入-联运成本 注:实收-(应付/实付)+佣金收入+自费收入-联运成本+挂账总收入-挂账总支出+冲抵总收入-冲抵总支出
</div> </div>
</div> </div>
</div> </div>
...@@ -251,20 +249,21 @@ ...@@ -251,20 +249,21 @@
<div>联运成本:<span>¥{{DataList.LYCB}}</span></div> <div>联运成本:<span>¥{{DataList.LYCB}}</span></div>
</div> </div>
</el-col> </el-col>
<!-- <el-col :span="4"> <el-col :span="4">
<div class="Team_DList"> <div class="Team_DList">
<div class="Team_firstTitle"> <div class="Team_firstTitle">
<span class="Team_comCoinType Team_lirun"> <span class="Team_comCoinType Team_lirun">
<i class="iconfont icon-qian"></i> <i class="iconfont icon-qian"></i>
</span>挂账信息 </span>挂账信息
</div> </div>
<div class="Team_Incontent"> <div class="Team_Incontent">
<div>挂账总金额:<span>¥{{moneyFormat(AllCont.Income - AllCont.Expend)}}</span></div> <div>挂账总收入:<span>¥{{moneyFormat(DataList.TeamBalance.GZIncome)}}</span></div>
<div>挂账总支出:<span>¥{{moneyFormat(AllCont.Expend)}}</span></div> <div>挂账总支出:<span>¥{{moneyFormat(DataList.TeamBalance.GZExpend)}}</span></div>
<div>挂账总收入:<span>¥{{moneyFormat(AllCont.Income)}}</span></div> <div>冲抵总收入:<span>¥{{moneyFormat(DataList.TeamBalance.CDIncome)}}</span></div>
<div>冲抵总支出:<span>¥{{moneyFormat(DataList.TeamBalance.CDExpend)}}</span></div>
</div> </div>
</div> </div>
</el-col> --> </el-col>
<el-col :span="4"> <el-col :span="4">
<div class="Team_DList"> <div class="Team_DList">
<div class="Team_firstTitle"> <div class="Team_firstTitle">
...@@ -1079,6 +1078,81 @@ ...@@ -1079,6 +1078,81 @@
</template> </template>
</table> </table>
</div> </div>
<div class="Team_collection" v-loading="loading">
<div class="clearfix TB_PrintDiv">
<div class="TB_comtitle TB-Title">挂账冲抵</div>
</div>
<div class="clearfix TB_PrintDiv">
<div class="TB_comtitle TB-Title">冲抵单据:</div>
</div>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<th width="180">单号</th>
<th width="200">冲抵金额</th>
<th width="500">挂账类型</th>
<th width="500">挂账对象</th>
<th width="500">单据状态</th>
<th width="300">创建时间</th>
<th width="200">创建人</th>
</tr>
<tr v-for="item in DataList.CDList">
<td><span class="Team_income" @click="goUrl('FinancialDocumentsDetail',item.FrID)">{{item.FrID}}</span></td>
<td>
<span>{{item.fmrMoney}}</span>
</td>
<td>
<span>{{item.HangingAccountsTypeStr}}</span>
</td>
<td>
<span>{{item.RemitterName}}:{{item.AccountNumber}}</span>
</td>
<td>
<span>{{item.StatusStr}}</span>
</td>
<td>
<span>{{item.CreateDateStr}}</span>
</td>
<td>
<span>{{item.createByStr}}</span>
</td>
</tr>
</table>
<div class="clearfix TB_PrintDiv">
<div class="TB_comtitle TB-Title">挂账单据:</div>
</div>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<th width="180">单号</th>
<th width="200">挂账金额</th>
<th width="500">挂账类型</th>
<th width="500">挂账对象</th>
<th width="500">单据状态</th>
<th width="300">创建时间</th>
<th width="200">创建人</th>
</tr>
<tr v-for="item in DataList.GuaZhangList">
<td><span class="Team_income" @click="goUrl('FinancialDocumentsDetail',item.FrID)">{{item.FrID}}</span></td>
<td>
<span>{{item.Money}}</span>
</td>
<td>
<span>{{item.HangingAccountsTypeStr}}</span>
</td>
<td>
<span>{{item.RemitterName}}:{{item.AccountNumber}}</span>
</td>
<td>
<span>{{item.StatusStr}}</span>
</td>
<td>
<span>{{item.CreateDateStr}}</span>
</td>
<td>
<span>{{item.createByStr}}</span>
</td>
</tr>
</table>
</div>
<div class="Team_collection" v-loading="loading"> <div class="Team_collection" v-loading="loading">
<div class="clearfix TB_PrintDiv"> <div class="clearfix TB_PrintDiv">
<div class="TB_comtitle TB-Title">非成本</div> <div class="TB_comtitle TB-Title">非成本</div>
...@@ -1250,43 +1324,6 @@ ...@@ -1250,43 +1324,6 @@
</tr> </tr>
</template> </template>
</table> </table>
<div class="clearfix TB_PrintDiv">
<div class="TB_comtitle TB-Title">挂账单据:</div>
</div>
<table class="singeRowTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<th width="180">单号</th>
<th width="200">挂账金额</th>
<th width="500">挂账类型</th>
<th width="500">挂账对象</th>
<th width="500">单据状态</th>
<th width="300">创建时间</th>
<th width="200">创建人</th>
</tr>
<tr v-for="item in HangingList">
<td>
<span>{{item.FrID}}</span>
</td>
<td>
<span>{{item.Money}}</span>
</td>
<td>
<span>{{item.HangingAccountsTypeStr}}</span>
</td>
<td>
<span>{{item.RemitterName}}:{{item.AccountNumber}}</span>
</td>
<td>
<span>{{item.StatusStr}}</span>
</td>
<td>
<span>{{item.CreateDateStr}}</span>
</td>
<td>
<span>{{item.createByStr}}</span>
</td>
</tr>
</table>
</div> </div>
</div> </div>
<div class="Team_BtnList" v-if="IsHaveAuth"> <div class="Team_BtnList" v-if="IsHaveAuth">
...@@ -1389,37 +1426,10 @@ ...@@ -1389,37 +1426,10 @@
otheryTotalyf: 0, otheryTotalyf: 0,
otheryTotalsf: 0, otheryTotalsf: 0,
}, },
AllCont: {
Income: 0,
Expend: 0,
},
HangingList: [], HangingList: [],
}; };
}, },
methods: { methods: {
getAllCont: function () {
let msg = {
TCID: this.TCID,
// FrID: 0,
// UpdateBy: '-1',
// RB_Branch_Id: -1,
// RB_Depart_Id: -2,
// sDate: '',
// eDate: '',
// Status: '-1',
// sTradeDate: '',
// eTradeDate: '',
// EmployeeId: 0,
// ClientType: 0,
}
this.apipost('Financial_post_GetHangingAccountTotalPrice', msg, res => {
if (res.data.resultCode === 1) {
this.AllCont = res.data.data;
} else {
this.$message.error(res.data.message)
}
}, null)
},
//判断数组包含字符串 //判断数组包含字符串
isExists(array, str) { isExists(array, str) {
var flag = false; var flag = false;
...@@ -1758,19 +1768,6 @@ this.moneyAll.otheryTotalsf+=item.PayMoney; ...@@ -1758,19 +1768,6 @@ this.moneyAll.otheryTotalsf+=item.PayMoney;
} }
}); });
}, },
getHangingAccountByTCIDList: function () {
this.apipost(
'Financial_post_GetHangingAccountByTCIDList', {
TCID: this.TCID
},
res => {
if (res.data.resultCode == 1) {
this.HangingList = res.data.data
}
},
err => {}
)
},
//权限验证 //权限验证
checkHasAuth() { checkHasAuth() {
// this.apipost( // this.apipost(
...@@ -1801,8 +1798,6 @@ this.moneyAll.otheryTotalsf+=item.PayMoney; ...@@ -1801,8 +1798,6 @@ this.moneyAll.otheryTotalsf+=item.PayMoney;
} }
this.checkHasAuth(); this.checkHasAuth();
this.getList(); this.getList();
this.getAllCont();
this.getHangingAccountByTCIDList();
} }
}; };
......
...@@ -498,6 +498,7 @@ ...@@ -498,6 +498,7 @@
<th style="width:150px;">更换酒店</th> <th style="width:150px;">更换酒店</th>
<th style="width:100px;">状态</th> <th style="width:100px;">状态</th>
<th style="width:150px;">使用数量/价格</th> <th style="width:150px;">使用数量/价格</th>
<th style="width:100px;">付款方式</th>
<th style="width:120px">占房时间</th> <th style="width:120px">占房时间</th>
</tr> </tr>
<template v-for="subItem in item.HotelOrderListReports"> <template v-for="subItem in item.HotelOrderListReports">
...@@ -532,9 +533,12 @@ ...@@ -532,9 +533,12 @@
<td> <td>
<a v-if="(childItem.OPState==1|| childItem.OPState==2 || childItem.DMCState==1 )"> <a v-if="(childItem.OPState==1|| childItem.OPState==2 || childItem.DMCState==1 )">
{{childItem.UseCount>0? childItem.UseCount+" 间" :""}} {{childItem.UseCount>0? childItem.UseCount+" 间" :""}}
{{childItem.CostPrice!=0?" 价格:"+childItem.CostPrice:""}} {{childItem.CostPriceNew>0?" 价格:"+childItem.CostPriceNew:(childItem.CostPrice!=0?" 价格:"+childItem.CostPrice:"")}}
</a> </a>
</td> </td>
<td>
{{childItem.PayTypeStr}}
</td>
<td> <td>
<template v-if="childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0)"> <template v-if="childItem.OPState==1||(childItem.OPState==2 && childItem.DMCState==0)">
{{childItem.CreateDateStr}}</template> {{childItem.CreateDateStr}}</template>
......
<style>
@import url('../../assets/css/domestic/TicketingModule.css');
</style>
<template>
<div v-if="dataList.length < 1">
</div>
<div v-else>
<div class="m_TicketingModule" v-if="type !== 7">
<div class="_tit">
<span class="_text">挂账冲抵列表</span>
<div>
<span class="_btn" v-if="tableShow" @click="tableShow=false">收起 <i class="iconfont icon-gengduo _rotate"></i> </span>
<span class="_btn" v-else @click="tableShow=true">展开 <i class="iconfont icon-gengduo"></i> </span>
</div>
</div>
<div v-show="tableShow" class="_padding_20_15">
<table class="singeRowTable" style="border:1px solid #E6E6E6;" cellspacing="0" cellpadding="0">
<tr>
<th>费用类型</th>
<th>团号</th>
<th>财务单据</th>
<th>收支类型</th>
<th>冲抵金额</th>
<th>对象名称</th>
<th>备注</th>
<th>制单时间</th>
<th>制单人</th>
</tr>
<tr v-for="(item, index) in dataList" :key="index">
<td>{{item.CostTypeName}}</td>
<td>{{item.TCNUM}}</td>
<td>{{item.FrID}}</td>
<td>{{item.HangingAccountsTypeStr}}</td>
<td>{{item.fmrMoney}}</td>
<td>{{item.RemitterName}}</td>
<td>{{item.Remark}}</td>
<td>{{item.CreateDateStr}}</td>
<td>{{item.createByStr}}</td>
</tr>
</table>
</div>
</div>
<div v-else class="m_TicketingModule" >
<div class="_tit">
<span class="_text">挂账冲抵列表</span>
<div>
<span class="_btn" v-if="tableShow" @click="tableShow=false">收起 <i class="iconfont icon-gengduo _rotate"></i> </span>
<span class="_btn" v-else @click="tableShow=true">展开 <i class="iconfont icon-gengduo"></i> </span>
</div>
</div>
<div v-show="tableShow" class="_padding_20_15">
<table class="singeRowTable" style="border:1px solid #E6E6E6;" cellspacing="0" cellpadding="0">
<tr>
<th>财务单据</th>
<th>费用类型</th>
<th>收支类型</th>
<th>金额</th>
<th>备注</th>
<th>制单时间</th>
<th>制单人</th>
</tr>
<tr v-for="(item, index) in dataList" :key="index">
<td>{{item.FrID}}</td>
<td>
<span v-for="(t, index) in item.DetailList">{{t.CostTypeName}} <span v-if="index!==item.DetailList.length-1">,</span> </span>
</td>
<td>{{item.Type === 1 ? '收' : '支'}}</td>
<td>{{item.Money}}</td>
<td>{{item.Remark}}</td>
<td>{{item.CreateDateStr}}</td>
<td>{{item.createByStr}}</td>
</tr>
</table>
</div>
</div>
</div>
</template>
<script>
export default {
props:["dataList", 'type'],
data(){
return{
tableShow:false,
}
},watch:{
},created(){
},mounted(){
},methods:{
}
}
</script>
...@@ -53,13 +53,20 @@ ...@@ -53,13 +53,20 @@
<div class="Ck_hotelInfo"> <div class="Ck_hotelInfo">
<span style="color:red">{{UseDate}}</span> 酒店库存信息 <span style="color:red">{{UseDate}}</span> 酒店库存信息
</div> </div>
<div class="cm_hotelTitle"> <div class="cm_hotelTitle clearfix">
地区筛选: <div style="float:left;">
<el-select filterable v-model="ProvinceId" @change="getCheckHotel()" :placeholder="$t('pub.pleaseSel')"> 地区筛选:
<el-option label="不限" :value='0'></el-option> <el-select filterable v-model="qMsg.ProvinceId" class="w120" :placeholder="$t('pub.pleaseSel')">
<el-option v-for="item in ProvinceList" :label='item.Name' :value='item.ID' :key='item.ID'> <el-option label="不限" :value='0'></el-option>
</el-option> <el-option v-for="item in ProvinceList" :label='item.Name' :value='item.ID' :key='item.ID'>
</el-select> </el-option>
</el-select>
</div>
<div style="float:left;margin-left:15px;">
酒店名称:
<el-input type="text" v-model="qMsg.Name" class="w120" @keyup.native.enter="getCheckHotel()" placeholder="请输入关键字"></el-input>
<input type="button" class="normalBtn" value="查询" @click="getCheckHotel()" />
</div>
</div> </div>
<div> <div>
<el-tabs type="border-card" v-loading="loading" v-if="IsShow" > <el-tabs type="border-card" v-loading="loading" v-if="IsShow" >
...@@ -85,7 +92,10 @@ ...@@ -85,7 +92,10 @@
loading:false, loading:false,
dataList: [], dataList: [],
ProvinceList: [], ProvinceList: [],
ProvinceId: 0, //选择个省份编号 qMsg:{
ProvinceId: 0, //选择个省份编号
Name:"",//酒店名称
},
IsShow:false, IsShow:false,
ckedHotel:{} ckedHotel:{}
}; };
...@@ -101,7 +111,8 @@ ...@@ -101,7 +111,8 @@
IsMoreThanZero: 0, IsMoreThanZero: 0,
Country: "651", Country: "651",
IsAllHotel: 1, IsAllHotel: 1,
Province: this.ProvinceId, Province: this.qMsg.ProvinceId,
Name:this.qMsg.Name,
sDate: this.UseDate sDate: this.UseDate
}, res => { }, res => {
this.loading=false; this.loading=false;
......
...@@ -274,6 +274,7 @@ ...@@ -274,6 +274,7 @@
<th style="width:150px;">更换酒店</th> <th style="width:150px;">更换酒店</th>
<th style="width:100px;">状态</th> <th style="width:100px;">状态</th>
<th style="width:150px;">使用数量/价格</th> <th style="width:150px;">使用数量/价格</th>
<th style="width:100px;">付款方式</th>
<th style="width:120px">占房时间</th> <th style="width:120px">占房时间</th>
</tr> </tr>
<template v-for="hotelItem in item.CommonReport.PriceHotelResult"> <template v-for="hotelItem in item.CommonReport.PriceHotelResult">
...@@ -308,9 +309,12 @@ ...@@ -308,9 +309,12 @@
<td> <td>
<a v-if="(hotelSubItem.OPState==1|| hotelSubItem.OPState==2 || hotelSubItem.DMCState==1 )"> <a v-if="(hotelSubItem.OPState==1|| hotelSubItem.OPState==2 || hotelSubItem.DMCState==1 )">
{{hotelSubItem.UseCount>0? hotelSubItem.UseCount+" 间" :""}} {{hotelSubItem.UseCount>0? hotelSubItem.UseCount+" 间" :""}}
{{hotelSubItem.CostPrice!=0?" 价格:"+hotelSubItem.CostPrice:""}} {{hotelSubItem.CostPriceNew>0?" 价格:"+hotelSubItem.CostPriceNew:(hotelSubItem.CostPrice!=0?" 价格:"+hotelSubItem.CostPrice:"")}}
</a> </a>
</td> </td>
<td>
{{hotelSubItem.PayTypeStr}}
</td>
<td> <td>
<template v-if="hotelSubItem.OPState==1||(hotelSubItem.OPState==2 && hotelSubItem.DMCState==0)"> <template v-if="hotelSubItem.OPState==1||(hotelSubItem.OPState==2 && hotelSubItem.DMCState==0)">
{{hotelSubItem.CreateDateStr}}</template> {{hotelSubItem.CreateDateStr}}</template>
...@@ -403,13 +407,34 @@ ...@@ -403,13 +407,34 @@
<el-button @click='openChart(item)' icon="iconfont icon-wechat" type="primary" <el-button @click='openChart(item)' icon="iconfont icon-wechat" type="primary"
style="background:#6DD875; border-color:#6DD875"></el-button> style="background:#6DD875; border-color:#6DD875"></el-button>
</el-tooltip> </el-tooltip>
<el-tooltip v-if="item.LineId==14 && item.IsOpenHotel==0" class="item" effect="dark" content="关闭酒店操作" placement="top-start"> <el-tooltip class="item" effect="dark" content="酒店操作" placement="top-start" v-if="item.LineId==14">
<el-button @click="SetIsOpenHotelService(1,item.TCID)" <el-popover placement="bottom" width="300" trigger="click" v-model="item.isShowPop">
style="background:#E95252; border-color:#E95252" icon="iconfont icon-suo" type="primary" <table class="dmcSetTable">
></el-button> <tr>
</el-tooltip> <td colspan="2" style="text-align:center;">
<el-tooltip v-if="item.LineId==14 && item.IsOpenHotel==1" class="item" effect="dark" content="开启酒店操作" placement="top-start"> <el-checkbox v-model="UpdateHotelMsg.UpdateType" :true-label="UnCheckedVaule" :false-label="CheckedVaule">当团</el-checkbox>
<el-button icon="iconfont icon-suo1" type="primary" style="background:green; border-color:green" @click="SetIsOpenHotelService(0,item.TCID)"></el-button> <el-checkbox v-model="UpdateHotelMsg.UpdateType" :true-label="CheckedVaule" :false-label="UnCheckedVaule">批量修改</el-checkbox>
</td>
</tr>
<tr v-if="UpdateHotelMsg.UpdateType==1">
<td>
<el-date-picker class='w135' v-model="UpdateHotelMsg.StartDate" style="display:inline-block;" value-format="yyyy-MM-dd" type="date"
:picker-options="pickerBefore"></el-date-picker>
</td>
<td>
<el-date-picker class='w135' v-model="UpdateHotelMsg.EndDate" style="display:inline-block;" value-format="yyyy-MM-dd" type="date"
:picker-options="pickerAfter"></el-date-picker>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:center;">
<input type="button" class="normalBtn" @click="SetIsOpenHotelService(item)" :value="item.IsOpenHotel==0?'关闭酒店操作':'开启酒店操作'"/>
</td>
</tr>
</table>
<el-button v-if="item.IsOpenHotel==0" slot="reference" style="background:#E95252; border-color:#E95252" icon="iconfont icon-suo" type="primary"></el-button>
<el-button v-if="item.IsOpenHotel==1" slot="reference" icon="iconfont icon-suo1" type="primary" style="background:green; border-color:green"></el-button>
</el-popover>
</el-tooltip> </el-tooltip>
</el-button-group> </el-button-group>
</div> </div>
...@@ -476,6 +501,17 @@ ...@@ -476,6 +501,17 @@
AirLineId: 0, AirLineId: 0,
CreateBy: 0, CreateBy: 0,
}, },
CheckedVaule: 1,
UnCheckedVaule: 0,
//酒店更新
UpdateHotelMsg:{
UpdateType:0, //0-当团,1-批量修改
StartDate:"", //开始日期
EndDate:"", //结束日期
LineId:14,
TCID:0,
Status:0
},
thLengthTitle: [], thLengthTitle: [],
list: [], list: [],
colspanTotal: 0, colspanTotal: 0,
...@@ -517,6 +553,22 @@ ...@@ -517,6 +553,22 @@
let startTime = new Date(this.msg.StartDate) let startTime = new Date(this.msg.StartDate)
return startTime.getTime() >= time.getTime() return startTime.getTime() >= time.getTime()
} }
},
pickerBefore:{
disabledDate: time => {
if (this.UpdateHotelMsg.EndDate == null) {
return false;
} else {
let endTime = new Date(this.UpdateHotelMsg.EndDate)
return endTime.getTime() < time.getTime()
}
}
},
pickerAfter:{
disabledDate: time => {
let startTime = new Date(this.UpdateHotelMsg.StartDate)
return startTime.getTime() >= time.getTime()
}
} }
} }
}, },
...@@ -548,17 +600,33 @@ ...@@ -548,17 +600,33 @@
}, err => {}) }, err => {})
}, },
//开启关闭酒店操作 //开启关闭酒店操作
SetIsOpenHotelService(status,TCID) { SetIsOpenHotelService(item) {
this.apipost('dmcstatistics_post_SetIsOpenHotelService', { item.isShowPop=true;
TCID:TCID, if(item.IsOpenHotel==0){
status:status this.UpdateHotelMsg.Status=1;
}, res => { }else{
this.UpdateHotelMsg.Status=0;
}
if(this.UpdateHotelMsg.UpdateType==1){
if(this.UpdateHotelMsg.StartDate==""||this.UpdateHotelMsg.EndDate==""){
this.Error('请选择日期')
return
}
}
this.UpdateHotelMsg.TCID = item.TCID
this.apipost('dmcstatistics_post_SetIsOpenHotelService', this.UpdateHotelMsg, res => {
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.$message.success(res.data.message); this.Success(res.data.message);
this.getList(); this.getList();
this.UpdateHotelMsg.UpdateType=0;
this.UpdateHotelMsg.StartDate="";
this.UpdateHotelMsg.EndDate="";
this.UpdateHotelMsg.TCID=0;
this.UpdateHotelMsg.Status=0;
} else { } else {
this.$message.error(res.data.message); this.Error(res.data.message);
} }
item.isShowPop=false;
}, err => {}) }, err => {})
}, },
getLineList() { getLineList() {
...@@ -711,6 +779,11 @@ ...@@ -711,6 +779,11 @@
if (res.data.resultCode == 1) { if (res.data.resultCode == 1) {
this.total = res.data.data.count; this.total = res.data.data.count;
this.list = res.data.data.pageData.data; this.list = res.data.data.pageData.data;
if(this.list.StaticsReportList){
this.list.StaticsReportList.forEach(x => {
x.isShowPop = false
});
}
} else { } else {
this.$message.error(res.data.message); this.$message.error(res.data.message);
} }
...@@ -925,5 +998,10 @@ ...@@ -925,5 +998,10 @@
.dmcMain .el-checkbox+.el-checkbox { .dmcMain .el-checkbox+.el-checkbox {
margin-left: 5px; margin-left: 5px;
} }
.dmcSetTable{
width:100%;
}
.dmcSetTable tr{
height:50px;
}
</style> </style>
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
<TravelNotice ref="TravelNotice" id="fourAnchor" @headCallBack="getNotice" :subArray="NoticeParameters" <TravelNotice ref="TravelNotice" id="fourAnchor" @headCallBack="getNotice" :subArray="NoticeParameters"
:NoticeData="NoticeData" v-bind:PostConfig="PostConfig" v-bind:AllCityList="AllCityList" v-bind:CountryID="PostConfig.CountryID"></TravelNotice> :NoticeData="NoticeData" v-bind:PostConfig="PostConfig" v-bind:AllCityList="AllCityList" v-bind:CountryID="PostConfig.CountryID"></TravelNotice>
<TravelPrice @saveMsg="PostConfig.IsUpdateHotel=1,SaveData(1)" ref="TravelPrice" id="fiveAnchor" @headCallBack="getPrice" :priceList="PriceList" v-if="TeamType==0" <TravelPrice @saveMsg="SaveData(1)" ref="TravelPrice" id="fiveAnchor" @headCallBack="getPrice" :priceList="PriceList" v-if="TeamType==0"
:PostConfig="PostConfig" :modifyTcid="modifyTcid" :TeamType="TeamType"></TravelPrice> :PostConfig="PostConfig" :modifyTcid="modifyTcid" :TeamType="TeamType"></TravelPrice>
<TravelPrice2 ref="TravelPrice" id="fiveAnchor" @headCallBack="getPrice" :PostDaysTrip="PostDaysTrip" v-if="TeamType==1" <TravelPrice2 ref="TravelPrice" id="fiveAnchor" @headCallBack="getPrice" :PostDaysTrip="PostDaysTrip" v-if="TeamType==1"
:priceList="PriceList" :PostConfig="PostConfig" :modifyTcid="modifyTcid" :TeamType="TeamType"></TravelPrice2> :priceList="PriceList" :PostConfig="PostConfig" :modifyTcid="modifyTcid" :TeamType="TeamType"></TravelPrice2>
......
...@@ -814,12 +814,12 @@ ...@@ -814,12 +814,12 @@
</tr> </tr>
<template v-for="(subItem,subIndex) in priceData.PriceHotelList"> <template v-for="(subItem,subIndex) in priceData.PriceHotelList">
<tr v-for="(childItem,childIndex) in subItem.SubList"> <tr v-for="(childItem,childIndex) in subItem.SubList">
<td style="background-color:#E6E6E6;color:#333;" v-if="childIndex==0" <td style="background-color:#E6E6E6;color:#333;" v-if="childIndex==0" :rowspan="subItem.SubList.length">
:rowspan="subItem.SubList.length">{{subItem.UseDay}}</td> {{subItem.UseDay}}</td>
<td style="text-align:left;padding-left:3px;"> <td style="text-align:left;padding-left:3px;">
{{childItem.HotelName}} {{childItem.HotelName}}
</td> </td>
<td style="text-align:left;padding-left:3px;"> <td style="text-align:left;padding-left:3px;">
<span v-if="childItem.UseCount>0 && subItem.SubList.length==1"> <span v-if="childItem.UseCount>0 && subItem.SubList.length==1">
<a style="color:green" v-if="childItem.HotelName!='温馨的家'"> <a style="color:green" v-if="childItem.HotelName!='温馨的家'">
<template v-if="childItem.OPState==1"> <template v-if="childItem.OPState==1">
...@@ -836,7 +836,7 @@ ...@@ -836,7 +836,7 @@
<span style="color:green">本团使用:{{childItem.UseCount}} <span style="color:green">本团使用:{{childItem.UseCount}}
{{childItem.CostPrice!=0?"价格:"+childItem.CostPrice:""}}</span> {{childItem.CostPrice!=0?"价格:"+childItem.CostPrice:""}}</span>
</span> </span>
<span style="color:#E95252;" v-if="childItem.HotelName!='温馨的家'"> 【剩余:{{childItem.RemainingInventory}}】 <span style="color:#E95252;" v-if="childItem.HotelName!='温馨的家'"> 【剩余:{{childItem.RemainingInventory}}】
</span> </span>
</td> </td>
<td> <td>
...@@ -864,14 +864,18 @@ ...@@ -864,14 +864,18 @@
</template> </template>
</table> </table>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<button class="normalBtn" type="primary" @click="saveHoteluseDetail()" v-if="!(priceData.IsOpenHotel&&priceData.IsOpenHotel==1)" <button class="normalBtn" type="primary" @click="PostConfig.IsUpdateHotel=1,saveHoteluseDetail(1)"
:class="{'disClick':!isSaved}">{{btnText}}</button> &nbsp; v-if="!(priceData.IsOpenHotel&&priceData.IsOpenHotel==1)" :class="{'disClick':!isSaved}">{{btnText}}</button>
&nbsp;
<button class="normalBtn" type="primary" @click="PostConfig.IsUpdateHotel=2;saveHoteluseDetail(2)"
v-if="!(priceData.IsOpenHotel&&priceData.IsOpenHotel==1)"
:class="{'disClick':!isSaved}">{{btnTongBu}}</button> &nbsp;
<button class="hollowFixedBtn" :class="{'disClick':!isSaved}" <button class="hollowFixedBtn" :class="{'disClick':!isSaved}"
@click="cancelHotelUseDetail()">{{$t('pub.cancelBtn')}}</button> @click="cancelHotelUseDetail()">{{$t('pub.cancelBtn')}}</button>
<template v-if="priceData.IsOpenHotel&&priceData.IsOpenHotel==1"> <template v-if="priceData.IsOpenHotel&&priceData.IsOpenHotel==1">
<br/> <br />
<span style="color:red;font-weight:bold;" >※ 地接已关闭酒店操作,如需修改请联系地接OP.</span> <span style="color:red;font-weight:bold;">※ 地接已关闭酒店操作,如需修改请联系地接OP.</span>
</template> </template>
</div> </div>
</el-dialog> </el-dialog>
...@@ -921,9 +925,10 @@ ...@@ -921,9 +925,10 @@
uploadList: [], uploadList: [],
CheckedVaule: 1, //选中值 CheckedVaule: 1, //选中值
UnCheckedVaule: 2, //没选中 UnCheckedVaule: 2, //没选中
UnCheckedLessPrice: 0,//不少价 UnCheckedLessPrice: 0, //不少价
isSaved: true, isSaved: true,
btnText: '保存', btnText: '保存',
btnTongBu: '同步酒店',
//日期数组 //日期数组
days: [], days: [],
dateString: "2016-01-02", dateString: "2016-01-02",
...@@ -1575,14 +1580,22 @@ ...@@ -1575,14 +1580,22 @@
}, },
//保存酒店使用情况 //保存酒店使用情况
saveHoteluseDetail() { saveHoteluseDetail(type) {
var that = this; var that = this;
this.Confirm("是否确定提交选中的酒店?", function () { var str = "是否确定提交选中的酒店?";
if (type == 2) {
str = "是否同步行程酒店到地接?";
}
this.Confirm(str, function () {
if (that.isSaved) { if (that.isSaved) {
that.isSaved = false; that.isSaved = false;
that.$emit("saveMsg"); that.$emit("saveMsg");
} }
that.btnText = '保存中...' if (type == 2) {
that.btnTongBu = "同步酒店...";
} else {
that.btnText = '保存...';
}
}); });
}, },
//取消 //取消
...@@ -1602,7 +1615,8 @@ ...@@ -1602,7 +1615,8 @@
//保存完成初始化 //保存完成初始化
initStatus() { initStatus() {
this.isSaved = true; this.isSaved = true;
this.btnText = '保存' this.btnText = '保存';
this.btnTongBu = "同步酒店";
}, },
//获取酒店信息 //获取酒店信息
getHotelList(item, event) { getHotelList(item, event) {
......
...@@ -3457,6 +3457,14 @@ export default { ...@@ -3457,6 +3457,14 @@ export default {
title: '定房查询' title: '定房查询'
}, },
}, },
{
path: '/roomQuery3', //供应商->定房查询
name: 'roomQuery3',
component: resolve => require(['@/components/Supplier/roomQuery2'], resolve),
meta: {
title: '定房查询'
},
},
{ {
path: '/HotelQueryList2', //供应商->酒店查询 path: '/HotelQueryList2', //供应商->酒店查询
name: 'HotelQueryList2', name: 'HotelQueryList2',
......
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