liuhj 1 éve%!(EXTRA string=óta)
szülő
commit
df6fede270

+ 55 - 0
src/components/Finance/Currency.vue

@@ -382,6 +382,61 @@ export default {
         console.log(hotelCurrencyArrer)
         var url = "/api/Financial/PostGroupRateUpdate"
         var that = this
+        var data= {
+                portType: 1,
+                pageIndex: 0,
+                pageSize: 0,
+                createUserId:that.userid,
+                diId:that.state1,
+                teamRateUpdateInfos:[
+                    {
+                        id:3750,
+                        cTable:76,
+                        teamRates:hotelCurrencyArrer
+                    },
+                    {
+                        id:3751,
+                        cTable:77,
+                        teamRates:itineraryCurrencyArrer
+                    },
+                    {
+                        id:3752,
+                        cTable:79,
+                        teamRates:guideCurrencyArrer
+                    },
+                    {
+                        id:3753,
+                        cTable:80,
+                        teamRates:visaCurrencyArrer
+                    },
+                    {
+                        id:3754,
+                        cTable:81,
+                        teamRates:inviteCurrencyArrer
+                    },
+                    {
+                        id:3755,
+                        cTable:82,
+                        teamRates:insuranceCurrencyArrer
+                    },
+                    {
+                        id:3756,
+                        cTable:85,
+                        teamRates:ticketCurrencyArrer
+                    },
+                    {
+                        id:3757,
+                        cTable:98,
+                        teamRates:paymentsCurrencyArrer
+                    },
+                    {
+                        id:3758,
+                        cTable:751,
+                        teamRates:breakfastCurrencyArrer
+                    },
+                ]
+            }
+            console.log(JSON.stringify(data))
         this.$axios({
             method: 'post',
             url: url,

+ 2 - 2
src/components/Finance/DailyFeePayment.vue

@@ -128,7 +128,7 @@
                             <el-button
                             title="生成"
                             size="mini"
-                            @click="handleGenerate(scope.$index, scope.row)"><i class="el-icon-share"></i></el-button>
+                            @click="handleGenerate(scope.$index, scope.row)"><i class="el-icon-download"></i></el-button>
                             <el-button
                             title="详情"
                             size="mini"
@@ -432,7 +432,7 @@ export default {
             }).catch(() => {
                 this.$message({
                     type: 'info',
-                    message: '已取消删除'
+                    message: '已取消生成'
                 });          
             });
         }

+ 1 - 0
src/components/Finance/DailyFeeedit.vue

@@ -403,6 +403,7 @@ export default {
         padding: 10px;
         box-shadow: 0 0 5px #0005;
         border-radius: 10px;
+        min-height: 800px;
     }
     .dailyedit-title{
         font-size: 17px;

+ 16 - 2
src/components/Finance/Sendack.vue

@@ -68,6 +68,16 @@
                         label="操作时间"
                         width="160">
                     </el-table-column>
+                    <el-table-column
+                        prop="createUserName"
+                        label="审核人"
+                        width="80">
+                    </el-table-column>
+                    <el-table-column
+                        prop="createTime"
+                        label="审核时间"
+                        width="160">
+                    </el-table-column>
                     <el-table-column
                         prop="remark"
                         label="备注"
@@ -76,12 +86,12 @@
                     <el-table-column label="操作" width="110">
                         <template slot-scope="scope">
                           <el-button
-                            v-if="scope.row.isAuditGM!=1"
+                            :disabled="scope.row.isAuditGM==1"
                             type="text"
                             size="mini"
                             @click="Complete(scope.$index, scope.row)">编辑</el-button>
                             <el-button
-                            v-if="scope.row.isAuditGM!=1"
+                            :disabled="scope.row.isAuditGM==1"
                             type="text"
                             size="mini"
                             @click="Delete(scope.$index, scope.row)"
@@ -678,5 +688,9 @@ export default {
 .el-dialog__body .sendack-info{
     margin-left: 25px;
     margin-bottom: 20px;
+    flex-wrap: wrap;
+}
+.el-dialog__body .sendack-info-li{
+    margin-bottom: 10px;
 }
 </style>

+ 36 - 1
src/components/OP/EntryDetails.vue

@@ -4,7 +4,7 @@
             <div class="Entry-head">
                 <div class="Entry-head-li">
                     <label>团组名称:</label>
-                    <el-select @change="chengvalue()" v-model="value" filterable placeholder="请选择">
+                    <el-select style="width:250px" @change="chengvalue()" v-model="value" filterable placeholder="请选择">
                         <el-option
                             v-for="item in options"
                             :key="item.id"
@@ -632,6 +632,41 @@ export default {
             })
         },
         GetEnterExitCostInfobyDiId(){
+            //初始化数据
+            this.currencys=[]
+            this.DomesticFees={
+                visafees:'',//签证费
+                visafeesDescription:'',//签证费用描述
+                vaccinefees:0,//疫苗费
+                nucleicfees:0,//核酸检测费
+                serviceCharge:0,//服务费
+                insurance:0,//保险费
+                ticketsExhibitionL:0,//参展门票
+                total:0
+            }
+            this.TotalExpenses={
+                EconomyClass:0,//经济舱
+                BusinessClass:0,//公务舱
+                TravellingExpenses:0,//城市区间交通费
+                EconomyClasstotal:0,//经济舱合计
+                BusinessClasstotal:0,//公务舱合计
+            }
+            this.choiceOne=false//境内费用(其他费用)选择框
+            this.choiceTwo=false//国际旅费合计选择框
+            this.choiceThree=false//住宿费合计选择框
+            this.choiceFour=false//伙食费合计选择框
+            this.choiceFive=false//公杂费合计选择框
+            this.choiceSix=false//培训费用选择框
+            this.sumJJC=false//经济舱小计选择框
+            this.sumGWC=false//公务舱小计选择框
+            this.airJJC_Checked=false//经济舱选择框
+            this.airGWC_Checked=false//公务舱选择框
+
+            this.quarterageData= []
+            this.boardWagesData=[]
+            this.miscellaneousFeeData=[]
+            this.trainingExpenseData=[]
+
             var url = "/api/Groups/GetEnterExitCostInfobyDiId"
             var that = this
             console.log(that.value)

+ 208 - 87
src/components/OP/HotelReservations.vue

@@ -22,11 +22,11 @@
                     </div>
                     <div class="hotelr-info-li">
                         <label>出访国家:</label>
-                        <span>{{ delegationInfo.visitCountry }}</span>
+                        <span>{{ delegationInfo.visitCountry|filter_city }}</span>
                     </div>
                     <div class="hotelr-info-li">
                         <label>起止日期:</label>
-                        <span>{{ delegationInfo.visitDate }}</span>
+                        <span>{{ delegationInfo.visitStartDate|filter_time }}~{{delegationInfo.visitEndDate|filter_time}}</span>
                     </div>
                     <div class="hotelr-info-li">
                         <label>天数/人数:</label>
@@ -39,41 +39,36 @@
                     style="width: 100%" v-loading="loading" element-loading-text="拼命加载中...">
                     <el-table-column type="index" label="序号" width="50">
                     </el-table-column>
-                    <el-table-column prop="reservationsNo" label="预定号" width="180">
+                    <el-table-column prop="reservationsNo" label="预定号">
                     </el-table-column>
-                    <el-table-column prop="hotelName" label="酒店名称" width="180">
+                    <el-table-column prop="hotelName" label="酒店名称" width="200">
                     </el-table-column>
                     <el-table-column prop="checkInDate" label="入住日期" width="120">
                     </el-table-column>
                     <el-table-column prop="checkOutDate" label="退房日期" width="120">
                     </el-table-column>
-                    <el-table-column prop="payMoney" label="付款金额" width="180">
+                    <el-table-column prop="payMoney" label="付款金额" width="150">
                         <template slot-scope="scope">
-                            {{ scope.row.payMoney }}({{ scope.row.paymentCurrency }})
+                            {{ scope.row.payMoney.toFixed(2) }} ({{ scope.row.payCurrency }})
                         </template>
                     </el-table-column>
-                    <el-table-column prop="createUserName" label="操作人" width="120">
+                    <el-table-column prop="createUserName" label="操作人" width="90">
                     </el-table-column>
                     <el-table-column prop="createTime" label="操作时间" width="180">
                     </el-table-column>
-                    <el-table-column prop="attachment" label="附 件" width="80">
-                        <template slot-scope="scope">
-                            <i @click="download(scope.$index, scope.row)">下载附件</i>
-                        </template>
-                    </el-table-column>
-                    <el-table-column prop="isAuditGMStr" label="是否审核" width="100">
+                    <el-table-column prop="isAuditGMStr" label="是否审核" width="80">
                     </el-table-column>
                     <el-table-column prop="name" label="操 作" width="140">
                         <template slot-scope="scope">
-                            <el-button-group>
+                           
                                 <el-button type="primary" size="mini" icon="el-icon-edit"
                                     @click="upDate(scope.$index, scope.row)"></el-button>
                                 <el-button type="danger" size="mini" icon="el-icon-delete"
                                     @click="del(scope.$index, scope.row)"></el-button>
-                            </el-button-group>
+                           
                         </template>
                     </el-table-column>
-                    <el-table-column prop="address" label="VOUCHER">
+                    <el-table-column prop="address" label="VOUCHER" width="100">
                         <template slot-scope="scope">
                             <i @click="DownloadVOUCHER(scope.$index, scope.row)">生成</i>
                         </template>
@@ -490,6 +485,9 @@ import { el } from '@fullcalendar/core/internal-common';
 export default {
     data() {
         return {
+            userId:0,
+            cTable:0,
+            pageId:0,
             tableData: [],
             tableDatas: [],
             currentPage: 1, // 当前页码
@@ -698,6 +696,107 @@ export default {
         handleCurrentChange(val) {
             this.currentPage = val;
         },
+        //获取ctable
+        PostPageLinkCTable() {
+            console.log(this.pageId)
+            var url = "/api/Business/PostPageLinkCTable"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    pageId:that.pageId
+                }
+            }).then(function (res) {
+                console.log(res)
+                if (res.data.code == 200) {
+                    that.cTable=res.data.data.cTable;
+                    that.PostGroupListByCTableAndUserId()
+                }else{
+                    that.$message({
+                        message:"获取cTable失败",
+                        duration:3000,
+                        type:"error"
+                    });
+                }
+            }).catch(function (error) {
+                that.$message.error("网络错误,请稍后重试");
+            });
+        },
+        //获取团组
+        PostGroupListByCTableAndUserId() {
+            var url = "/api/Business/PostGroupListByCTableAndUserId"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    portType: 1,
+                    pageIndex: that.currentPage,
+                    pageSize:that.pageSize,
+                    userId: that.userId,
+                    cTable:that.cTable
+                }
+            }).then(function (res) {
+                console.log(res)
+                if (res.data.code == 200) {
+                    if(res.data.data.length==0){
+                        that.OpHotelReservationsData.diId='无团组权限!'
+                        that.$message({
+                            message:"无任何团组权限,请联系管理员添加团组!",
+                            duration:5000,
+                            type:"warning"
+                        });
+                    }
+                    if(that.OpHotelReservationsData.diId==0){
+                        that.OpHotelReservationsData.diId=res.data.data[0].id
+                    }
+                    that.delegationInfoList = res.data.data;
+                    for(var x=0;x<res.data.data.length;x++){
+                        if(that.OpHotelReservationsData.diId==res.data.data[x].id){
+                            that.delegationInfo=res.data.data[x]
+                        }
+                    }
+                    that.PostHotelReservationsItemsByDiId()
+                    // that.delegationInfo=
+                }
+            }).catch(function (error) {
+                that.$message.error("网络错误,请稍后重试");
+            });
+        },
+        //获取酒店表格
+        PostHotelReservationsItemsByDiId() {
+            var url = "/api/Groups/PostHotelReservationsItemsByDiId"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data: {
+                    portType:1,
+                    userId:that.userId,
+                    pageId:that.pageId,
+                    diId:that.OpHotelReservationsData.diId
+                }
+            }).then(function (res) {
+                console.log(res)
+                if (res.data.code == 200) {
+                    that.tableDatas=res.data.data
+                }
+            }).catch(function (error) {
+                that.$message.error("网络错误,请稍后重试");
+            });
+        },
+
+
         HotelReservationsInitialize() {
             var url = "/api/Groups/HotelReservationsInitialize"
             var that = this
@@ -740,77 +839,83 @@ export default {
                     that.HotelReservationsByDiId();
                 }
             }).catch(function (error) {
-                that.$message.error("网络错误,请稍后重试");
+                that.$message({
+                    message:"网络错误",
+                    duration:3000,
+                    type:"error"
+                });
             });
         },
         delegationSelectChange() {
-            for (let index = 0; index < this.delegationInfoList.length; index++) {
-
-                if (this.delegationInfoList[index].id == this.OpHotelReservationsData.diId) {
-                    this.delegationInfo = this.delegationInfoList[index];
-                    this.OpHotelReservationsData.diId = this.delegationInfoList[index].id;
-                    this.VisitDate = this.dateFormat(this.delegationInfo.visitStartDate) + '至' + this.dateFormat(this.delegationInfo.visitEndDate);
-                    break;
-                }
-            }
-
-            this.HotelReservationsByDiId();
-
-            this.OpHotelReservationsData.status = 1;
-            this.OpHotelReservationsData.id = 0;
-            this.OpHotelReservationsData.checkNumber = '';
-            this.OpHotelReservationsData.reservationsWebsite = 103;
-            this.OpHotelReservationsData.reservationsNo = '';
-            this.OpHotelReservationsData.determineNo = '';
-            this.OpHotelReservationsData.city = '';
-            this.OpHotelReservationsData.hotelName = '';
-            this.OpHotelReservationsData.hotelAddress = '';
-            this.OpHotelReservationsData.hotelTel = '';
-            this.OpHotelReservationsData.guestName = '';
-            this.OpHotelReservationsData.checkInDate = '';
-            this.OpHotelReservationsData.budgetCurrency = 836;
-            this.OpHotelReservationsData.checkOutDate = '';
-            this.OpHotelReservationsData.singleRoomCount = 0;
-            this.OpHotelReservationsData.singleRoomPrice = 0.00;
-            this.OpHotelReservationsData.doubleRoomCount = 0;
-            this.OpHotelReservationsData.doubleRoomPrice = 0.00;
-            this.OpHotelReservationsData.suiteRoomCount = 0;
-            this.OpHotelReservationsData.suiteRoomPrice = 0.00;
-            this.OpHotelReservationsData.otherRoomCount = 0;
-            this.OpHotelReservationsData.otherRoomPrice = 0.00;
-            this.OpHotelReservationsData.roomExplanation = '';
-            this.OpHotelReservationsData.attachment = '';
-            this.OpHotelReservationsData.cardPrice = 0.00;
-            this.OpHotelReservationsData.isCardPrice = 0;
-            this.OpHotelReservationsData.predictSingleRoom = 0;
-            this.OpHotelReservationsData.predictDoubleRoom = 0;
-            this.OpHotelReservationsData.predictSuiteRoom = 0;
-            this.OpHotelReservationsData.predictOtherRoom = 0;
-            this.OpHotelReservationsData.governmentRent = 0.00;
-            this.OpHotelReservationsData.governmentRentCurrency = '';
-            this.OpHotelReservationsData.cityTax = 0.00;
-            this.OpHotelReservationsData.cityTaxCurrency = '';
-            this.OpHotelReservationsData.checkType = '';
-            this.OpHotelReservationsData.createUserId = 0;
-            this.OpHotelReservationsData.remark = '';
-            this.OpHotelReservationsData.payMoney = 0.00;
-            this.OpHotelReservationsData.paymentCurrency = '';
-            this.OpHotelReservationsData.payDId = '';
-            this.OpHotelReservationsData.consumptionPatterns = '';
-            this.OpHotelReservationsData.consumptionDate = '';
-            this.OpHotelReservationsData.ctdId = '';
-            this.OpHotelReservationsData.companyBankNo = '';
-            this.OpHotelReservationsData.otherBankName = '';
-            this.OpHotelReservationsData.otherSideNo = '';
-            this.OpHotelReservationsData.otherSideName = '';
-            this.OpHotelReservationsData.bankNo = '';
-            this.OpHotelReservationsData.cardholderName = '';
-            this.OpHotelReservationsData.payee = '';
-            this.OpHotelReservationsData.orbitalPrivateTransfer = 0;
-            this.OpHotelReservationsData.cRemark = ''
-            this.$nextTick(() => {
-                this.$refs.OpHotelReservationsData.clearValidate();
-            })
+            this.delegationInfo=[];
+            this.PostGroupListByCTableAndUserId();
+            // for (let index = 0; index < this.delegationInfoList.length; index++) {
+
+            //     if (this.delegationInfoList[index].id == this.OpHotelReservationsData.diId) {
+            //         this.delegationInfo = this.delegationInfoList[index];
+            //         this.OpHotelReservationsData.diId = this.delegationInfoList[index].id;
+            //         this.VisitDate = this.dateFormat(this.delegationInfo.visitStartDate) + '至' + this.dateFormat(this.delegationInfo.visitEndDate);
+            //         break;
+            //     }
+            // }
+
+            // this.HotelReservationsByDiId();
+
+            // this.OpHotelReservationsData.status = 1;
+            // this.OpHotelReservationsData.id = 0;
+            // this.OpHotelReservationsData.checkNumber = '';
+            // this.OpHotelReservationsData.reservationsWebsite = 103;
+            // this.OpHotelReservationsData.reservationsNo = '';
+            // this.OpHotelReservationsData.determineNo = '';
+            // this.OpHotelReservationsData.city = '';
+            // this.OpHotelReservationsData.hotelName = '';
+            // this.OpHotelReservationsData.hotelAddress = '';
+            // this.OpHotelReservationsData.hotelTel = '';
+            // this.OpHotelReservationsData.guestName = '';
+            // this.OpHotelReservationsData.checkInDate = '';
+            // this.OpHotelReservationsData.budgetCurrency = 836;
+            // this.OpHotelReservationsData.checkOutDate = '';
+            // this.OpHotelReservationsData.singleRoomCount = 0;
+            // this.OpHotelReservationsData.singleRoomPrice = 0.00;
+            // this.OpHotelReservationsData.doubleRoomCount = 0;
+            // this.OpHotelReservationsData.doubleRoomPrice = 0.00;
+            // this.OpHotelReservationsData.suiteRoomCount = 0;
+            // this.OpHotelReservationsData.suiteRoomPrice = 0.00;
+            // this.OpHotelReservationsData.otherRoomCount = 0;
+            // this.OpHotelReservationsData.otherRoomPrice = 0.00;
+            // this.OpHotelReservationsData.roomExplanation = '';
+            // this.OpHotelReservationsData.attachment = '';
+            // this.OpHotelReservationsData.cardPrice = 0.00;
+            // this.OpHotelReservationsData.isCardPrice = 0;
+            // this.OpHotelReservationsData.predictSingleRoom = 0;
+            // this.OpHotelReservationsData.predictDoubleRoom = 0;
+            // this.OpHotelReservationsData.predictSuiteRoom = 0;
+            // this.OpHotelReservationsData.predictOtherRoom = 0;
+            // this.OpHotelReservationsData.governmentRent = 0.00;
+            // this.OpHotelReservationsData.governmentRentCurrency = '';
+            // this.OpHotelReservationsData.cityTax = 0.00;
+            // this.OpHotelReservationsData.cityTaxCurrency = '';
+            // this.OpHotelReservationsData.checkType = '';
+            // this.OpHotelReservationsData.createUserId = 0;
+            // this.OpHotelReservationsData.remark = '';
+            // this.OpHotelReservationsData.payMoney = 0.00;
+            // this.OpHotelReservationsData.paymentCurrency = '';
+            // this.OpHotelReservationsData.payDId = '';
+            // this.OpHotelReservationsData.consumptionPatterns = '';
+            // this.OpHotelReservationsData.consumptionDate = '';
+            // this.OpHotelReservationsData.ctdId = '';
+            // this.OpHotelReservationsData.companyBankNo = '';
+            // this.OpHotelReservationsData.otherBankName = '';
+            // this.OpHotelReservationsData.otherSideNo = '';
+            // this.OpHotelReservationsData.otherSideName = '';
+            // this.OpHotelReservationsData.bankNo = '';
+            // this.OpHotelReservationsData.cardholderName = '';
+            // this.OpHotelReservationsData.payee = '';
+            // this.OpHotelReservationsData.orbitalPrivateTransfer = 0;
+            // this.OpHotelReservationsData.cRemark = ''
+            // this.$nextTick(() => {
+            //     this.$refs.OpHotelReservationsData.clearValidate();
+            // })
         },
         HotelReservationsByDiId() {
 
@@ -1525,11 +1630,24 @@ export default {
             });
         },
     },
-
+    filters:{
+        filter_city(value){
+            if(value){
+                return value.replaceAll('|','、')
+            }
+        },
+        filter_time(value){
+            if(value){
+                return value.split(" ")[0]
+            }
+        }
+    },
     mounted() {
         this.token = JSON.parse(localStorage.getItem('userinif')).token;
+        this.pageId=Number(localStorage.getItem('indexs').split('-')[1]);//页面id
         this.userId = JSON.parse(localStorage.getItem('userinif')).userInfo.userId
-        this.HotelReservationsInitialize();
+        this.PostPageLinkCTable();
+        // this.HotelReservationsInitialize();
         //this.AirTicketResList()
     }
 }
@@ -1543,11 +1661,14 @@ export default {
     height: 100%;
     min-height: 840px;
 }
-
+.hotelr-all .block {
+    margin-top: 10px;
+}
 .hotelr-head-li label {
     color: #606266;
     font-size: 15px;
     font-weight: 600;
+    
 }
 
 .hotelr-head {