Explorar o código

feat: 添加发运状态字段并优化搜索表单组件

liujt hai 2 meses
pai
achega
429a4bd9e2

+ 119 - 5
src/views/purchasingManage/purchaseOrder/invoice/components/outSourceSearchTable1.vue

@@ -1,6 +1,6 @@
 <!-- 搜索表单 -->
 <template>
-  <el-form
+  <!-- <el-form
     label-width="100px"
     class="ele-form-search"
     @keyup.enter.native="search"
@@ -53,7 +53,8 @@
         </div>
       </el-col>
     </el-row>
-  </el-form>
+  </el-form> -->
+  <seekPage :seekList="seekList" :formLength="3" @search="search"></seekPage>
 </template>
 <script>
   import { reviewStatusEnum } from '@/enum/dict';
@@ -84,7 +85,114 @@
       // 是否开启响应式布局
       styleResponsive() {
         return this.$store.state.theme.styleResponsive;
-      }
+      },
+      // 表格列配置
+          seekList() {
+            return [
+              // {
+              //   label: '关键字:',
+              //   value: 'searchName',
+              //   type: 'input',
+              //   placeholder: '发货编码/销售订单编码/产品名称/客户名称'
+              // },
+              {
+                label: '发货单编码:',
+                value: 'docNo',
+                type: 'input',
+                placeholder: '请输入'
+              },
+              {
+                label: '供应商名称:',
+                value: 'supplierName',
+                type: 'input',
+                placeholder: '请输入'
+              },
+              {
+                label: '发运状态',
+                value: 'logisticStatus',
+                type: 'select',
+                placeholder: '请选择',
+                planList: [
+                  { value: 0, label: '未发运' },
+                  { value: 1, label: '已发运' }
+                ]
+              },
+              {
+                label: '产品名称',
+                value: 'productName',
+                width: 380,
+                type: 'input',
+                placeholder: '请输入'
+              },
+              // {
+              //   label: '编码',
+              //   value: 'productCode',
+              //   width: 380,
+              //   type: 'input',
+              //   placeholder: '请输入'
+              // },
+              // {
+              //   label: '生产编号',
+              //   value: 'productionCodes',
+              //   width: 380,
+              //   type: 'input',
+              //   placeholder: ''
+              // },
+              // {
+              //   label: '批次号',
+              //   value: 'batchNo',
+              //   width: 380,
+              //   type: 'input',
+              //   placeholder: '请输入'
+              // },
+              // {
+              //   label: '项目名称',
+              //   value: 'projectName',
+              //   width: 380,
+              //   type: 'input',
+              //   placeholder: '请输入'
+              // },
+              // {
+              //   label: '客户名称:',
+              //   value: 'contactName',
+              //   width: 380,
+              //   type: 'input',
+              //   placeholder: '请输入'
+              // },
+              // {
+              //   label: '是否回执:',
+              //   value: 'replied',
+              //   width: 380,
+              //   type: 'select',
+              //   planList:receiptType,
+              //   placeholder: '请选择'
+              // },
+              // {
+              //   label: '状态:',
+              //   value: 'reviewStatus',
+              //   width: 380,
+              //   type: 'select',
+              //   planList: orderStatusOptions,
+              //   placeholder: '请选择'
+              // },
+              // {
+              //   label: '创建人:',
+              //   value: 'createUserName',
+              //   width: 380,
+              //   type: 'input',
+              //   placeholder: '请输入'
+              // },
+              // {
+              //   label: '创建时间:',
+              //   value: 'createTime',
+              //   type: 'date',
+              //   dateType: 'datetimerange',
+              //   placeholder: '',
+              //   width: 380,
+              //   valueAr: ['createTimeStart', 'createTimeEnd']
+              // }
+            ];
+          }
     },
     methods: {
       //选择时间
@@ -92,9 +200,15 @@
         this.createTime = e;
       },
       /* 搜索 */
