Commit 95b6ebeb authored by liudong1993's avatar liudong1993

1 酒店制单控制

parent 407fccc7
......@@ -2197,18 +2197,18 @@ import SpecialList from '../SalesModule/SpecialList.vue';
confirmMsg.push(this.$t('objFill.chongqizdssfblts'));
}
if (this.msg.HelpBranchId > -1) {
let that = this
let brandName = this.$t('objFill.querenypu');
this.companyList.forEach(item => {
if (item.Id == this.msg.HelpBranchId) {
brandName += item.BName;
}
});
brandName += (this.$route.query.Type == 1 ? this.$t('objFill.daishou') : this.$t('objFill.daifu')) + this.$t(
'objFill.cibikuanxianbmbh');
confirmMsg.push(brandName);
}
// if (this.msg.HelpBranchId > -1) {
// let that = this
// let brandName = this.$t('objFill.querenypu');
// this.companyList.forEach(item => {
// if (item.Id == this.msg.HelpBranchId) {
// brandName += item.BName;
// }
// });
// brandName += (this.$route.query.Type == 1 ? this.$t('objFill.daishou') : this.$t('objFill.daifu')) + this.$t(
// 'objFill.cibikuanxianbmbh');
// confirmMsg.push(brandName);
// }
if (confirmMsg && confirmMsg.length > 0) {
let title = z ? this.$t('fnc.zancun') : this.$t('fnc.tijiao')
const h = this.$createElement
......@@ -2256,16 +2256,6 @@ import SpecialList from '../SalesModule/SpecialList.vue';
}
})
}).catch(() => {
if (this.orderObj && (this.orderObj.EduCommissionEmp || this.orderObj.queryObj)) {
location.reload()
this.$router.push({
name: 'leaderReimbursement',
query: {
...this.orderObj.queryObj,
'blank': 'y',
}
});
} else {
this.$router.push({
name: 'FinancialDocuments',
query: {
......@@ -2273,7 +2263,6 @@ import SpecialList from '../SalesModule/SpecialList.vue';
'InPay': this.$route.query.InPay
}
});
}
});
} else {
this.resultCode = res.data.resultCode;
......@@ -2740,7 +2729,10 @@ import SpecialList from '../SalesModule/SpecialList.vue';
this.apipost('Financial_post_Get', {
ID: id,
TempId: tempId,
TCIDList: (this.orderObj && this.orderObj.TCIDList) ? this.orderObj.TCIDList : []
TCIDList: (this.orderObj && this.orderObj.TCIDList) ? this.orderObj.TCIDList : [],
DMCOrderId: this.orderObj && this.orderObj.EduCommissionEmp ? this.orderObj.EduCommissionEmp :"",
OrderSource: this.orderObj && this.orderObj.OrderSource ? this.orderObj.OrderSource :0,
BranchId: this.$route.query.companyID
}, res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
......
......@@ -56,6 +56,19 @@
{{$t('ground.jisuan2')}} <br />
{{$t('ground.sidaobsuan')}}<br />
{{$t('objFill.fksxianfsps')}}
<div style="float: right; margin-top:-20px">
<span>*房间数量,预定人数,单价需要仔细录入,点击制单将带此数据进入单据; </span>
<el-select class='w120 sel' v-model='selectFlowId'
filterable :placeholder="$t('ground.qingxuanzegys')">
<el-option label="请选择流程" :value='0'></el-option>
<el-option v-for="(fitem,findex) in FlowList" :key="findex"
:label="fitem.Name" :value="fitem.Id">
</el-option>
</el-select>
<input type="button" class="fr normalBtn" :value="$t('objFill.precharge')" @click="CreateFinance(2)" />
<el-button type="primary" class="fr normalBtn" @click="CreateFinance(1)">制单</el-button>
</div>
</div>
<div style="width: 100%; overflow-x: auto;padding-bottom: 10px; " :style="{height: boxHeight + 'px'}"
class="ownScrollbarStyle" ref="ownScrollbarStyle">
......@@ -139,6 +152,15 @@
</el-popover>
</el-tooltip>
</th>
<th class="fz14" style="border:none; width:50px"></th>
<th class="fz14" style="border:none; min-width:300px">
未绑定酒店单据:
<span v-for="(fitem,findex) in OtherFinaceList" :key="findex">
<span :style="(fitem.Status==3?'color:red':fitem.Status==1?'color:#3fc4ff':fitem.Status==2?'color:#ff980':'color:black')+';cursor: pointer;'"
@click="GoFinance(fitem)">
{{fitem.FrID}} [{{fitem.WBMoney}}] {{(findex<(OtherFinaceList.length-1)?'、':'')}}</span>
</span>
</th>
</tr>
</thead>
</table>
......@@ -222,6 +244,16 @@
</el-tooltip>
</template>/{{$t('hotel.hotel_people')}})</font>
</span>
<br/>
<span>
<el-checkbox v-model="subItem.check" style="font-weight:bold;font-size:14px;margin-top:10px;margin-bottom:10px">制单</el-checkbox>
</span>
<span v-for="(fitem,findex) in subItem.FinanceList" :key="findex">
<br/>
<span :style="(fitem.Status==3?'color:red':fitem.Status==1?'color:#3fc4ff':fitem.Status==2?'color:#ff980':'color:black')+';cursor: pointer;'"
@click="GoFinance(fitem)">
{{fitem.FrID}} [{{fitem.WBMoney}}]</span>
</span>
</td>
<!-- 机位总数/(Y/E/F) -->
<td v-if="childIndex==0" :rowspan="subItem.OrderDetailsList.length">
......@@ -317,7 +349,7 @@
</td>
<!-- 房间数 -->
<td>
<el-input class='w40 tcenter' maxlength="2" @keyup.native="checkPrice(childItem,'HouseTypeCount')"
<el-input class='w40 tcenter' maxlength="4" @keyup.native="checkPrice(childItem,'HouseTypeCount')"
v-model='childItem.HouseTypeCount' :disabled="IsEditHotelPeople==0?true:false"></el-input>
</td>
<td>
......@@ -668,6 +700,7 @@
<p>{{$t('active.ld_noData')}}</p>
</div>
</div>
<offset :isShow="cdState" :obj="queryObj" @close="cdState=false"></offset>
</div>
</template>
<script>
......@@ -675,6 +708,7 @@
import comCheckHotel from "../commonPage/comCheckHotel.vue";
import commonHotelLog from "../commonPage/commonHotelLog.vue";
import setHotelStock from "../commonPage/setHotelStock.vue";
import offset from '../public/offset.vue';
export default {
data() {
return {
......@@ -682,6 +716,9 @@
LineId: 0,
EditBtn: false, //房餐景点修改权限
defaultSelectValue: 0,
selectFlowId: 0,
HOrderIds:[],
FlowList:[],
dataList: [],
roomList: [],
TCNUM: '',
......@@ -764,12 +801,27 @@
currentUserInfo: {},
saveLoading: false, //保存,防止重复提交
allTotalPrice: 0,
IsPrerealContrast: false,
PrerealContrastMsg:'',
PrerealContrastOfferId:0,
roomZeroNum: 0,
queryObj:null,
cdState: false,
Handmsg: {
OtherType: 7,
ReFinanceId: 0,
Rate: 0,
TCNUM: '',
czState: true,
},
OtherFinaceList:[]
}
},
components: {
comCheckHotel,
commonHotelLog,
setHotelStock,
offset
},
methods: {
getHouseTypeName(subItem, childItem) {
......@@ -1084,6 +1136,7 @@
this.CreateBy = res.data.data.CreateBy;
this.CreateByPhoto = res.data.data.CreateByPhoto;
this.CreateByAccount = res.data.data.CreateByAccount;
this.OtherFinaceList= res.data.data.FinanceList;
if (list != null && list.length > 0) {
list.forEach((item, sIndex) => {
item.HotelOrderList.forEach(subItem => {
......@@ -1165,7 +1218,7 @@
});
})
}
if (type == 1) {
if (type == 1 || type == 2 || type == 3) {
this.dataList.forEach(item => {
item.HotelOrderList.forEach(subItem => {
subItem.HotelOrderState = 1;
......@@ -1215,7 +1268,14 @@
this.loading = false;
this.saveLoading = false;
if (res.data.resultCode == 1) {
this.getList();
if(type==2){
this.GoAddFinance();
}else if(type==3){
this.isOffset(1,2);
}
else{
this.getList();
}
this.Success(res.data.message);
} else {
this.Error(res.data.message);
......@@ -1263,6 +1323,162 @@
}
});
},
Financial_post_GetList(){ //获取
this.apipost('Financial_post_GetList',{PortType:4,TempLateClass:2},res=>{
if(res.data.resultCode==1){
this.FlowList =res.data.data;
}else{
this.$message.error(res.data.message)
}
},err=>{})
},
//跳至单据
CreateFinance(type){
if(this.selectFlowId<=0 && type==1){this.$message.info("请选择流程"); return;}
this.HOrderIds =[];
this.dataList.forEach(item => {
item.HotelOrderList.forEach(subItem => {
if(subItem.check){ this.HOrderIds.push(subItem.OrderID); subItem.check=false;}
});
})
if(this.HOrderIds.length==0){this.$message.info("请勾选酒店"); return;}
if(type==1){
this.saveList(2);
}else{
this.saveList(3);
}
},
GoAddFinance(){
let FlowName = this.FlowList.find(item => item.Id === this.selectFlowId).Name;
let orderObj={
"OrderID": 0,
"OrderSource": 1,
"Obj": {},
"SourceID": this.$route.query.id,
"TCIDList": [this.$route.query.id],
"LineId": this.LineId,
"EduCommissionEmp": this.HOrderIds.join(',')
};
//跳转制单界面
this.$router.push({
name: 'addFinancialDocuments',
query:{
"id":this.selectFlowId,
"Name":FlowName,
"Type":2,
"orderObj":JSON.stringify(orderObj),
'path':'roomReservationsDetails',
'IsUploadPic':1,
'companyID':this.$route.query.OutBranchId,
blank:'y',
tab: '新增付款单'
}
})
},
GoFinance(item){
if(item.Status==3&& item.CreateBy == this.currentUserInfo.EmployeeId){
//跳过去修改
this.$router.push({
name: 'addFinancialDocuments',
query:{
type:2,
FrID:item.FrID,
edit:true,
blank:'y',
tab: '修改财务单据'
}
})
}else{
//跳详情
this.$router.push({
name: 'FinancialDocumentsDetail',
query:{
"id":item.FrID,
blank:'y',
tab: '单据详情'
}
})
}
},
isOffset(_orderSource, _type) {
if(this.IsPrerealContrast){
if(_orderSource==1 && this.roomZeroNum>0){
this.$confirm('存在用款计划酒店数据未维护价格,请维护单价后再试', this.$t('tips.tips'), {
confirmButtonText: this.$t('objFill.ckbjd'),
cancelButtonText: this.$t('pub.cancelBtn'),
type: 'warning'
}).then(() => {
this.$router.push({
name: 'OfferChange',
query: {
'offerid':this.PrerealContrastOfferId,
'Qtype':3,
'blank': 'y',
}
});
}).catch(() => {
});
return;
}else if(this.PrerealContrastMsg!=''){
this.$confirm(this.PrerealContrastMsg, this.$t('tips.tips'), {
confirmButtonText: this.$t('objFill.ckbjd'),
cancelButtonText: this.$t('pub.cancelBtn'),
type: 'warning'
}).then(() => {
this.$router.push({
name: 'OfferChange',
query: {
'offerid':this.PrerealContrastOfferId,
'Qtype':3,
'blank': 'y',
}
});
}).catch(() => {
});
return;
}
}
let TCIDARR = [this.$route.query.id];
let orderObj = {
OrderID: 0,
OrderSource: _orderSource,
Obj: {},
SourceID: this.$route.query.id,
TCIDList: TCIDARR,
LineId : this.LineId,
EduCommissionEmp: this.HOrderIds.join(',')
}
// 冲抵
let query = {
'czmsg': this.Handmsg,
'Type': _type,
'path': 'roomReservationsDetails',
'companyID': this.$route.query.OutBranchId,
'blank': 'y',
'orderObj': JSON.stringify(orderObj),
'OrderSource': _orderSource,
'searchTitle': '分摊'
};
this.queryObj = query
this.cdState = true
},
getTravelPrerealContrast(){
this.apipost('financestatistics_post_GetTravelPrerealContrast', {
TCID: this.$route.query.id
}, res => {
if (res.data.resultCode == 1) {
if(res.data.data.State==1){
this.IsPrerealContrast=true;
this.PrerealContrastMsg = res.data.data.Msg;
this.PrerealContrastOfferId = res.data.data.OfferId;
this.roomZeroNum = res.data.data.roomZeroNum;
}
} else {}
}, err => {})
}
},
mounted() {
this.currentUserInfo = this.getLocalStorage();
......@@ -1290,6 +1506,8 @@
this.offsetwidth = width;
this.initSupplier();
this.getList();
this.Financial_post_GetList();
this.getTravelPrerealContrast();
}
}
......
......@@ -291,8 +291,8 @@
@click="goUrl('roomSure',subItem,dayItem.DayStr,'订房管理')"
style="cursor:pointer;text-decoration:underline;"
:class="subItem.InventoryType==4 ? 'stock1' : 'stock2'">{{$t('hotel.hotel_roomUsed')}}:
{{subItem.UseInventory}}</a>
<span v-else>{{$t('hotel.hotel_roomUsed')}}: {{subItem.UseInventory}}</span>
{{subItem.UseInventory}} {{(subItem.UseAmount>0?'['+$t('objFill.shanke')+']':'')}}</a>
<span v-else>{{$t('hotel.hotel_roomUsed')}}: {{subItem.UseInventory}} {{(subItem.UseAmount>0?'['+$t('objFill.shanke')+']':'')}}</span>
)
</p>
</div>
......
......@@ -1405,6 +1405,7 @@
query: {
"id": obj.TCIDS,
'TCNUM': obj.TCNUMS,
'OutBranchId': obj.OutBranchId,
'flightTotal': obj.TotalSeat,
'GuestNum': obj.OrderGuestNum,
'NewCombinationNum': outItem.NewCombinationNum,
......
......@@ -38,11 +38,12 @@
</table>
<p class="teamRevenueExpenditureTitle">
{{$t('hotel.hotel')}}
<span class="fr" style="margin-top: -8px;">
<span class="fr" style="margin-top: -8px;" v-if="IsJapanLine==false">
<input type="button" class="normalBtn" :value="$t('objFill.xingzengfk')" @click="goUrl(1,2)" /><input type="button" class="normalBtn"
:value="$t('objFill.xingzengshouk')" @click="goUrl(1,1)" />
<input type="button" class="normalBtn" :value="$t('objFill.precharge')" @click="isOffset(1,2)" />
</span>
<span class="fr" style="margin-top: -8px;" v-else> *酒店请至地接总表订房管理制单</span>
</p>
<table border="0" cellspacing="1" cellpadding="0" class="teamRevenueExpenditureTable">
<tr>
......@@ -395,7 +396,8 @@
IsPrerealContrast: false,
PrerealContrastMsg:'',
PrerealContrastOfferId:0,
roomZeroNum: 0
roomZeroNum: 0,
IsJapanLine: false
}
},
methods: {
......@@ -728,6 +730,7 @@
this.getTuanMsg()
let userInfo = this.getLocalStorage();
if(userInfo.RB_Group_id==2 && this.LineId==14){
this.IsJapanLine=true;//日本线 酒店制单特殊处理
this.getTravelPrerealContrast();
}
}
......
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