Commit 6c4eadd6 authored by 罗超's avatar 罗超

新的出团通知书

parent d907e038
......@@ -29,9 +29,10 @@
"file-saver": "^2.0.0",
"fs": "^0.0.1-security",
"google-translate-api": "^2.3.0",
"html-to-image": "^1.11.13",
"html2canvas": "^1.0.0-alpha.12",
"js-md5": "^0.7.3",
"jspdf": "^2.5.1",
"jspdf": "^3.0.3",
"lrz": "^4.9.40",
"mapbox-gl": "^2.15.0",
"moment": "^2.24.0",
......
......@@ -256,7 +256,7 @@
body {
margin: 0;
padding: 0;
background: #f9f9f9 url(assets/img/img-bg.png) no-repeat bottom left/100% auto;
background: #f9f9f9 no-repeat bottom left/100% auto;/*url(assets/img/img-bg.png) */
height: 100%;
}
......
......@@ -2251,7 +2251,7 @@
" icon="iconfont icon-more"></el-button>
</el-popover>
</el-tooltip>
</el-button-group>
</td>
</tr>
......@@ -2289,10 +2289,10 @@
</div>
<div v-if="OrderDataList.LeaderInsurance && OrderDataList.LeaderInsurance.length>0">
<span>{{$t('objFill.v101.FinancialModule.baoxianmd')}}:</span>
<template v-if="InsuranceUpdate==false">
<template v-if="InsuranceUpdate==false">
<span v-for="(liitem,liindex) in OrderDataList.LeaderInsurance" :key="liindex">
<span v-if="liitem.InsuranceState==1" style="color:blue">{{liitem.Name}}(√)&nbsp;&nbsp;&nbsp;</span>
<span v-else>{{liitem.Name}}(x)&nbsp;&nbsp;&nbsp;</span>
<span v-if="liitem.InsuranceState==1" style="color:blue">{{liitem.Name}}(√)&nbsp;&nbsp;&nbsp;</span>
<span v-else>{{liitem.Name}}(x)&nbsp;&nbsp;&nbsp;</span>
</span>
<span v-if="EditBtn"><el-button type="primary" icon="el-icon-edit" circle size="mini" @click="InsuranceUpdate=true"></el-button></span>
</template>
......@@ -2304,14 +2304,14 @@
<el-button type="warning" size="mini" @click="SetLeaderInsuranceState(1,liitem.ID,2)">当团不买</el-button>
<el-button type="danger" size="mini" @click="SetLeaderInsuranceState(2,liitem.ID,2)">标记全团不买</el-button>
</el-button-group>
</span>
</span>
<span v-else style="margin-right:40px;">
{{liitem.Name}}&nbsp;&nbsp;&nbsp;
<el-button-group>
<el-button type="primary" size="mini" @click="SetLeaderInsuranceState(1,liitem.ID,1)">当团购买</el-button>
<el-button type="success" size="mini" @click="SetLeaderInsuranceState(2,liitem.ID,1)">标记全团购买</el-button>
</el-button-group>&nbsp;&nbsp;&nbsp;
</span>
</span>
</span>
<span v-if="EditBtn"><el-button type="primary" icon="el-icon-close" circle size="mini" @click="InsuranceUpdate=false"></el-button></span>
</template>
......@@ -3664,8 +3664,8 @@
</span>
</template>
</el-popover>
</div>
</div>
</div>
......@@ -4318,7 +4318,7 @@
AirticketNum: "0",
ScenicRefundArr: [],
ScenicList: [], //2025-07-14 add bY:W
GoCityTime: "",
BackCityTime: "",
CommissionSharePeople: "-1",
......@@ -5005,8 +5005,8 @@
obj.PlatformAccount
);
this.getPriceBindflight(obj.TCID);
this.SetOutCityId = res.data.data.SetOutCityId;
this.reOutCityId = res.data.data.SetBackCityId;
this.addMsg.CustomerType = x.CustomerType.toString();
......@@ -5448,6 +5448,16 @@
});
},
toTrip: function (obj, TicketUnionId, GuestIds) {
this.$router.push({
name: 'TravelNoticeDownLoad',
params: {
id: obj.TCID,
orderId: obj.OrderId,
guestIds: GuestIds?GuestIds:'0',
unionfid: TicketUnionId?TicketUnionId:0
}
})
return
this.tripObj.tcid = obj.TCID;
this.tripObj.configId = obj.ConfigId;
this.tripObj.orderId = obj.OrderId;
......@@ -6930,10 +6940,22 @@
},
//出团通知书
getOrderInfo() {
this.getFlightInfo();
this.getCombinTeam();
if(this.ConfigData.Config.OutNotice == 1) this.SetOutNotice()
else{
this.getFlightInfo();
this.getCombinTeam();
}
},
SetOutNotice() {
this.$router.push({
name: 'TravelNoticePreview',
params: {
id:this.ConfigData.Config.TCID,
tab: '出团通知书预览',
target:'y'
}
})
return
var that = this;
this.Confirm(
this.$t('objFill.shifou') + "【" +
......
......@@ -463,6 +463,9 @@
<el-button type="primary" icon="el-icon-edit"
@click="isShowDIv = true,divTitle='修改线路',updateData(index)"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" content="配置线路出团通知书模版" placement="top-start">
<el-button icon="el-icon-s-flag" @click="handlerNoticeTemplate(item.lineID)"></el-button>
</el-tooltip>
<el-tooltip class="item" effect="dark" :content="$t('system.btn_CtrlSet')" placement="top-start">
<el-button type="success" icon="el-icon-setting" @click="getBranchList(item.lineID)"></el-button>
</el-tooltip>
......@@ -847,6 +850,9 @@
};
},
methods: {
handlerNoticeTemplate(lineID) {
this.$router.push({ path: '/TravelNoticeConfig', query: { lineId: lineID, blank: 'y', tab: '出团通知书配置' } });
},
handleChange3(file, fileList) {
this.fileList3 = fileList.slice(-1);
},
......
......@@ -118,7 +118,8 @@
</div>
</div>
<div class="operate-btn">
<el-button type="primary" size="small" @click="saveContent">保存</el-button>
<el-button v-if="state" size="small" @click="handleBack">返回</el-button>
<el-button type="primary" size="small" @click="saveContent">保存</el-button>
</div>
<!-- 自定义预览弹窗 -->
<transition name="preview-fade">
......@@ -272,7 +273,8 @@ export default {
lineId:0,
tcid:0,
orderId:0,
loading:true
loading:true,
state:0
}
},
mounted() {
......@@ -293,6 +295,7 @@ export default {
});
if(this.$route.query.lineId) this.lineId = this.$route.query.lineId;
else if(this.$route.query.tcid) this.tcid = this.$route.query.tcid;
if(this.$route.query.state) this.state = this.$route.query.state;
if(this.lineId) this.loadLineNoticeInfo();
else if(this.tcid) this.loadTravelNoticeInfo();
},
......@@ -307,6 +310,19 @@ export default {
this.handleClosePreview();
}
},
// 展开根节点
expandRootNode() {
this.$nextTick(() => {
if (this.$refs.tree && this.configList.length > 0) {
this.$refs.tree.setCurrentKey(this.configList[0].id);
// 展开根节点
const rootNodeId = this.configList[0].id;
if (this.$refs.tree.store.nodesMap[rootNodeId]) {
this.$refs.tree.store.nodesMap[rootNodeId].expanded = true;
}
}
});
},
loadLineNoticeInfo() {
if(!this.lineId) return
this.apipost("travel_post_GetNoticeConfigList", {
......@@ -315,6 +331,7 @@ export default {
if(res.data.resultCode == 1 && res.data.data.length > 0) {
this.configList = JSON.parse(res.data.data[0].Content);
this.loading=false
this.expandRootNode()
}else{
this.loadLine()
}
......@@ -328,6 +345,7 @@ export default {
if(res.data.resultCode == 1 && res.data.data.Content !='') {
this.configList = JSON.parse(res.data.data.Content);
this.loading=false
this.expandRootNode()
}else{
this.loadTravel()
......@@ -360,6 +378,7 @@ export default {
this.configList = JSON.parse(res.data.data[0].Content);
this.resolverTravel(t)
this.loading=false
this.expandRootNode()
}else{
this.$confirm('当前线路没有配置出团通知书模版,无法生存出团通知书,是否立即前往配置', '提示', {
confirmButtonText: '确定',
......@@ -664,19 +683,13 @@ export default {
},
// 取消编辑
cancelEdit() {
this.$confirm('确定要取消编辑吗?未保存的内容将丢失。', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
// 清除选中状态
this.selectedNode = null;
this.$refs.tree.setCurrentKey(null);
this.$message.info('已取消编辑');
}).catch(() => {
// 取消操作
});
handleBack() {
this.$router.push({
name: 'TravelNoticePreview',
params: {
id:this.state
}
})
},
// 富文本编辑器内容变化
......
This diff is collapsed.
......@@ -6864,5 +6864,21 @@ export default {
title: '编辑报价单'
}
},
{
path: '/TravelNoticePreview/:id',
name: 'TravelNoticePreview',
component: resolve => require(['@/pages/travel-notice/PreviewNotice'], resolve),
meta: {
title: '出团通知书预览'
}
},
{
path: '/TravelNoticeDownLoad/:id/:orderId/:guestIds/:unionfid',
name: 'TravelNoticeDownLoad',
component: resolve => require(['@/pages/travel-notice/PreviewNotice'], resolve),
meta: {
title: '出团通知书下载'
}
}
]
}
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