-      search() {
+      // search() {
+      //   this.$emit('search', {
+      //     ...this.params
+      //   });
+      // },
+      /* 搜索 */
+      search(e) {
         this.$emit('search', {
-          ...this.params
+          ...e
         });
       },
       /*  重置 */

+ 11 - 1
src/views/purchasingManage/purchaseOrder/invoice/components/outSourceSendDialog.vue

@@ -119,7 +119,17 @@ export default {
           align: 'center',
           showOverflowTooltip: true,
           minWidth: 130
-        }
+        },
+        {
+            prop: 'logisticStatus',
+            label: '发运状态',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 150,
+            formatter: (_row, _column, cellValue) => {
+              return _row.logisticStatus == 1 ? '已发运' : '未发运';
+            }
+          },
       ],
 
       radio: null

+ 11 - 1
src/views/purchasingManage/purchaseOrder/invoice/components/searchTable.vue

@@ -60,7 +60,17 @@ export default {
           type: 'input',
           placeholder: '请输入'
         },
-      
+        {
+          label: '发运状态',
+          value: 'logisticStatus',
+          type: 'select',
+          placeholder: '请选择',
+          width: 380,
+          planList: [
+            { value: 0, label: '未发运' },
+            { value: 1, label: '已发运' }
+          ]
+        },
         {
           label: '状态:',
           value: 'reviewStatus',

+ 10 - 0
src/views/purchasingManage/purchaseOrder/returnGoods/components/sendListDialog.vue

@@ -100,6 +100,16 @@
               showOverflowTooltip: true,
               minWidth: 200
             },
+            {
+              prop: 'logisticStatus',
+              label: '发运状态',
+              align: 'center',
+              showOverflowTooltip: true,
+              minWidth: 150,
+              formatter: (_row, _column, cellValue) => {
+                return _row.logisticStatus == 1 ? '已发运' : '未发运';
+              }
+            },
             // {
             //   prop: 'replied',
             //   label: '是否回执',

+ 10 - 0
src/views/saleManage/saleOrder/customerReturnOrder/returnOrderDialog.vue

@@ -109,6 +109,16 @@ export default {
             return reviewStatus[_row.reviewStatus];
           }
         },
