Procházet zdrojové kódy

Merge branch 'deploy_0804' of jianguan-web/qpls-md-html into master

陈瑞 před 3 roky
rodič
revize
f8ea004b7b
86 změnil soubory, kde provedl 1022 přidání a 162 odebrání
  1. 8 21
      package-lock.json
  2. 9 0
      src/api/product.js
  3. 8 0
      src/api/stockOut.js
  4. binární
      src/assets/home-icon/home_icon_billing.png
  5. binární
      src/assets/home-icon/home_icon_customer.png
  6. binární
      src/assets/home-icon/home_icon_finance.png
  7. binární
      src/assets/home-icon/home_icon_finance_pay.png
  8. binární
      src/assets/home-icon/home_icon_finance_payment.png
  9. binární
      src/assets/home-icon/home_icon_inventory.png
  10. binární
      src/assets/home-icon/home_icon_pay.png
  11. binární
      src/assets/home-icon/home_icon_purchase_billing.png
  12. binární
      src/assets/home-icon/home_icon_purchase_return.png
  13. binární
      src/assets/home-icon/home_icon_receivable.png
  14. binární
      src/assets/home-icon/home_icon_return.png
  15. binární
      src/assets/home-icon/home_icon_scatter_return.png
  16. binární
      src/assets/home-icon/home_icon_scatter_warehousing.png
  17. binární
      src/assets/home-icon/home_icon_stock s.png
  18. binární
      src/assets/home-icon/home_icon_stock.png
  19. binární
      src/assets/home-icon/home_icon_stor_out.png
  20. binární
      src/assets/home-icon/home_icon_supplier.png
  21. binární
      src/assets/home-icon/home_icon_transfer.png
  22. binární
      src/assets/home-icon/home_icon_unit.png
  23. binární
      src/assets/home-icon/home_icon_verify.png
  24. binární
      src/assets/home-icon/home_icon_verify_return.png
  25. 11 0
      src/components/index.less
  26. 26 1
      src/config/router.config.js
  27. 18 6
      src/layouts/PageView.vue
  28. 8 1
      src/store/modules/app.js
  29. 269 5
      src/views/Home.vue
  30. 3 0
      src/views/allocationManagement/chainTransferIn/list.vue
  31. 5 1
      src/views/allocationManagement/chainTransferOut/edit.vue
  32. 3 0
      src/views/allocationManagement/chainTransferOut/list.vue
  33. 3 0
      src/views/allocationManagement/storeTransferOut/list.vue
  34. 8 5
      src/views/allocationManagement/warehouseAllocation/list.vue
  35. 5 0
      src/views/basicData/bulkPartsTypeManagement/list.vue
  36. 5 0
      src/views/basicData/customerTypeManagement/list.vue
  37. 5 0
      src/views/basicData/expenseType/list.vue
  38. 5 0
      src/views/basicData/storeTransferOutTypeManagement/list.vue
  39. 3 0
      src/views/bulkManagement/bulkImport/list.vue
  40. 3 0
      src/views/bulkManagement/bulkReturnGoods/list.vue
  41. 3 0
      src/views/bulkManagement/bulkWarehousingOrder/list.vue
  42. 3 0
      src/views/customerManagement/customerInfo/list.vue
  43. 3 0
      src/views/financialManagement/companyCollectionPayment/list.vue
  44. 5 0
      src/views/financialManagement/companyReceivablePayable/list.vue
  45. 3 0
      src/views/financialManagement/expenseManagement/list.vue
  46. 4 0
      src/views/financialManagement/financialCollection/list.vue
  47. 4 0
      src/views/financialManagement/financialPayment/list.vue
  48. 3 0
      src/views/financialManagement/inventoryCheckAudit/list.vue
  49. 3 0
      src/views/financialManagement/ledgerRecord/list.vue
  50. 3 0
      src/views/financialManagement/warehousingAudit/list.vue
  51. 3 0
      src/views/financialManagement/withdrawalManagement/list.vue
  52. 3 0
      src/views/inventoryManagement/inventoryChecking/list.vue
  53. 3 0
      src/views/inventoryManagement/inventoryImport/list.vue
  54. 3 0
      src/views/inventoryManagement/inventoryQuery/list.vue
  55. 3 0
      src/views/inventoryManagement/inventoryQuery/warehouseDetail.vue
  56. 3 0
      src/views/inventoryManagement/inventoryWarning/list.vue
  57. 5 0
      src/views/inventoryManagement/satelliteWarehouseInventory/list.vue
  58. 5 0
      src/views/inventoryManagement/warehouse/list.vue
  59. 5 0
      src/views/inventoryManagement/warehouse/storingLocation/list.vue
  60. 15 12
      src/views/notice/list.vue
  61. 84 22
      src/views/outboundOrderManagement/outboundOrder/list.vue
  62. 5 0
      src/views/power/role/roleList.vue
  63. 5 0
      src/views/power/user/userList.vue
  64. 3 0
      src/views/productManagement/newProduct/list.vue
  65. 3 0
      src/views/productManagement/priceChangeRecord/list.vue
  66. 5 0
      src/views/productManagement/productBrand/list.vue
  67. 3 0
      src/views/productManagement/productInfo/list.vue
  68. 3 0
      src/views/productManagement/productInfoJg/list.vue
  69. 288 0
      src/views/productManagement/productOnlineInfo/list.vue
  70. 60 50
      src/views/purchasingManagement/purchaseOrder/chooseImportModal.vue
  71. 11 13
      src/views/purchasingManagement/purchaseOrder/edit.vue
  72. 2 5
      src/views/purchasingManagement/purchaseOrder/importGuideModal.vue
  73. 4 1
      src/views/purchasingManagement/purchaseOrder/list.vue
  74. 2 4
      src/views/purchasingManagement/purchaseReturn/edit.vue
  75. 4 1
      src/views/purchasingManagement/purchaseReturn/list.vue
  76. 4 1
      src/views/salesManagement/giftRecord/list.vue
  77. 11 6
      src/views/salesManagement/salesQuery/edit.vue
  78. 3 0
      src/views/salesManagement/salesQuery/list.vue
  79. 3 0
      src/views/salesManagement/salesReturn/list.vue
  80. 4 2
      src/views/salesManagement/salesReturn/salesReturnEdit.vue
  81. 4 2
      src/views/salesManagement/salesReturn/salesReturnGrabEdit.vue
  82. 3 0
      src/views/salesManagement/salesman/list.vue
  83. 6 3
      src/views/salesManagement/urgentItemsOffset/list.vue
  84. 5 0
      src/views/storeManagement/bind/list.vue
  85. 5 0
      src/views/storeManagement/userAuthorization/list.vue
  86. 5 0
      src/views/supplierManagement/supplierInfo/list.vue

+ 8 - 21
package-lock.json

@@ -7373,14 +7373,12 @@
         "balanced-match": {
           "version": "1.0.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "brace-expansion": {
           "version": "1.1.11",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "balanced-match": "^1.0.0",
             "concat-map": "0.0.1"
@@ -7401,14 +7399,12 @@
         "concat-map": {
           "version": "0.0.1",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "console-control-strings": {
           "version": "1.1.0",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "core-util-is": {
           "version": "1.0.2",
@@ -7553,7 +7549,6 @@
           "version": "3.0.4",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "brace-expansion": "^1.1.7"
           }
@@ -7561,14 +7556,12 @@
         "minimist": {
           "version": "0.0.8",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "minipass": {
           "version": "2.3.5",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "safe-buffer": "^5.1.2",
             "yallist": "^3.0.0"
@@ -7587,7 +7580,6 @@
           "version": "0.5.1",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "minimist": "0.0.8"
           }
@@ -7681,7 +7673,6 @@
           "version": "1.4.0",
           "bundled": true,
           "dev": true,
-          "optional": true,
           "requires": {
             "wrappy": "1"
           }
@@ -7767,8 +7758,7 @@
         "safe-buffer": {
           "version": "5.1.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "safer-buffer": {
           "version": "2.1.2",
@@ -7868,14 +7858,12 @@
         "wrappy": {
           "version": "1.0.2",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         },
         "yallist": {
           "version": "3.0.3",
           "bundled": true,
-          "dev": true,
-          "optional": true
+          "dev": true
         }
       }
     },
@@ -14535,8 +14523,7 @@
       "version": "4.0.8",
       "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz",
       "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=",
-      "dev": true,
-      "optional": true
+      "dev": true
     },
     "rx-lite-aggregates": {
       "version": "4.0.8",

+ 9 - 0
src/api/product.js

@@ -59,3 +59,12 @@ export const getCurrentDealer = (params) => {
     method: 'get'
   })
 }
+// 产品上线信息  导出
+export const productExport = params => {
+  return axios.request({
+    url: `/product/export`,
+    method: 'post',
+    data: params,
+    responseType: 'blob'
+  })
+}

+ 8 - 0
src/api/stockOut.js

@@ -19,3 +19,11 @@ export const stockOutOut = (params) => {
     method: 'post'
   })
 }
