liuhj преди 1 година
родител
ревизия
824aed3d11

+ 6 - 0
package-lock.json

@@ -17,6 +17,7 @@
         "@fullcalendar/timegrid": "^6.1.4",
         "@fullcalendar/vue": "^6.1.4",
         "axios": "^1.3.4",
+        "decimal.js": "^10.4.3",
         "echarts": "^5.4.0",
         "element-ui": "^2.15.13",
         "pinyin-pro": "^3.17.0",
@@ -4366,6 +4367,11 @@
         "node": ">=0.10.0"
       }
     },
+    "node_modules/decimal.js": {
+      "version": "10.4.3",
+      "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz",
+      "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA=="
+    },
     "node_modules/decode-uri-component": {
       "version": "0.2.2",
       "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz",

+ 1 - 0
package.json

@@ -19,6 +19,7 @@
     "@fullcalendar/timegrid": "^6.1.4",
     "@fullcalendar/vue": "^6.1.4",
     "axios": "^1.3.4",
+    "decimal.js": "^10.4.3",
     "echarts": "^5.4.0",
     "element-ui": "^2.15.13",
     "pinyin-pro": "^3.17.0",

+ 30 - 8
src/components/Finance/DailyFeePayment.vue

@@ -1,5 +1,5 @@
 <template>
-    <div class="visa-box">
+    <div class="visa-box" style="min-height: 830px;">
         <div class="visasearch-ul">
             <div class="visasearch-li">
                 <div class="feeType-box">
@@ -52,7 +52,7 @@
                 </div> -->
                 <div class="feeType-box">
                     <label>申请人: </label>
-                    <el-select @change="downtrigger()" v-model="userNameValue" filterable placeholder="请选择申请人">
+                    <el-select :disabled="sqrpd" @change="downtrigger()" v-model="userNameValue" filterable placeholder="请选择申请人">
                         <el-option
                         v-for="item in userNameData"
                         :key="item.id"
@@ -61,6 +61,7 @@
                         </el-option>
                     </el-select>
                 </div>
+                <el-button @click="addDaily()" type="primary">新增数据</el-button>
             </div>
             <!-- <div class="search-li">
                 <el-button type="primary">查询</el-button>
@@ -69,7 +70,7 @@
         <el-row>
             <!-- <el-button type="primary">导出费用</el-button>
             <el-button type="primary">批量生成</el-button> -->
-            <el-button @click="addDaily()" type="primary">新增数据</el-button>
+            
           </el-row>
         <div class="dailyment-box">
             <template>
@@ -220,8 +221,7 @@ export default {
                     id:-1
                 }
             ],
-            userNameValue:-1,
-            feeSubType:[],
+            userNameValue:'',
             feeSubTypeData:[
                 {
                     id: -1,
@@ -240,7 +240,8 @@ export default {
            
             multipleTable:[],
             token:'',
-            userid:''
+            userid:'',
+            sqrpd:false
         }
     },
     methods:{
@@ -297,6 +298,23 @@ export default {
                 console.log(that.tableData);
             })
         },
+        //判断审核权限
+        judgmentpms(){
+            var Permissions=JSON.parse(localStorage.getItem('Permissions'))
+            console.log(Permissions);
+            if(!Permissions){
+                return
+            }
+            for(var i=0;i<Permissions.length;i++){
+                if(Permissions[i].funid==12){
+                    this.userNameValue=-1;
+                    this.sqrpd=false;
+                }else{
+                    this.userNameValue=this.userid
+                    this.sqrpd=true;
+                }
+            }
+        },
         getTypeData() {
             var url = "/api/Financial/PostPageSearchDailyPaymentPriceTypeData"
             var that = this
@@ -443,9 +461,12 @@ export default {
             });
         }
     },
