Browse Source

仓库不显示金额

yusheng 1 năm trước cách đây
mục cha
commit
939348c18f

+ 9 - 0
src/api/sys/index.js

@@ -17,3 +17,12 @@ export async function pageDictionaryData(id) {
   }
   return Promise.reject(new Error(res.data.message));
 }
+
+//获取系统参数
+export async function parameterGetByCode(data) {
+  const res = await request.post('/sys/parameter/getByCode', data);
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}

+ 24 - 12
src/views/warehouseManagement/outgoingManagement/add.vue

@@ -31,12 +31,13 @@
               <el-input
                 placeholder="请选择"
                 v-model="formData.clientName"
-                style="width: calc(100% - 80px);"
-              
+                style="width: calc(100% - 80px)"
               >
-         
               </el-input>
-              <openContactDialog style="margin-left: 3px;" @changeParent="contactDialogSuccess"></openContactDialog>
+              <openContactDialog
+                style="margin-left: 3px"
+                @changeParent="contactDialogSuccess"
+              ></openContactDialog>
             </el-form-item>
           </el-col>
           <el-col :span="6">
@@ -281,8 +282,9 @@
                 :show-overflow-tooltip="true"
               >
               </el-table-column>
-              
-              <el-table-column label="单价" prop="price" align="center">
+
+                
+              <el-table-column label="单价" prop="price" align="center" v-if="isPrice == 1">
                 <template slot-scope="{ row }">
                   <template>
                     {{ row.price ? row.price : '-' + '元' }}/{{
@@ -295,6 +297,7 @@
               <el-table-column
                 label="金额"
                 align="center"
+                v-if="isPrice == 1"
                 prop="totalMoney"
                 :show-overflow-tooltip="true"
               >
@@ -542,12 +545,15 @@
   import selectTree from '@/components/selectTree';
   import AssetsDialog from '../components/AssetsDialog.vue';
   import { deepClone } from '@/utils';
+  import { parameterGetByCode } from '@/api/sys/index.js';
+
   export default {
     name: 'outgoingManagementAdd',
     components: {
       selectTree,
       AssetsDialog,
-      outboundRequisitionDialog,openContactDialog
+      outboundRequisitionDialog,
+      openContactDialog
     },
     directives: {
       'el-table-infinite-scroll': elTableInfiniteScroll
@@ -573,6 +579,7 @@
         ), // 出库场景状态
         saveLoading: false,
         treeList: [],
+        isPrice:1,
         formData: {
           extInfo: {
             assetType: [], //物品类型id
@@ -595,7 +602,7 @@
           verifyId: '', //审核人Id
           verifyName: '', //审核人名称
           createUserId: '',
-          remark: ''
+          remark: '',
         },
         rules: {
           bizType: {
@@ -632,6 +639,12 @@
       this.getListItems();
       this.initUserInfo();
       this.initDeptData();
+      //仓库出入库是否显示金额(0:不显示 1:显示)
+      parameterGetByCode({
+        code: 'wms_price'
+      }).then((res) => {
+        this.isPrice = res.value;
+      });
       let queryObj = this.$route.query;
       console.log('queryObj------', queryObj);
       if (queryObj.ids) {
@@ -969,10 +982,9 @@
           }
         });
       },
-      contactDialogSuccess(data){
-        this.$set(this.formData,'clientName',data.name)
-        this.$set(this.formData,'clientCode',data.code)
-
+      contactDialogSuccess(data) {
+        this.$set(this.formData, 'clientName', data.name);
+        this.$set(this.formData, 'clientCode', data.code);
       },
       onClear() {
         this.formData.sourceBizNo = '';

+ 676 - 465
src/views/warehouseManagement/outgoingManagement/details.vue

@@ -36,11 +36,11 @@
                   <span>{{ extInfo.documentSource }}</span>
                 </el-form-item>
               </el-col>
-              <el-col :span="8" >
+              <el-col :span="8">
                 <el-form-item label="客户名称:">
                   <span>{{ infoData.clientName }}</span>
                 </el-form-item>
-               <!-- </el-col>
+                <!-- </el-col>
                 <el-col :span="8" v-if="infoData.bizType == 3">
                 <el-form-item label="客户联系人:">
                   <span>{{ infoData.clientUser }}</span>
@@ -50,7 +50,9 @@
                 </el-form-item> -->
               </el-col>
               <el-col :span="8">
-                <el-form-item :label="infoData.bizType == 4 ? '领料单:' : '来源单据:'">
+                <el-form-item
+                  :label="infoData.bizType == 4 ? '领料单:' : '来源单据:'"
+                >
                   <span>{{ infoData.sourceBizNo }}</span>
                 </el-form-item>
               </el-col>
@@ -104,39 +106,110 @@
         </div>
         <div class="content-detail mt20">
           <header-title title="产品信息" size="16px"></header-title>
-          <el-table ref="productListTable" :data="productList" border tooltip-effect="dark" :max-height="300"
-            :header-cell-style="rowClass">
+          <el-table
+            ref="productListTable"
+            :data="productList"
+            border
+            tooltip-effect="dark"
+            :max-height="300"
+            :header-cell-style="rowClass"
+          >
             <el-table-column label="序号" type="index" width="50">
             </el-table-column>
-            <el-table-column label="编码" prop="categoryCode" align="center"
-              :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="名称" align="center" prop="categoryName"
-              :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column v-if="clientEnvironmentId == 4" label="级别" prop="level" align="center">
+            <el-table-column
+              label="编码"
+              prop="categoryCode"
+              align="center"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="名称"
+              align="center"
+              prop="categoryName"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              v-if="clientEnvironmentId == 4"
+              label="级别"
+              prop="level"
+              align="center"
+            >
             </el-table-column>
-            <el-table-column label="型号" align="center" prop="categoryModel"
-              :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="规格" align="center" prop="specification"
-              :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="牌号" align="center" prop="brandNum" :show-overflow-tooltip="true"></el-table-column>
-
-            <el-table-column v-for="(item, index) in newColumns" :label="item.label" :align="item.align"
-              :prop="item.prop" :show-overflow-tooltip="item.showOverflowTooltip"></el-table-column>
-            <el-table-column label="批次号" prop="batchNo" align="center" :show-overflow-tooltip="true">
+            <el-table-column
+              label="型号"
+              align="center"
+              prop="categoryModel"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="规格"
+              align="center"
+              prop="specification"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="牌号"
+              align="center"
+              prop="brandNum"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+
+            <el-table-column
+              v-for="(item, index) in newColumns"
+              :label="item.label"
+              :align="item.align"
+              :prop="item.prop"
+              :show-overflow-tooltip="item.showOverflowTooltip"
+            ></el-table-column>
+            <el-table-column
+              label="批次号"
+              prop="batchNo"
+              align="center"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="包装数量" prop="packingQuantity" align="center">
+            <el-table-column
+              label="包装数量"
+              prop="packingQuantity"
+              align="center"
+            >
             </el-table-column>
-            <el-table-column label="包装单位" align="center" width="120" prop="packingUnit">
+            <el-table-column
+              label="包装单位"
+              align="center"
+              width="120"
+              prop="packingUnit"
+            >
             </el-table-column>
-            <el-table-column label="计量数量" prop="measureQuantity" width="100" align="center">
+            <el-table-column
+              label="计量数量"
+              prop="measureQuantity"
+              width="100"
+              align="center"
+            >
             </el-table-column>
             <el-table-column label="计量单位" prop="measureUnit" align="center">
             </el-table-column>
-            <el-table-column label="重量" prop="weight" align="center" :show-overflow-tooltip="true">
+            <el-table-column
+              label="重量"
+              prop="weight"
+              align="center"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="重量单位" prop="weightUnit" align="center" :show-overflow-tooltip="true">
+            <el-table-column
+              label="重量单位"
+              prop="weightUnit"
+              align="center"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="单价" prop="price" align="center">
+            <el-table-column
+              label="单价"
+              prop="price"
+              align="center"
+              v-if="isPrice == 1"
+            >
               <template slot-scope="{ row }">
                 <template>
                   {{ row.price ? row.price : '-' + '元' }}/{{ row.measureUnit }}
@@ -144,73 +217,199 @@
               </template>
             </el-table-column>
 
-            <el-table-column label="金额" align="center" prop="contentImage" :show-overflow-tooltip="true">
+            <el-table-column
+              v-if="isPrice == 1"
+              label="金额"
+              align="center"
+              prop="contentImage"
+              :show-overflow-tooltip="true"
+            >
               <template slot-scope="{ row, $index }">
                 {{ row.totalMoney ? row.totalMoney : 0 }}
               </template>
             </el-table-column>
-            <el-table-column v-if="clientEnvironmentId == 4" label="采购原因" align="center" prop="purpose"
-              :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="仓库" prop="warehouseName" :show-overflow-tooltip="true">
+            <el-table-column
+              v-if="clientEnvironmentId == 4"
+              label="采购原因"
+              align="center"
+              prop="purpose"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="仓库"
+              prop="warehouseName"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
           </el-table>
         </div>
         <div class="mt20">
           <header-title :title="`包装明细`" size="16px"></header-title>
-          <el-table ref="showPackingListTable" :data="showPackingList" tooltip-effect="dark" :max-height="300" border
-            :row-class-name="tableRowClassName" :header-cell-style="rowClass"
-            v-el-table-infinite-scroll="pickingHandleScroll">
+          <el-table
+            ref="showPackingListTable"
+            :data="showPackingList"
+            tooltip-effect="dark"
+            :max-height="300"
+            border
+            :row-class-name="tableRowClassName"
+            :header-cell-style="rowClass"
+            v-el-table-infinite-scroll="pickingHandleScroll"
+          >
             <el-table-column label="序号" type="index" width="50">
             </el-table-column>
-            <el-table-column label="编码" prop="categoryCode" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="名称" prop="categoryName" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="批次号" prop="batchNo" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="发货条码" prop="barcodes" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="包装编码" prop="packageNo" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="包装数量" prop="packingQuantity" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="包装单位" prop="packingUnit" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="计量数量" prop="measureQuantity" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="计量单位" prop="measureUnit" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="物料代号" prop="materielDesignation" :show-overflow-tooltip="true">
+            <el-table-column
+              label="编码"
+              prop="categoryCode"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="名称"
+              prop="categoryName"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="批次号"
+              prop="batchNo"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="发货条码"
+              prop="barcodes"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="包装编码"
+              prop="packageNo"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="包装数量"
+              prop="packingQuantity"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="包装单位"
+              prop="packingUnit"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="计量数量"
+              prop="measureQuantity"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="计量单位"
+              prop="measureUnit"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="物料代号"
+              prop="materielDesignation"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="客户代号" prop="clientCode" :show-overflow-tooltip="true">
+            <el-table-column
+              label="客户代号"
+              prop="clientCode"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="刻码" prop="engrave" :show-overflow-tooltip="true">
+            <el-table-column
+              label="刻码"
+              prop="engrave"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="重量" prop="weight" :show-overflow-tooltip="true">
+            <el-table-column
+              label="重量"
+              prop="weight"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="重量单位" prop="weightUnit" :show-overflow-tooltip="true">
+            <el-table-column
+              label="重量单位"
+              prop="weightUnit"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="质检结果" prop="result" :show-overflow-tooltip="true">
+            <el-table-column
+              label="质检结果"
+              prop="result"
+              :show-overflow-tooltip="true"
+            >
               <template slot-scope="{ row }">
                 <span>{{ qualityResults[row.result] }}</span>
               </template>
             </el-table-column>
-            <el-table-column label="质检状态" prop="status" :show-overflow-tooltip="true">
+            <el-table-column
+              label="质检状态"
+              prop="status"
+              :show-overflow-tooltip="true"
+            >
               <template slot-scope="{ row }">
                 <span>{{ qualityStatus[row.status] }}</span>
               </template>
             </el-table-column>
-            <el-table-column label="生产日期" prop="productionDate" :show-overflow-tooltip="true">
+            <el-table-column
+              label="生产日期"
+              prop="productionDate"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
-            <el-table-column label="采购日期" prop="purchaseDate" :show-overflow-tooltip="true">
+            <el-table-column
+              label="采购日期"
+              prop="purchaseDate"
+              :show-overflow-tooltip="true"
+            >
             </el-table-column>
           </el-table>
         </div>
         <div class="mt20">
           <header-title :title="`物料明细`" size="16px"> </header-title>
-          <el-table ref="multipleTable" :data="showMaterialList" tooltip-effect="dark" :max-height="300"
-            :row-class-name="tableRowClassName" :header-cell-style="rowClass" border style="width: 100%" stripe
-            height="300px" v-el-table-infinite-scroll="materielHandleScroll">
+          <el-table
+            ref="multipleTable"
+            :data="showMaterialList"
+            tooltip-effect="dark"
+            :max-height="300"
+            :row-class-name="tableRowClassName"
+            :header-cell-style="rowClass"
+            border
+            style="width: 100%"
+            stripe
+            height="300px"
+            v-el-table-infinite-scroll="materielHandleScroll"
+          >
             <el-table-column label="序号" type="index" width="50">
             </el-table-column>
-            <el-table-column label="编码" prop="categoryCode" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="名称" prop="categoryName" :show-overflow-tooltip="true"></el-table-column>
+            <el-table-column
+              label="编码"
+              prop="categoryCode"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="名称"
+              prop="categoryName"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
             <el-table-column label="批次号" prop="batchNo"></el-table-column>
-            <el-table-column label="物料编码" prop="materialCode" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="发货条码" prop="barcodes" :show-overflow-tooltip="true"></el-table-column>
-            <el-table-column label="计量数量" prop="measureQuantity"></el-table-column>
-            <el-table-column label="计量单位" prop="measureUnit"></el-table-column>
+            <el-table-column
+              label="物料编码"
+              prop="materialCode"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="发货条码"
+              prop="barcodes"
+              :show-overflow-tooltip="true"
+            ></el-table-column>
+            <el-table-column
+              label="计量数量"
+              prop="measureQuantity"
+            ></el-table-column>
+            <el-table-column
+              label="计量单位"
+              prop="measureUnit"
+            ></el-table-column>
             <el-table-column label="物料代号" prop="materielDesignation">
             </el-table-column>
             <el-table-column label="客户代号" prop="clientCode">
@@ -238,477 +437,489 @@
 </template>
 
 <script>
-import elTableInfiniteScroll from 'el-table-infinite-scroll';
-import { getFile } from '@/api/system/file/index.js';
-import PageHeader from '@/components/PageHeader';
-import storageApi from '@/api/warehouseManagement';
-import { allCategoryLevel } from '@/api/classifyManage';
-import { useDictLabel, outputSceneState, qualityStatus, qualityResults } from '@/utils/dict/index';
-import { mapGetters, mapActions } from 'vuex';
-
-
-export default {
-  components: { PageHeader },
-  directives: {
-    'el-table-infinite-scroll': elTableInfiniteScroll
-  },
-  data() {
-    return {
-      newColumns: [], // 动态表头
-      // qualityStatus: {
-      //   0: '未质检',
-      //   1: '已质检'
-      // }, // 质检状态 0未检 1已检
-      // qualityResults: {
-      //   1: '合格',
-      //   2: '不合格'
-      // }, // 质检结果 1合格 2不合格
-      qualityStatus,
-      qualityResults,
-      productList: [], // 产品列表
-      showPackingList: [], // 展示的包装列表
-      packingList: [], // 包装列表
-      showMaterialList: [], // 展示物料列表
-      materialList: [], // 物料列表
-      extInfo: {}, // 扩展信息
-      pageSize: 20,
-      pickingPageNum: 1,
-      materielPageNum: 1,
-      codeList: [],
-      infoData: {},
-      stepsTitle: '已完成',
-      stepsStatus: 'success',
-      active: 0
-    };
-  },
-  watch: {
-    'infoData.verifyStatus': {
-      immediate: true,
-      handler(val) {
-        if (val == 0) {
-          this.active = 1;
-          this.stepsTitle = '未审核';
-          this.stepsStatus = 'wait';
-        } else if (val == 1) {
-          this.active = 2;
-          this.stepsTitle = '审核中';
-          this.stepsStatus = 'process';
-        } else if (val == 2) {
-          this.active = 2;
-          this.stepsTitle = '审核通过';
-          this.stepsStatus = 'success';
-        } else if (val == 3) {
-          this.active = 2;
-          this.stepsTitle = '驳回';
-          this.stepsStatus = 'error';
-        }
-      }
-    },
-    packingList: {
-      handler(newVal) {
-        console.log('包装列表', newVal);
-        console.log('当前包装列表加载页数', this.pickingPageNum);
-        this.showPackingList = newVal.slice(
-          0,
-          this.pageSize * (this.pickingPageNum > 0 ? this.pickingPageNum : 1)
-        );
-      },
-      deep: true
-    },
-    materialList: {
-      handler(newVal) {
-        console.log('物料列表', newVal);
-        console.log('当前物料列表加载页数', this.materielPageNum);
-        this.showMaterialList = newVal.slice(
-          0,
-          this.pageSize *
-          (this.materielPageNum > 0 ? this.materielPageNum : 1)
-        );
-      },
-      deep: true
-    }
-  },
-  computed: {
-    ...mapGetters(['getDictValue']),
-    clientEnvironmentId() {
-      return this.$store.state.user.info.clientEnvironmentId;
-    }
-  },
-  created() {
-    this.getFieldModel();
-    this.requestDict('类型用途');
-    this.getAllCategoryType();
-    this._getInfo();
-  },
-  methods: {
-    // 获取动态表头
-    getFieldModel() {
-      storageApi.fieldModel({ fieldModel: 't_main_category' }).then((res) => {
-        let newRes = res.map((m) => {
-          return {
-            prop: 'extField.' + m.prop,
-            label: m.label,
-            align: 'center',
-            showOverflowTooltip: true
-          };
-        });
-        this.newColumns = [...newRes];
-      });
+  import elTableInfiniteScroll from 'el-table-infinite-scroll';
+  import { getFile } from '@/api/system/file/index.js';
+  import PageHeader from '@/components/PageHeader';
+  import storageApi from '@/api/warehouseManagement';
+  import { allCategoryLevel } from '@/api/classifyManage';
+  import {
+    useDictLabel,
+    outputSceneState,
+    qualityStatus,
+    qualityResults
+  } from '@/utils/dict/index';
+  import { mapGetters, mapActions } from 'vuex';
+  import { parameterGetByCode } from '@/api/sys/index.js';
+
+  export default {
+    components: { PageHeader },
+    directives: {
+      'el-table-infinite-scroll': elTableInfiniteScroll
     },
-    pickingHandleScroll() {
-      console.log('---------pickingHandleScroll------------');
-      if (this.showPackingList.length < this.packingList.length) {
-        if (this.packingList.length > this.pageSize) {
-          this.pickingPageNum += 1;
-        }
-        this.pickingFetchData();
-      }
-    },
-    pickingFetchData() {
-      const start = (this.pickingPageNum - 1) * this.pageSize;
-      const end = start + this.pageSize;
-      this.showPackingList = this.showPackingList.concat(
-        this.packingList.slice(start, end)
-      );
+    data() {
+      return {
+        newColumns: [], // 动态表头
+        // qualityStatus: {
+        //   0: '未质检',
+        //   1: '已质检'
+        // }, // 质检状态 0未检 1已检
+        // qualityResults: {
+        //   1: '合格',
+        //   2: '不合格'
+        // }, // 质检结果 1合格 2不合格
+        qualityStatus,
+        qualityResults,
+        productList: [], // 产品列表
+        showPackingList: [], // 展示的包装列表
+        packingList: [], // 包装列表
+        showMaterialList: [], // 展示物料列表
+        materialList: [], // 物料列表
+        extInfo: {}, // 扩展信息
+        pageSize: 20,
+        pickingPageNum: 1,
+        materielPageNum: 1,
+        codeList: [],
+        infoData: {},
+        stepsTitle: '已完成',
+        stepsStatus: 'success',
+        active: 0,
+        isPrice: 1
+      };
     },
-    materielHandleScroll() {
-      console.log('---------materielHandleScroll------------');
-      if (this.showMaterialList.length < this.materialList.length) {
-        if (this.materialList.length > this.pageSize) {
-          this.materielPageNum += 1;
+    watch: {
+      'infoData.verifyStatus': {
+        immediate: true,
+        handler(val) {
+          if (val == 0) {
+            this.active = 1;
+            this.stepsTitle = '未审核';
+            this.stepsStatus = 'wait';
+          } else if (val == 1) {
+            this.active = 2;
+            this.stepsTitle = '审核中';
+            this.stepsStatus = 'process';
+          } else if (val == 2) {
+            this.active = 2;
+            this.stepsTitle = '审核通过';
+            this.stepsStatus = 'success';
+          } else if (val == 3) {
+            this.active = 2;
+            this.stepsTitle = '驳回';
+            this.stepsStatus = 'error';
+          }
         }
-        this.materielFetchData();
-      }
-    },
-    materielFetchData() {
-      const start = (this.materielPageNum - 1) * this.pageSize;
-      const end = start + this.pageSize;
-      this.showMaterialList = this.showMaterialList.concat(
-        this.materialList.slice(start, end)
-      );
-      console.log(this.showMaterialList);
-    },
-    ...mapActions('dict', ['requestDict']),
-    getSceneState: useDictLabel(outputSceneState),
-    handleAssetType(r) {
-      const code = this.codeList.find((item) => item.dictCode == r);
-      return code?.dictValue;
-    },
-    tableRowClassName({ row, rowIndex }) {
-      console.log(row);
-      if (row.result == 2) {
-        return 'warning-row';
-      } else {
-        return '';
+      },
+      packingList: {
+        handler(newVal) {
+          console.log('包装列表', newVal);
+          console.log('当前包装列表加载页数', this.pickingPageNum);
+          this.showPackingList = newVal.slice(
+            0,
+            this.pageSize * (this.pickingPageNum > 0 ? this.pickingPageNum : 1)
+          );
+        },
+        deep: true
+      },
+      materialList: {
+        handler(newVal) {
+          console.log('物料列表', newVal);
+          console.log('当前物料列表加载页数', this.materielPageNum);
+          this.showMaterialList = newVal.slice(
+            0,
+            this.pageSize *
+              (this.materielPageNum > 0 ? this.materielPageNum : 1)
+          );
+        },
+        deep: true
       }
     },
-    rowClass({ row, column, rowIndex, columnIndex }) {
-      if (rowIndex === 1) {
-        return {
-          display: 'none',
-          background: '#EEEEEE'
-        };
+    computed: {
+      ...mapGetters(['getDictValue']),
+      clientEnvironmentId() {
+        return this.$store.state.user.info.clientEnvironmentId;
       }
-      return { background: '#0000' };
     },
-    async getAllCategoryType() {
-      const { data } = await allCategoryLevel();
-      this.codeList = data.map((item) => {
-        return { dictCode: item.id, dictValue: item.name };
+    created() {
+      //仓库出入库是否显示金额(0:不显示 1:显示)
+      parameterGetByCode({
+        code: 'wms_price'
+      }).then((res) => {
+        this.isPrice = res.value;
       });
+      this.getFieldModel();
+      this.requestDict('类型用途');
+      this.getAllCategoryType();
+      this._getInfo();
     },
-    getDeptName() {
-      if (this.extInfo.createUserId) {
-        storageApi.getGroupById(this.extInfo.createUserId).then((res) => {
-          this.extInfo.deptName = res?.groupName
+    methods: {
+      // 获取动态表头
+      getFieldModel() {
+        storageApi.fieldModel({ fieldModel: 't_main_category' }).then((res) => {
+          let newRes = res.map((m) => {
+            return {
+              prop: 'extField.' + m.prop,
+              label: m.label,
+              align: 'center',
+              showOverflowTooltip: true
+            };
+          });
+          this.newColumns = [...newRes];
         });
-      }
-    },
-    async _getInfo() {
-      let res = null;
-      if (this.$route.query.id) {
-        res = await storageApi.getInboundDetailsById(this.$route.query.id);
-      } else {
-        res = await storageApi.getInboundDetailsByBizNo(
-          this.$route.query.bizNo
+      },
+      pickingHandleScroll() {
+        console.log('---------pickingHandleScroll------------');
+        if (this.showPackingList.length < this.packingList.length) {
+          if (this.packingList.length > this.pageSize) {
+            this.pickingPageNum += 1;
+          }
+          this.pickingFetchData();
+        }
+      },
+      pickingFetchData() {
+        const start = (this.pickingPageNum - 1) * this.pageSize;
+        const end = start + this.pageSize;
+        this.showPackingList = this.showPackingList.concat(
+          this.packingList.slice(start, end)
         );
-      }
-      this.infoData = res;
-      this.extInfo = res.extInfo;
-      this.getDeptName()
-      this.productList = res.outInDetailList.map(
-        (productItem, productIndex) => {
+      },
+      materielHandleScroll() {
+        console.log('---------materielHandleScroll------------');
+        if (this.showMaterialList.length < this.materialList.length) {
+          if (this.materialList.length > this.pageSize) {
+            this.materielPageNum += 1;
+          }
+          this.materielFetchData();
+        }
+      },
+      materielFetchData() {
+        const start = (this.materielPageNum - 1) * this.pageSize;
+        const end = start + this.pageSize;
+        this.showMaterialList = this.showMaterialList.concat(
+          this.materialList.slice(start, end)
+        );
+        console.log(this.showMaterialList);
+      },
+      ...mapActions('dict', ['requestDict']),
+      getSceneState: useDictLabel(outputSceneState),
+      handleAssetType(r) {
+        const code = this.codeList.find((item) => item.dictCode == r);
+        return code?.dictValue;
+      },
+      tableRowClassName({ row, rowIndex }) {
+        console.log(row);
+        if (row.result == 2) {
+          return 'warning-row';
+        } else {
+          return '';
+        }
+      },
+      rowClass({ row, column, rowIndex, columnIndex }) {
+        if (rowIndex === 1) {
           return {
-            ...productItem,
-            outInDetailRecordRequestList:
-              productItem.outInDetailRecordRequestList.map((packingItem) => {
-                return {
-                  ...packingItem,
-                  categoryName: productItem.categoryName,
-                  categoryCode: productItem.categoryCode,
-                  materialDetailList: packingItem.materialDetailList.map(
-                    (materialItem) => {
-                      return {
-                        ...materialItem,
-                        categoryName: productItem.categoryName,
-                        categoryCode: productItem.categoryCode
-                      };
-                    }
-                  )
-                };
-              })
+            display: 'none',
+            background: '#EEEEEE'
           };
         }
-      );
-      // 获取包装维度数据
-      const arr = [];
-      for (const key in this.productList) {
-        for (const k in this.productList[key].outInDetailRecordRequestList) {
-          arr.push({
-            ...this.productList[key].outInDetailRecordRequestList[k]
+        return { background: '#0000' };
+      },
+      async getAllCategoryType() {
+        const { data } = await allCategoryLevel();
+        this.codeList = data.map((item) => {
+          return { dictCode: item.id, dictValue: item.name };
+        });
+      },
+      getDeptName() {
+        if (this.extInfo.createUserId) {
+          storageApi.getGroupById(this.extInfo.createUserId).then((res) => {
+            this.extInfo.deptName = res?.groupName;
           });
         }
-      }
-      this.packingList = arr;
-      // 获取物料维度数据
-      let iArr = [];
-      arr.forEach((item) => {
-        item.materialDetailList.forEach((ele) => {
-          iArr.push({ ...ele });
+      },
+      async _getInfo() {
+        let res = null;
+        if (this.$route.query.id) {
+          res = await storageApi.getInboundDetailsById(this.$route.query.id);
+        } else {
+          res = await storageApi.getInboundDetailsByBizNo(
+            this.$route.query.bizNo
+          );
+        }
+        this.infoData = res;
+        this.extInfo = res.extInfo;
+        this.getDeptName();
+        this.productList = res.outInDetailList.map(
+          (productItem, productIndex) => {
+            return {
+              ...productItem,
+              outInDetailRecordRequestList:
+                productItem.outInDetailRecordRequestList.map((packingItem) => {
+                  return {
+                    ...packingItem,
+                    categoryName: productItem.categoryName,
+                    categoryCode: productItem.categoryCode,
+                    materialDetailList: packingItem.materialDetailList.map(
+                      (materialItem) => {
+                        return {
+                          ...materialItem,
+                          categoryName: productItem.categoryName,
+                          categoryCode: productItem.categoryCode
+                        };
+                      }
+                    )
+                  };
+                })
+            };
+          }
+        );
+        // 获取包装维度数据
+        const arr = [];
+        for (const key in this.productList) {
+          for (const k in this.productList[key].outInDetailRecordRequestList) {
+            arr.push({
+              ...this.productList[key].outInDetailRecordRequestList[k]
+            });
+          }
+        }
+        this.packingList = arr;
+        // 获取物料维度数据
+        let iArr = [];
+        arr.forEach((item) => {
+          item.materialDetailList.forEach((ele) => {
+            iArr.push({ ...ele });
+          });
         });
-      });
-      this.materialList = iArr;
-      console.log(this.packingList);
-      console.log(this.materialList);
-      this.pickingFetchData();
-      this.materielFetchData();
-    },
-    download(row) {
-      if (row.storePath) {
-        getFile({ objectName: row.storePath }, row.name);
+        this.materialList = iArr;
+        console.log(this.packingList);
+        console.log(this.materialList);
+        this.pickingFetchData();
+        this.materielFetchData();
+      },
+      download(row) {
+        if (row.storePath) {
+          getFile({ objectName: row.storePath }, row.name);
+        }
       }
     }
-  }
-};
+  };
 </script>
 
 <style lang="scss" scoped>
-.stepsStatus {
-  width: 40%;
-  margin: 0 auto;
-}
-
-.p20 {
-  padding: 20px;
-}
-
-.flex {
-  display: flex;
-}
-
-.title {
-  justify-content: space-between;
-  border-bottom: 1px solid #ccc;
-  padding-bottom: 5px;
-
-  span {
-    font-size: 16px;
+  .stepsStatus {
+    width: 40%;
+    margin: 0 auto;
   }
 
-  .col {
-    padding-left: 40px;
-    font-size: 14px;
-    color: #aaaaaa;
-  }
-}
-
-.degree {
-  margin-right: 10px;
-  padding: 0px 15px;
-  color: #fff;
-  font-size: 13px;
-  line-height: 23px;
-  border-radius: 23px;
-  display: flex;
-  align-items: center;
-  justify-content: space-between;
-
-  span {
-    width: 5px;
-    height: 5px;
-    border-radius: 100%;
-    margin-right: 6px;
-    background-color: #fff;
+  .p20 {
+    padding: 20px;
   }
-}
-
-.red {
-  background-color: rgb(163, 0, 20);
-}
 
-.blue {
-  background-color: #1989fa;
-}
+  .flex {
+    display: flex;
+  }
 
-.createdInfo {
-  justify-content: space-around;
-  margin-top: 10px;
-  font-size: 14px;
+  .title {
+    justify-content: space-between;
+    border-bottom: 1px solid #ccc;
+    padding-bottom: 5px;
 
-  .col {
-    color: #6e6e6e;
-    padding-right: 10px;
-  }
-}
-
-.mt40 {
-  margin-top: 40px;
-}
-
-.custSteps {
-  margin-top: 20px;
-  margin-left: 70px;
-
-  .box {
-    width: 158px;
-    border: 1px solid #ccc;
-    padding: 10px;
-    flex-direction: row;
-    flex-wrap: wrap;
-    // justify-content: space-between;
-    font-size: 12px;
-    color: #9e9e9e;
-
-    .x {
-      width: 20px;
-      height: 15px;
-      margin-right: 5px;
+    span {
+      font-size: 16px;
     }
 
-    .q {
-      background-color: #d0e4d5;
+    .col {
+      padding-left: 40px;
+      font-size: 14px;
+      color: #aaaaaa;
     }
+  }
 
-    .b {
-      background-color: #1989fa;
-    }
+  .degree {
+    margin-right: 10px;
+    padding: 0px 15px;
+    color: #fff;
+    font-size: 13px;
+    line-height: 23px;
+    border-radius: 23px;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
 
-    .g {
-      background-color: #157a2c;
+    span {
+      width: 5px;
+      height: 5px;
+      border-radius: 100%;
+      margin-right: 6px;
+      background-color: #fff;
     }
+  }
 
-    .r {
-      background-color: #a30014;
-    }
+  .red {
+    background-color: rgb(163, 0, 20);
+  }
 
-    .a {
-      align-items: center;
-      margin-bottom: 10px;
-    }
+  .blue {
+    background-color: #1989fa;
+  }
 
-    .mr10 {
-      margin-right: 10px;
-    }
+  .createdInfo {
+    justify-content: space-around;
+    margin-top: 10px;
+    font-size: 14px;
 
-    .mb0 {
-      margin-bottom: 0;
+    .col {
+      color: #6e6e6e;
+      padding-right: 10px;
     }
   }
 
-  .stepsInfo {
-    // flex: 1;
-    width: 483px;
+  .mt40 {
+    margin-top: 40px;
   }
-}
 
-.mt20 {
-  margin-top: 20px;
-}
+  .custSteps {
+    margin-top: 20px;
+    margin-left: 70px;
+
+    .box {
+      width: 158px;
+      border: 1px solid #ccc;
+      padding: 10px;
+      flex-direction: row;
+      flex-wrap: wrap;
+      // justify-content: space-between;
+      font-size: 12px;
+      color: #9e9e9e;
+
+      .x {
+        width: 20px;
+        height: 15px;
+        margin-right: 5px;
+      }
+
+      .q {
+        background-color: #d0e4d5;
+      }
 
-.content-detail {
-  overflow: hidden;
-}
+      .b {
+        background-color: #1989fa;
+      }
 
-.executor {
-  font-size: 14px;
+      .g {
+        background-color: #157a2c;
+      }
 
-  .col {
-    color: #6e6e6e;
-    padding-right: 10px;
+      .r {
+        background-color: #a30014;
+      }
+
+      .a {
+        align-items: center;
+        margin-bottom: 10px;
+      }
+
+      .mr10 {
+        margin-right: 10px;
+      }
+
+      .mb0 {
+        margin-bottom: 0;
+      }
+    }
+
+    .stepsInfo {
+      // flex: 1;
+      width: 483px;
+    }
   }
-}
 
-.result {
-  justify-content: space-around;
-}
+  .mt20 {
+    margin-top: 20px;
+  }
 
-.mr20 {
-  margin-right: 20px;
-}
+  .content-detail {
+    overflow: hidden;
+  }
 
-.details {
-  font-size: 14px;
-  margin-bottom: 10px;
-}
+  .executor {
+    font-size: 14px;
 
-.customSteps {
-  margin-top: 40px;
-  font-size: 14px;
-  margin-left: 80px;
+    .col {
+      color: #6e6e6e;
+      padding-right: 10px;
+    }
+  }
 
-  .time {
-    font-size: 12px;
-    color: #6e6e6e;
+  .result {
+    justify-content: space-around;
+  }
+
+  .mr20 {
     margin-right: 20px;
-    position: relative;
+  }
 
-    &::after {
-      content: '';
-      width: 1px;
-      height: 100%;
-      background-color: #157a2c;
-      position: absolute;
-      right: -26px;
-    }
+  .details {
+    font-size: 14px;
+    margin-bottom: 10px;
   }
 
-  .flex:last-child {
+  .customSteps {
+    margin-top: 40px;
+    font-size: 14px;
+    margin-left: 80px;
+
     .time {
+      font-size: 12px;
+      color: #6e6e6e;
+      margin-right: 20px;
+      position: relative;
+
       &::after {
-        display: none;
+        content: '';
+        width: 1px;
+        height: 100%;
+        background-color: #157a2c;
+        position: absolute;
+        right: -26px;
       }
     }
-  }
 
-  .round {
-    margin-right: 20px;
-    width: 10px;
-    height: 10px;
-    border-radius: 100%;
-    background-color: #157a2c;
-    position: relative;
+    .flex:last-child {
+      .time {
+        &::after {
+          display: none;
+        }
+      }
+    }
 
-    span {
-      position: absolute;
-      top: 50%;
-      left: 50%;
-      width: 4px;
-      height: 4px;
-      background-color: #fff;
+    .round {
+      margin-right: 20px;
+      width: 10px;
+      height: 10px;
       border-radius: 100%;
-      transform: translate(-2px, -2px);
+      background-color: #157a2c;
+      position: relative;
+
+      span {
+        position: absolute;
+        top: 50%;
+        left: 50%;
+        width: 4px;
+        height: 4px;
+        background-color: #fff;
+        border-radius: 100%;
+        transform: translate(-2px, -2px);
+      }
     }
-  }
 
-  .text {
-    .info {
-      margin-top: 10px;
-      width: 955px;
-      background-color: #f0f3f3;
-      overflow: hidden;
-      padding: 10px;
-      margin-bottom: 10px;
+    .text {
+      .info {
+        margin-top: 10px;
+        width: 955px;
+        background-color: #f0f3f3;
+        overflow: hidden;
+        padding: 10px;
+        margin-bottom: 10px;
+      }
     }
   }
-}
 </style>

+ 24 - 13
src/views/warehouseManagement/stockManagement/add.vue

@@ -64,12 +64,13 @@
               <el-input
                 placeholder="请选择"
                 v-model="formData.clientName"
-                style="width: calc(100% - 80px);"
-              
+                style="width: calc(100% - 80px)"
               >
-         
               </el-input>
-              <openContactDialog style="margin-left: 3px;" @changeParent="contactDialogSuccess"></openContactDialog>
+              <openContactDialog
+                style="margin-left: 3px"
+                @changeParent="contactDialogSuccess"
+              ></openContactDialog>
             </el-form-item>
           </el-col>
           <el-col :span="6">
@@ -89,7 +90,7 @@
               </el-input>
             </el-form-item>
           </el-col>
-        
+
           <el-col :span="6">
             <el-form-item label="入库时间">
               <el-date-picker
@@ -412,6 +413,7 @@
                 prop="unitPrice"
                 width="200"
                 align="center"
+                v-if="isPrice == 1"
               >
                 <template slot-scope="{ row, $index }">
                   <template v-if="row.isSave">
@@ -442,6 +444,7 @@
                 label="金额"
                 align="center"
                 prop="totalMoney"
+                v-if="isPrice == 1"
                 :show-overflow-tooltip="true"
               >
                 <template slot-scope="{ row, $index }">
@@ -894,7 +897,7 @@
                 </el-date-picker
               ></template>
             </el-table-column>
-            </template>
+          </template>
           <!-- <el-table-column label="操作" width="120" fixed="right">
             <template slot-scope="{ row, $index }">
               <el-button type="text" @click="wrapDelete(row, $index)">
@@ -1134,6 +1137,8 @@
   import { deepClone } from '@/utils';
   import BigNumber from 'bignumber.js';
   import { isBoolean } from 'mathjs';
+  import { parameterGetByCode } from '@/api/sys/index.js';
+
   export default {
     name: 'stockManagementAdd',
     components: {
@@ -1191,7 +1196,8 @@
         pageSize: 20, // 物料和包装列表条数
         pickingPageNum: 1, // 包装虚拟分页页数
         materielPageNum: 1, // 物料虚拟分页页数
-        packingSpecificationOption: [] // 包装规格下拉
+        packingSpecificationOption: [], // 包装规格下拉
+        isPrice: 1
       };
     },
     computed: {
@@ -1237,6 +1243,12 @@
       }
     },
     created() {
+      //仓库出入库是否显示金额(0:不显示 1:显示)
+      parameterGetByCode({
+        code: 'wms_price'
+      }).then((res) => {
+        this.isPrice = res.value;
+      });
       if (this.$route.query.name == 'inboundRequests') {
         this.getProduct();
       }
@@ -1809,10 +1821,9 @@
         //   return this.$message.error('请选择入库类型');
         // }
       },
-      contactDialogSuccess(data){
-        this.$set(this.formData,'clientName',data.name)
-        this.$set(this.formData,'clientCode',data.code)
-
+      contactDialogSuccess(data) {
+        this.$set(this.formData, 'clientName', data.name);
+        this.$set(this.formData, 'clientCode', data.code);
       },
       // 键盘移动
       moveFocus(event, index, key, type, row) {
@@ -3052,7 +3063,7 @@
               isUnpack: row.isUnpack, // 是否允许拆包
               productionDate: productionDate, // 生产日期
               purchaseDate: purchaseDate, // 采购时间
-              expireDate:expireDate,
+              expireDate: expireDate,
               result: 1, // 结果(1合格 2不合格)
               status: 2 // 状态(0=未质检 1待检 2已检)
             };
@@ -3400,7 +3411,7 @@
         if (!this.packingListSelected.length) {
           return this.$message.error(`请选择${this.title}明细!`);
         }
-        this.curDateType=curDateType
+        this.curDateType = curDateType;
         this.dateVisible = true;
       },
       // 选择包装列表

+ 12 - 3
src/views/warehouseManagement/stockManagement/details.vue

@@ -216,7 +216,8 @@
               :show-overflow-tooltip="true"
             >
             </el-table-column>
-            <el-table-column label="单价" prop="unitPrice" align="center">
+           
+            <el-table-column label="单价" prop="unitPrice" align="center"      v-if="isPrice == 1">
               <template slot-scope="{ row }">
                 <template>
                   {{ row.unitPrice ? row.unitPrice + '/元' : '' }}
@@ -228,6 +229,7 @@
               label="金额"
               align="center"
               prop="contentImage"
+              v-if="isPrice == 1"
               :show-overflow-tooltip="true"
             >
               <template slot-scope="{ row, $index }">
@@ -598,6 +600,7 @@
     qualityResults
   } from '@/utils/dict/index';
   import { mapGetters, mapActions } from 'vuex';
+  import { parameterGetByCode } from '@/api/sys/index.js';
 
   export default {
     components: { PageHeader, WareHouseDailog, mergeDetails, splitDetails },
@@ -639,7 +642,8 @@
         stepsStatus: 'success',
         active: 0,
         verifyStatus: '',
-        rowData: {}
+        rowData: {},
+        isPrice:1
       };
     },
     watch: {
@@ -700,7 +704,12 @@
       this.requestDict('类型用途');
       this.requestDict('不拆物料层规格');
       this.requestDict('产地');
-
+      //仓库出入库是否显示金额(0:不显示 1:显示)
+      parameterGetByCode({
+        code: 'wms_price'
+      }).then((res) => {
+        this.isPrice = res.value;
+      });
       this.getAllCategoryType();
       this._getInfo();
       this.verifyStatus = this.$route.query.verifyStatus;

+ 544 - 425
src/views/warehouseManagement/stockManagement/index.vue

@@ -5,38 +5,82 @@
         <el-row :gutter="10">
           <el-col :span="6">
             <el-form-item label="入库时间" prop="time">
-              <el-date-picker class="w100" size="small" v-model="formData.time" type="daterange" range-separator="至"
-                start-placeholder="开始日期" end-placeholder="结束日期" value-format="yyyy-MM-dd"></el-date-picker>
+              <el-date-picker
+                class="w100"
+                size="small"
+                v-model="formData.time"
+                type="daterange"
+                range-separator="至"
+                start-placeholder="开始日期"
+                end-placeholder="结束日期"
+                value-format="yyyy-MM-dd"
+              ></el-date-picker>
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="入库单号" prop="sourceBizNo">
-              <el-input size="small" class="w100" placeholder="请输入" v-model="formData.sourceBizNo"></el-input>
+              <el-input
+                size="small"
+                class="w100"
+                placeholder="请输入"
+                v-model="formData.sourceBizNo"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="入库类型" prop="bizType">
-              <el-select style="width: 100%" filterable placeholder="请选择" v-model="formData.bizType" clearable>
-                <el-option v-for="item in sceneState" :key="item.code" :value="item.code + ''"
-                  :label="item.label"></el-option>
+              <el-select
+                style="width: 100%"
+                filterable
+                placeholder="请选择"
+                v-model="formData.bizType"
+                clearable
+              >
+                <el-option
+                  v-for="item in sceneState"
+                  :key="item.code"
+                  :value="item.code + ''"
+                  :label="item.label"
+                ></el-option>
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="物品编码" prop="categoryCode">
-              <el-input size="small" class="w100" placeholder="请输入" v-model="formData.categoryCode"></el-input>
+              <el-input
+                size="small"
+                class="w100"
+                placeholder="请输入"
+                v-model="formData.categoryCode"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="物品名称" prop="categoryName">
-              <el-input size="small" class="w100" placeholder="请输入" v-model="formData.categoryName"></el-input>
+              <el-input
+                size="small"
+                class="w100"
+                placeholder="请输入"
+                v-model="formData.categoryName"
+              ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="6">
             <el-form-item label="状态" prop="status">
-              <el-select filterable size="small" class="w100" v-model="formData.status" placeholder="请选择" clearable>
-                <el-option v-for="item in auditStatus" :key="item.code" :value="item.code"
-                  :label="item.label"></el-option>
+              <el-select
+                filterable
+                size="small"
+                class="w100"
+                v-model="formData.status"
+                placeholder="请选择"
+                clearable
+              >
+                <el-option
+                  v-for="item in auditStatus"
+                  :key="item.code"
+                  :value="item.code"
+                  :label="item.label"
+                ></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -50,8 +94,19 @@
           </el-col> -->
           <el-col :span="6">
             <el-form-item label="所属工厂" prop="factoryId">
-              <el-select filterable placeholder="请选择" v-model="formData.factoryId" clearable class="w100">
-                <el-option v-for="item in factoryList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+              <el-select
+                filterable
+                placeholder="请选择"
+                v-model="formData.factoryId"
+                clearable
+                class="w100"
+              >
+                <el-option
+                  v-for="item in factoryList"
+                  :key="item.id"
+                  :label="item.name"
+                  :value="item.id"
+                ></el-option>
               </el-select>
             </el-form-item>
           </el-col>
@@ -68,32 +123,60 @@
               value-format="yyyy-MM-dd"
             ></el-date-picker> </el-form-item
         ></el-col> -->
-          <el-col style="
+          <el-col
+            style="
               display: flex;
               justify-content: flex-end;
               margin-bottom: 10px;
-            ">
+            "
+          >
             <div>
-              <el-button icon="el-icon-refresh-left" size="small" @click="reset">重置</el-button>
-              <el-button type="primary" icon="el-icon-search" size="small" @click="search">搜索</el-button>
+              <el-button icon="el-icon-refresh-left" size="small" @click="reset"
+                >重置</el-button
+              >
+              <el-button
+                type="primary"
+                icon="el-icon-search"
+                size="small"
+                @click="search"
+                >搜索</el-button
+              >
             </div>
           </el-col>
         </el-row>
       </el-form>
 
-      <ele-pro-table ref="table" :columns="columns" height="calc(100vh-300px)" :pageSize="20" :datasource="datasource"
-        @cell-click="cellClick">
+      <ele-pro-table
+        ref="table"
+        :columns="columns"
+        height="calc(100vh-300px)"
+        :pageSize="20"
+        :datasource="datasource"
+        @cell-click="cellClick"
+      >
         <template v-slot:selection="{ row }">
-          <el-radio class="radio" v-model="currentRow.id" :label="row.id"><i></i></el-radio>
+          <el-radio class="radio" v-model="currentRow.id" :label="row.id"
+            ><i></i
+          ></el-radio>
         </template>
         <!-- 表头工具栏 -->
         <template v-slot:toolbar>
-          <el-button icon="el-icon-plus" type="primary" @click="add">新建</el-button>
-          <el-button icon="el-icon-edit-outline" type="primary" @click="priceMaintenance">单价维护</el-button>
+          <el-button icon="el-icon-plus" type="primary" @click="add"
+            >新建</el-button
+          >
+          <el-button
+            icon="el-icon-edit-outline"
+            type="primary"
+            @click="priceMaintenance"
+            v-if="isPrice == 1"
+            >单价维护</el-button
+          >
           <!-- <el-button icon="el-icon-top" type="primary" @click="shelves"
             >上下架</el-button
           > -->
-          <el-button icon="el-icon-receiving" type="primary" @click="outbound">出库</el-button>
+          <el-button icon="el-icon-receiving" type="primary" @click="outbound"
+            >出库</el-button
+          >
           <!-- <el-button
             icon="el-icon-plus"
             v-if="clientEnvironmentId == 4"
@@ -117,8 +200,13 @@
 
         <!-- 操作列 -->
         <template v-slot:action="{ row }">
-          <el-link type="success" :underline="false" icon="el-icon-position"
-            v-if="row.verifyStatus == 0 || row.verifyStatus == 3" @click="submit(row)">
+          <el-link
+            type="success"
+            :underline="false"
+            icon="el-icon-position"
+            v-if="row.verifyStatus == 0 || row.verifyStatus == 3"
+            @click="submit(row)"
+          >
             提交
           </el-link>
           <el-link
@@ -134,16 +222,31 @@
             icon="el-icon-view" @click="quality(row)">
             质检
           </el-link> -->
-          <el-link v-if="row.verifyStatus == 2" type="primary" :underline="false" icon="el-icon-sort-up"
-            @click="details(row)">
+          <el-link
+            v-if="row.verifyStatus == 2"
+            type="primary"
+            :underline="false"
+            icon="el-icon-sort-up"
+            @click="details(row)"
+          >
             上架
           </el-link>
-          <el-link v-if="row.verifyStatus == 2" type="primary" :underline="false" icon="el-icon-sort-down"
-            @click="details(row)">
+          <el-link
+            v-if="row.verifyStatus == 2"
+            type="primary"
+            :underline="false"
+            icon="el-icon-sort-down"
+            @click="details(row)"
+          >
             下架
           </el-link>
-          <el-link type="primary" v-if="row.verifyStatus == 0 || row.verifyStatus == 3" :underline="false"
-            icon="el-icon-delete" @click="deleted(row)">
+          <el-link
+            type="primary"
+            v-if="row.verifyStatus == 0 || row.verifyStatus == 3"
+            :underline="false"
+            icon="el-icon-delete"
+            @click="deleted(row)"
+          >
             删除
           </el-link>
         </template>
@@ -160,443 +263,459 @@
 </template>
 
 <script>
-import storageApi from '@/api/warehouseManagement';
-import warehouseDefinition from '@/api/warehouseManagement/warehouseDefinition';
-/*  import priceMaintenanceDialog from './components/priceMaintenanceDialog.vue'; */
-import { allCategoryLevel } from '@/api/classifyManage';
+  import storageApi from '@/api/warehouseManagement';
+  import warehouseDefinition from '@/api/warehouseManagement/warehouseDefinition';
+  /*  import priceMaintenanceDialog from './components/priceMaintenanceDialog.vue'; */
+  import { allCategoryLevel } from '@/api/classifyManage';
+  import { parameterGetByCode } from '@/api/sys/index.js';
 
-('@/view/warehouseManagement/stockManagement/components/priceMaintenanceDialog.vue');
-import {
-  warehousingType,
-  sceneState,
-  auditStatus,
-  useDict
-} from '@/utils/dict/index';
-export default {
-  components: {},
-  data() {
-    return {
-      auditStatus,
-      warehousingType,
-      sceneState,
-      codeList: [],
-      factoryList: [],
-      tableData: [],
-      formData: {
-        deptIds: '',
-        categoryCode: '',
-        categoryName: '',
-        sourceBizNo: '',
-        startTime: '',
-        endTime: '',
-        status: '',
-        factoryId: '',
-        time: []
-        // type: 1
-      },
-      total: 0,
-      status: [
-        { label: '未审核', class: 'ele-text-info' },
-        { label: '审核中', class: 'ele-text-primary' },
-        { label: '审核通过', class: 'ele-text-success' },
-        { label: '驳回', class: 'ele-text-danger' }
-      ],
-      currentRow: {},
-      columns: [
-        {
-          slot: 'selection',
-          label: '选择',
-          width: 50,
-          align: 'center'
-        },
-        {
-          type: 'index',
-          label: '序号',
-          width: 50,
-          align: 'center'
-        },
-        {
-          prop: 'bizNo',
-          label: '单号',
-          align: 'center',
-          slot: 'bizNo',
-          showOverflowTooltip: true,
-          width: 150
-        },
-        {
-          prop: 'bizType',
-          slot: 'bizType',
-          label: '入库类型',
-          align: 'center',
-          showOverflowTooltip: true,
-          width: 100
-        },
-        {
-          prop: 'assetType',
-          slot: 'assetType',
-          label: '物品类型',
-          align: 'center',
-          showOverflowTooltip: true,
-          width: 120
-        },
-        {
-          prop: 'categoryNames',
-          label: '物品名称',
-          align: 'center',
-          showOverflowTooltip: true,
-          width: 150
-        },
-        {
-          prop: 'categoryCodes',
-          label: '物品编码',
-          align: 'center',
-          showOverflowTooltip: true,
-          width: 150
-        },
-        {
-          prop: 'sourceBizNo',
-          label: '来源单据',
-          align: 'center',
-          showOverflowTooltip: true
+  ('@/view/warehouseManagement/stockManagement/components/priceMaintenanceDialog.vue');
+  import {
+    warehousingType,
+    sceneState,
+    auditStatus,
+    useDict
+  } from '@/utils/dict/index';
+  export default {
+    components: {},
+    data() {
+      return {
+        auditStatus,
+        warehousingType,
+        sceneState,
+        codeList: [],
+        factoryList: [],
+        tableData: [],
+        formData: {
+          deptIds: '',
+          categoryCode: '',
+          categoryName: '',
+          sourceBizNo: '',
+          startTime: '',
+          endTime: '',
+          status: '',
+          factoryId: '',
+          time: []
+          // type: 1
         },
+        isPrice: 1,
+        total: 0,
+        status: [
+          { label: '未审核', class: 'ele-text-info' },
+          { label: '审核中', class: 'ele-text-primary' },
+          { label: '审核通过', class: 'ele-text-success' },
+          { label: '驳回', class: 'ele-text-danger' }
+        ],
+        currentRow: {},
+        columns: [
+          {
+            slot: 'selection',
+            label: '选择',
+            width: 50,
+            align: 'center'
+          },
+          {
+            type: 'index',
+            label: '序号',
+            width: 50,
+            align: 'center'
+          },
+          {
+            prop: 'bizNo',
+            label: '单号',
+            align: 'center',
+            slot: 'bizNo',
+            showOverflowTooltip: true,
+            width: 150
+          },
+          {
+            prop: 'bizType',
+            slot: 'bizType',
+            label: '入库类型',
+            align: 'center',
+            showOverflowTooltip: true,
+            width: 100
+          },
+          {
+            prop: 'assetType',
+            slot: 'assetType',
+            label: '物品类型',
+            align: 'center',
+            showOverflowTooltip: true,
+            width: 120
+          },
+          {
+            prop: 'categoryNames',
+            label: '物品名称',
+            align: 'center',
+            showOverflowTooltip: true,
+            width: 150
+          },
+          {
+            prop: 'categoryCodes',
+            label: '物品编码',
+            align: 'center',
+            showOverflowTooltip: true,
+            width: 150
+          },
+          {
+            prop: 'sourceBizNo',
+            label: '来源单据',
+            align: 'center',
+            showOverflowTooltip: true
+          },
 
-        {
-          prop: 'createUserName',
-          label: '入库人',
-          align: 'center',
-          showOverflowTooltip: true
-        },
-        {
-          width: 160,
-          prop: 'storageTime',
-          label: '入库时间',
-          align: 'center',
-          showOverflowTooltip: true
-        },
-        {
-          prop: 'verifyName',
-          label: '审核人',
-          align: 'center',
-          showOverflowTooltip: true
-        },
-        // {
-        //   prop: 'startTime',
-        //   label: '开始时间',
-        //   align: 'center',
-        //   showOverflowTooltip: true
-        // },
-        {
-          prop: 'outInStatus',
-          label: '入库状态',
-          align: 'center',
-          showOverflowTooltip: true,
-          width: 100,
-          formatter: (row, column, cellValue) => {
-            if (row.verifyStatus == 2) {
-              return row.outInStatus == 1 ? '预入库' : row.outInStatus == 2 ? '部分入库' : row.outInStatus == 3 ? '已入库' : '';
+          {
+            prop: 'createUserName',
+            label: '入库人',
+            align: 'center',
+            showOverflowTooltip: true
+          },
+          {
+            width: 160,
+            prop: 'storageTime',
+            label: '入库时间',
+            align: 'center',
+            showOverflowTooltip: true
+          },
+          {
+            prop: 'verifyName',
+            label: '审核人',
+            align: 'center',
+            showOverflowTooltip: true
+          },
+          // {
+          //   prop: 'startTime',
+          //   label: '开始时间',
+          //   align: 'center',
+          //   showOverflowTooltip: true
+          // },
+          {
+            prop: 'outInStatus',
+            label: '入库状态',
+            align: 'center',
+            showOverflowTooltip: true,
+            width: 100,
+            formatter: (row, column, cellValue) => {
+              if (row.verifyStatus == 2) {
+                return row.outInStatus == 1
+                  ? '预入库'
+                  : row.outInStatus == 2
+                  ? '部分入库'
+                  : row.outInStatus == 3
+                  ? '已入库'
+                  : '';
+              }
             }
+          },
+          {
+            prop: 'verifyStatus',
+            label: '状态',
+            align: 'center',
+            slot: 'verifyStatus',
+            showOverflowTooltip: true,
+            width: 100
+          },
+          {
+            columnKey: 'action',
+            label: '操作',
+            width: 250,
+            align: 'center',
+            slot: 'action',
+            showOverflowTooltip: true
           }
-        },
-        {
-          prop: 'verifyStatus',
-          label: '状态',
-          align: 'center',
-          slot: 'verifyStatus',
-          showOverflowTooltip: true,
-          width: 100
-        },
-        {
-          columnKey: 'action',
-          label: '操作',
-          width: 250,
-          align: 'center',
-          slot: 'action',
-          showOverflowTooltip: true
-        }
-      ]
-    };
-  },
-  computed: {
-    clientEnvironmentId() {
-      return this.$store.state.user.info.clientEnvironmentId;
-    }
-  },
-  mounted() {
-    this.getTypeList();
-    this.getFactoryList();
-  },
-  methods: {
-    //获取工厂列表
-    async getFactoryList() {
-      const res = await warehouseDefinition.getFactoryarea({
-        pageNum: 1,
-        size: 9999,
-        type: 1
-      });
-      this.factoryList = res.list;
+        ]
+      };
     },
-    // 单击获取id
-    cellClick(row) {
-      this.currentRow = row;
+    computed: {
+      clientEnvironmentId() {
+        return this.$store.state.user.info.clientEnvironmentId;
+      }
     },
-    shelves() {
-      console.log('上架');
+    created() {
+      //仓库出入库是否显示金额(0:不显示 1:显示)
+      parameterGetByCode({
+        code: 'wms_price'
+      }).then((res) => {
+        this.isPrice = res.value;
+      });
     },
-    unShelves() {
-      console.log('下架');
+    mounted() {
+      this.getTypeList();
+      this.getFactoryList();
     },
-    priceMaintenance() {
-      if (Object.keys(this.currentRow).length == 0) {
-        return this.$message.error('请选择单据');
-      } else {
-        if (this.currentRow.verifyStatus == 2) {
-          this.$router.push({
-            path: '/warehouseManagement/stockManagement/priceMaintenance',
-            query: {
-              ids: this.currentRow.id
-            }
-          });
-          /* this.$refs.priceMaintenanceDialogRef.open(this.currentRow.id); */
+    methods: {
+      //获取工厂列表
+      async getFactoryList() {
+        const res = await warehouseDefinition.getFactoryarea({
+          pageNum: 1,
+          size: 9999,
+          type: 1
+        });
+        this.factoryList = res.list;
+      },
+      // 单击获取id
+      cellClick(row) {
+        this.currentRow = row;
+      },
+      shelves() {
+        console.log('上架');
+      },
+      unShelves() {
+        console.log('下架');
+      },
+      priceMaintenance() {
+        if (Object.keys(this.currentRow).length == 0) {
+          return this.$message.error('请选择单据');
         } else {
-          this.$message.error('该单据未审核通过');
+          if (this.currentRow.verifyStatus == 2) {
+            this.$router.push({
+              path: '/warehouseManagement/stockManagement/priceMaintenance',
+              query: {
+                ids: this.currentRow.id
+              }
+            });
+            /* this.$refs.priceMaintenanceDialogRef.open(this.currentRow.id); */
+          } else {
+            this.$message.error('该单据未审核通过');
+          }
         }
-      }
-    },
-    async outbound() {
-      if (Object.keys(this.currentRow).length == 0) {
-        return this.$message.error('请选择单据');
-      } else {
-        if (this.currentRow.verifyStatus == 2) {
-          const res = await storageApi.getInboundDetailsById(
-            this.currentRow.id
-          );
-          const arr = [];
-          for (const key in res.outInDetailList) {
-            for (const k in res.outInDetailList[key]
-              .outInDetailRecordRequestList) {
-              arr.push({
-                ...res.outInDetailList[key].outInDetailRecordRequestList[k]
-              });
+      },
+      async outbound() {
+        if (Object.keys(this.currentRow).length == 0) {
+          return this.$message.error('请选择单据');
+        } else {
+          if (this.currentRow.verifyStatus == 2) {
+            const res = await storageApi.getInboundDetailsById(
+              this.currentRow.id
+            );
+            const arr = [];
+            for (const key in res.outInDetailList) {
+              for (const k in res.outInDetailList[key]
+                .outInDetailRecordRequestList) {
+                arr.push({
+                  ...res.outInDetailList[key].outInDetailRecordRequestList[k]
+                });
+              }
             }
+            let ids = arr.map((item) => item.id).join(',');
+            this.$router.push({
+              path: '/warehouseManagement/outgoingManagement/add',
+              query: {
+                ids,
+                bizType: this.currentRow.bizType,
+                assetType: this.currentRow.extInfo.assetType
+              }
+            });
+          } else {
+            this.$message.error('该单据未审核通过');
           }
-          let ids = arr.map((item) => item.id).join(',');
-          this.$router.push({
-            path: '/warehouseManagement/outgoingManagement/add',
-            query: {
-              ids,
-              bizType: this.currentRow.bizType,
-              assetType: this.currentRow.extInfo.assetType
-            }
-          });
-        } else {
-          this.$message.error('该单据未审核通过');
         }
-      }
-    },
-    handleAssetType(r) {
-      let arr = r.split(',');
-      const filteredData = this.codeList.filter((item) =>
-        arr.includes(item.dictCode)
-      );
-      return filteredData.map((item) => item.dictValue).join(',');
-    },
-    async getTypeList() {
-      const { data } = await allCategoryLevel();
-      this.codeList = data.map((item) => {
-        return { dictCode: item.id, dictValue: item.name };
-      });
-    },
-    submit(row) {
-      this.$confirm('此操作将提交流程, 是否继续?', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-      })
-        .then(async () => {
-          const data = await storageApi.submitTwo({ outInId: row.id });
-          if (data) {
-            this.$message.success('流程发起成功!');
-            this.getList();
-          }
+      },
+      handleAssetType(r) {
+        let arr = r.split(',');
+        const filteredData = this.codeList.filter((item) =>
+          arr.includes(item.dictCode)
+        );
+        return filteredData.map((item) => item.dictValue).join(',');
+      },
+      async getTypeList() {
+        const { data } = await allCategoryLevel();
+        this.codeList = data.map((item) => {
+          return { dictCode: item.id, dictValue: item.name };
+        });
+      },
+      submit(row) {
+        this.$confirm('此操作将提交流程, 是否继续?', '提示', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning'
         })
-        .catch(() => { });
-    },
-    handleBizType(code) {
-      for (const key in this.sceneState) {
-        if (this.sceneState[key].code == code) {
-          return this.sceneState[key].label;
-        }
-      }
-    },
-    async datasource({ page, limit, where }) {
-      const params = Object.assign({}, this.formData);
-      if (params.time?.length) {
-        params.startTime = params.time[0];
-        params.endTime = params.time[1];
-      }
-      delete params.time;
-      // params.bizStatus = 1;
-      const res = await storageApi.getInboundList({
-        pageNum: page,
-        size: limit,
-        type: 1,
-        ...params
-      });
-      return res;
-    },
-    getAuditStatus: useDict(auditStatus),
-    getList() {
-      this.$refs.table.reload();
-    },
-    add(row) {
-      const query = {};
-      if (row?.id) {
-        query.id = row.id;
-      }
-      this.$router.push({
-        path: '/warehouseManagement/stockManagement/add'
-        // query
-      });
-    },
-    quality(row) {
-      this.$router.push({
-        path: '/warehouseManagement/stockManagement/quality',
-        query: {
-          id: row.id
+          .then(async () => {
+            const data = await storageApi.submitTwo({ outInId: row.id });
+            if (data) {
+              this.$message.success('流程发起成功!');
+              this.getList();
+            }
+          })
+          .catch(() => {});
+      },
+      handleBizType(code) {
+        for (const key in this.sceneState) {
+          if (this.sceneState[key].code == code) {
+            return this.sceneState[key].label;
+          }
         }
-      });
-    },
-    exportExcel() {
-      this.$router.push({
-        path: '/warehouseManagement/stockManagement/add_export'
-        // query
-      });
-    },
-    edit(row) {
-      this.$router.push({
-        path: '/warehouseManagement/stockManagement/add',
-        query: {
-          detailId: row.id
+      },
+      async datasource({ page, limit, where }) {
+        const params = Object.assign({}, this.formData);
+        if (params.time?.length) {
+          params.startTime = params.time[0];
+          params.endTime = params.time[1];
         }
-      });
-    },
-    details(row) {
-      this.$router.push({
-        path: '/warehouseManagement/stockManagement/details',
-        query: {
-          id: row.id,
-          verifyStatus: row.verifyStatus
+        delete params.time;
+        // params.bizStatus = 1;
+        const res = await storageApi.getInboundList({
+          pageNum: page,
+          size: limit,
+          type: 1,
+          ...params
+        });
+        return res;
+      },
+      getAuditStatus: useDict(auditStatus),
+      getList() {
+        this.$refs.table.reload();
+      },
+      add(row) {
+        const query = {};
+        if (row?.id) {
+          query.id = row.id;
         }
-      });
-    },
-    async deleted(row) {
-      this.$confirm('是否确定删除?', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-      })
-        .then(async () => {
-          const data = await storageApi.delete([row.id]);
-          if (data.code == '0') {
-            this.$message.success('删除成功!');
-            this.getList();
+        this.$router.push({
+          path: '/warehouseManagement/stockManagement/add'
+          // query
+        });
+      },
+      quality(row) {
+        this.$router.push({
+          path: '/warehouseManagement/stockManagement/quality',
+          query: {
+            id: row.id
           }
+        });
+      },
+      exportExcel() {
+        this.$router.push({
+          path: '/warehouseManagement/stockManagement/add_export'
+          // query
+        });
+      },
+      edit(row) {
+        this.$router.push({
+          path: '/warehouseManagement/stockManagement/add',
+          query: {
+            detailId: row.id
+          }
+        });
+      },
+      details(row) {
+        this.$router.push({
+          path: '/warehouseManagement/stockManagement/details',
+          query: {
+            id: row.id,
+            verifyStatus: row.verifyStatus
+          }
+        });
+      },
+      async deleted(row) {
+        this.$confirm('是否确定删除?', '提示', {
+          confirmButtonText: '确定',
+          cancelButtonText: '取消',
+          type: 'warning'
         })
-        .catch(() => { });
-    },
-    handleCurrentChange() {
-      this.getList();
-    },
-    handleSizeChange() {
-      this.formData.page = 1;
-      this.getList();
-    },
-    search() {
-      this.formData.page = 1;
-      this.getList();
-    },
-    reset() {
-      this.$refs.formName.resetFields();
-      this.search();
+          .then(async () => {
+            const data = await storageApi.delete([row.id]);
+            if (data.code == '0') {
+              this.$message.success('删除成功!');
+              this.getList();
+            }
+          })
+          .catch(() => {});
+      },
+      handleCurrentChange() {
+        this.getList();
+      },
+      handleSizeChange() {
+        this.formData.page = 1;
+        this.getList();
+      },
+      search() {
+        this.formData.page = 1;
+        this.getList();
+      },
+      reset() {
+        this.$refs.formName.resetFields();
+        this.search();
+      }
     }
-  }
-};
+  };
 </script>
 
 <style lang="scss" scoped>
-#stockManagement_index {
-  height: calc(100vh - 96px);
-  width: 100%;
-  padding: 10px;
-  box-sizing: border-box;
-
-  // element-ui样式穿透
-  :deep(.el-card) {
-    height: 100%;
+  #stockManagement_index {
+    height: calc(100vh - 96px);
+    width: 100%;
+    padding: 10px;
+    box-sizing: border-box;
 
-    .el-card__body {
+    // element-ui样式穿透
+    :deep(.el-card) {
       height: 100%;
-      box-sizing: border-box;
-      display: flex;
-      flex-direction: column;
 
-      .ele-pro-table {
-        flex: 1;
+      .el-card__body {
+        height: 100%;
+        box-sizing: border-box;
         display: flex;
         flex-direction: column;
 
-        .el-table {
+        .ele-pro-table {
           flex: 1;
-          // display: flex;
-          // flex-direction: column;
-          // .el-table__body-wrapper {
-          //   flex: 1;
-          // }
+          display: flex;
+          flex-direction: column;
+
+          .el-table {
+            flex: 1;
+            // display: flex;
+            // flex-direction: column;
+            // .el-table__body-wrapper {
+            //   flex: 1;
+            // }
+          }
         }
       }
-    }
 
-    .el-form-item {
-      margin-bottom: 5px !important;
+      .el-form-item {
+        margin-bottom: 5px !important;
+      }
     }
-  }
 
-  .w100 {
-    width: 100% !important;
-  }
+    .w100 {
+      width: 100% !important;
+    }
 
-  .p20 {
-    padding: 20px;
-  }
+    .p20 {
+      padding: 20px;
+    }
 
-  .mt20 {
-    margin-top: 20px;
-  }
+    .mt20 {
+      margin-top: 20px;
+    }
 
-  .mt10 {
-    margin-top: 10px;
-  }
+    .mt10 {
+      margin-top: 10px;
+    }
 
-  .el-form {
-    overflow: hidden;
-  }
+    .el-form {
+      overflow: hidden;
+    }
 
-  .float-right {
-    float: right;
-    text-align: right;
-    margin-right: 20px;
-  }
+    .float-right {
+      float: right;
+      text-align: right;
+      margin-right: 20px;
+    }
 
-  .right {
-    text-align: right;
-  }
+    .right {
+      text-align: right;
+    }
 
-  .col {
-    color: #aaa;
-  }
+    .col {
+      color: #aaa;
+    }
 
-  .pr10 {
-    padding-right: 10px;
+    .pr10 {
+      padding-right: 10px;
+    }
   }
-}
 </style>