+//  出库 批量出库
+export const stockOutBatchOut = (params) => {
+  return axios({
+    url: '/stockOut/outBatch',
+    data: params,
+    method: 'post'
+  })
+}

binární
src/assets/home-icon/home_icon_billing.png


binární
src/assets/home-icon/home_icon_customer.png


binární
src/assets/home-icon/home_icon_finance.png


binární
src/assets/home-icon/home_icon_finance_pay.png


binární
src/assets/home-icon/home_icon_finance_payment.png


binární
src/assets/home-icon/home_icon_inventory.png


binární
src/assets/home-icon/home_icon_pay.png


binární
src/assets/home-icon/home_icon_purchase_billing.png


binární
src/assets/home-icon/home_icon_purchase_return.png


binární
src/assets/home-icon/home_icon_receivable.png


binární
src/assets/home-icon/home_icon_return.png


binární
src/assets/home-icon/home_icon_scatter_return.png


binární
src/assets/home-icon/home_icon_scatter_warehousing.png


binární
src/assets/home-icon/home_icon_stock s.png


binární
src/assets/home-icon/home_icon_stock.png


binární
src/assets/home-icon/home_icon_stor_out.png


binární
src/assets/home-icon/home_icon_supplier.png


binární
src/assets/home-icon/home_icon_transfer.png


binární
src/assets/home-icon/home_icon_unit.png


binární
src/assets/home-icon/home_icon_verify.png


binární
src/assets/home-icon/home_icon_verify_return.png


+ 11 - 0
src/components/index.less

@@ -386,4 +386,15 @@
       }
     }
   }
+}
+.ant-collapse{
+  .ant-collapse-header{
+    padding: 3px 0 5px 38px!important;
+  }
+  .ant-collapse-content-box{
+    padding: 10px 10px 0!important;
+    .ant-descriptions-item{
+      padding-bottom: 8px!important;
+    }
+  }
 }

+ 26 - 1
src/config/router.config.js

@@ -48,7 +48,7 @@ export const asyncRouterMap = [
         },
         hidden: true
       },
-      // 新品列表
+      // 新品列表-下线产品
       {
         path: '/newProduct/list/:onlineFalg',
         name: 'newProductList',
@@ -1813,6 +1813,31 @@ export const asyncRouterMap = [
               }
             ]
           },
