From b8dc4ccc6ee580b084aa860e64af2d90d1cb5979 Mon Sep 17 00:00:00 2001
From: 石广澎 <shiguangpeng@163.com>
Date: 星期三, 29 十一月 2023 10:11:52 +0800
Subject: [PATCH] feat: 1、首页接口对接 2、部门物品分发

---
 admin-web/src/views/stock/procure/receiptDetails/index.vue         |    2 
 admin-web/src/views/stock/procure/purchaseOrder/index.vue          |    2 
 admin-web/.gitignore                                               |    1 
 admin-web/src/views/departmentitem/itemret/returnNote/index.vue    |    2 
 admin-web/src/views/stock/transfer/transferissue/index.vue         |    3 
 admin-web/src/views/departmentitem/itemdis/disDetails/index.vue    |   48 +-
 admin-web/src/views/stock/transfer/transferApplication/index.vue   |    2 
 admin-web/src/views/dashboard/components/LBJETJ.vue                |   48 +-
 admin-web/src/views/departmentitem/itemdis/distribution/detail.vue |  125 +++---
 admin-web/src/views/departmentitem/itemscr/scrapping/index.vue     |    2 
 admin-web/src/views/dashboard/components/XYZC.vue                  |   16 
 admin-web/src/views/stock/accessStock/outbound/index.vue           |    2 
 admin-web/vue.config.js                                            |    2 
 admin-web/src/components/mySearch/SearchItem.vue                   |    1 
 admin-web/src/views/dashboard/components/LBSLTJ.vue                |   51 +-
 admin-web/src/views/departmentitem/itemdis/distribution/edit.vue   |  481 +++++++++++++++------------
 admin-web/src/views/departmentitem/itemdis/distribution/index.vue  |   52 +-
 admin-web/public/static/config.js                                  |   18 
 admin-web/src/api/dashboard.js                                     |   18 +
 admin-web/src/views/dashboard/index.vue                            |   86 +++-
 20 files changed, 550 insertions(+), 412 deletions(-)

diff --git a/admin-web/.gitignore b/admin-web/.gitignore
index 78a752d..55f0bfa 100644
--- a/admin-web/.gitignore
+++ b/admin-web/.gitignore
@@ -21,3 +21,4 @@
 
 package-lock.json
 yarn.lock
+/lowConsumWeb/
diff --git a/admin-web/public/static/config.js b/admin-web/public/static/config.js
index 33e661f..b7e2788 100644
--- a/admin-web/public/static/config.js
+++ b/admin-web/public/static/config.js
@@ -1,21 +1,13 @@
 
-// 璇锋眰鎺ュ彛鍦板潃 濡傛灉娌℃湁閰嶇疆鑷姩鑾峰彇褰撳墠缃戝潃璺緞
-const VUE_APP_API_URL = process.env.VUE_APP_BASE_API || `${location.origin}`;
-const VUE_APP_WS_URL =
-  process.env.VUE_APP_WS_URL || (location.protocol === 'https' ? 'wss' : 'ws') + ':' + location.hostname;
-
 const SettingIplatform = {
   // 鏈嶅姟鍣ㄥ湴鍧�
-  // 鏈嶅姟鍣ㄥ湴鍧�
-  httpUrl: VUE_APP_API_URL,
   // 涓婁紶璺緞
   ftpUrl: 'https://yqzx.jinmingyuan.com/lowConsum',//寮�鍙�
-// 鎺ュ彛璇锋眰鍦板潃
-  apiBaseURL: 'https://yqzx.jinmingyuan.com/lowConsum',//寮�鍙�
-// apiBaseURL: 'https://jmy.jinmingyuan.com/progress',// 娴嬭瘯,
-  // socket杩炴帴
-  wsSocketUrl: VUE_APP_WS_URL,
-  debug: true //璋冭瘯寮�鍏�  true鏃朵細杈撳嚭璇锋眰鏃ュ織
+  // 鎺ュ彛璇锋眰鍦板潃
+  // apiBaseURL: 'http://172.16.20.2:8083/lowConsum',//寮�鍙�
+  apiBaseURL: 'http://172.16.60.155:8083/lowConsum',//寮�鍙�
+  // apiBaseURL: 'https://yqzx.jinmingyuan.com/lowConsum',//寮�鍙�
+  debug: false //璋冭瘯寮�鍏�  true鏃朵細杈撳嚭璇锋眰鏃ュ織
 };
 
 export default SettingIplatform;
diff --git a/admin-web/src/api/dashboard.js b/admin-web/src/api/dashboard.js
new file mode 100644
index 0000000..de56d8d
--- /dev/null
+++ b/admin-web/src/api/dashboard.js
@@ -0,0 +1,18 @@
+import request from '@/utils/request';
+
+// 鐗╁搧閲戦鏁伴噺
+export function getGoodsNumPrice(params) {
+    return request({
+        url: '/pc/warehouse/homeStatistics/getGoodsNumPrice',
+        method: 'get',
+        params,
+    });
+}
+// 璧勪骇澧為暱/鎶ュ簾缁熻鍥撅紙鏁伴噺锛�
+export function getGoodsNumByMonth(params) {
+    return request({
+        url: '/pc/warehouse/homeStatistics/getGoodsNumByMonth',
+        method: 'get',
+        params,
+    });
+}
diff --git a/admin-web/src/components/mySearch/SearchItem.vue b/admin-web/src/components/mySearch/SearchItem.vue
index 1240b54..0dbda42 100644
--- a/admin-web/src/components/mySearch/SearchItem.vue
+++ b/admin-web/src/components/mySearch/SearchItem.vue
@@ -20,6 +20,7 @@
       :props="item.optionsConfig.props||{ checkStrictly: true,emitPath: false,value: 'id' }"
       :show-all-levels="false"
       filterable
+      clearable
       style="width: 150px"
       @change="(v) => this.$emit('change', v)"
     >
