<template> <div class="groupApproval"> <div class="query-box"> <ul> <li> <em>{{$t('scen.sc_cp')}}</em> <el-select filterable v-model='msg.OutBranchId' size="small" @change='getControlList()' clearable> <el-option v-for="item in companyList" :label='item.BName' :value='item.Id' :key='item.Id'></el-option> </el-select> </li> <li> <span> <em>{{$t('objFill.tuanduilx')}}</em> <el-select class="w200" v-model="msg.TeamType" filterable :placeholder="$t('pub.pleaseImport')" size="small" @change="getControlList()"> <el-option v-for="item in groupType" :label="item.Name" :value="item.Id" :key="item.Id"></el-option> </el-select> </span> </li> <li> <span> <em>{{$t('fnc.shzhuangtai')}}</em> <el-select class="w200" v-model="msg.BranchAuditState" filterable :placeholder="$t('pub.pleaseImport')" size="small" @change="getControlList()"> <el-option v-for="item in BranchAuditStateType" :label="item.Name" :value="item.Id" :key="item.Id"> </el-option> </el-select> </span> </li> <li> <span> <em>{{$t('visa.v_tuanhao')}}</em> <el-input maxlength="50" v-model="msg.TCNUM" class="permiss-input w200" size="small" @keyup.enter="getControlList" :placeholder="$t('pub.pleaseImport')" clearable @clear="getControlList"> </el-input> </span> </li> <li> <span> <em>{{$t('objFill.v101.dmc.chutrq')}}</em> <el-date-picker style="width: 300px;" v-model="StartTime" format='yyyy-MM-dd' value-format="yyyy-MM-dd" size="small" type="daterange" :range-separator="$t('OrderList.zhi')" :start-placeholder="$t('OrderList.star')" :end-placeholder="$t('OrderList.end')" @change="getStartTime" clearable> </el-date-picker> </span> </li> <li> <button class="hollowFixedBtn" type="button" @click="getControlList">{{$t('pub.searchBtn')}}</button> </li> </ul> </div> <el-table v-loading="loading" ref="multipleTable" :data="dataList" tooltip-effect="dark" style="width: 100%" @selection-change="handleSelectionChange"> <el-table-column :label="$t('scen.sc_temID')" width="200"> <template slot-scope="scope"> <p>{{scope.row.OutBranchName}}</p> <span style="cursor: pointer;text-decoration: underline;" @click="goTravel(scope.row)">{{scope.row.TCNUM}}({{scope.row.TCID}})</span> </template> </el-table-column> <el-table-column prop="StartDate" :label="$t('hotel.hotel_StarDate')" width="120" show-overflow-tooltip> </el-table-column> <el-table-column prop="LtName" :label="$t('advmanager.v_xilie')" width="200" show-overflow-tooltip> <template slot-scope="scope"> {{scope.row.LineName}}<br /> {{scope.row.LtName}} </template> </el-table-column> <el-table-column prop="Title" :label="$t('Operation.Op_TeamName')" width="200" show-overflow-tooltip> </el-table-column> <el-table-column prop="" :label="$t('visaT.Applicant')+'/'+$t('objFill.shengqirq')" width="200"> <template slot-scope="scope"> <p> {{scope.row.BranchApplyName}}</p> <p> {{scope.row.BranchApplyTime}}</p> </template> </el-table-column> <el-table-column prop="OPName" :label="$t('objFill.v101.dmc.shengqyy')" show-overflow-tooltip> <template slot-scope="scope"> {{scope.row.BranchApplyResion}} </template> </el-table-column> <el-table-column prop="PriceTeamTypeName" :label="$t('objFill.v101.commissonBill.col.t3')" width="130"> <template slot-scope="scope"> <template v-if="scope.row.TeamTypeName">{{scope.row.TeamTypeName}}</template> </template> </el-table-column> <el-table-column prop="OldBranchName" :label="$t('objFill.v101.dmc.yuanchutgs')" width="130"></el-table-column> <el-table-column prop="NewBranchName" :label="$t('objFill.v101.dmc.xinchutgs')" width="130"></el-table-column> <el-table-column prop="" :label="$t('fnc.shzhuangtai')" width="100"> <template slot-scope="scope"> <span :style="{'color':scope.row.BranchAuditState==3?'red':scope.row.BranchAuditState==2?'#33B3FF':'blue'}"> {{scope.row.BranchAuditStateStr}} </span> </template> </el-table-column> <el-table-column prop="" :label="$t('system.table_operation')" width="150"> <template slot-scope="scope"> <div class="_icon_btn"> <el-tooltip class="item" effect="dark" :content="$t('fnc.shenhe')" placement="top" v-if="scope.row.BranchAuditState==1"> <i v-loading="loading" class="iconfont icon-ico_commodity_defaul" @click="shenhei(scope.row)"></i> </el-tooltip> <el-tooltip class="item" effect="dark" :content="$t('fnc.bohui')" placement="top" v-if="scope.row.BranchAuditState==1"> <i class="iconfont icon-shenhebohui" @click="bohui(scope.row)"></i> </el-tooltip> </div> </template> </el-table-column> </el-table> <div style="width: 100%;"> <el-pagination background @current-change="handleCurrentChange" :current-page.sync="msg.pageIndex" layout="total,prev, pager, next, jumper" :page-size="msg.pageSize" :total="total"> </el-pagination> </div> <el-dialog custom-class="w600" :title="$t('objFill.bohuiyy')" :visible.sync="cancelOrderDialog"> <div style="padding-bottom:20px"> <el-input type="textarea" autofocus rows="5" :placeholder="$t('objFill.v101.dmc.qingtxbtyy')" clear="w300" v-model="cancelRemark"> </el-input> <el-row :gutter="20" style="margin-top: 20px;"> <el-col :span="24" style="text-align: right;"> <el-button class="normalBtn" value="" @click="cancelOrderHandler" :loading="loading"> {{$t('objFill.v101.dmc.quedinbh')}}</el-button> <el-button class="hollowFixedBtn" @click="cancelOrderDialog = false,cancelRemark=''">{{$t('pub.closeSel')}} </el-button> </el-col> </el-row> </div> </el-dialog> </div> </template> <script> export default { components: { }, data() { return { StartTime: [], groupType: [{ Name: this.$t('advmanager.v_all'), Id: -1 }, { Name: this.$t('objFill.xiaobaot'), Id: 1 }, { Name: this.$t('MarketingActi.local'), Id: 2 }, { Name: this.$t('objFill.changguit'), Id: 0 } ], BranchAuditStateType: [{ Name: this.$t('advmanager.v_all'), Id: -1 }, { Name: this.$t('objFill.dsh'), Id: 1 }, { Name: this.$t('visa.v_tongguo'), Id: 2 }, { Name: this.$t('fnc.bohui'), Id: 3 } ], companyList: [], cancelRemark: '', dataRow: null, cancelOrderDialog: false, loading: false, dataList: [], msg: { pageIndex: 1, pageSize: 10, TCNUM: '', //团号 TeamType: -1, //团队类型 0-常规,1-小包团,2-当地游 OutBranchId: "", QStartDate: '', QEndDate: '', BranchAuditState: 1, //默认待审核 }, total: 0, multipleSelection: [], getCompanyMsg: { RB_Group_Id: 2, Status: '0', }, } }, created() { var myDate = new Date(); var MonthDayNum = new Date(myDate.getFullYear(), myDate.getMonth(), 0).getDate(); var firstDay = `${myDate.getFullYear()}-${myDate.getMonth() + 1}-01` var lastDay = `${myDate.getFullYear()}-${myDate.getMonth() + 1}-${MonthDayNum}` // this.StartTime = [firstDay, lastDay] // this.msg.QStartDate = firstDay; // this.msg.QEndDate = lastDay; this.getCompany() }, mounted() { this.getList() }, methods: { getStartTime() { if (this.StartTime.length == 2) { this.msg.QStartDate = this.StartTime[0] this.msg.QEndDate = this.StartTime[1] } else { this.msg.QStartDate = '' this.msg.QEndDate = '' } this.getControlList() }, getCompany() { this.apipost('admin_get_BranchGetList', this.getCompanyMsg, res => { if (res.data.resultCode == 1) { this.companyList = res.data.data; } }) }, handleSelectionChange(val) { this.multipleSelection = val; }, getControlList() { this.msg.pageIndex = 1; this.getList() }, handleSizeChange(e) { this.msg.pageSize = e; this.getList() }, handleCurrentChange(e) { this.msg.pageIndex = e; this.getList() }, getList() { this.loading = true; if (this.StartTime) { this.msg.QStartDate = this.StartTime[0]; this.msg.QEndDate = this.StartTime[1]; } else { this.msg.QStartDate = ""; this.msg.QEndDate = ""; } let msg = JSON.parse(JSON.stringify(this.msg)) this.apipost( "travel_post_GetTravelOutBranchAuditPage", msg, res => { this.loading = false if (res.data.resultCode == 1) { this.dataList = res.data.data.pageData; this.total = res.data.data.count; } else { this.Error(res.data.message); } } ); }, shenhei(item) { let that = this; that.$confirm(this.$t('objFill.v101.dmc.shifshtggt'), this.$t('tips.tips'), { confirmButtonText: this.$t('pub.sureBtn'), cancelButtonText: this.$t('pub.cancelBtn'), type: 'warning' }).then(() => { this.groupAudit(2, item.TCID) }).catch(() => { }); }, cancelOrderHandler() { if (!this.cancelRemark) return this.Error(this.$t('objFill.v101.dmc.qingsrbhyy')) let that = this; that.$confirm(this.$t('objFill.v101.dmc.shifoubhgt'), this.$t('tips.tips'), { confirmButtonText: this.$t('pub.sureBtn'), cancelButtonText: this.$t('pub.cancelBtn'), type: 'warning' }).then(() => { //掉接口 this.groupAudit(3, this.dataRow.TCID) }).catch(() => { }); }, bohui(item) { this.dataRow = item this.cancelOrderDialog = true return }, groupAudit(type, TCID, name, length) { let msg = { TCID: TCID, BranchAuditState: type, BranchAuditRemark: this.cancelRemark } this.loading = true this.apipost("travel_post_AuditPriceOutBranchTeamType", { TCID: TCID, BranchAuditState: type, BranchAuditRemark: this.cancelRemark }, res => { if (res.data.resultCode == 1) { if (!name) { this.cancelOrderDialog = false this.Success(res.data.message); this.getList() } else { if (length) { this.cancelOrderDialog = false this.Success(res.data.message); this.getList() } } } else { this.Error(res.data.message); } this.loading = false }); }, goTravel(item) { //跳转到团队列表 var newPath = "TravelControlList"; var query = { TCID: item.TCID, blank: 'y', tab: '团控列表' }; if (item.TeamType == 1) { newPath = "TravelControlListSale"; query = { TCID: item.TCID, blank: 'y', tab: '团控列表' }; } if (item.TeamType == 2) { newPath = "oneDayTrip"; query = { id: item.TCID, blank: 'y', tab: '团控列表' }; } this.$router.push({ path: newPath, query: query }); } } } </script> <style scoped> .groupApproval .singeRowTable { margin-top: 20px; } ._nav { margin: 20px 0 0 0; background-color: #f5f5f5; } ._nav li { float: left; font-size: 14px; color: #666666; padding: 15px 20px; cursor: pointer; position: relative; background-color: #f1f1f1; margin-right: 5px } ._nav li._active { background-color: #FFFFFF; color: #333333 } ._nav li._active::after { content: ""; width: 20px; height: 3px; background-color: #E95252; display: inline-block; position: absolute; bottom: 0; left: 38%; } ._icon_btn i { width: 30px; height: 30px; display: inline-block; color: white !important; border-radius: 50%; text-align: center; line-height: 30px; margin-right: 10px; cursor: pointer; outline: none; } ._icon_btn i.icon-ico_commodity_defaul { background-color: #F16C3C; } ._icon_btn i.icon-ico_commodity_defaul:hover { background-color: #e87c54 } ._icon_btn i.icon-ico_commodity_defaul:active { background-color: #f76630 } ._icon_btn i.icon-shenhebohui { background-color: #E95252 } ._icon_btn i.icon-mingxi { background-color: rgb(71, 191, 140) } </style>