<style> @import "../../assets/css/newTravelManager.css"; .color_red_order { color: #e95252 !important; } .groupTourOrderSearch { width: 100%; min-height: auto; overflow: hidden; padding: 0 0 20px 0; } .groupTourOrderSearch li { float: left; font-size: 12px; color: #666; margin: 20px 0 0px 0; } .groupTourOrderSearch li>span { display: inline-block; } .groupTourOrderSearch li span>em { display: inline-block; min-width: 60px; text-align: right; font-style: normal; margin: 0 12px 0 0; } .groupTourOrderSearch li:last-child { float: right; } .groupTourOrderSearch ul { overflow: hidden; } .groupTourOrderSearchTable { width: 100%; min-width: 1500px; font-size: 14px; color: #333; border-bottom: 1px solid #cccccc; border-right: 1px solid #cccccc; border-collapse: collapse; } .groupTourOrderSearchTable tbody tr:last-child { border-bottom: 2px solid #333; } .groupTourOrderSearchTable tr:first-child td:first-child { border-bottom: 2px solid #333; } .groupTourOrderSearchTable tr th { background-color: #e6e6e6; height: 30px; font-size: 12px; text-align: left; text-indent: 15px; border-top: 1px solid #cccccc; border-left: 1px solid #cccccc; } .groupTourOrderSearchTable tr { background-color: #fff; text-align: left; } .groupTourOrderSearchTable tr td { height: 60px; padding: 10px; border-top: 1px solid #cccccc; border-left: 1px solid #cccccc; } .groupTourOrderSearchTable tr td p { line-height: 20px; } .groupTourOrderSearchTable span.personNo { text-decoration: underline; cursor: pointer; } .groupTourOrderSearchTable span.personNo:hover { font-weight: bold; color: #e95252; } .personNolayer p { height: 28px; line-height: 28px; padding-left: 15px; } .personNolayer p>span { font-size: 12px; color: #333; margin-right: 15px; } .personNolayer table { padding: 10px 0 0 20px; width: 100%; background-color: #ededed; border-collapse: collapse; border: 1px solid #d2d2d2; font-size: 12px; } .personNolayer table th { background-color: #ededed; height: 34px; text-indent: 15px; } .personNolayer table td { background-color: #ffffff; padding: 9px 15px; color: #333333; border: 1px solid #d2d2d2; } .personNolayer table ._color_666 { color: #666666; } .personNolayer table tr._color_666 th { padding: 9px 15px; } .groupSuperSearchLayer>p { padding: 20px 0; font-size: 14px; color: #333; font-weight: bold; } .groupSuperSearchLayerTable { font-size: 12px; color: #666; } .groupSuperSearchLayerTable tr { height: 50px; } .groupSuperSearchLayerTable td { padding-right: 15px; } .groupTourOrderIcon button { width: 30px; height: 30px; border-radius: 4px; } .groupTourOrderIcon .el-button--primary { padding: 5px; margin: 0; font-size: 14px !important; } .groupTourOrderIcon .el-button+.el-button { margin-left: 0 !important; } .productQuerybottomLayer { overflow: auto; position: fixed; /* max-height: 300px; */ z-index: 50; bottom: 0; left: 0; border-top: 3px solid #38425d; background-color: #ffffff; padding: 10px 10px 0; width: 100%; } .productQuerybottomLayer .el-form-item__label { font-size: 12px !important; } .productQuerybottomLayer>p { border-left: 3px solid #e95252; text-indent: 15px; height: 16px; font-family: "PingFangSc-Fine"; font-size: 16px; margin-bottom: 20px; line-height: 14px; color: #000; } .productQuerybottomLayer .el-input-number { width: auto !important; } .groupTourOrderLeaderItem { display: inline-block; min-width: 122px; padding: 10px 0; background-color: #fff; margin: 10px 0; height: 56px; border-radius: 4px; } .groupTourOrderLeaderItem>img { width: 36px; height: 36px; border-radius: 18px; float: left; margin: 0 8px; } .groupTourOrderSearchTable tr td>img { width: 32px; height: 32px; border-radius: 16px; vertical-align: middle; margin-right: 5px; } .groupTourOrder_more { margin: 0 -12px; } .groupTourOrder_more>div { width: 100%; height: 30px; line-height: 30px; text-align: center; font-size: 12px; color: #333333; background-color: #ffffff; cursor: pointer; } .groupTourOrder_more>div:hover { color: #297bef; background-color: #dcebff; } .groupTourOrder_remarksBytuan { font-size: 12px; } .groupTourOrder_remarksBytuan>div::after { display: block; clear: both; content: ""; visibility: hidden; height: 0; } .groupTourOrder_remarks_btn { padding: 0px; width: 12px; height: 12px; border: none; background-color: transparent; } .groupTourOrder_remarks_btn>i { font-size: 12px; color: #e95252; } .groupTourOrder_remarks_popover>div { display: inline-block; font-size: 14px; color: #000000; } .groupTourOrder_remarks_popover>div::before { content: ""; display: inline-block; margin: 0 5px 0 0; width: 2px; height: 12px; background-color: #e95252; } .groupTourOrder_remarks_popover>span { display: block; margin: 5px 0 0 0; width: 100%; text-align: center; font-size: 12px; color: #000000; } .groupTourOrder_remarks_popover>p { margin: 5px 0 0 0; padding: 3px; width: 100%; max-height: 300px; overflow-y: auto; font-size: 12px; color: #000000; } .groupTourOrder_remarks_popover>p:nth-child(even) { background-color: #e6e6e6; } .groupTourOrder_remarks_popover>p>span:nth-child(1) { float: left; } .groupTourOrder_remarks_popover>p>span:nth-child(2) { margin: 0 10px 0 0; float: right; } .groupTourOrder_remarks_popover>p::after { display: block; clear: both; content: ""; visibility: hidden; height: 0; } .groupTourOrder_tickets>div { display: table; } .groupTourOrder_tickets>div>div { display: table-cell; cursor: pointer; } .groupTourOrder_tickets>div>div:nth-child(1) { width: 80px; } .groupTourOrder_tickets>div>div>span { display: inline-block; margin: 0 10px 0 0; } .groupTourOrder_tickets_red { color: #ff0000; text-decoration: underline; } .groupTourOrder_tickets_blue { color: #0000ff; text-decoration: underline; } .groupTourOrder_tickets_green { color: #008000; text-decoration: underline; } .groupTourOrder_tickets_black { color: #000000; text-decoration: underline; } .groupTourOrderByTuan_ico { margin: 0 10px 0 0; } .groupTourOrderByTuan_ico>i { display: inline-block; margin: 0 2px 0 0; width: 8px; height: 8px; border-radius: 2px; vertical-align: middle; } .groupTourOrderByTuan_ico>span { vertical-align: middle; } .groupTourOrder_count_green { color: #1bc594; } .groupTourOrder_count_blue { color: #4d7afd; } .groupTourOrder_count_yellow { color: #ff9c00; } .groupTourOrder_count_gray { color: #999999; } .groupTourOrder_count { margin: 0 0 20px 0; width: 100%; height: auto; } .groupTourOrder_count_col { height: 80px; } .groupTourOrder_count_item { font-weight: 400; padding: 10px; height: 100%; border: 1px solid #e6e6e6; background-color: #ffffff; color: #333333; } .groupTourOrder_count_item>div>i { font-size: 12px; vertical-align: bottom; } .groupTourOrder_count_item>div>span:nth-child(2) { font-size: 14px; vertical-align: bottom; } .groupTourOrder_count_item>div>span:nth-child(3) { font-weight: bold; font-size: 16px; vertical-align: bottom; } .groupTourOrder_count_item>p { font-size: 12px; line-height: 18px; } .groupTourOrder_count_item>p>span { margin: 0 5px 0 0; white-space: nowrap; } .groupTourOrderByTuan_transfer { position: fixed; z-index: 50; bottom: 0; left: 0; padding: 10px 10px; width: 100%; min-width: 1366px; min-height: 200px; border-top: 3px solid #38425d; background-color: #ffffff; overflow-y: auto; } .groupTourOrderByTuan_transfer>.transfer_header { position: relative; width: 100%; height: 30px; } .groupTourOrderByTuan_transfer>.transfer_header>div:nth-child(1) { display: inline-block; padding: 0 10px; width: 200px; height: 30px; line-height: 30px; border-left: 3px solid #e95252; text-indent: 10px; font-size: 16px; color: #000000; } .groupTourOrderByTuan_transfer>.transfer_header>div:nth-child(2) { position: absolute; top: 0px; right: 0px; height: 30px; } .groupTourOrderByTuan_transfer>.transfer_header>div:nth-child(2)>div:nth-child(1) { display: inline-block; padding: 0 15px; height: 30px; line-height: 28px; font-size: 14px; color: #e95252; border: 1px solid #e95252; background-color: #fff; border-radius: 15px; cursor: pointer; vertical-align: top; } .groupTourOrderByTuan_transfer>.transfer_header>div:nth-child(2)>div:nth-child(2) { display: inline-block; margin: 0 0 0 10px; padding: 0 15px; height: 30px; line-height: 28px; font-size: 14px; color: #fff; border: 1px solid #e95252; background-color: #e95252; border-radius: 15px; cursor: pointer; vertical-align: top; } .groupTourOrderByTuan_transfer>.transfer_info { padding: 20px 0; width: 100%; font-size: 0px; border-bottom: 1px dashed #999999; } .groupTourOrderByTuan_transfer>.transfer_info>div { display: inline-block; padding: 0 10px; width: 25%; height: 30px; vertical-align: top; } .groupTourOrderByTuan_transfer>.transfer_info>div>em { display: inline-block; padding: 0 10px; width: 35%; height: 30px; line-height: 30px; text-align: right; font-size: 16px; vertical-align: top; } .groupTourOrderByTuan_transfer>.transfer_info>div>span { display: inline-block; padding: 0 10px; width: 65%; height: 30px; line-height: 30px; text-align: left; font-size: 16px; border-radius: 3px; background-color: #e5e5e5; vertical-align: top; } .groupTourOrderByTuan_transfer>.transfer_input { padding: 20px 0; width: 100%; font-size: 0px; } .groupTourOrderByTuan_transfer>.transfer_input>div { display: inline-block; padding: 0 10px; width: 25%; height: 30px; vertical-align: top; } .groupTourOrderByTuan_transfer>.transfer_input>div>em { display: inline-block; padding: 0 10px; width: 35%; height: 30px; line-height: 30px; text-align: right; font-size: 16px; vertical-align: top; } .groupTourOrderByTuan_transfer>.transfer_input>div>.el-input { display: inline-block; width: 65%; height: 30px; line-height: 30px; text-align: left; font-size: 14px; vertical-align: top; } .groupTourOrderByTuan_seat>div { display: inline-block; margin: 0 5px; vertical-align: top; } .groupTourOrderByTuan_seat>div>span:nth-child(1) { font-size: 14px; color: #333333; } .groupTourOrderByTuan_seat>div>span:nth-child(2) { font-size: 14px; color: red; } .planeTicketEdit { overflow: auto; position: fixed; height: 550px; z-index: 100; bottom: 0; left: 0; border-top: 3px solid #38425d; background-color: #ffffff; padding: 10px 10px 0; width: 100%; } .planeTicketEdit .el-form-item__label { font-size: 12px !important; } .planeTicketEdit>p { border-left: 3px solid #e95252; text-indent: 15px; height: 16px; font-family: "PingFangSc-Fine"; font-size: 16px; margin-bottom: 20px; line-height: 14px; color: #000; } .planeTicketEdit .el-input { width: auto !important; } .GB_LeaderContent { float: left; margin: 7px 0 0 25px; } .GB_LeaderListContent { float: left; height: 56px; padding-right: 10px; background-color: #fff; border: 4px solid #eeeeee; border-radius: 4px; margin-right: 20px; } .GB_leftImg { float: left; width: 36px; height: 36px; border-radius: 50%; margin: 6px 10px; } .GB_leftImg img { width: 100%; height: 100%; border-radius: 50%; } .GB_rightNameList { float: right; font-size: 12px; color: #333333; } .GB_rightNameList div:first-child { margin: 5px 0; } .GB_rightNameList div:last-child { font-weight: bold; } .GB_zanwu { text-align: center; color: #666666; font-size: 12px; padding: 0 20px; } .GB_zanwu div:first-child { margin: 5px 0; } .GB_LeaderListDiv { width: 200px; height: 206px; margin-left: 30px; border: 1px solid #d1d1d1; } .GO_union { position: absolute; top: 2px; left: 2px; color: red; font-size: 15px; } .not_border tr, .not_border tr td { border-bottom: none !important; } .Ysze { position: relative; } .Ysze .changeYsze { position: absolute; left: 110%; z-index: 10000; top: 0; width: 700px; background-color: #fff; box-shadow: 0 0 8px #888; padding: 10px; box-sizing: border-box; } .Ysze .Ysze-button { position: absolute; left: 98%; top: 3px; border-radius: 4px; cursor: pointer; } .Ysze .changeYsze .el-form-item { display: inline-block; width: 30%; margin-bottom: 5px; } .Ysze .changeYsze .el-icon-close { position: absolute; right: 6px; top: 6px; color: #f78989; font-size: 20px; cursor: pointer; } .groupts .underline { text-decoration: underline; margin: 5px; text-align: center; } .groupts .leftSetInfo, .groupts .GO_TPright { float: left; } .KT_Scenic { width: 400px; max-height: 400px; overflow: auto; } .KT_Scenic table th { height: 30px; border: 1px solid #d1d1d1; } .KT_Scenic table td { padding: 9px 5px !important; } ._TravelPricePopover .GOScenicDiv { width: 500px; max-height: 400px; overflow: auto; } ._TravelPricePopover table, .KT_Scenic table { padding: 10px 0 0 20px; background-color: #ededed; border-collapse: collapse; border: 1px solid #d2d2d2; font-size: 12px; margin: 0 20px 5px 0; width: 100%; } ._TravelPricePopover table ._color_666, .KT_Scenic table ._color_666 { background-color: #ededed; color: #666666; padding: 5px; } ._TravelPricePopover table td, .KT_Scenic table td { background-color: #ffffff; padding: 9px 0; color: #333333; text-align: center; border: 1px solid #d2d2d2; } ._TravelPricePopover table td._d_name { background-color: #ededed; } .groupts .GO_Title { display: inline-block; margin-top: 10px; padding-right: 10px; font-size: 12px; width: 90px; text-align: right; } .groupts .SimulateDrop-box { width: 230px; min-height: 34px; position: relative; padding: 5px 21px 5px 6px; float: left; margin-top: 4px; border: 1px solid #d1d1d1; } .groupts .GO_SimulaDrop { position: absolute; right: 10px; top: 5px; color: #d1d1d1; } .groupts .SD_flight { display: inline-block; height: 24px; margin: 0 3px 3px 0; overflow: hidden; max-width: 200px; white-space: nowrap; text-overflow: ellipsis; font-size: 12px; padding: 0 8px; line-height: 22px; background-color: #f0f2f5; } .GO_Contract { color: blue; display: inline-block; cursor: pointer; margin-right: 20px; } .SQguestList { display: flex; flex-wrap: wrap; } .SQguestList label { display: inline-block; min-width: 100px; display: flex; align-items: center; margin-top: 8px; } .groupts .el-upload-list { width: 200px; } </style> <template> <div class="flexOne groupts" v-loading="loading"> <!-- 修改信息 --> <div class="planeTicketEdit ownScrollbarStyle" v-show="isShowLayer2"> <p> 修改 <span class="fr"> <input type="button" class="hollowFixedBtn" value="取消" @click="cancelSubmit2()" /> <input type="button" class="normalBtn" value="保存" @click="submitForm2('addMsg2')" /> </span> </p> <el-form :model="addMsg" ref="addMsg2" label-position="right" :rules="rules2" label-width="80px"> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="客户类型" prop="CustomerType"> <el-select v-model="addMsg.CustomerType" filterable :placeholder="$t('pub.pleaseSel')" @change="getTypePrice" :disabled="true"> <el-option v-for="(item, index) in khlxList" :label="item.Name" :value="item.Id" :key="index+1000"> </el-option> </el-select> </el-form-item> <el-form-item label="参团类型" prop="GroupType"> <el-select v-model="addMsg.GroupType" disabled filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="(item, index) in ctlxList" :label="item.Name" :value="item.Id" :key="index+2000"> </el-option> </el-select> </el-form-item> <el-form-item v-if="addMsg.GroupType == '3'" label="是否用房" prop="GroupTypeNeedHouse"> <el-switch @change="$forceUpdate()" v-model="addMsg.GroupTypeNeedHouse" active-value="0" inactive-value="1"></el-switch> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="联系人" prop="ContactName" v-show="addMsg.CustomerType == 3 || addMsg.CustomerType == 4"> <el-input v-model="addMsg.ContactName"></el-input> </el-form-item> <el-form-item label="联系电话" prop="ContactMobile" v-show="addMsg.CustomerType == 3 || addMsg.CustomerType == 4"> <el-input v-model="addMsg.ContactMobile"></el-input> </el-form-item> <el-form-item label="客户门店" prop="CustomerId" v-show=" addMsg.CustomerType == 1 || addMsg.CustomerType == 2 || addMsg.CustomerType == '' "> <el-select v-model="addMsg.CustomerId" filterable :placeholder="$t('pub.pleaseSel')" @change="getSspt" v-if="addMsg.OrderForm !== 4" :disabled="true"> <el-option v-for="(item, index) in khmdList" :label="item.customerName" :value="item.customerId" :key="index+3000"> </el-option> </el-select> <el-input v-else v-model="addMsg.allName" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="本团单价" prop="TC_Price"> <el-input v-model="addMsg.TC_Price" :disabled="true"></el-input> </el-form-item> <el-form-item label="出发联运价" v-show=" addMsg.IsIntermodal == 1 && addMsg.DepartureCityId != SetOutCityId "> <el-input v-model="stratPrice" v-show="stratPriceShow" :disabled="true"></el-input> <span class="colorE95252" v-show="!stratPriceShow">暂无报价!</span> </el-form-item> <el-form-item label="返回联运价" v-show=" addMsg.IsReturnIntermodal == 1 && addMsg.ReturnArriveCityId != reOutCityId "> <el-input v-model="returnPrice" v-show="returnPriceShow" :disabled="true"></el-input> <span class="colorE95252" v-show="!returnPriceShow">暂无报价!</span> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="成交单价" prop="Unit_Price"> <!-- 第一个修改信息 --> <el-input v-model="addMsg.Unit_Price" @keyup.native=" checkPrice(addMsg, 'Unit_Price'); getTotalPrice(); "> </el-input> </el-form-item> </el-col> </el-row> <div style="width: 100%; border-top: 1px dashed #ccc; margin-bottom: 25px"></div> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="成人人数" prop="ManNum"> <el-input v-model="addMsg.ManNum" @keyup.native="checkInteger(addMsg, 'ManNum')" @input=" getNumber(); getHouseNo(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="儿童人数" prop="ChirdNoNeedBedNum"> <el-input v-model="addMsg.ChirdNoNeedBedNum" @keyup.native="checkInteger(addMsg, 'ChirdNoNeedBedNum')" @input=" getNumber(); getHouseNo(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="婴儿人数" prop="BabyNum"> <el-input v-model="addMsg.BabyNum" @keyup.native="checkInteger(addMsg, 'BabyNum')" @input=" getNumber(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="老人人数" prop="OldPeopleNum"> <el-input v-model="addMsg.OldPeopleNum" @keyup.native="checkInteger(addMsg, 'OldPeopleNum')" @input=" getNumber(); getHouseNo(); getTotalPrice(); "></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="应收总额" prop="PreferPrice"> <el-input v-model="addMsg.PreferPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="预计提成" prop="Commission"> <el-input v-model="addMsg.Commission" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" v-show="addMsg.CustomerType == 1 || addMsg.CustomerType == 2"> <el-form-item label="分摊人" prop="CommissionSharePeople"> <el-select :disabled="isUpdateSharePeople" filterable clearable @change="getTicheng" v-model="addMsg.CommissionSharePeople" :placeholder="$t('pub.pleaseSel')"> <el-option label="无" :value="comSelect"></el-option> <el-option v-for="(item,index) in employeeList" :label="item.EmName" :value="item.EmployeeId" :key="index+4000"></el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-show=" addMsg.CommissionSharePeople != '-1' && (addMsg.CustomerType == 1 || addMsg.CustomerType == 2) "> <el-form-item label="分摊金额" prop="CommissionShareMoney"> <el-input v-model="addMsg.CommissionShareMoney" :disabled="true"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="经济舱" prop="YSeatNum"> <el-input v-model="addMsg.YSeatNum" @keyup.native="checkInteger(addMsg, 'YSeatNum')"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="商务舱" prop="ESeatNum"> <el-input v-model="addMsg.ESeatNum" @input="getNumber()"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="头等舱" prop="FSeatNum"> <el-input v-model="addMsg.FSeatNum" @input="getNumber()"></el-input> </el-form-item> </el-col> <el-col :span="4"> </el-col> <el-col :span="4"> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="客人来源" prop="ClientSource"> <el-select v-model="addMsg.ClientSource" :disabled="true" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in ddlyList" :label="item.Name" :value="item.Id" :key="item.Id+5000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="所属平台" prop="BrandId" v-show="addMsg.ClientSource == 1|| addMsg.ClientSource == 4"> <el-select v-model="addMsg.BrandId" :disabled="false" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in ssptList" :label="item.brandName" :value="item.dictId" :key="item.dictId+6000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="交易方式" prop="TradeWay" v-show="addMsg.ClientSource == 1|| addMsg.ClientSource == 4"> <el-select v-model="addMsg.TradeWay" :disabled="true" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in jyfsList" :label="item.Name" :value="item.Id" :key="item.Id+7000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-if="addMsg.TradeWay == 1"> <el-form-item label="平台订单号" prop="PlatformOrder"> <el-input v-model="addMsg.PlatformOrder" @input="platformOrderMethods" :disabled="isAllowUpdate == 0"> </el-input> </el-form-item> </el-col> <el-col :span="4" v-show="addMsg.GroupType == '2'"> <el-form-item label="报价单" prop="QuotationUrl"> <div style="margin-bottom: 10px; width: 32%" v-loading="uploadLloading" element-loading-text="拼命上传中"> <el-upload ref="my-upload" class="upload-demo" :http-request="uploadFileBtnFJ" :multiple="true" :show-file-list="true" :on-preview="previewFileFJ" :on-remove="removeFileFJ" :limit="1" :file-list="fileFujianList" action> <el-button size="small" type="primary">点击上传</el-button> </el-upload> </div> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="24"> <el-form-item label="备注" prop="Remarks"> <el-input v-model="addMsg.Remarks" type="textarea" maxlength="500"></el-input> </el-form-item> </el-col> </el-row> </el-form> </div> <!-- 其他类型的修改信息2 --> <div class="productQuerybottomLayer ownScrollbarStyle" v-show="isShowLayer" :style="{ height: ScreenHeight }"> <p> 修改 <span class="fr"> <input type="button" class="hollowFixedBtn" value="取消" @click="cancelSubmit()" /> <input type="button" class="normalBtn" value="保存" @click="submitForm('addMsg')" /> </span> </p> <el-form :model="addMsg" ref="addMsg" label-position="right" :rules="rules" label-width="90px"> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="客户类型" prop="CustomerType"> <el-select v-model="addMsg.CustomerType" filterable :placeholder="$t('pub.pleaseSel')" @change="getTypePrice" :disabled="true"> <el-option v-for="item in khlxList" :label="item.Name" :value="item.Id" :key="item.Id+8000"> </el-option> </el-select> </el-form-item> <el-form-item label="参团类型" prop="GroupType"> <el-select v-model="addMsg.GroupType" filterable :placeholder="$t('pub.pleaseSel')" @change="gettypechange(addMsg.GroupType)"> <!-- v-if="item.Id != 5" --> <el-option v-for="item in ctlxList" :label="item.Name" :value="item.Id" :key="item.Id+9000"> </el-option> </el-select> </el-form-item> <el-form-item v-if="addMsg.GroupType == '3'" label="是否用房" prop="GroupTypeNeedHouse"> <el-switch @change="$forceUpdate()" v-model="addMsg.GroupTypeNeedHouse" active-value="0" inactive-value="1"></el-switch> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="联系人" prop="ContactName" v-show="addMsg.CustomerType == 3 || addMsg.CustomerType == 4"> <el-input v-model="addMsg.ContactName"></el-input> </el-form-item> <el-form-item label="联系电话" prop="ContactMobile" v-show="addMsg.CustomerType == 3 || addMsg.CustomerType == 4"> <el-input v-model="addMsg.ContactMobile"></el-input> </el-form-item> <el-form-item label="客户门店" prop="CustomerId" v-show=" addMsg.CustomerType == 1 || addMsg.CustomerType == 2 || addMsg.CustomerType == '' "> <el-select v-model="addMsg.CustomerId" filterable :placeholder="$t('pub.pleaseSel')" @change="getSspt" :disabled="true"> <el-option v-for="item in khmdList" :label="item.customerName" :value="item.customerId" :key="item.customerId+10000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="出发城市" prop="DepartureCityId"> <el-select filterable v-model="addMsg.DepartureCityId" filterable :placeholder="$t('pub.pleaseSel')" @change="addMsg.IsIntermodal = 2"> <el-option v-for="item in startCityList" :label="item.Name" :value="item.ID" :key="item.ID+20000"> </el-option> </el-select> </el-form-item> <el-form-item label="是否联运" prop="IsIntermodal" v-show="addMsg.DepartureCityId != SetOutCityId"> <el-switch v-model="addMsg.IsIntermodal" active-value="1" inactive-value="2" @change="getUnionTravelPrice(addObj, 1)"></el-switch> </el-form-item> <el-form-item label="联运时间" prop="GoCityTime" v-show=" addMsg.IsIntermodal == 1 && addMsg.DepartureCityId != SetOutCityId "> <el-date-picker :picker-options="pickerOptions0" v-model="addMsg.GoCityTime" value-format="yyyy-MM-dd" type="date" @change="getUnionTravelPrice(addObj, 1)"></el-date-picker> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="返回城市" prop="ReturnArriveCityId"> <el-select filterable v-model="addMsg.ReturnArriveCityId" filterable :placeholder="$t('pub.pleaseSel')" @change="addMsg.IsReturnIntermodal = 2"> <el-option v-for="item in startCityList" :label="item.Name" :value="item.ID" :key="item.ID+30000"> </el-option> </el-select> </el-form-item> <el-form-item label="是否联运" prop="IsReturnIntermodal" v-show="addMsg.ReturnArriveCityId != reOutCityId"> <el-switch v-model="addMsg.IsReturnIntermodal" active-value="1" inactive-value="2" @change="getUnionTravelPrice(addObj, 2)"></el-switch> </el-form-item> <el-form-item label="联运时间" prop="IsReturnIntermodal" v-show=" addMsg.IsReturnIntermodal == 1 && addMsg.ReturnArriveCityId != reOutCityId "> <el-date-picker :picker-options="pickerOptions1" v-model="addMsg.BackCityTime" value-format="yyyy-MM-dd" type="date" @change="getUnionTravelPrice(addObj, 2)"></el-date-picker> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="本团单价" prop="TC_Price"> <el-input v-model="addMsg.TC_Price" :disabled="true"></el-input> </el-form-item> <el-form-item label="出发联运价" v-show=" addMsg.IsIntermodal == 1 && addMsg.DepartureCityId != SetOutCityId "> <el-input v-model="stratPrice" v-show="stratPriceShow" :disabled="true"></el-input> <span class="colorE95252" v-show="!stratPriceShow">暂无报价!</span> </el-form-item> <el-form-item label="返回联运价" v-show=" addMsg.IsReturnIntermodal == 1 && addMsg.ReturnArriveCityId != reOutCityId "> <el-input v-model="returnPrice" v-show="returnPriceShow" :disabled="true"></el-input> <span class="colorE95252" v-show="!returnPriceShow">暂无报价!</span> </el-form-item> </el-col> <el-col :span="4" v-if="isChecked == true"> <template> <el-form-item label="成交单价" prop="Unit_Price" v-if="HightUnitPrice === '2'"> <el-select v-model="addMsg.Unit_Price" filterable :placeholder="$t('pub.pleaseSel')" @change="getTotalPrice(2)"> <el-option v-for="(item, index) in Unit_PriceList" :label="item.LessMoney" :value="item.ID" :key="index + 40000"> </el-option> </el-select> </el-form-item> <el-form-item label="成交单价" prop="Unit_Price" v-else> <el-input v-model="addMsg.Unit_Price" @change="getTotalPrice(3)"></el-input> </el-form-item> </template> <el-form-item label="高于本团单价" v-show="addMsg.GroupType != 4"> <el-switch v-model="HightUnitPrice" active-value="1" inactive-value="2"></el-switch> </el-form-item> <el-form-item v-show="addMsg.GroupType != 4"> <p v-if="LessMoney == 0" style="line-height: 18px; color: #e95252"> 注:如果超出本团的最低让价,差价将由你来承担 </p> <p v-else="LessMoney > 0" style="line-height: 18px; color: #e95252"> 注:最多少价{{ LessMoney }}元,如需少价更多请联系上级主管 </p> </el-form-item> </el-col> <el-col :span="4" v-else> <el-form-item label="成交单价" prop="Unit_Price"> <el-input v-model="addMsg.Unit_Price" @keyup.native=" checkPrice(addMsg, 'Unit_Price'); getTotalPrice(); "> </el-input> </el-form-item> <el-form-item> <p style="line-height: 18px; color: #e95252"> 注:如果超出本团的最低让价,差价将由你来承担 </p> </el-form-item> </el-col> </el-row> <div style="width: 100%; border-top: 1px dashed #ccc; margin-bottom: 25px"></div> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="单地接数量" v-show="addMsg.GroupType == 4"> <el-input v-model="addMsg.AirticketNum" @keyup.native="checkInteger(addMsg, 'AirticketNum')" @input=" getNumber(); getTotalPrice(); getHouseNo(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="成人人数" v-show="addMsg.GroupType !== '4'"> <el-input v-model="addMsg.ManNum" @keyup.native="checkInteger(addMsg, 'ManNum')" @input=" getNumber(); getHouseNo(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <p v-if="IsChildrenTour == 2" style=" color: #e95252; font-size: 12px; line-height: 40px; text-align: center; "> 本团不支持儿童出游! </p> <el-form-item v-if="IsChildrenTour == 1" label="儿童不占床"> <el-input v-model="addMsg.ChirdNoNeedBedNum" @keyup.native="checkInteger(addMsg, 'ChirdNoNeedBedNum')" @input=" getNumber(); getHouseNo(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4" v-if="IsChildrenTour == 1"> <el-form-item label="儿童占床" v-show="addMsg.GroupType !== '4'"> <el-input v-model="addMsg.ChirdNeedBedNum" @keyup.native="checkInteger(addMsg, 'ChirdNeedBedNum')" @input=" getNumber(); getHouseNo(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4" v-if="IsChildrenTour == 1"> <el-form-item label="婴儿人数" v-show="addMsg.GroupType !== '4'"> <el-input v-model="addMsg.BabyNum" @keyup.native="checkInteger(addMsg, 'BabyNum')" @input=" getNumber(); getTotalPrice(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="老人人数" v-show="addMsg.GroupType !== '4'"> <el-input v-model="addMsg.OldPeopleNum" @keyup.native="checkInteger(addMsg, 'OldPeopleNum')" @input=" getNumber(); getHouseNo(); getTotalPrice(); "></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="单房数量"> <el-input v-model="addMsg.SingleRoomNum" @keyup.native="checkInteger(addMsg, 'SingleRoomNum')" @input=" yzBigBed2(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="大床房"> <el-input v-model="addMsg.BigRoomNum" @keyup.native="checkInteger(addMsg, 'BigRoomNum')" @input=" yzBigBed(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="三人房"> <el-input v-model="addMsg.TripleRoomNum" @keyup.native="checkInteger(addMsg, 'TripleRoomNum')" @input=" yzBigBed1(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="签证数量"> <el-input v-model="addMsg.VisaNum" @keyup.native="checkInteger(addMsg, 'VisaNum')" @input=" yzVisaNum(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="保险数量"> <el-input v-model="addMsg.SafeNum" @keyup.native="checkInteger(addMsg, 'SafeNum')" @input=" yzSafeNum(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="拒签人数" prop="RefuseVisaNum"> <el-input v-model="addMsg.RefuseVisaNum" @keyup.native="checkInteger(addMsg, 'RefuseVisaNum')" @input="getTotalPrice()"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="预计用房"> <el-input v-model="addMsg.PredictRoomNum" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" class="Ysze"> <el-form-item label="应收总额" prop="PreferPrice"> <el-input v-model="addMsg.PreferPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <button @click="Yszefz" type="button" class="Ysze-button el-button--primary" style=" background-color: rgb(0, 198, 255); border-color: rgb(0, 198, 255); "> <i class="iconfont icon-nav-hangzheng" style="font-size: 12px"></i> </button> <!-- 修改应收总额 --> <div class="changeYsze" v-show="Ysze"> <el-form :model="addMsg_form" ref="addMsg_form" label-position="right" label-width="100px"> <span class="el-icon-close" @click="Ysze = false"></span> <el-form-item label="签证费"> <el-input v-model="addMsg_form.VisaPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="退签证费"> <el-input v-model="addMsg_form.BackVisaPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="杂费"> <el-input v-model="addMsg_form.OtherPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="老人附加费"> <el-input v-model="addMsg_form.OldManChargePrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="儿童附加费"> <el-input v-model="addMsg_form.BabyChargePrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="单房差"> <el-input v-model="addMsg_form.SingleRoomPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="儿童占床增收"> <el-input v-model="addMsg_form.ChildNeedPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="儿童不占床减免"> <el-input v-model="addMsg_form.ChildNoNeedPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="收损金额"> <el-input v-model="addMsg_form.OpSetLossMoney" :disabled="true"></el-input> </el-form-item> <el-form-item label="单地接"> <el-input v-model="addMsg_form.SingleDMCPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item label="婴儿价"> <el-input v-model="addMsg_form.BabyPrice" :disabled="!IsUpdateOrderMoney"></el-input> </el-form-item> <el-form-item v-if="IsUpdateOrderMoney"> <el-button type="primary" style="padding: 6px 15px" @click="submitYSZEForm">确定</el-button> </el-form-item> </el-form> </div> </el-col> <el-col :span="4"> <el-form-item label="预计提成" prop="Commission"> <el-input v-model="addMsg.Commission" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" v-show="addMsg.CustomerType == 1 || addMsg.CustomerType == 2"> <el-form-item label="分摊人" prop="CommissionSharePeople"> <el-select :disabled="isUpdateSharePeople" filterable clearable @change="getTicheng" v-model="addMsg.CommissionSharePeople" :placeholder="$t('pub.pleaseSel')"> <el-option label="无" :value="comSelect"></el-option> <el-option v-for="(item, index) in employeeList" :label="item.EmName" :value="item.EmployeeId" :key="index+50000"></el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-show=" addMsg.CommissionSharePeople != '-1' && (addMsg.CustomerType == 1 || addMsg.CustomerType == 2) "> <el-form-item label="分摊金额" prop="CommissionShareMoney"> <el-input v-model="addMsg.CommissionShareMoney" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="单男单女"> <el-radio v-model="addMsg.OneSex" :label="1">男</el-radio> <el-radio v-model="addMsg.OneSex" :label="2">女</el-radio> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="经济舱" prop="YSeatNum"> <el-input v-model="addMsg.YSeatNum" @keyup.native="checkInteger(addMsg, 'YSeatNum')"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="商务舱" prop="ESeatNum"> <el-input v-model="addMsg.ESeatNum" @input="getNumber()"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="头等舱" prop="FSeatNum"> <el-input v-model="addMsg.FSeatNum" @input="getNumber()"></el-input> </el-form-item> </el-col> <el-col :span="8"> <div class="clearfix"> <div class="leftSetInfo"> <span class="GO_Title">可退景点</span> </div> <div class="GO_TPright clearfix"> <el-popover popper-class="_TravelPricePopover" trigger="click"> <div> <div class="GOScenicDiv"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td class="_color_666">选择</td> <td class="_color_666">景点名称</td> <td class="_color_666">OP设置金额</td> <td class="_color_666">人数</td> <td class="_color_666">退款金额</td> </tr> <tr v-for="item in ScenicRefundList"> <td> <el-checkbox :checked="item.IsChecked" @change="getGOScenic(item)"></el-checkbox> </td> <td> {{ item.CouponsName }} </td> <td> {{ item.RefundMoney }} </td> <td> <el-input class="w80" @keyup.native=" checkInteger(item, 'Number'), CheckNum(item) " @change="getGOScenictWO" v-model="item.Number"></el-input> </td> <td> <el-input class="w80" @keyup.native="checkPrice(item, 'BackMoney')" @change="getGOScenictWO" v-model="item.BackMoney"></el-input> </td> </tr> </table> </div> </div> <div slot="reference" class="SimulateDrop-box"> <span class="SD_flight" v-for="subItem in SciencNameList">{{ subItem }}</span> <i class="iconfont icon-arrow-down GO_SimulaDrop"></i> </div> </el-popover> </div> </div> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="客人来源" prop="ClientSource"> <el-select v-model="addMsg.ClientSource" :disabled="addMsg.OrderForm !== 4 ? true : false" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in ddlyList" :label="item.Name" :value="item.Id" :key="item.Id+60000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="所属平台" prop="BrandId" v-show="addMsg.ClientSource == 1|| addMsg.ClientSource == 4"> <el-select v-model="addMsg.BrandId" :disabled="false" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in ssptList" :label="item.brandName" :value="item.dictId" :key="item.dictId+70000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="交易方式" prop="TradeWay" v-show="addMsg.ClientSource == 1|| addMsg.ClientSource == 4"> <el-select v-model="addMsg.TradeWay" :disabled="addMsg.OrderForm !== 4 ? true : false" filterable :placeholder="$t('pub.pleaseSel')"> <el-option v-for="item in jyfsList" :label="item.Name" :value="item.Id" :key="item.Id+80000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-if="addMsg.TradeWay == 1"> <el-form-item label="收款账户"> <el-select filterable v-model="addMsg.PlatformAccount" @change="changeSelect"> <el-option v-for="item in PlatformAccountList" :label="item.Alias" :value="item.ID" :key="item.ID+90000"> </el-option> </el-select> </el-form-item> </el-col> <el-col :span="4" v-if="addMsg.TradeWay == 1"> <el-form-item label="平台订单号" prop="PlatformOrder"> <el-input v-model="addMsg.PlatformOrder" @input="platformOrderMethods" :disabled="isAllowUpdate == 0"> </el-input> </el-form-item> </el-col> <el-col :span="4" v-show="addMsg.GroupType == '2'"> <el-form-item label="报价单" prop="QuotationUrl"> <div style="margin-bottom: 10px; width: 32%" v-loading="uploadLloading" element-loading-text="拼命上传中"> <el-upload ref="my-upload" class="upload-demo" :http-request="uploadFileBtnFJ" :multiple="true" :show-file-list="true" :on-preview="previewFileFJ" :on-remove="removeFileFJ" :limit="1" :file-list="fileFujianList" action> <!-- <i class="el-icon-upload"></i> <div class="el-upload__text"> 将文件拖到此处,或 <em>点击上传</em> </div> --> <el-button size="small" type="primary">点击上传</el-button> </el-upload> </div> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="24"> <el-form-item label="备注" prop="Remarks"> <el-input v-model="addMsg.Remarks" type="textarea" maxlength="500"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20" v-if="addMsg.IsIntermodal == 1 || addMsg.IsReturnIntermodal == 1"> <el-col :span="24"> <el-form-item label="联运备注" prop="UnionRemark"> <el-input v-model="addMsg.UnionRemark" type="textarea" maxlength="500"></el-input> </el-form-item> </el-col> </el-row> </el-form> </div> <!-- 修改房型 --> <div class="productQuerybottomLayer ownScrollbarStyle" v-show="isShowHouse"> <p> 修改房型 <span class="fr"> <input type="button" class="hollowFixedBtn" value="取消" @click="houseCancel()" /> <input type="button" class="normalBtn" value="保存" @click="houseSubmit()" /> </span> </p> <el-form :model="addMsg" ref="addMsg" label-position="right" :rules="rules" label-width="80px"> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="成人人数" prop="ManNum"> <el-input v-model="addMsg.ManNum" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <p v-if="IsChildrenTour == 2" style=" color: #e95252; font-size: 12px; line-height: 40px; text-align: center; "> 本团不支持儿童出游! </p> <el-form-item v-if="IsChildrenTour == 1" label="儿童不占床" prop="ChirdNoNeedBedNum"> <el-input v-model="addMsg.ChirdNoNeedBedNum" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" v-if="IsChildrenTour == 1"> <el-form-item label="儿童占床" prop="ChirdNeedBedNum"> <el-input v-model="addMsg.ChirdNeedBedNum" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4" v-if="IsChildrenTour == 1"> <el-form-item label="婴儿人数" prop="BabyNum"> <el-input v-model="addMsg.BabyNum" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="老人人数" prop="OldPeopleNum"> <el-input v-model="addMsg.OldPeopleNum" :disabled="true"></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="单地接数量" prop="AirticketNum"> <el-input v-model="addMsg.AirticketNum" :disabled="true"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="单房数量" prop="SingleRoomNum"> <el-input v-model="addMsg.SingleRoomNum" @keyup.native="checkInteger(addMsg, 'SingleRoomNum')" @input=" yzBigBed2(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="大床房" prop="BigRoomNum"> <el-input v-model="addMsg.BigRoomNum" @keyup.native="checkInteger(addMsg, 'BigRoomNum')" @input=" yzBigBed(); getTotalPrice(); "></el-input> </el-form-item> </el-col> <el-col :span="4"> <el-form-item label="三人房" prop="TripleRoomNum"> <el-input v-model="addMsg.TripleRoomNum" @keyup.native="checkInteger(addMsg, 'TripleRoomNum')" @input=" yzBigBed1(); getTotalPrice(); "></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="4"> <el-form-item label="预计用房" prop="PredictRoomNum"> <el-input v-model="addMsg.PredictRoomNum" :disabled="true"></el-input> </el-form-item> </el-col> </el-row> <el-row :gutter="20"> <el-col :span="24"> <el-form-item label="备注" prop="Remarks"> <el-input v-model="addMsg.Remarks" type="textarea" maxlength="500"></el-input> </el-form-item> </el-col> </el-row> </el-form> </div> <div style=" float: left; border-radius: 4px; margin: 20px 20px 20px 0; padding: 0 10px; height: 34px; line-height: 34px; background-color: #d2d2d2; font-size: 14px; color: #333; font-weight: bold; "> {{ tuanInfo.config && tuanInfo.config.LtName }} {{ tuanInfo.config && (tuanInfo.config.TCNUM+ (tuanInfo.config.TeamType == 1 ?"(小包团)":"")) }} <span style=" padding: 2px 5px; font-weight: normal; background-color: #297bef; border-radius: 4px; color: #fff; "> {{ tuanInfo.config && tuanInfo.config.OutBranchName }} </span> </div> <div class="GB_LeaderContent clearfix"> <div class="GB_LeaderListContent clearfix" v-if="tuanInfo.leader != null"> <div class="GB_leftImg"> <img src="../../assets/img/bg_c3@3x.png" /> </div> <div class="GB_rightNameList"> <div v-if=" tuanInfo.leader.LeaderId > 0 && tuanInfo.leader.LeaderName != '' "> {{ tuanInfo.leader.LeaderName }}/领队 </div> <div v-if=" tuanInfo.leader.GuideId > 0 && tuanInfo.leader.GuideName != '' "> {{ tuanInfo.leader.GuideName }}/导游 </div> </div> </div> <div v-else class="GB_LeaderListContent GB_zanwu"> <div>暂未安排</div> <div>领队导游</div> </div> </div> <!-- --> <div v-if="tuanInfo && tuanInfo.config && tuanInfo.config.IsOrder != 1" style="float: right"> <span style="color: #f78989"> 订单操作已关闭,如需修改请联系OP.</span> </div> <div style="width: 100%; height: auto; overflow-x: auto" class="ownScrollbarStyle"> <!-- 表格 --> <table class="groupTourOrderSearchTable" border="0" cellspacing="0" cellpadding="0"> <tr> <th width="230">单号</th> <th width="100">客户信息</th> <th width="100">人数/机位数</th> <th width="80">单价</th> <th width="80">成交单价</th> <th width="80">应收总额</th> <th width="80">实收</th> <th width="80">人头小费</th> <th width="70">优惠</th> <th width="70">幸福存折</th> <th width="70">退款</th> <th width="70">平台税金</th> <th width="80">平台在途</th> <th width="80">待收金额</th> <th width="60">状态</th> <th width="80">候补</th> <th width="100">确认函</th> <th width="200">操作</th> </tr> <tr> <td v-show="list.length == 0" colspan="18" align="center"> 暂无数据 </td> </tr> <template v-for="(op,rootIndex) in list"> <tbody class="not_border" :key="rootIndex+1000000"> <tr> <td colspan="18"> 类型:<span style="color: #e95252">{{ op.groupName }}</span> </td> </tr> </tbody> <tbody v-for="(item, index) in op.list" :key="index+rootIndex+100000"> <tr> <td rowspan="3" style="position: relative"> <span class="TC_neibu" style="float: inherit;margin-left: 5px;margin-right: 5px;position: absolute;top: 10px;left:3px" v-if="item.standardCurrencyName" :class="{'TCneibu':item.standardCurrencyName=='人民币','TCb2b':item.standardCurrencyName=='日元', 'TCb2c':item.standardCurrencyName=='新台币','AppPlat':item.StandardCurrencyName=='', 'otherPlat':item.standardCurrencyName=='',}">{{item.standardCurrencyName}}结算</span> <p v-if="item.isUnionOrder == 1" class="GO_union">联</p> <p v-if="item.isChargeLossOrders == 1" style="color: red">损</p> <p class="fbold over_ellipsis" style="width: 100%" :title="item.orderId"> <span>{{ item.orderId }}</span> <span style=" font-weight: 100; text-decoration: underline; cursor: pointer; color: #e95252; " v-if="item.scoreNum >= 0" @click=" goInvetig('investigationList', item.tcid, item.orderId) ">(评分{{ item.scoreNum }})</span> <el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm == 4"> <i class="iconfont icon-xiaochengxu" style="font-size: 22px; color: red"></i></el-tooltip> <el-tooltip class="item" effect="dark" content="通过B2B确认单报名" placement="top" v-show="item.isFormB2B == 1"> <i class="iconfont icon-tiaozheng" style="font-size: 22px; color: #297bef"></i></el-tooltip> </p> <div> {{ item.createBy }}<br /><span v-if="item.leaveStr != ''" style="color: red">({{ item.leaveStr }})</span> </div> <p class="fz12 over_ellipsis" style="width: 100%"> {{ item.commissionSPeopleName == "无" ? "" : item.commissionSPeopleName }} </p> <p>下单时间:{{ item.createDate }}</p> <p v-if="item.tradeWay == 1">{{ item.platformOrder }}</p> <template v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder "> <p v-if="item.commissionMoney" style="color: red"> 提成:{{ item.commissionMoney }} {{ item.commissionCurrency }} </p> <p v-else-if="item.latestCommissionMoney" style="color: red"> 提成:{{ item.latestCommissionMoney }} </p> </template> <div> <div style="color: green" v-if=" item.commissionMoney == '' || item.commissionMoney == '-1' "> <p v-if="item.extraRewardMoney > 0"> 额外奖励金额:{{ item.extraRewardMoney }} </p> <p v-if="item.extraDeductMoney > 0"> 额外扣除金额:{{ item.extraDeductMoney }} </p> </div> <div style="color: red" v-else> <p v-if="item.extraRewardMoney > 0"> 额外奖励金额:{{ item.extraRewardMoney }} </p> <p v-if="item.extraDeductMoney > 0"> 额外扣除金额:{{ item.extraDeductMoney }} </p> </div> <div style="color: red"> <p v-if="item.unionExtraMoney != 0"> 联运额外返佣:{{ item.unionExtraMoney }} </p> </div> </div> <div v-if="op.groupName === '单团'" style="color: red; cursor: pointer;" @click="seeBJD(item.quotationUrl)"> 查看报价单 </div> <div v-if="item.autoCouponId>-1">优惠券: <span v-if="item.autoCouponId==0" style="color: red">待发放</span> <span v-if="item.autoCouponId==1" style="color: green">已发放</span> <span v-if="item.autoCouponId==2" style="color: red">已撤回</span> </div> </td> <td> <p v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder " class="fz12 over_ellipsis" style="width: 120px" :title="item.contactName"> {{ item.contactName }} </p> <p v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder " class="fz12"> {{ item.contactMobile }} </p> <p class="fz12" v-if=" (item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder) && item.industryCategory !== '' " style="color: green"> 行业类别:{{ item.industryCategory }} </p> <p v-if=" item.isOwn == 2 && !IsSupperOrderEdit && !IsLookOrder && isUpdateOrder == false "> ***** </p> </td> <td> <span v-if="item.guestNumStatus == 1" style="color: #1aa86b" class="personNo" slot="reference" @click="getMembersDetail(item)">{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : "" }}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}</span> <span v-if="item.guestNumStatus == 2" style="color: #e95252" class="personNo" slot="reference" @click="getMembersDetail(item)">{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : "" }}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}</span> <span v-if="item.guestNumStatus == 3" style="color: #666" class="personNo" slot="reference" @click="getMembersDetail(item)">{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : "" }}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}</span> </td> <td style="color: #ff9c00"> <span>{{ item.tC_Price }}</span> </td> <td style="color: #ff9c00"> <span v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder ">{{ item.unit_Price }}</span> <span v-else>*****</span> </td> <td> <p style="color: #ff9c00"> <span v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder ">{{ item.preferPrice }}</span> <span v-else>*****</span> </p> </td> <td> <el-popover style="padding: 0" width="370" trigger="click"> <div class="personNolayer"> <table border="0" cellspacing="1" cellpadding="1"> <tr> <th>单据号</th> <th>金额</th> <th>类型</th> <th>状态</th> </tr> <tr v-if="orderList.length > 0" v-for="(item2, index2) in orderList" :key="index2+110000"> <td>{{ item2.FrID }}</td> <td> <span v-if=" item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder ">{{ item2.PayMoney }}</span> <span v-else>******</span> </td> <td>{{ item2.TypeName }}</td> <td>{{ item2.StatusName }}</td> </tr> <tr v-if="orderList.length == 0"> <td colspan="4" align="center">暂无数据</td> </tr> </table> </div> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder" :style="{ cursor: 'pointer', color: item.dueInMoney === 0 ? '' : '#e95252', }" @click="getOrderDetail(item)" slot="reference">{{ item.income }}</span> <span v-else>******</span> </el-popover> </td> <td style="color: #ff9c00"><span>{{ item.preferTipAmount?item.preferTipAmount:'0.00' }}</span></td> <!-- 优惠 --> <td> <el-popover style="padding: 0" width="600" trigger="click"> <div class="personNolayer"> <table border="0" cellspacing="1" cellpadding="1"> <tr> <th>优惠券名称</th> <th>优惠券类型</th> <th>抵扣金额/折扣</th> <th>使用条件</th> <th>获取方式</th> <th>获取日期</th> </tr> <tr v-if="item.couponAllotList.length > 0" v-for="(item2, index2) in item.couponAllotList" :key="index2+120000"> <td>{{ item2.couponsName }}</td> <td> <span v-if="item2.couponsType == 1">抵用券</span> <span v-if="item2.couponsType == 2">折扣卷</span> </td> <td>{{ item2.denomination }}</td> <td>满{{ item2.useCondition }}可用</td> <td> <span v-if="item2.accessType == 1">抽奖</span> <span v-else></span> </td> <td>{{ item2.acessDate }}</td> </tr> <tr v-if="item.couponAllotList.length == 0"> <td colspan="6" align="center">暂无数据</td> </tr> </table> </div> <span style=" cursor: pointer; color: #e95252; text-decoration: underline; " @click="getOrderDetail(item)" slot="reference">{{ item.discountMoney }}</span> </el-popover> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"> <el-popover v-if="item.customerId || item.customerId == 0" style="padding: 0" width="600" trigger="click"> <div class="personNolayer"> <table border="0" cellspacing="1" cellpadding="1"> <tr> <th>金额</th> <th>类型</th> <th>描述</th> <th> 时间(<span @click="goUrlHappy(item)" style="cursor: pointer" colspan="4" align="center">查看更多</span>) </th> </tr> <tr v-for="(item2, index2) in redBagList" :key="index2+130000"> <td>{{ item2.Money }}</td> <td> {{ item2.Type == 1 ? "收入" : "折扣" }} </td> <td>{{ item2.Description }}</td> <td>{{ item2.UpdateTime }}</td> </tr> <tr v-if="redBagList.length == 0"> <td colspan="4" align="center">暂无数据</td> </tr> <tr></tr> </table> </div> <span @click="getRedBag(item)" style=" cursor: pointer; color: #e95252; text-decoration: underline; " slot="reference">{{ item.redEnvelopeMoney }}</span> </el-popover> <span v-else style=" cursor: pointer; color: #e95252; text-decoration: underline; ">{{ item.redEnvelopeMoney }}</span> </span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder">{{ item.refund }}</span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder">{{ item.platformTax }}</span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder">{{ item.zaiTuMoney }}</span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder" :class="{ color_red_order: item.dueInMoney !== item.preferPrice, }">{{ item.dueInMoney }}</span> <span v-else>******</span> </td> <td v-if="item.isChargeLossOrders == 1" class="fz12" style="color: #e95252"> 收损 </td> <td v-else class="fz12" :style="item.orderState === 3 ? 'color: #e95252;' : ''"> {{ item.statsstr }} </td> <td class="fz12"> <div v-if="item.orderState === 3"> <span v-if="item.waitYNum > 0" style="margin: 0 5px 0 0">{{ item.waitYNum }}(Y)</span> <span v-if="item.waitENum > 0" style="margin: 0 5px 0 0">{{ item.waitENum }}(E)</span> <span v-if="item.waitFNum > 0" style="margin: 0 5px 0 0">{{ item.waitFNum }}(F)</span> </div> </td> <td> <span v-if="item.confirmFileList.length > 0" style="cursor: pointer" class="fz12 dowloadSpan" @click="downLoadFile(item.confirmFileList)"> 确认函下载 </span> <i v-if=" item.confirmFileList.length > 0 && item.commissionSharePeople !== userId " @click="deleteFile(item)" style="margin-left: 5px" class="el-icon-error color999"></i> <template v-if="item.confirmFileList.length == 0"> <el-upload v-if=" (item.confirmFileList.length == 0 && item.isOwn == 1) || IsSupperOrderEdit " :http-request="uploadFileBtn" :multiple="false" :show-file-list="false" action=""> <el-button size="small" type="danger" @click="getItem(item)">上传</el-button> </el-upload> </template> </td> <td class="groupTourOrderIcon"> <el-button-group v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"> <el-tooltip class="item" effect="dark" content="修改" placement="top-start"> <el-button v-if=" IsSupperOrderEdit || isUpdateOrder || (item.isOwn == 1 && item.isOrder == '1' && item.isHaveFinance != '1' && item.orderState != '1' && item.orderState != '4') " type="primary" style="background-color: #00c6ff !important; border-color: #00c6ff" icon="iconfont icon-bianji-smal" @click="getDetail(item)"></el-button> </el-tooltip> <el-tooltip class="item" effect="dark" content="修改备注" placement="top-start"> <el-button v-if="IsSupperOrderEdit || item.isOwn == 1" type="primary" style="background-color: #a55eea !important; border-color: #a55eea" icon="iconfont icon-beizhu" @click="getRemarks(item)"></el-button> </el-tooltip> <el-tooltip effect="dark" content="日志" placement="top-start" style="float: left"> <el-popover width="230" trigger="click"> <div class="priceContentDiv"> <div class="AuditLog">日志</div> <div class="logContact" style="background-color: #f9f9f9; padding: 20px 10px 0"> <div v-if="logList.length > 0" v-for="(item, index) in logList" :key="index+140000"> <div class="clearfix"> <div class="Auditcircle" style="left: 6px !important"></div> <div class="operateName" style="color: #005caa"> {{ item.emName }} </div> <div class="operateDate fz12 color666"> {{ item.x }} </div> </div> <div class="fz12 color333">{{ item.logInfo }}</div> </div> <div v-if="logList.length == 0">暂无数据</div> </div> </div> <el-button slot="reference" @click="getLogDetail(item)" type="primary" style=" background-color: #47bf8c !important; border-color: #47bf8c; border-top-right-radius: 0; border-bottom-right-radius: 0; " icon="iconfont icon-rizhi1"></el-button> </el-popover> </el-tooltip> <el-tooltip effect="dark" content="更多" placement="top-start" style="float: left"> <el-popover width="100" trigger="hover"> <div class="groupTourOrder_more"> <div v-if="S_UpdateOrderMoney" @click="clickEditTip(item)"> 编辑小费 </div> <div @click="goUrlT('confirmationOrder', item.orderId)"> 确认函 {{ item.operationState === 2 ? "(拒绝)" : item.operationState === 1 ? "(通过)" : item.operationState === 0 ? "(待审核)" : "" }} </div> <div v-if="isEditOrderCreate == 1 || IsSupperOrderEdit" @click="getSalerInfo(item)"> 修改业务员 </div> <template v-if="item.lineId==90"> <div v-if="item.outNotice == 1" @click="toTrip(item)"> {{ $t("Operation.Op_teamNotice") }}<span v-if="item.outNotice == 1">(OK)</span><span v-else>({{ $t("visa.v_zanding") }})</span> </div> </template> <template v-else> <div v-if="item.outNotice == 1" @click="toTrip(item)"> {{ $t("Operation.Op_teamNotice") }}<span v-if="item.outNotice == 1">(OK)</span><span v-else>({{ $t("visa.v_zanding") }})</span> </div> </template> <div v-if="item.orderState != '4'" @click="goUrlP('旅客名单', 'passengerSaleList', item)"> 旅客名单 </div> <div v-if=" item.isOrder == '1' && (item.isHaveFinance == '1' || item.orderState == '1') " @click="getHouse(item)"> 修改房型 </div> <div v-if=" item.isOrder == '1' && item.orderState != '4' && TransferMission == true " @click="transfer(item)"> 订单转团 </div> <div v-if="isUpdateOrder" @click=" OPRemark(item), (zhuanLoading = true), (OPRemarkMsg.OrderId = item.orderId) "> OP备注 </div> <div v-if="isUpdateOrderCommission" @click=" (TCMsg.OrderId = item.orderId), (TCMsg.CommissionMinusRate = item.commissionMinusRate), (TCMsg.LatestCommissionMoney = item.latestCommissionMoney), (TiChengLoading = true) "> 修改提成 </div> <div v-if="isUpdateOrderCommission" @click=" (EwMsg.OrderId = item.orderId), (EwMsg.ExtraRewardMoney = item.extraRewardMoney), (EwMsg.ExtraDeductMoney = item.extraDeductMoney), (OrderMoneyDialog = true) "> 设置额外金额 </div> <div v-if=" (item.confirmFileList.length > 0 || item.contractNum.length > 0) && item.receivableMoney - item.invoiceApplyTotal > 0 " @click=" goUrlAdd( 'invoicesManagerAdd', item.orderId, item.tcid, item.customerId ) "> 申请发票 </div> <div v-if=" item.orderState == '1' || item.orderState == '2' " @click="setChargeLoss(item)"> <span v-if="item.isChargeLossOrders == 1">恢复收损单</span> <span v-else>设为收损单</span> </div> <div v-if="item.orderState == 2" @click=" Discount(item.tcid), (SOMsg.OrderId = item.orderId), (SOMsg.OrderUnitPrice = item.unit_Price) "> 申请优惠 </div> <div v-if=" qjGroupId == userInfo.RB_Group_id || F_Finance_Create " @click="ShenQingPhoto(item)"> 申请照片 </div> <div v-if=" item.isOrder == '1' && (item.orderState == '1' || item.orderState == '2' || item.orderState == '3') && item.isCanClear == 0 " @click="deleteItem(item)"> 取消 </div> <div v-if=" item.isOrder == '1' && (item.orderState == '1' || item.orderState == '2' || item.orderState == '3') && item.isCanClear == 1 " title="如需取消订单清联系OP" style="color: red"> 订单已确认,取消请联系OP </div> <div v-if="item.scoreNum >= 0" @click=" goInvetig( 'investigationList', item.tcid, item.orderId ) "> 查看旅客调查 </div> </div> <el-button slot="reference" type="primary" style=" background-color: #297bef !important; border-color: #297bef; border-top-left-radius: 0; border-bottom-left-radius: 0; " icon="iconfont icon-more"></el-button> </el-popover> </el-tooltip> </el-button-group> <payurlItem v-if="item.isOwn == 1 && item.airConfirm != 2" :item="item" :showID="showID" :photoF="item.photoNum > 0" v-show=" item.orderState != '4' && item.orderState != '3' && (qjGroupId == userInfo.RB_Group_id || F_Finance_Create) " v-on:childByValue="childByValue"></payurlItem> </td> </tr> <tr style="height: 20px"> <td colspan="17" class="RL_Order" style="height: 20px"> <span class="RL-remarkTitle" v-if=" item.guestList.length > 0 && (item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder) ">名单:</span> <span class="RL-redType RL-remarkCon" v-if=" item.guestList.length > 0 && (item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder) "> <span v-for="childItem in item.guestList" style="color: blue"> {{childItem.userName}} <span style="color:#f56c6c">{{childItem.visaType==1?'(个签)':''}}</span> <span style="color:#f56c6c">{{childItem.ticketOutTypeStr}} </span> <span v-if="childItem.isApplyPhoto == 1" style="color: red">(照)</span> </span> <span v-if="item.photoNum > 0">(照片一人 {{ item.photoNum }}份)</span> </span> <p v-if="item.cancelGuestList && item.cancelGuestList.length > 0"> <span class="">取消名单:</span> <span class="RL-redType RL-remarkCon"> <span style="color: red" n v-for="(childItem, childIndex) in item.cancelGuestList" :key="childIndex+150000">{{ childItem.userName }}<span style="color:#f56c6c">{{childItem.visaType==1?'(个签)':''}}</span> </span> </span> </p> <span style="display: block">房间信息<span v-if="item.oneSex > 0" style="color: #e95252">({{ item.oneSex == 1 ? "单男" : "单女" }})</span>: {{ item.orderGuestHouseStr }} <el-popover trigger="click" popper-class="KT_Scenic"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr class="_color_666" style="text-align: center"> <th width="150">景点名称</th> <th width="60">人数</th> <th width="60">退款金额</th> </tr> <tr v-for="fItem in item.orderBackScenicList" style="text-align: center"> <td style="text-align: left"> {{ fItem.couponsName }} </td> <td>{{ fItem.number }}</td> <td>{{ fItem.backMoney }}</td> </tr> </table> <span slot="reference" v-if=" item.orderBackScenicList && item.orderBackScenicList.length > 0 " style="color: #f56c6c; margin-left: 20px; cursor: pointer">退景点</span> </el-popover> </span> <div> <span v-if="item.opTipMoney == '' && item.tipMoney != ''" style="color: red">(小费:{{ item.tipMoney }})</span> <span v-if="item.opTipMoney != ''" style="color: red"> (小费:{{ item.opTipMoney }}) <span>单据:</span> <span @click="gourlTip('FinancialDocumentsDetail', id)" style=" text-decoration: underline; color: blue; cursor: pointer; " v-for="(id, i) in item.tipFrId" :key="i+160000">{{ id }}</span> </span> <!--&&item==userId--> <div v-if="item.contractNum && item.contractNum.length==0 &&item.isOwn==1" class="GO_Contract" @click="goContract(item,{})"> 出境合同 </div> <div v-if="item.otherContractList &&item.isOwn==1" class="GO_Contract" @click="goSingleContract(item)"> {{item.otherContractList.length==0?"单项合同":"查看单项合同"}} </div> <div> <template v-if="item.contractNum && item.contractNum.length > 0"> <span v-for="sItem in item.contractNum" class="GO_Contract" @click="goContract(item, sItem)"> {{ sItem.client_Name + "" + sItem.contractNum }} <template v-if="sItem.auditContract&& sItem.auditContract==3"> <font style="color:red">驳回</font> </template> <template v-if="sItem.auditContract&&sItem.auditContract==2"> <font style="color:green">审核通过</font> </template> </span> </template> </div> </div> </td> </tr> <tr> <td colspan="4" class="groupTourOrder_remarksBytuan" style="height: 40px"> <div> <div style="width: 95%; display: inline-block"> <div style="color: red"> <span>备注时间:{{ item.rematksTime }}</span> </div> <div style="color: red"> <p> 备注:<span v-if="item.tsIdList.length > 0">投诉单号: <a class="underline" v-for="ts in item.tsIdList" href="javascript:void(0);" @click=" goUrlTS( 'ComplaintsDetail', ts, item.orderId, '投诉详情' ) ">{{ ts }} </a> ; </span> <template> <template v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder "> <span v-if=" item.clientSource == 1 && item.brandName != '' ">{{ item.brandName }}订单 {{ item.platformOrder }};</span> {{ item.remarks }} </template> </template> </p> </div> <div v-if="item.unionRemark" style="color: red"> <span>联运备注:{{ item.unionRemark }}</span> </div> <template v-if="item.orderGuestFlightList&&item.orderGuestFlightList.length>0"> <template v-for="(uItem,uIndex) in item.orderGuestFlightList"> <div :key="uIndex+170000"> {{uItem.guestNames}} 航班信息: <span v-if="uItem.isSure==1" style="color:rgb(71, 191, 140)">【OK】</span> <span v-else>【暂定】</span> <a v-if="uItem.ticketUnionId&&uItem.ticketUnionId>0" @click="toTrip(item,uItem.ticketUnionId)" style="cursor:pointer;text-decoration:underline;color:green;"> {{ $t("Operation.Op_teamNotice") }}({{ item.outNotice == 1 ? "OK" : "暂定"}}) </a> <br /> <template v-for="(sfItem,sfIndex) in uItem.guestFlightList"> <span style="color:blue;" :key="sfIndex+180000"> {{sfItem.flightDateStr}} {{sfItem.flight_number}} {{sfItem.departure_time}}-{{sfItem.arrival_time}} {{sfItem.departureName}} ({{sfItem.diata}})-{{sfItem.arrivalCityName}}({{sfItem.aiata}}) </span> <br :key="sfIndex+190000" /> </template> </div> </template> </template> </div> <div style=" float: right; text-align: right; font-size: 12px; color: #e95252; "> <el-popover width="600" placement="bottom-end" trigger="click"> <div class="groupTourOrder_remarks_popover"> <div>历史备注</div> <p v-if="item.remarksList.length !== 0" v-for="(item2, index2) in item.remarksList" :key="index2+200000"> <span>{{ item2.remarks }}</span> <span>{{ item2.createByName }} <span style="color: #666666">{{ item2.createDate }}</span></span> </p> <span v-if="item.remarksList.length === 0">暂无数据</span> </div> <el-button v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder " slot="reference" icon="iconfont icon-gengduo" style=" padding: 0px; border: none; background-color: transparent; " class="groupTourOrder_remarks_btn"></el-button> </el-popover> </div> </div> </td> <td colspan="4" class="groupTourOrder_remarksBytuan" style="height: 40px"> <div> <div style="color: red"> <span>OP备注:</span> <p>{{ item.oP_Remarks ? item.oP_Remarks : "无" }}</p> </div> </div> </td> <td colspan="4" class="groupTourOrder_SpecialAPP" stysle="height: 40px;"> <div v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder"> 特价申请函: <template v-if="item.orderspecialofferId === 0"> <span class="font-color-blur">未申请</span> </template> <template v-else> <span class="font-color-red" v-if="item.orderspecialofferState === -1">拒绝</span> <span class="font-color-org" v-if="item.orderspecialofferState === 0">审批中</span> <span class="font-color-green" v-if="item.orderspecialofferState === 1">通过</span> </template> </div> <div class="font-color-red" v-if="item.orderspecialofferId !== 0"> 申请说明:<span>{{ item.orderspecialofferApplyReason }}</span> </div> <div class="font-color-red" v-if="item.orderspecialofferId !== 0"> 审批说明:<span>{{ item.orderspecialofferReason }}</span> </div> <div v-else>******</div> </td> <td colspan="5" class="groupTourOrder_tickets" style="height: 40px"> <div @click=" goUrlSFD('SalesFinancialDetail', '销售财务单据', item) "> <div>收款单据:</div> <div> <span v-for="(item2, index2) in item.financeList" :key="index2+210000"> <span v-if="item2.colorState === 1" class="groupTourOrder_tickets_blue">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 2" class="groupTourOrder_tickets_green">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 3" class="groupTourOrder_tickets_red">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 4" class="groupTourOrder_tickets_black">{{ item2.frID }}</span> </span> <span v-if="item.financeList.length === 0" style="cursor: default">暂无数据</span> </div> </div> <div @click=" goUrlSFD('SalesFinancialDetail', '销售财务单据', item) "> <div>付款单据:</div> <div> <span v-for="(item2, index2) in item.refundFinanceList" :key="index2+220000"> <span v-if="item2.colorState === 1" class="groupTourOrder_tickets_blue">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 2" class="groupTourOrder_tickets_green">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 3" class="groupTourOrder_tickets_red">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 4" class="groupTourOrder_tickets_black">{{ item2.frID }}</span> </span> <span v-if="item.refundFinanceList.length === 0" style="cursor: default">暂无数据</span> </div> </div> <div> <div>发票单据:</div> <div> <span v-for="(item2, index2) in item.invoiceApplyList" :key="index2+230000"> <span v-if="item2.invoiceApplyState === 6" class="groupTourOrder_tickets_blue" @click="goIisDetail(item2.id)">{{ item2.id }}</span> <span v-else-if=" item2.invoiceApplyState === 1 || item2.invoiceApplyState === 3 || item2.invoiceApplyState === 6 " class="groupTourOrder_tickets_green" @click="goIisDetail(item2.id)">{{ item2.id }}</span> <span v-else-if=" item2.invoiceApplyState === 5 || item2.invoiceApplyState === 4 " class="groupTourOrder_tickets_red" @click="goIisDetail(item2.id)">{{ item2.id }}</span> <span v-else-if="item2.invoiceApplyState === 2" class="groupTourOrder_tickets_black" @click="goIisDetail(item2.id)">{{ item2.id }}</span> </span> <span v-if="item.invoiceApplyList.length === 0" style="cursor: default">暂无数据</span> </div> </div> </td> </tr> </tbody> </template> <tbody v-show="list.length !== 0"> <tr> <td></td> <td colspan="17" class="groupTourOrderByTuan_seat"> <div> <span>本团机位:</span> <span>{{ tuanInfo.config && tuanInfo.config && tuanInfo.config.YSeat }}Y + {{ tuanInfo.config && tuanInfo.config.CSeat }}E + {{ tuanInfo.config && tuanInfo.config.FSeat }}F</span> </div> <div> <span>剩余机位:</span> <span> <template v-if="tuanInfo && tuanInfo.config && seat"> {{ tuanInfo.config.YSeat - seat.YSeat > 0 ? tuanInfo.config.YSeat - seat.YSeat : 0 }}Y + {{ tuanInfo.config.CSeat - seat.CSeat > 0 ? tuanInfo.config.CSeat - seat.CSeat : 0 }}E + {{ tuanInfo.config.FSeat - seat.FSeat > 0 ? tuanInfo.config.FSeat - seat.FSeat : 0 }}F </template> </span> </div> <div> <span>候补机位:</span> <span> <template v-if="tuanInfo && tuanInfo.config && seat"> {{ tuanInfo.config.YSeat - seat.YSeat > 0 ? 0 : seat.YSeat - tuanInfo.config.YSeat }}Y + {{ tuanInfo.config.CSeat - seat.CSeat > 0 ? 0 : seat.CSeat - tuanInfo.config.CSeat }}E + {{ tuanInfo.config.FSeat - seat.FSeat > 0 ? 0 : seat.FSeat - tuanInfo.config.FSeat }}F </template> </span> </div> <div> <span>参团:</span> <span>{{ seat.joinGroupNum }}</span> </div> <div> <span>自由行</span> <span>{{ seat.IndependentTravelCount }}</span> </div> <div> <span>单地接</span> <span>{{ seat.NurseryGraftingCount }}</span> </div> <div> <span>单机票</span> <span>{{ seat.SingleAirTicketCount }}</span> </div> <div> <span>领队:</span> <span>{{ seat.leaderNum }}</span> </div> <div> <span>自备签:</span> <span>{{ seat.ownVisaNum }}</span> </div> </td> </tr> </tbody> <!-- 取消订单 --> <tr v-if="cancelRtData != null && cancelRtData.length > 0"> <td colspan="18"> <span class="RL-redType" @click="isShowCancelOrder = !isShowCancelOrder" style="cursor: pointer" title="点击查看">取消订单(<span style="color: blue">{{ !isShowCancelOrder ? "展开" : "收起" }}</span>)</span> </td> </tr> <tbody v-if="isShowCancelOrder" v-for="(item, index) in cancelRtData" :key="index + 240000"> <tr> <td rowspan="3" style="position: relative"> <p v-if="item.isUnionOrder == 1" class="GO_union">联</p> <p v-if="item.isChargeLossOrders == 1" style="color: red">损</p> <p class="fbold over_ellipsis" style="width: 100%" :title="item.orderId"> <span>{{ item.orderId }}</span> <span style="font-weight: 100; cursor: pointer" v-if="item.scoreNum >= 0" @click=" goInvetig('investigationList', item.tcid, item.orderId) ">(评分{{ item.scoreNum }})</span> <el-tooltip class="item" effect="dark" content="通过小程序确认单报名" placement="top" v-show="item.orderForm == 4"> <i class="iconfont icon-xiaochengxu" style="font-size: 22px; color: red"></i></el-tooltip> <el-tooltip class="item" effect="dark" content="通过B2B确认单报名" placement="top" v-show="item.isFormB2B == 1"> <i class="iconfont icon-tiaozheng" style="font-size: 22px; color: #297bef"></i></el-tooltip> </p> <div> {{ item.createBy }}<br /><span v-if="item.leaveStr != ''" style="color: red">({{ item.leaveStr }})</span> </div> <p class="fz12 over_ellipsis" style="width: 100%"> {{ item.commissionSPeopleName == "无" ? "" : item.commissionSPeopleName }} </p> <p>下单时间:{{ item.createDate }}</p> <p v-if="item.tradeWay == 1">{{ item.platformOrder }}</p> <template v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder "> <p v-if="item.commissionMoney" style="color: red"> 提成:{{ item.commissionMoney }} {{item.CommissionCurrency}} </p> <p v-else-if="item.latestCommissionMoney" style="color: red"> 提成:{{ item.latestCommissionMoney }} </p> </template> </td> <td> <p v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder " class="fz12 over_ellipsis" style="width: 120px" :title="item.contactName"> {{ item.contactName }} </p> <p v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder " class="fz12"> {{ item.contactMobile }} </p> <p v-if=" item.isOwn == 2 && !IsSupperOrderEdit && !IsLookOrder && isUpdateOrder == false "> ***** </p> </td> <td> <span v-if="item.guestNumStatus == 1" style="color: #1aa86b" class="personNo" slot="reference" @click="getMembersDetail(item)">{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : "" }}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}</span> <span v-if="item.guestNumStatus == 2" style="color: #e95252" class="personNo" slot="reference" @click="getMembersDetail(item)">{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : "" }}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}</span> <span v-if="item.guestNumStatus == 3" style="color: #666" class="personNo" slot="reference" @click="getMembersDetail(item)">{{ item.guestNum }}/{{ item.ySeatNum > 0 ? item.ySeatNum + "Y " : "" }}{{ item.eSeatNum > 0 ? item.eSeatNum + "E " : "" }}{{ item.fSeatNum > 0 ? item.fSeatNum + "F " : "" }}</span> </td> <td style="color: #ff9c00"> <span>{{ item.tC_Price }}</span> </td> <td style="color: #ff9c00"> <span v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder ">{{ item.unit_Price }}</span> <span v-else>*****</span> </td> <td> <p style="color: #ff9c00"> <span v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder ">{{ item.preferPrice }}</span> <span v-else>*****</span> </p> </td> <td> <el-popover style="padding: 0" width="370" trigger="click"> <div class="personNolayer"> <table border="0" cellspacing="1" cellpadding="1"> <tr> <th>单据号</th> <th>金额</th> <th>类型</th> <th>状态</th> </tr> <tr v-if="orderList.length > 0" v-for="(item2, index2) in orderList" :key="index2+250000"> <td>{{ item2.FrID }}</td> <td> <span v-if=" item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder ">{{ item2.PayMoney }}</span> <span v-else>******</span> </td> <td>{{ item2.TypeName }}</td> <td>{{ item2.StatusName }}</td> </tr> <tr v-if="orderList.length == 0"> <td colspan="4" align="center">暂无数据</td> </tr> </table> </div> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder" :style="{ cursor: 'pointer', color: item.dueInMoney === 0 ? '' : '#e95252', }" @click="getOrderDetail(item)" slot="reference">{{ item.income }}</span> <span v-else>******</span> </el-popover> </td> <!-- 优惠 --> <td></td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder">{{ item.redEnvelopeMoney }}</span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder">{{ item.refund }}</span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder">{{ item.platformTax }}</span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder">{{ item.zaiTuMoney }}</span> <span v-else>******</span> </td> <td> <span v-if="item.isOwn == 1 || IsSupperOrderEdit || isUpdateOrder" :class="{ color_red_order: item.dueInMoney !== item.preferPrice, }">{{ item.dueInMoney }}</span> <span v-else>******</span> </td> <td colspan="2" class="fz12" :style="item.orderState === 3 ? 'color: #e95252;' : ''"> {{ item.statsstr }} <br /> <span style="color: red" v-if="item.orderCancelDate != ''">{{ item.orderCancelDate }}</span> </td> <td> <span v-if="item.confirmFileList.length > 0" style="cursor: pointer" class="fz12 dowloadSpan" @click="downLoadFile(item.confirmFileList)"> 确认函下载 </span> <i v-if=" item.confirmFileList.length > 0 && item.commissionSharePeople !== userId " @click="deleteFile(item)" style="margin-left: 5px" class="el-icon-error color999"></i> </td> <td colspan="2" class="groupTourOrderIcon"></td> </tr> <tr style="height: 20px"> <td colspan="17" class="RL_Order" style="height: 20px"> <span class="RL-remarkTitle" v-if=" item.guestList.length > 0 && (item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder) ">名单:</span> <span class="RL-redType RL-remarkCon" v-if=" item.guestList.length > 0 && (item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder) "> <span v-for="childItem in item.guestList" style="color: blue"> {{ childItem.userName}} <span style="color:#f56c6c">{{childItem.visaType==1?'(个签)':''}}</span> <span style="color:#f56c6c">{{childItem.ticketOutTypeStr}} </span> <span v-if="childItem.isApplyPhoto == 1" style="color: red">(照)</span> </span> <span v-if="item.photoNum > 0">(照片一人 {{ item.photoNum }}份)</span> </span> <p v-if="item.cancelGuestList && item.cancelGuestList.length > 0"> <span class="">取消名单:</span> <span class="RL-redType RL-remarkCon"> <span style="color: red" v-for="(childItem, childIndex) in item.cancelGuestList" :key="childIndex+260000">{{ childItem.userName }}<span style="color:#f56c6c">{{childItem.visaType==1?'(个签)':''}}</span> </span> </span> </p> <span style="display: block">房间信息<span v-if="item.oneSex > 0" style="color: #e95252">({{ item.oneSex == 1 ? "单男" : "单女" }})</span>:{{ item.orderGuestHouseStr }}</span> <span v-if="item.tipMoney" style="color: red">(小费:{{ item.tipMoney }})</span> </td> </tr> <tr> <td colspan="5" class="groupTourOrder_remarksBytuan" style="height: 40px"> <div> <div style="display: inline-block; width: 95%; color: red"> <span>备注:</span> <p> <span v-if="item.tsIdList.length > 0">投诉单号: <a class="underline" v-for="ts in item.tsIdList" href="javascript:void(0);" @click=" goUrlTS( 'ComplaintsDetail', ts, item.orderId, '投诉详情' ) ">{{ ts }} </a> ; </span> <template> <template v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder "> <span v-if="item.clientSource == 1 && item.brandName != ''">{{ item.brandName }}订单 {{ item.platformOrder }};</span>{{ item.remarks }} </template> </template> </p> </div> <div style="display: inline-block"> <el-popover width="600" placement="bottom-end" trigger="click"> <div class="groupTourOrder_remarks_popover"> <div>历史备注</div> <p v-if="item.remarksList.length !== 0" v-for="(item2, index2) in item.remarksList" :key="index2+270000"> <span>{{ item2.remarks }}</span> <span>{{ item2.createByName }} <span style="color: #666666">{{ item2.createDate }}</span></span> </p> <span v-if="item.remarksList.length === 0">暂无数据</span> </div> <el-button v-if=" item.isOwn == 1 || IsSupperOrderEdit || IsLookOrder || isUpdateOrder " slot="reference" icon="iconfont icon-gengduo" style=" padding: 0px; border: none; background-color: transparent; " class="groupTourOrder_remarks_btn"> </el-button> </el-popover> </div> </div> </td> <td colspan="5" class="groupTourOrder_remarksBytuan" style="height: 40px"> <div> <div> <span>OP备注:</span> <p>{{ item.oP_Remarks ? item.oP_Remarks : "无" }}</p> </div> </div> </td> <td colspan="7" class="groupTourOrder_tickets" style="height: 40px"> <div @click="goUrlSFD('SalesFinancialDetail', '销售财务单据', item)"> <div>收款单据:</div> <div> <span v-for="(item2, index2) in item.financeList" :key="index2+280000"> <span v-if="item2.colorState === 1" class="groupTourOrder_tickets_blue">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 2" class="groupTourOrder_tickets_green">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 3" class="groupTourOrder_tickets_red">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 4" class="groupTourOrder_tickets_black">{{ item2.frID }}</span> </span> <span v-if="item.financeList.length === 0" style="cursor: default">暂无数据</span> </div> </div> <div @click="goUrlSFD('SalesFinancialDetail', '销售财务单据', item)"> <div>付款单据:</div> <div> <span v-for="(item2, index2) in item.refundFinanceList" :key="index2+290000"> <span v-if="item2.colorState === 1" class="groupTourOrder_tickets_blue">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 2" class="groupTourOrder_tickets_green">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 3" class="groupTourOrder_tickets_red">{{ item2.frID }}</span> <span v-else-if="item2.colorState === 4" class="groupTourOrder_tickets_black">{{ item2.frID }}</span> </span> <span v-if="item.refundFinanceList.length === 0" style="cursor: default">暂无数据</span> </div> </div> <div> <div>发票单据:</div> <div> <span v-for="(item2, index2) in item.invoiceApplyList" :key="index2+300000"> <span v-if="item2.invoiceApplyState === 6" class="groupTourOrder_tickets_blue" @click="goIisDetail(item2.id)">{{ item2.id }}</span> <span v-else-if=" item2.invoiceApplyState === 1 || item2.invoiceApplyState === 3 || item2.invoiceApplyState === 6 " class="groupTourOrder_tickets_green" @click="goIisDetail(item2.id)">{{ item2.id }}</span> <span v-else-if=" item2.invoiceApplyState === 5 || item2.invoiceApplyState === 4 " class="groupTourOrder_tickets_red" @click="goIisDetail(item2.id)">{{ item2.id }}</span> <span v-else-if="item2.invoiceApplyState === 2" class="groupTourOrder_tickets_black" @click="goIisDetail(item2.id)">{{ item2.id }}</span> </span> <span v-if="item.invoiceApplyList.length === 0" style="cursor: default">暂无数据</span> </div> </div> </td> </tr> </tbody> </table> </div> <el-dialog custom-class="w450" title="行程下载" :visible.sync="travelControlTripLayerShow" center> <tripDownLoadCommon ref="tripDownLoadCommon" :tripObj="tripObj" @headCallBack="hideTripDown" :downType="2"> </tripDownLoadCommon> </el-dialog> <div class="groupTourOrderByTuan_transfer" v-show="transferData.show"> <div class="transfer_header"> <div>订单转团</div> <div> <div @click="transferClose()">取消</div> <div @click="transferSave()">确定</div> </div> </div> <div class="transfer_info"> <div> <em>订单号:</em> <span>{{ transferData.info.OrderId }}</span> </div> <div> <em>业务员:</em> <span>{{ transferData.info.CreateByName }}</span> </div> <div> <em>团队编号:</em> <span>{{ transferData.info.OldTCID }}</span> </div> <div> <em>团号:</em> <span>{{ transferData.info.OldTCNUM }}</span> </div> </div> <div class="transfer_input"> <div> <em>团号:</em> <el-input v-model="transferData.info.TCNUM" placeholder="请输入团号或团队编号"></el-input> </div> </div> </div> <div class="combottomDiv" v-if="showChangeSales" style="height: 200px"> <updateSalesMan @closeUpdiv="closeSalseDiv" @getList="getList" :subInfo="subInfo"></updateSalesMan> </div> <!--修改OP备注--> <el-dialog custom-class="w350" title="修改OP备注" :visible.sync="zhuanLoading" center :before-close="initOPRemarkMsg"> <el-form label-width="110px"> <el-form-item label="OP备注:" class="w280"> <el-input type="textarea" :rows="2" v-model="OPRemarkMsg.OP_Remarks"></el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <button class="normalBtn" type="primary" @click="TransferDocuments"> {{ $t("pub.saveBtn") }} </button> <button class="hollowFixedBtn" @click="initOPRemarkMsg"> {{ $t("pub.cancelBtn") }} </button> </div> </el-dialog> <!--修改提成--> <el-dialog custom-class="w350" title="修改提成" :visible.sync="TiChengLoading" center :before-close="initTCMsg"> <el-form label-width="110px"> <el-form-item label="提成金额:" class="w280"> <el-input placeholder="请输入" type="number" v-model="TCMsg.LatestCommissionMoney"> </el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <button class="normalBtn" type="primary" @click="submitTCMsg"> {{ $t("pub.saveBtn") }} </button> <button class="hollowFixedBtn" @click="initTCMsg"> {{ $t("pub.cancelBtn") }} </button> </div> </el-dialog> <!--申请优惠--> <div class="productQuerybottomLayer ownScrollbarStyle" v-show="SpecialOffer" style="height: 150px; min-height: 200px"> <p> 申请优惠 <span class="fr"> <input type="button" class="hollowFixedBtn" value="取消" @click="cancelSubmitRemarks()" /> <input type="button" class="normalBtn" value="保存" @click="Preservation()" /> </span> </p> <el-form :model="remarksMsg" ref="remarksMsg" label-position="right" :rules="RemarksRules" label-width="80px"> <el-row :gutter="20"> <el-col :span="24"> <el-form-item> <em style=" font-size: 12px !important; color: #606266; line-height: 34px; ">订单当前单价</em> <em style=" display: inline-block; padding: 0 10px; height: 34px; line-height: 34px; text-align: left; font-size: 16px; border-radius: 3px; background-color: #e5e5e5; vertical-align: top; " class="w150">{{ SOMsg.OrderUnitPrice }}</em> <em style=" margin-left: 100px; font-size: 12px !important; color: #606266; ">审核人</em> <el-select placeholder="请选择" v-model="SOMsg.UpdateBy"> <el-option v-for="(item, index) in SuperiorPeople" :label="item.EmName" :value="item.EmployeeId" :key="index"></el-option> </el-select> </el-form-item> <el-form-item label="申请理由" style="margin-left: 58px"> <el-input v-model="SOMsg.ApplyReason" type="textarea" maxlength="1000" style="width: 60%"></el-input> </el-form-item> </el-col> </el-row> </el-form> </div> <el-dialog custom-class="w350" title="修改订单额外金额" :visible.sync="OrderMoneyDialog" center> <el-form label-width="110px"> <el-form-item label="额外奖励金额:" class="w280"> <el-input placeholder="请输入" type="text" @keyup.native="checkPrice(EwMsg, 'ExtraRewardMoney')" v-model="EwMsg.ExtraRewardMoney"> </el-input> </el-form-item> <el-form-item label="额外扣除金额:" class="w280"> <el-input placeholder="请输入" type="number" @keyup.native="checkPrice(EwMsg, 'ExtraDeductMoney')" v-model="EwMsg.ExtraDeductMoney"> </el-input> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <button class="normalBtn" type="primary" @click="submitEWMsg"> {{ $t("pub.saveBtn") }} </button> <button class="hollowFixedBtn" @click="OrderMoneyDialog = false"> {{ $t("pub.cancelBtn") }} </button> </div> </el-dialog> <a id="groupTourOrderByTuan_DownLoad" target="_blank" style="display: none">1不要删除</a> <el-dialog title="选择旅客" width="400px" :visible.sync="ShenQingPhotoShow" center :before-close="closeChangeMachie"> <div> <label><input type="checkbox" v-model="SQcheckdAll" />全选</label> </div> <div> <label v-for="item in SQguestList"><input type="checkbox" v-model="item.check" />{{ item.userName }}({{ item.sexStr }})</label> </div> <div class="needfenshu"> <label>需要份数:</label> <el-input type="number" v-model="SQPhotoNum" class="w200"></el-input> </div> <p style="color: red">注:每人每份5元</p> <div slot="footer" class="dialog-footer"> <button class="hollowFixedBtn" @click="ShenQingPhotoShow = false"> {{ $t("pub.cancelBtn") }} </button> <button class="normalBtn" type="primary" @click="SQPhoto"> {{ $t("pub.sureBtn") }} </button> </div> </el-dialog> <el-dialog width="350px" title="编辑小费" :visible.sync="isShowTip" center :before-close="closeChangeMachie"> <EditTip :TipObj="TipObj" @close="isShowTip=false" @success="isShowTip=false,getList()"></EditTip> </el-dialog> <!-- 修改备注 --> <div class="productQuerybottomLayer ownScrollbarStyle" v-show="isShowLayerRemarks" style="height:150px;min-height:150px"> <orderRemark v-if="isShowLayerRemarks" :remarksMsg="remarksMsg" @close="closeDialog" @success="refreshPage"> </orderRemark> </div> </div> </template> <script> import moment from "moment"; import payURL from "../commonPage/payURL.vue"; import payURL1 from "../commonPage/payURL1.vue"; import tripDownLoadCommon from "../commonPage/TripDownLoadCommon.vue"; import updateSalesMan from "../commonPage/updateSalesMan.vue"; import EditTip from "./Common/EditTip.vue"; import orderRemark from "../orderCommon/order-remark.vue"; //订单备注 export default { data() { return { timer: false, fullHeight: document.documentElement.clientHeight, ScreenHeight: 0, S_UpdateOrderMoney: false, isShowTip: false, TipObj: {}, userInfo: {}, qjGroupId: -1, F_Finance_Create: false, //制单权限 IsSupperOrderEdit: false, //获取总经理副总经理超级修改权限 IsLookOrder: false, //出纳查看订单权限 //修改业务员权限,1-有 isEditOrderCreate: 0, redBagList: [], // 修改应收总额 Ysze: false, addMsg_form: {}, OPRemarkMsg: { OrderId: "", OP_Remarks: "", }, zhuanLoading: false, TiChengLoading: false, TCMsg: { OrderId: 0, CommissionMinusRate: 0, LatestCommissionMoney: "", }, OrderMoneyDialog: false, EwMsg: { OrderId: 0, ExtraRewardMoney: "", ExtraDeductMoney: "", }, checkedObj: {}, pickerOptions0: { disabledDate: (time) => { let starTime = new Date(this.starTime); return time.getTime() > starTime.getTime(); }, }, pickerOptions1: { disabledDate: (time) => { let endTime = new Date(this.endTime); return time.getTime() < endTime.getTime() - 5.64e7; }, }, defaultImg: 'this.src="' + require("../../assets/img/litheader.png") + '"', travelControlTripLayerShow: false, tripObj: { tcid: 0, configId: 0, cityId: 0, orderId: 0, unionfid: 0, //订单旅客联运编号(rb_airticket_union表Id) }, userId: "", customerId: "", createByInfo: "", isUpdateSharePeople: false, //修改订单提成 isUpdateOrderCommission: false, starTime: "", endTime: "", stratPrice: "", stratPriceShow: false, returnPrice: "", returnPriceShow: false, isAllowUpdate: 0, isPingtai: false, IsChildrenTour: 0, IsBirdDiscount: 0, SetOutCityId: 0, reOutCityId: 0, isShowLayer: false, isShowLayer2: false, isShowHouse: false, isShowLayerRemarks: false, loading: true, isChecked: true, comSelect: -1, OpSetLossPeople: 0, OpSetLossMoney: 0, remarksMsg: { OrderId: "0", OldRemarks: "", Remarks: "", //1-可以修改,0-不能修改【默认可以修改】 isOrder: 1, UnionRemark: "", //新联运备注 IsIntermodal: 0, //是否联运 TeamType: 0, //团队类型(0-常规,1-小包团,2-当地游) }, IsChargeLossOrders: 0, Unit_PriceList: [], //成交单价下拉数据 LessMoney: 0, addMsg: { GroupTypeNeedHouse: "0", OrderForm: "", OrderId: "0", TCID: "0", CustomerType: "", GroupType: "", ContactName: "", ContactMobile: "", CustomerId: "", DepartureCityId: "", ReturnArriveCityId: "", IsIntermodal: "2", IsReturnIntermodal: "2", Unit_Price: "0", TC_Price: "0", ManNum: "0", ChirdNum: "0", ChirdNoNeedBedNum: "0", ChirdNeedBedNum: "0", BabyNum: "0", OldPeopleNum: "0", SingleRoomNum: "0", PreferPrice: 0, YSeatNum: "0", ESeatNum: "0", FSeatNum: "0", Commission: "0", ClientSource: "", BrandId: "", TradeWay: "2", PlatformAccount: "", PlatformOrder: "", GuestNum: 0, IsChildrenTour: "0", IsBirdDiscount: "0", PredictRoomNum: "0", BigRoomNum: "0", TripleRoomNum: "0", TradeDate: "", CostType: "", Remarks: "", VisaNum: "0", SafeNum: "0", RefuseVisaNum: "0", AirticketNum: "0", ScenicRefundArr: [], //景点新数组 OrderBackScenicList: [], GoCityTime: "", BackCityTime: "", CommissionSharePeople: "-1", CommissionShareMoney: "0", OneSex: 0, QuotationUrl: "", //单团附件 }, uploadLloading: false, fileFujianList: [], employeeMsg: { BranchId: "-1", IsLeave: 0, }, employeeList: [], rules: { CustomerType: [{ required: true, message: "请选择客户类型", trigger: "change", }, ], CustomerId: [{ required: false, message: "请选择客户门店", trigger: "change", }, ], DepartureCityId: [{ required: true, message: "请选择出发城市", trigger: "change", }, ], ReturnArriveCityId: [{ required: true, message: "请选择返回城市", trigger: "change", }, ], GroupType: [{ required: true, message: "请选择参团类型", trigger: "change", }, ], ClientSource: [{ required: true, message: "请选择客人来源", trigger: "change", }, ], TradeWay: [{ required: true, message: "请选择交易方式", trigger: "change", }, ], ContactName: [{ required: true, message: "请输入联系人姓名", trigger: "blur", }, ], ContactMobile: [{ required: true, message: "请输入联系人电话", trigger: "blur", }, ], }, rules2: { CustomerType: [{ required: true, message: "请选择客户类型", trigger: "change", }, ], CustomerId: [{ required: false, message: "请选择客户门店", trigger: "change", }, ], ClientSource: [{ required: true, message: "请选择客人来源", trigger: "change", }, ], TradeWay: [{ required: true, message: "请选择交易方式", trigger: "change", }, ], ContactName: [{ required: true, message: "请输入联系人姓名", trigger: "blur", }, ], ContactMobile: [{ required: true, message: "请输入联系人电话", trigger: "blur", }, ], }, RemarksRules: { Remarks: [{ required: true, message: "请输入备注信息", trigger: "blur", }, ], }, HightUnitPrice: "2", msg: { pageIndex: 1, pageSize: 10, LineId: "-1", LineteamId: "-1", TCNUM: "", tempOrderId: "", OutBranchId: "-1", OrderState: "-1", CustomerType: "-1", ContactName: "", CustomerId: "-1", GroupType: "-1", OrderSource: "-1", CStartDate: "", CEndDate: "", QStartDate: "", QEndDate: "", PayStatus: "-1", }, tuanMsg: { pageIndex: 1, pageSize: 1000, TCID: this.$route.query.id, }, isUpdateOrder: false, cancelRtData: [], //返回数据 currentPage: 1, total: 0, startCityList: [], list: [], LineList: [], LineTeamList: [], memberList: [], logList: [], orderList: [], companyList: [], khlxList: [], ctlxList: [], ddlyList: [], ddztList: [], khmdList: [], ssptList: [], jyfsList: [], ScenicRefundList: [], PlatformAccountList: [], ScenicRefundMoney: 0, isShowCancelOrder: false, tuanInfo: {}, seat: { YSeat: 0, CSeat: 0, FSeat: 0, joinGroupNum: 0, leaderNum: 0, totalGuestNum: 0, ownVisaNum: 0, }, //支付 minpay: "0", //显示修改业务员 showChangeSales: false, fylxList: [], showID: -1, countData: { // 总报名人数 TotalGuestNum: 0, TotalYSeatNum: 0, TotalESeatNum: 0, TotalFSeatNum: 0, // 正常报名人数 NormalGuestNum: 0, NormalYSeatNum: 0, NormalESeatNum: 0, NormalFSeatNum: 0, // 取消人数 CancelGuestNum: 0, CancelYSeatNum: 0, CancelESeatNum: 0, CancelFSeatNum: 0, // 其他统计项 Income: 0, Commission: 0, DueinMoney: 0, PreferPrice: 0, InteriorNum: 0, B2BNum: 0, }, // 订单转团 transferData: { show: false, info: { OrderId: "", CreateByName: "", OldTCID: "", OldTCNUM: "", TCNUM: "", }, }, IsUpdateOrderMoney: false, //订单编号及业务员信息 subInfo: { CreateBy: "", OrderId: 0, }, // 申请优惠的弹窗 SpecialOffer: false, SOMsg: { OrderId: "", ApplyPrice: 0, ApplyReason: "", UpdateBy: "", OrderUnitPrice: 0, }, SuperiorPeople: [], TransferMission: "", //订单转团 Unit_Price: 0, // 地接临时存值 goLVurl: { //跳转到旅客页面的参数 orderId: "", tcid: "", tcnum: "", isOrder: "", }, SciencNameList: [], ShenQingPhotoShow: false, SQguestList: [], SQcheckdAll: true, SQPhotoNum: "", SQOrderId: "", }; }, components: { EditTip, payurlItem: payURL, payurlItem1: payURL1, tripDownLoadCommon: tripDownLoadCommon, updateSalesMan: updateSalesMan, orderRemark: orderRemark, }, watch: { fullHeight(val) { if (!this.timer) { this.fullHeight = val; this.timer = true; let that = this; setTimeout(function () { that.timer = false; }, 400); } if (this.fullHeight > 700) { this.ScreenHeight = "600px"; } else { this.ScreenHeight = "300px"; } }, SQcheckdAll(val) { this.checkdAll(val); }, }, filters: { priceFormat(value) { let nStr = value.toFixed(2); nStr += ""; let x = nStr.split("."); let x1 = x[0]; let x2 = x.length > 1 ? "." + x[1] : ""; var rgx = /(\d+)(\d{3})/; while (rgx.test(x1)) { x1 = x1.replace(rgx, "$1" + "," + "$2"); } return x1 + x2; }, }, methods: { //关闭弹窗 closeDialog() { this.isShowLayerRemarks = false; }, //刷新页面 refreshPage() { this.isShowLayerRemarks = false; this.getList(); }, clickEditTip(item) { this.isShowTip = true this.TipObj = JSON.parse(JSON.stringify(item)) this.TipObj.guestNum = item.guestNum this.TipObj.TipMoney = item.preferTipAmount this.TipObj.OrderId = item.orderId }, SQPhoto() { let checkID = []; this.SQguestList.map((x) => { if (x.check) { checkID.push(x.guestId); } }); if (checkID.length < 1) { this.$message.error("请选择旅客!"); return; } if (!this.SQPhotoNum) { this.$message.error("请输入份数!"); return; } let msg = { GuestIdList: checkID, PhotoNum: this.SQPhotoNum, OrderId: this.SQOrderId, }; this.apipost( "sellorder_get_SetOrderGuestPhoto", msg, (res) => { if (res.data.resultCode == 1) { this.getList(); this.ShenQingPhotoShow = false; } }, null ); }, checkdAll(val) { if (val) { this.SQguestList.map((x) => { x.check = true; }); } else { this.SQguestList.map((x) => { x.check = false; }); } this.SQguestList = this.SQguestList; this.$forceUpdate(); }, ShenQingPhoto(item) { if (item.guestList.length < 1) { this.$message.error("暂无旅客,请添加旅客后再尝试申请!"); return; } item.guestList.map((x) => { x.check = true; }); this.SQguestList = item.guestList; this.SQOrderId = item.orderId; this.ShenQingPhotoShow = true; }, closeChangeMachie(done) { // 弹=窗口关闭 done(); }, // OP备注赋值 OPRemark(item) { this.apipost( "sellorder_post_GetOrderEntity", { ID: item.orderId, }, (res) => { if (res.data.resultCode == 1) { this.OPRemarkMsg.OP_Remarks = res.data.data.model.OP_Remarks; } else { this.$message.error(res.data.message); } }, null ); }, gourlTip(path, id) { this.$router.push({ name: path, query: { id: id, blank: "y", }, }); }, goUrlHappy(item) { this.$router.push({ name: "HappyPassbook", query: { CustomerId: item.customerId, blank: "y", }, }); }, getRedBag(item) { let msg = { CustomerId: item.customerId, pageIndex: 1, pageSize: 4, }; if (item.customerId) { this.apipost( "customer_post_GetC_BigRedEnvelopeInfoList", msg, (res) => { if (res.data.resultCode == 1) { this.redBagList = res.data.data.pageData; } else {} }, (err) => {} ); } else { this.redBagList = []; } }, // 跳转调查列表 goInvetig: function (path, tcid, orderId) { this.$router.push({ name: path, query: { OrderId: orderId, TCID: tcid, blank: "y", }, }); }, goIisDetail: function (id) { // 跳转发票详情页面 this.$router.push({ name: "invoicesManagerDetail", query: { id: id, noDetail: 1, blank: "y", }, }); }, // 申请发票 goUrlAdd: function (path, OrderId, TCID, customerId) { this.$router.push({ name: path, query: { OrderId: OrderId, TCID: TCID, customerId: customerId, blank: "y", }, }); }, //跳转 goUrlTS(path, id, orderId, title) { this.$router.push({ name: path, query: { id: id, orderId: orderId, blank: "y", tab: title, }, }); }, //是否可以修改成交单价 canEditUnitPrice() { let userInfo = this.getLocalStorage(); if (userInfo != null && userInfo.EmployeeId == 1) { this.isChecked = false; } }, maxCommissionMinusRate: function () { this.TCMsg.CommissionMinusRate = this.TCMsg.CommissionMinusRate.replace( /[^\.\d]/g, "" ); this.TCMsg.CommissionMinusRate = this.TCMsg.CommissionMinusRate.replace( ".", "" ); if (this.TCMsg.CommissionMinusRate > 100) { this.TCMsg.CommissionMinusRate = 100; } }, getPlatformAccount(typeIdtwo, platformAccount) { let platBranchId = this.getLocalStorage().RB_Branch_id; this.apipost( "FinancialInstitutions_post_GetALLAccountList", { TypeId: typeIdtwo, BranchId: platBranchId, }, (res) => { if (res.data.resultCode == 1) { this.PlatformAccountList = res.data.data; this.addMsg.PlatformAccount = platformAccount; } }, (err) => {} ); }, submitTCMsg: function () { this.apipost( "sellorder_post_SetOrderCommission", this.TCMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.getList(); this.initTCMsg(); this.TiChengLoading = false; } else { this.$message.error(res.data.message); } }, null ); }, initTCMsg: function () { this.TiChengLoading = false; this.TCMsg = { OrderId: 0, CommissionMinusRate: 0, LatestCommissionMoney: "", }; }, //设置额外金额 submitEWMsg() { this.apipost( "sellorder_post_SetOrderExtraMoney", this.EwMsg, (res) => { if (res.data.resultCode == 1) { this.Success(res.data.message); this.getList(); this.OrderMoneyDialog = false; } else { this.Error(res.data.message); } }, null ); }, TransferDocuments: function () { this.apipost( "sellorder_get_SetOrderOPRemarks", this.OPRemarkMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.getList(); this.initOPRemarkMsg(); this.zhuanLoading = false; } else { this.$message.error(res.data.message); } }, null ); }, initOPRemarkMsg() { this.OPRemarkMsg = { OP_Remarks: "", OrderId: "", }; this.zhuanLoading = false; }, goUrlSFD: function (path, name, item) { let obj = JSON.parse(JSON.stringify(item)); obj.oP_Remarks = ""; obj.remarksList = []; obj.refundFinanceList = []; obj.remarks = []; obj.ltName = []; obj.lineName = []; obj.financeList = []; obj.guestList = []; obj.description = []; this.$router.push({ name: path, query: { blank: "y", tab: name, item: JSON.stringify(obj), }, }); }, getItem(obj) { this.checkedObj = obj; }, deleteFile(obj) { this.$confirm("是否删除确认函?", "提示", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning", }) .then(() => { let saveMsg = {}; saveMsg.Path = obj.confirmFileList[0].fullUrl; saveMsg.FileName = obj.confirmFileList[0].name; saveMsg.Status = 2; saveMsg.OrderId = obj.orderId; this.apipost( "sellorder_post_SetConfirmationLetter", saveMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.getList(); } else { this.$message.error(res.data.message); } }, (err) => {} ); }) .catch(() => { this.$message.info("取消删除"); }); }, uploadFileBtn(file) { //上传 let that = this; let newArr = []; newArr.push(file.file); let path = "/Upload/Temporary/"; this.$message.info("上传中..."); this.UploadSelfFileT(path, newArr, (x) => { let fileSize = file.file.size < 1024 ? file.file.size : (file.file.size / 1024).toFixed(0); let saveMsg = {}; saveMsg.Path = x.data.FilePath; saveMsg.FileName = file.file.name; saveMsg.Status = 1; saveMsg.OrderId = this.checkedObj.orderId; that.apipost( "sellorder_post_SetConfirmationLetter", saveMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.getList(); } else { this.$message.error(res.data.message); } }, (err) => {} ); }); }, downLoadFile(obj) { let dom = document.querySelector("#groupTourOrderByTuan_DownLoad"); dom.href = obj[0].fullUrl; dom.click(); }, // 订单转团 transfer: function (item) { this.transferData.info.OrderId = item.orderId; this.transferData.info.CreateByName = item.createBy; this.transferData.info.OldTCID = item.tcid; this.transferData.info.OldTCNUM = item.tcnum; this.transferData.info.TCNUM = ""; this.isShowLayer = false; this.isShowLayer2 = false; this.isShowHouse = false; this.isShowLayerRemarks = false; this.transferData.show = true; }, transferClose: function () { this.transferData.show = false; }, changeSelect: function () { this.$forceUpdate(); }, transferSave: function () { if (this.transferData.info.TCNUM.trim() === "") { this.$message.error("请输入团号或团队编号"); } else { this.apipost( "sellorder_post_SetOrderTurnGroup", this.transferData.info, (res) => { if (res.data.resultCode === 1) { this.$message.success("转团成功"); this.transferData.show = false; this.getList(); } else { this.$message.error(res.data.message); } }, (err) => {} ); } }, toTrip: function (obj, TicketUnionId) { this.tripObj.tcid = obj.tcid; this.tripObj.configId = obj.configId; this.tripObj.orderId = obj.orderId; this.tripObj.cityId = obj.startCityId; if (TicketUnionId) { this.tripObj.unionfid = TicketUnionId; } this.travelControlTripLayerShow = true; }, hideTripDown() { this.travelControlTripLayerShow = false; }, yzVisaNum: function () { let ChirdNum = Number(this.addMsg.ChirdNum); if (this.addMsg.GroupType == 4) { ChirdNum = 0; } let count = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + ChirdNum + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum); if (count < this.addMsg.VisaNum) { this.addMsg.VisaNum = count; this.$message.error("签证人数不能大于总人数"); } }, yzSafeNum: function () { let ChirdNum = Number(this.addMsg.ChirdNum); if (this.addMsg.GroupType == 4) { ChirdNum = 0; } let count = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + ChirdNum + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum); if (count < this.addMsg.SafeNum) { this.addMsg.SafeNum = count; this.$message.error("保险人数不能大于总人数"); } }, // 获取统计数据 getCount: function () { this.apipost( "sellorder_post_GetOrderListStatistics", this.tuanMsg, (res) => { if (res.data.resultCode == 1) { this.countData = res.data.data; } else { this.$message.error("数据获取失败!"); } }, (err) => {} ); }, getTuanInfo() { this.apipost( "travel_get_GetTravelConfigTCID", { TCID: this.$route.query.id, type: 1, }, (res) => { if (res.data.resultCode == 1) { this.tuanInfo = res.data.data; } }, (err) => {} ); }, deleteItem(obj) { if (obj.isCanClear == 1) { this.Error("OP已确认订单,如需取消请联系当团OP!"); return; } this.$confirm("是否取消?", "提示", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning", }) .then(() => { this.apipost( "sellorder_post_RemoveOrder", { ID: obj.orderId, }, (res) => { if (res.data.resultCode == 1) { this.$message.success("取消成功!"); this.getList(); } else { this.$message.error(res.data.message); } }, (err) => {} ); }) .catch(() => { this.$message.info("已取消!"); }); }, setChargeLoss(obj) { let confirmC = "确定设为收损单?"; if (obj.isChargeLossOrders == 1) { confirmC = "确定恢复收损单?"; } this.$confirm(confirmC, "提示", { confirmButtonText: "确定", cancelButtonText: "取消", type: "warning", }) .then(() => { this.apipost( "sellorder_post_RemoveChargeLossOrders", { OrderId: obj.orderId, }, (res) => { if (res.data.resultCode == 1) { this.$message.success("操作成功!"); this.getList(); } else { this.$message.error(res.data.message); } }, (err) => {} ); }) .catch(() => { this.$message.info("取消!"); }); }, getUnionTravelPrice(obj, type) { let msg = {}; msg.TCID = obj.TCID; msg.OrderId = obj.OrderId; msg.Type = type; if (type == 1) { msg.StartCityId = this.addMsg.DepartureCityId; msg.CityTime = this.addMsg.GoCityTime; if (this.addMsg.IsIntermodal == 2) { this.stratPrice = "0"; this.stratPriceShow = false; this.getTotalPrice(); } else { this.apipost( "sellorder_get_GetUnionTravelPrice", msg, (res) => { if (res.data.resultCode == 1) { this.stratPrice = res.data.data.Price; if (this.stratPrice == 0) { this.stratPriceShow = false; } else { this.stratPriceShow = true; } this.getTotalPrice(); } }, (err) => {} ); } } else { msg.StartCityId = this.addMsg.ReturnArriveCityId; msg.CityTime = this.addMsg.BackCityTime; if (this.addMsg.IsReturnIntermodal == 2) { this.returnPrice = "0"; this.returnPriceShow = true; this.getTotalPrice(); } else { this.apipost( "sellorder_get_GetUnionTravelPrice", msg, (res) => { if (res.data.resultCode == 1) { this.returnPrice = res.data.data.Price; if (this.returnPrice == 0) { this.returnPriceShow = false; } else { this.returnPriceShow = true; } this.getTotalPrice(); } }, (err) => {} ); } } }, goUrlT(path, id) { let routeData = this.$router.resolve({ name: path, query: { id: id, }, }); window.open(routeData.href, "_blank"); }, ScenicRefundMethods() { if (this.addMsg.ScenicRefundArr.length == 0) { this.ScenicRefundMoney = 0; } else { this.ScenicRefundMoney = 0; this.addMsg.ScenicRefundArr.forEach((x) => { let listIndex = this.ScenicRefundList.findIndex( (item) => item.Id == x ); if (listIndex != -1) { this.ScenicRefundMoney += this.ScenicRefundList[listIndex].RefundMoney; } }); } this.getTotalPrice(); this.getTicheng(); }, getScenicRefund(TCID, OrderId) { this.OrderId = OrderId; let msg = { TCID: TCID, OrderId: OrderId, }; this.apipost( "sellorder_get_GetScenicRefundList", msg, (res) => { if (res.data.resultCode == 1) { this.ScenicRefundList = res.data.data; this.getGOScenictWO(); } }, (err) => {} ); }, //勾选景点 getGOScenic(item) { item.IsChecked = !item.IsChecked; }, //勾选 getGOScenictWO() { this.addMsg.OrderBackScenicList = []; this.SciencNameList = []; this.ScenicRefundList.forEach((x) => { if (x.IsChecked && x.Number > 0) { let obj = { CouponsId: x.CouponsId, IsChecked: x.IsChecked, BackMoney: x.BackMoney, Number: x.Number, }; this.SciencNameList.push(x.CouponsName); this.addMsg.OrderBackScenicList.push(obj); } }); }, //验证输入人数 CheckNum(item) { let TotalNum = parseInt(this.addMsg.ManNum) + parseInt(this.addMsg.ChirdNoNeedBedNum) + parseInt(this.addMsg.ChirdNeedBedNum) + parseInt(this.addMsg.BabyNum) + parseInt(this.addMsg.OldPeopleNum) + parseInt(this.addMsg.AirticketNum); if (item.Number > TotalNum) { this.Error("不能超过总人数"); item.Number = 0; } }, platformOrderMethods() { if (this.addMsg.PlatformOrder == "") { this.addMsg.MinOrderPrice = 0; this.addMsg.CostType = ""; this.addMsg.TradeDate = ""; } else { this.addMsg.MinOrderPrice = this.minPrice * (Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)); } }, getMinPrice(id) { this.apipost( "Financial_post_GetLowPrice", { OrderID: id, OrderResource: 8, }, (res) => { if (res.data.resultCode == 1) { if (res.data.data.LowDeposit != -1) { this.minpay = res.data.data.LowDeposit; } } }, (err) => {} ); }, childByValue(data) { this.showID = data; }, // 给其他费用赋值 Yszefz() { this.Ysze = true; this.addMsg_form = Object.assign({}, this.addObj); }, // 修改应收总额 submitYSZEForm() { this.apipost( "sellorder_post_SetOrderHistoryPrice", this.addMsg_form, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.Ysze = false; this.addObj = this.addMsg_form; this.getTotalPrice(); } else { this.Ysze = false; this.$message.error(res.data.message); } }, (err) => {} ); }, // 点击修改 getDetail(obj) { this.goLVurl.orderId = obj.orderId; this.goLVurl.tcid = obj.tcid; this.goLVurl.tcnum = obj.tcnum; this.goLVurl.isOrder = obj.isOrder; this.Ysze = false; this.starTime = obj.startDate; this.endTime = obj.backDate; this.getMinPrice(obj.orderId); this.addMsg.OrderId = obj.orderId; this.IsChargeLossOrders = obj.isChargeLossOrders; //zk-点击修改清空景点 this.ScenicRefundList = []; this.SciencNameList = []; this.apipost( "sellorder_post_GetOrderEntity", { ID: obj.orderId, }, (res) => { if (res.data.resultCode == 1) { this.isAllowUpdate = res.data.data.IsUpdatePlatOrder; let x = res.data.data.model; let modelPrice = res.data.data.modelPrice; this.addMsg = x; if (x.QuotationUrl) { this.fileFujianList = [{ name: "baojiadan", url: x.QuotationUrl }]; } this.addObj = res.data.data.modelPrice; this.addObj.OrderId = x.OrderId; this.addObj.OpSetLossMoney = x.OpSetLossMoney; this.addMsg.OneSex = x.OneSex; this.addMsg.ScenicRefundArr = res.data.data.ScenicRefundArr; this.getScenicRefund(obj.tcid, obj.orderId); this.getPlatformAccount( obj.platformAccountTypeId, obj.platformAccount ); this.SetOutCityId = res.data.data.SetOutCityId; this.reOutCityId = res.data.data.SetBackCityId; this.addMsg.CustomerType = x.CustomerType.toString(); this.addMsg.ClientSource = x.ClientSource.toString(); this.addMsg.GroupType = x.GroupType.toString(); this.addMsg.TradeWay = x.TradeWay.toString(); this.addMsg.PredictRoomNum = x.PredictRoomNum; this.addMsg.IsIntermodal = x.IsIntermodal ? x.IsIntermodal.toString() : 2; this.addMsg.IsReturnIntermodal = x.IsReturnIntermodal.toString(); this.addMsg.ChirdNum = x.ChirdNum.toString(); this.addMsg.ChirdNeedBedNum = x.ChirdNeedBedNum.toString(); if (this.addMsg.GroupType == 4) { this.addMsg.ChirdNoNeedBedNum = x.ChirdNoNeedBedNum.toString(); } else { this.addMsg.ChirdNoNeedBedNum = ( x.ChirdNum - x.ChirdNeedBedNum ).toString(); } this.addMsg.BabyNum = x.BabyNum.toString(); this.addMsg.RefuseVisaNum = x.RefuseVisaNum.toString(); this.addMsg.OrderForm = x.OrderForm; this.addMsg.allName = x.ContactName; this.addMsg.OrderBackScenicList = x.OrderBackScenicList; this.IsChildrenTour = x.IsChildrenTour; this.IsBirdDiscount = x.IsBirdDiscount; this.OpSetLossPeople = x.OpSetLossPeople; this.OpSetLossMoney = x.OpSetLossMoney; if (this.addMsg.GroupType == 4) { this.HightUnitPrice = "1"; this.Unit_Price = x.Unit_Price; } else { this.HightUnitPrice = "2"; this.Unit_Price = this.addObj.SingleDMCPrice; } this.stratPrice = res.data.data.modelPrice.GoAddPrice; if (this.stratPrice == 0) { this.stratPriceShow = false; } else { this.stratPriceShow = true; } this.returnPrice = res.data.data.modelPrice.BackAddPrice; if (this.returnPrice == 0) { this.returnPriceShow = false; } else { this.returnPriceShow = true; } if (x.ClientSource == 1) { this.isPingtai = true; } if (this.addMsg.GroupType != 5) { this.isShowLayer = true; this.isShowLayer2 = false; } else { this.isShowLayer = false; this.isShowLayer2 = true; } this.addMsg.GroupTypeNeedHouse = String(x.GroupTypeNeedHouse); this.getKhmdList( this.addMsg.CustomerType, obj.lineId, this.addMsg.CreateBy, x.CustomerId ); this.getDdlyList(this.addMsg.CustomerType); let maxPeopleNum = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNoNeedBedNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.AirticketNum); this.Unit_PriceList = []; this.apipost( "sellorder_post_GetLessPrice", { TCID: obj.tcid, MaxPeopleNum: maxPeopleNum, }, (res) => { this.LessMoney = res.data.data.lessMoney; if (parseFloat(this.LessMoney) > 0) { for (var i = 0; i <= parseInt(this.LessMoney) / 10; i++) { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.TC_Price - i * 10; obj.LessMoney = this.addMsg.TC_Price - i * 10; this.Unit_PriceList.push(obj); } if ( this.Unit_PriceList.findIndex( (markers) => markers.ID == this.addMsg.Unit_Price ) < 0 ) { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.Unit_Price; obj.LessMoney = this.addMsg.Unit_Price; this.Unit_PriceList.push(obj); } } else { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.Unit_Price; obj.LessMoney = this.addMsg.Unit_Price; this.Unit_PriceList.push(obj); } }, (err) => {} ); this.isShowLayerRemarks = false; this.apipost( "app_today_visit_GetCustomerBrandByCustomerId", { customerInfoId: x.CustomerId, }, (res) => { if (res.data.resultCode == 1) { this.ssptList = res.data.data; this.addMsg.BrandId = x.BrandId; } }, (err) => {} ); this.getHouseNo(); } else {} }, (err) => {} ); }, getHouse: function (obj) { this.starTime = obj.startDate; this.endTime = obj.backDate; this.getMinPrice(obj.orderId); this.addMsg.OrderId = obj.orderId; this.apipost( "sellorder_post_GetOrderEntity", { ID: obj.orderId, }, (res) => { if (res.data.resultCode == 1) { this.IsUnion = res.data.data.IsUnion; this.isAllowUpdate = res.data.data.IsUpdatePlatOrder; this.addObj = res.data.data.modelPrice; let x = res.data.data.model; this.addMsg = x; this.addMsg.ScenicRefundArr = res.data.data.ScenicRefundArr; this.getScenicRefund(obj.tcid, obj.orderId); this.SetOutCityId = res.data.data.SetOutCityId; this.reOutCityId = res.data.data.SetBackCityId; this.addMsg.CustomerType = x.CustomerType.toString(); this.addMsg.ClientSource = x.ClientSource.toString(); this.addMsg.GroupType = x.GroupType.toString(); this.addMsg.TradeWay = x.TradeWay.toString(); this.addMsg.PredictRoomNum = x.PredictRoomNum; this.addMsg.IsIntermodal = x.IsIntermodal.toString(); this.addMsg.IsReturnIntermodal = x.IsReturnIntermodal.toString(); this.addMsg.ChirdNum = x.ChirdNum.toString(); this.addMsg.ChirdNeedBedNum = x.ChirdNeedBedNum.toString(); this.addMsg.ChirdNoNeedBedNum = ( x.ChirdNum - x.ChirdNeedBedNum ).toString(); this.addMsg.BabyNum = x.BabyNum.toString(); this.IsChildrenTour = x.IsChildrenTour; this.IsBirdDiscount = x.IsBirdDiscount; this.stratPrice = res.data.data.modelPrice.GoAddPrice; if (this.stratPrice == 0) { this.stratPriceShow = false; } else { this.stratPriceShow = true; } this.returnPrice = res.data.data.modelPrice.BackAddPrice; if (this.returnPrice == 0) { this.returnPriceShow = false; } else { this.returnPriceShow = true; } if (x.ClientSource == 1) { this.isPingtai = true; } this.isShowHouse = true; this.isShowLayer = false; this.isShowLayer2 = false; this.isShowLayerRemarks = false; this.apipost( "app_today_visit_GetCustomerBrandByCustomerId", { customerInfoId: x.CustomerId, }, (res) => { if (res.data.resultCode == 1) { this.ssptList = res.data.data; this.addMsg.BrandId = x.BrandId; } }, (err) => {} ); this.getKhmdList( this.addMsg.CustomerType, obj.lineId, this.addMsg.CreateBy, x.CustomerId ); this.getDdlyList(this.addMsg.CustomerType); } else { this.$message.error(res.data.message); } }, (err) => {} ); }, //显示备注弹窗 getRemarks(obj) { // 华国豪5-5新增 if (moment().format("YYYY-MM-DD") >= obj.startDate) { this.$confirm("该团目前已是结团状态,无法修改备注", "提示", { confirmButtonText: "确定", showCancelButton: false, type: "warning", }) .then(() => { return; }) .catch(() => { this.$message.info("已取消!"); }); } else { this.remarksMsg.OrderId = obj.orderId; this.remarksMsg.Remarks = obj.remarks; this.remarksMsg.OldRemarks = obj.remarks; this.remarksMsg.UnionRemark = obj.unionRemark; this.remarksMsg.IsIntermodal = obj.isIntermodal; this.remarksMsg.TeamType = obj.teamType; this.isShowLayerRemarks = true; } }, getTypePrice() { this.addMsg.ContactName = ""; this.addMsg.ContactMobile = ""; if (this.addMsg.CustomerType == 1) { this.addMsg.TC_Price = this.addObj.B2BMemberPrice; //this.addMsg.CustomerId='' } if (this.addMsg.CustomerType == 2) { this.addMsg.TC_Price = this.addObj.B2BPrice; //this.addMsg.CustomerId='' } if (this.addMsg.CustomerType == 3) { this.addMsg.TC_Price = this.addObj.B2CMemberPrice; //this.addMsg.CustomerId=0 } if (this.addMsg.CustomerType == 4) { this.addMsg.TC_Price = this.addObj.B2CPrice; //this.addMsg.CustomerId=0 } this.Unit_PriceList = []; this.apipost( "sellorder_post_GetLessPrice", {}, (res) => { this.LessMoney = res.data.data.lessMoney; if (parseFloat(this.LessMoney) > 0) { for (var i = 0; i <= parseInt(this.LessMoney) / 10; i++) { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.TC_Price - i * 10; obj.LessMoney = this.addMsg.TC_Price - i * 10; this.Unit_PriceList.push(obj); } } else { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.Unit_Price; obj.LessMoney = this.addMsg.Unit_Price; this.Unit_PriceList.push(obj); } }, (err) => {} ); }, getTicheng() { if (this.addMsg.GroupType != 5) { //提成 let num = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum); let yh = 0; if (num > 0) { this.apipost( "sellorder_get_GetOrderMinPrice", { ltID: this.addObj.ltID, Num: num, }, (res) => { yh = res.data.data; }, (err) => {} ); } // let cj='成交单价-最低成交价格(标准单价-符合人数[成人,儿童,老人]条件的最高少价)' let chajia = Number(this.addMsg.Unit_Price) - (this.addMsg.TC_Price - yh); let ewtc = chajia > 0 ? chajia * 0.5 * num : chajia * num; //额外提成 this.addMsg.Commission = ( Number(this.addMsg.PreferPrice) * 0.01 + ewtc ).toFixed(2); if (this.addMsg.CustomerType == 1 || this.addMsg.CustomerType == 2) { if (this.addMsg.CommissionSharePeople != "-1") { if (this.addMsg.Commission > 0) { this.addMsg.CommissionShareMoney = this.addMsg.Commission / 2; this.addMsg.Commission = this.addMsg.Commission - this.addMsg.CommissionShareMoney; } else { this.addMsg.CommissionShareMoney = "0"; } } } } else { this.addMsg.Commission = Number(this.addMsg.PreferPrice) * 0.01; } }, getHouseNo() { //算法:((成人+儿童占床数+老人-(三人房数量*3))-单房数)/2+单房数+三人房数量 8.7新增单地接儿童不占床 减去 儿童不占床 let etbzc = 0; if (this.addMsg.GroupType == 4) { etbzc = this.addMsg.ChirdNoNeedBedNum ? Number(this.addMsg.ChirdNoNeedBedNum) : 0; } this.addMsg.PredictRoomNum = (Number(this.addMsg.AirticketNum) + (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) - etbzc + Number(this.addMsg.OldPeopleNum)) - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.SingleRoomNum)) / 2 + Number(this.addMsg.SingleRoomNum) + Number(this.addMsg.TripleRoomNum); }, getNumber() { if ( this.addMsg.GroupType == 4 && this.addMsg.ChirdNoNeedBedNum > this.addMsg.AirticketNum ) { this.addMsg.ChirdNoNeedBedNum = 0; this.$message.error("儿童不占床数不能大于单地接人数!"); this.$forceUpdate(); return; } let ChirdNum = this.addMsg.ChirdNoNeedBedNum * 1 + this.addMsg.ChirdNeedBedNum * 1; if (this.addMsg.GroupType == 4) { ChirdNum = 0; } this.addMsg.ChirdNum = this.addMsg.ChirdNoNeedBedNum * 1 + this.addMsg.ChirdNeedBedNum * 1; this.addMsg.VisaNum = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + ChirdNum + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum); this.addMsg.SafeNum = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + ChirdNum + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum); var SeatNum = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) - (Number(this.addMsg.ESeatNum) + Number(this.addMsg.FSeatNum)); this.addMsg.YSeatNum = SeatNum < 0 ? 0 : SeatNum; if (this.addMsg.GroupType == 4) { this.addMsg.YSeatNum = 0; } }, getTotalPrice(t) { if (t === 3) { if (parseFloat(this.addMsg.Unit_Price).toString() === "NaN") { this.$message.error("请输入正确的价格!"); this.addMsg.Unit_Price = this.addMsg.TC_Price; return; } if (this.addMsg.Unit_Price < this.addMsg.TC_Price) { this.$message.error("成交单价必须大于等于本团单价!"); this.addMsg.Unit_Price = this.addMsg.TC_Price; return; } } if (this.addMsg.GroupType != 5) { this.addMsg.ChirdNum = this.addMsg.ChirdNoNeedBedNum * 1 + this.addMsg.ChirdNeedBedNum * 1; if (this.addObj.IsBirdDiscount && this.addObj.IsBirdDiscount == 1) { //早鸟优惠 //this.addMsg.Unit_Price //成交单价 //BabyPrice 婴儿价 //BabyChargePrice 儿童附加费 //OldManChargePrice 老人 附加费 //DiscountPrice 早鸟优惠 let chengren = Number(this.addMsg.ManNum) * (Number(this.addMsg.Unit_Price) - this.addObj.DiscountPrice); let ertong = Number(this.addMsg.ChirdNum) * (Number(this.addMsg.Unit_Price) - this.addObj.DiscountPrice + this.addObj.BabyChargePrice); let yinger = Number(this.addMsg.BabyNum) * this.addObj.BabyPrice; let laoren = Number(this.addMsg.OldPeopleNum) * (Number(this.addMsg.Unit_Price) - this.addObj.DiscountPrice + this.addObj.OldManChargePrice); let zafeiqianzhen = this.addObj.OtherPrice * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) + this.addObj.VisaPrice * (Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) - this.addObj.BackVisaPrice * (Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.VisaNum)); let danfang = Number(this.addMsg.SingleRoomNum) * this.addObj.SingleRoomPrice; let ertongbed = this.addObj.ChildNeedPrice * Number(this.addMsg.ChirdNeedBedNum) - this.addObj.ChildNoNeedPrice * (Number(this.addMsg.ChirdNum) - Number(this.addMsg.ChirdNeedBedNum)); let lianyun = (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) * (Number(this.stratPrice) + Number(this.returnPrice)); let dandijie; if (this.addMsg.GroupType == 4) { dandijie = this.addMsg.Unit_Price * Number(this.addMsg.AirticketNum) - this.addObj.ChildNoNeedPrice * Number(this.addMsg.ChirdNoNeedBedNum); ertong = 0; ertongbed = 0; zafeiqianzhen = 0; } else { dandijie = this.addObj.SingleDMCPrice * Number(this.addMsg.AirticketNum); } this.addMsg.PreferPrice = this.OpSetLossMoney + dandijie + lianyun + chengren + ertong + yinger + laoren + zafeiqianzhen + danfang + ertongbed - this.ScenicRefundMoney * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)); } else { let chengren = Number(this.addMsg.ManNum) * Number(this.addMsg.Unit_Price); let ertong = Number(this.addMsg.ChirdNum) * (Number(this.addMsg.Unit_Price) + this.addObj.BabyChargePrice); let yinger = Number(this.addMsg.BabyNum) * this.addObj.BabyPrice; let laoren = Number(this.addMsg.OldPeopleNum) * (Number(this.addMsg.Unit_Price) + this.addObj.OldManChargePrice); let zafeiqianzhen = this.addObj.OtherPrice * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) + this.addObj.VisaPrice * (Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) - this.addObj.BackVisaPrice * (Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.VisaNum)); let danfang = Number(this.addMsg.SingleRoomNum) * this.addObj.SingleRoomPrice; let ertongbed = this.addObj.ChildNeedPrice * Number(this.addMsg.ChirdNeedBedNum) - this.addObj.ChildNoNeedPrice * (Number(this.addMsg.ChirdNum) - Number(this.addMsg.ChirdNeedBedNum)); let lianyun = (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)) * (Number(this.stratPrice) + Number(this.returnPrice)); let dandijie; if (this.addMsg.GroupType == 4) { dandijie = this.addMsg.Unit_Price * Number(this.addMsg.AirticketNum) - this.addObj.ChildNoNeedPrice * Number(this.addMsg.ChirdNoNeedBedNum); ertong = 0; ertongbed = 0; zafeiqianzhen = 0; } else { dandijie = this.addObj.SingleDMCPrice * Number(this.addMsg.AirticketNum); } this.addMsg.PreferPrice = this.OpSetLossMoney + dandijie + lianyun + chengren + ertong + yinger + laoren + zafeiqianzhen + danfang + ertongbed - this.ScenicRefundMoney * (Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum)); } } else { this.addMsg.PreferPrice = Number(this.addMsg.YSeatNum) * Number(this.addMsg.Unit_Price) + this.OpSetLossMoney; } this.getTicheng(); if (!t) { this.getTypePrice2(); } }, yzBigBed2() { let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum); let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2; if (y < 0) { this.addMsg.SingleRoomNum = 0; } this.getHouseNo(); }, yzBigBed() { let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum); let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2; if (y <= -1) { this.addMsg.BigRoomNum = 0; } this.getHouseNo(); }, yzBigBed1() { let x = Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) - Number(this.addMsg.SingleRoomNum); let y = x - Number(this.addMsg.TripleRoomNum) * 3 - Number(this.addMsg.BigRoomNum) * 2; if (y <= -1) { this.addMsg.TripleRoomNum = 0; } this.getHouseNo(); }, submitForm(addMsg) { //提交创建、修改表单 this.$refs[addMsg].validate((valid) => { if (valid) { this.saveOrder(); } else { return false; } }); }, submitForm2(addMsg) { //提交创建、修改表单 this.$refs[addMsg].validate((valid) => { if (valid) { this.saveOrder2(); } else { return false; } }); }, cancelSubmit() { this.isShowLayer = false; this.$refs["addMsg"].resetFields(); this.clearMsg(); }, cancelSubmit2() { this.isShowLayer2 = false; this.$refs["addMsg2"].resetFields(); this.clearMsg(); }, cancelSubmitRemarks() { this.isShowLayerRemarks = false; this.remarksMsg.Remarks = ""; this.remarksMsg.OrderId = "0"; this.remarksMsg.isOrder = 1; this.SpecialOffer = false; this.SOMsg.UpdateBy = ""; this.SOMsg.ApplyPrice = 0; this.SOMsg.ApplyReason = ""; }, houseSubmit: function () { //提交修改房型表单 this.apipost( "sellorder_post_SellUpdateOrderHouse", this.addMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.$refs["addMsg"].resetFields(); this.clearMsg(); this.getList(); this.isShowHouse = false; } else { this.isShowHouse = false; this.$message.error(res.data.message); } }, (err) => {} ); }, houseCancel: function () { this.isShowHouse = false; this.$refs["addMsg"].resetFields(); this.clearMsg(); }, clearMsg() { this.addMsg.OrderId = "0"; this.addMsg.TCID = "0"; this.addMsg.IsIntermodal = "2"; this.addMsg.IsReturnIntermodal = "2"; this.addMsg.Unit_Price = "0"; this.addMsg.TC_Price = "0"; this.addMsg.ManNum = "0"; this.addMsg.ChirdNum = "0"; this.addMsg.ChirdNeedBedNum = "0"; this.addMsg.BabyNum = "0"; this.addMsg.OldPeopleNum = "0"; this.addMsg.SingleRoomNum = "0"; this.addMsg.PreferPrice = "0"; this.addMsg.YSeatNum = "0"; this.addMsg.ESeatNum = "0"; this.addMsg.FSeatNum = "0"; this.addMsg.Commission = "0"; this.addMsg.BrandId = ""; this.addMsg.TradeWay = "2"; this.addMsg.PlatformAccount = ""; this.addMsg.GuestNum = "0"; this.addMsg.IsChildrenTour = "0"; this.addMsg.OrderId = "0"; this.addMsg.IsBirdDiscount = "0"; this.addMsg.PredictRoomNum = "0"; this.addMsg.BigRoomNum = "0"; this.addMsg.TripleRoomNum = "0"; this.addMsg.TradeDate = ""; this.addMsg.CostType = ""; this.addMsg.PlatformOrder = ""; this.ddlyList = []; this.addMsg.Remarks = ""; this.addMsg.MinOrderPrice = ""; this.addMsg.VisaNum = "0"; this.addMsg.SafeNum = "0"; this.addMsg.RefuseVisaNum = "0"; this.addMsg.AirticketNum = "0"; this.addMsg.ScenicRefundArr = []; this.ScenicRefundMoney = 0; this.addMsg.CommissionSharePeople = -1; this.addMsg.CommissionShareMoney = "0"; }, saveOrder() { // 判断单团类型 if (this.addMsg.GroupType == 2) { if (this.addMsg.QuotationUrl == "") { this.Error("请上传附件!"); return; } } // 选择联运,联运备注必填 if (this.addMsg.IsIntermodal == 1 || this.addMsg.IsReturnIntermodal == 1) { if (!this.addMsg.UnionRemark) { this.Error("请填写联运备注!"); return; } } //验证人数和机位数 20190807 修改 如果是不是单地接才判断 if (this.addMsg.GroupType !== "4" && this.addMsg.GroupType !== "3") { if ( Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) != Number(this.addMsg.YSeatNum) + Number(this.addMsg.ESeatNum) + Number(this.addMsg.FSeatNum) ) { if (this.IsChargeLossOrders == 1) {} else { this.$message.warning("人数和机位数不相等!"); return; } } if ( Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) < Number(this.addMsg.VisaNum) ) { this.$message.warning("签证数量不能大于人数总和!"); return; } if ( Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) < Number(this.addMsg.SafeNum) ) { this.$message.warning("保险数量不能大于人数总和!"); return; } if ( Number(this.addMsg.ChirdNeedBedNum) > Number(this.addMsg.ChirdNum) ) { this.$message.warning("儿童占床不能大于儿童数!"); return; } if ( Number(this.addMsg.ChirdNum) - Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.BabyNum) > Number(this.addMsg.ManNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.ChirdNeedBedNum) ) { this.$message.warning("儿童占床数量不足!"); return; } } let ChirdNum = Number(this.addMsg.ChirdNum); if (this.addMsg.GroupType == 4) { ChirdNum = 0; } this.addMsg.TCID = this.addObj.TCID; this.addMsg.GuestNum = Number(this.addMsg.ManNum) + ChirdNum + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.AirticketNum); this.addMsg.IsChildrenTour = this.IsChildrenTour; this.addMsg.IsBirdDiscount = this.addObj.IsBirdDiscount; this.apipost( "sellorder_post_SetOrderInfo_02", this.addMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.$refs["addMsg"].resetFields(); this.clearMsg(); this.getList(); this.isShowLayer = false; if (res.data.data == 1) { this.$router.push({ name: "passengerSaleList", query: { id: this.goLVurl.orderId, tcid: this.goLVurl.tcid, tcnum: this.goLVurl.tcnum, isOrder: this.goLVurl.isOrder, blank: "y", tab: "旅客名单", }, }); } } else { this.isShowLayer = false; this.$message.error(res.data.message); } }, (err) => {} ); }, saveOrder2() { //验证人数和机位数 if ( Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) != Number(this.addMsg.YSeatNum) + Number(this.addMsg.ESeatNum) + Number(this.addMsg.FSeatNum) ) { this.$message.warning("人数和机位数不相等!"); return; } if ( Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) < Number(this.addMsg.VisaNum) ) { this.$message.warning("签证数量不能大于人数总和!"); return; } if ( Number(this.addMsg.AirticketNum) + Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) < Number(this.addMsg.SafeNum) ) { this.$message.warning("保险数量不能大于人数总和!"); return; } this.addMsg.TCID = this.addObj.TCID; this.addMsg.GuestNum = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.BabyNum) + Number(this.addMsg.AirticketNum); this.addMsg.IsChildrenTour = this.IsChildrenTour; this.addMsg.IsBirdDiscount = this.addObj.IsBirdDiscount; this.apipost( "sellorder_post_SetOrderInfoForAirTicket", this.addMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.$refs["addMsg2"].resetFields(); this.clearMsg(); this.getList(); this.isShowLayer2 = false; } else { this.isShowLayer2 = false; this.$message.error(res.data.message); } }, (err) => {} ); }, getStartList() { this.apipost( "sellorder_get_GetAllStartCity", {}, (res) => { if (res.data.resultCode == 1) { this.startCityList = res.data.data; } else {} }, (err) => {} ); }, getJyfs() { this.apipost( "sellorder_get_GetSellTradeWayEnumList", {}, (res) => { if (res.data.resultCode == 1) { this.jyfsList = res.data.data; } }, (err) => {} ); }, getFylx() { this.apipost( "Financial_post_GetByOrderCostTypeList", { Type: 1, }, (res) => { if (res.data.resultCode == 1) { this.fylxList = res.data.data; } }, (err) => {} ); }, getSspt() { //给非直客 隐藏电话姓名赋值 if (this.khmdList.length !== 0) { let obj = this.khmdList.find( (item) => item.customerId == this.addMsg.CustomerId ); this.customerId = obj.customerId; this.createByInfo = obj.createByInfo; this.addMsg.ContactName = obj.customerName + "(" + obj.contact + ")"; this.addMsg.ContactMobile = obj.contactNumber; } this.apipost( "app_today_visit_GetCustomerBrandByCustomerId", { customerInfoId: this.addMsg.CustomerId, }, (res) => { if (res.data.resultCode == 1) { this.ssptList = res.data.data; } }, (err) => {} ); }, getKhmdList(id, lineId, employeeId, CustomerId) { this.apipost( "app_today_visit_GetNewOrderMyCustomerList", { typeId: id, lineId: lineId, EmoloyeeId: employeeId, customerId: CustomerId, }, (res) => { if (res.data.resultCode == 1) { this.khmdList = res.data.data; this.getSspt(); } }, (err) => {} ); }, getDdztList() { this.apipost( "sellorder_post_GetSellOrderStatusEnumList", {}, (res) => { if (res.data.resultCode == 1) { this.ddztList = res.data.data; } }, (err) => {} ); }, getDdlyList(id) { this.apipost( "sellorder_get_GetSellClientSourceEnumList", { typeId: id, }, (res) => { if (res.data.resultCode == 1) { this.ddlyList = res.data.data; } }, (err) => {} ); }, getCtlxList() { this.apipost( "sellorder_get_GetOrderJoinEnumList", {}, (res) => { if (res.data.resultCode == 1) { this.ctlxList = res.data.data; } }, (err) => {} ); }, getKhlxList() { this.apipost( "sellorder_get_GetSellClientTypeEnumList", {}, (res) => { if (res.data.resultCode == 1) { this.khlxList = res.data.data; } }, (err) => {} ); }, getMembersDetail(obj) { this.apipost( "sellorder_post_GetPeopleList", { ID: obj.orderId, }, (res) => { if (res.data.resultCode == 1) { this.memberList = res.data.data; } }, (err) => {} ); }, getLogDetail(obj) { this.apipost( "sellorder_post_GetOrderLogList", { ID: obj.orderId, }, (res) => { if (res.data.resultCode == 1) { this.logList = res.data.data; this.logList.forEach((item) => { item["x"] = this.$commonUtils.formatMsgTime(item.updateDate); }); } }, (err) => {} ); }, getOrderDetail(obj) { this.apipost( "Financial_post_GetOrderFinanceList", { OrderId: obj.orderId, OrderResource: 8, IsTravelMoney: 1, }, (res) => { if (res.data.resultCode == 1) { this.orderList = res.data.data; } }, (err) => {} ); }, getList() { this.showID = -1; this.loading = true; this.apipost( "sellorder_post_GetTCNUMOrderList", this.tuanMsg, (res) => { console.log("sellorder_post_GetTCNUMOrderList", res.data); if (res.data.resultCode == 1) { this.loading = false; this.total = res.data.data.count; this.list = res.data.data.pageData.rtData; this.isUpdateOrder = res.data.data.pageData.isUpdateOrder; this.IsUpdateOrderMoney = res.data.data.pageData.isUpdateOrderMoney; this.isUpdateOrderCommission = res.data.data.pageData.isUpdateOrderCommission; this.cancelRtData = res.data.data.pageData.cancelRtData[0].list; this.seat.YSeat = res.data.data.pageData.ySeatNum; this.seat.CSeat = res.data.data.pageData.eSeatNum; this.seat.FSeat = res.data.data.pageData.fSeatNum; this.seat.joinGroupNum = res.data.data.pageData.joinGroupNum; this.seat.leaderNum = res.data.data.pageData.leaderNum; this.seat.ownVisaNum = res.data.data.pageData.ownVisaNum; //自由行 this.seat.IndependentTravelCount = res.data.data.pageData.independentTravelCount; //单地接 this.seat.NurseryGraftingCount = res.data.data.pageData.nurseryGraftingCount; //单机票 this.seat.SingleAirTicketCount = res.data.data.pageData.singleAirTicketCount; } else { this.Error(res.data.message); } }, (err) => {} ); this.getCount(); }, getLineList() { this.apipost("line_post_GetAllList", {}, (res) => { if (res.data.resultCode == 1) { this.LineList = res.data.data; } else { this.$message.error(res.data.message); } }); }, //获取系列列表 getLineTeamList(lineId) { this.LineTeamList = []; this.apipost( "team_post_GetList", { lineID: lineId, isTOOP: 1, }, (res) => { if (res.data.resultCode == 1) { this.msg.LineteamId = "-1"; this.LineTeamList = res.data.data; } } ); }, getCompanyList() { //出团公司 this.apipost( "sellorder_post_GetBranchList", {}, (res) => { if (res.data.resultCode == 1) { this.companyList = res.data.data; } }, (err) => {} ); }, goUrlP(name, path, item) { this.$router.push({ name: path, query: { id: item.orderId, tcid: item.tcid, tcnum: item.tcnum, isOrder: item.isOrder, blank: "y", tab: name, }, }); }, //跳转单单项合同 goSingleContract(item) { let query = { TCID: item.tcid, orderID: item.orderId, } this.OpenNewPage('/ContractManage', query) }, //跳转至领取合同 goContract(item, sItem) { let guestId = 0; var path = "TravelContractNew"; if (sItem) { if (sItem.guestId) { guestId = sItem.guestId; } if (sItem.templateType == 1) { path = "TravelContractNewRB"; } } let routeData = this.$router.resolve({ name: path, query: { TCID: item.tcid, guestId: guestId, orderID: item.orderId, blank: "y", }, }); window.open(routeData.href, "_blank"); }, goUrl(name, path, id, tcmun) { this.$router.push({ name: path, query: { id: id, tcmun: tcmun, blank: "y", tab: name, }, }); }, goFinanceUrl(path, Type, OrderID, OrderSource, TCID) { this.$router.push({ name: path, query: { Type: Type, OrderID: OrderID, OrderSource: OrderSource, TCID: TCID, }, }); }, handleCurrentChange(val) { this.msg.pageIndex = val; this.getList(); }, resetPageIndex() { this.msg.pageIndex = 1; this.currentPage = 1; }, getEmployee() { //员工 this.apipost( "admin_get_EmployeeGetList", this.employeeMsg, (res) => { if (res.data.resultCode == 1) { this.employeeList = res.data.data; } else {} }, (err) => {} ); }, //点击修改业务员 getSalerInfo(item) { this.subInfo.CreateBy = item.createBy; this.subInfo.OrderId = item.orderId; this.showChangeSales = true; }, //关闭修改业务员 closeSalseDiv() { this.showChangeSales = false; }, Discount(TCID) { this.SpecialOffer = true; this.apipost( "lessprice_post_GetSuperiorPeople", { TCID: TCID, }, (res) => { if (res.data.resultCode == 1) { this.SuperiorPeople = res.data.data; } }, (err) => {} ); }, //申请优惠 Preservation() { // if(this.SOMsg.ApplyPrice < 0 ){ // this.$message.error('请填写大于等于0的金额') // return // } var numReg = /^[0-9]+$/; var numRe = new RegExp(numReg); if (!numRe.test(this.SOMsg.ApplyPrice)) { this.$message.error("请输入数字"); return; } if (this.SOMsg.UpdateBy == "请选择" || this.SOMsg.UpdateBy == "") { this.$message.error("请选择审核人"); return; } if (this.SOMsg.ApplyReason == "") { this.$message.error("请填写申请理由"); return; } this.apipost( "lessprice_post_SetLesspriceOrder", this.SOMsg, (res) => { if (res.data.resultCode == 1) { this.$message.success(res.data.message); this.SpecialOffer = false; this.SOMsg.UpdateBy = ""; this.SOMsg.ApplyPrice = 0; this.SOMsg.ApplyReason = 0; } else { this.$message.error(res.data.message); this.SpecialOffer = false; this.SOMsg.UpdateBy = ""; this.SOMsg.ApplyPrice = 0; this.SOMsg.ApplyReason = ""; } }, (err) => {} ); }, gettypechange(type) { //切换参团类型时 把值初始化 if (type == 4) { this.addMsg.Unit_Price = this.Unit_Price; //成交单价 this.HightUnitPrice = "1"; this.addMsg.AirticketNum = 0; this.addMsg.ManNum = 0; // this.addMsg.ChirdNum = 0; this.addMsg.BabyNum = 0; this.addMsg.OldPeopleNum = 0; this.addMsg.ChirdNoNeedBedNum = 0; this.addMsg.ChirdNeedBedNum = 0; this.addMsg.PreferPrice = 0; this.addMsg.SafeNum = 0; this.addMsg.VisaNum = 0; this.addMsg.PredictRoomNum = 0; this.addMsg.YSeatNum = 0; } else { this.HightUnitPrice = "2"; this.addMsg.AirticketNum = 0; this.addMsg.ManNum = 0; // this.addMsg.ChirdNum = 0; //? this.addMsg.BabyNum = 0; this.addMsg.OldPeopleNum = 0; this.addMsg.ChirdNoNeedBedNum = 0; this.addMsg.ChirdNeedBedNum = 0; this.addMsg.PreferPrice = 0; this.addMsg.SafeNum = 0; this.addMsg.VisaNum = 0; this.addMsg.PredictRoomNum = 0; this.addMsg.YSeatNum = 0; } if (this.addMsg.CustomerType == 1) { if (this.addMsg.GroupType == 4) { this.addMsg.TC_Price = this.addObj.SingleDMCPrice; } else { this.addMsg.TC_Price = this.addObj.B2BMemberPrice; this.addMsg.Unit_Price = this.addObj.B2BMemberPrice; } } if (this.addMsg.CustomerType == 2) { if (this.addMsg.GroupType == 4) { this.addMsg.TC_Price = this.addObj.SingleDMCPrice; } else { this.addMsg.TC_Price = this.addObj.B2BPrice; this.addMsg.Unit_Price = this.addObj.B2BPrice; } } if (this.addMsg.CustomerType == 3) { if (this.addMsg.GroupType == 4) { this.addMsg.TC_Price = this.addObj.SingleDMCPrice; } else { this.addMsg.TC_Price = this.addObj.B2CMemberPrice; this.addMsg.Unit_Price = this.addObj.B2CMemberPrice; } this.addMsg.CustomerId = "0"; this.addMsg.CommissionShareMoney = "0"; } if (this.addMsg.CustomerType == 4) { if (this.addMsg.GroupType == 4) { this.addMsg.TC_Price = this.addObj.SingleDMCPrice; } else { this.addMsg.TC_Price = this.addObj.B2CPrice; this.addMsg.Unit_Price = this.addObj.B2CPrice; } this.addMsg.CustomerId = "0"; this.addMsg.CommissionShareMoney = "0"; } this.addMsg.GroupTypeNeedHouse = "0"; }, getTypePrice2() { let maxPeopleNum = Number(this.addMsg.ManNum) + Number(this.addMsg.ChirdNoNeedBedNum) + Number(this.addMsg.ChirdNeedBedNum) + Number(this.addMsg.OldPeopleNum) + Number(this.addMsg.AirticketNum); this.Unit_PriceList = []; this.apipost( "sellorder_post_GetLessPrice", { TCID: this.addMsg.TCID, MaxPeopleNum: maxPeopleNum, }, (res) => { this.LessMoney = res.data.data.lessMoney; if (parseFloat(this.LessMoney) > 0) { for (var i = 0; i <= parseInt(this.LessMoney) / 10; i++) { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.TC_Price - i * 10; obj.LessMoney = this.addMsg.TC_Price - i * 10; this.Unit_PriceList.push(obj); } if ( this.Unit_PriceList.findIndex( (markers) => markers.ID == this.addMsg.Unit_Price ) < 0 ) { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.Unit_Price; obj.LessMoney = this.addMsg.Unit_Price; this.Unit_PriceList.push(obj); } } else { var obj = { ID: "", LessMoney: "", }; obj.ID = this.addMsg.Unit_Price; obj.LessMoney = this.addMsg.Unit_Price; this.Unit_PriceList.push(obj); } }, (err) => {} ); }, // 获取修改业务员权限 GetEditOrderCreateByAuth() { this.apipost( "sellorder_get_GetEditOrderCreateByAuth", {}, (res) => { if (res.data.resultCode == 1) { this.isEditOrderCreate = res.data.data; } }, (err) => {} ); }, // 获取总经理副总经理超级修改权限 GetSupperOrderEditAuth() { var actionCode = this.$AuthCode.SupperOrderEdit; var actionCodeNew = this.$AuthCode.F_Finance_Create; this.CheckUserAuth(actionCode, (res) => { if (res.data.resultCode == 1 && res.data.data == 1) { this.IsSupperOrderEdit = true; } }); this.CheckUserAuth(actionCodeNew, (res) => { if (res.data.resultCode == 1 && res.data.data == 1) { this.F_Finance_Create = true; } }); }, // 出纳查看订单权限 GetLookOrderAuth() { var actionCode = this.$AuthCode.LookOrder; this.CheckUserAuth(actionCode, (res) => { if (res.data.resultCode == 1 && res.data.data == 1) { this.IsLookOrder = true; } }); }, //预览文件-报价单 previewFileFJ(e) { window.open(this.addMsg.QuotationUrl, "_blank"); return; }, // 查看报价单 seeBJD(url) { window.open(url, "_blank"); return; }, //上传文件-报价单 uploadFileBtnFJ(file) { if (file.file.size > 1024 * 1024 * 100) { this.$message.warning("上传文件不能大于100M"); this.$refs["my-upload"].clearFiles(); return; } this.uploadLloading = true; let newArr = []; newArr.push(file.file); let path = "/Upload/Temporary/"; this.$message.info(this.$t("tips.shangchuanzhong")); this.UploadSelfFileT(path, newArr, (x) => { this.addMsg.QuotationUrl = this.domainManager().ViittoFileUrl + x.data.FilePath; this.$message.success(this.$t("tips.scchenggong")); this.uploadLloading = false; }); }, // 移除文件-报价单 removeFileFJ(e) { this.addMsg.QuotationUrl = ""; }, }, mounted() { const that = this; window.onresize = () => { return (() => { window.fullHeight = document.documentElement.clientHeight; that.fullHeight = window.fullHeight; })(); }; if (this.fullHeight > 700) { this.ScreenHeight = "600px"; } else { this.ScreenHeight = "300px"; } this.qjGroupId = this.QjGroupId(); this.GetLookOrderAuth(); this.GetSupperOrderEditAuth(); this.GetEditOrderCreateByAuth(); let userInfo = this.getLocalStorage(); this.userInfo = this.getLocalStorage(); let userMenuCode = "," + userInfo.ActionMenuCode + ","; this.TransferMission = userMenuCode.indexOf(",Sale_TurnGroup,") != -1 ? true : false; this.userId = this.getLocalStorage().EmployeeId; let ActionMenuCode = this.userInfo.ActionMenuCode; if (ActionMenuCode.indexOf('S_UpdateOrderMoney') != -1) { this.S_UpdateOrderMoney = true } this.getEmployee(); this.getList(); this.getLineList(); this.getCompanyList(); this.getStartList(); this.getKhlxList(); this.getCtlxList(); this.getDdztList(); this.getJyfs(); this.getFylx(); this.getTuanInfo(); this.canEditUnitPrice(); }, }; </script>