-    mounted() {
+    created(){
         this.token = JSON.parse(localStorage.getItem('userinif')).token;
         this.userid=JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
+        this.judgmentpms();
+    }, 
+    mounted() {
         this.postPageDailyPaymentList();
         this.getTypeData();
         
@@ -467,6 +488,7 @@ export default {
         padding: 10px;
         box-shadow: 0 0 5px #0005;
         border-radius: 10px;
+        
     }
     /*.search-li:nth-child(1){
         width: 80%;
@@ -543,6 +565,6 @@ export default {
         margin-right: 0;
     }
     .feeType-box .el-select{
-        width: 200px;
+        width: 180px;
     }
 </style>y

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

@@ -444,8 +444,9 @@ export default {
     .items-li .el-form-item{
         margin-bottom: 10px;
     }
-    .dailyedit-box.sub-box{
+    .dailyedit-box .sub-box{
         -ms-user-select: none;
+        font-family:"微软雅黑";
         -khtml-user-select: none;
         -webkit-user-select: none;
         -moz-user-select: none;

+ 33 - 1
src/components/Finance/LncomingBills.vue

@@ -341,6 +341,15 @@ export default {
                 cancelButtonText: '取消',
                 type: 'warning'
             }).then(() => {
+                console.log(index, row,rows)
+                if(row.id==0){
+                    this.$message({
+                        message: '删除成功',
+                        type: 'success'
+                    });
+                    rows.splice(index, 1);
+                    return
+                }
                 var url = "/api/Financial/PostGroupReceivablesDel"
                 var that = this
                 this.$axios({
@@ -361,7 +370,7 @@ export default {
                         });
                         rows.splice(index, 1);
                     }else{
-                        that.$message.error('删除失败!数据异常');
+                        that.$message.error(res.data.msg);
                     }
                 })
             })
@@ -451,6 +460,29 @@ export default {
     height: 100%;
     min-height: 840px;
 }
+.lncomingbill-all .sub-box{
+    -ms-user-select: none;
+    -khtml-user-select: none;
+    -webkit-user-select: none;
+    -moz-user-select: none;
+    user-select: none;
+    font-family:"微软雅黑";
+    background-color: #FFF;
+    background-image: none;
+    border-radius: 4px;
+    border: 1px solid #DCDFE6;
+    -webkit-box-sizing: border-box;
+    box-sizing: border-box;
+    color: #606266;
+    display: inline-block;
+    height: 40px;
+    line-height: 40px;
+    outline: 0;
+    padding: 0 15px;
+    -webkit-transition: border-color .2s cubic-bezier(.645,.045,.355,1);
+    transition: border-color .2s cubic-bezier(.645,.045,.355,1);
+    width: 100%;  
+}
 .lncomingbill-head-li label{
     color: #606266;
     font-size: 15px;

+ 16 - 1
src/components/Finance/Overspendedit.vue

@@ -67,7 +67,7 @@
                         </el-select>
                     </el-form-item>
                     <el-form-item prop="priceType" label="费用类型">
-                        <el-select @change="priceTypechange" v-model="form.priceType" placeholder="请选择费用类型">
+                        <el-select @change="priceTypechanges" v-model="form.priceType" placeholder="请选择费用类型">
                             <el-option v-for="(item,index) in priceType" :key="index" :label="item.name" :value="item.id"></el-option>
                         </el-select>
                     </el-form-item>
@@ -207,8 +207,23 @@ export default {
                 }
             })
         },
+        //费用类型changes
+        priceTypechanges(val){
+            console.log(val)
+            this.form.priceDetailType='',
+            this.priceDetailTypes=[];
+            var priceDetailTypearr=[];
+            for(var i=0;i<this.priceDetailType.length;i++){
+                if(val+''==this.priceDetailType[i].remark){
+                    priceDetailTypearr.push(this.priceDetailType[i])
+                }
+            }
+            this.priceDetailTypes=priceDetailTypearr;
+        },
         //费用类型change
         priceTypechange(val){
+            console.log(val)
+            // this.form.priceDetailType='',
             this.priceDetailTypes=[];
             var priceDetailTypearr=[];
             for(var i=0;i<this.priceDetailType.length;i++){

+ 9 - 1
src/components/Finance/PayReceived.vue

@@ -259,6 +259,14 @@ export default {
                 cancelButtonText: '取消',
                 type: 'warning'
             }).then(() => {
+                if(row.id==0){
+                    this.$message({
+                        message: '删除成功',
+                        type: 'success'
+                    });
+                    rows.splice(index, 1);
+                    return
+                }
                 var url = "/api/Financial/PostAmountReceived_Del"
                 var that = this
                 this.$axios({
@@ -279,7 +287,7 @@ export default {
                         });
                         rows.splice(index, 1);
                     }else{
-                        that.$message.error('删除失败!数据异常');
+                        that.$message.error(res.data.msg);
                     }
                 })
             })

+ 51 - 68
src/components/Finance/RvsReport.vue

@@ -2,17 +2,9 @@
     <div>
         <div class="rvsreport-all">
             <div class="rvsreport-haed">
-                <el-date-picker
-                @change="datechange"
-                style="width:350px"
-                v-model="value2"
-                type="daterange"
-                align="left"
-                unlink-panels
-                range-separator="至"
-                start-placeholder="开始日期"
-                end-placeholder="结束日期"
-                :picker-options="pickerOptions">
+                <el-date-picker @change="datechange" style="width:350px" v-model="value2" type="daterange" align="left"
+                    unlink-panels range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"
+                    :picker-options="pickerOptions">
                 </el-date-picker>
                 <el-button @click="Skeclick" type="primary">生 成</el-button>
             </div>
@@ -20,66 +12,53 @@
                 应收合计:{{total_fr}} 已收合计:{{total_pr}} 余款合计:{{total_balance}}
             </div>
             <div class="rvsreport-table">
-                <el-table
-                :data="tableData"
-                border
-                style="width: 100%">
-                    <el-table-column
-                    prop="no"
-                    label="序号"
-                    width="50">
+                <el-table :data="tableData" style="width: 100%">
+                    <el-table-column label="应收报表">
+                        <el-table-column prop="no" label="序号" width="50">
+                        </el-table-column>
+                        <el-table-column prop="clientUnit" label="单位" width="180">
+                        </el-table-column>
+                        <el-table-column prop="teamName" label="团组名称" width="180">
+                        </el-table-column>
+                        <el-table-column prop="visitDate" label="出访时间" width="100">
+                        </el-table-column>
+                        <el-table-column label="应收总计(应收+超支)">
+                            <el-table-column label="应收" width="150">
+                                <template slot-scope="scope">
+                                    {{scope.row.frPrice+' RMB'}}
+                                </template>
+                            </el-table-column>
+                            <el-table-column label="超支" width="150">
+                                <template slot-scope="scope">
+                                    {{scope.row.extraPrice+' RMB'}}
+                                </template>
+                            </el-table-column>
+                        </el-table-column>
+                        <el-table-column label="已收总计(已收-收款退还)">
+                            <el-table-column label="已收" width="150">
+                                <template slot-scope="scope">
+                                    {{scope.row.prPrice+' RMB'}}
+                                </template>
+                            </el-table-column>
+                            <el-table-column label="收款退还" width="150">
+                                <template slot-scope="scope">
+                                    {{scope.row.refundAmount+' RMB'}}
+                                </template>
+                            </el-table-column>
+                        </el-table-column>
+                        <el-table-column label="余款" width="150">
+                            <template slot-scope="scope">
+                                {{scope.row.balPrice+' RMB'}}
+                            </template>
+                        </el-table-column>
+                        <el-table-column prop="prClient" label="收款单位" width="180">
+                        </el-table-column>
+                        <el-table-column prop="schedule" label="收款进度">
+                        </el-table-column>
                     </el-table-column>
-                    <el-table-column
-                    prop="clientUnit"
-                    label="单位"
-                    width="180">
-                    </el-table-column>
-                    <el-table-column
-                    prop="teamName"
-                    label="团组名称"
-                    width="180">
-                    </el-table-column>
-                    <el-table-column
-                    prop="visitDate"
-                    label="出访时间"
-                    width="180">
-                    </el-table-column>
-                    <el-table-column
-                    prop="frPrice"
-                    label="应收"
-                    width="180">
-                        <template slot-scope="scope">
-                            {{scope.row.frPrice+' RMB'}}
-                        </template>
-                    </el-table-column>
-                    <el-table-column
-                    prop="prPrice"
-                    label="已收"
-                    width="180">
-                        <template slot-scope="scope">
-                            {{scope.row.prPrice+' RMB'}}
-                        </template>
-                    </el-table-column>
-                    <el-table-column
-                    prop="balPrice"
-                    label="余款"
-                    width="180">
-                        <template slot-scope="scope">
-                            {{scope.row.balPrice+' RMB'}}
-                        </template>
-                    </el-table-column>
-                    <el-table-column
-                    prop="prClient"
-                    label="收款单位"
-                    width="180">
-                    </el-table-column>
-                    <el-table-column
-                    prop="schedule"
-                    label="收款进度">
-                    </el-table-column>
-                    
                 </el-table>
             </div>
+            
         </div>
     </div>
 </template>
@@ -213,4 +192,8 @@ export default {
     font-weight:600 ;
     margin-bottom: 5px;
 }
+.rvsreport-table .el-table th.el-table__cell>.cell {
+    padding-right: 5px;
+    padding-left: 5px;
+}
 </style>

+ 4 - 5
src/components/Finance/Sendack.vue

@@ -132,7 +132,7 @@
                         </el-form-item>
                         <el-form-item label="费用金额" prop="price" :label-width="formLabelWidth">
                             <el-input-number class="fyjeinput" :controls="false" :precision="2" v-model="form.price"></el-input-number>
-                            <el-select filterable class="fyjeselect" v-model="form.currencyId" placeholder="请选择币种">
+                            <el-select disabled filterable class="fyjeselect" v-model="form.currencyId" placeholder="请选择币种">
                                 <el-option v-for="(item,index) in currencyDatas" :key="index" :label="item.currencyCode" :value="item.currencyId">
                                     <span>{{item.currencyCode}}</span>
                                     <span>{{item.currencyName}}</span>
@@ -192,7 +192,7 @@ export default {
                 ccpId:0,
                 priceName:'',//费用名称
                 price:0,//费用
-                currencyId:0,//币种Id
+                currencyId:836,//币种Id
                 currencyCode:'',//币种Code
                 payee:'',//收款方
                 payDId:72,//支付方式Id
@@ -352,7 +352,6 @@ export default {
                             duration:0
                         });
                     }
-                    that.form.currencyId=res.data.data.teamRates[0].currencyId
                 }else{
                     that.$message.error(res.data.msg);
                 }
@@ -521,7 +520,7 @@ export default {
                 ccpId:0,
                 priceName:'',//费用名称
                 price:0,//费用
-                currencyId:0,//币种Id
+                currencyId:836,//币种Id
                 currencyCode:'',//币种Code
                 payee:'',//收款方
                 payDId:72,//支付方式Id
@@ -618,7 +617,7 @@ export default {
                 ccpId:0,
                 priceName:'',//费用名称
                 price:0,//费用
-                currencyId:0,//币种Id
+                currencyId:836,//币种Id
                 currencyCode:'',//币种Code
                 payee:'',//收款方
                 payDId:72,//支付方式Id

+ 4 - 2
src/components/OP/CarTouristGuideGrounContent.vue

@@ -252,7 +252,7 @@ export default {
             id: '',
             diId: '',
             loading: true,
-            currency: 836,
+            currency: 0,
             countCost: 0,
             delegationInfo: {},
             delegationInfoList: [],//团组下拉框
@@ -427,7 +427,9 @@ export default {
                 console.log(res)
                 if (res.data.code == 200) {
                     that.currencyList = res.data.data.teamRates;
-                    that.currency = that.currencyList[0].currencyId;
+                    if(that.currency==0){
+                        that.currency = that.currencyList[0].currencyId;
+                    }
                 }
             })
         },

+ 234 - 69
src/components/OP/EntryDetails.vue

@@ -94,7 +94,7 @@
                 </div>
                 <div class="Entry-form-li">
                     <div class="Entry-li-lables">
-                        <el-checkbox v-model="choiceTwo"></el-checkbox>
+                        <!-- <el-checkbox v-model="choiceTwo"></el-checkbox> -->
                         <div class="li-lable">二、国际旅费合计:</div>
                         <div style="display: flex;">
                             <div class="li-lable">
@@ -215,6 +215,13 @@
                             <el-table-column
                             prop="address"
                             label="操 作">
+                                <template slot-scope="scope">
+                                    <el-button
+                                    style="color: #fff;"
+                                    size="mini"
+                                    type="danger"
+                                    @click="deleteRow(scope.$index,scope.row,quarterageData,1 )">删除</el-button>
+                                </template>
                             </el-table-column>
                         </el-table>
                     </div>
@@ -298,6 +305,13 @@
                             <el-table-column
                             prop="address"
                             label="操 作">
+                                <template slot-scope="scope">
+                                    <el-button
+                                    style="color: #fff;"
+                                    size="mini"
+                                    type="danger"
+                                    @click="deleteRow(scope.$index,scope.row,boardWagesData,2 )">删除</el-button>
+                                </template>
                             </el-table-column>
                         </el-table>
                     </div>
@@ -381,6 +395,13 @@
                             <el-table-column
                             prop="address"
                             label="操 作">
+                                <template slot-scope="scope">
+                                    <el-button
+                                    style="color: #fff;"
+                                    size="mini"
+                                    type="danger"
+                                    @click="deleteRow(scope.$index,scope.row,miscellaneousFeeData,3 )">删除</el-button>
+                                </template>
                             </el-table-column>
                         </el-table>
                     </div>
@@ -458,29 +479,36 @@
                             label="费用小计"
                             width="180">
                                 <template slot-scope="scope">
-                                    <div class="sub-boxs">{{scope.row.subTotal|numFilter}}</div>
+                                    <div class="sub-boxs">{{scope.row.subTotal|numFilter}}</div>&nbsp;CNY
                                 </template>
                             </el-table-column>
                             <el-table-column
                             prop="address"
                             label="操 作">
+                                <template slot-scope="scope">
+                                    <el-button
+                                    style="color: #fff;"
+                                    size="mini"
+                                    type="danger"
+                                    @click="deleteRow(scope.$index,scope.row,trainingExpenseData,4 )">删除</el-button>
+                                </template>
                             </el-table-column>
                         </el-table>
                     </div>
                 </div>
                 <div class="Entry-form-li">
                     <div class="Entry-li-lables">
-                        <div class="li-lable">七、费用总计:</div>
+                        <div class="li-lable">费用总计:</div>
                         <div style="display: flex;">
                             <div class="li-lable">
-                                <el-checkbox style="margin-right: -10px;" v-model="airJJC_Checked"></el-checkbox>
+                                <!-- <el-checkbox style="margin-right: -10px;" v-model="airJJC_Checked"></el-checkbox> -->
                                 <label>(经济舱)</label>
                                 <div class="sub-boxs">{{jjctotal|numFilter}}</div>
                                 <span>元/人</span>
                             </div>
                             &nbsp;&nbsp;&nbsp;&nbsp;                          
                             <div class="li-lable">
-                                <el-checkbox style="margin-right: -10px;" v-model="airGWC_Checked"></el-checkbox>
+                                <!-- <el-checkbox style="margin-right: -10px;" v-model="airGWC_Checked"></el-checkbox> -->
                                 <label>(公务舱)</label>
                                 <div class="sub-boxs">{{gwctotal|numFilter}}</div>
                                 <span>元/人</span>
@@ -493,6 +521,9 @@
     </div>
 </template>
 <script>
+
+import { Decimal } from 'decimal.js'
+
 export default {
     data() {
         return {
@@ -744,8 +775,8 @@ export default {
                     that.DomesticFees.insurance=res.data.data.safe;
                     that.DomesticFees.ticketsExhibitionL=res.data.data.ticket;
                     //国际旅费
-                    that.TotalExpenses.EconomyClass=res.data.data.outsideJJPay;
-                    that.TotalExpenses.BusinessClass=res.data.data.outsaideGWPay;
+                    that.TotalExpenses.EconomyClass=res.data.data.airJJ;
+                    that.TotalExpenses.BusinessClass=res.data.data.airGW;
                     that.TotalExpenses.TravellingExpenses=res.data.data.cityTranffic;
 
                     //是否计算Checkbox
@@ -1039,42 +1070,6 @@ export default {
             var url = "/api/Groups/PostEnterExitCostOperate"
             var that = this
             console.log(that.value)
-            var data={
-                    portType: 1,
-                    userId: that.userId,
-                    id: that.storageid,
-                    diId: that.value,
-                    choiceOne: that.choiceOne?1:0,
-                    insidePay:that.DomesticFees.total,
-                    visa: that.DomesticFees.visafees,
-                    visaRemark: that.DomesticFees.visafeesDescription,
-                    yiMiao: that.DomesticFees.vaccinefees,
-                    heSuan: that.DomesticFees.nucleicfees,
-                    service: that.DomesticFees.serviceCharge,
-                    ticket: that.DomesticFees.ticketsExhibitionL,
-                    safe: that.DomesticFees.insurance,
-                    choiceTwo: that.choiceTwo?1:0,
-                    sumJJC:that.sumJJC?1:0,
-                    sumGWC:that.sumGWC?1:0,
-                    outsideJJPay:that.TotalExpenses.EconomyClasstotal,
-                    outsaideGWPay:this.TotalExpenses.BusinessClasstotal,
-                    airJJ:that.jjctotal,
-                    airGW:that.gwctotal,
-                    cityTranffic: that.TotalExpenses.TravellingExpenses,
-                    currencys: that.currencys,
-                    choiceThree:that.choiceThree?1:0,
-                    quarterageData: arrthre,
-                    choiceFour:that.choiceFour?1:0,
-                    boardWagesData: arrfour,
-                    choiceFive:that.choiceFive?1:0,
-                    miscellaneousFeeData:arrfive,
-                    choiceSix:that.choiceSix?1:0,
-                    trainingExpenseData:arrsix,
-                    airJJC_Checked:that.airJJC_Checked?1:0,
-                    airGWC_Checked:that.airGWC_Checked?1:0,
-                }
-                console.log(data)
-                console.log(JSON.stringify (data))
             this.$axios({
                 method: 'post',
                 url: url,
@@ -1099,10 +1094,10 @@ export default {
                     choiceTwo: that.choiceTwo?1:0,
                     sumJJC:that.sumJJC?1:0,
                     sumGWC:that.sumGWC?1:0,
-                    outsideJJPay:that.jjctotal,
-                    outsaideGWPay:that.gwctotal,
-                    airJJ:that.TotalExpenses.EconomyClasstotal,
-                    airGW:that.TotalExpenses.BusinessClasstotal,
+                    outsideJJPay:that.TotalExpenses.EconomyClasstotal,
+                    outsaideGWPay:that.TotalExpenses.BusinessClasstotal,
+                    airJJ:that.TotalExpenses.EconomyClass,
+                    airGW:that.TotalExpenses.BusinessClass,
                     cityTranffic: that.TotalExpenses.TravellingExpenses,
                     currencys: that.currencys,
                     choiceThree:that.choiceThree?1:0,
@@ -1173,63 +1168,235 @@ export default {
             }).then(function (res) {
                 console.log(res)
                 if(res.data.code==200){
-                    window.open(res.data.data.url)
+                    that.$message({
+                        type: 'success',
+                        message: res.data.msg
+                    });
+                    window.open(res.data.data.url);
+                }else{
+                    that.$message.error(res.data.msg);
                 }
             })
-        }
+        },
+        calculation(){
+            var jnfy
+            var jjcxj
+            var gwcxj
+            var zsf
+            var hsf
+            var gzf
+            var pxf
+            if (this.choiceOne == true) {
+                jnfy=this.DomesticFees.total;
+            } else {
+                jnfy= 0;
+            }
+            
+            if (this.choiceThree == true) {
+                zsf=this.TotalAccommodationFee;
+            } else {
+                zsf= 0;
+            }
+            if (this.choiceFour == true) {
+                hsf=this.TotalMeals;
+            } else {
+                hsf= 0;
+            }
+            if (this.choiceFive == true) {
+                gzf=this.TotalMiscellaneous;
+            } else {
+                gzf= 0;
+            }
+            if (this.choiceSix == true) {
+                pxf=this.trainingExpense;
+            } else {
+                pxf= 0;
+            }
+            if (this.sumJJC == true) {
+                jjcxj=this.TotalExpenses.EconomyClasstotal;
+                this.jjctotal=jnfy+jjcxj+zsf+hsf+gzf+pxf;
+            } else {
+                jjcxj= 0;
+                this.jjctotal=0;
+            }
+            if (this.sumGWC == true) {
+                gwcxj=this.TotalExpenses.BusinessClasstotal;
+                this.gwctotal=jnfy+gwcxj+zsf+hsf+gzf+pxf;
+            } else {
+                gwcxj= 0;
+                this.gwctotal=0;
+            }
+            
+            
+            
+        },
+        //删除
+        deleteRow(index,row,rows,val){
+            console.log(row.id);
+            if(row.id==0){
+                this.$message({
+                    type: 'success',
+                    message: '删除成功'
+                });
+                rows.splice(index, 1);
+                if(val==1){
+                    this.TotalAccommodationFee=0;
+                    for(let a=0;a<rows.length;a++){
+                        this.TotalAccommodationFee+=rows[a].subTotal;
+                    }
+                }
+                if(val==2){
+                    this.TotalMeals=0;
+                    for(let a=0;a<rows.length;a++){
+                        this.TotalMeals+=rows[a].subTotal;
+                    }
+                }
+                if(val==3){
+                    this.TotalMiscellaneous=0;
+                    for(let a=0;a<rows.length;a++){
+                        this.TotalMiscellaneous+=rows[a].subTotal;
+                    }
+                }
+                if(val==4){
+                    this.trainingExpense=0;
+                    for(let a=0;a<rows.length;a++){
+                        this.trainingExpense+=rows[a].subTotal;
+                    }
+                }
+                return;
+            }
+            var url = "/api/Groups/PostEnterExitCostSubItemDel"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + that.token
+                },
+                data:{
+                    portType: 1,
+                    id: row.id,
+                    deleteUserId: that.userId
+                }
+            }).then(function (res) {
+                console.log(res)
+                if(res.data.code==200){
+                    that.$message({
+                        type: 'success',
+                        message: res.data.msg
+                    });
+                    rows.splice(index, 1);
+                    if(val==1){
+                        that.TotalAccommodationFee=0;
+                        for(let a=0;a<rows.length;a++){
+                            that.TotalAccommodationFee+=rows[a].subTotal;
+                        }
+                    }
+                    if(val==2){
+                        that.TotalMeals=0;
+                        for(let a=0;a<rows.length;a++){
+                            that.TotalMeals+=rows[a].subTotal;
+                        }
+                    }
+                    if(val==3){
+                        that.TotalMiscellaneous=0;
+                        for(let a=0;a<rows.length;a++){
+                            that.TotalMiscellaneous+=rows[a].subTotal;
+                        }
+                    }
+                    if(val==4){
+                        that.trainingExpense=0;
+                        for(let a=0;a<rows.length;a++){
+                            that.trainingExpense+=rows[a].subTotal;
+                        }
+                    }
+                }else{
+                    that.$message.error(res.data.msg);
+                }
+            })
+        },
     },
     filters: {
         numFilter (value) {
             // 截取当前数据到小数点后两位
-            let realVal = parseFloat(value).toFixed(2)
+            let realVal = new Decimal(value).toFixed(2)
             return realVal
         }
     },
     watch: {
+        choiceOne(val){//境内费用(其他费用)选择框
+            this.calculation();
+        },
+        choiceThree(val){//住宿费合计选择框
+            this.calculation();
+        },
+        choiceFour(val){//伙食费合计选择框
+            this.calculation();
+        },
+        choiceFive(val){//公杂费合计选择框
+            this.calculation();
+        },
+        choiceSix(val){//培训费用选择框
+            this.calculation();
+        },
+        sumJJC(val){//经济舱小计选择框
+            this.calculation();
+        },
+        sumGWC(val){//公务舱小计选择框
+            this.calculation();
+        },
         'DomesticFees.total':{
             handler(newVal,oldVal) {
-                this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
-                this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
             },
         },
         TotalAccommodationFee:{
             handler(newVal,oldVal) {
-                this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
-                this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
             },
             
         },
         TotalMeals:{
             handler(newVal,oldVal) {
-                this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
-                this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
             },
         },
         TotalMiscellaneous:{
             handler(newVal,oldVal) {
-                this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
-                this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
             },
         },
         trainingExpense:{
             handler(newVal,oldVal) {
-                this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
-                this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
             },
         },
         'TotalExpenses.EconomyClasstotal':{
             handler(newVal,oldVal) {
-                this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
-                this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
             },
         },
         'TotalExpenses.BusinessClasstotal':{
             handler(newVal,oldVal) {
-                this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
-                this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
+                this.calculation();
+                // this.jjctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.EconomyClasstotal;
+                // this.gwctotal=this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal;
                 // console.log(this.DomesticFees.total+this.TotalAccommodationFee+this.TotalMeals+this.TotalMiscellaneous+this.trainingExpense+this.TotalExpenses.BusinessClasstotal)
             },
         },
+        
         //境内费用非空处理
         DomesticFees: {
             handler(newVal, oldVal) {
@@ -1277,7 +1444,6 @@ export default {
         this.userId=JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
         this.GetEnterExitCostDataSource();
         this.GetNationalTravelFeeData();
-        console.log(this.currencys)
     }
 }
 </script>
@@ -1305,6 +1471,7 @@ export default {
 }
 .Entry-li-inif{
     display: flex;
+    align-items: center;
     width: 100%;
     border-top:1px solid #ebeef5;
     padding: 5px 0;
@@ -1336,10 +1503,7 @@ export default {
     font-size: 14px;
     color: #606266;
 }
-.Entry-li-inif span{
-    font-size: 14px;
-    color: #606266;
-}
+
 .Entry-form .redzhu{
     font-size: 14px;
     color: red;
@@ -1350,6 +1514,7 @@ export default {
     -webkit-user-select: none;
     -moz-user-select: none;
     font-size: 12px;
+    font-family:"微软雅黑";
     user-select: none;
     background-color: #FFF;
     background-image: none;

+ 9 - 4
src/components/OP/OpInvitationOfficialActivities.vue

@@ -349,13 +349,13 @@ export default {
                 payMoney:0,
                 paymentCurrency:'',
                 eventsCost:0,
-                eventsCurrency:836,
+                eventsCurrency:'',
                 inviteCost: 0,
-                inviteCurrency: 836,
+                inviteCurrency: '',
                 translateCost:0,
-                translateCurrency: 836,
+                translateCurrency: '',
                 sendCost: 0,
-                sendCurrency:836,
+                sendCurrency:'',
                 isGoOfficaiaBussiness: 0,
                 createUserId: 0,
                 remark: '',
@@ -617,6 +617,11 @@ export default {
         },
         //币种不同计算为人民币
         computerenminbi(){
+            if(this.InvitationOfficialActivities.inviteCurrency==''||this.InvitationOfficialActivities.translateCurrency==''||this.InvitationOfficialActivities.sendCurrency==''){
+                this.InvitationOfficialActivities.inviteCurrency=this.InvitationOfficialActivities.eventsCurrency;
+                this.InvitationOfficialActivities.translateCurrency=this.InvitationOfficialActivities.eventsCurrency;
+                this.InvitationOfficialActivities.sendCurrency=this.InvitationOfficialActivities.eventsCurrency;
+            }
             var eventsRate=0;
             var inviteRate=0;
             var translateRate=0;

+ 1 - 1
src/components/child/Generalindex.vue

@@ -115,7 +115,7 @@
                             <i class="iconfont icon-dijie"></i>
                         </div>
                     </div>
-                    <div class="sources-li" @click="shortcutlink('/DeleClient')">
+                    <div class="sources-li">
                         <div class="sources-tlite">
                             <p>策划活动资源</p>
                         </div>

+ 8 - 18
src/components/home.vue

@@ -23,14 +23,16 @@
               <div class="news-box" v-for="(item,index) in msglist" :key="index">
                 <div class="news-box-list">
                   <div class="news-list-hade">
-                    <div>{{item.title}}</div>
-                    <div>所属部门: {{item.issuerDep}}</div>
+                    <div v-if="type==1021">系统通知</div>
+                    <div v-if="type!=1021">{{item.title}}</div>
+                    <div v-if="type!=1021">所属部门: {{item.issuerDep}}</div>
                   </div>
                   <div class="news-list-content" v-html="item.content">
                   </div>
                   <div class="news-list-posts">
-                    <div>发布人: {{item.issuerUser}}</div>
-                    <div>发布时间: {{item.releaseTime}}</div>
+                    <div v-if="type==1020">发布人: {{item.issuerUser}}</div>
+                    <div v-if="type==1020">发布时间: {{item.releaseTime}}</div>
+                    <div v-if="type!=1020">发送时间: {{item.releaseTime}}</div>
                   </div>
                   <div v-if="type==1020" class="news-list-btn" >
                     <el-button @click="DeleMsg(index,item)" size="mini" v-if="item.isRead==0" type="primary">前往任务</el-button>
@@ -382,10 +384,10 @@ export default {
     },
     toURLs(val, item) {
       console.log(val)
-      // localStorage.setItem('userinif', JSON.stringify(res.data.data));
       console.log(item)
       localStorage.setItem("indexs", val);
       localStorage.setItem("innhtml", item.pageList[0].pageName);
+      localStorage.setItem("Permissions", JSON.stringify(item.pageAuth));
       this.$router.push({ path: "/home" + item.pageList[0].webUrl });
       document.querySelector(".header-title").innerHTML = item.pageList[0].pageName;
     },
@@ -394,21 +396,9 @@ export default {
       console.log(item)
       localStorage.setItem("indexs", val);
       localStorage.setItem("innhtml", item.pageName);
+      localStorage.setItem("Permissions", JSON.stringify(item.pageAuth));
       this.$router.push({ path: "/home" + item.webUrl });
       document.querySelector(".header-title").innerHTML = item.pageName;
-      // if (val == "2") {
-      //   this.$router.push({ path: "/home/test" });
-      //   document.querySelector(".header-title").innerHTML = "企业数据";
-      // } else if (val == "3") {
-      //   this.$router.push({ path: "/home/Advancement" });
-      //   document.querySelector(".header-title").innerHTML = "主业务加价设置";
-      // } else if (val == "1") {
-      //   this.$router.push({ path: "/home/index" });
-      //   document.querySelector(".header-title").innerHTML = "首页";
-      // } else if (val == "4") {
-      //   this.$router.push({ path: "/home/Statistics" });
-      //   document.querySelector(".header-title").innerHTML = "数据统计";
-      // }
     },
     radioChange(val) {
       var radiobox = document.querySelectorAll(".radiobox");

+ 5 - 1
src/components/statistics/Reportstbale.vue

@@ -12,11 +12,15 @@
                         <label>团 号:</label>
                         <span v-if="this.groupInfo.tourCode!=''">{{groupInfo=={}?'暂无':groupInfo.tourCode==""?'暂无':groupInfo.tourCode}}</span>
                     </div>
+                    <div class="reportsbale-info-li">
+                        <label>团组名:</label>
+                        <span v-if="this.groupInfo.teamName!=''">{{groupInfo=={}?'暂无':groupInfo.teamName==""?'暂无':groupInfo.teamName}}</span>
+                    </div>
                     <div class="reportsbale-info-li">
                         <label>客 户:</label>
                         <span>{{groupInfo=={}?'暂无':groupInfo.clientName==""?'暂无':groupInfo.clientName}}</span>
                     </div>
-                    <div class="senreportsbaledack-info-li">
+                    <div class="reportsbale-info-li">
                         <label>出访国家:</label>
                         <span>{{groupInfo=={}?'暂无':groupInfo.visitCountry==""?'暂无':groupInfo.visitCountry}}</span>
                     </div>