Bläddra i källkod

出入境修改

liuhj 3 månader sedan
förälder
incheckning
f2e068cc1e

+ 17 - 4
src/components/OP/EntryDetails.vue

@@ -13,7 +13,7 @@
             <div class="Entry-head">
                 <div class="Entry-head-li">
                     <label>团组名称:</label>
-                    <el-select style="width:250px" @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" :label="item.groupName" :value="item.id">
                             <span v-if="item.isNull=='false'" style="color:#409EFF">{{ item.groupName }}</span>
                             <span v-else style="color:gray">{{ item.groupName }}</span>
@@ -612,6 +612,8 @@ export default {
             
             isAssignPerm:false,
 
+            provinceId:'',
+
             userId: '',
             token: '',
             value: '',
@@ -711,11 +713,13 @@ export default {
                     that.viewUsersarr= res.data.data.viewPermissionData;
                     if (that.value == null) {
                         that.value = res.data.data.groupNameData[0].id;
+                        that.provinceId = res.data.data.groupNameData[0].provinceId;
                     }
                     that.listvalueoptions = res.data.data.wordTypeData;
                     that.tablevalueoptions = res.data.data.excelTypeData;
                     that.GetEnterExitCostInfobyDiId();
                     that.PostGroupTeamRateByDiIdAndCTableId();
+                    that.GetNationalTravelFeeData();
                 }
             })
         },
@@ -864,7 +868,8 @@ export default {
                     Authorization: 'Bearer ' + this.token
                 },
                 data: {
-                    portType: 1
+                    portType: 1,
+                    provinceId:that.provinceId,
                 }
             }).then(function (res) {
                 let placeinifarr = [];
@@ -2024,9 +2029,17 @@ export default {
 
         },
         //选择团组名称调用
-        chengvalue() {
+        chengvalue(val) {
             window.localStorage.setItem('sgvalue', this.value);
+            for(let i=0;i<this.options.length;i++){
+                if (val==this.options[i].id) {
+                    console.log(this.options[i]);
+                    this.provinceId=this.options[i].provinceId
+                }
+            }
+            
             this.fullscreenLoading = true;
+            this.GetNationalTravelFeeData();
             this.GetEnterExitCostInfobyDiId();
             this.PostGroupTeamRateByDiIdAndCTableId();
         },
@@ -2741,7 +2754,7 @@ export default {
         this.userId = JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
         this.value = JSON.parse(localStorage.getItem('sgvalue'))
         this.GetEnterExitCostDataSource();
-        this.GetNationalTravelFeeData();
+        // this.GetNationalTravelFeeData();
     },
     destroyed() {
         window.localStorage.removeItem('sgvalue');

+ 59 - 7
src/components/OP/EntryDetailsdraft.vue

@@ -27,6 +27,13 @@
                         </el-option>
                     </el-select> -->
                 </div>
+                <div v-if="isSave" class="Entrydraft-head-li" style="width:220px">
+                    <label>城市归属:</label>
+                    <el-select style="width:150px" @change="provinceIdchange" v-model="provinceId" filterable placeholder="请选择">
+                        <el-option v-for="item in provinceIdarr" :key="item.id" :label="item.name" :value="item.id">
+                        </el-option>
+                    </el-select>
+                </div>
                 <div v-if="isSave" class="Entrydraft-head-li" style="width:361px">
                     <label>团组:</label>
                     <el-select style="width:250px" v-model="diid" filterable placeholder="请选择">
@@ -715,7 +722,10 @@ export default {
             isView:false,
             viewUsers:[],
             viewUsersby:[],
-            viewUsersarr:[]
+            viewUsersarr:[],
+
+            provinceIdarr:[],
+            provinceId:'',
         }
     },
     methods: {
@@ -763,13 +773,48 @@ export default {
                         that.valuename = that.draftNameDatas[0].value;
                         that.value = that.draftNameDatas[0].id;
                     }
-                    that.listvalueoptions = res.data.data.wordTypeData;
                     that.tablevalueoptions = res.data.data.excelTypeData;
                     that.GetEnterExitCostInfobyDiId();
                     that.PostGroupTeamRateByDiIdAndCTableId();
                 }
             })
         },
