Преглед изворни кода

三公费用添加交通费明细

liuhj пре 2 дана
родитељ
комит
89959ef982
1 измењених фајлова са 410 додато и 84 уклоњено
  1. 410 84
      src/components/OP/EntryDetails.vue

+ 410 - 84
src/components/OP/EntryDetails.vue

@@ -21,137 +21,164 @@
                     <el-button size="mini" @click="setpermissions=false">取消</el-button>
                 </div>
             </el-dialog>
-            <el-dialog  width="1400px" title="交通费详细" :visible.sync="TransportationVisible">
+            <el-dialog  width="1400px" title="交通费详细" :visible.sync="TransportationVisible" :close-on-click-modal="false">
                 <div style="display: flex;justify-content: space-between;align-items: center;margin: 5px 0;">
-                    <div>接送机(合计)</div>
-                    <el-button size="mini" type="primary">添加一行</el-button>
+                    <div>接送机(合计):{{ numFilters(Transportationdatatotal) }}&nbsp;CNY</div>
+                    <el-button size="mini" @click="addTransportationdata" type="primary">添加一行</el-button>
                 </div>
                 <el-table border :data="Transportationdata">
-                    <el-table-column property="a" label="序号" width="50"></el-table-column>
-                    <el-table-column property="b" label="城市" width="150">
+                    <el-table-column property="no" label="序号" width="50"></el-table-column>
+                    <el-table-column property="ovId" label="城市" width="150">
                         <template slot-scope="scope">
                             <el-select size="mini"
-                                v-model="scope.row.a" filterable placeholder="请选择">
-                                <el-option v-for="item in fulecao" :key="item.id" :label="item.cityname"
+                                @change="UrbanSelect(scope.row, $event, scope.$index)"
+                                v-model="scope.row.ovId" filterable placeholder="请选择">
+                                <el-option v-for="item in fulecao" :key="item.id" :label="item.area"
                                     :value="item.id">
-                                    <span style="float: left">{{ item.cityname }}</span>
+                                    <span style="float: left">{{ item.area }}</span>
                                     <!-- <span style="float: right; color: #8492a6; font-size: 13px">{{item.city}}</span> -->
                                 </el-option>
                             </el-select>
                             <!-- <el-input disabled size="mini" v-model="scope.row.b"></el-input> -->
                         </template>
                     </el-table-column>
-                    <el-table-column property="c" label="成本价(要除以团组人数)" width="150">
+                    <el-table-column property="cost" label="成本价(要除以团组人数)" width="180">
                         <template slot-scope="scope">
-                            <el-input disabled size="mini" v-model="scope.row.c"></el-input>
+                            <div>{{reservetwo(scope.row.cost/Basicdata.groupSize)}}&nbsp;{{scope.row.currencyName}}&nbsp;({{scope.row.cost+'/'+Basicdata.groupSize}})</div>
+                            <!-- <el-input disabled size="mini" v-model="scope.row.c"></el-input> -->
                         </template>
                     </el-table-column>
-                    <el-table-column property="d" label="接送机导游" width="150">
+                    <el-table-column property="guideCost" label="接送机导游" width="140">
                         <template slot-scope="scope">
-                            <el-input disabled size="mini" v-model="scope.row.d"></el-input>
+                            <el-input-number disabled style="width:100%" size="mini" :class-unit="scope.row.currencyName" :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.guideCost"></el-input-number>
+                            <!-- <el-input disabled size="mini" v-model="scope.row.guideCost">
+                                <i slot="suffix" style="font-style:normal;margin-right: 10px;line-height: 27px;color: #606266;">{{ scope.row.currencyName }}</i>
+                            </el-input> -->
                         </template>
                     </el-table-column>
-                    <el-table-column property="e" label="其他费用(只有澳大利亚有这个数据)" width="150">
+                    <el-table-column property="otherCost" label="其他费用(只有澳大利亚有这个数据)" width="150">
                         <template slot-scope="scope">
-                            <el-input size="mini" v-model="scope.row.d"></el-input>
+                            <el-input-number @blur="UrbanModify(scope.row,scope.row.currencyName)" style="width:100%" size="mini" :class-unit="scope.row.currencyName" :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.otherCost"></el-input-number>
+                            <!-- <el-input size="mini" v-model="scope.row.otherCost">
+                                <i slot="suffix" style="font-style:normal;margin-right: 10px;line-height: 27px;color: #606266;">{{ scope.row.currencyName }}</i>
+                            </el-input> -->
                         </template>
                     </el-table-column>
