Browse Source

Merge branch 'dev_v2' of https://gogs.zfire.top/zfire-front/supply-front into dev_v2

zh 2 years ago
parent
commit
b3ebadece5

+ 9 - 3
package-lock.json

@@ -4267,9 +4267,9 @@
       "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ=="
     },
     "@zjlib/element-plugins": {
-      "version": "2.1.23",
-      "resolved": "http://121.41.110.30:4873/@zjlib%2felement-plugins/-/element-plugins-2.1.23.tgz",
-      "integrity": "sha512-WCNDrvQoQK7R9mQH3cXqO9RVD4fLtFLLx9zmsFoDZaZqs+3OqGvcnlbs3UKjdvdbw6t/FndFmhFd2OjuIB9rnQ==",
+      "version": "2.2.0",
+      "resolved": "http://121.41.110.30:4873/@zjlib%2felement-plugins/-/element-plugins-2.2.0.tgz",
+      "integrity": "sha512-Vmus4Pm+eLT5s3r9tK19ewB+baAz0DVLY5oQWCKa80Kd2mO2oqqrAET4neE3znm2d5g8e01kbgHVqUZL1nAN3A==",
       "requires": {
         "@turf/turf": "^6.5.0",
         "@vuemap/vue-amap": "^0.1.12",
@@ -4282,6 +4282,7 @@
         "element-ui": "^2.15.10",
         "file-saver": "^2.0.5",
         "js-cookie": "2.2.0",
+        "js-md5": "^0.7.3",
         "normalize.css": "7.0.0",
         "nprogress": "0.2.0",
         "nrm": "^1.2.5",
@@ -11672,6 +11673,11 @@
       "resolved": "https://registry.npm.taobao.org/js-cookie/download/js-cookie-2.2.0.tgz",
       "integrity": "sha1-Gywnmm7s44ChIWi5JIUmWzWx7/s="
     },
+    "js-md5": {
+      "version": "0.7.3",
+      "resolved": "http://121.41.110.30:4873/js-md5/-/js-md5-0.7.3.tgz",
+      "integrity": "sha512-ZC41vPSTLKGwIRjqDh8DfXoCrdQIyBgspJVPXHBGu4nZlAEvG3nf+jO9avM9RmLiGakg7vz974ms99nEV0tmTQ=="
+    },
     "js-message": {
       "version": "1.0.7",
       "resolved": "https://registry.npmjs.org/js-message/-/js-message-1.0.7.tgz",

+ 1 - 1
package.json

@@ -15,7 +15,7 @@
     "test:ci": "npm run lint && npm run test:unit"
   },
   "dependencies": {
-    "@zjlib/element-plugins": "^2.1.23",
+    "@zjlib/element-plugins": "^2.2.0",
     "axios": "0.18.1",
     "clipboard": "^2.0.8",
     "concurrent-tasks": "^1.0.7",

+ 1 - 8
src/components/template/template-page-1.vue

@@ -527,14 +527,7 @@ export default {
         background: 'rgba(0, 0, 0, 0.7)'
       })
       this.evens[0][0].loading = true
-
-      var querylist = []
-      this.$refs.zjpage.$refs.dynamicCondition.queryData.map(({ param, compare, value }) => {
-        if (param && compare && value !== undefined && (value instanceof Array ? value.length : value !== '')) {
-          querylist.push({ param, compare, value })
-        }
-      })
-
+      var querylist = JSON.parse(JSON.stringify(this.$refs.zjpage.$refs.dynamicCondition.queryData))
       this.exportList(
         {
           ...this.parameter,

+ 115 - 5
src/views/finance/rebate_list.vue

@@ -11,7 +11,23 @@
       :tableEvents="tableEvents"
       :columnParsing="columnParsing"
       :replaceOrNotMap="false"
+      :fieldBeansHook="fieldBeansHook"
     >
+      <div slot="moreSearch">
+        <div class="worker">
+          <div class="worker_left">工单状态</div>
+          <div class="worker_right">
+            <el-button
+              v-for="(item, index) in workerState"
+              :key="index"
+              :type="examineStatus == item.value ? 'primary' : null"
+              @click="handleOrderStatusParam(item.value, index)"
+              size="mini"
+              >{{ item.label }}</el-button
+            >
+          </div>
+        </div>
+      </div>
     </template-page>
     <div class="app-container" v-if="showPage == 2">
       <RebateListApply
@@ -116,6 +132,53 @@ export default {
   },
   data() {
     return {
+      workerState: [
+        {
+          label: '全部',
+          value: ''
+        },
+        {
+          label: '初审不通过',
+          value: 'FAIL_ONE'
+        },
+        {
+          label: '驳回',
+          value: 'REJECT'
+        },
+        {
+          label: '已确认未复核',
+          value: 'OK_ONE_AND_CONFIRM'
+        },
+        {
+          label: '弃审',
+          value: 'ABANDON'
+        },
+        {
+          label: '保存',
+          value: 'SAVE'
+        },
+        {
+          label: '关闭',
+          value: 'CLOSE'
+        },
+        {
+          label: '待审核',
+          value: 'WAIT'
+        },
+        {
+          label: '审核通过',
+          value: 'OK'
+        },
+        {
+          label: '初审不通过',
+          value: 'FAIL'
+        },
+        {
+          label: '初审通过',
+          value: 'OK_ONE'
+        }
+      ],
+
       deleList: [],
       currentPage: 1, // 当前页码
       pageSize: 10, // 每页数量
@@ -157,7 +220,8 @@ export default {
         'selection-change': this.selectionChange
       },
       recordSelected: [],
-      examineStatus: ''
+      examineStatus: '',
+      customerIsConfirm: ''
     }
   },
   computed: {
@@ -217,6 +281,7 @@ export default {
               click: () => {
                 if (!this.deleList.length) {
                   this.$message.info('请选择数据!')
+
                   return
                 }
                 this.$confirm('确定执行批量审核吗?', '提示', {
@@ -236,7 +301,8 @@ export default {
           [
             {
               isRole:
-                this.$checkBtnRole('examine', this.$route.meta.roles) && this.examineStatus === 'OK_ONE_AND_CONFIRM',
+                this.$checkBtnRole('examine', this.$route.meta.roles) &&
+                (this.examineStatus === 'OK_ONE_AND_CONFIRM' || this.customerIsConfirm === 'true'),
               name: '批量复核',
               click: () => {
                 if (!this.deleList.length) {
@@ -281,11 +347,27 @@ export default {
     }
   },
   methods: {
+    handleOrderStatusParam(value, index) {
+      this.examineStatus = value
+      this.$refs.pageRef.refreshList()
+    },
     // 列表请求函数
     getList(p) {
-      var item = p.params.find(item => item.param === 'a.examine_status')
-      this.examineStatus = item?.value || ''
-      return rebateOrderList({ ...p })
+      // var item = p.params.find(item => item.param === 'a.examine_status')
+      // this.examineStatus = item?.value || ''
+      var item2 = p.params.find(item => item.param === 'a.customer_is_confirm')
+      this.customerIsConfirm = item2?.value || ''
+
+      let params = {
+        moduleId: p.moduleId,
+        orderBy: p.orderBy,
+        pageNum: p.pageNum,
+        pageSize: p.pageSize,
+        examineStatus: this.examineStatus,
+        params: [...p.params]
+      }
+
+      return rebateOrderList(params)
     },
     // 列表导出函数
     exportList: rebateOrderListExport,
@@ -298,6 +380,15 @@ export default {
       const res = data.map(v => v.rebateOrderId)
       this.deleList = res
     },
+    fieldBeansHook(val) {
+      val.map(item => {
+        if (~['examine_status'].indexOf(item.colName)) {
+          item.isQuery = false
+        }
+      })
+
+      return val
+    },
     operation() {
       return (h, { row, index, column }) => {
         return (
@@ -490,6 +581,25 @@ export default {
 }
 </script>
 <style lang="scss" scoped>
+.worker {
+  display: flex;
+  justify-content: space-between;
+  .worker_left {
+    font-size: 12px;
+    font-weight: 400;
+    text-align: left;
+    color: #666;
+    line-height: 28px;
+    margin-right: 10px;
+  }
+  .worker_right {
+    flex: 1;
+    ::v-deep .el-button {
+      margin: 0 10px 10px 0px;
+    }
+  }
+}
+
 .selectStyle {
   width: 100%;
 }

+ 24 - 0
src/views/sales_policy/policy_list.vue

@@ -10,6 +10,7 @@
     :tableEvents="tableEvents"
     :replaceOrNotMap="false"
     :operationColumnWidth="200"
+    :fieldBeansHook="fieldBeansHook"
   >
     <Popu v-if="isShow !== 1">
       <el-page-header slot="head" :content="content" @back="handleClose" />
@@ -169,6 +170,29 @@ export default {
     }
   }),
   methods: {
+    fieldBeansHook(list) {
+      return [
+        ...list,
+        {
+          adminUserId: null,
+          colName: 'specification',
+          enumMap: '{}',
+          frontCode: '',
+          hide: false,
+          isCopy: false,
+          isQuery: true,
+          isShow: false,
+          isTotal: false,
+          jname: 'specification',
+          label: '机型规格',
+          multiple: false,
+          pk: false,
+          sortNum: 0,
+          tbName: '',
+          type: 'input'
+        }
+      ]
+    },
     // 列表请求函数
     getList: policyListV2,
     // 列表导出函数

+ 110 - 1
src/views/supply/engin/home_list.vue

@@ -20,6 +20,20 @@
           数量:<span class="num">{{ Number(numSum.totalC) || 0 | numToFixed }}</span>
         </li>
       </ul>
+
+      <div class="worker">
+        <div class="worker_left">工单状态</div>
+        <div class="worker_right">
+          <el-button
+            v-for="(item, index) in workerState"
+            :key="index"
+            :type="orderStatusParam == item.value ? 'primary' : null"
+            @click="handleOrderStatusParam(item.value, index)"
+            size="mini"
+            >{{ item.label }}</el-button
+          >
+        </div>
+      </div>
     </div>
     <!-- <EditDateDialog :is-show.sync="isShowEditDateDialog" :date-form.sync="dateForm" /> -->
     <Popu v-if="isShowDetail || isShowForm || isShowExamine || isShowReturn">
@@ -83,6 +97,53 @@ export default {
   },
   data() {
     return {
+      orderStatusParam: '',
+      workerState: [
+        // {
+        //   label: '全部',
+        //   value: ''
+        // },
+        // {
+        //   label: '初审不通过',
+        //   value: 'FAIL_ONE'
+        // },
+        // {
+        //   label: '驳回',
+        //   value: 'REJECT'
+        // },
+        // {
+        //   label: '已确认未复核',
+        //   value: 'OK_ONE_AND_CONFIRM'
+        // },
+        // {
+        //   label: '弃审',
+        //   value: 'ABANDON'
+        // },
+        {
+          label: '保存',
+          value: 'SAVE'
+        },
+        // {
+        //   label: '关闭',
+        //   value: 'CLOSE'
+        // },
+        {
+          label: '待审核',
+          value: 'WAIT'
+        },
+        {
+          label: '审核通过',
+          value: 'OK'
+        }
+        // {
+        //   label: '初审不通过',
+        //   value: 'FAIL'
+        // },
+        // {
+        //   label: '初审通过',
+        //   value: 'OK_ONE'
+        // }
+      ],
       // 事件组合
       optionsEvensGroup: [
         [
@@ -241,6 +302,10 @@ export default {
   },
 
   methods: {
+    handleOrderStatusParam(value, index) {
+      this.orderStatusParam = value
+      this.$refs.pageRef.refreshList()
+    },
     // 列表请求函数
     // getList: v2EnginOrderHomeList,
     async getList(...p) {
@@ -253,7 +318,27 @@ export default {
         // console.log(error)
       }
 
-      return v2EnginOrderHomeList(...p)
+      let params = {}
+
+      if (this.orderStatusParam === '') {
+        params = {
+          moduleId: p[0].moduleId,
+          orderBy: p[0].orderBy,
+          pageNum: p[0].pageNum,
+          pageSize: p[0].pageSize,
+          params: [...p[0].params]
+        }
+      } else {
+        params = {
+          moduleId: p[0].moduleId,
+          orderBy: p[0].orderBy,
+          pageNum: p[0].pageNum,
+          pageSize: p[0].pageSize,
+          params: [{ param: 'a.examine_status', compare: '=', value: this.orderStatusParam }, ...p[0].params]
+        }
+      }
+
+      return v2EnginOrderHomeList(params)
     },
     // 列表导出函数
     exportList: v2EnginOrderHomeListExport,
@@ -266,6 +351,11 @@ export default {
       this.recordSelected = data
     },
     fieldBeansHook(val) {
+      val.map(item => {
+        if (~['examine_status'].indexOf(item.colName)) {
+          item.isQuery = false
+        }
+      })
       if (this.isCustomer !== '') {
         let res = val.filter(
           v => v.jname !== 'refPowerCategory' && v.jname !== 'geLiInerNote' && v.jname !== 'geLiNote'
@@ -657,6 +747,25 @@ export default {
 </script>
 
 <style lang="scss" scoped>
+.worker {
+  display: flex;
+  justify-content: space-between;
+  .worker_left {
+    font-size: 12px;
+    font-weight: 400;
+    text-align: left;
+    color: #666;
+    line-height: 28px;
+    margin-right: 10px;
+  }
+  .worker_right {
+    flex: 1;
+    ::v-deep .el-button {
+      margin: 0 10px 10px 0px;
+    }
+  }
+}
+
 .ulStyle {
   list-style: none;
   margin: 0;