+          {
+            path: '/productManagement/productOnlineInfo',
+            redirect: '/productManagement/productOnlineInfo/list',
+            name: 'productOnlineInfo',
+            component: BlankLayout,
+            meta: {
+              title: '产品上线信息',
+              icon: 'file-text',
+              permission: 'M_productOnlineInfoList'
+            },
+            hideChildrenInMenu: true,
+            children: [
+              {
+                path: 'list',
+                name: 'productOnlineInfoList',
+                component: () => import(/* webpackChunkName: "productManagement" */ '@/views/productManagement/productOnlineInfo/list.vue'),
+                meta: {
+                  title: '产品上线信息列表',
+                  icon: 'file-text',
+                  hidden: true,
+                  permission: 'M_productOnlineInfoList'
+                }
+              }
+            ]
+          },
           {
             path: '/productManagement/productBrand',
             redirect: '/productManagement/productBrand/list',

+ 18 - 6
src/layouts/PageView.vue

@@ -38,7 +38,7 @@
         </div>
       </div>
     </page-header>
-    <div class="content" :style="{ height: contHeight+'px' }">
+    <div class="content" :style="{ height: pageHeight+'px' }">
       <div class="page-header-index-wide">
         <slot>
           <!-- keep-alive  -->
@@ -86,25 +86,37 @@ export default {
       linkList: [],
       extraImage: '',
       search: false,
-      tabs: {}
+      tabs: {},
+      pageHeight: 0
     }
   },
   computed: {
     ...mapState({
       multiTab: state => state.app.multiTab
-    }),
-    contHeight () {
-      return window.innerHeight - 85
-    }
+    })
+    // contHeight () {
+    //   return window.innerHeight - 80
+    // }
   },
   mounted () {
     this.tabs = this.directTabs
     this.getPageMeta()
+    this.setpageH()
+    const _this = this
+    window.onresize = () => {
+      return (() => {
+        _this.$store.dispatch('SetWinHeight', window.innerHeight)
+        _this.setpageH()
+      })()
+    }
   },
   updated () {
     this.getPageMeta()
   },
   methods: {
+    setpageH () {
+      this.pageHeight = window.innerHeight - 85
+    },
     getPageMeta () {
       // eslint-disable-next-line
       this.pageTitle = (typeof(this.title) === 'string' || !this.title) ? this.title : this.$route.meta.title

+ 8 - 1
src/store/modules/app.js

@@ -29,7 +29,8 @@ const app = {
     isShowVideo: false, // 是否显示视频弹窗
     isNewTab: false,
     isNewSubTab: false,
-    updateList: false
+    updateList: false,
+    winHeight: 0 //  窗口高度
   },
   mutations: {
     SET_SIDEBAR_TYPE: (state, type) => {
@@ -87,6 +88,9 @@ const app = {
     // 是否显示视频弹窗
     IS_ShOW_VIDEO: (state, bool) => {
       state.isShowVideo = bool
+    },
+    SET_WIN_HEIGHT: (state, val) => {
+      state.winHeight = val
     }
   },
   actions: {
@@ -152,6 +156,9 @@ const app = {
       commit
     }, bool) {
       commit('TOGGLE_MULTI_TAB', bool)
+    },
+    SetWinHeight ({ commit }, val) {
+      commit('SET_WIN_HEIGHT', val)
     }
   }
 }

+ 269 - 5
src/views/Home.vue

@@ -1,6 +1,131 @@
 <template>
   <div class="home">
     <a-alert :message="message" type="info" />
+    <!-- <a-card size="small" :bordered="false" class="page-cont" :bodyStyle="{padding: '17px 30px 20px'}">
+      <h3 class="page-tit">客户信息</h3>
+      <ul class="page-list">
+        <li>商户名称:广州生产经销商</li>
+        <li>商户别名:广州生产经销商</li>
+        <li>登录账号:admin</li>
+        <li>所属角色:升级经销商</li>
+      </ul>
+    </a-card>
+    <a-card size="small" :bordered="false" class="page-cont" :bodyStyle="{padding: '0px'}">
+      <a-row>
+        <a-col :span="6">
+          <div class="page-data-module">
+            <div class="page-data-con">
+              <p class="page-data-tit">今日总单量(个)/总销售额(元)</p>
+              <h3 class="page-data-num main-color">100/26,56.00</h3>
+              <p class="page-data-item">
+                <span class="page-data-itemText">本周</span>
+                <span class="page-data-itemText">10/1128.00</span>
+              </p>
+              <p class="page-data-item">
+                <span class="page-data-itemText">本月</span>
+                <span class="page-data-itemText">20/11248.00</span>
+              </p>
+            </div>
+            <span class="page-data-line"></span>
+          </div>
+        </a-col>
+        <a-col :span="6">
+          <div class="page-data-module">
+            <div class="page-data-con">
+              <p class="page-data-tit">今日总采购单量(个)/总采购总额(元)</p>
+              <h3 class="page-data-num">100/26,56.00</h3>
+              <p class="page-data-item">
+                <span class="page-data-itemText">本周</span>
+                <span class="page-data-itemText">10/1128.00</span>
+              </p>
+              <p class="page-data-item">
+                <span class="page-data-itemText">本月</span>
+                <span class="page-data-itemText">20/11248.00</span>
+              </p>
+            </div>
+            <span class="page-data-line"></span>
+          </div>
+        </a-col>
+        <a-col :span="6">
+          <div class="page-data-module">
+            <div class="page-data-con">
+              <p class="page-data-tit">客户总数(个)</p>
+              <h3 class="page-data-num">100/26,56.00</h3>
+              <p class="page-data-item">
+                <span class="page-data-itemText">本周新增</span>
+                <span class="page-data-itemText">2000</span>
+              </p>
+              <p class="page-data-item">
+                <span class="page-data-itemText">本月内采购客户</span>
+                <span class="page-data-itemText">1200</span>
+              </p>
+            </div>
+            <span class="page-data-line"></span>
+          </div>
+        </a-col>
+        <a-col :span="6">
+          <div class="page-data-module">
+            <div class="page-data-con">
+              <p class="page-data-tit">总库存(个)</p>
+              <h3 class="page-data-num" style="line-height: 36px;">101</h3>
+              <p class="page-data-tit">库存总金额(元)</p>
+              <h3 class="page-data-num" style="line-height: 36px;margin: 0;">101.25</h3>
+            </div>
+          </div>
+        </a-col>
+      </a-row>
+    </a-card>
+    <div>
+      <a-row>
+        <a-col :span="16">
+          <a-card size="small" :bordered="false" class="page-cont" :bodyStyle="{padding: '17px 30px 20px'}">
+            <h3 class="page-tit">销售/采购/调拨指引</h3>
+            <div class="page-nav-main">
+
+              <div class="page-nav-con">
+                <div class="page-nav-box">
+                  <a-badge count="5" class="page-nav-badge">
+                    <div class="page-nav-item blue-color">
+                      <div class="page-nav-n">
+                        <img src="@/assets/home-icon/home_icon_customer.png" width="16" height="16" />
+                        <span>客户</span>
+                      </div>
+                      <a-icon type="caret-right" style="color: #BBBBBB;" />
+                    </div>
+                  </a-badge>
+                </div>
+                <div class="page-nav-box">
+                  <a-badge count="5" class="page-nav-badge">
+                    <div class="page-nav-item red-color">
+                      <div class="page-nav-n">
+                        <img src="@/assets/home-icon/home_icon_customer.png" width="16" height="16" />
+                        <span>销售开单</span>
+                      </div>
+                      <a-icon type="caret-right" style="color: #BBBBBB;" />
+                    </div>
+                  </a-badge>
+                  <a-badge count="5" class="page-nav-badge">
+                    <div class="page-nav-item blue-color">
+                      <div class="page-nav-n">
+                        <img src="@/assets/home-icon/home_icon_customer.png" width="16" height="16" />
+                        <span>客户</span>
+                      </div>
+                      <a-icon type="caret-right" style="color: #BBBBBB;" />
+                    </div>
+                  </a-badge>
+                </div>
+              </div>
+
+            </div>
+          </a-card>
+        </a-col>
+        <a-col :span="8">
+          <a-card size="small" :bordered="false" class="page-cont right-con" :bodyStyle="{padding: '17px 30px 20px'}">
+            <h3 class="page-tit">财务指引</h3>
+          </a-card>
+        </a-col>
+      </a-row>
+    </div> -->
     <!-- 重置密码 -->
     <a-modal
       class="resetPwdModal"
@@ -45,6 +170,37 @@ export default {
       openResetPwd: false, //  重置密码是否显示
       openNewProduct: false,
       onlineFalg: '1' // 上下线标识  1为上线,0为下线
+      // navCList: [
+      //   {
+      //     icon: require('@/assets/home-icon/home_icon_customer.png'),
+      //     name: '客户',
+      //     styleC: 'blue-color',
+      //     url: '/customerManagement/customerInfo/list',
+      //     orderNum: '',
+      //     children: [
+      //       {
+      //         icon: require('@/assets/home-icon/home_icon_billing.png'),
+      //         name: '销售开单',
+      //         styleC: 'red-color',
+      //         url: '/customerManagement/customerInfo/list',
+      //         orderNum: '',
+      //         children: [
+
+      //         ]
+      //       },
+      //       {
+      //         icon: require('@/assets/home-icon/home_icon_return.png'),
+      //         name: '销售退货',
+      //         styleC: 'red-color',
+      //         url: '/customerManagement/customerInfo/list',
+      //         orderNum: '',
+      //         children: [
+
+      //         ]
+      //       }
+      //     ]
+      //   }
+      // ]
     }
   },
   computed: {
@@ -70,7 +226,11 @@ export default {
     // 查看更多产品
     seeMore () {
       this.openNewProduct = false
-      this.$router.push({ name: 'newProductList', params: { onlineFalg: this.onlineFalg } })
+      if (this.onlineFalg == '1') { // 上线
+        this.$router.push({ path: '/productManagement/productOnlineInfo/list', query: { closeLastOldTab: true } })
+      } else { // 下线
+        this.$router.push({ name: 'newProductList', params: { onlineFalg: this.onlineFalg } })
+      }
     },
     // 关闭弹框
     cancelProductTips () {
@@ -98,10 +258,114 @@ export default {
   }
 }
 </script>
-<style scoped>
+<style lang="less" scoped>
+  .ant-card-body{
+    padding: 17px 30px 20px;
+  }
   .home {
-    /* width: 900px;
-    margin: 0 auto;
-    padding: 25px 0; */
+    .page-cont{
+      margin-bottom: 10px;
+      // 客户信息
+      .page-tit{
+        color: #000000;
+        font-size: 16px;
+        font-weight: 500;
+        margin-bottom: 18px;
+      }
+      .page-list{
+        list-style: none;
+        margin: 0;
+        padding: 0;
+        li{
+          display: inline-block;
+          width: 25%;
+          font-size: 14px;
+          color: rgba(0, 0, 0, 0.65);
+        }
+      }
+      // 数据看板
+      .page-data-module{
+        display: flex;
+        justify-content: space-between;
+        align-items: center;
+        .page-data-con{
+          padding: 20px 30px;
+          flex-grow: 1;
+          .page-data-tit{
+            font-size: 14px;
+            color: rgba(0, 0, 0, 0.65);
+            margin: 0;
+          }
+          .page-data-num{
+            font-size: 30px;
+            font-family: PingFang SC;
+            color: #000000;
+            margin-bottom: 5px;
+          }
+          .main-color{
+            color: rgba(231, 0, 18, 1);
+          }
+          .page-data-item{
+            display: flex;
+            justify-content: space-between;
+            align-items: center;
+            margin-bottom: 3px;
+            .page-data-itemText{
+              font-size: 14px;
+              color: rgba(0, 0, 0, 0.65);
+            }
+          }
+        }
+        .page-data-line{
+          display: block;
+          width: 1px;
+          height: 76px;
+          background-color: rgba(232, 232, 232, 1);
+        }
+      }
+      // 操作导航引导
+      .page-nav-main{
+        .page-nav-con{
+          display: flex;
+          align-items: center;
+          .page-nav-box{
+            display: inline-block;
+            width: 20%;
+            .page-nav-badge{
+              width: 80%;
+              &:first-child{
+                margin-bottom: 10px;
+              }
+              .page-nav-item{
+                border-radius: 8px;
+                display: flex;
+                justify-content: space-between;
+                align-items: center;
+                padding: 13px 10px;
+                .page-nav-n{
+                  img{
+                    vertical-align: sub;
+                  }
+                  span{
+                    color: rgba(0, 0, 0, 0.65);
+                    font-size: 14px;
+                    padding-left: 5px;
+                  }
+                }
+              }
+              .blue-color{
+                background-color: #EDF0F9;
+              }
+              .red-color{
+                background-color: #F8F1EF;
+              }
+            }
+          }
+        }
+      }
+    }
+    .right-con{
+      margin-left: 10px;
+    }
   }
 </style>

+ 3 - 0
src/views/allocationManagement/chainTransferIn/list.vue

@@ -249,6 +249,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 5 - 1
src/views/allocationManagement/chainTransferOut/edit.vue

@@ -297,6 +297,10 @@ export default {
   methods: {
     //  重置
     resetSearchForm () {
+      this.resetData()
+      this.$refs.table.refresh(true)
+    },
+    resetData () {
       this.queryParam.productCode = ''
       this.queryParam.productName = ''
       this.queryParam.productOrigCode = ''
@@ -306,7 +310,6 @@ export default {
       this.queryParam.productTypeSn2 = undefined
       this.queryParam.productTypeSn3 = undefined
       this.productType = []
-      this.$refs.table.refresh(true)
     },
     // 已选产品  重置
     chooseResetSearchForm () {
@@ -487,6 +490,7 @@ export default {
       })
     },
     pageInit () {
+      this.resetData()
       this.chooseResetSearchForm()
       this.getDetail()
       this.getWarehouseList()

+ 3 - 0
src/views/allocationManagement/chainTransferOut/list.vue

@@ -316,6 +316,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/allocationManagement/storeTransferOut/list.vue

@@ -301,6 +301,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 8 - 5
src/views/allocationManagement/warehouseAllocation/list.vue

@@ -121,12 +121,12 @@ export default {
       advanced: true, // 高级搜索 展开/关闭
       tableHeight: 0,
       warehouseList: [], // 仓库列表
-     time: [
-       getDate.getCurrMonthDays().starttime,
-       getDate.getCurrMonthDays().endtime
-     ],
+      time: [
+        getDate.getCurrMonthDays().starttime,
+        getDate.getCurrMonthDays().endtime
+      ],
       queryParam: { //  查询条件
-        beginDate:  getDate.getCurrMonthDays().starttime,
+        beginDate: getDate.getCurrMonthDays().starttime,
         endDate: getDate.getCurrMonthDays().endtime,
         outWarehouseSn: undefined, //  调出仓库
         putWarehouseSn: undefined, //  调入仓库
@@ -258,6 +258,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 5 - 0
src/views/basicData/bulkPartsTypeManagement/list.vue

@@ -134,6 +134,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 195
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/basicData/customerTypeManagement/list.vue

@@ -150,6 +150,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/basicData/expenseType/list.vue

@@ -170,6 +170,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 195
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/basicData/storeTransferOutTypeManagement/list.vue

@@ -135,6 +135,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 195
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 3 - 0
src/views/bulkManagement/bulkImport/list.vue

@@ -229,6 +229,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/bulkManagement/bulkReturnGoods/list.vue

@@ -329,6 +329,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/bulkManagement/bulkWarehousingOrder/list.vue

@@ -359,6 +359,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/customerManagement/customerInfo/list.vue

@@ -343,6 +343,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/financialManagement/companyCollectionPayment/list.vue

@@ -213,6 +213,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 5 - 0
src/views/financialManagement/companyReceivablePayable/list.vue

@@ -153,6 +153,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 230
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 3 - 0
src/views/financialManagement/expenseManagement/list.vue

@@ -321,6 +321,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 4 - 0
src/views/financialManagement/financialCollection/list.vue

@@ -163,6 +163,7 @@ export default {
         { title: '操作', scopedSlots: { customRender: 'action' }, width: '5%', align: 'center' }
       ],
       selectedRowKeys: [], // Check here to configure the default column
+      selectedRows: [],
       loading: false,
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
@@ -343,6 +344,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 4 - 0
src/views/financialManagement/financialPayment/list.vue

@@ -162,6 +162,7 @@ export default {
         { title: '操作', scopedSlots: { customRender: 'action' }, width: '5%', align: 'center' }
       ],
       selectedRowKeys: [], // Check here to configure the default column
+      selectedRows: [],
       loading: false,
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
@@ -342,6 +343,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/financialManagement/inventoryCheckAudit/list.vue

@@ -184,6 +184,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/financialManagement/ledgerRecord/list.vue

@@ -172,6 +172,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/financialManagement/warehousingAudit/list.vue

@@ -222,6 +222,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/financialManagement/withdrawalManagement/list.vue

@@ -158,6 +158,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/inventoryManagement/inventoryChecking/list.vue

@@ -283,6 +283,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/inventoryManagement/inventoryImport/list.vue

@@ -223,6 +223,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/inventoryManagement/inventoryQuery/list.vue

@@ -353,6 +353,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/inventoryManagement/inventoryQuery/warehouseDetail.vue

@@ -216,6 +216,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/inventoryManagement/inventoryWarning/list.vue

@@ -443,6 +443,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 5 - 0
src/views/inventoryManagement/satelliteWarehouseInventory/list.vue

@@ -196,6 +196,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/inventoryManagement/warehouse/list.vue

@@ -165,6 +165,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/inventoryManagement/warehouse/storingLocation/list.vue

@@ -176,6 +176,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 290
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 15 - 12
src/views/notice/list.vue

@@ -95,18 +95,6 @@ export default {
       return this.$store.getters.wsMessageData()
     }
   },
-  watch: {
-    // 监听ws消息通知
-    wsMessage (a, b) {
-      if (a !== b && a) {
-        // 新未读消息
-        if (a.type == 'no_read_count') {
-          this.resetData()
-          this.handelSearch()
-        }
-      }
-    }
-  },
   methods: {
     ...mapActions([
       'getMessageList', // 查询列表
@@ -208,6 +196,21 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 210
     }
   },
+  watch: {
+    // 监听ws消息通知
+    wsMessage (a, b) {
+      if (a !== b && a) {
+        // 新未读消息
+        if (a.type == 'no_read_count') {
+          this.resetData()
+          this.handelSearch()
+        }
+      }
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 84 - 22
src/views/outboundOrderManagement/outboundOrder/list.vue

@@ -45,13 +45,22 @@
           </a-row>
         </a-form>
       </div>
+      <div v-if="$hasPermissions('B_outboundBatchOut')" style="margin-bottom: 10px">
+        <a-button type="primary" id="outboundOrderList-export" :loading="loading" @click="handleOutbounds">批量出库</a-button>
+        <span style="margin-left: 5px" v-if="$hasPermissions('B_outboundBatchOut')">
+          <template v-if="hasSelected">
+            {{ `已选 ${selectedRowKeys.length} 项` }}
+          </template>
+        </span>
+      </div>
       <!-- 列表 -->
       <s-table
         class="sTable fixPagination"
         ref="table"
         :style="{ height: tableHeight+84.5+'px' }"
         size="small"
-        :rowKey="(record) => record.id"
+        :row-selection="$hasPermissions('B_outboundBatchOut') ? rowSelection : null"
+        :rowKey="(record) => record.outBizSn"
         :columns="columns"
         :data="loadData"
         :scroll="{ y: tableHeight }"
@@ -102,6 +111,7 @@
 </template>
 
 <script>
+import moment from 'moment'
 import { STable, VSelect } from '@/components'
 import rangeDate from '@/views/common/rangeDate.vue'
 import pushOrderDetailModal from '@/views/purchasingManagement/purchaseReturn/detail.vue'
@@ -110,7 +120,7 @@ import urgentDetailModal from '@/views/salesManagement/urgentItemsOffset/detail.
 import storeTransferOutDetailModal from '@/views/allocationManagement/storeTransferOut/detail.vue'
 import chainTransferOutDetailModal from '@/views/allocationManagement/chainTransferOut/detail.vue'
 import warehouseAllocationDetailModal from '@/views/allocationManagement/warehouseAllocation/detail.vue'
-import { stockOutList, stockOutOut } from '@/api/stockOut'
+import { stockOutList, stockOutOut, stockOutBatchOut } from '@/api/stockOut'
 import getDate from '@/libs/getDate.js'
 export default {
   components: { STable, VSelect, rangeDate, pushOrderDetailModal, salesDetailModal, urgentDetailModal, storeTransferOutDetailModal, chainTransferOutDetailModal, warehouseAllocationDetailModal },
@@ -120,8 +130,8 @@ export default {
       advanced: true, // 高级搜索 展开/关闭
       tableHeight: 0, // 表格高度
       time: [
-        getDate.getCurrMonthDays().starttime,
-        getDate.getCurrMonthDays().endtime
+        moment(getDate.getCurrMonthDays().starttime),
+        moment(getDate.getCurrMonthDays().endtime)
       ],
       queryParam: { //  查询条件
         beginDate: getDate.getCurrMonthDays().starttime,
@@ -145,6 +155,7 @@ export default {
         { title: '操作', scopedSlots: { customRender: 'action' }, width: '10%', align: 'center' }
       ],
       selectedRowKeys: [], // Check here to configure the default column
+      selectedRows: [],
       loading: false,
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
@@ -175,16 +186,26 @@ export default {
       return this.selectedRowKeys.length > 0
     },
     rowSelection () {
-      return {
-        selectedRowKeys: this.selectedRowKeys,
-        onChange: (selectedRowKeys, selectedRows) => {
-          this.onSelectChange(selectedRowKeys)
-        },
-        getCheckboxProps: record => ({
-          props: {
-            disabled: record.state == 'FINISH' // Column configuration not to be checked
-          }
-        })
+      if (this.$hasPermissions('B_outboundBatchOut')) {
+        return {
+          selectedRowKeys: this.selectedRowKeys,
+          onChange: (selectedRowKeys, selectedRows) => {
+            this.selectedRowKeys = selectedRowKeys
+          },
+          onSelect: (record, selected, selectedRows, nativeEvent) => {
+            this.onSelectChange(record, selected, selectedRows, nativeEvent)
+          },
+          onSelectAll: (selected, selectedRows, changeRows) => {
+            this.onSelectAllChange(selected, selectedRows, changeRows)
+          },
+          getCheckboxProps: record => ({
+            props: {
+              disabled: record.state == 'FINISH'
+            }
+          })
+        }
+      } else {
+        return null
       }
     }
   },
@@ -278,7 +299,7 @@ export default {
         centered: true,
         onOk () {
           _this.spinning = true
-          stockOutOut(Object.assign(row, { outStockEnum: row.outBizType })).then(res => {
+          stockOutOut({ outBizSn: row.outBizSn, outStockEnum: row.outBizType }).then(res => {
             if (res.status == 200) {
               _this.$message.success(res.message)
               _this.$refs.table.refresh()
@@ -297,24 +318,62 @@ export default {
         return
       }
       this.loading = true
-      // ajax request after empty completing
-      setTimeout(() => {
+      this.spinning = true
+      const params = []
+      this.selectedRows.map(item => {
+        params.push({ outBizSn: item.outBizSn, outStockEnum: item.outBizType })
+      })
+      stockOutBatchOut(params).then(res => {
         this.loading = false
-        this.selectedRowKeys = []
-      }, 1000)
+        if (res.status == 200) {
+          this.$message.success(res.message)
+          this.selectedRowKeys = []
+          this.selectedRows = []
+          this.$refs.table.refresh()
+          this.spinning = false
+        } else {
+          this.spinning = false
+        }
+      })
     },
-    onSelectChange (selectedRowKeys) {
-      this.selectedRowKeys = selectedRowKeys
+    onSelectChange (record, selected, selectedRows, nativeEvent) {
+      console.log(record, selected, selectedRows, nativeEvent)
+      if (selected) { //  选择
+        this.selectedRows.push(record)
+      } else { //  取消
+        this.selectedRows = selectedRows
+      }
+    },
+    // 本页全选/取消全选
+    onSelectAllChange (selected, selectedRows, changeRows) {
+      const _this = this
+      if (selected) { //  选择
+        this.selectedRows = [...this.selectedRows, ...changeRows]
+      } else { //  取消
+        const arrId = []
+        this.selectedRows.map((item, index) => {
+          this.selectedRows.map((subItem, ind) => {
+            if (item.outBizSn == subItem.outBizSn) {
+              arrId.push(index)
+            }
+          })
+        })
+        arrId.map((item, index) => {
+          _this.selectedRows = _this.selectedRows.slice(item, item + 1)
+        })
+      }
     },
     pageInit () {
       const _this = this
       this.$nextTick(() => { // 页面渲染完成后的回调
         _this.setTableH()
       })
+      this.selectedRowKeys = []
+      this.selectedRows = []
     },
     setTableH () {
       const tableSearchH = this.$refs.tableSearch.offsetHeight
-      this.tableHeight = window.innerHeight - tableSearchH - 195
+      this.tableHeight = window.innerHeight - tableSearchH - 205
     }
   },
   watch: {
@@ -323,6 +382,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 5 - 0
src/views/power/role/roleList.vue

@@ -228,6 +228,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 255
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/power/user/userList.vue

@@ -233,6 +233,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 3 - 0
src/views/productManagement/newProduct/list.vue

@@ -241,6 +241,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/productManagement/priceChangeRecord/list.vue

@@ -337,6 +337,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 5 - 0
src/views/productManagement/productBrand/list.vue

@@ -163,6 +163,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 3 - 0
src/views/productManagement/productInfo/list.vue

@@ -340,6 +340,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 3 - 0
src/views/productManagement/productInfoJg/list.vue

@@ -296,6 +296,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 288 - 0
src/views/productManagement/productOnlineInfo/list.vue

@@ -0,0 +1,288 @@
+<template>
+  <a-card size="small" :bordered="false" class="productOnlineInfoList-wrap">
+    <a-spin :spinning="spinning" tip="Loading...">
+      <!-- 搜索条件 -->
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+          <a-row :gutter="15">
+            <a-col :md="6" :sm="24">
+              <a-form-item label="产品编码">
+                <a-input id="productInfoList-code" v-model.trim="queryParam.code" allowClear placeholder="请输入产品编码"/>
+              </a-form-item>
+            </a-col>
+            <a-col :md="6" :sm="24">
+              <a-form-item label="产品名称">
+                <a-input id="productInfoList-name" v-model.trim="queryParam.name" allowClear placeholder="请输入产品名称"/>
+              </a-form-item>
+            </a-col>
+            <a-col :md="6" :sm="24">
+              <a-form-model-item label="上线时间'">
+                <rangeDate ref="rangeDate" @change="dateChange" />
+              </a-form-model-item>
+            </a-col>
+            <template v-if="advanced">
+              <a-col :md="6" :sm="24">
+                <a-form-item label="产品品牌">
+                  <a-select
+                    placeholder="请选择产品品牌"
+                    id="productInfoList-productBrandSn"
+                    allowClear
+                    v-model="queryParam.productBrandSn"
+                    :showSearch="true"
+                    option-filter-prop="children"
+                    :filter-option="filterOption">
+                    <a-select-option v-for="item in productBrandList" :key="item.brandSn" :value="item.brandSn">{{ item.brandName }}</a-select-option>
+                  </a-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="产品分类">
+                  <a-cascader
+                    @change="changeProductType"
+                    change-on-select
+                    v-model="productType"
+                    expand-trigger="hover"
+                    :options="productTypeList"
+                    :fieldNames="{ label: 'productTypeName', value: 'productTypeSn', children: 'children' }"
+                    id="productInfoList-productType"
+                    placeholder="请选择产品分类"
+                    allowClear />
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="原厂编码">
+                  <a-input id="productInfoList-origCode" v-model.trim="queryParam.origCode" allowClear placeholder="请输入原厂编码"/>
+                </a-form-item>
+              </a-col>
+            </template>
+            <a-col :md="6" :sm="24" style="margin-bottom: 10px;">
+              <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="productOnlineInfoList-refresh">查询</a-button>
+              <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="productOnlineInfoList-reset">重置</a-button>
+              <a-button
+                style="margin-left: 5px"
+                type="primary"
+                class="button-warning"
+                @click="handleExport"
+                :disabled="disabled"
+                :loading="exportLoading"
+                v-if="$hasPermissions('B_productOnlineInfoExport')"
+                id="inventoryQueryList-export">导出</a-button>
+              <a @click="advanced=!advanced" style="margin-left: 5px">
+                {{ advanced ? '收起' : '展开' }}
+                <a-icon :type="advanced ? 'up' : 'down'"/>
+              </a>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+      <!-- 列表 -->
+      <s-table
+        class="sTable fixPagination"
+        ref="table"
+        :style="{ height: tableHeight+84.5+'px' }"
+        size="small"
+        :rowKey="(record) => record.id"
+        :columns="columns"
+        :data="loadData"
+        :scroll="{ y: tableHeight }"
+        :defaultLoadData="false"
+        bordered>
+        <!-- 产品分类 -->
+        <template slot="productType" slot-scope="text, record">
+          <span v-if="record.productTypeName2 || record.productTypeName3">{{ record.productTypeName2 }} {{ record.productTypeName3 ? '>' : '' }} {{ record.productTypeName3 }}</span>
+          <span v-else>--</span>
+        </template>
+        <template slot="action" slot-scope="text, record">
+          <a-button
+            size="small"
+            type="link"
+            class="button-success"
+            @click="handleDetail(record)"
+            id="productOnlineInfoList-detail-btn">详情</a-button>
+        </template>
+      </s-table>
+    </a-spin>
+  </a-card>
+</template>
+
+<script>
+import { STable, VSelect } from '@/components'
+import rangeDate from '@/views/common/rangeDate.vue'
+import { dealerProductBrandQuery } from '@/api/dealerProductBrand'
+import { productTypeQuery } from '@/api/productType'
+import { hdPrint } from '@/libs/JGPrint'
+import { productList, productExport } from '@/api/product'
+export default {
+  name: 'ProductJgList',
+  components: { STable, VSelect, rangeDate },
+  data () {
+    return {
+      spinning: false,
+      advanced: true, // 高级搜索 展开/关闭
+      tableHeight: 0,
+      productType: [],
+      queryParam: { //  查询条件
+        onlineBeginDate: '',
+        onlineEndDate: '',
+        code: '', //  产品编码
+        name: '', //  产品名称
+        origCode: '', //  原厂编码
+        productBrandSn: undefined, //  产品品牌
+        productTypeSn1: '', //  产品一级分类
+        productTypeSn2: '', //  产品二级分类
+        productTypeSn3: '', //  产品三级分类
+        onlineFalg: '1',
+        isOnlinePage: '1'
+      },
+      disabled: false, //  查询、重置按钮是否可操作
+      exportLoading: false, // 导出loading
+      dateFormat: 'YYYY-MM-DD',
+      columns: [
+        { title: '序号', dataIndex: 'no', width: '4%', align: 'center' },
+        { title: '上线时间', dataIndex: 'onlineAuditTime', width: '12%', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '产品品牌', dataIndex: 'productBrandName', width: '12%', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '产品分类', scopedSlots: { customRender: 'productType' }, width: '13%', align: 'center' },
+        { title: '产品名称', dataIndex: 'name', width: '16%', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true },
+        { title: '产品编码', dataIndex: 'code', width: '16%', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '单位', dataIndex: 'unit', width: '5%', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '原厂编码', dataIndex: 'origCode', width: '14%', align: 'center', customRender: function (text) { return text || '--' } },
+        { title: '操作', scopedSlots: { customRender: 'action' }, width: '8%', align: 'center' }
+      ],
+      // 加载数据方法 必须为 Promise 对象
+      loadData: parameter => {
+        this.disabled = true
+        this.spinning = true
+        return productList(Object.assign(parameter, this.queryParam)).then(res => {
+          const data = res.data
+          const no = (data.pageNo - 1) * data.pageSize
+          for (var i = 0; i < data.list.length; i++) {
+            data.list[i].no = no + i + 1
+          }
+          this.disabled = false
+          this.spinning = false
+          return data
+        })
+      },
+      openModal: false, //  查看详情  弹框
+      itemId: '', //  当前产品id
+      productBrandList: [], //  品牌下拉数据
+      productTypeList: [] //  分类下拉数据
+    }
+  },
+  methods: {
+    //  创建时间  change
+    dateChange (date) {
+      this.queryParam.onlineBeginDate = date[0] || ''
+      this.queryParam.onlineEndDate = date[1] || ''
+    },
+    //  重置
+    resetSearchForm () {
+      this.$refs.rangeDate.resetDate()
+      this.queryParam.onlineBeginDate = ''
+      this.queryParam.onlineEndDate = ''
+      this.queryParam.code = ''
+      this.queryParam.name = ''
+      this.queryParam.origCode = ''
+      this.queryParam.productBrandSn = undefined
+      this.queryParam.productTypeSn1 = ''
+      this.queryParam.productTypeSn2 = ''
+      this.queryParam.productTypeSn3 = ''
+      this.queryParam.onlineFalg = '1'
+      this.queryParam.isOnlinePage = '1'
+      this.productType = []
+      this.$refs.table.refresh(true)
+    },
+    filterOption (input, option) {
+      return (
+        option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
+      )
+    },
+    //  详情
+    handleDetail (row) {
+      this.itemId = row.productSn
+      this.$router.push({ name: 'viewProduct', params: { sn: row.productSn } })
+    },
+    // 导出
+    handleExport () {
+      const _this = this
+      _this.spinning = true
+      _this.exportLoading = true
+      // 打印或导出
+      hdPrint('', 'export', productExport, this.queryParam, '', function () {
+        _this.spinning = false
+        _this.exportLoading = false
+      })
+    },
+    //  产品分类  change
+    changeProductType (val, opt) {
+      this.queryParam.productTypeSn1 = val[0] ? val[0] : ''
+      this.queryParam.productTypeSn2 = val[1] ? val[1] : ''
+      this.queryParam.productTypeSn3 = val[2] ? val[2] : ''
+    },
+    //  产品品牌  列表
+    getProductBrand () {
+      dealerProductBrandQuery({ 'sysFlag': '1' }).then(res => {
+        if (res.status == 200) {
+          this.productBrandList = res.data
+        } else {
+          this.productBrandList = []
+        }
+      })
+    },
+    //  产品分类  列表
+    getProductType () {
+      productTypeQuery({}).then(res => {
+        if (res.status == 200) {
+          this.productTypeList = res.data
+        } else {
+          this.productTypeList = []
+        }
+      })
+    },
+    pageInit () {
+      const _this = this
+      this.$nextTick(() => { // 页面渲染完成后的回调
+        _this.setTableH()
+      })
+      this.getProductBrand()
+      this.getProductType()
+    },
+    setTableH () {
+      const tableSearchH = this.$refs.tableSearch.offsetHeight
+      this.tableHeight = window.innerHeight - tableSearchH - 205
+    }
+  },
+  watch: {
+    advanced (newValue, oldValue) {
+      const _this = this
+      setTimeout(() => {
+        _this.setTableH()
+      }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
+  mounted () {
+    if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
+      this.pageInit()
+      this.resetSearchForm()
+    }
+  },
+  activated () {
+    // 如果是新页签打开,则重置当前页面
+    if (this.$store.state.app.isNewTab) {
+      this.pageInit()
+      this.resetSearchForm()
+    }
+    // 仅刷新列表,不重置页面
+    if (this.$store.state.app.updateList) {
+      this.pageInit()
+      this.$refs.table.refresh()
+    }
+  },
+  beforeRouteEnter (to, from, next) {
+    next(vm => {})
+  }
+}
+</script>

+ 60 - 50
src/views/purchasingManagement/purchaseOrder/chooseImportModal.vue

@@ -5,62 +5,65 @@
     :footer="null"
     :maskClosable="false"
     title="导入"
+    :closable="false"
     v-model="isShow"
     @cancle="isShow=false"
     :width="900">
-    <div class="chooseImport-con">
-      <!-- 可导入数据 -->
-      <p class="chooseImport-tit">可导入数据{{ loadData.length }}条</p>
-      <a-table
-        class="sTable"
-        ref="table"
-        size="small"
-        :rowKey="(record) => record.purchaseBillSn"
-        :columns="nowColumns"
-        :dataSource="loadData"
-        :loading="loading"
-        :scroll="{ y: 200 }"
-        :pagination="false"
-        bordered>
-      </a-table>
-      <a-divider />
-      <!-- 不可导入数据 -->
-      <p class="chooseImport-tit red">不可导入数据{{ unLoadData.length }}条</p>
-      <a-table
-        class="unTable sTable"
-        ref="unTable"
-        size="small"
-        :rowClassName="(record, index) => 'yellowBg-row'"
-        :rowKey="(record) => record.errorDesc"
-        :columns="nowUnColumns"
-        :dataSource="unLoadData"
-        :loading="loading"
-        :scroll="{ y: 200 }"
-        :pagination="false"
-        bordered>
-      </a-table>
-      <!-- 按钮 -->
-      <div class="btn-con">
-        <a-button
-          type="primary"
-          id="chooseImport-submit"
-          size="large"
-          :class="loadData.length==0?'button-grey':'button-primary'"
-          @click="handleSubmit"
-          style="padding: 0 60px;">确认导入</a-button>
-        <a-button
-          id="chooseImport-cancel"
-          size="large"
-          class="button-cancel"
-          @click="isShow=false"
-          style="padding: 0 60px;margin-left: 15px;">取消</a-button>
+    <a-spin :spinning="spinning" tip="Loading...">
+      <div class="chooseImport-con">
+        <!-- 可导入数据 -->
+        <p class="chooseImport-tit">可导入数据{{ loadData.length }}条</p>
+        <a-table
+          class="sTable"
+          ref="table"
+          size="small"
+          :rowKey="(record) => record.purchaseBillSn"
+          :columns="nowColumns"
+          :dataSource="loadData"
+          :loading="loading"
+          :scroll="{ y: 200 }"
+          :pagination="false"
+          bordered>
+        </a-table>
+        <a-divider />
+        <!-- 不可导入数据 -->
+        <p class="chooseImport-tit red">不可导入数据{{ unLoadData.length }}条</p>
+        <a-table
+          class="unTable sTable"
+          ref="unTable"
+          size="small"
+          :rowClassName="(record, index) => 'yellowBg-row'"
+          :rowKey="(record) => record.errorDesc"
+          :columns="nowUnColumns"
+          :dataSource="unLoadData"
+          :loading="loading"
+          :scroll="{ y: 200 }"
+          :pagination="false"
+          bordered>
+        </a-table>
+        <!-- 按钮 -->
+        <div class="btn-con">
+          <a-button
+            type="primary"
+            id="chooseImport-submit"
+            size="large"
+            :class="loadData.length==0?'button-grey':'button-primary'"
+            @click="handleSubmit"
+            style="padding: 0 60px;">确认导入</a-button>
+          <a-button
+            id="chooseImport-cancel"
+            size="large"
+            class="button-cancel"
+            @click="isShow=false"
+            style="padding: 0 60px;margin-left: 15px;">取消</a-button>
+        </div>
       </div>
-    </div>
+    </a-spin>
   </a-modal>
 </template>
 
 <script>
-import { purchaseDetailParseProducts } from '@/api/purchase'
+import { purchaseDetailParseProducts, purchaseDetailBatchInsert } from '@/api/purchase'
 export default {
   name: 'ChooseImportModal',
   props: {
@@ -77,6 +80,7 @@ export default {
   },
   data () {
     return {
+      spinning: false,
       isShow: this.openModal, //  是否打开弹框
       nowColumns: [ //  正品
         { title: '序号', dataIndex: 'no', width: '15%', align: 'center' },
@@ -125,8 +129,14 @@ export default {
       if (this.loadData.length == 0) {
         this.$message.warning('无可导入产品!')
       } else {
-        this.$emit('ok', this.loadData)
-        this.isShow = false
+        this.spinning = true
+        purchaseDetailBatchInsert(this.loadData).then(res => {
+          this.spinning = false
+          if (res.status == 200) {
+            this.$emit('ok', '')
+            this.isShow = false
+          }
+        })
       }
     }
   },

+ 11 - 13
src/views/purchasingManagement/purchaseOrder/edit.vue

@@ -186,8 +186,7 @@
                 :columns="chooseColumns"
                 :data="chooseLoadData"
                 :defaultLoadData="false"
-                :pageSize="10"
-                :scroll="{ y: 176 }"
+                :showPagination="false"
                 bordered>
                 <!-- 采购数量 -->
                 <template slot="storageQuantity" slot-scope="text, record">
@@ -230,7 +229,7 @@
         style="padding: 0 60px;">提交</a-button>
     </div>
     <!-- 导入产品 -->
-    <importGuideModal :openModal="openGuideModal" :params="{purchaseBillSn: $route.params.sn}" @close="openGuideModal=false" @ok="hanldeOk" />
+    <importGuideModal :openModal="openGuideModal" :params="{purchaseBillSn: $route.params.sn}" @close="openGuideModal=false" @ok="hanldeOks" />
     <!-- 上次缺货 -->
     <outStockModal :openModal="openOutStockModal" :paramsData="paramsData" @close="openOutStockModal=false" @ok="hanldeOkOutStock" />
     <!-- 选择地址 -->
@@ -245,7 +244,7 @@ import outStockModal from './outStockModal.vue'
 import chooseAddressModal from './receivingAddress/chooseAddressModal.vue'
 import ProductType from '../../common/productType.js'
 import ProductBrand from '../../common/productBrand.js'
-import { purchaseDetailBySn, purchaseWriteSubmit, purchaseDetailPrint, purchaseDetailBatchInsert, purchaseDetailExport, purchaseDetailAddress } from '@/api/purchase'
+import { purchaseDetailBySn, purchaseWriteSubmit, purchaseDetailPrint, purchaseDetailExport, purchaseDetailAddress } from '@/api/purchase'
 import { purchaseDetailList, purchaseDetailSave, purchaseDetailDel, purchaseDetailCount, purchaseDetailCancelList } from '@/api/purchaseDetail'
 import { productListPurchase } from '@/api/product'
 import defImg from '@/assets/def_img@2x.png'
@@ -305,13 +304,14 @@ export default {
       delLoading: false,
       productForm: {
         productName: '',
-        productCode: ''
+        productCode: '',
+        orderBy: 'purchase_bill_detail.CREATE_DATE desc'
       },
       purchaseDisabled: false, //  查询、重置按钮是否可操作
       // 表头
       chooseColumns: [
         { title: '序号', dataIndex: 'no', width: '5%', align: 'center' },
-        { title: '产品编码', dataIndex: 'dealerProductEntity.code', width: '20%', align: 'center', sorter: true },
+        { title: '产品编码', dataIndex: 'dealerProductEntity.code', width: '20%', align: 'center' },
         { title: '产品名称', dataIndex: 'dealerProductEntity.name', width: '20%', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true },
         { title: '采购单价', dataIndex: 'discountedPrice', width: '20%', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
         { title: '采购数量', scopedSlots: { customRender: 'storageQuantity' }, width: '10%', align: 'center' },
@@ -323,7 +323,8 @@ export default {
       chooseLoadData: parameter => {
         this.disabled = true
         // 查询总计
-        const params = Object.assign(parameter, this.productForm, { purchaseBillSn: this.$route.params.sn })
+        // const params = Object.assign(parameter, this.productForm, { purchaseBillSn: this.$route.params.sn })
+        const params = Object.assign({ pageNo: 1, pageSize: 5000 }, this.productForm, { purchaseBillSn: this.$route.params.sn })
         // this.getCountQuery(params)
         return purchaseDetailList(params).then(res => {
           const data = res.data
@@ -478,12 +479,9 @@ export default {
       })
     },
     // 导入产品
-    hanldeOk (obj) {
-      purchaseDetailBatchInsert(obj).then(res => {
-        if (res.status == 200) {
-          this.$refs.purchaseTable.refresh(true)
-        }
-      })
+    hanldeOks () {
+      this.$refs.purchaseTable.refresh(true)
+      this.getOrderDetail()
     },
     // 上次缺货
     handleOutStock () {

+ 2 - 5
src/views/purchasingManagement/purchaseOrder/importGuideModal.vue

@@ -109,11 +109,8 @@ export default {
       }
     },
     // 导入
-    hanldeOk (obj) {
-      if (obj && obj.length > 0) {
-        this.$emit('ok', obj)
-        this.isShow = false
-      }
+    hanldeOk () {
+      this.$emit('ok')
     },
     // 关闭
     handleClose () {

+ 4 - 1
src/views/purchasingManagement/purchaseOrder/list.vue

@@ -170,7 +170,7 @@ export default {
         financialStatus: undefined,
         purchaseBillSource: undefined,
         beginDate: getDate.getCurrMonthDays().starttime,
-        endDate:  getDate.getCurrMonthDays().endtime
+        endDate: getDate.getCurrMonthDays().endtime
       },
       totalData: {
         totalRecord: 0,
@@ -322,6 +322,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 2 - 4
src/views/purchasingManagement/purchaseReturn/edit.vue

@@ -206,7 +206,6 @@ export default {
             data.list[i].no = no + i + 1
           }
           this.disabled = false
-          this.dataSource = data.list
           return data
         })
       },
@@ -225,8 +224,7 @@ export default {
       ],
       // 加载数据方法 必须为 Promise 对象
       chooseLoadData: parameter => {
-        this.disabled = true
-        return purchaseReturnDetailList(Object.assign(parameter, { purchaseReturnSn: this.$route.params.sn })).then(res => {
+        return purchaseReturnDetailList(Object.assign(parameter, { purchaseReturnSn: this.$route.params.sn, orderBy: 'qpls_purchase_return_bill_detail.CREATE_DATE desc' })).then(res => {
           const data = res.data
           const no = (data.pageNo - 1) * data.pageSize
           for (var i = 0; i < data.list.length; i++) {
@@ -235,7 +233,7 @@ export default {
             data.list[i].remarksBackups = data.list[i].remarks
             data.list[i].refundableQty = data.list[i].purchaseBillRefundableQty + data.list[i].qty
           }
-          this.disabled = false
+          this.dataSource = data.list
           return data
         })
       }

+ 4 - 1
src/views/purchasingManagement/purchaseReturn/list.vue

@@ -165,7 +165,7 @@ export default {
     //  重置
     resetSearchForm () {
       this.$refs.rangeDate.resetDate(this.time)
-      this.queryParam.beginDate =  getDate.getCurrMonthDays().starttime
+      this.queryParam.beginDate = getDate.getCurrMonthDays().starttime
       this.queryParam.endDate = getDate.getCurrMonthDays().endtime
       this.queryParam.purchaseReturnNo = ''
       this.queryParam.state = undefined
@@ -281,6 +281,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 4 - 1
src/views/salesManagement/giftRecord/list.vue

@@ -76,7 +76,7 @@ export default {
       ],
       queryParam: { //  查询条件
         beginDate: getDate.getCurrMonthDays().starttime,
-        endDate:  getDate.getCurrMonthDays().endtime,
+        endDate: getDate.getCurrMonthDays().endtime,
         productCode: '', //  产品编码
         productOrigCode: '', //  原厂编码
         salesBillNo: '', //  关联销售单号
@@ -153,6 +153,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 11 - 6
src/views/salesManagement/salesQuery/edit.vue

@@ -187,12 +187,13 @@ export default {
       dataSource: [],
       productForm: {
         productName: '',
-        productCode: ''
+        productCode: '',
+        orderBy: 'sales_bill_detail.CREATE_DATE desc'
       },
       // 表头
       columns: [
         { title: '序号', dataIndex: 'no', width: '4%', align: 'center' },
-        { title: '产品编码', dataIndex: 'dealerProductEntity.code', width: '13%', scopedSlots: { customRender: 'productCode' }, align: 'center', sorter: true },
+        { title: '产品编码', dataIndex: 'dealerProductEntity.code', width: '13%', scopedSlots: { customRender: 'productCode' }, align: 'center' },
         { title: '产品名称', dataIndex: 'dealerProductEntity.name', width: '13%', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true },
         { title: '原厂编码', dataIndex: 'dealerProductEntity.origCode', width: '11%', align: 'center', customRender: function (text) { return text || '--' } },
         { title: '品牌', dataIndex: 'dealerProductEntity.productBrandName', width: '8%', align: 'center', sorter: true, customRender: function (text) { return text || '--' } },
@@ -333,7 +334,8 @@ export default {
     resetForm () {
       this.productForm = {
         productName: '',
-        productCode: ''
+        productCode: '',
+        orderBy: 'sales_bill_detail.CREATE_DATE desc'
       }
       this.$refs.table.refresh()
     },
@@ -396,7 +398,8 @@ export default {
               _this.resetSearchForm(true)
               _this.productForm = {
                 productName: '',
-                productCode: ''
+                productCode: '',
+                orderBy: 'sales_bill_detail.CREATE_DATE desc'
               }
             }
             _this.$message.info(res.message)
@@ -440,14 +443,16 @@ export default {
           // this.$message.info('该产品已在当前销售单中存在!')
           this.productForm = {
             productName: '',
-            productCode: hasRow.dealerProductEntity && hasRow.dealerProductEntity.code || ''
+            productCode: hasRow.dealerProductEntity && hasRow.dealerProductEntity.code || '',
+            orderBy: 'sales_bill_detail.CREATE_DATE desc'
           }
           this.$refs.table.refresh(true)
           return
         } else {
           this.productForm = {
             productName: '',
-            productCode: ''
+            productCode: '',
+            orderBy: 'sales_bill_detail.CREATE_DATE desc'
           }
         }
       }

+ 3 - 0
src/views/salesManagement/salesQuery/list.vue

@@ -443,6 +443,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   activated () {

+ 3 - 0
src/views/salesManagement/salesReturn/list.vue

@@ -289,6 +289,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 4 - 2
src/views/salesManagement/salesReturn/salesReturnEdit.vue

@@ -211,7 +211,8 @@ export default {
       dataSource: [],
       productForm: {
         productCode: '',
-        productName: ''
+        productName: '',
+        orderBy: 'sales_return_bill_detail.CREATE_DATE desc'
       },
       countData: null,
       // 表头
@@ -348,7 +349,8 @@ export default {
     resetForm () {
       this.productForm = {
         productName: '',
-        productCode: ''
+        productCode: '',
+        orderBy: 'sales_return_bill_detail.CREATE_DATE desc'
       }
       this.$refs.table.refresh(true)
     },

+ 4 - 2
src/views/salesManagement/salesReturn/salesReturnGrabEdit.vue

@@ -200,7 +200,8 @@ export default {
       dataSource: [],
       productForm: {
         productCode: '',
-        productName: ''
+        productName: '',
+        orderBy: 'sales_return_bill_detail.CREATE_DATE desc'
       },
       countData: null,
       // 表头
@@ -336,7 +337,8 @@ export default {
     resetForm () {
       this.productForm = {
         productName: '',
-        productCode: ''
+        productCode: '',
+        orderBy: 'sales_return_bill_detail.CREATE_DATE desc'
       }
       this.$refs.table.refresh(true)
     },

+ 3 - 0
src/views/salesManagement/salesman/list.vue

@@ -197,6 +197,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   mounted () {

+ 6 - 3
src/views/salesManagement/urgentItemsOffset/list.vue

@@ -85,9 +85,9 @@ export default {
       tableHeight: 0,
       advanced: true, // 高级搜索 展开/关闭
       time: [
-              getDate.getCurrMonthDays().starttime,
-              getDate.getCurrMonthDays().endtime
-            ],
+        getDate.getCurrMonthDays().starttime,
+        getDate.getCurrMonthDays().endtime
+      ],
       queryParam: { //  查询条件
         beginDate: getDate.getCurrMonthDays().starttime,
         endDate: getDate.getCurrMonthDays().endtime,
@@ -174,6 +174,9 @@ export default {
       setTimeout(() => {
         _this.setTableH()
       }, 400)
+    },
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
     }
   },
   activated () {

+ 5 - 0
src/views/storeManagement/bind/list.vue

@@ -154,6 +154,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/storeManagement/userAuthorization/list.vue

@@ -164,6 +164,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()

+ 5 - 0
src/views/supplierManagement/supplierInfo/list.vue

@@ -137,6 +137,11 @@ export default {
       this.tableHeight = window.innerHeight - tableSearchH - 235
     }
   },
+  watch: {
+    '$store.state.app.winHeight' (newValue, oldValue) { //  窗口变更时,需同时更改表格高度
+      this.setTableH()
+    }
+  },
   mounted () {
     if (!this.$store.state.app.isNewTab) { // 页签刷新时调用
       this.pageInit()