From 13b0bad30ef1df53492cbab1c1b99dfc02dee63f Mon Sep 17 00:00:00 2001
From: haoyahui <2032914783@qq.com>
Date: 星期二, 21 十一月 2023 17:51:16 +0800
Subject: [PATCH] 台账管理,盘点任务开发

---
 admin-web/src/views/stock/inventorycount/inventorytask/index.vue |  148 ++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 126 insertions(+), 22 deletions(-)

diff --git a/admin-web/src/views/stock/inventorycount/inventorytask/index.vue b/admin-web/src/views/stock/inventorycount/inventorytask/index.vue
index 2313f2c..c137a58 100644
--- a/admin-web/src/views/stock/inventorycount/inventorytask/index.vue
+++ b/admin-web/src/views/stock/inventorycount/inventorytask/index.vue
@@ -42,6 +42,9 @@
 import myImport from '@/views/components/myImport';
 import { getBaseUrl } from '@/utils/base';
 import { selectTenantWarehouse } from '@/api/baseSetting/finsystenant';
+import { inventoryListApi, inventoryDel } from '@/api/stock/inventory';
+import * as DateFormatter from '@/utils/DateFormatter';
+import { mapGetters } from 'vuex';
 
 export default {
   name: 'index',
@@ -74,13 +77,13 @@
         },
         {
           type: 'date-picker',
-          dataIndex: 'incomeTimeStart',
+          dataIndex: 'startTime',
           label: '鐩樼偣鏃堕棿',
           defaultValue: '',
         },
         {
           type: 'date-picker',
-          dataIndex: 'incomeTimeEnd',
+          dataIndex: 'endTime',
           label: '鑷�',
           defaultValue: '',
         },
