浏览代码

no message

linwenxin 9 月之前
父节点
当前提交
6ecd3f8d6f

+ 17 - 0
src/api/engineerFeeSettlement.js

@@ -0,0 +1,17 @@
+import request, { postBlob, getBlob, handleImport } from '@/utils/request'
+
+export function recycSettleWorkerList(data) {
+  return request({
+    url: `/recyc/settle/worker/list?moduleId=${data.moduleId}`,
+    method: 'post',
+    data
+  })
+}
+
+export function recycSettleWorkerListExport(data, name) {
+  return postBlob({
+    url: '/recyc/settle/worker/list/export',
+    data,
+    name
+  })
+}

+ 17 - 0
src/api/shoppingGuideCommission.js

@@ -0,0 +1,17 @@
+import request, { postBlob, getBlob, handleImport } from '@/utils/request'
+
+export function recycSettleShopList(data) {
+  return request({
+    url: `/recyc/settle/shop/list?moduleId=${data.moduleId}`,
+    method: 'post',
+    data
+  })
+}
+
+export function recycSettleShopListExport(data, name) {
+  return postBlob({
+    url: '/recyc/settle/shop/list/export',
+    data,
+    name
+  })
+}

+ 84 - 0
src/views/workOrder/settleAccountsManagement/engineerFeeSettlement/index.vue

