Commit d714baea authored by liudong1993's avatar liudong1993
parents ad3bc7f8 0f8d0cab
......@@ -761,7 +761,7 @@
<el-option label="1" :value="1"></el-option>
<el-option label="2" :value="2"></el-option>
</el-select>
{{$t('objFill.v101.Contract.zhongfangs')}}
{{$t('objFill.zhongfangs')}}
</el-form-item>
<el-form-item label="1、提交" v-if="CtObj.C_SolveType == 1" label-width="110px">
<el-input type="text" class="w300" v-model="CtObj.C_SolveRemark"></el-input>&nbsp;仲裁委员会仲裁;
......@@ -891,8 +891,7 @@
<commonTripList @tripData="tripData" :ContractTripList="CtObj.ContractTripList" :TripType="CtObj.TripType">
</commonTripList>
</div> -->
<div v-if="CtObj.ID>0&&CtObj.ContractTripList&&CtObj.ContractTripList.length==1"
v-html="CtObj.ContractTripList[0].TravelContent" ref="TcTravel_Table"></div>
<div v-if="CtObj.ID>0" ref="TcTravel_Table" v-html="CtObj.ContractTripList[0].TravelContent" ></div>
<div v-else ref="TcTravel_Table">
<table class="TcTravel_Table">
<tbody>
......@@ -999,8 +998,7 @@
火车:普通车/空调车/动车组(其中:软卧/硬卧/软座/硬座);
</div>
<div style="color: red" v-if="CtObj.CType!=3">
注:用房
:全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。
注:用房全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。
</div>
<template v-if="CtObj.TeamType == 2">
<div>
......@@ -1029,10 +1027,6 @@
</tbody>
</table>
</div>
<div style="padding:10px;background:#f9f9f9;color:red;" v-if="CtObj.CType!=3">
注:用房
:全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。
</div>
</div>
<div class="block mtop15" id="anchor-5" ref="anchor5">
<div class="blockTitle">
......@@ -1402,7 +1396,14 @@
TicketAndHotelTotalPrice: "0", // 机票加酒店组合总费用
ContractShopList: [], //自愿购物活动补充协议
ContractGuestList: [], //旅客名单
ContractTripList: [], //行程列表
ContractTripList: [{
TripType: 1,
DayNum: 1,
Go: "",
GoProvice: "",
IsOut: 0,
TravelContent: ""
}], //行程列表
ContractSelfFeeList: [], //自愿付费项目补充协议
TripType: 0, //行程类型(0-简易行程,1-标准行程)
TCID: 0,
......
<template>
<div class="Educationvideo" ref="divSrcoll">
<div class="left">
<ul class="lineUl" style="margin-top:64px">
<li @click="SelectLineId(-1)" :class="msg.LineId ==-1 ? 'Active' : ''">
不限
</li>
<li @click="SelectLineId(item.LineID)" :class="msg.LineId == item.LineID ? 'Active' : ''" v-for="(item,index) in LineList" :key="index">
{{item.LineName}}
</li>
</ul>
<ul class="lineUl" style="margin-top:64px">
<li @click="SelectLineId(-1)" :class="msg.LineId ==-1 ? 'Active' : ''">
不限
</li>
<li @click="SelectLineId(item.LineID)" :class="msg.LineId == item.LineID ? 'Active' : ''"
v-for="(item,index) in LineList" :key="index">
{{item.LineName}}
</li>
</ul>
</div>
<div class="right">
<div class="search">
<el-input size="small" style="width:600px" :placeholder="$t('fnc.qsrneirong')" v-model="msg.Name" class="input-with-select">
<el-button @click="Search" slot="append" icon="el-icon-search"></el-button>
</el-input>
<el-button style="margin-left:20px" size="small" type="danger" @click.prevent="goUrl1('EducationvideoList',$event)" round>发布视频</el-button>
<div class="search">
<el-input size="small" style="width:600px" :placeholder="$t('fnc.qsrneirong')" v-model="msg.Name"
class="input-with-select">
<el-button @click="Search" slot="append" icon="el-icon-search"></el-button>
</el-input>
<el-button style="margin-left:20px" size="small" type="danger"
@click.prevent="goUrl1('EducationvideoList',$event)" round>发布视频</el-button>
</div>
<div v-loading="loading" class="Content">
<ul class="videoUl">
<li v-for="(item,index) in dataList" :key="index">
<div :style="{backgroundImage: 'url(' + item.background + ')', backgroundSize:'cover'}" @click.prevent="goUrl('EducationvideoSee',item)" class="imgDiv">
<!-- <img v-if="item.Cover && item.Cover!=''" :onerror="defaultImg" style="min-height:199px;width:100%" :src="item.Cover" alt="">
<img v-else style="height:199px;width:100%" src="../assets/img/hotel/biefu.png" alt=""> -->
<div class="backDiv">
<span class="iconfont icon-ico_bofang"></span>
<!-- <div @click.prevent="goUrl1('EducationvideoList',$event)" class="icon">
<span class="iconfont icon-weihu"></span>
</div> -->
</div>
</div>
<div class="contentDiv">
<img v-if="item.EmPhoto && item.EmPhoto!=''" :src="item.EmPhoto" alt="">
<img v-else src="../assets/img/default.png" alt="">
<div class="DesDiv">
<el-tooltip class="item" effect="dark" :content="item.Name" placement="top-start">
<p style="font-size:14px" class="bold text1">{{item.Name}}</p>
</el-tooltip>
<p class="wryh" style="color:#aaaaaa">{{item.EmName}}</p>
<p class="wryh" style="color:#aaaaaa">{{item.WatchNum}}次观看
<span style="margin-left:5pxy"></span>
<span>{{item.UpdateDate}}</span>
</div>
<div v-loading="loading" class="Content">
<ul class="videoUl">
<li v-for="(item,index) in dataList" :key="index">
<div :style="{backgroundImage: 'url(' + item.background + ')', backgroundSize:'cover'}"
@click.prevent="goUrl('EducationvideoSee',item)" class="imgDiv">
<div class="backDiv">
<span class="iconfont icon-ico_bofang"></span>
</div>
</div>
<div class="contentDiv">
<img v-if="item.EmPhoto && item.EmPhoto!=''" :src="item.EmPhoto" alt="">
<img v-else src="../assets/img/default.png" alt="">
<div class="DesDiv">
<el-tooltip class="item" effect="dark" :content="item.Name" placement="top-start">
<p style="font-size:14px" class="bold text1">{{item.Name}}</p>
</el-tooltip>
<el-row>
<el-col :span="12">
<p class="wryh" style="color:#aaaaaa">{{item.EmName}}</p>
<p class="wryh" style="color:#aaaaaa">{{item.WatchNum}}次观看
<span style="margin-left:5pxy"></span>
<span>{{item.UpdateDate}}</span>
</p>
</el-col>
<el-col :span="12" style="text-align:right;display:none;">
<el-tooltip class="item" effect="dark" :content="$t('salesModule.ShareTrip')" placement="top-start"
style="float: right">
<el-popover width="180" trigger="click">
<div class="w150" v-loading="wxLoading">
<template v-if="item.wxImage!=''">
<img style="float: left; width: 108px; height: 108px; margin: 10px 21px 3px;"
:src="'data:image/png;base64,' + item.wxImage" />
</template>
<p style="text-align: center; font-size: 12px; color: #666">
{{ $t("salesModule.XCX") }}
</p>
</div>
</div>
</li>
</ul>
<div v-if="dataList.length==0" style="text-align:center;padding-top:40px">
<span style="font-size:60px;color:#ccc" class="iconfont icon-wushuju"></span>
<el-button slot="reference" type="primary" @click="createVideoQrCode(item)" size="mini">分享
</el-button>
</el-popover>
</el-tooltip>
</el-col>
</el-row>
</div>
</div>
<div v-show="nodata && msg.pageIndex>1" class="wryh" style="text-align:center;padding:15px 0;font-size:12px;color:#aaaaaa">无更多数据</div>
<!-- <el-pagination background @current-change="handleCurrentChange"
layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total='total'>
</el-pagination> -->
</li>
</ul>
<div v-if="dataList.length==0" style="text-align:center;padding-top:40px">
<span style="font-size:60px;color:#ccc" class="iconfont icon-wushuju"></span>
</div>
<div style="opacity: 0;" ref="bottomDiv">1111</div>
<div v-show="nodata && msg.pageIndex>1" class="wryh"
style="text-align:center;padding:15px 0;font-size:12px;color:#aaaaaa">无更多数据</div>
</div>
<div style="opacity: 0;" ref="bottomDiv">1111</div>
</div>
<div class="videoDiv" v-show="videoDivState">
<div style="text-align:right;padding-right:15px;cursor:pointer"><span @click="Setvideo" style="font-size:30px;color:#fff" class="iconfont icon-bumenguanli-shanchu"></span></div>
<video ref="myVideo" autoplay="autoplay" width="100%" height="90%" :src="thisVideoAddress" controls="controls">
<div style="text-align:right;padding-right:15px;cursor:pointer"><span @click="Setvideo"
style="font-size:30px;color:#fff" class="iconfont icon-bumenguanli-shanchu"></span></div>
<video ref="myVideo" autoplay="autoplay" width="100%" height="90%" :src="thisVideoAddress" controls="controls">
<source :src="thisVideoAddress" type="video/mp4">
<source :src="thisVideoAddress" type="video/ogg">
</video>
</div>
</div>
</template>
<script>
export default {
name: 'Educationvideo',
created() {
},
data () {
return {
videoDivState:false,
thisVideoAddress:"",
defaultImg: 'this.src="' + require("../assets/img/bg_z1@2x.png") + '"',
val:'',
LineList:[],
msg:{
pageIndex:1,
pageSize:20,
Name:'',
UserType:1,
VideoStatus:1,
CreateBy:'',
LineId:-1,
export default {
name: 'Educationvideo',
created() {},
data() {
return {
videoDivState: false,
thisVideoAddress: "",
defaultImg: 'this.src="' + require("../assets/img/bg_z1@2x.png") + '"',
val: '',
LineList: [],
msg: {
pageIndex: 1,
pageSize: 20,
Name: '',
UserType: 1,
VideoStatus: 1,
CreateBy: '',
LineId: -1,
},
dataList: [],
total: 0,
loading: false,
windowHeight: 0,
nodata: false,
wxLoading: false,
}
},
mounted() {
this.getLineList();
this.getList();
this.$nextTick(() => {
window.addEventListener('scroll', this.ScrollTop)
})
let h = document.documentElement.clientHeight || document.body.clientHeight;
this.windowHeight = h;
},
destroyed() {
window.removeEventListener('scroll', this.ScrollTop)
},
methods: {
//生成小程序码
createVideoQrCode(item) {
this.wxLoading = true;
var postMsg = {
Id: item.Id
}
this.apipost(
"Video_get_GetLvXiaoYouVideoCodeShare", postMsg,
res => {
this.wxLoading = false;
if (res.data.resultCode == 1) {
item.wxImage = res.data.data;
}
}
);
},
dataList:[],
total:0,
loading:false,
windowHeight:0,
nodata:false,
}
},
mounted() {
this.getLineList();
this.getList();
this.$nextTick(()=>{
window.addEventListener('scroll',this.ScrollTop)
})
let h = document.documentElement.clientHeight || document.body.clientHeight;
this.windowHeight=h;
},
destroyed(){
window.removeEventListener('scroll',this.ScrollTop)
},
methods: {
Search(){
this.msg.pageIndex=1;
this.nodata=false;
this.dataList=[];
Search() {
this.msg.pageIndex = 1;
this.nodata = false;
this.dataList = [];
this.getList();
},
Setvideo(){
this.videoDivState=false;
let myVideo=this.$refs.myVideo;
Setvideo() {
this.videoDivState = false;
let myVideo = this.$refs.myVideo;
myVideo.pause();
},
ScrollTop(){
ScrollTop() {
var that = this;
// that.scroll = (document.documentElement.scrollTop || document.body.scrollTop)+70;
// var divSrcoll = this.$refs.divSrcoll.scrollTop;
if(that.$refs.bottomDiv.getBoundingClientRect()){
if (that.$refs.bottomDiv.getBoundingClientRect()) {
var bottomDiv = that.$refs.bottomDiv.getBoundingClientRect().top;
if(this.windowHeight-50 < bottomDiv){
this.handleCurrentChange();
if (this.windowHeight - 50 < bottomDiv) {
this.handleCurrentChange();
}
}
},
SelectLineId(id){
this.dataList=[];
this.nodata=false;
this.msg.pageIndex=1;
this.msg.LineId=id;
this.getList();
SelectLineId(id) {
this.dataList = [];
this.nodata = false;
this.msg.pageIndex = 1;
this.msg.LineId = id;
this.getList();
},
handleCurrentChange() {
this.msg.pageIndex = this.msg.pageIndex+1;
this.getList();
},
this.msg.pageIndex = this.msg.pageIndex + 1;
this.getList();
},
//获取列表
getList() {
if(this.nodata){
if (this.nodata) {
return;
}
this.loading=true;
this.loading = true;
this.apipost(
"Video_get_GetPCVideoPageList",this.msg,
"Video_get_GetPCVideoPageList", this.msg,
res => {
this.loading=false;
this.loading = false;
if (res.data.resultCode == 1) {
let data= res.data.data.pageData;
if(data.length==0 && this.msg.pageIndex>1){
this.nodata=true;
}
else{
data.forEach(item=>{
let lastUrl="?x-oss-process=video/snapshot,t_9,f_jpg,w_299,h_0,m_fast";
item.background=item.VideoAddress+lastUrl;
let data = res.data.data.pageData;
if (data.length == 0 && this.msg.pageIndex > 1) {
this.nodata = true;
} else {
data.forEach(item => {
let lastUrl = "?x-oss-process=video/snapshot,t_9,f_jpg,w_299,h_0,m_fast";
item.background = item.VideoAddress + lastUrl;
item.wxImage = "";
})
this.dataList = this.dataList.concat(data)
}
this.total = res.data.data.count;
}
}
);
},
goUrl1(path,e){
e.stopPropagation()
this.$router.push({
name:path,
// query: {
// blank: "y"
// }
});
goUrl1(path, e) {
e.stopPropagation()
this.$router.push({
name: path,
});
},
AddList(id) {
this.apipost(
"Video_post_SetVideoWatch",{VideoId:id},
"Video_post_SetVideoWatch", {
VideoId: id
},
res => {
if (res.data.resultCode == 1) {
}
}
);
},
goUrl(path,item){
let that=this;
this.videoDivState=true;
this.thisVideoAddress=item.VideoAddress;
goUrl(path, item) {
let that = this;
this.videoDivState = true;
this.thisVideoAddress = item.VideoAddress;
this.AddList(item.Id)
let myVideo=this.$refs.myVideo;
let myVideo = this.$refs.myVideo;
myVideo.play();
if(!item.VideoWH || item.VideoWH==''){
myVideo.addEventListener('canplay', function () {
let VideoWH=this.videoWidth+','+this.videoHeight;
that.AddWidthHeight(VideoWH,item.Id)
});
if (!item.VideoWH || item.VideoWH == '') {
myVideo.addEventListener('canplay', function () {
let VideoWH = this.videoWidth + ',' + this.videoHeight;
that.AddWidthHeight(VideoWH, item.Id)
});
}
},
AddWidthHeight(VideoWH, id) {
let msg = {
Id: id,
VideoWH: VideoWH
}
this.apipost(
"Video_set_SetPCVideoWHInfo", msg,
res => {
if (res.data.resultCode == 1) {}
}
);
},
AddWidthHeight(VideoWH,id) {
let msg={
Id:id,
VideoWH:VideoWH
}
this.apipost(
"Video_set_SetPCVideoWHInfo",msg,
res => {
if (res.data.resultCode == 1) {
}
}
);
},
//获取线路列表
//获取线路列表
getLineList() {
this.apipost(
"Video_get_GetPCVideoLineList", {},
res => {
if (res.data.resultCode == 1) {
this.LineList = res.data.data;
}
}
);
},
},
}
},
}
</script>
<style>
.text1{
overflow: hidden;
.text1 {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
height:20px;
}
.wryh{
font-family: '微软雅黑'
}
.Educationvideo .right .Content .videoUl li .backDiv{
display: flex;
align-items: center;
justify-content: center;
position: absolute;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.3);
top: 0;
}
.Educationvideo .right .Content .videoUl li .imgDiv .icon-ico_bofang{
position: absolute;
font-size: 36px;
color:#fff;
}
.videoDiv{
position: fixed;
top: 0;
width: 100%;
height: 100%;
z-index: 999999999;
background: #000;
}
.Educationvideo .contentDiv img{
width:35px;height:35px;border-radius:50%;
position: absolute;
}
.Educationvideo .contentDiv .DesDiv{
padding-left: 45px;
box-sizing: border-box;
width: 100%;
}
.Educationvideo .contentDiv{
position: relative;
margin-top:5px;
}
.Educationvideo .bold{
font-family: "pingfangR"
}
.Educationvideo .el-pagination.is-background .el-pager li:not(.disabled).active{
background-color: #f56c6c!important;
}
.Educationvideo .right .Content .circle{
height: 20px;
}
.wryh {
font-family: '微软雅黑'
}
.Educationvideo .right .Content .videoUl li .backDiv {
display: flex;
align-items: center;
justify-content: center;
position: absolute;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.3);
top: 0;
}
.Educationvideo .right .Content .videoUl li .imgDiv .icon-ico_bofang {
position: absolute;
font-size: 36px;
color: #fff;
}
.videoDiv {
position: fixed;
top: 0;
width: 100%;
height: 100%;
z-index: 999999999;
background: #000;
}
.Educationvideo .contentDiv img {
width: 35px;
height: 35px;
border-radius: 50%;
position: absolute;
}
.Educationvideo .contentDiv .DesDiv {
padding-left: 45px;
box-sizing: border-box;
width: 100%;
}
.Educationvideo .contentDiv {
position: relative;
margin-top: 5px;
}
.Educationvideo .bold {
font-family: "pingfangR"
}
.Educationvideo .el-pagination.is-background .el-pager li:not(.disabled).active {
background-color: #f56c6c !important;
}
.Educationvideo .right .Content .circle {
display: inline-block;
width: 3px;
height:3px;
height: 3px;
background: #666666;
border-radius: 50%;
}
.Educationvideo .right .Content .videoUl li .imgDiv:hover .icon{
}
.Educationvideo .right .Content .videoUl li .imgDiv:hover .icon {
display: block;
}
.Educationvideo .right .Content .videoUl li .imgDiv .icon{
}
.Educationvideo .right .Content .videoUl li .imgDiv .icon {
position: absolute;
right: 3px;
top: 3px;
padding: 2px 6px;
background: #000;
display: none;
}
.Educationvideo .right .Content .videoUl li .imgDiv .icon .iconfont{
color:#fff;
}
.Educationvideo .right .Content .videoUl li .imgDiv{
}
.Educationvideo .right .Content .videoUl li .imgDiv .icon .iconfont {
color: #fff;
}
.Educationvideo .right .Content .videoUl li .imgDiv {
position: relative;
cursor: pointer;
height:199px;
overflow:hidden;
}
.Educationvideo .right .Content .videoUl li p{
height: 199px;
overflow: hidden;
}
.Educationvideo .right .Content .videoUl li p {
font-size: 12px;
padding-left:6px;
padding-left: 6px;
box-sizing: border-box;
}
.Educationvideo .right .Content .videoUl li{
}
.Educationvideo .right .Content .videoUl li {
display: inline-block;
width: 300px;
padding: 5px;
box-sizing: border-box;
margin-right: 10px;
margin-bottom:15px;
}
.Educationvideo .right .Content{
padding:15px 15px 10px 15px;
box-sizing: border-box;
margin-bottom: 15px;
}
.Educationvideo .right .Content {
padding: 15px 15px 10px 15px;
box-sizing: border-box;
}
*{
margin:0;
* {
margin: 0;
padding: 0;
}
.Educationvideo .left .lineUl .Active{
color:#fff;
}
.Educationvideo .left .lineUl .Active {
color: #fff;
background: #f56c6c;
font-family: "pingfangR";
}
.Educationvideo .left .lineUl li:hover{
background: #f56c6c;
color:#fff;
}
.Educationvideo .left .lineUl li{
padding:10px 35px;
}
.Educationvideo .left .lineUl li:hover {
background: #f56c6c;
color: #fff;
}
.Educationvideo .left .lineUl li {
padding: 10px 35px;
box-sizing: border-box;
font-size: 12px;
cursor: pointer;
}
li{
}
li {
list-style: none;
}
.Educationvideo .right .search{
padding: 15px 0;
padding-left: 50px;
box-sizing: border-box;
/* position: fixed;
}
.Educationvideo .right .search {
padding: 15px 0;
padding-left: 50px;
box-sizing: border-box;
/* position: fixed;
top: 50px;
width: calc(100% - 200px); */
background: #fff;
/* left: 200px; */
background: #fff;
/* left: 200px; */
}
.Educationvideo{
position: relative;
min-height: 100%;
background: #f5f5f5;
}
.Educationvideo .left{
position: absolute;
min-height: 100%;
width: 200px;
z-index: 100;
background: #fff;
}
.Educationvideo .right{
background: #f5f5f5;
padding-left: 200px;
box-sizing: border-box;
min-height: 100%;
.Educationvideo {
position: relative;
min-height: 100%;
background: #f5f5f5;
}
.Educationvideo .left {
position: absolute;
min-height: 100%;
width: 200px;
z-index: 100;
background: #fff;
}
.Educationvideo .right {
background: #f5f5f5;
padding-left: 200px;
box-sizing: border-box;
min-height: 100%;
}
</style>
......@@ -691,7 +691,53 @@
width: 830px;
position: relative;
}
.UploadMsg-box{
display: flex;
flex-wrap: wrap;
}
.UploadMsg-list{
width: 110px;
/* height: 80px; */
position: relative;
border-radius: 3px;
/* overflow: hidden; */
margin: 0 6px 13px 6px;
}
.UploadMsg-text{
width: 100%;
height: 20px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
cursor: pointer;
}
.UploadMsg-icon{
color: #409eff;
position: absolute;
right: 0;
top: -10px;
z-index: 2;
cursor: pointer;
font-size: 20px;
}
.UploadMsgGrow{
width: 100%;
}
/deep/.UploadMsg-box .el-upload-dragger{
width: 110px;
height: 80px;
padding: 0 5px;
}
/deep/.UploadMsg-box .el-upload-dragger .el-icon-upload{
margin: 0;
}
/deep/.UploadMsg-box .el-upload__tip{
margin-top: 0;
margin-bottom: 7px;
}
/deep/.UploadMsg-box .el-upload-dragger .el-icon-upload{
line-height: 35px;
}
</style>
<template>
......@@ -1561,7 +1607,7 @@
<button v-loading="matchBtn" class="normalBtn" @click="sureMatchTransfer()"
style="margin-left: 150px;margin-bottom: 10px">确认转移</button>
</el-dialog>
<!--工资单信息-->
<div v-if="fillShow" class="btmAddStore" :class="{'fillShow':fillShow}">
<div class="btmTitle">{{$t('objFill.daorugzdxx')}}</div>
<div style="color:red;padding:10px 0" v-if="BatchAddWagesMessage">提示:{{BatchAddWagesMessage}}</div>
......@@ -1599,7 +1645,6 @@
<el-image style="height:16px;" :src="file.Url?file.Url:file.Content"
:preview-src-list="[file.Url?file.Url:file.Content]">
</el-image>
<!-- <img :src="file.Url?file.Url:file.Content" @click="showUpLoadFile(file,index)" style="height:16px;"> -->
</div>
<span class="iconfont icon-guanbi1" style="font-size:12px;"
@click="deleteInvoiceUploadFile(fIndex,index)"></span>
......@@ -1642,10 +1687,12 @@
</table>
</div>
<div class="btmBtn impotBtn" style="padding:10px 0">
<input type="button" class="normalBtn" value="批量上传附件" @click="isUploadAttachment=true;" />
<input type="button" class="normalBtn" @click="importInfo" :value="$t('ground.qrdr')" />
<input type="button" class="hollowFixedBtn" @click="hideFill" :value="$t('pub.cancelBtn')" />
</div>
</div>
<!--工资单导入弹窗-->
<el-dialog custom-class='w700' :title="$t('objFill.daoruyinxiaosj')" :visible.sync="outerVisible" center>
<el-upload drag class="upload-demo" :action="importFileUrl2" :on-success="handleAvatarSuccess"
:before-upload="beforeAvatarUpload">
......@@ -1654,6 +1701,48 @@
<div slot="tip" class="el-upload__tip">{{$t("ground.znscexcel")}}</div>
</el-upload>
</el-dialog>
<el-dialog :title="saveUploadMsg.length>0?'批量上传附件/已传'+saveUploadMsg.length:'批量上传附件'"
:visible.sync="isUploadAttachment" width="780px"
:close-on-click-modal="false"
:show-close="false" @close="cancel">
<!--工资单附件导入弹窗-->
<div class="UploadMsg-box">
<div :class="[saveUploadMsg.length>0?'':'UploadMsgGrow']" style="text-align: center;">
<el-upload
class="upload-demo"
drag
accept="image/jpeg,image/jpg, image/png, image/bmp"
action=""
:http-request="uploadGZFileBtn"
multiple
:show-file-list="false">
<i class="el-icon-upload" style="font-size: 30px;"></i>
<div class="el-upload__text">文件拖到此处,或<em>{{$t('tips.dianjishanhcuan')}}</em></div>
<div class="el-upload__tip" slot="tip">只能上传jpg/png文件</div>
</el-upload>
</div>
<template v-for="(item,index) in saveUploadMsg">
<div class="UploadMsg-list">
<el-image
style="width: 100%; height: 80px;border-radius: 5px;"
:src="item.DMCOPCredentials"
fit="cover"
:initial-index="index"
:preview-src-list="saveUploadMsg.map(x=>{return x.DMCOPCredentials})"></el-image>
<div class="UploadMsg-text">
<el-tooltip class="item" effect="dark" :content="item.BrandName" placement="top">
<p>{{item.BrandName}}</p>
</el-tooltip>
</div>
<i class="UploadMsg-icon el-icon-circle-close" @click="handleGZRemove(index)"></i>
</div>
</template>
</div>
<div slot="footer" class="dialog-footer">
<el-button class="hollowFixedBtn" @click="cancel" :disabled="loading">{{$t('pub.cancelBtn')}}</el-button>
<el-button class="normalBtn" type="primary" @click="saveAttachments" :loading="loading">{{$t('pub.sureBtn')}}</el-button>
</div>
</el-dialog>
<el-dialog custom-class='w700' title="导入车行ETC差额" :visible.sync="outerVisible3" center>
<el-upload drag class="upload-demo" :action="importFileUrl5+'&EmployeeId='+userId" :on-success="handleAvatarSuccess3"
:before-upload="beforeAvatarUpload2">
......@@ -2072,6 +2161,12 @@
CurrencyName: ''
},
isQueryHistoryData: false,
//工资单附件开始
saveUploadMsg: [],
loadingGZPic: false,
isUploadAttachment: false,
imgLength: 0,
//工资单附件结束
};
},
created() {
......@@ -2212,6 +2307,73 @@
this.$refs.multipleTable.clearSelection();
}
},
//工资单附件方法:
cancel() {
this.imgLength = 0;
this.saveUploadMsg = [];
this.isUploadAttachment = false;
this.loading = false;
},
saveAttachments() {
if(this.saveUploadMsg.length==0) return this.$message.error('请上传附件');
this.loading = true;
this.importData.forEach(x => {
this.saveUploadMsg.forEach(y => {
if (x.BrandName == y.BrandName) {
if(x.vorcherInos&&x.vorcherInos.length==0){
x.vorcherInos=[];
}
x.vorcherInos.push({
Content: y.Content,
ID:0,
Type:y.Type,
Url: y.DMCOPCredentials,
});
}
})
})
this.$forceUpdate();
this.cancel();
},
uploadGZFileBtn(file) { //上传
// 1 文档 2 数据 3 图片
if(file) this.imgLength++
let typeArr=[
{stringArr:'GIF|JPG|JPEG|PNG|BMP',type:3},
{stringArr:'DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF',type:1},
]
let ft=file.file.name.substring(file.file.name.lastIndexOf('.')+1,file.file.name.length).toUpperCase();
let fileTypeNumber = 2;
let typeOk = false;
typeArr.forEach(x=>{
if(x.stringArr.indexOf(ft)!='-1')
{
fileTypeNumber=x.type;
typeOk = true;
}
})
if (!typeOk) return this.$message.error('请上传图');
let newArr = [];
newArr.push(file.file)
let path = "/Upload/Temporary/"
if(this.imgLength==1) this.$message.info(this.$t('tips.shangchuanzhong'))
this.UploadSelfFileT(path, newArr, x => {
let fileSize = file.file.size<1024? file.file.size:(file.file.size / 1024).toFixed(0);
let SourceFileName = x.data.SourceFileName.split('.')
this.saveUploadMsg.push({
Content:x.data.FilePath,
Type: fileTypeNumber,
DMCOPCredentials: this.domainManager().ViittoFileUrl + x.data.FilePath,
BrandName: SourceFileName[0]
})
if(this.imgLength>0) this.imgLength--
if(!this.imgLength) this.$message.success(this.$t('tips.scchenggong'))
});
},
handleGZRemove(index) {
this.saveUploadMsg.splice(index,1)
},
uploadFileExpressFeeBtn(file) { //上传
if (file.file.size > 1024 * 1024 * 10) {
this.$message.warning(this.$t('tips.wjdxbncgsz'))
......@@ -3965,7 +4127,9 @@
);
}
},
watch: {}
watch: {
}
};
</script>
......@@ -132,7 +132,7 @@
<span class="tit_name T1">
{{item.CurrencyName==''?'':item.CurrencyName}}<span
v-if="item.CurrencyCode">({{item.CurrencyCode}})</span></span><span
class='tit_name T2'>{{item.LPrice}}/{$t('hotel.hotel_people')}}</span>
class='tit_name T2'>{{item.LPrice}}/{{$t('hotel.hotel_people')}}</span>
</p>
<p class="Ldata">{{item.LDate}}</p>
</td>
......@@ -141,7 +141,7 @@
<span class="tit_name T1">
{{item.CurrencyName==''?'':item.CurrencyName}}<span
v-if="item.CurrencyCode">({{item.CurrencyCode}})</span></span><span
class='tit_name HP'>{{item.HPrice}}/{$t('hotel.hotel_people')}}</span>
class='tit_name HP'>{{item.HPrice}}/{{$t('hotel.hotel_people')}}</span>
</p>
<p class="Ldata">{{item.HDate}}</p>
</td>
......
......@@ -1635,8 +1635,7 @@
</template>
</div>
<br />
<div style="color:red;" v-if="CtObj.CType!=3">注:用房
:全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。</div>
<div style="color:red;" v-if="CtObj.CType!=3">注:用房全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。</div>
</div>
<!-- 自愿购物 -->
<div class="shoppings" :class="{'checkedNav':ActiveTab==6}">
......@@ -2146,9 +2145,7 @@
</template>
</div>
<br>
<div style="color:red;" v-if="CtObj.CType!=3">注:用房
:全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。</div>
<div style="color:red;" v-if="CtObj.CType!=3">注:用房全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。</div>
</div>
<!-- 自愿补充协议 -->
<div class="activitys" :class="{'checkedNav':ActiveTab==7}">
......
......@@ -925,8 +925,8 @@
<commonTripList @tripData="tripData" :ContractTripList="CtObj.ContractTripList" :TripType="CtObj.TripType">
</commonTripList>
</div> -->
<div v-if="CtObj.ID>0&&CtObj.ContractTripList&&CtObj.ContractTripList.length==1"
v-html="CtObj.ContractTripList[0].TravelContent" ref="TcTravel_Table"></div>
<div v-if="CtObj.ID>0" v-html="CtObj.ContractTripList[0].TravelContent" ref="TcTravel_Table"></div>
<div v-else ref="TcTravel_Table">
<table class="TcTravel_Table">
<tbody>
......@@ -1033,8 +1033,7 @@
火车:普通车/空调车/动车组(其中:软卧/硬卧/软座/硬座);
</div>
<div style="color: red" v-if="CtObj.CType!=3">
注:用房
:全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。
注:用房全程酒店均为二人一间,如您的订单产生单房,在未补单房差的情况下,我社将尽量安排您与其它客人拼房或是与同行者入住三人房,不可选择房型。敬请配合,服从调配。
</div>
<template v-if="CtObj.TeamType == 2">
<div>
......@@ -1352,7 +1351,14 @@
TicketAndHotelTotalPrice: "0", // 机票加酒店组合总费用
ContractShopList: [], //自愿购物活动补充协议
ContractGuestList: [], //旅客名单
ContractTripList: [], //行程列表
ContractTripList: [{
TripType: 1,
DayNum: 1,
Go: "",
GoProvice: "",
IsOut: 0,
TravelContent: ""
}], //行程列表
TCID: 0,
OrderId: 0,
},
......@@ -1461,6 +1467,8 @@
if (this.isSubmit) {
if (this.CtObj.ContractTripList && this.CtObj.ContractTripList.length > 0) {
this.CtObj.ContractTripList[0].TravelContent = this.$refs.TcTravel_Table.innerHTML;
} else {
this.CtObj.ContractTripList[0].TravelContent = this.$refs.TcTravel_Table.innerHTML;
}
this.isSubmit = false;
this.apipost(
......@@ -1755,6 +1763,7 @@
};
this.CtObj.ContractTripList.push(tripObj);
}
} else {
this.Error(res.data.message);
}
......@@ -2071,4 +2080,5 @@
});
}
};
</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