-                    <el-table-column property="f" label="服务次数(默认为1)" width="150">
+                    <el-table-column property="serviceCount" label="服务次数(默认为1)" width="150">
                         <template slot-scope="scope">
-                            <el-input size="mini" v-model="scope.row.d"></el-input>
+                            <el-input-number @blur="UrbanModify(scope.row,scope.row.currencyName)" style="width:100%" size="mini"  :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.serviceCount"></el-input-number>
+                            <!-- <el-input size="mini" v-model="scope.row.serviceCount"></el-input> -->
                         </template>
                     </el-table-column>
-                    <el-table-column property="g" label="系数(默认2.5)" width="150">
+                    <el-table-column property="coefficient" label="系数(默认2.5)" width="110">
                         <template slot-scope="scope">
-                            <el-input size="mini" v-model="scope.row.d"></el-input>
+                            <el-input-number @blur="UrbanModify(scope.row,scope.row.currencyName)" style="width:100%" size="mini" :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.coefficient"></el-input-number>
+                            <!-- <el-input size="mini" v-model="scope.row.coefficient"></el-input> -->
                         </template>
                     </el-table-column>
-                    <el-table-column property="h" label="报价" width="200">
+                    <el-table-column property="quote" label="报价" width="200">
                         <template slot-scope="scope">
-                            <el-input size="mini" v-model="scope.row.d"></el-input>
+                            <el-input-number disabled style="width:100%" size="mini" class-unit="CNY" :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.quote"></el-input-number>
+                            <!-- <el-input size="mini" v-model="scope.row.quote">
+                                <i slot="suffix" style="font-style:normal;margin-right: 10px;line-height: 27px;color: #606266;">CNY</i>
+                            </el-input> -->
                         </template>
                     </el-table-column>
                     <el-table-column property="i" label="备注">
                         <template slot-scope="scope">
-                            <el-input size="mini" v-model="scope.row.d"></el-input>
+                            <el-input size="mini" v-model="scope.row.remark"></el-input>
                         </template>
                     </el-table-column>
                 </el-table>
                 <div class="jiaotongfei-ul">
                     <div class="jiaotongfei-li">
                         <div style="display: flex;justify-content: space-between;align-items: center;margin: 5px 0;">
-                            <div>拉车(合计)</div>
-                            <el-button size="mini" type="primary">添加一行</el-button>
+                            <div>拉车(合计):{{ numFilters(pullCartFeeTotal) }}&nbsp;CNY</div>
+                            <el-button @click="addpullCartFeeDetails" size="mini" type="primary">添加一行</el-button>
                         </div>
                         <!-- <div>拉车(合计)</div> -->
-                        <el-table border :data="lache">
-                            <el-table-column property="a" label="成本价" width="150">
+                        <el-table border :data="pullCartFeeDetails">
+                            <el-table-column property="cost" label="成本价" width="150">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input-number @blur="UrbanModifyLC(scope.row)" style="width:100%" size="mini" :class-unit="scope.row.currencyName" :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.cost"></el-input-number>
                                 </template>
                             </el-table-column>
-                            <el-table-column property="a" label="系数" width="150">
+                            <el-table-column property="coefficient" label="系数" width="150">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input-number @blur="UrbanModifyLC(scope.row)" style="width:100%" size="mini"  :precision="2" 
+                                        :controls="false" v-model="scope.row.coefficient"></el-input-number>
                                 </template>
                             </el-table-column>
-                            <el-table-column property="a" label="备注">
+                            <el-table-column property="remark" label="备注">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input size="mini" v-model="scope.row.remark"></el-input>
                                 </template>
                             </el-table-column>
                         </el-table>
                     </div>
                     <div class="jiaotongfei-li">
                         <div style="display: flex;justify-content: space-between;align-items: center;margin: 5px 0;">
-                            <div>火车(合计)</div>
-                            <el-button size="mini" type="primary">添加一行</el-button>
+                            <div>火车(合计):{{ numFilters(trainFeeTotal) }}&nbsp;CNY</div>
+                            <el-button @click="addtrainFeeDetails" size="mini" type="primary">添加一行</el-button>
                         </div>