+        provinceIdchange(){
+            this.EnterExitCostDraftFileOwner();
+            this.GetNationalTravelFeeData();
+        },
+         //获取归属
+         EnterExitDraftProvBelongCostDataSource() {
+            this.provinceIdarr=[]
+            var url = "/api/Groups/EnterExitDraftProvBelongCostDataSource"
+            var that = this
+            this.$axios({
+                method: 'get',
+                url: url,
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.provinceIdarr=res.data.data;
+                    
+                }else {
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
+        //获取文件
+        EnterExitCostDraftFileOwner() {
+            var url = "/api/Groups/EnterExitCostDraftFileOwner/"+this.provinceId
+            var that = this
+            this.$axios({
+                method: 'get',
+                url: url,
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.listvalueoptions = res.data.data.wordTypeData;
+                }else {
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
         //获取币种
         PostGroupTeamRateByDiIdAndCTableId() {
             this.othercurrencys = [];
@@ -977,7 +1022,6 @@ export default {
         },
         //获取费用标注
         GetNationalTravelFeeData() {
-            this.fullscreenLoading = true;
             var url = "/api/Groups/GetNationalTravelFeeData"
             var that = this
             this.$axios({
@@ -987,7 +1031,8 @@ export default {
                     Authorization: 'Bearer ' + this.token
                 },
                 data: {
-                    portType: 1
+                    portType: 1,
+                    provinceId:that.provinceId,
                 }
             }).then(function (res) {
                 let placeinifarr = [];
@@ -1578,7 +1623,10 @@ export default {
                         that.otherExpense += res.data.data.dayOtherPriceData[e].subTotal
                     }
                     that.storageid = res.data.data.id;
-                    // that.GetNationalTravelFeeData();
+                    that.provinceId=res.data.data.provinceId;
+                    that.GetNationalTravelFeeData();
+                    that.EnterExitCostDraftFileOwner();
+
                     that.fullscreenLoading = false;
                     that.GetEnterExitCostCorrelationTips(2);
                     that.EnterExitCostDraftVisaTips();
@@ -2109,7 +2157,9 @@ export default {
 
             this.getvisafeebtn=false;
             // this.EnterExitCostDraftVisaTips();
-            
+            this.provinceId=this.provinceIdarr[0].id;
+            this.GetNationalTravelFeeData();
+            // this.EnterExitCostDraftFileOwner();
         },
         //下拉
         handNodeClick(data, node, e) {
@@ -2554,6 +2604,7 @@ export default {
                     draftName: that.valuename,
                     choiceOne: that.choiceOne ? 1 : 0,
                     insidePay: that.DomesticFees.total,
+                    provinceId: that.provinceId,
                     visa: that.DomesticFees.visafees,
                     visaRemark: that.DomesticFees.visafeesDescription,
                     yiMiao: that.DomesticFees.vaccinefees,
@@ -3348,7 +3399,8 @@ export default {
         this.userId = JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
         this.value = JSON.parse(localStorage.getItem('sgvalue'))
         this.GetEnterExitCostDataSource();
-        this.GetNationalTravelFeeData();
+        this.EnterExitDraftProvBelongCostDataSource();
+        // this.GetNationalTravelFeeData();
     },
     destroyed() {
         window.localStorage.removeItem('sgvalue');

+ 50 - 11
src/components/OP/EntryQuotation.vue

@@ -2,17 +2,15 @@
     <div class="entryquotation-all">
         <div class="entryquotation-title">出入境报价表</div>
         <div class="entryquotation-form">
-            <div class="entryquotation-form-li">
+            <div class="entryquotation-form-li" v-for="(item,index) in tabledata" :key="index">
                 <div class="entryquotation-form-title">
-                    国际旅费(公务舱和经济舱分别罗列)
+                    {{item.itemName}}
                 </div>
                 <div class="entryquotation-form-content">
-                    6人全程机票:112864元
-                    公务舱:27509元/人*1人        
-                    经济舱:17071元/人*5人       
-                    城市间交通费用:
-                    8000元/人*6人
-                    以上小计:160864元
+                    <div v-for="(items,index) in item.infos" :key="index">
+                        <el-input type="textarea" v-model="items.feeName"></el-input>
+                        <!-- {{ items.feeName }} -->
+                    </div>
                 </div>
             </div>
         </div>
@@ -20,7 +18,40 @@
 </template>
 <script>
 export default {
-    
+    data() {
+        return {
+            tabledata:[],
+        }
+    },
+    methods:{
+        //
+        EnterExitCostQuoteEntryExitCosts(){
+            this.tabledata=[];
+            var url = "/api/Groups/EnterExitCostQuoteEntryExitCosts"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer' 
+                },
+                data:{
+                    portType: 1,
+                    diId:2477,
+                    currUserId: 330,
+                }
+            }).then(function (res) {
+                if(res.data.code==200){
+                    that.tabledata=res.data.data.feeItems;
+                }else{
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
+    },
+    mounted(){
+        this.EnterExitCostQuoteEntryExitCosts();
+    }
 }
 </script>
 <style>
@@ -29,7 +60,6 @@ export default {
     padding: 10px;
     box-shadow: 0 0 5px #0005;
     border-radius: 10px;
-    height: 100%;
     min-height: 840px;
 }
 .entryquotation-title{
@@ -47,4 +77,13 @@ export default {
     padding: 10px;
     
 }
-</style>
+.entryquotation-form-title{
+    width: 30%;
+    border-bottom: 1px solid #ebeef5;
+    border-right: 1px solid #ebeef5;
+}
+.entryquotation-form-content{
+    width: 60%;
+    border-bottom: 1px solid #ebeef5;
+}
+</style> 

+ 14 - 0
src/components/OP/Groupedit.vue

@@ -46,6 +46,12 @@
                         ></el-autocomplete>
                         <!-- <el-input el-input v-model="ruleForm.customerunits"></el-input> -->
                     </el-form-item>
+                    <el-form-item label-width="120px" label="sadasd:" prop="cityId">
+                        <el-select filterable @change="optypechange" class="op-type" v-model="ruleForm.cityId" placeholder="请选择团组类型">
+                            <el-option v-for="(item, index) in cityData" :key="index" :label="item.name"
+                                :value="item.id"></el-option>
+                        </el-select>
+                    </el-form-item>
                     <el-form-item label-width="120px" label="出访国家:" prop="countriesvisited">
                         <el-input @blur="splicingname" el-input v-model="ruleForm.countriesvisited" placeholder="按照“国家1、国家2、国家3”录入"></el-input>
                     </el-form-item>
@@ -246,6 +252,7 @@ export default {
                 visitingtime: '',
                 contracttime: '',
                 numdays: '',
+                cityId:'',
                 numperson: '',
                 occasion: '',
                 payments: '',
@@ -271,6 +278,7 @@ export default {
                '无'
             ],
             personarr: [],
+            cityData:[],
             gradearr: [],
             OPtype: [],
             rules: {
@@ -289,6 +297,9 @@ export default {
                 person: [
                     { required: true, message: '请选择成团人', trigger: 'change' }
                 ],
+                cityId: [
+                    { required: true, message: 'asd', trigger: 'change' }
+                ],
                 grades: [
                     { required: true, message: '请选择级别', trigger: 'change' }
                 ],
@@ -419,6 +430,7 @@ export default {
                     that.personarr = res.data.data.userData;
                     that.gradearr = res.data.data.teamLevData;
                     that.OPtype = res.data.data.teamTypeData;
+                    that.cityData = res.data.data.cityData;
                 }
             })
             var url = "/api/System/QuerySetData"
@@ -530,6 +542,7 @@ export default {
                     if (res.data.code == 200) {
                         datagroup = res.data.data;
                         that.ruleForm.quotenum = datagroup.salesQuoteNo;
+                        that.ruleForm.cityId = datagroup.cityId;
                         that.ruleForm.groupname = datagroup.teamName;
                         that.ruleForm.customername = datagroup.clientName;
                         that.ruleForm.customerunits = datagroup.clientUnit;
@@ -586,6 +599,7 @@ export default {
                     status: status,//添加1//修改2//删除3
                     id: that.editid,
                     userId: that.userid,
+                    cityId:that.ruleForm.cityId,
                     salesQuoteNo: that.ruleForm.quotenum,
                     jietuanOperator: parseInt(that.ruleForm.person),//
                     teamLevSId: parseInt(that.ruleForm.grades),//

+ 48 - 1
src/components/OP/ThreeStandards.vue

@@ -27,6 +27,17 @@
                         </el-select>
                         <!-- <el-input style="width:200px" v-model="input2" placeholder="请输入内容"></el-input> -->
                     </div>
+                    <div>
+                        <label>归属城市:</label>
+                        <el-select style="width: 220px;margin-left: 10px;" v-model="provinceId" @change="provinceIdchange" filterable placeholder="请选择归属城市">
+                            <el-option
+                                v-for="item in provinceIdarr"
+                                :key="item.id"
+                                :label="item.name"
+                                :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </div>
                 </div>
                 <div class="standards-head-li">
                     <!-- <el-button type="primary">查 询</el-button> -->
@@ -142,6 +153,16 @@
                         <el-form-item label="城市" prop="city" :label-width="formLabelWidth">
                             <el-input size="medium" :controls="false" v-model="addfees.city"></el-input>
                         </el-form-item>
+                        <el-form-item label="归属城市" prop="provinceId" :label-width="formLabelWidth">
+                            <el-select size="medium"  v-model="addfees.provinceId" filterable placeholder="请选择归属城市">
+                                <el-option
+                                    v-for="item in provinceIdarr"
+                                    :key="item.id"
+                                    :label="item.name"
+                                    :value="item.id">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
                         <el-form-item label="币种" prop="currency" :label-width="formLabelWidth">
                             <el-select size="medium" @change="currencychange" style="height:36px" v-model="addfees.currency" filterable placeholder="请选择">
                                 <el-option
@@ -194,6 +215,8 @@ export default {
             AdditionalFees:false,
             countrylist:[],
             citylist:[],
+            provinceId:'',
+            provinceIdarr:[],
             //新增
             addfees:{
                 id:0,
@@ -205,6 +228,7 @@ export default {
                 foodCost:0,//伙食费
                 publicCost:0,//公杂费
                 trainCost:0,//培训费
+                provinceId:'',
                 remark:'',//备注
             },
             options:[],
@@ -222,6 +246,9 @@ export default {
                 currency: [
                     { required: true,  trigger: 'blur',message:'请选择币种' }
                 ],
+                provinceId: [
+                    { required: true, trigger: 'change' ,message:'请选择归属城市'},
+                ],
                 roomCost: [
                     { required: true, trigger: 'change' ,message:'请填写住宿费'},
                 ],
@@ -258,6 +285,22 @@ export default {
                 }
             })
         },
+        //获取省份归属基础数据
+        GetEnterExitProvBelongCostDataSource(){
+            var url = "/api/Groups/GetEnterExitProvBelongCostDataSource"
+            var that = this
+            this.$axios({
+                method: 'get',
+                url: url,
+            }).then(function (res) {
+                if(res.data.code==200){
+                    that.provinceIdarr=res.data.data;
+                }
+            })
+        },
+        provinceIdchange(){
+            this.GatPostNationalTravel();
+        },
         //获取标准列表
         GatPostNationalTravel(){
             var url = "/api/Groups/PostNationalTravelFeePage"
@@ -280,7 +323,7 @@ export default {
                     portType: 1,
                     pageIndex:that.pageIndex,
                     pageSize:that.pageSize,
-                    continent:'',
+                    provinceId:that.provinceId==''?0:that.provinceId,
                     country:inputs,
                     city:input2s,
                 }
@@ -310,6 +353,7 @@ export default {
                 foodCost:0,//伙食费
                 publicCost:0,//公杂费
                 trainCost:0,//培训费
+                provinceId:'',
                 remark:'',//备注
             },
             this.AdditionalFees=true;
@@ -321,6 +365,7 @@ export default {
                 this.addfees.city=val.city;
                 this.addfees.currency=val.currency;
                 this.addfees.roomCost=val.roomCost;
+                this.addfees.provinceId=val.provinceId;
                 this.addfees.foodCost=val.foodCost;
                 this.addfees.publicCost=val.publicCost;
                 this.addfees.trainCost=val.trainCost;
@@ -359,6 +404,7 @@ export default {
                     portType: 1,
                     id:that.addfees.id,
                     userId:that.loginuserid,
+                    provinceId:that.addfees.provinceId,
                     continent:that.addfees.continent,
                     country:that.addfees.country,
                     city:that.addfees.city,
@@ -478,6 +524,7 @@ export default {
     mounted(){
         this.loginuserid=JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
         this.GatPostNationalTravel();
+        this.GetEnterExitProvBelongCostDataSource();
         this.GetEnterExitCostDataSource();
         this.GetNationalTravelFeePageDataSource();
     }