diff --git a/admin-web/src/views/dashboard/components/LBJETJ.vue b/admin-web/src/views/dashboard/components/LBJETJ.vue
index 36d2057..a2b2956 100644
--- a/admin-web/src/views/dashboard/components/LBJETJ.vue
+++ b/admin-web/src/views/dashboard/components/LBJETJ.vue
@@ -13,12 +13,34 @@
 import * as dash from "@/api/dashboard/dash";
 
 export default {
-  name: 'LBSLTJ',
+  name: 'LBJETJ',
   props: {
-    activeId: {
-      type: String,
-      default: '',
+    num: {
+      type: Object,
+      default: {
+        aTotalNum: 0,
+        aTotalPrice: 0,
+        bTotalNum: 0,
+        bTotalPrice: 0,
+        cTotalNum: 0,
+        cTotalPrice: 0,
+        tenantId: 0,
+        totalNum: 0,
+        totalPrice: 0,
+        xiaFaNum: 0,
+        zhanYouPercent: 0,
+      },
     },
+  },
+  watch:{
+    num(){
+      this.options.series[0].data = [
+        {value: parseFloat(this.num.aTotalPrice), name: 'A绫�'},
+        {value: parseFloat(this.num.bTotalPrice), name: 'B绫�'},
+        {value: parseFloat(this.num.cTotalPrice), name: 'C绫�'},
+      ]
+      this.myChart.setOption(this.options);
+    }
   },
   data() {
     return {
@@ -31,14 +53,6 @@
   },
   methods: {
     getCenterLine() {
-      // getCenterLine({
-      //   id: this.activeId,
-      //   weekFlag: this.weekFlag,
-      //   monthFlag: this.monthFlag,
-      //   startDay: this.value2 ? this.value2[0] : null,
-      //   endDay: this.value2 ? this.value2[1] : null
-      // }).then(res => {
-      //   const data = res.data
       var chartDom = document.getElementById('LBJETJ');
       this.myChart = echarts.init(chartDom);
       // 鐩戝惉灞忓箷瀹藉害鍙樺寲锛氬綋娴忚鍣ㄥ彂鐢焤esize浜嬩欢鐨勬椂鍊欙紝瑙﹀彂echart鐨剅esize浜嬩欢锛岄噸缁榗anvas
@@ -62,7 +76,7 @@
         series: [
           {
 
-            name: 'Access From',
+            name: '绫诲埆閲戦缁熻',
             type: 'pie',
             minAngle: 2, // 鏈�灏忕殑鎵囧尯瑙掑害锛�0~360锛夛紝鐢ㄤ簬闃叉鏌愪釜鍊艰繃灏忓鑷存墖鍖哄お灏忓奖鍝嶄氦浜�
             avoidLabelOverlap: true, // 鏄惁鍚敤闃叉鏍囩閲嶅彔绛栫暐
@@ -82,11 +96,9 @@
               }
             },
             data: [
-              { value: 100, name: '绛夌骇涓�' },
-              { value: 100, name: '绛夌骇浜�' },
-              { value: 100, name: '绛夌骇涓�' },
-
-            ]
+              {value: parseFloat(this.num.aTotalPrice), name: 'A绫�'},
+              {value: parseFloat(this.num.bTotalPrice), name: 'B绫�'},
+              {value: parseFloat(this.num.cTotalPrice), name: 'C绫�'},]
           }]
       };
       this.options && this.myChart.setOption(this.options);
diff --git a/admin-web/src/views/dashboard/components/LBSLTJ.vue b/admin-web/src/views/dashboard/components/LBSLTJ.vue
index 92717d0..bb1ae99 100644
--- a/admin-web/src/views/dashboard/components/LBSLTJ.vue
+++ b/admin-web/src/views/dashboard/components/LBSLTJ.vue
@@ -10,15 +10,37 @@
 </template>
 <script>
 import * as echarts from 'echarts';
-import * as dash from "@/api/dashboard/dash";
 
 export default {
   name: 'LBSLTJ',
   props: {
-    activeId: {
-      type: String,
-      default: '',
+    num: {
+      type: Object,
+      default: {
+        aTotalNum: 0,
+        aTotalPrice: 0,
+        bTotalNum: 0,
+        bTotalPrice: 0,
+        cTotalNum: 0,
+        cTotalPrice: 0,
+        tenantId: 0,
+        totalNum: 0,
+        totalPrice: 0,
+        xiaFaNum: 0,
+        zhanYouPercent: 0,
+      },
     },
+  },
+  watch: {
+    num() {
+      this.options.series[0].data = [
+        {value: parseFloat(this.num.aTotalNum), name: 'A绫�'},
+        {value: parseFloat(this.num.bTotalNum), name: 'B绫�'},
+        {value: parseFloat(this.num.cTotalNum), name: 'C绫�'},
+
+      ]
+      this.myChart.setOption(this.options);
+    }
   },
   data() {
     return {
@@ -31,14 +53,6 @@
   },
   methods: {
     getCenterLine() {
-      // getCenterLine({
-      //   id: this.activeId,
-      //   weekFlag: this.weekFlag,
-      //   monthFlag: this.monthFlag,
-      //   startDay: this.value2 ? this.value2[0] : null,
-      //   endDay: this.value2 ? this.value2[1] : null
-      // }).then(res => {
-      //   const data = res.data
       var chartDom = document.getElementById('LBSLTJ');
       this.myChart = echarts.init(chartDom);
       // 鐩戝惉灞忓箷瀹藉害鍙樺寲锛氬綋娴忚鍣ㄥ彂鐢焤esize浜嬩欢鐨勬椂鍊欙紝瑙﹀彂echart鐨剅esize浜嬩欢锛岄噸缁榗anvas
@@ -46,7 +60,7 @@
         this.changeWidth();
       });
       this.options = {
-        color: [ '#1877FF','#5EDEA5','#F7BE12','#55C6E1','#ED653B'],
+        color: ['#1877FF', '#5EDEA5', '#F7BE12', '#55C6E1', '#ED653B'],
         tooltip: {
           trigger: 'axis',
           axisPointer: {
@@ -62,7 +76,7 @@
         series: [
           {
 
-            name: 'Access From',
+            name: '绫诲埆鏁伴噺缁熻',
             type: 'pie',
             minAngle: 2, // 鏈�灏忕殑鎵囧尯瑙掑害锛�0~360锛夛紝鐢ㄤ簬闃叉鏌愪釜鍊艰繃灏忓鑷存墖鍖哄お灏忓奖鍝嶄氦浜�
             avoidLabelOverlap: true, // 鏄惁鍚敤闃叉鏍囩閲嶅彔绛栫暐
@@ -82,11 +96,9 @@
               }
             },
             data: [
-              { value: 100, name: '绛夌骇涓�' },
-              { value: 100, name: '绛夌骇浜�' },
-              { value: 100, name: '绛夌骇涓�' },
-
-            ]
+              {value: parseFloat(this.num.aTotalNum), name: 'A绫�'},
+              {value: parseFloat(this.num.bTotalNum), name: 'B绫�'},
+              {value: parseFloat(this.num.cTotalNum), name: 'C绫�'},]
           }]
       };
       this.options && this.myChart.setOption(this.options);
@@ -108,6 +120,7 @@
   width: 100%;
   border-radius: 10px;
   border: none;
+
   .card-title-right {
     display: flex;
     align-items: center;
diff --git a/admin-web/src/views/dashboard/components/XYZC.vue b/admin-web/src/views/dashboard/components/XYZC.vue
index 89be963..08bbf4f 100644
--- a/admin-web/src/views/dashboard/components/XYZC.vue
+++ b/admin-web/src/views/dashboard/components/XYZC.vue
@@ -9,6 +9,7 @@
   </div>
 </template>
 <script>
+import {getGoodsNumByMonth} from '@/api/dashboard'
 import * as echarts from 'echarts';
 
 export default {
@@ -75,7 +76,7 @@
             emphasis: {
               focus: 'series',
             },
-            data: [320, 332, 301, 334, 320, 332, 301, 334, 320, 332, 301, 334],
+            data: [],
             lineStyle: {
               width: 2, // 澶栬竟绾垮搴�
               color: '#5BE1FD'// 澶栬竟绾块鑹�
@@ -103,7 +104,7 @@
             emphasis: {
               focus: 'series',
             },
-            data: [220, 182, 191, 234, 220, 182, 191, 234, 220, 182, 191, 234],
+            data: [],
             lineStyle: {
               width: 2, // 澶栬竟绾垮搴�
               color: '#FFD15C'// 澶栬竟绾块鑹�
@@ -127,6 +128,17 @@
         ],
       };
       this.options && this.myChart.setOption(this.options);
+      getGoodsNumByMonth().then(res=>{
+        let xAxis0 = []
+        let xAxis1 = []
+        res.map(item=>{
+          xAxis0.push(item.addTotalNum)
+          xAxis1.push(item.reduceTotalNum)
+        })
+        this.options.series[0].data = xAxis0
+        this.options.series[1].data = xAxis1
+        this.myChart.setOption(this.options);
+      })
     },
     changeWidth() {
       this.myChart.resize();
diff --git a/admin-web/src/views/dashboard/index.vue b/admin-web/src/views/dashboard/index.vue
index d006b95..1d92ebb 100644
--- a/admin-web/src/views/dashboard/index.vue
+++ b/admin-web/src/views/dashboard/index.vue
@@ -7,24 +7,29 @@
             <span class="font-18 font-bold">寰呭姙鍚嶇О</span>
           </div>
           <div class="f-r f-r-between m-b-10">
-            <el-radio-group v-model="waitType" size="medium">
+            <el-radio-group v-model="waitType" size="mini">
               <el-radio-button label="1">鍏ㄩ儴</el-radio-button>
             </el-radio-group>
             <div class="to-more" @click="nav('/stock/transfer/transferissue')">鏌ョ湅鏇村 ></div>
           </div>
           <el-table :data="waitWorkData" class="top-tb" :show-header="false" size="medium">
-            <el-table-column prop="number" align="center"></el-table-column>
-            <el-table-column prop="type" align="center" width="100"></el-table-column>
-            <el-table-column prop="orgName" align="center" width="100"></el-table-column>
-            <el-table-column prop="name" align="center" width="80"></el-table-column>
-            <el-table-column prop="createTime" align="center" width="180">
+            <el-table-column prop="businessFormCode" align="center" width="130"></el-table-column>
+            <el-table-column prop="inWarehouseName" align="center" min-width="130">
+              <template slot-scope="{row}">
+                <el-tooltip class="item" effect="dark" :content="row.inWarehouseName " placement="top-start">
+                  <div class="font-14 color-333" style="width: 100%;white-space:nowrap;text-overflow: ellipsis;overflow: hidden">{{ row.inWarehouseName }}</div>
+                </el-tooltip>
+              </template>
+            </el-table-column>
+            <el-table-column prop="operatorName" align="center" width="80"></el-table-column>
+            <el-table-column prop="createTime" align="center" width="160">
               <template slot-scope="scope">
                 <span class="font-14 color-333">{{ formattTime(scope.row.createTime) }}</span>
               </template>
             </el-table-column>
-            <el-table-column prop="date" label="鎿嶄綔" align="center" width="120">
+            <el-table-column prop="date" label="鎿嶄綔" fixed="right" align="center" width="80">
               <template slot-scope="scope">
-                <el-button @click.native.prevent="aduitThis(scope.row.id)" size="small" type="primary">澶勭悊</el-button>
+                <el-button @click.native.prevent="aduitThis(scope.row.id)" type="primary">澶勭悊</el-button>
               </template>
             </el-table-column>
           </el-table>
@@ -36,7 +41,7 @@
             <span class="font-18 font-bold">棰勮閫氱煡</span>
           </div>
           <div class="f-r f-r-between m-b-10">
-            <el-radio-group  size="medium" v-model="earlyWarningType" @change="changeEarlyWarning">
+            <el-radio-group size="mini" v-model="earlyWarningType" @change="changeEarlyWarning">
               <el-radio-button label="1">鍏ㄩ儴</el-radio-button>
               <el-radio-button label="2">缂鸿揣锛�12锛�</el-radio-button>
               <el-radio-button label="3">瓒呭嚭锛�3锛�</el-radio-button>
@@ -70,42 +75,44 @@
     <div class="f-r f-r-between total-list">
       <div class="total-item">
         <div class="font-14 color-666">鐗╁搧鏁伴噺</div>
-        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">1200</span></div>
+        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.totalNum}}</span></div>
       </div>
       <div class="total-item">
         <div class="font-14 color-666">璧勪骇鎬婚噾棰�</div>
-        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">120.88</span>涓囧厓</div>
+        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.totalPrice}}</span>涓囧厓</div>
       </div>
       <div class="total-item">
         <div class="font-14 color-666">鐗╁搧鍗犵敤鐜�</div>
-        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">80%</span></div>
+        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.zhanYouPercent}}%</span></div>
       </div>
       <div class="total-item">
         <div class="font-14 color-666">A绫荤墿鍝佹暟閲�</div>
-        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">120</span></div>
+        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.aTotalNum}}</span></div>
       </div>
       <div class="total-item">
         <div class="font-14 color-666">B绫荤墿鍝佹暟閲�</div>
-        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">123</span></div>
+        <div class="font-14 color-333" style="margin-top:6px;"><span class="total-num">{{goodsNumPrice.bTotalNum}}</span></div>
       </div>
     </div>
-  <!-- 绫诲埆閲戦缁熻/绫诲埆鏁伴噺缁熻 -->
+    <!-- 绫诲埆閲戦缁熻/绫诲埆鏁伴噺缁熻 -->
     <el-row :gutter="20">
       <el-col :span="12">
-        <LBSLTJ></LBSLTJ>
+        <LBSLTJ :num="goodsNumPrice"></LBSLTJ>
       </el-col>
       <el-col :span="12">
