<style scoped> @media print{ ._none_print{display:none} } ._none_print{ position: relative; z-index: 2; } ._none_print_tips{ position: absolute; top: 80px; z-index: 1; } .page_bdm{padding: 20px 0;} ._tit{padding-left: 10px;border-left: 3px solid #E95252;font-size: 14px} ._conten{position: relative} ._conten,._process{margin-top: 20px;width: 890px;} ._explain{padding: 20px 15px;border-top: 1px dashed #BFBFBF;border-bottom: 1px dashed #BFBFBF;background-color: white;} ._explain>p{color: #1273BC;font-size: 12px;} ._explain>div{display: flex;justify-content: space-between;font-size: 12px;color: #333333;margin-top: 10px;align-items: center;} ._tit2{ border:none; background-color: white; border: 1px solid #DDDDDD; } ._tit._tit2>p{ padding-left: 10px; font-size: 14px; color: #000; padding: 8px 15px; display: flex; justify-content: space-between; } ._tit._tit2 ._rotate{ transform:rotate(180deg); } ._tit._tit2 ._btn{ font-size: 12px; color: #333333; cursor: pointer; } ._tit._tit2 ._btn:hover{ color: #E95252; } ._tit._tit2 ._btn .iconfont{ font-size: 12px; display: inline-block; margin-left: 10px; } ._tit._tit2 ._text{ border-left: 3px solid #e95252; padding-left: 10px; } ._process{background-color: white;padding: 20px 15px;position: relative;} ._process_box{border-top: 1px dashed #BFBFBF;padding-top: 30px;padding-bottom: 40px;} ._flow_chart{position:absolute;display: inline-block;right: 15px;top: 7px;padding:5px 25px;font-size: 12px;color: #FFFFFF;background-color: #E95252;border-radius: 14px;cursor: pointer;} ._pb_son{position: relative;padding-left: 75px;min-height: 100px;padding-bottom: 30px} ._left_radius{width: 40px;height: 40px;border-radius: 50%;text-align: center;line-height: 40px;background-color: #2BBB7E;color: white;font-size: 12px;position: absolute;left: 15px;z-index: 2;} ._left_radius_err{background-color: #E95252 !important;} ._left_radius_sus{background-color: #1273BC !important;} ._pb_son::after{content: '';width: 4px;height: 100%;background-color: #2BBB7E;display: inline-block;position: absolute;clear: both;left: 33px;top: 0;z-index: 1} ._pb_son._none_after::after{content: '';display: none} ._pb_son._bohui_after::after{background-color: #E95252 !important;display: inline-block} ._status_color_f{background-color: #8B8B8B !important} ._right_content ._name ._n{font-size: 14px;color: #333333;font-weight: bold;} ._right_content ._name ._m{color: #FFFFFF;font-size: 12px;display: inline-block;padding: 2px 5px;background-color: #E95252;margin-left: 5px;border-radius: 4px;} ._right_content ._name ._sm{color: #FFFFFF;font-size: 12px;display: inline-block;padding: 2px 5px;background-color: #FF9600;margin-left: 5px;border-radius: 4px;font-weight: 100;} ._right_content ._name ._sn{color: #FFFFFF;font-size: 12px;display: inline-block;padding: 2px 5px;background-color: #2BBB7E;margin-left: 5px;border-radius: 4px;} ._right_content ._time,._time{font-size: 12px;color: #666666;padding-top: 5px;} ._right_content ._pp_info,._textarea{border-radius: 4px; border: 1px solid #E5E5E5;background:rgba(245,245,245,1);font-size: 12px;color: #333333;padding: 12px 14px;margin-top: 13px;position: relative;} ._right_content ._pp_info:before{display:block;content:'';border-width:8px 8px 8px 8px;border-style:solid;border-color: transparent transparent #dedede transparent;position:absolute;left:10px;top:-16px;} ._mgt_15{margin-top: 15px;} /* ._more ._right_content{padding: 0 10px;padding-right: 0;} */ ._more ._right_content .iconfont{color: #AAAAAA} ._more ._right_content ._name ._n{font-size: 14px;color: #333333;font-weight: bold;padding-left: 3px;} ._info_img ul{padding: 10px 0} ._info_img ul li{float: left;position: relative;cursor: pointer} ._info_img ul li:hover ._see_img{opacity: 1;} ._info_img ul li img{width:88px;height:59px;} ._see_img{position: absolute;top: 0;width: 100%;height: 59px;padding-top: 16px;line-height: 34px;text-align: center;background-color: rgba(2, 2, 2, 0.3);display: inherit;opacity: 0;transition: all linear .5s} ._see_img i.iconfont{display: inline-block;width: 32px;height: 32px;border-radius: 50%;color: #FFFFFF !important;background-color: rgba(255, 255, 255, 0.5);} ._show_img_box{position: fixed; background: rgba(0,0,0,.6); left: 0; top:0; width: 100%; height: 100%; z-index: 999; text-align: center;overflow: auto;} ._textarea{width: 690px;height: 50px;background-color: white} ._upload_box ul li{float: left;height:82px;width:143px;padding:20px 20px 20px 0;text-align: center;position: relative;cursor: pointer;margin-right: 10px;} ._upload_box ul li img{height:82px;width:143px;} ._upload_box ul li:hover ._delete_img{opacity: 1;} ._delete_img{position: absolute;top: 20px;height:82px;width:143px;line-height: 34px;text-align: center;background-color: rgba(2, 2, 2, 0.6);display: inherit;opacity: 0;transition: all linear .5s} ._delete_img i.iconfont{display: inline-block;width: 32px;height: 32px;border-radius: 50%;color: #E95252 !important;background-color:rgba(251, 251, 251, 0.9); margin-top: 26px;} ._radio_lsit{padding-top: 15px} ._upload_tips{font-size: 12px;position: absolute;top: 66%;width: 100%;left: 0;text-align: center;color: #949494;} ._log_t{padding: 10px;} ._time_n{float: right;} .w890px{width: 890px;padding: 0;margin: 0;} .w600px{ width: 600px; padding: 15px; margin: 0 auto; } ._explain ._addUpload_box{ display: block; padding-bottom: 14px; } ._explain2>div{ margin-top: 0; } ._explain2{ border: none; padding: 20px 0 0 14px; background-color: aliceblue; } ._addUpload_box>div:hover{ background-color: #f5f5f5; } ._addFile_name{ overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; font-size: 12px; } .FinancialDocumentsDetail ._fujian_box{ position: absolute; left: 895px; top: -0; width: 440px; } ._wenjian{ padding: 15px; width: 91px; height: 80px; border:1px solid rgba(221,221,221,1); float: left; cursor: pointer; margin-right: 10px; margin-top: 10px; } ._wenjian_P{ font-size: 30px; text-align: center; color: #41D2A1; } .shangchuanfujian{ text-align: right; margin-top: 20px; } .el-carousel__item{ align-items: center; justify-content: center; display: flex; } ._splic{ width: 890px; overflow: hidden; font-size: 12px; color: #929292; margin-top: 15px; line-height: 10px; } ._fujian_box_tit{ display: flex; justify-content:space-between; font-size: 14px; color: #333333; } ._fujian_box_tit .iconfont{ font-size: 14px; display: inline-block; margin-right: 8px; } ._fujian_box_tit .iconfont.icon-bangdingzhagnhuxinxi{ color: #E95252; } ._fujian_box_tit .iconfont.icon-gengduo{ transform:rotate(90deg); font-size: 12px; } ._fujian_zhankai{ color: white; width: 64px; height: 0; font-size: 12px; border-top: 26px solid #E95252; border-right: 15px solid transparent; border-left: 15px solid transparent; -webkit-transform: rotate(-90deg); transform: rotate(-90deg); position: relative; left: -32px; bottom: -27px; } ._fujian_zhankai>span{ display: inline-block; height: 100%; width: 50%; position: absolute; left: 25px; bottom: 15px; -webkit-transform: rotate(90deg); transform: rotate(90deg); } ._fujian_zhankai>span:nth-child(2){ left: 18px; bottom: 3px; } ._border_bottom_none{ border-bottom: none !important; } ._jump_page{ cursor: pointer; text-decoration: underline; } ._jump_page:hover{ color: #c94052; } ._TCIDAndTCNUMList{ display: flex; } ._TCIDAndTCNUMList ._TCIDAndTCNUMList_item span{ display: inline-block; padding-bottom: 5px; } ._font_bold{ font-weight: bold; } ._TCIDAndTCNUMList_item{ max-width: 160px; } ._fujiashuoming_tr td{ font-size: 12px; color: #696969; padding: 5px 10px; } ._zhuan_msg{ font-size: 12px; margin-top:10px; padding-bottom: 10px; } ._zhuan_msg span{ display: inline-block; margin-right: 5px; color: #696969; } ._zhuan_msg span:last-child{ margin-left: 5px; } ._zhuan_msg p:nth-child(2){ color: #696969; } ._zhuan_msg ._color_green{ color: #2BBB7E } ._Printing{ position: relative; z-index: 30; font-size: 12px; cursor: pointer; color: #3980C8; } ._Printing:hover{ text-decoration: underline; color: rgb(255, 0, 0); } .FinancialDocumentsDetail ._addUpload_box_btm{ padding-top: 20px; max-height: 230px; overflow: auto; } ._addUpload_box_btm img{ width: 100%; } ._addUpload_box_btm>div{ float: left; width:138px; height:92px; border:1px dashed rgba(210,210,210,1); border-radius:2px; cursor: pointer; margin-bottom: 10px; padding: 5px; margin-right: 10px; position: relative; } ._addUpload_box_btm>div:hover{ background-color: #f5f5f5; } ._addFile_name{ padding-left: 15px; max-width: 450px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } ._addUpload_box_btm .icon-guanbi1 { font-size: 12px; color: white; display: inline-block; margin-left: 15px; position: absolute; right: -6px; top: -9px; background-color: #f56c6c; border-radius: 50%; height: 20px; width: 20px; text-align: center; line-height: 20px; } ._addUpload_box_btm .icon-guanbi1:hover { font-size: 12px; color: #c94052; } ._addUpload_box_btm .icon-excel{ text-align: center; font-size: 38px; color: green; line-height: 75px; } ._show_img_box{position: fixed; background: rgba(0,0,0,.6); left: 0; top:0; width: 100%; height: 100%; z-index: 999; text-align: center;} ._addUpload_tips{ font-size: 12px; color: #999999; } .InfoChangeLog{height: auto;max-height: 220px;background-color: #FFFFFF;} .changLogList{padding-left: 20px;max-height: 180px;overflow: auto;} .changLogList_l{border-left: 1px solid #E9E9E9;position: relative;padding-bottom: 10px;padding-left: 20px;padding-top: 10px;} ._radius_green{background-color: #47BF8C;width: 7px;height: 7px;border-radius: 50%;display: inline-block;position: absolute;left: -4px;top: 19px;} .changLog_time{color: #666666;font-size: 12px;display: inline-block;padding-right: 10px} .color_shz{color: #1273BC} .color_tg{color: #4BCA81} .color_bh{color: #c94052} .page_fdd .sqs:hover{ text-decoration: underline; color: rgb(255, 0, 0); } .page_fdd .Note_span:hover{ text-decoration: underline; color: rgb(255, 0, 0); } .page_fdd .sqs{ position: relative; cursor: pointer; color: #3980C8; font-size: 12px; } .page_fdd .Note_span{ position: relative; cursor: pointer; color: #3980C8; font-size: 12px; } .FD_remark_list{ margin-top:10px; color:#E95252; } .FD_remark_list span:first-child{ display: inline-block; width:26px; vertical-align: top; } .FD_remark_list span:last-child{ display: inline-block; width:90%; } .FD_yijian{ margin-left:20px; cursor:pointer; text-decoration: underline; } .illustrate-text{ display: flex; justify-content: space-between; } .illustrate-left{ flex-grow: 2; } .illustrate-right{ flex-shrink: 0; margin-left: 20px; cursor: pointer; } .illustrate-right:hover{ text-decoration: underline; } .fygsbumen-box-right{ cursor: pointer; text-decoration: underline; } </style> <template> <div class="page_fdd FinancialDocumentsDetail" v-if="GetDetail"> <div class="_none_print"> <p class="_tit"> {{GetDetail.FinanceName}} <span :class="{color_shz:(GetDetail.StatusStr!=='通过' && GetDetail.StatusStr!=='驳回' && GetDetail.StatusStr!=='作废'),color_tg:GetDetail.StatusStr==='通过',color_bh:GetDetail.StatusStr==='驳回'}">{{GetDetail.StatusStr}}</span> </p> <div style="width: 890px;position: relative;text-align: right;"> <span v-if="GetDetail.TemplateId==36 || GetDetail.TemplateId==37 || GetDetail.TemplateId==53 || GetDetail.TemplateId==43 || GetDetail.TemplateId==56 || GetDetail.TemplateId==48" class="Note_span" @click="goUrl('DebitNote',GetDetail.FrID)">借支单下载</span> <span v-if="GetDetail.TemplateId==36 || GetDetail.TemplateId==37 || GetDetail.TemplateId==53 ||GetDetail.TemplateId==48 || (GetDetail.TemplateId==43&&GetDetail.IsPublic==4) || (GetDetail.TemplateId==56&&GetDetail.IsPublic==4)" class="sqs" @click="goUrl('Application',GetDetail.FrID)"> 申请书{{GetDetail.FApplyForNumber}}下载 </span> <span v-show="huijiShow" class="_Printing" @click="goPrintPageNew(GetDetail.Type,GetDetail.FrID,GetDetail.Is_Merge,OrderSource)">凭证打印</span> <span v-show="GetDetail.AccountantMergeDetailList && GetDetail.AccountantMergeDetailList.length>0" class="_Printing" @click="goPrintPage2(GetDetail.Type,GetDetail.FrID,GetDetail.Is_Merge,OrderSource)">会计合并打印</span> <span class="_Printing" @click="goPrintPage(GetDetail.Type,GetDetail.FrID,GetDetail.Is_Merge,OrderSource)">打印单据</span> </div> <div class="_conten"> <my-Bill v-if="GetDetail.Type===2 && GetDetail.Type!==5" :isPrintPage="false" :ID="GetDetail.FrID" :width="widthSon" :color="colorSon"></my-Bill> <my-RVB-Bill v-else-if="GetDetail.Type===1" :ID="GetDetail.FrID" :isPrintPage="false" :width="widthSon" :color="colorSon"></my-RVB-Bill> <my-GZ-Bill v-else-if="GetDetail.Type===7" :ID="GetDetail.FrID" :width="widthSon" :color="colorSon"></my-GZ-Bill> <div class="_explain"> <div class="illustrate-text"> <p class="illustrate-left">附加说明: <span class="fr" v-if="GetDetail.ComplainID > 0" @click="goComplain('ComplaintsDetail', GetDetail.ComplainID,GetDetail.OrderID)"> <span style="color:#000">投诉单号:</span> <span class="cursorpointer text-decoration">{{GetDetail.ComplainID}}</span></span> <span class="fr" style="text-decoration: underline;cursor: pointer;" v-if="GetDetail.OtherType==15" @click="goassets(GetDetail.ReFinanceId,GetDetail.OtherType)"> 电商采购单:{{GetDetail.ReFinanceId}}</span> <span class="fr" style="text-decoration: underline;cursor: pointer;" v-if="GetDetail.OtherType==16" @click="goassets(GetDetail.ReFinanceId,GetDetail.OtherType)"> 电商出库单:{{GetDetail.ReFinanceId}}</span> <span class="fr" style="text-decoration: underline;cursor: pointer;" v-if="GetDetail.OtherType==17" @click="lookbreakage(GetDetail.ReFinanceId)"> 报损/报溢单:{{GetDetail.ReFinanceId}}</span> <span v-if="(GetDetail.TemplateId==28 || GetDetail.TemplateId==30) && GetDetail.OtherType!=63 && GetDetail.OtherType!=64" @click="Gourl(GetDetail)" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">提成详情</span> <span v-if="(GetDetail.TemplateId==29 || GetDetail.TemplateId==31) && OPState && GetDetail.OtherType!=63 && GetDetail.OtherType!=64" @click="GoOPurl(GetDetail)" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">提成详情</span> <span v-if="CostTypeState" @click="GourlCostType('VisitRecord',1)" style="margin:0 10px;cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">拜访记录</span> <span v-if="CostTypeState" @click="GourlCostType('yingyanMap',2)" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">鹰眼轨迹</span> <span v-if="GetDetail.OtherType==5" @click="GourlHotelZr" style="cursor: pointer;float: right;color: #000;font-size: 14px;text-decoration: underline;">酒店折让</span> <span v-if="GetDetail.OtherType==6" style="cursor: pointer;float: right;color: #000;font-size: 12px;"> <span style="text-decoration: underline;margin-right:10px" @click="goHand(1,GetDetail)">团号:{{GetDetail.TCNUM}}</span> <span style="text-decoration: underline;" @click="goHand(2,GetDetail)">相关单据:{{GetDetail.ReFinanceId}}</span> </span> <span v-if="GetDetail.OtherType==18&&GetDetail.ReFinanceId>0" style="cursor: pointer;float: right;color: #000;font-size: 12px;"> <span @click="goOrderDetails(GetDetail.ReFinanceId)">账单:{{GetDetail.ReFinanceId}}</span> </span> </p> <div class="illustrate-right" v-if="GetDetail.OtherType=='55'" @click="clickAirTicketOrder"> 机票单号:{{GetDetail.ReFinanceId}} </div> <div v-if="GetDetail.OtherType==56||GetDetail.OtherType==57" class="illustrate-right fygsbumen-box-right" @click="ImpressionTicketDetails('ImpressionTicketUserDetails')">{{GetDetail.OtherType==56?'票务提成详情':'票务工资详情'}}</div> <div v-if="GetDetail.OtherType==61||GetDetail.OtherType==62" class="illustrate-right fygsbumen-box-right" @click="ImpressionSingleDetails('singleProductHotelOrderOP')">{{'单项酒店订单:'+GetDetail.ReFinanceId}}</div> <div v-if="GetDetail.OtherType==66" class="illustrate-right fygsbumen-box-right" @click="ImpressionSingleDetails('SingleticketOrderListOP')">{{'单项门票订单:'+GetDetail.ReFinanceId}}</div> <div v-if="GetDetail.OtherType==67" class="illustrate-right fygsbumen-box-right" @click="ImpressionSingleDetails('SingleCarOrderListOP')">{{'单项车订单:'+GetDetail.ReFinanceId}}</div> <div v-if="GetDetail.OtherType==63" class="illustrate-right fygsbumen-box-right" @click="ImpressionSingleCommissionDetails('ServiceCommissiondetails',1)">{{'单项销售提成详情'}}</div> <div v-if="GetDetail.OtherType==64" class="illustrate-right fygsbumen-box-right" @click="ImpressionSingleCommissionDetails('ServiceCommissiondetails',2)">{{'单项OP提成详情'}}</div> </div> <table border="1" bordercolor="#D2D2D2" style="border-collapse:collapse;margin-top:15px;" width="100%" v-if="GetDetail.TCIDAndTCNUMList.length>0"> <tr v-for="(o,ox) in GetDetail.TCIDAndTCNUMList" class="_fujiashuoming_tr"> <td :colspan="4" v-if="GetDetail.Is_Merge===1">单据号:{{o.FinanceId}}</td> <td :colspan="3"> {{o.TCNUM}}({{o.TCID}}) <span v-if="GetDetail.IsShowGuestUrl && GetDetail.IsShowGuestUrl===1" @click="goInves('investigationList',o.TCID)" class="FD_yijian">旅客意见 <span>{{o.GuestSurveyNum?o.GuestSurveyNum:0}}</span>/ <span>{{o.GuestTotalNum?o.GuestTotalNum:0}}</span>份 </span> <a v-if="o.PriceTeamTypeName && o.PriceTeamTypeName =='单团'" style="cursor: pointer;text-decoration: underline;" target="_blank" :href="o.PriceOfferUrl" >报价单</a> <span v-if="GetDetail.IsShowGuestUrl && GetDetail.IsShowGuestUrl===1 && GetDetail.ClientType===7" @click="goGuideAccount('GuideAccount',GetDetail.ClientID)" class="FD_yijian"> 领队导游往来 </span> <span v-if="GetDetail.IsShowDiJieChargeUrl==1" style="margin-left:10px;cursor:pointer;" @click="jumpHotelContract('HotelContract',o)">手配费详情</span> </td> <td @click="jumpPage('TravelControlList',o.TCNUM,1)"> <span class="_jump_page _font_bold">查看团队</span> </td> <td @click="jumpPage('RegistrationList',o.TCID,7)"> <span class="_jump_page _font_bold">查看报名</span> </td> <td v-if="qjGroupId==userInfo.RB_Group_id || TeamShouZhi" @click="GetDetail.TCIDAndTCNUMList.length==1?jumpPage('TeamBalancePayment',o.TCID,5):jumpPage('TeamBalancePayment',o.TCID,6)"> <span class="_jump_page _font_bold">团队收支</span> </td> <td v-if="OrderSource==9&&GetDetail.SourceID>0" @click="jumpPage('FinancialOrder',GetDetail,2)"> <span class="_jump_page _font_bold">国内票务</span> </td> <td v-else-if="OrderSource==10&&GetDetail.SourceID>0" @click="jumpPage('FinancialOrder',GetDetail,3)"> <span class="_jump_page _font_bold">签证收支</span></td> <td v-else-if="OrderSource==4&&GetDetail.SourceID>0" @click="jumpPage('FinancialOrder',GetDetail,4)"> <span class="_jump_page _font_bold">机票收支</span> </td> <td v-if="GetDetail.TemplateId === 43 || GetDetail.TemplateId === 48 || GetDetail.TemplateId === 53|| GetDetail.TemplateId === 56 || GetDetail.TemplateId === 49 || GetDetail.TemplateId === 50 || GetDetail.TemplateId === 51|| GetDetail.TemplateId === 52 || GetDetail.TemplateId === 54 || GetDetail.TemplateId === 55 || GetDetail.TemplateId === 57|| GetDetail.TemplateId === 58 || GetDetail.TemplateId === 98 || GetDetail.TemplateId === 99 || GetDetail.IsShowPlanUrl === 1 && (qjGroupId==userInfo.RB_Group_id || F_Disbursement_Schedule)" @click="jumpPlanPage('leaderReimbursement',o.TCID)"> <span class="_jump_page _font_bold">用款计划</span> </td> <td v-if="GetDetail.IsShowPlanUrl === 1 && (qjGroupId==userInfo.RB_Group_id || F_Disbursement_Schedule)" @click="jumpPlanPage('leaderPay2',o.TCID)"> <span class="_jump_page _font_bold">领队报账</span> </td> <td v-if="GetDetail.TemplateId === 49 || GetDetail.TemplateId === 50 || GetDetail.TemplateId === 57 || GetDetail.TemplateId === 58" @click="jumpCheZiPage('BusApportionManagement',o.TCID)"> <span class="_jump_page _font_bold">车资分摊</span> </td> </tr> </table> <table border="1" bordercolor="#D2D2D2" style="border-collapse:collapse;margin-top:15px;" width="100%" v-else-if="OrderSource==10"> <tr class="_fujiashuoming_tr"> <td>签证产品编号:<span @click="jumpPage('VisaProductOrder',GetDetail,8)" class="_jump_page _font_bold">{{GetDetail.SourceID}}</span></td> <td @click="jumpPage('FinancialOrder',GetDetail,3)"> <span class="_jump_page _font_bold">签证收支</span></td> <td v-if="GetDetail.OrderID">签证订单:<span @click="jumpPage('VisaProductOrder',GetDetail,8,GetDetail.OrderID)" class="_jump_page _font_bold">{{GetDetail.OrderID}}</span></td> </tr> </table> <table border="1" borderCashierDetailcolor="#D2D2D2" style="border-collapse:collapse;margin-top:15px;" width="100%" v-else-if="OrderSource==9"> <tr class="_fujiashuoming_tr"> <td>期数:{{GetDetail.Term}}</td> <td @click="jumpPage('FinancialOrder',GetDetail,2)"> <span class="_jump_page _font_bold">国内票务</span></td> </tr> </table> <table border="1" bordercolor="#D2D2D2" style="border-collapse:collapse;margin-top:15px;" width="100%" v-else-if="OrderSource==4"> <tr class="_fujiashuoming_tr"> <td>机票编号:{{GetDetail.SourceID}}</td> <td v-if="(GetDetail.TCIDAndTCNUMList && GetDetail.TCIDAndTCNUMList.length===0) || !GetDetail.TCIDAndTCNUMList">线路:{{GetDetail.LineName?GetDetail.LineName:'机票尚未选择线路'}}</td> <td @click="jumpPage('FinancialOrder',GetDetail,4)"> <span class="_jump_page _font_bold">机票收支</span></td> </tr> </table> <div> <p v-if="GetDetail.Type!==7">费用归属部门:<span class="_font_bold">{{GetDetail.DepartName}}</span></p> <div> <el-popover popper-class="detailsIT_Journal" width="250" trigger="click"> <div class="InfoChangeLog" > <div class="changLog"> <p class="_log_t">流程日志</p> <ul class="changLogList" v-if="GetFinancLogList" v-loading='LogLoading'> <li class="changLogList_l" v-for="(log,li) in GetFinancLogList"> <span style="background-color: #47BF8C" class="_radius_green"></span> <p> <span class="_color_blue">{{log.EmName}}</span> <span class="fr changLog_time">{{log.UpdateDate}}</span> </p> <p class="_dtel">{{log.StartValue}}</p> </li> </ul> <ul v-else> <li>暂无修改日志</li> </ul> </div> </div> <span slot="reference" style="text-decoration: underline;cursor: pointer;" @click="Financial_post_GetFinancLogList()">单据操作日志</span> </el-popover> </div> </div> </div> <my-HB-Bill v-if="GetDetail.Is_Merge===1 && ZhiDanRen!==bossID" :ID="FrID" :FrID='FrID' :GetDetail="GetDetail" :isPrintPage="false" :width="widthSon" :color="colorSon"></my-HB-Bill> <dmcTravelBill v-if="GetDetail.OtherType==34 && GetDetail.DmcTravelFinanceList && GetDetail.DmcTravelFinanceList.length > 0" :ID="FrID" :FrID='FrID' :GetDetail="GetDetail" :isPrintPage="false" :width="widthSon" :color="colorSon"></dmcTravelBill> <!-- <myDJieBill v-if="GetDetail.DijieBathFinanceList && GetDetail.DijieBathFinanceList.length" :ID="GetDetail.FrID" :isPrintPage="false" :width="widthSon" :color="colorSon"/> --> <!--<my-C-Bill v-if="GetDetail.CashierDetail&&GetDetail.CashierDetail.length&&GetDetail.Type!=1" :ID="GetDetail.FrID" :width="widthSon" :color="colorSon"></my-C-Bill>--> <div class="_fujian_box" v-if="(GetDetail.VorcherInos&&GetDetail.VorcherInos.length>0) || saveMsg.length>0"> <div class="_fujian_zhankai cursorpointer" v-if="!fujianShow" @click="fujianShow = true"> <span>附件</span> <span>></span> </div> <p class="_fujian_box_tit" v-if="fujianShow"> <span> <i class="iconfont icon-bangdingzhagnhuxinxi"></i> <span>附件</span> </span> <span class="cursorpointer" @click="fujianShow = false">收起 <i class="iconfont icon-gengduo"></i></span> </p> <div class="_addUpload_box clearfix" v-if="fujianShow"> <div style="width:100%;height:300px" v-if="FuImgList.length>0"> <el-carousel trigger="click" height="293px" width="440px" :interval="5000"> <el-carousel-item style="height: 293px;" v-for="item in FuImgList" :key="item"> <img @click="showImg(item)" :src="item" alt="" style="width: 100%;"> </el-carousel-item> </el-carousel> </div> <div class="clearfix" style="border:none"> <template v-for="(file,fIndex) in GetDetail.VorcherInos" v-if="file.Type===1"> <div class="_wenjian" @click="showUpLoadFile(file)"> <p v-if="file.Type==1" class="_wenjian_P iconfont" :class="file.Content.substring(file.Content.lastIndexOf('.')+1,file.Content.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'"></p> <!-- <p class="_addFile_name">{{file.Content}}</p> --> </div> </template> </div> </div> <div > <div class="_addUpload_box _addUpload_box_btm clearfix" > <template v-for="(file,fIndex) in saveMsg"> <div v-if="file.Type==3"> <div style="width:100%;height:100%;overflow: hidden;"> <img :src="file.Url?file.Url:file.Content" @click="showImg(file.Url?file.Url:file.Content)"> </div> <span class="iconfont icon-guanbi1" @click="deleteUploadFile(fIndex)"></span> </div> <div v-if="file.Type==1"> <div class="iconfont _wenjian_P" :class="file.Content.substring(file.Content.lastIndexOf('.')+1,file.Content.length).toUpperCase()=='PDF'? 'icon-pdf' : 'icon-excel'" @click="showUpLoadFileT(file)"> </div> <span class="iconfont icon-guanbi1" @click="deleteUploadFile(fIndex)"></span> </div> </template> </div> </div> <div style="margin-top: 80px;"> <div class="_pic_upload" v-if="GetDetail.IsUploadPic===1"> <!--<div class="_pic_upload" v-if="saveMsg.length!==5 && ((saveMsg.length + GetDetail.VorcherInos.length) < 5)">--> <el-upload drag :http-request="uploadFileBtn" :multiple="true" :show-file-list="false" action=""> <i class="el-icon-plus avatar-uploader-icon"></i> <div class="el-upload__text">点击/拖拽上传</div> </el-upload> </div> <div class="shangchuanfujian"><button class="hollowFixedBtn" @click="upLoadFuJian">上传附件</button></div> </div> </div> <div class="_fujian_box" v-if="GetDetail.VorcherInos&&GetDetail.VorcherInos.length===0&&GetDetail.IsUploadPic===1&&saveMsg.length===0"> <div style="margin-top: 80px;"> <div class="_pic_upload" v-if="GetDetail.IsUploadPic===1"> <!--<div class="_pic_upload" v-if="saveMsg.length!==5 && ((saveMsg.length + GetDetail.VorcherInos.length) < 5)">--> <el-upload drag :http-request="uploadFileBtn" :multiple="true" :show-file-list="false" action=""> <i class="el-icon-plus avatar-uploader-icon"></i> <div class="el-upload__text">点击/拖拽上传</div> </el-upload> </div> <div class="shangchuanfujian"><button class="hollowFixedBtn" @click="upLoadFuJian">上传附件</button></div> </div> </div> </div> <p class="_splic">///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////</p> <div class="_tit _tit2 w890px"> <!-- 预付款冲抵 电商商品--> <czBillModule :FrID='ID' /> <myGuanBill :ID="FrID" :FrID='FrID' :TemplateId='GetDetail.TemplateId' v-if="(((GetDetail.TemplateId === 36 || GetDetail.TemplateId === 37) && LeadState) || GetDetail.TemplateId === 63 || GetDetail.TemplateId === 59 || GetDetail.TemplateId === 43 || GetDetail.TemplateId === 48 || GetDetail.TemplateId === 53 || GetDetail.TemplateId === 56) && showModel" /> <myJiPiaoBill :ID="FrID" :FrID='FrID' :TemplateId='GetDetail.TemplateId' v-if="GetDetail.TemplateId === 2 || GetDetail.TemplateId === 12 && showModel" /> <huijiBill :ID="ID" :disabled="true" :loopNumN="1" :FrID='FrID' :TemplateId='GetDetail.TemplateId' v-if="GetDetail.AccountantMergeDetailList && GetDetail.AccountantMergeDetailList.length>0" /> </div> <template v-if="sonTCIDList"> <div class="w890px"> <div class="_tit _tit2 w890px _border_bottom_none"> <p> <span class="_text">团队</span> <span class="_btn" v-if="tableShowTeam" @click="tableShowTeam=false">收起 <i class="iconfont icon-gengduo _rotate"></i> </span> <span class="_btn" v-else @click="tableShowTeam=true">展开 <i class="iconfont icon-gengduo"></i> </span> </p> <div v-show="tableShowTeam"> <div> <teamProductModule :ID="sonTCIDList"></teamProductModule> </div> </div> </div> </div> </template> <div class="w890px"> <SaleOrderModule v-if="OrderSource==10&&SourceID&&OrderID" :SourceID='SourceID' :OrderID='OrderID'/> <TicketFinace v-if="OrderSource==4&&SourceID&&Callback&&ID" :SourceID='SourceID' :Callback='Callback' :id='ID'/> <TicketingModule v-if="OrderSource==9&&FrID&&ID" :FrID='FrID' :id='ID'/> <ChongDiPage v-if="GetDetail.Type === 7 || isChongDi" :dataList="ChongDiList" :type="danjuType"/> </div> <div class="_tit _tit2 w890px"> <p> <span class="_text">审核流程</span> <span class="_btn" v-if="tableShow" @click="tableShow=false">收起 <i class="iconfont icon-gengduo _rotate"></i> </span> <span class="_btn" v-else @click="tableShow=true">展开 <i class="iconfont icon-gengduo"></i> </span> </p> <div v-show="tableShow"> <div class="w600px"> <my-FlowChartModule :data="AuditListData"></my-FlowChartModule> </div> </div> </div> <template v-if="tuiDataList.length>0"> <div class="w890px"> <div class="_tit _tit2 w890px _border_bottom_none"> <p> <span class="_text">原路退款</span> <span class="_btn" v-if="tableShowTuikuan" @click="tableShowTuikuan=false">收起 <i class="iconfont icon-gengduo _rotate"></i> </span> <span class="_btn" v-else @click="tableShowTuikuan=true">展开 <i class="iconfont icon-gengduo"></i> </span> </p> <div v-show="tableShowTuikuan" > <table class="singeRowTable" border="0" cellspacing="0" cellpadding="0"> <tr> <th width="250">平台单号</th> <th width="100">金额</th> <th>支付方式</th> <th>支付日期</th> <th>状态</th> <th>退款金额</th> </tr> <tr v-for="item in tuiDataList"> <td>{{item.Trade_Order}}</td> <td>{{item.Money}}</td> <td>{{item.PayWayName}}</td> <td>{{item.Pay_Date}}</td> <td>{{item.PayStatus}}</td> <td>{{item.RefundMoney}}</td> </tr> </table> <!-- <el-pagination background @current-change="handleCurrentChange" :current-page.sync="queryMsg.currentPage" :page-size="queryMsg.pageSize" layout="total,prev, pager, next, jumper" :total="queryMsg.total"></el-pagination> --> </div> </div> </div> </template> <div class="_process clearfix"> <!-- <el-popover popper-class="detailsIT_Journal" width="600" placement="right" trigger="click"> <div class="InfoChangeLog" > <div class="changLog"> <p class="_log_t">收款流程</p> <my-FlowChartModule :data="AuditListData"></my-FlowChartModule> </div> </div> <span slot="reference" class="_flow_chart">流程图</span> </el-popover> --> <div class="_process_box"> <template v-for="(item,index) in GetDetail.AuditSteps"> <div class="_pb_son" :class="{_none_after:(item.NextStep==1||item.Status==4),_bohui_after:(GetDetail.Status==3 && !IsBoHui && index===GetDetail.AuditSteps.length-1)}" v-if="item.Sort==0 || (item.Status==1 && item.NextStep==1) || (item.Status==2 && item.Sort!=0) || (item.Status==4)"> <div class="_left_radius" v-if="item.Sort==0">发起</div> <div class="_left_radius _left_radius_sus" v-if="item.NextStep==1">待审</div> <div class="_left_radius" v-if="item.Sort!=0 && item.Status==2">通过</div> <div class="_left_radius _left_radius_err" v-else-if="item.Status==4">驳回</div> <div class="_right_content" v-if="item.AuditWay==2 || item.AuditWay==3"> <p class="_name"> <span class="_n">{{item.AuditDescription}}<span class="_sm">({{item.AuditWay==2?'会签':'或签'}})</span></span> </p> <div class="_more _mgt_15" v-for="(son,sindex) in item.AuditRecordList" v-if="son.AuditStatus==2"> <div class="_right_content"> <p class="_name"> <span class="_n PingFangSC">{{son.AuditName}}</span> <span class="_sn" v-if="son.AuditStatus==2">通过</span> <span class="_time _time_n">{{son.AduitDate}}</span> </p> <template v-if="son.CareOfRemarks"> <div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)"> <p><span>由</span>{{z.BeFrom}}<span><i class="_color_green">转交</i>给</span>{{z.Target}}</p> <p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p> </div> </template> <div class="_pp_info" v-if="son.AuditStatus!=1"> <p>{{son.Remark!=''?son.Remark:'无'}}</p> <div class="_info_img" v-if="son.Image!=null&&son.AuditStatus==2" > <ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1"> <li v-for="(img,imgI) in son.Image"> <img v-if="!img" src="../../assets/img/Travelslider.png" alt=""> <img v-else :src="img" alt=""> <div class="_see_img" @click="showImg(img,2)"> <i class="iconfont icon-sousuo"></i> </div> </li> </ul> </div> </div> </div> </div> <div class="_more _mgt_15" v-for="(son,sindex) in item.AuditRecordList" v-if="son.AuditStatus!=2"> <div class="_right_content" v-if="item.AuditWay==2&&son.AuditStatus!=2"> <p class="_name"> <span class="_n PingFangSC">{{son.AuditName}}</span> <span class="_sn" v-if="son.AuditStatus==2">通过</span> <span class="_m" v-else-if="son.AuditStatus==4">驳回</span> <span class="_sm" v-else-if="son.AuditStatus==1">待审</span> <span class="_time _time_n" v-if="item.Status!=1">{{son.AduitDate}}</span> </p> <template v-if="son.CareOfRemarks"> <div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)"> <p><span>由</span>{{z.BeFrom}}<span><i class="_color_green">转交</i>给</span>{{z.Target}}</p> <p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p> </div> </template> <div class="_pp_info" v-if="item.Status!=1"> <p>{{son.Remark!=''?son.Remark:'无'}}</p> <div class="_info_img" v-if="son.Image!=null&&item.Status!=1" > <ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1"> <li v-for="(img,imgI) in son.Image"> <img v-if="!img" src="../../assets/img/Travelslider.png" alt=""> <img v-else :src="img" alt=""> <div class="_see_img" @click="showImg(img,2)"> <i class="iconfont icon-sousuo"></i> </div> </li> </ul> </div> </div> </div> <div class="_right_content" v-else-if="item.AuditWay==3 && son.AuditStatus==1"> <p class="_name"> <span class="_n PingFangSC">{{son.AuditName}}</span> <span class="_sm" v-if="item.Status==2 && item.Sort!=0">通过</span> <span class="_m" v-else-if="item.Status==4">驳回</span> <span class="_sm _left_radius_sus" v-else-if="son.AuditStatus==1">待审</span> <span class="_time _time_n" v-if="item.Status!=1">{{son.AduitDate}}</span> </p> <template v-if="son.CareOfRemarks"> <div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)"> <p><span>由</span>{{z.BeFrom}}<span><i class="_color_green">转交</i>给</span>{{z.Target}}</p> <p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p> </div> </template> <div class="_pp_info" v-if="item.Status!=1"> <p>{{son.Remark!=''?son.Remark:'无'}}</p> <div class="_info_img" v-if="son.Image!=null&&item.Status!=1" > <ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1"> <li v-for="(img,imgI) in son.Image"> <img v-if="!img" src="../../assets/img/Travelslider.png" alt=""> <img v-else :src="img" alt=""> <div class="_see_img" @click="showImg(img)"> <i class="iconfont icon-sousuo"></i> </div> </li> </ul> </div> </div> </div> <div class="_right_content" v-else-if="item.AuditWay==3 && son.AuditStatus==4"> <p class="_name"> <span class="_n PingFangSC">{{son.AuditName}}</span> <span class="_sm" v-if="item.Status==2 && item.Sort!=0">通过</span> <span class="_m" v-else-if="item.Status==4">驳回</span> <span class="_sm _left_radius_sus" v-else-if="son.AuditStatus==1">待审</span> <span class="_time _time_n" v-if="item.Status!=1">{{son.AduitDate}}</span> </p> <template v-if="son.CareOfRemarks"> <div class="_zhuan_msg" v-for="(z,zIndex) in JSON.parse(son.CareOfRemarks)"> <p><span>由</span>{{z.BeFrom}}<span><i class="_color_green">转交</i>给</span>{{z.Target}}</p> <p class="_pp_info">转交备注:{{z.Remarks?z.Remarks:'无'}}</p> </div> </template> <div class="_pp_info" v-if="item.Status!=1"> <p>{{son.Remark!=''?son.Remark:'无'}}</p> <div class="_info_img" v-if="son.Image!=null&&item.Status!=1" > <ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1"> <li v-for="(img,imgI) in son.Image"> <img v-if="!img" src="../../assets/img/Travelslider.png" alt=""> <img v-else :src="img" alt=""> <div class="_see_img" @click="showImg(img)"> <i class="iconfont icon-sousuo"></i> </div> </li> </ul> </div> </div> </div> </div> </div> <div class="_right_content" v-else> <div class="_more" v-for="(son,sindex) in item.AuditRecordList"> <p class="_name"> <span class="_n">{{son.AuditName}}<span class="_sm">{{item.AuditDescription}}</span></span> <span class="_time _time_n" v-if="item.NextStep!=1">{{son.AduitDate}}</span> </p> <div class="_right_content"> <div class="_pp_info" v-if="item.NextStep!=1"> <p>{{son.Remark==''?'无':son.Remark}}</p> <div class="_info_img" v-if="son.Image!=null" > <ul class="clearfix" v-if="son.Image.length&&son.Image.length>=1"> <li v-for="(img,imgI) in son.Image"> <img v-if="!img" src="../../assets/img/Travelslider.png" alt=""> <img v-else :src="img" alt=""> <div class="_see_img" @click="showImg(img)"> <i class="iconfont icon-sousuo"></i> </div> </li> </ul> </div> </div> </div> </div> </div> </div> </template> <div class="_pb_son _none_after" v-if="GetDetail.Status==3 && !IsBoHui"> <div class="_left_radius _left_radius_err">驳回</div> </div> <div class="_pb_son" :class="GetDetail.Status==2?'_none_after':''" v-if="GetDetail.Status==2"> <div class="_left_radius" >结束</div> <div class="_right_content"> <p class="_time">累计耗时:{{endDate}}</p> </div> </div> <div style="padding-left: 75px;"> <button class="hollowFixedBtn" v-if="(bossID===1 || bossID===5||bossID===1903) && (GetDetail.Status===2 || GetDetail.Status===5 || GetDetail.Status===1)" @click="bohui()">驳回</button> <button class="hollowFixedBtn" @click="AuditOrRefund()">返回</button> </div> </div> </div> <div v-if='picIsShow' class="_show_img_box" @click="picIsShow=false,picObj=''"> <img :src="picObj" style="margin-top: 80px;"/> </div> </div> <div class="_none_print_tips"> <p style="font-size:24px;">为了更好地打印效果,请点击页面上的“打印单据”再来进行打印,谢谢。</p> </div> <viewer :images="images" :options='imageOptions' @inited="inited" class="viewer" ref="viewer"> <img v-for="src in images" :src="src" :key="src"> </viewer> <el-dialog custom-class='w400' title="特殊驳回" :visible.sync="finacialDialog" center> <template> <el-input type="textarea" v-model="AuditOrRefundMsg.Description" rows="3" resize="none"></el-input> <div class="FD_remark_list"> <span>注:</span> <span>驳回后,单据将重新开始审批流程。备注内容将在操作日志里显示</span> </div> <div slot="footer" class="dialog-footer"> <button class="hollowFixedBtn" @click="finacialDialog=false">{{$t('pub.cancelBtn')}}</button> <button class="normalBtn" type="primary" @click="setBoHui()">{{$t('pub.sureBtn')}}</button> </div> </template> </el-dialog> <a id='groupTourOrder_DownLoad' target="_blank" style="display:none">1不要删除</a> </div> </template> <script> import myFlowChartModule from "./FinancialSubmodule/FlowChartModule.vue"; import myBill from "./FinancialSubmodule/BillModule.vue"; import myCBill from "./FinancialSubmodule/CashierBillModule.vue"; import myrbvBill from "./FinancialSubmodule/ReceivablesModule.vue"; import myhrBill from "./FinancialSubmodule/MergeBillModule.vue"; import myGZBill from "./FinancialSubmodule/GZBillModule.vue"; import teamProductModule from "../commonPage/teamProductModule.vue"; import TicketFinace from "../commonPage/TicketFinace.vue"; import SaleOrderModule from "../commonPage/SaleOrderModule.vue"; import TicketingModule from "../commonPage/TicketingModule.vue"; import ChongDiPage from "../commonPage/ChongDiPage.vue"; import myDJieBill from "./FinancialSubmodule/DjieMergeBillModule.vue"; import myGuanBill from "./FinancialSubmodule/GuanBillModule.vue"; import myJiPiaoBill from "./FinancialSubmodule/JiPiaoBillModule.vue"; import huijiBill from "./FinancialSubmodule/huijiBill.vue"; import czBillModule from "./FinancialSubmodule/czBillModule.vue"; import dmcTravelBill from './FinancialSubmodule/DmcTravelBillModule';//线路 export default { data(){ return{ TeamShouZhi:false, F_Disbursement_Schedule:false, userInfo:{}, qjGroupId:-1, OPState:false, LeadState:false, //驳回弹窗 finacialDialog:false, ZhiDanRen: -1, imageOptions:{ navbar:false, title:false }, images: [], ID:0, GetDetail:{ AuditSteps:[{ AuditRecordList:[{ AuditName:'' }] }], TCIDList:[], TCIDAndTCNUMList:[] }, AuditOrRefundMsg:{ WorkFlowId:'', Description:'' }, AuditListData:{ AuditList:[] }, imageUrl:'', uploadImgList:[], FuImgList:[], picIsShow:false, picObj:'', initialIndex:0, widthSon:"100%", colorSon:"#ffffff", endDate:'', returnCode:'', pageIndex:1, OrderSource:null, OrderID:null, TCID:null, FrID:null, Callback:null, SourceID:null, tableShow:false, tableShowTeam:false, fujianShow:true, sonTCIDList:null, bossID:null, saveMsg:[], GetFinancLogList:[], LogLoading:false, IsBoHui: false, tuiDataList:[], tableShowTuikuan:false, queryMsg:{ pageIndex:1, pageSize:10, FinanceId:'', Type:2, currentPage:1, total: 0, }, isChongDi: false, ChongDiList: [], danjuType: '', showModel: false, CostTypeState:false, huijiShow:false, } }, components:{ 'my-FlowChartModule': myFlowChartModule, 'my-Bill': myBill, 'my-C-Bill': myCBill, 'my-RVB-Bill':myrbvBill, 'my-HB-Bill':myhrBill, "my-GZ-Bill": myGZBill, 'teamProductModule':teamProductModule, 'TicketingModule':TicketingModule, 'SaleOrderModule':SaleOrderModule, 'TicketFinace':TicketFinace, 'myDJieBill': myDJieBill, 'ChongDiPage': ChongDiPage, 'myGuanBill': myGuanBill, 'myJiPiaoBill': myJiPiaoBill, 'huijiBill': huijiBill, "czBillModule":czBillModule, "dmcTravelBill":dmcTravelBill }, created(){ // // crm自动登陆传过来的参数 if(this.$route.query.crmOrderObj){ let data = JSON.parse(this.$route.query.crmOrderObj) this.ID = data.id }else{ this.ID = this.$route.query.id; } this.pageIndex = this.$route.query.pageIndex; let userinfo = this.getLocalStorage(); this.bossID = userinfo.EmployeeId; let ActionMenuCode=userinfo.ActionMenuCode; if(ActionMenuCode.indexOf('F_Update_KJCostType')!=-1){ this.huijiShow=true; } }, methods:{ // 单项服务提成 ImpressionSingleCommissionDetails(path,type){ this.$router.push({ path: path, query: { PeriodId: this.GetDetail.ReFinanceId, Type:type, blank: 'y', tab: '单项服务提现详情' } }); }, // 单项酒店订单 ImpressionSingleDetails(path){ this.$router.push({ path: path, query: { OrderId: this.GetDetail.ReFinanceId, blank: 'y' } }); }, // 印象票务制单详情 ImpressionTicketDetails(path){ this.$router.push({ path: path, query: { PeriodsId: this.GetDetail.ReFinanceId, EmpIds:this.GetDetail.RelevanceFrId, blank: 'y', tab: '期数详情' } }); }, // 点击机票订单跳转CRM自动登录 clickAirTicketOrder(){ let href let url if(this.isOnline()){ url = 'http://fcrmyx.oytour.com/#/' }else{ url = 'http://localhost:8081/#/' } let data = [ { path:'customerOrder', OrderId: this.GetDetail.ReFinanceId, } ] href = url+'automaticLogin?token='+this.getLocalStorage().token+'&data=' + JSON.stringify(data) window.open(href); }, GetAuth() { var actionCode = this.$AuthCode.TeamShouZhi; this.CheckUserAuth(actionCode, res => { if (res.data.resultCode == 1 && res.data.data == 1) { this.TeamShouZhi = true; } }); var actionCodeNew = this.$AuthCode.F_Disbursement_Schedule; this.CheckUserAuth(actionCodeNew, res => { if (res.data.resultCode == 1 && res.data.data == 1) { this.F_Disbursement_Schedule = true; } }); }, goHand(type,GetDetail){ if(type==1){ this.$router.push({ name: 'TeamBalancePayment', query: { id:GetDetail.TCID, IsHaveAuth:true, blank: "y", tab: "团队收支明细" } }); } else{ this.$router.push({ name: 'FinancialDocumentsDetail', query: { id:GetDetail.ReFinanceId, blank: "y", tab: "单据详情" } }); } }, //跳转至电商订单详情 goOrderDetails(id){ this.$router.push({ name: 'EleBillDetail', query: { BillId:id, blank: "y", tab: "账单详情" } }); }, GourlHotelZr(){ this.$router.push({ name: 'HotelDiscount', query: { FinanceId:this.ID, blank: "y", tab: "酒店折让" } }); }, GourlCostType(path,num){ this.$router.push({ name: path, query: { blank: "y", EmployeeId:this.GetDetail.CreateBy, } }); }, GoOPurl(GetDetail){ this.$router.push({ name: 'OPsalesCommissiondetails', query: { PeriodId: GetDetail.ReFinanceId, OutBranchId: stringify(GetDetail.RB_Branch_Id), blank: "y", tab: "op提成明细" } }); }, Gourl(GetDetail){ if(GetDetail.OtherType==43){//9月9号新增 如果是43 就跳转到国内的详情 反之按之前的来用 this.$router.push({ name: 'domesticCommissiondetails', query: { PeriodId:GetDetail.ReFinanceId, blank: "y", tab: "国内销售提成详情" } }); }else if(GetDetail.OtherType==69){//跳转台湾提成的三级详情 this.$router.push({ name: 'domesticCommissiondetailsTW', query: { PeriodId:GetDetail.ReFinanceId, OutBranchId: GetDetail.RB_Branch_Id, blank: "y", tab: "台湾销售提成详情" } }); }else if(GetDetail.OtherType==70){//跳转台湾提成的三级详情 let urlName if(GetDetail.ReFinanceId2==1){ urlName = 'domesticCommissiondetailsTW' } if(GetDetail.ReFinanceId2==2){ urlName = 'domesticCommissionUserTW' } this.$router.push({ name: urlName, query: { PeriodId:GetDetail.ReFinanceId, OutBranchId: GetDetail.RB_Branch_Id, blank: "y", tab: "台湾销售提成详情" } }); }else{ this.$router.push({ name: 'CommissionDetail', query: { periods:GetDetail.Periods, companyID:GetDetail.RB_Branch_Id, blank: "y", tab: "提成详情" } }); } }, // 获取冲抵列表 getChongDiList(data){ this.danjuType = data.Type let cmd = 'Financial_post_GetHangingAccountList' if (data.Type === 7){ cmd = 'Financial_post_GetHangingMatchFinanceList' } this.apipost(cmd,{FrID: data.FrID}, res => { if(res.data.resultCode == 1) { let data = res.data.data; this.ChongDiList = data; } }, err => {}) }, chongJudge(data){ // 收支冲抵显示 let p1 = false; data.DetailList.map(item=>{ if (item.CostTypeName === '挂账单冲抵') { p1 = true } }) if (p1 || data.Type === 7) { this.isChongDi = true; this.getChongDiList(data) } }, goUrl(path, id) { this.$router.push({ name: path, query: { id: id, blank: "y" } }); }, goComplain(path, id,OrderId){ this.$router.push({ name: path, query: { id: id, orderId:OrderId, blank: "y" } }); }, goInves(path,TCID){ this.$router.push({ name: path, query: { TCID:TCID, blank:'y' } }); }, goGuideAccount(path,ClientID){ if(ClientID==0){ this.Error('临时导游,无往来'); return; } this.$router.push({ name: path, query: { ClientID:ClientID, blank:'y' } }); }, inited (viewer){ this.$viewer = viewer }, Financial_post_GetFinancLogList(){ // 获取单据日志 if(this.checkboxShow) return this.LogLoading = true; this.apipost('Financial_post_GetFinancLogList',{ID:this.ID,Type:2}, res => { if(res.data.resultCode == 1) { let data = res.data.data; data.forEach(x=>{ x.UpdateDate = this.$commonUtils.formatMsgTime(x.UpdateDate) }) this.LogLoading = false; this.GetFinancLogList = data; } }, err => {}) }, upLoadFuJian: function() { if (this.saveMsg.length===0) return this.$message.error('请上传文件!'); let msg = { FrID: this.ID, vorcherInos: this.saveMsg }; this.apipost('Financial_post_SetVoucher', msg, res=>{ if (res.data.resultCode===1) { this.Financial_post_GetDetail(this.ID) } else { this.$message.error(res.data.message); } }, null) }, bohui(){ this.finacialDialog = true; this.AuditOrRefundMsg.WorkFlowId = this.ID; }, //确定驳回 setBoHui(){ this.apipost('Financial_post_PersonRefund',this.AuditOrRefundMsg,res=>{ if(res.data.resultCode==1){ this.Success(res.data.message); this.finacialDialog = false; this.Financial_post_GetDetail(this.ID) }else{ this.Error(res.data.message); } },err=>{}) }, goPrintPageNew(type,id,Merge,OrderSource){ if(type===1){ let routeData = this.$router.resolve({ name: 'PrintPageN', query: { type: type,id:id,isKehu:0,Merge:Merge,OrderSource:OrderSource?OrderSource:-1} }); window.open(routeData.href, "_blank"); }else{ let routeData = this.$router.resolve({ name: 'PrintPageN', query: { type: type,id:id,Merge:Merge,OrderSource:OrderSource?OrderSource:-1} }); window.open(routeData.href, "_blank"); } }, goPrintPage2(type,id,Merge,OrderSource){ if(type===1){ let routeData = this.$router.resolve({ name: 'PrintPageH', query: { huiji:true,type: type,id:id,isKehu:0,Merge:Merge,OrderSource:OrderSource?OrderSource:-1} }); window.open(routeData.href, "_blank"); }else{ let routeData = this.$router.resolve({ name: 'PrintPageH', query: { huiji:true,type: type,id:id,Merge:Merge,OrderSource:OrderSource?OrderSource:-1} }); window.open(routeData.href, "_blank"); } }, goPrintPage(type,id,Merge,OrderSource){ if(type===1){ // this.$confirm('是否打印客户联?', '提示', { // confirmButtonText: '确定', // cancelButtonText: '取消', // type: 'warning' // }).then(() => { // let routeData = this.$router.resolve({ // name: 'PrintPage', // query: { type: type,id:id,isKehu:1} // }); // window.open(routeData.href, "_blank"); // }).catch(() => { // let routeData = this.$router.resolve({ // name: 'PrintPage', // query: { type: type,id:id,isKehu:0} // }); // window.open(routeData.href, "_blank"); // }); let routeData = this.$router.resolve({ name: 'PrintPage', query: { type: type,id:id,isKehu:0,Merge:Merge,OrderSource:OrderSource?OrderSource:-1} }); window.open(routeData.href, "_blank"); }else{ let routeData = this.$router.resolve({ name: 'PrintPage', query: { type: type,id:id,Merge:Merge,OrderSource:OrderSource?OrderSource:-1} }); window.open(routeData.href, "_blank"); } }, jumpCheZiPage(path, id){ this.apipost('bus_post_GetCarfareTravelInfo', {TCID: id}, res=>{ if(res.data.resultCode==1){ this.$router.push({ name: path, query: { num: res.data.data, blank: 'y'} }) } }, null) }, jumpPlanPage(path, id){ this.apipost('dmcstatistics_post_GetTCIDsByOneTCID', {TCID: id}, res=>{ if(res.data.resultCode==1){ this.$router.push({ name: path, query: { id: res.data.data.TCIDs, isUpdate: false, blank: 'y'} }) } }, null) }, jumpPage(path,id,type,OrderID){ if(type==1){ // let routeData = this.$router.resolve({ // name: path, // query: { TCIDList: id} // }); // window.open(routeData.href, "_blank"); this.$router.push({ name: path, query: { tcmun: id,blank:'y'} }) }else if(type==2){ // let routeData = this.$router.resolve({ // name: path, // query: { OrderSource: id.OrderSource,SourceID: id.SourceID} // }); // window.open(routeData.href, "_blank"); this.$router.push({ name: path, query: { OrderSource: id.OrderSource,SourceID: id.SourceID,blank:'y'} }) }else if(type==3){ // let routeData = this.$router.resolve({ // name: path, // query: { OrderSource: id.OrderSource,SourceID: id.SourceID} // }); // window.open(routeData.href, "_blank"); this.$router.push({ name: path, query: { OrderSource: id.OrderSource,SourceID: id.SourceID,blank:'y'} }) }else if(type==4){ // let routeData = this.$router.resolve({ // name: path, // query: { OrderSource: id.OrderSource,SourceID: id.SourceID} // }); // window.open(routeData.href, "_blank"); this.$router.push({ name: path, query: { OrderSource: id.OrderSource,SourceID: id.SourceID,blank:'y'} }) }else if(type==5){ // let routeData = this.$router.resolve({ // name: path, // query: { id:id,OutBranchId:id.RB_Branch_Id} // }); // window.open(routeData.href, "_blank"); this.$router.push({ name: path, query: { id:id,OutBranchId:id.RB_Branch_Id,blank:'y'} }) }else if(type==6){ // let routeData = this.$router.resolve({ // name: path, // query: { id:id,OutBranchId:id.RB_Branch_Id,'CloseIncomeBtn':true} // }); // window.open(routeData.href, "_blank"); this.$router.push({ name: path, query: { id:id,OutBranchId:id.RB_Branch_Id,'CloseIncomeBtn':true,blank:'y'} }) }else if(type==7){ // let routeData = this.$router.resolve({ // name: path, // query: { id:id,isShow:false} // }); // window.open(routeData.href, "_blank"); this.$router.push({ name: path, query: { id:id,isShow:false,blank:'y'} }) }else if(type==8){ // let routeData = this.$router.resolve({ // name: path, // query: {VisaID:id.SourceID,isFinacial:0} // }); // window.open(routeData.href, "_blank"); if(OrderID){ this.$router.push({ name: path, query: { id:id.SourceID,isFinacial:0,blank:'y',OrderId:OrderID} }) }else{ this.$router.push({ name: path, query: { id:id.SourceID,isFinacial:0,blank:'y',} }) } } }, //跳转至手配详情 jumpHotelContract(path,item){ this.$router.push({ name: path, query: { id:item.TCID,TCNUM:item.TCNUM,blank:'y'} }) }, uploadFileBtn(file) { //上传 if(file.file.size > 1024 * 1024 * 10) { this.$message.warning('文件大小不能超过10M!') return } // 1 文档 2 数据 3 图片 let typeArr=[ {stringArr:'GIF|JPG|JPEG|PNG|BMP',type:3}, {stringArr:'DOCX|DOC|XLSX|XLS|PPT|PPTX|PDF',type:1}, ] let ft=file.file.name.substring(file.file.name.lastIndexOf('.')+1,file.file.name.length).toUpperCase(); let fileTypeNumber = 2; let typeOk = false; typeArr.forEach(x=>{ if(x.stringArr.indexOf(ft)!='-1') { fileTypeNumber=x.type; typeOk = true; } }); if (!typeOk) return this.$message.error('请上传图片、word、excel类型的文件!'); 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); this.saveMsg.push({ Type:fileTypeNumber, Content: x.data.FilePath, Url: this.domainManager().ViittoFileUrl + x.data.FilePath, }); this.$message.success('上传成功'); }); }, deleteUploadFile(i){ // 删除上传文件 this.saveMsg.splice(i,1); }, showUpLoadFileT(i){ // 预览上传文件 if(i.Type==3){ this.picObj.push(i.Url); this.imgList.push(i.Url); this.picIsShow= true; // this.hideFlashMan = true; }else{ if(i.Content.substring(i.Content.lastIndexOf('.')+1,i.Content.length).toUpperCase()=='PDF'){ this.previewPDF(i.Url) }else{ let dom = document.querySelector("#groupTourOrder_DownLoad"); dom.href = i.Url; dom.click(); // window.open("https://view.officeapps.live.com/op/view.aspx?src="+i.Url) } } }, showUpLoadFile(i){ // 预览上传文件 if(i.Content.substring(i.Content.lastIndexOf('.')+1,i.Content.length).toUpperCase()=='PDF'){ this.previewPDF(i.Content) }else{ let dom = document.querySelector("#groupTourOrder_DownLoad"); dom.href = i.Content; dom.click(); // window.open("https://view.officeapps.live.com/op/view.aspx?src="+i.Content) } }, FinancialFlowTemplate_post_GetProcessList(id,tid){ this.apipost('FinancialFlowTemplate_post_GetProcessList',{ID:0,WorkFlowID:id,TemplateType:tid},res=>{ if(res.data.resultCode==1){ res.data.data.forEach(y=>{ y.contentTips = y.AuditDescription+(y.AuditWay=='2'?'(会签)':'(或签)') }) this.AuditListData.AuditList = res.data.data; }else{} },err=>{}) }, AuditOrRefund(){ this.MsgBus.$emit('msg'); // this.$router.push({name:'FinancialDocuments',query:{"returnCode":this.returnCode,"pageIndex":this.pageIndex,blank:'y'}}); }, deleteImg(i){ // 删除 this.uploadImgList.splice(i,1) }, handleAvatarSuccess(res, file) { //上传 if(res.resultCode==1){ var img_path = res.data.FullFilePath this.imageUrl = img_path let obj = { src:img_path } this.uploadImgList.push(obj) } }, showImg(obj, type){ let isExsit=false this.images.forEach(x=>{ if(x==obj) isExsit=true }) if(!isExsit) { this.images.push(obj) } else { this.$viewer.view(this.images.indexOf(obj)) } this.$viewer.show() // this.picObj= obj; // this.picIsShow= true; }, Financial_post_GetDetail(id,t){ //获取单据详情 this.FuImgList = []; this.saveMsg = []; this.apipost('Financial_post_GetDetail',{ID:id,Type:1}, res => { if(res.data.resultCode == 1) { let data= res.data.data; data.DetailList.forEach(x=>{ x.UnitPrice = this.$commonUtils.addCommas(Math.round(x.UnitPrice * 100) / 100) x.Money = Math.round(x.Money * 100) / 100 x.OriginalMoney = Math.round(x.OriginalMoney * 100) / 100 }) data.ChineseMoney = this.$commonUtils.changeMoneyToChinese(data.Money) data.Money = this.$commonUtils.addCommas( Math.round(data.Money * 100) / 100) if(data.Status==2){ let len = data.AuditSteps.length - 1; let sLen = data.AuditSteps[len].AuditRecordList[data.AuditSteps[len].AuditRecordList.length-1]; let begTime = data.AuditSteps[0].AuditRecordList[0].AduitDate; let enTime = sLen && sLen.AduitDate ? sLen.AduitDate : begTime; let newTime = this.$commonUtils.formatMsgTime2(begTime,enTime); this.endDate = newTime.replace("前",""); } this.FinancialFlowTemplate_post_GetProcessList(data.FrID,data.TemplateType) if(data.VorcherInos.length>0){ data.VorcherInos.forEach(x=>{ if(x.Type==3){ let Content = x.Content.replace('http:','http:'); this.FuImgList.push(Content); this.images.push(Content) } }) } this.chongJudge(data) this.GetDetail = data; if(this.GetDetail.DetailList){ this.GetDetail.DetailList.forEach(item=>{ if(item.CostTypeName=="领队导游资金池领款"){ this.LeadState=true; } }) } this.showModel = true // 截取掉驳回后面的审核步骤 this.ZhiDanRen = this.GetDetail.CreatBy; let list = []; for ( let i = 0; i < this.GetDetail.AuditSteps.length ; i++ ){ list.push(this.GetDetail.AuditSteps[i]); if(this.GetDetail.AuditSteps[i].Status==4){ this.IsBoHui = true; break; } } this.GetDetail.AuditSteps = list; this.OrderID = this.GetDetail.OrderID; this.OrderSource = this.GetDetail.OrderSource; this.TCID = this.GetDetail.TCID; this.FrID = this.GetDetail.FrID; this.SourceID = this.GetDetail.SourceID; this.Callback = this.GetDetail.Callback; if(this.GetDetail.DetailList.length>0){ this.GetDetail.DetailList.forEach(item=>{ if(item.CostTypeName=="差旅费"){ this.CostTypeState=true; } if(item.CostTypeName=="业务提成(操作)"){ this.OPState=true; } }) } // 拼接团号显示团信息 let str = ''; if(data.TCIDList.length>0){ data.TCIDList.forEach(x=>{ str = str + x + ','; }) } str = str.slice(0,str.length-1); this.sonTCIDList = str==''?null:str; if(data.URL){ // if(this.OrderSource==9){ // 国内票务订单 // if(this.GetDetail.Type==2){ // this.$router.push({name:data.URL,query:{'FrID':this.FrID,id:this.ID}}); // } // }else if(this.OrderSource==10){ //销售订单 // this.$router.push({name:data.URL,query:{'orderID':this.OrderID,'SourceID':this.SourceID}}); // }else if(this.OrderSource==4){ //机票订单 // this.$router.push({name:data.URL,query:{'SourceID':this.SourceID,'Callback':this.Callback,id:this.ID}}); // } } // if(data.URL){ // this.$router.push({name:}) // } } }, err => {}) }, pushPage(){ Vue.component(this.name+this.z,this.componentTemp) this.c=this.name+this.z }, //获取列表 getTuikuan(){ this.apipost('OnlinePay_get_GetOrderPayMoneyInfo',this.queryMsg,res=>{ if(res.data.resultCode==1){ this.tuiDataList = res.data.data.pageData; this.queryMsg.total = res.data.data.count; }else{ } },err=>{}) }, goassets(ID,OtherType){ this.$router.replace({ name: "InAndOutDdetails", query: { ID: ID, OtherType: OtherType, blank:'y' }, }) }, lookbreakage(ID){ this.$router.replace({ name: "breakageSingle", query: { ID: ID, blank:'y' }, }) } },mounted(){ // document.onkeydown = this.KeyDown // document.onkeyup = this.KeyUp // document.oncontextmenu = function(){return false;} this.GetAuth(); this.userInfo = this.getLocalStorage(); this.qjGroupId=this.QjGroupId(); this.Financial_post_GetDetail(this.ID) this.queryMsg.FinanceId = this.$route.query.id; if(this.$route.query.Conditon){ this.returnCode = this.$route.query.Conditon; } this.getTuikuan(); } } </script>