Kaynağa Gözat

Merge branch 'master' of http://132.232.92.186:3000/XinXiBu/oa-system

liuhj 1 yıl önce
ebeveyn
işleme
ae6a89021d
1 değiştirilmiş dosya ile 63 ekleme ve 19 silme
  1. 63 19
      src/components/Finance/Cost.vue

+ 63 - 19
src/components/Finance/Cost.vue

@@ -22,6 +22,8 @@
                         </el-select>
                     </div>
                     <div class="ser-btn-li">
+                        <el-button size="small" :type="blackCodeIsTrue ? 'primary' : 'danger'"
+                            @click="importBlackCode">导入机票行程数据</el-button>
                         <el-button size="small" type="primary">导入收款账单</el-button>
                         <el-button size="small" type="primary" @click="GetPriceCheckWord">生成收款账单</el-button>
                         <el-button size="small" type="primary" @click="GetClientWord">导出客户报表</el-button>
@@ -317,10 +319,14 @@
                                         :rows="6" placeholder="请输入内容" v-model="scope.row[item.prop]"></el-input>
                                 </div>
                                 <div class="accon-box" v-else-if="item.label == 'ACCO N'">
-                                    <el-input @focus="acconinput(scope.row[item.prop], scope.$index)" @blur="acconblur(scope.$index)" @input="acconinput(scope.row[item.prop], scope.$index)" style="position: relative;" type="textarea" :rows="6" placeholder="请输入内容"
+                                    <el-input @focus="acconinput(scope.row[item.prop], scope.$index)"
+                                        @blur="acconblur(scope.$index)"
+                                        @input="acconinput(scope.row[item.prop], scope.$index)"
+                                        style="position: relative;" type="textarea" :rows="6" placeholder="请输入内容"
                                         v-model="scope.row[item.prop]"></el-input>
                                     <div class="accon-ul">
-                                        <div @click="acconclick(item,scope.$index)" v-for="(item,index) in acconarrs" :key="index" class="accon-li">{{item}}</div>
+                                        <div @click="acconclick(item, scope.$index)" v-for="(item, index) in acconarrs"
+                                            :key="index" class="accon-li">{{ item }}</div>
                                     </div>
                                 </div>
                                 <div v-else>
@@ -2646,6 +2652,8 @@ export default {
             acconarr:[],
             acconarrs:[],
             isShare:0,
+            blackCodeIsTrue: false
+
         };
     },
     watch: {
@@ -2687,30 +2695,30 @@ export default {
         capslk(val, index) {
             this.tableData[index].itin = val.toUpperCase()
         },
-        acconblur(index){
-            setTimeout(() => { 
+        acconblur(index) {
+            setTimeout(() => {
                 document.querySelectorAll('.accon-ul')[index].classList.remove('accons-ul')
-            },150)
+            }, 150)
         },
-        acconinput(val, index){
-            this.acconarr=[];
-            this.acconarrs=[];
+        acconinput(val, index) {
+            this.acconarr = [];
+            this.acconarrs = [];
             console.log(val);
             console.log(index);
-            for(var i=0;i<this.tableData.length;i++){
+            for (var i = 0; i < this.tableData.length; i++) {
                 this.acconarr.push(this.tableData[i].accon)
             }
-            for(var j=0;j<this.acconarr.length;j++){
-                if(this.acconarr[j].includes(val)){
+            for (var j = 0; j < this.acconarr.length; j++) {
+                if (this.acconarr[j].includes(val)) {
                     this.acconarrs.push(this.acconarr[j])
-                } 
+                }
             }
-            this.acconarrs=Array.from(new Set(this.acconarrs));
+            this.acconarrs = Array.from(new Set(this.acconarrs));
             console.log(this.acconarrs)
             document.querySelectorAll('.accon-ul')[index].classList.add('accons-ul')
         },
-        acconclick(val,index){
-            this.tableData[index].accon=val;
+        acconclick(val, index) {
+            this.tableData[index].accon = val;
         },
         getSummaries(param) {
             var that = this;
@@ -3560,6 +3568,7 @@ export default {
                         that.ShowBaoPi = [];
                     }
 
+                    that.blackCodeIsTrue = resp.data.data.blackCodeIsTrue;
                     that.GivePeopleNumber();
 
                 }
@@ -5472,6 +5481,37 @@ export default {
                 }
             }
         },
+        importBlackCode() {
+            var url = "/api/Groups/CraeteGroupCostTravel"
+            var that = this
+            this.$axios({
+                method: 'post',
+                url: url,
+                headers: {
+                    Authorization: 'Bearer ' + that.token
+                },
+                data: {
+                    "diid": this.diid,
+                }
+            }).then(function (resp) {
+                if (resp.data.code == 200) {
+                    console.log('CraeteGroupCostTravelResponse', resp.data.data);
+                    that.blackCodeIsTrue = resp.data.data.blackCodeIsTrue;
+                    that.tableData = resp.data.data.groupCost;
+                    for (var i = 0; i < that.tableData.length; i++) {
+                        for (var prop in that.tableData[i]) {
+                            console.log(that.tableData[i][prop]);
+                            if (that.tableData[i][prop] == 0) {
+                                that.tableData[i][prop] = ''
+                            }
+                        }
+                    }
+                } else {
+                    that.$message.error("黑屏代码有误!" + resp.data.msg);
+                }
+            })
+
+        }
     },
     updated() {
         this.$emit('transfer', true)
@@ -5815,17 +5855,21 @@ export default {
     border-radius: 5px;
     display: none;
 }
-.accon-box .accons-ul{
+
+.accon-box .accons-ul {
     display: inline-block;
 }
-.accon-li{
+
+.accon-li {
     padding: 10px 5px;
     text-align: left;
 }
-.accon-li:hover{
+
+.accon-li:hover {
     background-color: #0001;
 }
-.accon-ul:last-child{
+
+.accon-ul:last-child {
     bottom: 15px;
 }
 </style>