-                        <el-table border :data="huoche">
-                            <el-table-column property="a" label="成本价" width="150">
+                        <el-table border :data="trainFeeDetails">
+                            <el-table-column property="cost" label="成本价" width="150">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input-number @blur="UrbanModifyHC(scope.row)" style="width:100%" size="mini" :class-unit="scope.row.currencyName" :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.cost"></el-input-number>
                                 </template>
                             </el-table-column>
-                            <el-table-column property="a" label="系数" width="150">
+                            <el-table-column property="coefficient" label="系数" width="150">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input-number @blur="UrbanModifyHC(scope.row)" style="width:100%" size="mini"  :precision="2" 
+                                        :controls="false" v-model="scope.row.coefficient"></el-input-number>
                                 </template>
                             </el-table-column>
-                            <el-table-column property="a" label="备注">
+                            <el-table-column property="remark" label="备注">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input size="mini" v-model="scope.row.remark"></el-input>
                                 </template>
                             </el-table-column>
                         </el-table>
                     </div>
                     <div class="jiaotongfei-li">
                         <div style="display: flex;justify-content: space-between;align-items: center;margin: 5px 0;">
-                            <div>城市机票(合计)</div>
-                            <el-button size="mini" type="primary">添加一行</el-button>
+                            <div>城市机票(合计):{{ numFilters(cityAirTicketFeeTotal) }}&nbsp;CNY</div>
+                            <el-button @click="addcityAirTicketFeeDetails" size="mini" type="primary">添加一行</el-button>
                         </div>
-                        <el-table border :data="chengshijipiao">
-                            <el-table-column property="a" label="成本价" width="150">
+                        <el-table border :data="cityAirTicketFeeDetails">
+                            <el-table-column property="cost" label="成本价" width="150">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input-number @blur="UrbanModifyJP(scope.row)" style="width:100%" size="mini" :class-unit="scope.row.currencyName" :precision="2" class="inputNumberClass"
+                                        :controls="false" v-model="scope.row.cost"></el-input-number>
                                 </template>
                             </el-table-column>
-                            <el-table-column property="a" label="系数" width="150">
+                            <el-table-column property="coefficient" label="系数" width="150">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input-number @blur="UrbanModifyJP(scope.row)" style="width:100%" size="mini"  :precision="2" 
+                                        :controls="false" v-model="scope.row.coefficient"></el-input-number>
                                 </template>
                             </el-table-column>
-                            <el-table-column property="a" label="备注">
+                            <el-table-column property="remark" label="备注">
                                 <template slot-scope="scope">
-                                    <el-input size="mini" v-model="scope.row.d"></el-input>
+                                    <el-input size="mini" v-model="scope.row.remark"></el-input>
                                 </template>
                             </el-table-column>
                         </el-table>
                     </div>
                 </div>
+                <div style="margin-top: 20px;font-weight: 600;">
+                    城市交通费合计:{{ numFilters(Transportationdatatotal + pullCartFeeTotal + trainFeeTotal + cityAirTicketFeeTotal) }}&nbsp;CNY
+                </div>
                 <div style="text-align: right;margin-top: 20px;">
-                    <el-button>取消</el-button>
-                    <el-button type="primary">确 定</el-button>
+                    <el-button @click="TransportationVisible=false">取消</el-button>
+                    <el-button @click="GetEnterExitCostOVFeeSave" type="primary">保 存</el-button>
                 </div>
             </el-dialog>
             <div class="Entry-head">
@@ -352,6 +379,9 @@
                                 v-model="TotalExpenses.TravellingExpensesTD"></el-input-number>
                             <span>元/人;</span>
                         </div>
+                        <div class="Entry-inif-box">
+                            <el-button @click="openTransportation" type="primary" size="mini">交通费明细</el-button>
+                        </div>
                     </div>
                     <div class="Entry-li-inif">
                         <div class="Entry-inif-box">