@@ -128,7 +131,7 @@
       table: {
         showIndex: true, // 鏄惁鏄剧ず搴忓彿
         expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
-        url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+        url: SettingIplatform.apiBaseURL + inventoryListApi(), // 璇锋眰鍦板潃
         // 宸ュ叿鏉�
         tools: {
           columnsCtrl: {
@@ -152,30 +155,115 @@
         // 鍒椾俊鎭�
         columns: [
           { title: '鐩樼偣鍗曞彿', field: 'businessFormCode', align: 'left' },
-          { title: '浠诲姟鍚嶇О', field: 'businessFormName', align: 'center' },
-          { title: '鐩樼偣浠撳簱', field: 'warehouseName', align: 'center' },
-          { title: '鐩樼偣浜�', field: 'operatorName', align: 'center' },
+          { title: '浠诲姟鍚嶇О', field: 'businessFormName', align: 'left' },
+          { title: '鐩樼偣浠撳簱', field: 'warehouseName', align: 'left' },
+          { title: '鐩樼偣浜�', field: 'operatorName', align: 'left' },
           { title: '鐩戠洏浜�', field: 'operatorName2', align: 'left' },
-          { title: '鐩樼偣鏃堕棿', field: 'inventoryDate', align: 'left' },
-          { title: '鍒涘缓鏃堕棿', field: 'createTime', align: 'left' },
-          { title: '鐘舵��', field: 'states', align: 'left' },
+          {
+            title: '鐩樼偣鏃堕棿',
+            field: 'inventoryDate',
+            align: 'center',
+            width: 160,
+            formatter: (row) => {
+              return { value: row.inventoryDate ? DateFormatter.LongToDateTime(row.inventoryDate) : '-' };
+            },
+          },
+          {
+            title: '鍒涘缓鏃堕棿',
+            field: 'createTime',
+            align: 'center',
+            width: 160,
+            formatter: (row) => {
+              return { value: DateFormatter.LongToDateTime(row.createTime) };
+            },
+          },
+          {
+            title: '鐘舵��',
+            field: 'states',
+            align: 'left',
+            type: 'primary',
+            formatter: (row) => {
+              return {
+                value: row.states == 0 ? '鏈紑濮�' : row.states == 1 ? '杩涜涓�' : '宸茬洏鐐�',
+                type: row.states == 0 ? 'danger' : row.states == 1 ? 'success' : 'primary',
+              };
+            },
+          },
         ],
         // 鎿嶄綔淇℃伅
         operation: {
           show: true, // 鏄剧ず鎿嶄綔鍒�
-          width: '150', // 鍒楀
+          align: 'left',
+          width: '220', // 鍒楀
           attr: [
             {
               title: '缂栬緫',
+              hidden: (row) => {
+                if (row.states != 0) {
+                  return true;
+                }
+              },
               events: (row) => {
                 this.showAudit(row);
               },
             },
             {
+              title: '鍒犻櫎',
+              hidden: (row) => {
+                if (row.states != 0) {
+                  return true;
+                }
+              },
+              events: (row) => {
+                this.del(row);
+              },
+            },
+            {
               title: '鐩樼偣',
               type: 'success',
+              hidden: (row) => {
+                if (row.states != 0) {
+                  return true;
+                }
+              },
               events: (row) => {
                 this.showInventory(row);
+              },
+            },
+            {
+              title: '缁х画鐩樼偣',
+              type: 'success',
+              hidden: (row) => {
+                if (row.states != 1) {
+                  return true;
+                }
+              },
+              events: (row) => {
+                this.showInventory(row);
+              },
+            },
+            {
+              title: '鐩樼偣璇︽儏',
+              type: 'info',
+              hidden: (row) => {
+                if (row.states != 2) {
+                  return true;
+                }
+              },
+              events: (row) => {
+                this.showInventoryDetail(row);
+              },
+            },
+            {
+              title: '鐢熶骇鐩樼偣琛�',
+              type: 'primary',
+              hidden: (row) => {
+                if (row.states != 2) {
+                  return true;
+                }
+              },
+              events: (row) => {
+                this.showInventoryDetail(row);
               },
             },
           ],
@@ -193,18 +281,21 @@
       },
     };
   },
+  computed: {
+    ...mapGetters(['userInfo']),
+  },
   created() {
-    selectTenantWarehouse().then(res=>{
-      this.items.forEach(v=>{
-        if(v.label=='鐩樼偣浠撳簱') {
-          v.options = res.map(item=>{
-            item.label=item.warehouseName
-            item.vlaue=item.id
-            return item
-          })
+    selectTenantWarehouse({ agencyId: this.userInfo.tenantId }).then((res) => {
+      this.items.forEach((v) => {
+        if (v.label == '鐩樼偣浠撳簱') {
+          v.options = res.map((item) => {
+            item.label = item.warehouseName;
+            item.value = item.id;
+            return item;
+          });
         }
-      })
-    })
+      });
+    });
   },
   methods: {
     //瀵煎叆
@@ -222,9 +313,9 @@
     },
     del(row) {
       this.$modal
-        .confirm('鏄惁纭鍒犻櫎鍚嶇О涓�"' + row.name + '"鐨勬満鏋勫悧锛�')
+        .confirm('鏄惁纭鍒犻櫎鍗曞彿涓猴細' + row.businessFormCode + ' 鐨勬暟鎹悧锛�')
         .then(() => {
-          finsystenant.del({ id: row.id }).then((res) => {
+          inventoryDel({ id: row.id }).then((res) => {
             this.$message.success('鍒犻櫎鎴愬姛锛�');
             this.search();
           });
@@ -250,6 +341,12 @@
       this.inventorySetting.title = '鐩樼偣';
       this.inventorySetting.show = true;
     },
+    showInventoryDetail(row) {
+      this.inventorySetting.id = row.id;
+      this.inventorySetting.info = JSON.stringify(row);
+      this.inventorySetting.title = '鐩樼偣';
+      this.inventorySetting.show = true;
+    },
     // 鏌ヨtable鍒楄〃
     search(pageNum) {
       if (pageNum != undefined) {
@@ -260,6 +357,13 @@
     },
     fifterForm(params) {
       this.filterFrom = Object.assign(this.filterFrom, params);
+
+      if (this.filterFrom.startTime) {
+        this.filterFrom.startTime = this.filterFrom.startTime.replace(/\-/g, '');
+      }
+      if (this.filterFrom.endTime) {
+        this.filterFrom.endTime = this.filterFrom.endTime.replace(/\-/g, '');
+      }
       this.search(1);
     },
   },

--
Gitblit v1.9.1