+        {
+          prop: 'logisticStatus',
+          label: '发运状态',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 150,
+          formatter: (_row, _column, cellValue) => {
+            return _row.logisticStatus == 1 ? '已发运' : '未发运';
+          }
+        },
         {
           prop: 'createTime',
           label: '创建时间',

+ 44 - 4
src/views/saleManage/saleOrder/customerReturnOrder/searchTable.vue

@@ -1,6 +1,6 @@
 <!-- 搜索表单 -->
 <template>
-  <el-form
+  <!-- <el-form
     label-width="100px"
     class="ele-form-search"
     @keyup.enter.native="search"
@@ -52,7 +52,8 @@
         </div>
       </el-col>
     </el-row>
-  </el-form>
+  </el-form> -->
+  <seekPage :seekList="seekList" :formLength="3" @search="search"></seekPage>
 </template>
 <script>
 import {reviewStatusEnum} from '@/enum/dict';
@@ -81,6 +82,40 @@ const repliedOptions=[
       // 是否开启响应式布局
       styleResponsive () {
         return this.$store.state.theme.styleResponsive;
+      },
+      seekList() {
+        return [
+          {
+            label: '退货单编码:',
+            value: 'returnNo',
+            type: 'input',
+            placeholder: '请输入'
+          },
+          {
+            label: '订单编码:',
+            value: 'orderNo',
+            type: 'input',
+            placeholder: '请输入',
+          },
+          {
+            label: '客户名称:',
+            value: 'contactName',
+            labelWidth:130,
+            type: 'input',
+            placeholder: '请输入',
+          },
+          {
+            label: '发运状态',
+            value: 'logisticStatus',
+            type: 'select',
+            placeholder: '请选择',
+            width: 360,
+            planList: [
+              { value: 0, label: '未发运' },
+              { value: 1, label: '已发运' }
+            ]
+          },
+        ];
       }
     },
     methods: {
@@ -89,9 +124,14 @@ const repliedOptions=[
        this.createTime=e
       },
       /* 搜索 */
-      search () {
+      // search () {
+      //   this.$emit('search', {
+      //     ...this.params
+      //   });
+      // },
+      search(e) {
         this.$emit('search', {
-          ...this.params
+          ...e
         });
       },
       /*  重置 */

+ 13 - 3
src/views/saleManage/saleOrder/invoice/components/entrustedReceiveDialog.vue

@@ -93,7 +93,7 @@ export default {
           align: 'center',
           slot: 'code',
           showOverflowTooltip: true,
-          minWidth: 200
+          minWidth: 180
         },
         {
           prop: 'orderNo',
@@ -101,7 +101,7 @@ export default {
           align: 'center',
           slot: 'orderNo',
           showOverflowTooltip: true,
-          minWidth: 200
+          minWidth: 180
         },
         {
           prop: 'contactName',
@@ -123,7 +123,17 @@ export default {
           align: 'center',
           showOverflowTooltip: true,
           minWidth: 130
-        }
+        },
+        {
+          prop: 'logisticStatus',
+          label: '发运状态',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 150,
+          formatter: (_row, _column, cellValue) => {
+            return _row.logisticStatus == 1 ? '已发运' : '未发运';
+          }
+        },
       ],
 
       radio: null

+ 50 - 4
src/views/saleManage/saleOrder/invoice/components/entrustedReceiveSearchTable.vue

@@ -1,6 +1,6 @@
 <!-- 搜索表单 -->
 <template>
-  <el-form
+  <!-- <el-form
     label-width="100px"
     class="ele-form-search"
     @keyup.enter.native="search"
@@ -53,7 +53,8 @@
         </div>
       </el-col>
     </el-row>
-  </el-form>
+  </el-form> -->
+  <seekPage :seekList="seekList" :formLength="3" @search="search"></seekPage>
 </template>
 <script>
 import {reviewStatusEnum} from '@/enum/dict';
@@ -82,6 +83,46 @@ export default {
     // 是否开启响应式布局
     styleResponsive() {
       return this.$store.state.theme.styleResponsive;
+    },
+    seekList() {
+      return [
+        // {
+        //   label: '关键字:',
+        //   value: 'keyWord',
+        //   type: 'input',
+        //   placeholder: '收货单编码/采购订单编码/送货单号/产品名称'
+        // },
+        {
+          label: '发货单编码:',
+          value: 'code',
+          type: 'input',
+          placeholder: '请输入'
+        },
+        {
+          label: '订单编码:',
+          value: 'orderNo',
+          type: 'input',
+          placeholder: '请输入',
+        },
+        {
+          label: '客户名称:',
+          value: 'contactName',
+          labelWidth:130,
+          type: 'input',
+          placeholder: '请输入',
+        },
+        {
+          label: '发运状态',
+          value: 'logisticStatus',
+          type: 'select',
+          placeholder: '请选择',
+          width: 360,
+          planList: [
+            { value: 0, label: '未发运' },
+            { value: 1, label: '已发运' }
+          ]
+        },
+      ];
     }
   },
   methods: {
@@ -90,9 +131,14 @@ export default {
       this.createTime = e
     },
     /* 搜索 */
-    search() {
+    // search() {
+    //   this.$emit('search', {
+    //     ...this.params
+    //   });
+    // },
+    search(e) {
       this.$emit('search', {
-        ...this.params
+        ...e
       });
     },
     /*  重置 */

+ 11 - 0
src/views/saleManage/saleOrder/invoice/components/searchTable.vue

@@ -80,6 +80,17 @@ export default {
           planList:receiptType,
           placeholder: '请选择'
         },
+        {
+          label: '发运状态',
+          value: 'logisticStatus',
+          type: 'select',
+          placeholder: '请选择',
+          width: 380,
+          planList: [
+            { value: 0, label: '未发运' },
+            { value: 1, label: '已发运' }
+          ]
+        },
         {
           label: '状态:',
           value: 'reviewStatus',

+ 10 - 0
src/views/transportManager/shipManage/dispatchManage/components/inventoryAllocationDialog.vue

@@ -144,6 +144,16 @@ export default {
               return this.stutusOptions[row.status];
             }
           },
+          {
+            prop: 'logisticStatus',
+            label: '发运状态',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 150,
+            formatter: (_row, _column, cellValue) => {
+              return _row.logisticStatus == 1 ? '已发运' : '未发运';
+            }
+          },
         ],
       radio: null,
     }

+ 83 - 41
src/views/transportManager/shipManage/dispatchManage/components/inventoryAllocationSearchTable.vue

@@ -1,6 +1,6 @@
 <!-- 搜索表单 -->
 <template>
-  <el-form
+  <!-- <el-form
     label-width="80px"
     class="ele-form-search"
     @keyup.enter.native="search"
@@ -98,42 +98,6 @@
           />
         </el-form-item>
       </el-col>
-      <!-- <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
-        <el-form-item label="调拨类型" prop="type">
-          <el-select
-            filterable
-            placeholder="请选择"
-            v-model="where.type"
-            clearable
-            class="w100"
-          >
-            <el-option
-              v-for="item in allocationType"
-              :key="item.code"
-              :label="item.label"
-              :value="item.code"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-      </el-col> -->
-      <!-- <el-col v-bind="styleResponsive ? { lg: 6, md: 12 } : { span: 6 }">
-        <el-form-item label="调拨状态" prop="status">
-          <el-select
-            filterable
-            placeholder="请选择"
-            v-model="where.status"
-            clearable
-            class="w100"
-          >
-            <el-option
-              v-for="item in stutusOptions"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            ></el-option>
-          </el-select>
-        </el-form-item>
-      </el-col> -->
       <el-col v-bind="styleResponsive ? { lg: 18, md: 12 } : { span: 18 }">
         <div class="ele-form-actions">
           <el-button
@@ -155,7 +119,8 @@
         </div>
       </el-col>
     </el-row>
-  </el-form>
+  </el-form> -->
+  <seekPage :seekList="seekList" :formLength="3" @search="search"></seekPage>
 </template>
 
 <script>
@@ -205,6 +170,78 @@
       // 是否开启响应式布局
       styleResponsive() {
         return this.$store.state.theme.styleResponsive;
+      },
+      seekList() {
+        return [
+          {
+            label: '所属工厂:',
+            value: 'factoryId',
+            type: 'select',
+            placeholder: '请选择',
+            planList: this.factoryList.map(item => ({
+              value: item.id,
+              label: item.name
+            }
+            ))
+          },
+          {
+            label: '调出仓库:',
+            value: 'sourceWarehouse',
+            type: 'select',
+            placeholder: '请选择',
+            planList: this.warehouseList.map(item => ({
+              value: item.id,
+              label: item.name
+            }
+            ))
+          },
+          {
+            label: '调入仓库:',
+            value: 'targetWarehouse',
+            type: 'select',
+            placeholder: '请选择',
+            planList: this.warehouseList.map(item => ({
+              value: item.id,
+              label: item.name
+            }
+            ))
+          },
+          {
+            label: '物品名称:',
+            value: 'categoryName',
+            type: 'input',
+            placeholder: '请输入'
+          },
+          {
+            label: '物品编码:',
+            value: 'categoryCode',
+            type: 'input',
+            placeholder: '请输入'
+          },
+          {
+            label: '调拨名称:',
+            value: 'name',
+            type: 'input',
+            placeholder: '请输入'
+          },
+          {
+            label: '调拨单号:',
+            value: 'allotCode',
+            type: 'input',
+            placeholder: '请输入'
+          },
+          {
+            label: '发运状态',
+            value: 'logisticStatus',
+            type: 'select',
+            placeholder: '请选择',
+            width: 360,
+            planList: [
+              { value: 0, label: '未发运' },
+              { value: 1, label: '已发运' }
+            ]
+          },
+        ];
       }
     },
     created() {
@@ -252,9 +289,14 @@
         );
       },
       /* 搜索 */
-      search() {
-        console.log(this.where);
-        this.$emit('search', this.where);
+      // search() {
+      //   console.log(this.where);
+      //   this.$emit('search', this.where);
+      // },
+      search(e) {
+        this.$emit('search', {
+          ...e
+        });
       },
       /*  重置 */
       reset() {

+ 10 - 0
src/views/transportManager/shipManage/dispatchManage/components/purchaseReturnOrderDialog.vue

@@ -86,6 +86,16 @@ export default {
             return reviewStatus[_row.reviewStatus];
           }
         },
+        {
+          prop: 'logisticStatus',
+          label: '发运状态',
+          align: 'center',
+          showOverflowTooltip: true,
+          minWidth: 150,
+          formatter: (_row, _column, cellValue) => {
+            return _row.logisticStatus == 1 ? '已发运' : '未发运';
+          }
+        },
         {
           prop: 'createTime',
           label: '创建时间',

+ 44 - 4
src/views/transportManager/shipManage/dispatchManage/components/purchaseReturnSearchTable.vue

@@ -1,6 +1,6 @@
 <!-- 搜索表单 -->
 <template>
-  <el-form
+  <!-- <el-form
     label-width="100px"
     class="ele-form-search"
     @keyup.enter.native="search"
@@ -52,7 +52,8 @@
         </div>
       </el-col>
     </el-row>
-  </el-form>
+  </el-form> -->
+  <seekPage :seekList="seekList" :formLength="3" @search="search"></seekPage>
 </template>
 <script>
 import {reviewStatusEnum} from '@/enum/dict';
@@ -81,6 +82,40 @@ const repliedOptions=[
       // 是否开启响应式布局
       styleResponsive () {
         return this.$store.state.theme.styleResponsive;
+      },
+      seekList() {
+        return [
+          {
+            label: '退货单编码:',
+            value: 'returnNo',
+            type: 'input',
+            placeholder: '请输入'
+          },
+          {
+            label: '订单编码:',
+            value: 'orderNo',
+            type: 'input',
+            placeholder: '请输入',
+          },
+          {
+            label: '客户名称:',
+            value: 'contactName',
+            labelWidth:130,
+            type: 'input',
+            placeholder: '请输入',
+          },
+          {
+            label: '发运状态',
+            value: 'logisticStatus',
+            type: 'select',
+            placeholder: '请选择',
+            width: 360,
+            planList: [
+              { value: 0, label: '未发运' },
+              { value: 1, label: '已发运' }
+            ]
+          },
+        ];
       }
     },
     methods: {
@@ -89,9 +124,14 @@ const repliedOptions=[
        this.createTime=e
       },
       /* 搜索 */
-      search () {
+      // search () {
+      //   this.$emit('search', {
+      //     ...this.params
+      //   });
+      // },
+      search(e) {
         this.$emit('search', {
-          ...this.params
+          ...e
         });
       },
       /*  重置 */

+ 12 - 2
src/views/transportManager/shipManage/taskWorkManage/components/sendListDialog.vue

@@ -109,7 +109,7 @@
             label: '是否回执',
             align: 'center',
             showOverflowTooltip: true,
-            minWidth: 200,
+            minWidth: 120,
             formatter: (_row, _column, cellValue) => {
               return _row.replied == 1 ? '是' : '否';
             }
@@ -119,11 +119,21 @@
             label: '状态',
             align: 'center',
             showOverflowTooltip: true,
-            minWidth: 200,
+            minWidth: 150,
             formatter: (_row, _column, cellValue) => {
               return reviewStatus[_row.reviewStatus];
             }
           },
+          {
+            prop: 'logisticStatus',
+            label: '发运状态',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 150,
+            formatter: (_row, _column, cellValue) => {
+              return _row.logisticStatus == 1 ? '已发运' : '未发运';
+            }
+          },
           {
             prop: 'createTime',
             label: '创建时间',