@@ -878,40 +908,21 @@ export default {
             //交通费弹窗
             Transportationdata:[
                 {
-                    a:1,
-                    b:'',
-                    c:'',
-                    d:'',
-                    e:'',
-                    f:'',
-                    g:'',
-                    h:'',
-                    i:'',
-                },
-                {
-                    a:2,
-                    b:'',
-                    c:'',
-                    d:'',
-                    e:'',
-                    f:'',
-                    g:'',
-                    h:'',
-                    i:'',
-                },
-                {
-                    a:3,
-                    b:'',
-                    c:'',
-                    d:'',
-                    e:'',
-                    f:'',
-                    g:'',
-                    h:'',
-                    i:'',
+                    coefficient: 2.5,
+                    cost: 0,
+                    currencyName: "CNY",
+                    guideCost: 0,
+                    no: 1,
+                    otherCost: 0,
+                    ovId: '',
+                    quote: 0,
+                    remark: "",
+                    serviceCount: 1
                 }
             ],
+            Transportationdatatotal:0,
             TransportationVisible:false,
+            currencies:[],
             lache:[
                 {
                     a:1,
@@ -933,7 +944,45 @@ export default {
                     c:"",
                 }
             ],
+            Basicdata:{},
             fulecao:[],
+            pullCartFeeTotal:0,
+            pullCartFeeDetails:[
+                {
+                    no: 1,
+                    cost: 0,
+                    coefficient: 2.50,
+                    currencyName: "",
+                    quote: 0,
+                    remark: ""
+                }
+            ],
+            trainFeeTotal:0,
+            trainFeeDetails:[
+                {
+                    no: 1,
+                    cost: 0,
+                    coefficient: 2.50,
+                    currencyName: "",
+                    quote: 0,
+                    remark: ""
+                }
+            ],
+            cityAirTicketFeeTotal:0,
+            cityAirTicketFeeDetails:[
+                {
+                    no: 1,
+                    cost: 0,
+                    coefficient: 2.50,
+                    currencyName: "",
+                    quote: 0,
+                    remark: ""
+                }
+            ],
+            lastUpdateUserName:'',
+            lastUpdateTime:'',
+            createUserName:'',
+            createTime:'',
         }
     },
     methods: {
@@ -978,6 +1027,7 @@ export default {
             let realVal = new Decimal(value).toFixed(2)
             return realVal
         },
+        
         //获取团组
         GetEnterExitCostDataSource() {
             var url = "/api/Groups/GetEnterExitCostDataSource"
@@ -1161,8 +1211,6 @@ export default {
         EnterExitCostFileOwner() {
             this.listvalueoptions=[];
             this.tablevalueoptions=[];
-            console.log(this.provinceId);
-            
             var url = "/api/Groups/EnterExitCostFileOwner/"+this.provinceId
             var that = this
             this.$axios({
@@ -1798,7 +1846,7 @@ export default {
                 } else {
                     that.fullscreenLoading = false;
                     that.provinceId=res.data.data.provinceId;
-                    that.EnterExitCostFileOwner();
+                    // that.EnterExitCostFileOwner();
                     that.GetNationalTravelFeeData();
                     that.GetEnterExitCostCorrelationTips(1);
                     that.$message.warning(res.data.msg);
@@ -2926,6 +2974,258 @@ export default {
                 that.$message.error("操作错误,联系信息部!");
             });
         },
+        //交通费基础费用
+        GetEnterExitCostOVByGroupId() {
+            var url = "/api/Groups/GetEnterExitCostOVByGroupId/"+this.value
+            var that = this
+            this.$axios({
+                method: 'get',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+            }).then(function (res) {
+                that.fulecao=[];
+                that.Basicdata={};
+                that.currencies=[];
+                if (res.data.code == 200) {
+                    that.Basicdata=res.data.data;
+                    that.currencies=res.data.data.currencies;
+                    that.fulecao=res.data.data.data;
+                }else {
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
+        //交通费详细
+        GetEnterExitCostOVFeeDetails() {
+            var url = "/api/Groups/GetEnterExitCostOVFeeDetails/"+this.value+"?currUserId="+this.userId
+            var that = this
+            this.$axios({
+                method: 'get',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+            }).then(function (res) {
+                that.Transportationdata=[];
+                that.Transportationdatatotal=0;
+                that.pullCartFeeDetails=[];
+                that.pullCartFeeTotal=0;
+                that.trainFeeDetails=[];
+                that.trainFeeTotal=0;
+                that.cityAirTicketFeeDetails=[];
+                that.cityAirTicketFeeTotal=0;
+                that.lastUpdateUserName="";
+                that.lastUpdateTime="";
+                that.createUserName="";
+                that.createTime="";
+                if (res.data.code == 200) {
+                    that.Transportationdata=res.data.data.aptFeeDetails;
+                    that.Transportationdatatotal=res.data.data.aptFeeTotal;
+                    that.pullCartFeeDetails=res.data.data.pullCartFeeDetails;
+                    that.pullCartFeeTotal=res.data.data.pullCartFeeTotal;
+                    that.trainFeeDetails=res.data.data.trainFeeDetails;
+                    that.trainFeeTotal=res.data.data.trainFeeTotal;
+                    that.cityAirTicketFeeDetails=res.data.data.cityAirTicketFeeDetails;
+                    that.cityAirTicketFeeTotal=res.data.data.cityAirTicketFeeTotal;
+                    that.lastUpdateUserName=res.data.data.lastUpdateUserName;
+                    that.lastUpdateTime=res.data.data.lastUpdateTime;
+                    that.createUserName=res.data.data.createUserName;
+                    that.createTime=res.data.data.createTime;
+                    that.GetEnterExitCostOVByGroupId();
+                }else {
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
+        //交通费弹窗
+        openTransportation(){
+            this.GetEnterExitCostOVFeeDetails();
+            this.TransportationVisible=true;
+        },
+        //选择城市交通费
+        UrbanSelect(val, item, index) {
+            var obj = {}
+            obj = this.fulecao.find(function (i,indexs) {
+
+                return i.id === item
+            });
+            val.cost=obj.price;
+            val.otherCost=obj.otherPrice;
+            val.guideCost=obj.guidePrice;
+            val.currencyName=obj.currencyName
+            this.UrbanModify(val,val.currencyName)
+        },
+        numFilters(value) {
+            // 截取当前数据到小数点后两位
+            let tempVal = parseFloat(value).toFixed(3);
+            let realVal = tempVal.substring(0, tempVal.length - 1);
+            return realVal;
+        },
+        //改值计算
+        UrbanModify(val,bizhong){
+            var total=0
+            var obj = {}
+            obj = this.currencies.find(function (i,indexs) {
+                return i.currencyCode === bizhong
+            });
+            total=(Number(val.cost/this.Basicdata.groupSize)+Number(val.otherCost)+Number(val.guideCost))*val.serviceCount*val.coefficient*obj.rate;
+            val.quote=this.numFilters(total)
+            this.UrbanTotal();
+        },
+        //改值计算LC
+        UrbanModifyLC(val){
+            var total=0
+            val.currencyName="CNY"
+            total=Number(val.cost)*val.coefficient;
+            val.quote=this.numFilters(total)
+            this.UrbanTotalLC();
+        },
+        //计算总价LC
+        UrbanTotalLC(){
+            this.pullCartFeeTotal=0
+            for(let i=0;i<this.pullCartFeeDetails.length;i++){
+                this.pullCartFeeTotal+=Number(this.pullCartFeeDetails[i].quote)
+            }
+        },  
+        //改值计算HC
+        UrbanModifyHC(val){
+            var total=0
+            val.currencyName="CNY"
+            total=Number(val.cost)*val.coefficient;
+            val.quote=this.numFilters(total)
+            this.UrbanTotalHC();
+        },
+        //计算总价HC
+        UrbanTotalHC(){
+            this.trainFeeTotal=0
+            for(let i=0;i<this.trainFeeDetails.length;i++){
+                this.trainFeeTotal+=Number(this.trainFeeDetails[i].quote)
+            }
+        },  
+        //改值计算JP
+        UrbanModifyJP(val){
+            var total=0
+            val.currencyName="CNY"
+            total=Number(val.cost)*val.coefficient;
+            val.quote=this.numFilters(total)
+            this.UrbanTotalJP();
+        },
+        //计算总价JP
+        UrbanTotalJP(){
+            this.cityAirTicketFeeTotal=0
+            for(let i=0;i<this.cityAirTicketFeeDetails.length;i++){
+                this.cityAirTicketFeeTotal+=Number(this.cityAirTicketFeeDetails[i].quote)
+            }
+        },  
+        //计算总价
+        UrbanTotal(){
+            this.Transportationdatatotal=0
+            for(let i=0;i<this.Transportationdata.length;i++){
+                this.Transportationdatatotal+=Number(this.Transportationdata[i].quote)
+            }
+            // console.log(total);
+            
+            // this.TotalExpenses.TravellingExpensesJJ=this.numFilters(total)
+            // this.TotalExpenses.TravellingExpensesGW=this.numFilters(total)
+            // this.TotalExpenses.TravellingExpensesTD=this.numFilters(total)
+            // this.calculation();
+        },  
+        //添加一行接送机
+        addTransportationdata(){
+            this.Transportationdata.push({
+                coefficient: 2.5,
+                cost: 0,
+                currencyName: "CNY",
+                guideCost: 0,
+                no: this.Transportationdata.length + 1,
+                otherCost: 0,
+                ovId: '',
+                quote: 0,
+                remark: "",
+                serviceCount: 1
+            });
+        },
+        //添加一行拉车
+        addpullCartFeeDetails(){
+            this.pullCartFeeDetails.push({
+                no: this.pullCartFeeDetails.length + 1,
+                cost: 0,
+                coefficient: 2.50,
+                currencyName: "",
+                quote: 0,
+                remark: ""
+            });
+        },
+        //添加一行火车
+        addtrainFeeDetails(){
+            this.trainFeeDetails.push({
+                no: this.trainFeeDetails.length + 1,
+                cost: 0,
+                coefficient: 2.50,
+                currencyName: "",
+                quote: 0,
+                remark: ""
+            });
+        },
+        //添加一行城市机票(
+        addcityAirTicketFeeDetails(){
+            this.cityAirTicketFeeDetails.push({
+                no: this.cityAirTicketFeeDetails.length + 1,
+                cost: 0,
+                coefficient: 2.50,
+                currencyName: "",
+                quote: 0,
+                remark: ""
+            });
+        },
+        //城市交通费保存
+        GetEnterExitCostOVFeeSave() {
+            for(let i=0;i<this.Transportationdata.length;i++){
+                if(this.Transportationdata[i].ovId==""){
+                    this.$message.error("请查看是否除备注外的必填项均已填写!");
+                    return;
+                }
+            }
+            var url = "/api/Groups/GetEnterExitCostOVFeeSave"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + this.token
+                },
+                data:{
+                    aptFeeTotal:that.Transportationdatatotal,
+                    aptFeeDetails:that.Transportationdata,
+                    pullCartFeeTotal:that.pullCartFeeTotal,
+                    pullCartFeeDetails:that.pullCartFeeDetails,
+                    trainFeeTotal:that.trainFeeTotal,
+                    trainFeeDetails:that.trainFeeDetails,
+                    cityAirTicketFeeTotal:that.cityAirTicketFeeTotal,
+                    cityAirTicketFeeDetails:that.cityAirTicketFeeDetails,
+                    currencies:that.currencies,
+                    lastUpdateUserName:that.lastUpdateUserName,
+                    lastUpdateTime:that.lastUpdateTime,
+                    createUserName:that.createUserName,
+                    createTime:that.createTime,
+                    groupId:that.value,
+                    currUserId:that.userId,
+                }
+            }).then(function (res) {
+                if (res.data.code == 200) {
+                    that.TotalExpenses.TravellingExpensesJJ=that.numFilters(that.Transportationdatatotal + that.pullCartFeeTotal + that.trainFeeTotal + that.cityAirTicketFeeTotal);
+                    that.TotalExpenses.TravellingExpensesGW=that.numFilters(that.Transportationdatatotal + that.pullCartFeeTotal + that.trainFeeTotal + that.cityAirTicketFeeTotal);
+                    that.TotalExpenses.TravellingExpensesTD=that.numFilters(that.Transportationdatatotal + that.pullCartFeeTotal + that.trainFeeTotal + that.cityAirTicketFeeTotal);
+                    that.TransportationVisible=false;
+                    that.$message.success(res.data.msg);
+
+                }else {
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
     },
     filters: {
         numFilter(value) {
@@ -2935,6 +3235,12 @@ export default {
         }
     },
     watch: {
+        Transportationdata: {
+            handler(newVal, oldVal) {
+                // this.UrbanTotal();
+            }
+        },
+
         choiceOne(val) {//境内费用(其他费用)选择框
             this.calculation();
         },
@@ -3306,4 +3612,24 @@ export default {
 .jiaotongfei-li{
     width: 32.5%;
 }
+
+
+
+.inputNumberClass[class-unit] {
+    --el-input-number-unit-offset-x: 35px;
+    position: relative;
+}
+.inputNumberClass[class-unit]::after {
+    content: attr(class-unit);
+    height: 100%;
+    display: flex;
+    align-items: center;
+    position: absolute;
+    top: 0;
+    right: 5px;
+    color: #C0C4CC;
+}
+.inputNumberClass[class-unit] .el-input__inner {
+    padding-right:25px;
+}
 </style>