-        <LBJETJ></LBJETJ>
+        <LBJETJ :num="goodsNumPrice"></LBJETJ>
       </el-col>
     </el-row>
-  <!--  璧勪骇澧為暱/鎶ュ簾缁熻鍥撅紙鏁伴噺锛�-->
+    <!--  璧勪骇澧為暱/鎶ュ簾缁熻鍥撅紙鏁伴噺锛�-->
     <XYZC></XYZC>
   </div>
 </template>
 
 <script>
+import {getGoodsNumPrice} from '@/api/dashboard'
 // 鍒涘缓Context
 import {LongToDateTime} from "@/utils/DateFormatter";
+import {transferList} from "@/api/stock/transfer";
 
 const ComponentContext = require.context('./components', false, /\.vue$/i);
 let res_components = {};
@@ -119,14 +126,21 @@
   components: {...res_components},
   data() {
     return {
+      goodsNumPrice: {
+        aTotalNum: 0,
+        aTotalPrice: 0,
+        bTotalNum: 0,
+        bTotalPrice: 0,
+        cTotalNum: 0,
+        cTotalPrice: 0,
+        tenantId: 0,
+        totalNum: 0,
+        totalPrice: 0,
+        xiaFaNum: 0,
+        zhanYouPercent: 0,
+      },
       waitType: '1',
-      waitWorkData: [
-        {number: 'SJQ12345', type: '鐗╁搧鐢抽', orgName: '閲戣瀺涓氬姟閮�', name: '寮犱笁涓�', createTime: 20231127150606, id: 1},
-        {number: 'SJQ12345', type: '鐗╁搧鐢抽', orgName: '閲戣瀺涓氬姟閮�', name: '寮犱笁涓�', createTime: 20231127150606, id: 2},
-        {number: 'SJQ12345', type: '鐗╁搧鐢抽', orgName: '閲戣瀺涓氬姟閮�', name: '寮犱笁涓�', createTime: 20231127150606, id: 3},
-        {number: 'SJQ12345', type: '鐗╁搧鐢抽', orgName: '閲戣瀺涓氬姟閮�', name: '寮犱笁涓�', createTime: 20231127150606, id: 4},
-        {number: 'SJQ12345', type: '鐗╁搧鐢抽', orgName: '閲戣瀺涓氬姟閮�', name: '寮犱笁涓�', createTime: 20231127150606, id: 5},
-      ], // 寰呭姙宸ヤ綔
+      waitWorkData: [], // 寰呭姙宸ヤ綔
       earlyWarningType: '1',
       earlyWarningData: [
         {type: '鏂戒箰澶嶅嵃鏈虹⒊绮�', name: '鏂戒箰c2201', surplus: 4, createTime: 20231127150606, id: 1},
@@ -137,9 +151,21 @@
     };
   },
   created() {
-
+    this.init()
+    getGoodsNumPrice().then(res => {
+      this.goodsNumPrice = res
+    })
   },
   methods: {
+    init(){
+      transferList({
+        qryType: 0,
+        pageNum: 1,
+        pageSize: 5,
+      }).then((res) => {
+        this.waitWorkData = res.datas;
+      });
+    },
     // 鏍煎紡鍖栨椂闂�
     formattTime(time) {
       return LongToDateTime(time)
@@ -170,8 +196,8 @@
         earlyWarningType: this.earlyWarningType
       }
     },
-  //  璺宠浆
-    nav(url){
+    //  璺宠浆
+    nav(url) {
       this.$router.push(url)
     }
   }
@@ -196,9 +222,11 @@
 .top-tb {
   width: 100%;
 }
->>>.el-table__body{
+
+> > > .el-table__body {
   min-height: 265px;
 }
+
 .total-list {
   padding: 15px 0;
 }
diff --git a/admin-web/src/views/departmentitem/itemdis/disDetails/index.vue b/admin-web/src/views/departmentitem/itemdis/disDetails/index.vue
index edd496a..e8cdc6b 100644
--- a/admin-web/src/views/departmentitem/itemdis/disDetails/index.vue
+++ b/admin-web/src/views/departmentitem/itemdis/disDetails/index.vue
@@ -10,12 +10,12 @@
           <el-row style="margin-top: 15px">
             <el-col>
               <!--鍒楄〃-->
-              <my-table-v2 ref="myTable" :filter="filterFrom" :table="table" />
+              <my-table-v2 ref="myTable" :filter="filterFrom" :table="table"/>
             </el-col>
           </el-row>
           <!--娣诲姞/缂栬緫寮圭獥-->
-          <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search" />
-          <detail v-if="detailSetting.show" :setting="detailSetting" @close="detailSetting.show = false" />
+          <edit v-if="editSetting.show" :setting="editSetting" @close="editSetting.show = false" @search="search"/>
+          <detail v-if="detailSetting.show" :setting="detailSetting" @close="detailSetting.show = false"/>
         </el-card>
       </el-container>
     </el-container>
@@ -29,11 +29,12 @@
 import edit from './edit';
 import detail from '../distribution/detail';
 import * as finsystenant from '@/api/baseSetting/finsystenant';
-import { getBaseUrl } from '@/utils/base';
+import {getBaseUrl} from '@/utils/base';
+import * as DateFormatter from "@/utils/DateFormatter";
 
 export default {
   name: 'index',
-  components: { MyButton, MyTableV2, edit, detail },
+  components: {MyButton, MyTableV2, edit, detail},
   data() {
     return {
       // 鎼滅储妗�
@@ -65,7 +66,7 @@
           dataIndex: 'agencyId',
           label: '鏈烘瀯',
           placeholder: '璇烽�夋嫨',
-          optionsConfig: { url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null },
+          optionsConfig: {url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null},
           defaultValue: '',
           options: [],
         },
@@ -120,7 +121,7 @@
       table: {
         showIndex: true, // 鏄惁鏄剧ず搴忓彿
         expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
-        url: SettingIplatform.apiBaseURL + '/pc/fin/sys/tenant/select/list', // 璇锋眰鍦板潃
+        url: SettingIplatform.apiBaseURL + '/pc/l/wh/form/transfer/department/list', // 璇锋眰鍦板潃
         // 宸ュ叿鏉�
         tools: {
           columnsCtrl: {
@@ -136,20 +137,30 @@
         },
         // 鍒椾俊鎭�
         columns: [
-          { title: '鍗曞彿', field: 'code', align: 'center' },
-          { title: '鐗╁搧鍚嶇О', field: 'lv', align: 'center' },
-          { title: '绫诲埆', field: 'lv', align: 'center' },
-          { title: '瑙勬牸鍨嬪彿', field: 'lv', align: 'center' },
-          { title: '鍒嗗彂鏁伴噺', field: 'summary', align: 'left' },
-          { title: '鎵�灞炴満鏋�', field: 'summary', align: 'left' },
-          { title: '閮ㄩ棬', field: 'summary', align: 'left' },
-          { title: '鍒嗗彂浜�', field: 'summary', align: 'left' },
-          { title: '鎿嶄綔鏃堕棿', field: 'summary', align: 'left' },
+          {title: '鍗曞彿', field: 'businessFormCode', align: 'center', width: 130},
+          {title: '鐗╁搧鍚嶇О', field: 'goodsName', align:  'left', minWidth: 140},
+          {
+            title: '绫诲埆', field: 'type', align: 'center', formatter: (row) => {
+              return {value: row.type + '绫�'};
+            },
+          },
+          {title: '瑙勬牸鍨嬪彿', field: 'goodsModelName', align: 'left', minWidth: 130},
+          {title: '鍒嗗彂鏁伴噺', field: 'goodsCount', align: 'center'},
+          {title: '鎵�灞炴満鏋�', field: 'tenantName', align: 'left', minWidth: 130},
+          {title: '閮ㄩ棬', field: 'departmentName', align: 'left', minWidth: 130},
+          {title: '鍒嗗彂浜�', field: 'operatorName', align: 'center'},
+          {
+            title: '鎿嶄綔鏃堕棿', field: 'createTime', align: 'center',
+            width: 160,
+            formatter: (row) => {
+              return {value: DateFormatter.LongToDateTime(row.createTime)};
+            },
+          },
         ],
         // 鎿嶄綔淇℃伅
         operation: {
           show: true, // 鏄剧ず鎿嶄綔鍒�
-          width: '200', // 鍒楀
+          width: 160, // 鍒楀
           attr: [
             {
               title: '浣跨敤浜�',
@@ -180,7 +191,8 @@
       },
     };
   },
-  created() {},
+  created() {
+  },
   methods: {
     handleEdit(row) {
       this.editSetting.id = row.id;
diff --git a/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue b/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue
index d3591d8..e0a6b7d 100644
--- a/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue
+++ b/admin-web/src/views/departmentitem/itemdis/distribution/detail.vue
@@ -3,35 +3,35 @@
     <el-row :gutter="20">
       <el-col :span="8">
         <span>鍒嗗彂鍗曞彿锛�</span>
-        <span>SL2023001</span>
+        <span>{{detail.businessFormCode}}</span>
       </el-col>
       <el-col :span="8">
         <span>鎵�灞炴満鏋勶細</span>
-        <span>娌冲崡鐪侀偖鏀垮垎鍏徃</span>
+        <span>{{detail.outAgencyName}}</span>
       </el-col>
       <el-col :span="8">
         <span>閮ㄩ棬锛�</span>
-        <span>閲戣瀺涓氬姟閮�</span>
+        <span>{{detail.inWarehouseName}}</span>
       </el-col>
     </el-row>
     <el-row :gutter="20" style="margin-top: 20px">
       <el-col :span="8">
         <span>鍒嗗彂浜猴細</span>
-        <span>寮犵埍鐢�</span>
+        <span>{{detail.outOperatorName}}</span>
       </el-col>
       <el-col :span="8">
         <span>鍒嗗彂鏃堕棿锛�</span>
-        <span>2023-08-08 10:23:12</span>
+        <span>{{detail.createTime|formatTime}}</span>
       </el-col>
       <el-col :span="8">
         <span>棰嗗彇浜猴細</span>
-        <span>鐜嬮儴闂�</span>
+        <span>{{detail.inOperatorName}}</span>
       </el-col>
     </el-row>
     <el-row :gutter="20" style="margin-top: 20px">
       <el-col :span="8">
         <span>鑱旂郴鐢佃瘽锛�</span>
-        <span>18500000001</span>
+        <span>{{detail.tel}}</span>
       </el-col>
     </el-row>
     <el-row :gutter="20" style="margin-top: 20px">
@@ -42,67 +42,62 @@
         </div>
       </el-col>
     </el-row>
-    <div class="goods-card" v-for="(goodsItem, goodsIndex) in detail.procureGoods" :key="goodsIndex">
+    <div class="goods-card" v-for="(goodsItem, goodsIndex) in detail.formTransferGoods" :key="goodsIndex">
       <el-row :gutter="20">
         <el-col :span="8">
           <span>鐗╁搧鍒嗙被锛�</span>
-          <span>{{ goodsItem.baseCategoryName }}</span>
+          <span>{{ goodsItem.categoryName }}</span>
         </el-col>
         <el-col :span="8">
           <span>鐗╁搧鍚嶇О锛�</span>
-          <span>{{ goodsItem.goodsTemplateName }}</span>
+          <span>{{ goodsItem.goodsName }}</span>
         </el-col>
         <el-col :span="8">
           <span>鐗╁搧绫诲埆锛�</span>
-          <span>{{ goodsItem.supplier }}</span>
+          <span>{{ goodsItem.type }}绫�</span>
         </el-col>
       </el-row>
-      <div v-if="goodsItem.type===1">
-        <el-table :data="goodsItem.models" :stripe="true" style="margin-top: 20px">
-          <el-table-column prop="baseGoodsModelsName" label="瑙勬牸鍨嬪彿" align="center">
-            <template slot-scope="scope">
-              {{ scope.row.baseGoodsModelsName }}
-            </template>
-          </el-table-column>
-          <el-table-column label="鍗曚綅" align="center">
-            <template slot-scope="scope">
-              {{ scope.row.unit }}
-            </template>
-          </el-table-column>
-          <el-table-column prop="price" label="鍒嗗彂鏁伴噺" align="center">
-            <template slot-scope="scope">
-              {{ scope.row.price | formatPrice }}
-            </template>
-          </el-table-column>
-          <el-table-column prop="counts" label="浣跨敤浜�" align="center">
-            <template slot-scope="scope">
-              {{ scope.row.counts }}
-            </template>
-          </el-table-column>
-          <el-table-column prop="counts" label="鑱旂郴鐢佃瘽" align="center">
-            <template slot-scope="scope">
-              {{ scope.row.price * scope.row.counts  | formatPrice}}
-            </template>
-          </el-table-column>
-        </el-table>
-      </div>
-      <div v-else>
-        <el-table-column prop="baseGoodsModelsName" label="瑙勬牸鍨嬪彿" align="center">
-          <template slot-scope="scope">
-            {{ scope.row.baseGoodsModelsName }}
-          </template>
-        </el-table-column>
-        <el-table-column label="鍗曚綅" align="center">
-          <template slot-scope="scope">
-            {{ scope.row.unit }}
-          </template>
-        </el-table-column>
-        <el-table-column prop="price" label="鍒嗗彂鏁伴噺" align="center">
-          <template slot-scope="scope">
-            {{ scope.row.price | formatPrice }}
-          </template>
-        </el-table-column>
-      </div>
+      <el-form>
+        <el-row class="card3" v-for="(mItem, mIndex) in goodsItem.models" :key="mIndex">
+          <el-col :span="10">
+            <el-form-item label="瑙勬牸鍨嬪彿:"  style="margin-bottom: 0">
+              {{ mItem.baseGoodsModelsName }}
+            </el-form-item>
+          </el-col>
+          <el-col :span="4">
+            <el-form-item label="鍗曚綅:" style="margin-bottom: 0" label-width="80">
+              {{mItem.unit}}
+            </el-form-item>
+          </el-col>
+          <!--A绫诲晢鍝� -->
+          <el-col :span="24" v-if="goodsItem.type==='A'">
+            <el-row v-for="(user, u) in mItem.useInfo">
+              <el-col :span="6">
+                <el-form-item label="鍒嗗彂鏁伴噺:" style="margin-bottom: 0" label-width="80">
+                  {{user.num}}
+                </el-form-item>
+              </el-col>
+              <el-col :span="6">
+                <el-form-item label="浣跨敤浜�:" style="margin-bottom: 0" label-width="80">
+                  {{user.name}}
+                </el-form-item>
+              </el-col>
+              <el-col :span="6">
+                <el-form-item label="鑱旂郴鐢佃瘽:" style="margin-bottom: 0" label-width="80">
+                  {{user.tel}}
+                </el-form-item>
+              </el-col>
+            </el-row>
+          </el-col>
+          <!--BC绫诲晢鍝� -->
+          <el-col style="padding: 10px 0" :span="10" v-else>
+            <el-form-item label="鍒嗗彂鏁伴噺:" prop="counts" style="margin-bottom: 0" label-width="80">
+              {{mItem.counts}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+
     </div>
     <div id="uploadPreviewImages" style="display: none">
       <span v-for="(src, index) in fileList" :key="index">
@@ -118,16 +113,22 @@
   </win-lg>
 </template>
 <script>
-import { procureDetail } from '@/api/stock/procure/purchaseOrder';
+import { transferDetail } from '@/api/stock/transfer';
 import winLg from '@/components/win/win-lg';
 import * as DateFormatter from '@/utils/DateFormatter';
 import { getDownUrl } from '@/utils/base';
 import Viewer from 'viewerjs';
 import 'viewerjs/dist/viewer.css';
+import de from "element-ui/src/locale/lang/de";
 
 let viewer = null;
 
 export default {
+  computed: {
+    de() {
+      return de
+    }
+  },
   components: { winLg },
   props: {
     setting: {
@@ -164,7 +165,7 @@
     }
   },
   created() {
-    procureDetail({ id: this.setting.id }).then((res) => {
+    transferDetail({ id: this.setting.id }).then((res) => {
       this.detail = res;
       this.fileList = this.detail.procureDoc ? JSON.parse(this.detail.procureDoc) : [];
       this.$nextTick(() => {
@@ -225,4 +226,10 @@
 </script>
 <style lang="scss" scoped>
 //@import url(../../../../styles/store.scss);
+.card3 {
+  padding: 10px;
+  margin-top: 10px;
+  border-radius: 2px;
+  background: #ffffff;
+}
 </style>
diff --git a/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue b/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue
index ac9c234..1a44026 100644
--- a/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue
+++ b/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue
@@ -1,36 +1,37 @@
 <template>
-  <win-md class="stock-edit" title="鐗╁搧鍒嗗彂" @close="close" :width="'800px'">
-    <el-form class="form" ref="ruleForm" :model="formData" :rules="rules" label-width="120px">
+  <win-md class="stock-edit" title="鐗╁搧鍒嗗彂" @close="close" width="900px">
+    <el-form v-loading="loading" class="form" ref="ruleForm" :model="formData" :rules="rules" label-width="120px">
       <div class="main-w">
         <el-row :gutter="24" class="headerHeight">
           <el-col :span="12">
-            <el-form-item label="閮ㄩ棬" prop="warehouseId">
-              <el-select v-model="formData.warehouseId" placeholder="璇烽�夋嫨" style="width: 100%">
-                <el-option v-for="item in departmentOptions" :key="item.id" :label="item.name" :value="item.id" />
+            <el-form-item label="閮ㄩ棬" prop="departmentId">
+              <el-select ref="department" v-model="formData.departmentId" placeholder="璇烽�夋嫨" style="width: 100%">
+                <el-option v-for="item in departmentOptions" :key="item.id" :label="item.name" :value="item.id"
+                           clearable/>
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="棰嗗彇浜�" prop="warehouseId">
-              <el-input v-model="formData.warehouseId" placeholder="璇疯緭鍏�"></el-input>
+            <el-form-item label="棰嗗彇浜�" prop="operatorName">
+              <el-input v-model="formData.operatorName" placeholder="璇疯緭鍏�" clearable></el-input>
             </el-form-item>
           </el-col>
         </el-row>
         <el-row :gutter="24" class="headerHeight">
           <el-col :span="12">
-            <el-form-item label="鑱旂郴鐢佃瘽" prop="buyType">
-              <el-input v-model.number="formData.buyType" placeholder="璇疯緭鍏�"></el-input>
+            <el-form-item label="鑱旂郴鐢佃瘽" prop="tel">
+              <el-input v-model.number="formData.tel" placeholder="璇疯緭鍏�" clearable></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="閲囪喘鏃堕棿" prop="procureTime">
+            <el-form-item label="棰嗗彇鏃堕棿" prop="createTime">
               <el-date-picker
-                v-model="formData.procureTime"
-                type="datetime"
-                value="yyyy-MM-dd HH:mm:ss"
-                value-format="yyyyMMddHHmmss"
-                placeholder="璇烽�夋嫨鏃ユ湡"
-                style="width: 100%"
+                  v-model="formData.createTime"
+                  type="datetime"
+                  clearable
+                  value-format="yyyyMMddHHmmss"
+                  placeholder="璇烽�夋嫨鏃ユ湡"
+                  style="width: 100%"
               >
               </el-date-picker>
             </el-form-item>
@@ -43,46 +44,49 @@
             </el-form-item>
           </el-col>
         </el-row>
-        <div class="goods-card" v-for="(goodsItem, goodsIndex) in formData.procureGoods" :key="goodsIndex">
+        <div class="goods-card" v-for="(goodsItem, goodsIndex) in formData.transferGoods" :key="goodsIndex">
           <el-row :gutter="24">
             <el-col :span="12">
               <el-form-item
-                label="鐗╁搧鍒嗙被"
-                :prop="`procureGoods[${goodsIndex}].baseCategoryIds`"
-                :rules="{
+                  label="鐗╁搧鍒嗙被"
+                  :prop="`transferGoods.${goodsIndex}.baseCategoryId`"
+                  :rules="{
                   required: true,
-                  message: '璇烽�夋嫨',
+                  message: '璇烽�夋嫨鐗╁搧鍒嗙被',
                   trigger: 'change',
                 }"
               >
                 <el-cascader
-                  v-model="goodsItem.baseCategoryIds"
-                  :options="categoryOptions"
-                  :props="{ value: 'id' }"
-                  @change="categoryChange($event, goodsIndex)"
-                  style="width: 100%"
+                    v-model="goodsItem.baseCategoryId"
+                    :options="categoryOptions"
+                    :props="{ value: 'id',emitPath: false }"
+                    :show-all-levels="false"
+                    clearable
+                    @change="categoryChange($event, goodsIndex)"
+                    style="width: 100%"
                 ></el-cascader>
               </el-form-item>
             </el-col>
             <el-col :span="12">
               <el-form-item
-                label="鐗╁搧鍚嶇О"
-                :prop="`procureGoods[${goodsIndex}].baseGoodsTemplateId`"
-                :rules="rules.baseGoodsTemplateId"
+                  label="鐗╁搧鍚嶇О"
+                  :prop="`transferGoods.${goodsIndex}.baseGoodsTemplateId`"
+                  :rules="rules.baseGoodsTemplateId"
               >
                 <el-select
-                  v-model="goodsItem.baseGoodsTemplateId"
-                  placeholder="璇峰厛鎷╃墿鍝佸垎绫�"
-                  filterable
-                  :disabled="!goodsItem.baseCategoryId"
-                  style="width: 100%"
-                  @change="goodsTemplateChange($event, goodsIndex)"
+                    v-model="goodsItem.baseGoodsTemplateId"
+                    placeholder="璇烽�夋嫨鐗╁搧"
+                    filterable
+                    clearable
+                    :disabled="!goodsItem.baseCategoryId"
+                    style="width: 100%"
+                    @change="goodsTemplateChange($event, goodsIndex)"
                 >
                   <el-option
-                    v-for="item in goodsItem.goodsOptions"
-                    :key="item.id"
-                    :label="item.goodsName"
-                    :value="item.id"
+                      v-for="item in goodsItem.goodsOptions"
+                      :key="item.id"
+                      :label="item.goodsName"
+                      :value="item.id"
                   />
                 </el-select>
               </el-form-item>
@@ -91,136 +95,154 @@
           <el-row :gutter="24">
             <el-col :span="12">
               <el-form-item
-                label="瑙勬牸鍨嬪彿"
-                :prop="`procureGoods[${goodsIndex}].modelsIds`"
-                :rules="{required: true,message: '璇烽�夋嫨',trigger: 'change',}">
+                  label="瑙勬牸鍨嬪彿"
+                  :prop="`transferGoods.${goodsIndex}.modelsIds`"
+                  :rules="{required: true,message: '璇烽�夋嫨',trigger: 'change',}">
                 <el-select
-                  v-model="goodsItem.modelsIds"
-                  multiple
-                  placeholder="璇峰厛鎷╃墿鍝佸悕绉�"
-                  :disabled="!goodsItem.baseCategoryId"
-                  @change="modelChange($event, goodsIndex)"
-                  @remove-tag="modelRemoveTag($event, goodsIndex)"
-                  style="width: 100%"
+                    v-model="goodsItem.modelsIds"
+                    multiple
+                    placeholder="璇烽�夋嫨鐗╁搧瑙勬牸鍨嬪彿"
+                    :disabled="!goodsItem.baseCategoryId"
+                    @change="modelChange($event, goodsIndex)"
+                    @remove-tag="modelRemoveTag($event, goodsIndex)"
+                    style="width: 100%"
                 >
                   <el-option
-                    v-for="item in goodsItem.modelsOptions"
-                    :key="item.id"
-                    :label="item.modelName"
-                    :value="item.id"
+                      v-for="item in goodsItem.modelsOptions"
+                      :key="item.id"
+                      :label="item.modelName"
+                      :value="item.id"
                   />
                 </el-select>
               </el-form-item>
             </el-col>
           </el-row>
           <el-row class="card3" v-for="(mItem, mIndex) in goodsItem.models" :key="mIndex">
-            <el-row :gutter="24" type="flex" align="middle" style="height: 50px">
-              <el-col :span="8">
-                <el-form-item label="瑙勬牸鍨嬪彿:" prop="baseGoodsModelsId" style="margin-bottom: 0">
-                  {{ getGoodsModelsName(mItem.baseGoodsModelsId) }}
-                </el-form-item>
-              </el-col>
-              <el-col :span="6">
-                <el-form-item label="鍓╀綑鏁伴噺:" prop="baseGoodsModelsId" style="margin-bottom: 0" label-width="80">
-                  50
-                </el-form-item>
-              </el-col>
-              <!--A绫诲晢鍝� -->
-              <el-col :span="24" v-if="goodsItem.type===1">
-                <el-table :data="mItem.clist" :stripe="true" >
-                  <el-table-column prop="count" label="鍒嗗彂鏁伴噺" align="center">
-                    <template slot-scope="scope">
-                      <el-input v-model="scope.row.count"></el-input>
-                    </template>
-                  </el-table-column>
-                  <el-table-column prop="count" label="浣跨敤浜�" align="center">
-                    <template slot-scope="scope">
-                      <el-input v-model="scope.row.user" maxlength="20"></el-input>
-                    </template>
-                  </el-table-column>
-                  <el-table-column prop="count" label="鑱旂郴鐢佃瘽" align="center">
-                    <template slot-scope="scope">
-                      <el-input v-model.number="scope.row.phone" maxlength="11"></el-input>
-                    </template>
-                  </el-table-column>
-                  <el-table-column align="left" width="60">
-                    <template slot-scope="scope">
-                      <i
-                        v-if="mItem.clist.length > 1"
+            <el-col style="padding: 10px 0" :span="10">
+              <el-form-item label="瑙勬牸鍨嬪彿:" style="margin-bottom: 0">
+                {{ getGoodsModelsName(mItem.baseGoodsModelsId) }}
+              </el-form-item>
+            </el-col>
+            <el-col style="padding: 10px 0" :span="4">
+              <el-form-item label="鍓╀綑鏁伴噺:" style="margin-bottom: 0" label-width="80">
+                {{ mItem.worehouseCount }}
+              </el-form-item>
+            </el-col>
+            <!--A绫诲晢鍝� -->
+            <el-col :span="24" v-if="goodsItem.classification==='A'">
+              <el-table :data="mItem.procureModelUserList" :stripe="true">
+                <el-table-column label="鍒嗗彂鏁伴噺" align="center">
+                  <template slot-scope="{$index,row}">
+                    <el-form-item
+                        :prop="`transferGoods.${goodsIndex}.models.${mIndex}.procureModelUserList.${$index}.goodsNum`"
+                        label-width="0"
+                    >
+                      <el-input v-model="row.goodsNum" style="width: 100%"></el-input>
+                    </el-form-item>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="nowUserName" label="浣跨敤浜�" align="center">
+                  <template slot-scope="{$index,row}">
+                    <el-form-item
+                        :prop="`transferGoods.${goodsIndex}.models.${mIndex}.procureModelUserList.${$index}.nowUserName`"
+                        label-width="0"
+                    >
+                      <el-input v-model="row.nowUserName" style="width: 100%"></el-input>
+                    </el-form-item>
+                  </template>
+                </el-table-column>
+                <el-table-column prop="nowUserPhone" label="鑱旂郴鐢佃瘽" align="center">
+                  <template slot-scope="{$index,row}">
+                    <el-form-item
+                        :prop="`transferGoods.${goodsIndex}.models.${mIndex}].procureModelUserList.${$index}.nowUserPhone`"
+                        label-width="0"
+                    >
+                      <el-input v-model="row.nowUserPhone" style="width: 100%"></el-input>
+                    </el-form-item>
+                  </template>
+                </el-table-column>
+                <el-table-column align="left" width="60">
+                  <template slot-scope="scope">
+                    <i
+                        v-if="mItem.procureModelUserList.length > 1"
                         class="el-icon-remove-outline"
                         style="color: #f56c6c; font-size: 16px; cursor: pointer"
                         @click="handleDel(goodsIndex, mIndex, scope.$index)"
-                      ></i>
-                      <i
-                        v-if="mItem.clist.length - 1 == scope.$index"
+                    ></i>
+                    <i
+                        v-if="mItem.procureModelUserList.length - 1 == scope.$index"
                         class="el-icon-circle-plus-outline"
                         style="color: #0d997c; font-size: 16px; cursor: pointer"
                         @click="handleAdd(goodsIndex, mIndex, scope.$index)"
-                      ></i>
-                    </template>
-                  </el-table-column>
-                </el-table>
-              </el-col>
-              <!--BC绫诲晢鍝� -->
-              <el-col :span="10" v-else>
-                <el-form-item label="鍒嗗彂鏁伴噺:" prop="baseGoodsModelsId" style="margin-bottom: 0" label-width="80">
-                  <el-input v-model.number="mItem.count" style="width: 160px;"></el-input>
-                </el-form-item>
-              </el-col>
-            </el-row>
+                    ></i>
+                  </template>
+                </el-table-column>
+              </el-table>
+            </el-col>
+            <!--BC绫诲晢鍝� -->
+            <el-col style="padding: 10px 0" :span="10" v-else>
+              <el-form-item
+                  label="鍒嗗彂鏁伴噺:"
+                  :prop="`transferGoods.${goodsIndex}.models.${mIndex}.counts`"
+                  style="margin-bottom: 0" label-width="80">
+                <el-input v-model.number="goodsItem.models[mIndex].counts" style="width: 160px;"></el-input>
+              </el-form-item>
+            </el-col>
           </el-row>
           <div class="btn-group">
             <el-button
-              v-if="formData.procureGoods.length > 1"
-              name="绉婚櫎"
-              type="danger"
-              plain
-              size="mini"
-              @click="removeGoods(goodsIndex)"
-              >绉婚櫎</el-button>
+                v-if="formData.transferGoods.length > 1"
+                name="绉婚櫎"
+                type="danger"
+                plain
+                size="mini"
+                @click="removeGoods(goodsIndex)"
+            >绉婚櫎
+            </el-button>
             <el-button
-              v-if="formData.procureGoods.length - 1 == goodsIndex"
-              name="鏂板鐗╁搧"
-              type="primary"
-              plain
-              size="mini"
-              @click="addGoods"
-              >鏂板鐗╁搧</el-button>
+                v-if="formData.transferGoods.length - 1 == goodsIndex"
+                name="鏂板鐗╁搧"
+                type="primary"
+                plain
+                size="mini"
+                @click="addGoods"
+            >鏂板鐗╁搧
+            </el-button>
           </div>
         </div>
       </div>
     </el-form>
     <div slot="footer" align="center" class="dialog-footer">
-      <my-button name="鍙栨秷" site="form" @click="close" />
-      <my-button name="淇濆瓨" site="form" @click="handleSubmit" />
+      <my-button name="鍙栨秷" site="form" @click="close"/>
+      <my-button name="淇濆瓨" site="form" @click="handleSubmit"/>
     </div>
   </win-md>
 </template>
 <script>
 import {
   goodsTemplate,
-  procureAdd,
-  procureEdit,
-  selectTenantWarehouse,
   goodsModel,
-  procureDetail,
 } from '@/api/stock/procure/purchaseOrder';
-import { departmentListAll } from '@/api/system/deptment';
-import { getTree } from '@/api/foudation/classification';
+import {
+  transferAdd
+} from '@/api/stock/transfer';
+import {departmentListAll} from '@/api/system/deptment';
+import {getTree} from '@/api/foudation/classification';
 import MyButton from '@/components/myButton/myButton';
 import winMd from '@/components/win/win-md';
 import upload from '@/components/upload/index';
-import { getUploadUrl, getDownUrl } from '@/utils/base';
-import { findParentIds } from '@/utils/index';
-import { mapGetters } from 'vuex';
+import {getUploadUrl} from '@/utils/base';
+import {mapGetters} from 'vuex';
 import * as DateFormatter from '@/utils/DateFormatter';
+import {warehouseSelectNumber} from "@/api/baseSetting/finsystenant";
 
 export default {
-  components: { MyButton, winMd, upload },
+  components: {MyButton, winMd, upload},
   props: {
     setting: {
       type: Object,
-      default: () => {},
+      default: () => {
+      },
     },
   },
   data() {
@@ -230,7 +252,7 @@
       if (!value) {
         return callback(new Error('璇烽�夋嫨'));
       }
-      let temp = this.formData.procureGoods.filter((v) => v.baseGoodsTemplateId == value);
+      let temp = this.formData.transferGoods.filter((v) => v.baseGoodsTemplateId == value);
       if (!temp || temp.length != 1) {
         return callback(new Error('宸查�夎繃姝ょ墿鍝�'));
       }
@@ -269,18 +291,20 @@
       categoryOptions: [], // 鐗╁搧鍒嗙被鍒楄〃
       modelList: [], //鍨嬪彿鍒楄〃
       formData: {
+        transferBusinessType: 1, // 鍗曟嵁绫诲瀷銆�0浠撳簱璋冩嫧锛�1閮ㄩ棬鍒嗗彂锛�2閮ㄩ棬鐗╁搧鍥為��
+        departmentId: '', // 閮ㄩ棬id
+        departmentName: '', // 閮ㄩ棬鍚嶇О
+        operatorName: '', // 棰嗗彇浜�
+        tel: '', // 鑱旂郴鐢佃瘽
+        createTime: DateFormatter.formatDate(new Date(), 'yyyyMMddhhmmss'), // 鍒嗗彂鏃堕棿
         procureDoc: '',
-        warehouseId: '', // 鍏ュ簱浠撳簱id
-        procureTime: DateFormatter.formatDate(new Date()), // 閲囪喘鏃堕棿
-        procureGoods: [],
+        transferGoods: [],
       },
       goodsItem: {
-        baseCategoryIds: '', // 鍒嗙被缂栧彿鏁扮粍
         baseCategoryId: '', // 鍒嗙被缂栧彿
+        classification: '',
         baseGoodsTemplateId: '', // 鐗╁搧妯$増缂栧彿
         goodsTemplateName: '', // 鐗╁搧妯$増鍚嶇О
-        supplier: '', // 渚涘簲鍟�
-        sort: '', // 鏄剧ず椤哄簭
         goodsOptions: [], // 鐗╁搧鍒楄〃select
         modelsOptions: [], //瑙勬牸鍨嬪彿select
         models: [], // 鐗╁搧鍚嶇О
@@ -288,23 +312,38 @@
       },
       modelsItem: {
         baseGoodsModelsId: '', // 瑙勬牸鍨嬪彿缂栧彿
-        syCount: '',
+        procureModelUserList: [],
+        counts: '',
       },
       clistItem: {
-        count: null,
-        user: null,
-        phone: null,
+        goodsNum: null,
+        nowUserName: null,
+        nowUserPhone: null,
       },
       rules: {
-        warehouseId: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
-        procureTime: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
-        buyType: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
+        departmentId: [{required: true, message: '璇烽�夋嫨閮ㄩ棬', trigger: 'change'}],
+        operatorName: [{required: true, message: '璇峰~鍐欓鍙栦汉', trigger: 'blur'}],
+        tel: [{required: true, message: '璇峰~鍐欒仈绯荤數璇�', trigger: 'blur'}],
+        createTime: [{required: true, message: '璇烽�夋嫨鍒嗗彂鏃堕棿', trigger: 'change'}],
+        procureDoc: [{required: true, message: '璇蜂笂浼犲鎵规墜缁�', trigger: 'change'}],
+        baseCategoryIds: [{required: true, message: '璇烽�夋嫨', trigger: 'change'}],
+        baseGoodsTemplateId: [{validator: checkGoodsTemplateId, trigger: ['blur', 'change']}],
+        modelsIds: [{required: true, message: '璇烽�夋嫨', trigger: 'change'}],
+        transferGoods:{
+          models:{
+            counts: [
+              { required: true, message: '璇疯緭鍏�', trigger: 'change' },
+              { type: 'number', message: '鏁伴噺蹇呴』涓烘暣鏁�' },
+            ],
+            procureModelUserList:{
+              goodsNum: [ { required: true, message: '璇疯緭鍏�', trigger: 'blur' }],
+              nowUserName: [ { required: true, message: '璇疯緭鍏�', trigger: 'blur' }],
+              nowUserPhone: [ { required: true, message: '璇疯緭鍏�', trigger: 'blur' }],
+            }
+          }
+        }
 
-        procureDoc: [{ required: true, message: '璇蜂笂浼�', trigger: 'change' }],
-        baseCategoryIds: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
-        baseGoodsTemplateId: [{ validator: checkGoodsTemplateId, trigger: ['blur', 'change'] }],
-        modelsIds: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }],
-        counts: [{ validator: checkCounts, trigger: 'blur' }],
+
       },
 
       uploadSettings: {
@@ -334,7 +373,7 @@
       // 鑾峰彇鐗╁搧鍒嗙被鍒楄〃
       const treeRes = await getTree();
       this.categoryOptions = this.removeEmptyChildren(treeRes);
-      if (this.setting.id) {
+      /*if (this.setting.id) {
         const detail = await procureDetail({ id: this.setting.id });
         this.formData = Object.assign(this.formData, detail);
         if (this.formData.procureDoc) {
@@ -342,40 +381,38 @@
         }
         this.$set(this.formData, 'buyType', this.formData.buyType.toString());
         this.formData.procureTime = this.formData.procureTime.toString();
-        this.formData.procureGoods.map((item, index) => {
-          // 鏍规嵁瀛愰泦ID鎷兼帴鐗╁搧鍒嗙被鍒楄〃
-          item.baseCategoryIds = findParentIds(this.categoryOptions, item.baseCategoryId);
+        this.formData.transferGoods.map((item, index) => {
           this.$set(
-            this.formData.procureGoods[index],
+            this.formData.transferGoods[index],
             'modelsIds',
             item.models.map((v) => v.baseGoodsModelsId),
           );
           this.getgoodsTemplate(item.baseCategoryId, index);
           this.getgoodsModel(item.baseGoodsTemplateId, index);
           item.models.forEach((child, childIndex) => {
-            this.$set(this.formData.procureGoods[index].models[childIndex], 'priceYuan', child.price / 100);
+            this.$set(this.formData.transferGoods[index].models[childIndex], 'priceYuan', child.price / 100);
           });
           return item;
         });
-      }
+      }*/
     },
 
     // 鑾峰彇鍏ュ簱浠撳簱鍒楄〃
     getdeptmentList() {
-      departmentListAll({ agencyId: this.userInfo.tenantId })
-        .then((res) => {
-          this.departmentOptions = res;
-          if (!this.setting.id && res.length) {
-            this.formData.procureGoods.push(JSON.parse(JSON.stringify(this.goodsItem)));
-          }
-          if (this.departmentOptions.length && !this.formData.warehouseId) {
-            // 榛樿閫変腑绗竴涓粨搴�
-            this.formData.warehouseId = this.departmentOptions[0].id;
-          }
-        })
-        .catch((err) => {
-          console.log('err', err);
-        });
+      departmentListAll({agencyId: this.userInfo.tenantId})
+          .then((res) => {
+            this.departmentOptions = res;
+            if (!this.setting.id && res.length) {
+              this.formData.transferGoods.push(JSON.parse(JSON.stringify(this.goodsItem)));
+            }
+            if (this.departmentOptions.length && !this.formData.warehouseId) {
+              // 榛樿閫変腑绗竴涓粨搴�
+              this.formData.warehouseId = this.departmentOptions[0].id;
+            }
+          })
+          .catch((err) => {
+            console.log('err', err);
+          });
     },
 
     removeEmptyChildren(arr) {
@@ -391,9 +428,10 @@
 
     // 鑾峰彇鐗╁搧鍚嶇О鍒楄〃
     getgoodsTemplate(id, index) {
-      goodsTemplate({ categoryId: id || '' }).then((res) => {
+      goodsTemplate({categoryId: id || '', agencyId: this.userInfo.tenantId}).then((res) => {
         if (index || index == 0) {
-          this.$set(this.formData.procureGoods[index], 'goodsOptions', res);
+          this.$set(this.formData.transferGoods[index], 'goodsOptions', res);
+          this.$set(this.formData.transferGoods[index], 'classification', res[0].classification);
         } else {
           this.goodsTemplatelAll = res;
         }
@@ -402,9 +440,9 @@
 
     // 瑙勬牸鍨嬪彿
     getgoodsModel(id, index) {
-      goodsModel({ goodsTemplatesId: id || '' }).then((res) => {
+      goodsModel({goodsTemplatesId: id || '', agencyId: this.userInfo.tenantId}).then((res) => {
         if (index || index == 0) {
-          this.$set(this.formData.procureGoods[index], 'modelsOptions', res);
+          this.$set(this.formData.transferGoods[index], 'modelsOptions', res);
         } else {
           this.goodsModelAll = res;
         }
@@ -431,60 +469,65 @@
 
     // 鐗╁搧鍒嗙被閫夋嫨
     categoryChange(e, index) {
-      this.formData.procureGoods[index].goodsOptions = [];
-      this.formData.procureGoods[index].baseGoodsTemplateId = '';
-      this.formData.procureGoods[index].goodsTemplateName = '';
-      this.formData.procureGoods[index].modelsOptions = [];
-      this.formData.procureGoods[index].modelsIds = [];
-      this.formData.procureGoods[index].models = [];
-
-      this.formData.procureGoods[index].baseCategoryId = e[e.length - 1];
+      this.formData.transferGoods[index].goodsOptions = [];
+      this.formData.transferGoods[index].baseGoodsTemplateId = '';
+      this.formData.transferGoods[index].goodsTemplateName = '';
+      this.formData.transferGoods[index].modelsOptions = [];
+      this.formData.transferGoods[index].modelsIds = [];
+      this.formData.transferGoods[index].models = [];
       // 鏍规嵁閫変腑鍒嗙被璇锋眰鐗╁搧鍚嶇О鍒楄〃
-      this.getgoodsTemplate(e[e.length - 1], index);
+      this.getgoodsTemplate(e, index);
     },
 
     // 鐗╁搧鍚嶇О鍒楄〃
     goodsTemplateChange(e, index) {
-      this.formData.procureGoods[index].modelsOptions = [];
-      this.formData.procureGoods[index].modelsIds = [];
-      this.formData.procureGoods[index].models = [];
+      this.formData.transferGoods[index].modelsOptions = [];
+      this.formData.transferGoods[index].modelsIds = [];
+      this.formData.transferGoods[index].models = [];
 
-      this.formData.procureGoods[index].goodsTemplateName = this.getGoodsTemplateName(e);
+      this.formData.transferGoods[index].goodsTemplateName = this.getGoodsTemplateName(e);
       // 鏍规嵁閫変腑鐗╁搧鍚嶇Оid鑾峰彇瑙勬牸鍨嬪彿鍒楄〃
       this.getgoodsModel(e, index);
     },
 
     // 瑙勬牸鍨嬪彿閫夋嫨
-    modelChange(e, index) {
-      let arr = [...this.formData.procureGoods[index].models];
+    async modelChange(e, index) {
+      let arr = [...this.formData.transferGoods[index].models];
       let str = JSON.stringify(arr);
-      e.forEach((item) => {
-        if (str.indexOf(item) == -1) {
-          let clist = [JSON.parse(JSON.stringify(this.clistItem))];
-          arr.push({ ...this.modelsItem, baseGoodsModelsId: item, clist });
+      for (const item of e) {
+        if (str.indexOf(item) === -1) {
+          let num = await warehouseSelectNumber({
+            baseGoodsModelsId: item,
+            warehouseType: 0,
+            states: 1,
+            agencyId: this.userInfo.tenantId,
+          });
+          let procureModelUserList = [JSON.parse(JSON.stringify(this.clistItem))];
+          arr.push({...this.modelsItem, baseGoodsModelsId: item, procureModelUserList, worehouseCount: num});
+          // arr.push({...this.modelsItem, baseGoodsModelsId: item, procureModelUserList});
         }
-      });
-      this.formData.procureGoods[index].models = arr;
+      }
+      this.formData.transferGoods[index].models = arr;
     },
 
     // 瑙勬牸鍨嬪彿绉婚櫎
     modelRemoveTag(e, index) {
-      let arr = this.formData.procureGoods[index].models;
+      let arr = this.formData.transferGoods[index].models;
       let delIndex = arr.findIndex((v) => v.baseGoodsModelsId == e);
-      this.formData.procureGoods[index].models.splice(delIndex, 1);
+      this.formData.transferGoods[index].models.splice(delIndex, 1);
     },
 
     //鍨嬪彿鍒嗗彂鏂板
     handleAdd(goodsIndex, mIndex, cIndex) {
-      this.formData.procureGoods[goodsIndex].models[mIndex].clist.push(JSON.parse(JSON.stringify(this.clistItem)));
+      this.formData.transferGoods[goodsIndex].models[mIndex].procureModelUserList.push(JSON.parse(JSON.stringify(this.clistItem)));
     },
     handleDel(goodsIndex, mIndex, cIndex) {
-      this.formData.procureGoods[goodsIndex].models[mIndex].clist.splice(cIndex, 1);
+      this.formData.transferGoods[goodsIndex].models[mIndex].procureModelUserList.splice(cIndex, 1);
     },
 
     // 浠锋牸input鐩戝惉 杞负鍒�
     priceChange(e, goodsIndex, index) {
-      this.formData.procureGoods[goodsIndex].models[index].price = e * 100;
+      this.formData.transferGoods[goodsIndex].models[index].price = e * 100;
     },
 
     // 涓婁紶
@@ -495,43 +538,46 @@
 
     // 鐐瑰嚮鏂板鐗╁搧
     addGoods() {
-      this.formData.procureGoods.push(JSON.parse(JSON.stringify(this.goodsItem)));
+      this.formData.transferGoods.push(JSON.parse(JSON.stringify(this.goodsItem)));
     },
 
     // 鐐瑰嚮绉婚櫎
     removeGoods(index) {
-      this.formData.procureGoods.splice(index, 1);
+      this.formData.transferGoods.splice(index, 1);
     },
 
     // 鎻愪氦
     handleSubmit() {
+      console.log('formData', this.formData);
       this.$refs['ruleForm'].validate((valid) => {
         if (valid) {
-          console.log('formData', this.formData);
-          debugger;
-          if (!this.setting.id) {
-            procureAdd(this.formData)
+          this.formData.transferGoods.map(goods => {
+            goods.models.map(mod => {
+              if (goods.classification === 'A') {
+                let counts = 0
+                mod.procureModelUserList.map(user => {
+                  counts += parseInt(user.goodsNum || '0')
+                })
+                mod.counts = counts
+              }
+            })
+          })
+
+          this.formData.departmentName = this.$refs.department.selected.currentLabel
+          this.formData.outAgencyId = this.userInfo.tenantId
+          this.loading = true
+          transferAdd(this.formData)
               .then((res) => {
+                this.loading = false
                 this.$message.success('淇濆瓨鎴愬姛锛�');
                 this.close();
                 this.$emit('search');
               })
               .catch((err) => {
+                this.loading = false
                 console.log('create err', err);
                 this.$message.error('淇濆瓨澶辫触');
               });
-          } else {
-            procureEdit(this.formData)
-              .then((res) => {
-                this.$message.success('淇濆瓨鎴愬姛锛�');
-                this.close();
-                this.$emit('search');
-              })
-              .catch((err) => {
-                console.log('edit err', err);
-                this.$message.error('淇濆瓨澶辫触');
-              });
-          }
         } else {
           this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��');
         }
@@ -542,7 +588,7 @@
       this.formData = {
         warehouseId: '', // 鍏ュ簱浠撳簱id
         procureTime: '', // 閲囪喘鏃堕棿
-        procureGoods: [],
+        transferGoods: [],
       };
       this.$emit('close');
     },
@@ -551,6 +597,7 @@
 </script>
 <style scoped lang="scss">
 @import url(../../../../styles/store.scss);
+
 .card3 {
   border-radius: 2px;
   background: #ffffff;
diff --git a/admin-web/src/views/departmentitem/itemdis/distribution/index.vue b/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
index 5dfbca1..4f55539 100644
--- a/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
+++ b/admin-web/src/views/departmentitem/itemdis/distribution/index.vue
@@ -27,15 +27,15 @@
                         </div>
                       </div>
                       <div class="one-hed">
-                        <div class="box"><span class="span-two">閮ㄩ棬锛�</span>{{ item.agencyId }}</div>
-                        <div class="box"><span class="span-two">鍒嗗彂浜猴細</span>{{ item.buyerName }}</div>
+                        <div class="box"><span class="span-two">閮ㄩ棬锛�</span>{{ item.inWarehouseName }}</div>
+                        <div class="box"><span class="span-two">棰嗗彇浜猴細</span>{{ item.inOperatorName }}</div>
                         <div class="box">
-                          <span class="span-two">鍒嗗彂鏃堕棿锛�</span>{{ item.procureTime | formatTime }}
+                          <span class="span-two">棰嗗彇鏃堕棿锛�</span>{{ item.createTime | formatTime }}
                         </div>
                       </div>
                       <div class="card-end">
-                        <div v-for="(just, index) in item.fromProcureTemplateInfoList" :key="index" class="item">
-                          <div class="name">{{ just.goodsTemplateName }}</div>
+                        <div v-for="(just, index) in item.fromTransferTemplateInfoList" :key="index" class="item">
+                          <div class="name">{{ just.goodsName }}</div>
                           <div class="value-box">
                             <div class="value-box-item">
                               <span class="label">鏁伴噺锛�</span>
@@ -49,7 +49,7 @@
                   </el-card>
                 </el-col>
               </el-row>
-              <div class="no-data" v-else>鏆傛棤鏁版嵁</div>
+              <el-empty v-else description="鏆傛棤鏁版嵁"></el-empty>
             </div>
             <el-pagination
               :small="false"
@@ -83,7 +83,7 @@
 </template>
 
 <script>
-import { procureList, procureDel, procureIncome } from '@/api/stock/procure/purchaseOrder';
+import { transferList} from '@/api/stock/transfer';
 import MyButton from '@/components/myButton/myButton';
 import SettingIplatform from '@/utils/settingIplatform';
 import myImport from '@/views/components/myImport';
@@ -111,6 +111,15 @@
           defaultValue: '',
         },
         {
+          type: 'cascader',
+          dataIndex: 'agencyId',
+          label: '鍒嗗彂閮ㄩ棬',
+          placeholder: '璇烽�夋嫨',
+          optionsConfig: { url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null },
+          defaultValue: '',
+          options: [],
+        },
+        {
           type: 'select',
           dataIndex: 'goodsTemplateId',
           label: '鐗╁搧鍚嶇О',
@@ -124,30 +133,21 @@
           },
         },
         {
-          type: 'cascader',
-          dataIndex: 'agencyId',
-          label: '鍒嗗彂閮ㄩ棬',
-          placeholder: '璇烽�夋嫨',
-          optionsConfig: { url: '/pc/fin/sys/tenant/select/tree_fin_tenant', props: null },
-          defaultValue: '',
-          options: [],
-        },
-        {
           type: 'text',
-          dataIndex: 'createName',
-          label: '鍒嗗彂浜�',
+          dataIndex: 'operatorName',
+          label: '棰嗗彇浜�',
           placeholder: '璇疯緭鍏�',
           defaultValue: '',
         },
         {
           type: 'date-picker',
-          dataIndex: 'incomeTimeStart',
-          label: '鍒嗗彂鏃堕棿',
+          dataIndex: 'startTime',
+          label: '棰嗗彇鏃堕棿',
           defaultValue: '',
         },
         {
           type: 'date-picker',
-          dataIndex: 'incomeTimeEnd',
+          dataIndex: 'endTime',
           label: '鑷�',
           defaultValue: '',
         },
@@ -162,7 +162,8 @@
   methods: {
     fetchData() {
       this.loading = true;
-      procureList({
+      transferList({
+        qryType: 1,
         pageNum: this.pageNum,
         pageSize: this.pageSize,
         ...this.filterFrom,
@@ -170,17 +171,10 @@
         this.list = res.datas;
         this.total = res.totalRows;
         this.loading = false;
-        console.log(this.list);
       });
     },
     fifterForm(params) {
       this.filterFrom = Object.assign(this.filterFrom, params);
-      if (this.filterFrom.incomeTimeStart) {
-        this.filterFrom.incomeTimeStart = this.filterFrom.incomeTimeStart.replace(/\-/g, '');
-      }
-      if (this.filterFrom.incomeTimeEnd) {
-        this.filterFrom.incomeTimeEnd = this.filterFrom.incomeTimeEnd.replace(/\-/g, '');
-      }
       this.search(1);
     },
   },
diff --git a/admin-web/src/views/departmentitem/itemret/returnNote/index.vue b/admin-web/src/views/departmentitem/itemret/returnNote/index.vue
index 4f29e45..47b57af 100644
--- a/admin-web/src/views/departmentitem/itemret/returnNote/index.vue
+++ b/admin-web/src/views/departmentitem/itemret/returnNote/index.vue
@@ -49,7 +49,7 @@
                   </el-card>
                 </el-col>
               </el-row>
-              <div class="no-data" v-else>鏆傛棤鏁版嵁</div>
+              <el-empty v-else description="鏆傛棤鏁版嵁"></el-empty>
             </div>
             <el-pagination
               :small="false"
diff --git a/admin-web/src/views/departmentitem/itemscr/scrapping/index.vue b/admin-web/src/views/departmentitem/itemscr/scrapping/index.vue
index 5d7c4d9..63dc197 100644
--- a/admin-web/src/views/departmentitem/itemscr/scrapping/index.vue
+++ b/admin-web/src/views/departmentitem/itemscr/scrapping/index.vue
@@ -54,7 +54,7 @@
                   </el-card>
                 </el-col>
               </el-row>
-              <div class="no-data" v-else>鏆傛棤鏁版嵁</div>
+              <el-empty v-else description="鏆傛棤鏁版嵁"></el-empty>
             </div>
             <el-pagination
               :small="false"
diff --git a/admin-web/src/views/stock/accessStock/outbound/index.vue b/admin-web/src/views/stock/accessStock/outbound/index.vue
index e574460..88d81f8 100644
--- a/admin-web/src/views/stock/accessStock/outbound/index.vue
+++ b/admin-web/src/views/stock/accessStock/outbound/index.vue
@@ -55,7 +55,7 @@
                     </el-card>
                   </el-col>
                 </el-row>
-                <div class="no-data" v-else>鏆傛棤鏁版嵁</div>
+                <el-empty v-else description="鏆傛棤鏁版嵁"></el-empty>
               </div>
             </div>
 
diff --git a/admin-web/src/views/stock/procure/purchaseOrder/index.vue b/admin-web/src/views/stock/procure/purchaseOrder/index.vue
index 110ee7a..12f33ee 100644
--- a/admin-web/src/views/stock/procure/purchaseOrder/index.vue
+++ b/admin-web/src/views/stock/procure/purchaseOrder/index.vue
@@ -75,7 +75,7 @@
                     </el-card>
                   </el-col>
                 </el-row>
-                <div class="no-data" v-else>鏆傛棤鏁版嵁</div>
+                <el-empty v-else description="鏆傛棤鏁版嵁"></el-empty>
               </div>
             </div>
 
diff --git a/admin-web/src/views/stock/procure/receiptDetails/index.vue b/admin-web/src/views/stock/procure/receiptDetails/index.vue
index 9e884bd..902be8f 100644
--- a/admin-web/src/views/stock/procure/receiptDetails/index.vue
+++ b/admin-web/src/views/stock/procure/receiptDetails/index.vue
@@ -160,7 +160,7 @@
         // 鍒椾俊鎭�
         columns: [
           { title: '鍗曞彿', field: 'businessFormCode', align: 'center', width: 130 },
-          { title: '鐗╁搧鍚嶇О', field: 'goodsTemplateName', align: 'left', width: 140 },
+          { title: '鐗╁搧鍚嶇О', field: 'goodsTemplateName', align: 'left', minWidth: 140 },
           { title: '瑙勬牸鍨嬪彿', field: 'baseGoodsModelsName', align: 'left', width: 130 },
           {
             title: '鍗曚环',
diff --git a/admin-web/src/views/stock/transfer/transferApplication/index.vue b/admin-web/src/views/stock/transfer/transferApplication/index.vue
index 8e1a11a..93b9412 100644
--- a/admin-web/src/views/stock/transfer/transferApplication/index.vue
+++ b/admin-web/src/views/stock/transfer/transferApplication/index.vue
@@ -87,7 +87,7 @@
                   </el-card>
                 </el-col>
               </el-row>
-              <div class="no-data" v-else>鏆傛棤鏁版嵁</div>
+              <el-empty v-else description="鏆傛棤鏁版嵁"></el-empty>
             </div>
             <el-pagination
               :small="false"
diff --git a/admin-web/src/views/stock/transfer/transferissue/index.vue b/admin-web/src/views/stock/transfer/transferissue/index.vue
index f1a4aea..e75533f 100644
--- a/admin-web/src/views/stock/transfer/transferissue/index.vue
+++ b/admin-web/src/views/stock/transfer/transferissue/index.vue
@@ -76,7 +76,7 @@
                   </el-card>
                 </el-col>
               </el-row>
-              <div class="no-data" v-else>鏆傛棤鏁版嵁</div>
+              <el-empty v-else description="鏆傛棤鏁版嵁"></el-empty>
             </div>
             <el-pagination
               :small="false"
@@ -203,6 +203,7 @@
     fetchData() {
       this.loading = true;
       transferList({
+        qryType: 0,
         pageNum: this.pageNum,
         pageSize: this.pageSize,
         ...this.filterFrom,
diff --git a/admin-web/vue.config.js b/admin-web/vue.config.js
index 774e49e..193fe04 100644
--- a/admin-web/vue.config.js
+++ b/admin-web/vue.config.js
@@ -27,7 +27,7 @@
   transpileDependencies: ['element-ui', 'vuex', 'js-cookie', '@babel', 'resize-detector'],
   publicPath: './',
   // publicPath: '/',
-  outputDir: 'psmWeb',
+  outputDir: 'lowConsumWeb',
   assetsDir: 'static',
   lintOnSave: process.env.NODE_ENV === 'development',
   productionSourceMap: false,

--
Gitblit v1.9.1