@@ -0,0 +1,84 @@
+<template>
+  <template-page
+    ref="pageRef"
+    :get-list="getList"
+    :table-attributes="tableAttributes"
+    :table-events="tableEvents"
+    :options-evens-group="optionsEvensGroup"
+    :moreParameters="moreParameters"
+    :column-parsing="columnParsing"
+    :exportList="exportList"
+  >
+  </template-page>
+</template>
+
+<script>
+import TemplatePage from '@/components/template/template-page-1.vue'
+import import_mixin from '@/components/template/import_mixin.js'
+import ImageUpload from '@/components/file-upload'
+import { required, mobileRequired, mobile, httpUrl, email } from '@/components/template/rules_verify.js'
+import { recycSettleWorkerList, recycSettleWorkerListExport } from '@/api/engineerFeeSettlement'
+export default {
+  components: { TemplatePage, ImageUpload },
+  mixins: [import_mixin],
+  data() {
+    return {
+      // 事件组合
+      optionsEvensGroup: [],
+      // 表格属性
+      tableAttributes: {
+        // 启用勾选列
+        selectColumn: false
+      },
+      // 表格事件
+      tableEvents: {
+        'selection-change': this.selectionChange
+      },
+      // 勾选选中行
+      recordSelected: [],
+      /** 表单变量 */
+      formDialogType: 0,
+      formDialogTitles: ['新增', '编辑', '详情'],
+      formDialog: false,
+      appraise_status: ''
+    }
+  },
+  computed: {
+    // 更多参数
+    moreParameters() {
+      return []
+    },
+    formItems() {
+      return []
+    }
+  },
+  methods: {
+    // 列表请求函数
+    getList(p, cb) {
+      try {
+        var pam = JSON.parse(JSON.stringify(p))
+        cb && cb(pam)
+        return recycSettleWorkerList(pam)
+      } catch (error) {
+        console.log(error)
+      }
+    },
+    // 列表导出函数
+    exportList: recycSettleWorkerListExport,
+    // 表格列解析渲染数据更改
+    columnParsing(item, defaultData) {
+      return defaultData
+    },
+    // 监听勾选变化
+    selectionChange(data) {
+      this.recordSelected = data
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.tab {
+  padding: 20px 20px 0 20px;
+}
+</style>

+ 84 - 0
src/views/workOrder/settleAccountsManagement/shoppingGuideCommission/index.vue

@@ -0,0 +1,84 @@
+<template>
+  <template-page
+    ref="pageRef"
+    :get-list="getList"
+    :table-attributes="tableAttributes"
+    :table-events="tableEvents"
+    :options-evens-group="optionsEvensGroup"
+    :moreParameters="moreParameters"
+    :column-parsing="columnParsing"
+    :exportList="exportList"
+  >
+  </template-page>
+</template>
+
+<script>
+import TemplatePage from '@/components/template/template-page-1.vue'
+import import_mixin from '@/components/template/import_mixin.js'
+import ImageUpload from '@/components/file-upload'
+import { required, mobileRequired, mobile, httpUrl, email } from '@/components/template/rules_verify.js'
+import { recycSettleShopList, recycSettleShopListExport } from '@/api/shoppingGuideCommission'
+export default {
+  components: { TemplatePage, ImageUpload },
+  mixins: [import_mixin],
+  data() {
+    return {
+      // 事件组合
+      optionsEvensGroup: [],
+      // 表格属性
+      tableAttributes: {
+        // 启用勾选列
+        selectColumn: false
+      },
+      // 表格事件
+      tableEvents: {
+        'selection-change': this.selectionChange
+      },
+      // 勾选选中行
+      recordSelected: [],
+      /** 表单变量 */
+      formDialogType: 0,
+      formDialogTitles: ['新增', '编辑', '详情'],
+      formDialog: false,
+      appraise_status: ''
+    }
+  },
+  computed: {
+    // 更多参数
+    moreParameters() {
+      return []
+    },
+    formItems() {
+      return []
+    }
+  },
+  methods: {
+    // 列表请求函数
+    getList(p, cb) {
+      try {
+        var pam = JSON.parse(JSON.stringify(p))
+        cb && cb(pam)
+        return recycSettleShopList(pam)
+      } catch (error) {
+        console.log(error)
+      }
+    },
+    // 列表导出函数
+    exportList: recycSettleShopListExport,
+    // 表格列解析渲染数据更改
+    columnParsing(item, defaultData) {
+      return defaultData
+    },
+    // 监听勾选变化
+    selectionChange(data) {
+      this.recordSelected = data
+    }
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.tab {
+  padding: 20px 20px 0 20px;
+}
+</style>

+ 98 - 83
src/views/workOrder/workOrderPool/detailModule/CompletionDetails/index.vue

@@ -15,14 +15,14 @@
         <zj-form-module v-else title="采集信息" :form-data="formData" :form-items="INSTALL_pgOrderProductImgs" />
       </zj-form-container>
     </zj-page-fill>
-    <div v-if="detailId" style="box-sizing: border-box;padding: 16px;">
+    <div v-if="detailId" style="box-sizing: border-box; padding: 16px">
       <el-button @click="close" size="mini">关闭</el-button>
     </div>
   </zj-page-container>
 </template>
 
 <script>
-import { changeOrderGetOrderProduct, changeOrderProductDetail } from "@/api/workOrderPool.js";
+import { changeOrderGetOrderProduct, changeOrderProductDetail } from '@/api/workOrderPool.js'
 import ImageUpload from '@/components/file-upload'
 export default {
   components: {
@@ -31,17 +31,17 @@ export default {
   props: {
     id: {
       type: [String, Number],
-      default: null,
+      default: null
     }
   },
   data() {
     return {
       completeDetailData: [],
-      detailId: "",
+      detailId: '',
       formData: {
-        bugRemark: "",
-        detailRemark: "",
-        isDefend: "",
+        bugRemark: '',
+        detailRemark: '',
+        isDefend: '',
         pgOrderProductDetails: []
       }
     }
@@ -56,59 +56,66 @@ export default {
             width: 60
           },
           render: (h, { row, column, index }) => {
-            return <div style="padding-left:10px">
-              <el-button type="text" onClick={() => {
-                this.detailId = row.id
-              }}>查看</el-button>
-            </div>
+            return (
+              <div style="padding-left:10px">
+                <el-button
+                  type="text"
+                  onClick={() => {
+                    this.detailId = row.id
+                  }}
+                >
+                  查看
+                </el-button>
+              </div>
+            )
           }
         },
         {
           columnAttributes: {
             label: '品牌名称',
-            prop: 'brandName',
+            prop: 'brandName'
           }
         },
         {
           columnAttributes: {
             label: '产品大类',
-            prop: 'mainName',
+            prop: 'mainName'
           }
         },
         {
           columnAttributes: {
             label: '产品小类',
-            prop: 'smallName',
+            prop: 'smallName'
           }
         },
         {
           columnAttributes: {
             label: '机型名称',
-            prop: 'productName',
+            prop: 'productName'
           }
         },
         {
           columnAttributes: {
             label: '负责工程师',
-            prop: 'workerName',
+            prop: 'workerName'
           }
         },
         {
           columnAttributes: {
             label: '联系电话',
-            prop: 'workerMobile',
+            prop: 'workerMobile'
           }
         },
         {
           columnAttributes: {
             label: '状态',
-            prop: 'status',
+            prop: 'status'
           }
         },
         {
           columnAttributes: {
             label: '采集时间',
-            prop: 'giveTime',
+            prop: 'giveTime'
           }
         },
         {
@@ -124,7 +131,7 @@ export default {
             prop: 'giveAddress',
             width: 260
           }
-        },
+        }
       ]
     },
     repairInfo() {
@@ -133,79 +140,87 @@ export default {
           name: 'el-input',
           md: 14,
           attributes: { disabled: true, placeholder: '' },
-          formItemAttributes: { label: '故障现象', prop: 'bugRemark' },
+          formItemAttributes: { label: '故障现象', prop: 'bugRemark' }
         },
         {
           name: 'el-radio',
           options: [
             { label: '是', value: 'YES' },
-            { label: '否', value: 'NO' },
+            { label: '否', value: 'NO' }
           ],
           md: 10,
           attributes: { disabled: true, placeholder: '' },
-          formItemAttributes: { label: '是否质保', prop: 'isDefend' },
+          formItemAttributes: { label: '是否质保', prop: 'isDefend' }
         },
         {
           name: 'el-input',
           md: 24,
-          attributes: { disabled: true, type: "textarea", placeholder: '' },
-          formItemAttributes: { label: '备注', prop: 'detailRemark' },
-        },
+          attributes: { disabled: true, type: 'textarea', placeholder: '' },
+          formItemAttributes: { label: '备注', prop: 'detailRemark' }
+        }
       ]
     },
     INSTALL_pgOrderProductImgs() {
-      return [{
-        md: 24,
-        name: 'slot-component',
-        formItemAttributes: {
-          label: '',
-          prop: '',
-          'label-width': '0px'
+      return [
+        {
+          md: 24,
+          name: 'slot-component',
+          formItemAttributes: {
+            label: '',
+            prop: '',
+            'label-width': '0px'
+          },
+          render: (h, { props, onInput }) => {
+            return (
+              <ImageUpload
+                fileList={this.formData?.pgOrderProductDetails
+                  ?.filter(item => item.type === 'INSTALL')
+                  .map(item => ({ url: item.fileUrl, name: item.fileName }))}
+                limit={1000}
+                isEdit={false}
+                viewOnline={false}
+                download={false}
+                showName={true}
+              />
+            )
+          }
         },
-        render: (h, { props, onInput }) => {
-          return (
-            <ImageUpload
-              fileList={this.formData?.pgOrderProductDetails?.filter((item) => item.type === 'INSTALL').map((item) => ({ url: item.fileUrl, name: item.fileName }))}
-              limit={1000}
-              isEdit={false}
-              viewOnline={false}
-              download={false}
-              showName={true}
-            />
-          )
+        {
+          show: this.formData.pgOrderBase && this.formData.pgOrderBase.orderType == 'INSTALL',
+          name: 'el-input',
+          md: 24,
+          attributes: { disabled: true, type: 'textarea', placeholder: '' },
+          formItemAttributes: { label: '备注', prop: 'detailRemark' }
         }
-      },
-      {
-        show: this.formData.pgOrderBase && this.formData.pgOrderBase.orderType == 'INSTALL',
-        name: 'el-input',
-        md: 24,
-        attributes: { disabled: true, type: "textarea", placeholder: '' },
-        formItemAttributes: { label: '备注', prop: 'detailRemark' },
-      },]
+      ]
     },
     BUG_pgOrderProductImgs() {
-      return [{
-        md: 24,
-        name: 'slot-component',
-        formItemAttributes: {
-          label: '',
-          prop: '',
-          'label-width': '0px'
-        },
-        render: (h, { props, onInput }) => {
-          return (
-            <ImageUpload
-              fileList={this.formData?.pgOrderProductDetails?.filter((item) => item.type === 'BUG').map((item) => ({ url: item.fileUrl, name: item.fileName }))}
-              limit={1000}
-              isEdit={false}
-              viewOnline={false}
-              download={false}
-              showName={true}
-            />
-          )
+      return [
+        {
+          md: 24,
+          name: 'slot-component',
+          formItemAttributes: {
+            label: '',
+            prop: '',
+            'label-width': '0px'
+          },
+          render: (h, { props, onInput }) => {
+            return (
+              <ImageUpload
+                fileList={this.formData?.pgOrderProductDetails
+                  ?.filter(item => item.type === 'BUG')
+                  .map(item => ({ url: item.fileUrl, name: item.fileName }))}
+                limit={1000}
+                isEdit={false}
+                viewOnline={false}
+                download={false}
+                showName={true}
+              />
+            )
+          }
         }
-      },]
-    },
+      ]
+    }
   },
   watch: {
     id: {
@@ -217,14 +232,14 @@ export default {
             this.completeDetailData = res.data.map(item => {
               return {
                 ...item,
-                status: ({ WAIT: "待采集", WAIT_SAVE: "待完善", WAIT_OK: "临时采集", OK: "已采集" })[item.status]
+                status: { WAIT: '待采集', WAIT_SAVE: '待完善', WAIT_OK: '临时采集', OK: '已采集' }[item.status]
               }
             })
           })
         }
       },
       deep: true,
-      immediate: true,
+      immediate: true
     },
     detailId: {
       handler(newVal, oldVal) {
@@ -237,14 +252,14 @@ export default {
           })
         }
       },
-      deep: true,
-    },
+      deep: true
+    }
   },
   methods: {
     close() {
       this.$data.formData = this.$options.data().formData
-      this.detailId = ""
-    },
+      this.detailId = ''
+    }
   }
 }
 </script>
@@ -254,13 +269,13 @@ export default {
   box-sizing: border-box;
   padding-left: 16px;
 
-  ::v-deep &>.zj-page-fill-scroll {
+  ::v-deep & > .zj-page-fill-scroll {
     box-sizing: border-box;
     padding-right: 16px;
 
-    &>div:nth-child(1) {
+    & > div:nth-child(1) {
       margin-top: 20px;
     }
   }
 }
-</style>
+</style>