瀏覽代碼

Merge branch 'purchaseDev' into 'dev'

Purchase dev

See merge request new-business/drp-web!292
黄梓星 1 年之前
父節點
當前提交
3e9295f347

+ 247 - 0
src/views/purchase/DemandSummary/colTol.vue

@@ -0,0 +1,247 @@
+<template>
+  <div class="colTol">
+    <el-drawer
+      title="隐藏列"
+      :visible.sync="open"
+      direction="rtl"
+      @close='upIsShow'
+      size="20%">
+      <transition name="fade">
+        <div class="columnOption">
+          <div class="content">
+            <el-row v-for="(item, index) in arrs" :key="index" style="font-size: 14px;font-weight: bold;margin-bottom: 10px;padding: 0 20px;">
+              <el-col :span="18">
+                <span>{{item.label}}</span>
+              </el-col>
+              <el-col :span="6">
+                <el-switch size="mini" v-model="prop[item.prop]"></el-switch>
+              </el-col>
+            </el-row>
+              <!-- <el-switch v-model="prop.materialClassifyOneName">一级品类</el-switch>
+              <el-switch v-model="prop.materialCode">物料编码</el-switch>
+              <el-switch v-model="prop.materialName">品名</el-switch>
+              <el-switch v-model="prop.specification">规格</el-switch>
+              <el-switch v-model="prop.unit">单位</el-switch>
+              <el-switch v-model="prop.manufacturer">生产厂家/代理人</el-switch>
+              <el-switch v-model="prop.demandNum">需求单位数</el-switch>
+              <el-switch v-model="prop.evensalesforyear">近1月月均需求</el-switch>
+              <el-switch v-model="prop.evensalesforthrmonth">近3月月均需求</el-switch>
+              <el-switch v-model="prop.netDemandNum">总最终净需求量</el-switch>
+              <el-switch v-model="prop.totalMonthlySales">总月销量</el-switch>
+              <el-switch v-model="prop.demandCycle">需求可用周期</el-switch>
+              <el-switch v-model="prop.dullQut">呆滞量</el-switch>
+              <el-switch v-model="prop.buyPeriod">采购周期</el-switch>
+              <el-switch v-model="prop.centralPublicStock">中心公共库存</el-switch>
+              <el-switch v-model="prop.centralWarehouse">中心仓专属货位</el-switch>
+              <el-switch v-model="prop.regionPublicStock">区域分仓公共库存</el-switch>
+              <el-switch v-model="prop.eachWarehouseStock">各项目仓库存</el-switch>
+              <el-switch v-model="prop.commerceWarehouse">电商仓库</el-switch>
+              <el-switch v-model="prop.buyTransit">采购在途</el-switch>
+              <el-switch v-model="prop.lendTransit">借出在途</el-switch>
+              <el-switch v-model="prop.transferTransit">调拨在途</el-switch>
+              <el-switch v-model="prop.stockTotal">库存总计</el-switch>
+              <el-switch v-model="prop.minPackage">最小包装量</el-switch>
+              <el-switch v-model="prop.minOrder">最小订货量</el-switch>
+              <el-switch v-model="prop.minBatch">最小批量</el-switch>
+              <el-switch v-model="prop.artificialAdjust">人工调整数</el-switch>
+              <el-switch v-model="prop.modifyReason">修改原因</el-switch>
+              <el-switch v-model="prop.suggestionPurchase">建议采购量</el-switch>
+              <el-switch v-model="prop.finalBuyQty">最终采购量</el-switch>
+              <el-switch v-model="prop.materialClassifyTwoName">二级品类</el-switch>
+              <el-switch v-model="prop.materialClassifyThreeName">三级品类</el-switch>
+              <el-switch v-model="prop.materialClassifyFourName">四级品类</el-switch>
+              <el-switch v-model="prop.buyerName">采购员</el-switch>
+              <el-switch v-model="prop.purchaseOrgName">默认采购组织</el-switch>
+              <el-switch v-model="prop.validityPeriod">有效期</el-switch>
+              <el-switch v-model="prop.validityPeriodUnit">有效期单位</el-switch>
+              <el-switch v-model="prop.businessType">业务类型</el-switch>
+              <el-switch v-model="prop.safetyStock">安全库存量</el-switch>
+              <el-switch v-model="prop.billSource">单据来源</el-switch>
+              <el-switch v-model="prop.registrant">注册人</el-switch>
+              <el-switch v-model="prop.buyDiscrepancy">总需与终采差异</el-switch>
+              <el-switch v-model="prop.forecastClassification">集团预测分类</el-switch>
+              <el-switch v-model="prop.centerBinPossession">中心仓占有量</el-switch>
+              <el-switch v-model="prop.centralWarehouseAvailable">中心仓可用量</el-switch>
+              <el-switch v-model="prop.puManagerAuditor">采购经理审核人</el-switch> -->
+            </div>
+            <!-- <div class="footer">
+              <el-button size="mini" type="primary" plain @click="saveColumn"
+                >确认</el-button
+              >
+            </div> -->
+        </div>
+      </transition>
+    </el-drawer>
+  </div>
+</template>
+
+<script>
+export default {
+  props: {
+    isVisible: {
+      type: Boolean,
+      default: false
+    },
+    showColumn: {
+      type: Object,
+      default: {}
+    },
+    arrs: {
+      type: Array,
+      default: []
+    }
+  },
+  data() {
+    return {
+      open: false,
+      // 列的配置化对象,存储配置信息
+      prop: {},
+      column: {
+        status: true,
+        materialClassifyOneName: true,
+        materialCode: true,
+        materialName: true,
+        specification: true,
+        unit: true,
+        manufacturer: true,
+        demandNum: true,
+        evensalesforyear: true,
+        evensalesforthrmonth: true,
+        netDemandNum: true,
+        totalMonthlySales: true,
+        demandCycle: true,
+        dullQut: true,
+        buyPeriod: true,
+        centralPublicStock: true,
+        centralWarehouse: true,
+        regionPublicStock: true,
+        eachWarehouseStock: true,
+        commerceWarehouse: true,
+        buyTransit: true,
+        lendTransit: true,
+        transferTransit: true,
+        stockTotal: true,
+        minPackage: true,
+        minOrder: true,
+        minBatch: true,
+        artificialAdjust: true,
+        modifyReason: true,
+        suggestionPurchase: true,
+        finalBuyQty: true,
+        materialClassifyTwoName: true,
+        materialClassifyThreeName: true,
+        materialClassifyFourName: true,
+        buyerName: true,
+        purchaseOrgName: true,
+        validityPeriod: true,
+        validityPeriodUnit: true,
+        businessType: true,
+        safetyStock: true,
+        billSource: true,
+        registrant: true,
+        buyDiscrepancy: true,
+        forecastClassification: true,
+        centerBinPossession: true,
+        centralWarehouseAvailable: true,
+        puManagerAuditor: true,
+      },
+    }
+  },
+  mounted() {
+    // 发请求得到checkListInitData的列的名字
+    if(localStorage.getItem("columnSet")){
+      this.prop = JSON.parse(localStorage.getItem("columnSet"))
+    }else{
+      this.prop = {
+        status: true,
+        materialClassifyOneName: true,
+        materialCode: true,
+        materialName: true,
+        specification: true,
+        unit: true,
+        manufacturer: true,
+        demandNum: true,
+        evensalesforyear: true,
+        evensalesforthrmonth: true,
+        netDemandNum: true,
+        totalMonthlySales: true,
+        demandCycle: true,
+        dullQut: true,
+        buyPeriod: true,
+        centralPublicStock: true,
+        centralWarehouse: true,
+        regionPublicStock: true,
+        eachWarehouseStock: true,
+        commerceWarehouse: true,
+        buyTransit: true,
+        lendTransit: true,
+        transferTransit: true,
+        stockTotal: true,
+        minPackage: true,
+        minOrder: true,
+        minBatch: true,
+        artificialAdjust: true,
+        modifyReason: true,
+        suggestionPurchase: true,
+        finalBuyQty: true,
+        materialClassifyTwoName: true,
+        materialClassifyThreeName: true,
+        materialClassifyFourName: true,
+        buyerName: true,
+        purchaseOrgName: true,
+        validityPeriod: true,
+        validityPeriodUnit: true,
+        businessType: true,
+        safetyStock: true,
+        billSource: true,
+        registrant: true,
+        buyDiscrepancy: true,
+        forecastClassification: true,
+        centerBinPossession: true,
+        centralWarehouseAvailable: true,
+        puManagerAuditor: true,
+      };
+    }
+  },
+  methods: {
+    upIsShow() {
+      this.$emit('update:isVisible',false)//修改isDrawer的值
+    },
+    //设置列的 显示/隐藏
+	  changeShow(item) {
+      item.show = !item.show
+    },
+    // showColumnOption() {
+    //   this.isShowColumn = true;
+    // },
+    saveColumn() {
+      localStorage.setItem("columnSet",JSON.stringify(this.prop))
+      // this.isShowColumn = false;
+      this.upIsShow()
+    },
+  },
+  watch: {
+    isVisible: {
+      handler(newValue) {
+        this.open = newValue
+      }
+    },
+    // 监听复选框配置列所有的变化
+    prop: {
+      handler: function (newnew, oldold) {
+        console.log('新值',newnew);
+        console.log('获取到表头没有?', this.arrs)
+        this.column = newnew;
+        this.$emit('update:showColumn', this.column)
+        // 这里需要让表格重新绘制一下,否则会产生固定列错位的情况
+        this.$nextTick(() => {
+          // this.$refs.table.doLayout();
+          this.$emit('reDraw')
+        });
+      },
+      deep: true,
+      immediate: true
+    },
+  }
+}
+</script>

+ 80 - 53
src/views/purchase/DemandSummary/index.vue

@@ -233,83 +233,84 @@
           max-height="355"
           max-height="355"
           style="font-size: 12px;"
           style="font-size: 12px;"
           @selection-change="handleSelectionChange"
           @selection-change="handleSelectionChange"
+          ref="table"
           :key="isUpdate"
           :key="isUpdate"
         >
         >
           <el-table-column type="selection" width="60" fixed="left"/>
           <el-table-column type="selection" width="60" fixed="left"/>
-          <el-table-column show-overflow-tooltip label="序号" type="index" align="center" width="50px" fixed="left"/>
-          <!-- <el-table-column show-overflow-tooltip label="行号" align="center" prop="rowNo"/> -->
-          <el-table-column show-overflow-tooltip label="行状态" align="center" prop="status" width="100px" :formatter="hangStatus"/>
-          <el-table-column show-overflow-tooltip label="一级品类" align="center" prop="materialClassifyOneName" width="100px"/>
-          <el-table-column show-overflow-tooltip label="物料编码" align="center" prop="materialCode" width="150px"/>
-          <el-table-column show-overflow-tooltip label="品名" align="center" prop="materialName" width="150px"/>
-          <el-table-column show-overflow-tooltip label="规格" align="center" prop="specification" width="150px"/>
-          <el-table-column show-overflow-tooltip label="单位" align="center" prop="unit"/>
-          <el-table-column show-overflow-tooltip label="生产厂家/代理人" align="center" prop="manufacturer" width="200px"/>
-          <el-table-column show-overflow-tooltip label="需求单位数" align="center" prop="demandNum" width="100px"/>
-          <el-table-column show-overflow-tooltip label="近1月月均需求" align="center" prop="evensalesforyear" width="120px"/>
-          <el-table-column show-overflow-tooltip label="近3月月均需求" align="center" prop="evensalesforthrmonth" width="120px"/>
-          <el-table-column show-overflow-tooltip label="总最终净需求量" align="center" prop="netDemandNum" width="120px"/>
-          <el-table-column show-overflow-tooltip label="总月销量" align="center" prop="totalMonthlySales"/>
-          <el-table-column show-overflow-tooltip label="需求可用周期" align="center" prop="demandCycle" width="120px"/>
-          <el-table-column show-overflow-tooltip label="呆滞量" align="center" prop="dullQut"/>
-          <el-table-column show-overflow-tooltip label="采购周期" align="center" prop="buyPeriod"/>
-          <el-table-column show-overflow-tooltip label="中心公共库存" align="center" prop="centralPublicStock" width="120px"/>
-          <el-table-column show-overflow-tooltip label="中心仓专属货位" align="center" prop="centralWarehouse" width="120px"/>
-          <el-table-column show-overflow-tooltip label="区域分仓公共库存" align="center" prop="regionPublicStock" width="150px"/>
-          <el-table-column show-overflow-tooltip label="各项目仓库存" align="center" prop="eachWarehouseStock" width="120px"/>
-          <el-table-column show-overflow-tooltip label="电商仓库" align="center" prop="commerceWarehouse"/>
-          <el-table-column show-overflow-tooltip label="采购在途" align="center" prop="buyTransit"/>
-          <el-table-column show-overflow-tooltip label="借出在途" align="center" prop="lendTransit"/>
-          <el-table-column show-overflow-tooltip label="调拨在途" align="center" prop="transferTransit"/>
-          <el-table-column show-overflow-tooltip label="库存总计" align="center" prop="stockTotal"/>
-          <el-table-column show-overflow-tooltip label="最小包装量" align="center" prop="minPackage" width="100px"/>
-          <el-table-column show-overflow-tooltip label="最小订货量" align="center" prop="minOrder" width="100px"/>
-          <el-table-column show-overflow-tooltip label="最小批量" align="center" prop="minBatch"/>
-          <el-table-column show-overflow-tooltip label="人工调整数" align="center" prop="artificialAdjust" width="100px"/>
-          <el-table-column show-overflow-tooltip label="修改原因" align="center" prop="modifyReason" width="150px">
+          <el-table-column show-overflow-tooltip  label="序号" type="index" align="center" width="50px" fixed="left"/>
+          <!-- <el-table-column show-overflow-tooltip v-if="showColumn.status" label="行号" align="center" prop="rowNo"/> -->
+          <el-table-column show-overflow-tooltip v-if="showColumn.status" label="行状态" align="center" prop="status" width="100px" :formatter="hangStatus"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.materialClassifyOneName" label="一级品类" align="center" prop="materialClassifyOneName" width="100px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.materialCode" label="物料编码" align="center" prop="materialCode" width="150px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.materialName" label="品名" align="center" prop="materialName" width="150px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.specification" label="规格" align="center" prop="specification" width="150px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.unit" label="单位" align="center" prop="unit"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.manufacturer" label="生产厂家/代理人" align="center" prop="manufacturer" width="200px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.demandNum" label="需求单位数" align="center" prop="demandNum" width="100px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.evensalesforyear" label="近1月月均需求" align="center" prop="evensalesforyear" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.evensalesforthrmonth" label="近3月月均需求" align="center" prop="evensalesforthrmonth" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.netDemandNum" label="总最终净需求量" align="center" prop="netDemandNum" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.totalMonthlySales" label="总月销量" align="center" prop="totalMonthlySales"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.demandCycle" label="需求可用周期" align="center" prop="demandCycle" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.dullQut" label="呆滞量" align="center" prop="dullQut"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.buyPeriod" label="采购周期" align="center" prop="buyPeriod"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.centralPublicStock" label="中心公共库存" align="center" prop="centralPublicStock" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.centralWarehouse" label="中心仓专属货位" align="center" prop="centralWarehouse" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.regionPublicStock" label="区域分仓公共库存" align="center" prop="regionPublicStock" width="150px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.eachWarehouseStock" label="各项目仓库存" align="center" prop="eachWarehouseStock" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.commerceWarehouse" label="电商仓库" align="center" prop="commerceWarehouse"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.buyTransit" label="采购在途" align="center" prop="buyTransit"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.lendTransit" label="借出在途" align="center" prop="lendTransit"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.transferTransit" label="调拨在途" align="center" prop="transferTransit"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.stockTotal" label="库存总计" align="center" prop="stockTotal"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.minPackage" label="最小包装量" align="center" prop="minPackage" width="100px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.minOrder" label="最小订货量" align="center" prop="minOrder" width="100px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.minBatch" label="最小批量" align="center" prop="minBatch"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.artificialAdjust" label="人工调整数" align="center" prop="artificialAdjust" width="100px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.modifyReason" label="修改原因" align="center" prop="modifyReason" width="150px">
             <template slot-scope="scope">
             <template slot-scope="scope">
-                <el-input :disabled="scope.row.status !== '1'|| lineDisable || scope.row.artificialAdjust == '0'" v-model="scope.row.modifyReason"/>
+                <el-input size="mini" :disabled="scope.row.status !== '1'|| lineDisable || scope.row.artificialAdjust == '0'" v-model="scope.row.modifyReason"/>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
-          <el-table-column show-overflow-tooltip label="建议采购量" align="center" prop="suggestionPurchase" width="100px"/>
-          <!-- <el-table-column show-overflow-tooltip label="建议净采购量" align="center" prop="suggestBuyQty" width="100px"/> -->
-          <el-table-column show-overflow-tooltip label="最终采购量" align="center" prop="finalBuyQty" width="100">
+          <el-table-column show-overflow-tooltip v-if="showColumn.suggestionPurchase" label="建议采购量" align="center" prop="suggestionPurchase" width="100px"/>
+          <!-- <el-table-column show-overflow-tooltip v-if="showColumn.status" label="建议净采购量" align="center" prop="suggestBuyQty" width="100px"/> -->
+          <el-table-column show-overflow-tooltip v-if="showColumn.finalBuyQty" label="最终采购量" align="center" prop="finalBuyQty" width="100">
             <template slot-scope="scope">
             <template slot-scope="scope">
-                <el-input :disabled="scope.row.status !== '1' || lineDisable" v-model="scope.row.finalBuyQty"/>
+                <el-input size="mini" :disabled="scope.row.status !== '1' || lineDisable" v-model="scope.row.finalBuyQty"/>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
-          <el-table-column show-overflow-tooltip label="二级品类" align="center" prop="materialClassifyTwoName" width="120px"/>
-          <el-table-column show-overflow-tooltip label="三级品类" align="center" prop="materialClassifyThreeName" width="120px"/>
-          <el-table-column show-overflow-tooltip label="四级品类" align="center" prop="materialClassifyFourName" width="120px"/>
-          <el-table-column show-overflow-tooltip label="采购员" align="center" prop="buyerName" width="150px">
+          <el-table-column show-overflow-tooltip v-if="showColumn.materialClassifyTwoName" label="二级品类" align="center" prop="materialClassifyTwoName" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.materialClassifyThreeName" label="三级品类" align="center" prop="materialClassifyThreeName" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.materialClassifyFourName" label="四级品类" align="center" prop="materialClassifyFourName" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.buyerName" label="采购员" align="center" prop="buyerName" width="150px">
             <template slot-scope="scope">
             <template slot-scope="scope">
                 <el-input readonly :disabled="scope.row.status !== '1' || lineDisable" size="mini" v-model="scope.row.buyerName">
                 <el-input readonly :disabled="scope.row.status !== '1' || lineDisable" size="mini" v-model="scope.row.buyerName">
                   <el-button size="mini" :disabled="scope.row.status !== '1' || lineDisable" slot="append" icon="el-icon-more" @click="chooseSon(scope.$index, 'CONTACTS_PARAM', true, '明细采购员')"></el-button>
                   <el-button size="mini" :disabled="scope.row.status !== '1' || lineDisable" slot="append" icon="el-icon-more" @click="chooseSon(scope.$index, 'CONTACTS_PARAM', true, '明细采购员')"></el-button>
                 </el-input>
                 </el-input>
             </template>
             </template>
           </el-table-column>
           </el-table-column>
-          <el-table-column show-overflow-tooltip label="默认采购组织" align="center" prop="purchaseOrgName" width="230px">
+          <el-table-column show-overflow-tooltip v-if="showColumn.purchaseOrgName" label="默认采购组织" align="center" prop="purchaseOrgName" width="230px">
             <!-- <template slot-scope="scope">
             <!-- <template slot-scope="scope">
                 <el-input readonly :disabled="scope.row.status !== '1' || lineDisable" size="mini" v-model="scope.row.purchaseOrgName">
                 <el-input readonly :disabled="scope.row.status !== '1' || lineDisable" size="mini" v-model="scope.row.purchaseOrgName">
                   <el-button size="mini" :disabled="scope.row.status !== '1' || lineDisable" slot="append" icon="el-icon-more" @click="chooseSon(scope.$index, 'ORG_PARAM', true, '明细默认采购组织')"></el-button>
                   <el-button size="mini" :disabled="scope.row.status !== '1' || lineDisable" slot="append" icon="el-icon-more" @click="chooseSon(scope.$index, 'ORG_PARAM', true, '明细默认采购组织')"></el-button>
                 </el-input>
                 </el-input>
             </template> -->
             </template> -->
           </el-table-column>
           </el-table-column>
-          <el-table-column show-overflow-tooltip label="有效期" align="center" prop="validityPeriod"/>
-          <el-table-column show-overflow-tooltip label="有效期单位" align="center" prop="validityPeriodUnit" width="100px"/>
-          <el-table-column show-overflow-tooltip label="业务类型" align="center" prop="businessType" :formatter="formatterBusinessType"/>
-          <el-table-column show-overflow-tooltip label="安全库存量" align="center" prop="safetyStock" width="100px"/>
-          <el-table-column show-overflow-tooltip label="单据来源" align="center" prop="billSource" :formatter="formatterSource"/>
-          <el-table-column show-overflow-tooltip label="注册人" align="center" prop="registrant" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.validityPeriod" label="有效期" align="center" prop="validityPeriod"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.validityPeriodUnit" label="有效期单位" align="center" prop="validityPeriodUnit" width="100px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.businessType" label="业务类型" align="center" prop="businessType" :formatter="formatterBusinessType"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.safetyStock" label="安全库存量" align="center" prop="safetyStock" width="100px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.billSource" label="单据来源" align="center" prop="billSource" :formatter="formatterSource"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.registrant" label="注册人" align="center" prop="registrant" width="120px"/>
           <!-- <el-table-column label="可用量" align="center" prop="qty"/> -->
           <!-- <el-table-column label="可用量" align="center" prop="qty"/> -->
-          <el-table-column show-overflow-tooltip label="总需与终采差异" align="center" prop="buyDiscrepancy" width="120px"/>
-          <el-table-column show-overflow-tooltip label="集团预测分类" align="center" prop="forecastClassification" width="120px"/>
-          <el-table-column show-overflow-tooltip label="中心仓占有量" align="center" prop="centerBinPossession" width="120px"/>
-          <el-table-column show-overflow-tooltip label="中心仓可用量" align="center" prop="centralWarehouseAvailable" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.buyDiscrepancy" label="总需与终采差异" align="center" prop="buyDiscrepancy" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.forecastClassification" label="集团预测分类" align="center" prop="forecastClassification" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.centerBinPossession" label="中心仓占有量" align="center" prop="centerBinPossession" width="120px"/>
+          <el-table-column show-overflow-tooltip v-if="showColumn.centralWarehouseAvailable" label="中心仓可用量" align="center" prop="centralWarehouseAvailable" width="120px"/>
           <!-- <el-table-column label="物料类别" align="center" prop="materialCategory" width="150px"/> -->
           <!-- <el-table-column label="物料类别" align="center" prop="materialCategory" width="150px"/> -->
           <!-- <el-table-column label="业务部门" align="center" prop="departmentName" width="150px"/> -->
           <!-- <el-table-column label="业务部门" align="center" prop="departmentName" width="150px"/> -->
-          <!-- <el-table-column show-overflow-tooltip label="需求单位" align="center" prop="demandUnit"/> -->
-          <el-table-column show-overflow-tooltip label="采购经理审核人" align="center" prop="puManagerAuditor" width="120px"/>
+          <!-- <el-table-column show-overflow-tooltip v-if="showColumn.status" label="需求单位" align="center" prop="demandUnit"/> -->
+          <el-table-column show-overflow-tooltip v-if="showColumn.puManagerAuditor" label="采购经理审核人" align="center" prop="puManagerAuditor" width="120px"/>
           <el-table-column
           <el-table-column
           fixed="right"
           fixed="right"
           label="操作"
           label="操作"
@@ -322,6 +323,10 @@
         </el-table-column>
         </el-table-column>
         </el-table>
         </el-table>
 
 
+        <el-button size="mini" style="position: absolute;left: 20px;bottom: 20px;" @click="tols.open = true">隐藏列</el-button>
+
+        <colTol :isVisible.sync="tols.open" @reDraw="reDraw" :showColumn.sync="showColumn" :arrs.sync="arrs"/>
+
         <el-pagination
         <el-pagination
           background
           background
           @size-change="handleSizeChange"
           @size-change="handleSizeChange"
@@ -347,6 +352,7 @@
 
 
 <script>
 <script>
 import Add from './add'
 import Add from './add'
+import colTol from './colTol.vue'
 import Refers from '@/components/Refers/refers.vue'
 import Refers from '@/components/Refers/refers.vue'
 import TreeRefers from '@/components/Refers/treeRefer.vue'
 import TreeRefers from '@/components/Refers/treeRefer.vue'
 import popDialog from '@/components/PopDialog/index.vue'
 import popDialog from '@/components/PopDialog/index.vue'
@@ -357,6 +363,7 @@ export default {
   dicts: ['sys_row_status', 'predictive_classify', 'sys_period_unit', 'sys_business', 'sys_bill_source'],
   dicts: ['sys_row_status', 'predictive_classify', 'sys_period_unit', 'sys_business', 'sys_bill_source'],
   components: {
   components: {
     Add,
     Add,
+    colTol,
     CollapseTransition,
     CollapseTransition,
     Refers,
     Refers,
     TreeRefers,
     TreeRefers,
@@ -364,6 +371,11 @@ export default {
   },
   },
   data() {
   data() {
     return {
     return {
+      showColumn: {},
+      arrs:[],
+      tols: {
+        open: false
+      },
       hangStatus(row) {
       hangStatus(row) {
         switch (row.status) {
         switch (row.status) {
           case '0':
           case '0':
@@ -480,6 +492,10 @@ export default {
     this.getList(this.queryParams)
     this.getList(this.queryParams)
   },
   },
   methods: {
   methods: {
+    reDraw() {
+      this.$refs.table.doLayout();
+      console.log(111)
+    },
     // 指定列合计
     // 指定列合计
     getSummaries(param) {
     getSummaries(param) {
       const { columns, data } = param;
       const { columns, data } = param;
@@ -543,6 +559,17 @@ export default {
         if (res.code === 200) {
         if (res.code === 200) {
           this.tableList = res.rows
           this.tableList = res.rows
           this.total = res.total
           this.total = res.total
+          let arrs = []
+          this.$refs.table.$children.forEach(item => {
+            if (item.label != undefined && item.prop != undefined) {
+              arrs.push({
+                label: item.label,
+                prop: item.prop
+              })
+            }
+          })
+          this.arrs = arrs
+          console.log('获取表头数据', arrs)
         }
         }
       })
       })
     },
     },

+ 1 - 1
src/views/purchase/PurchaseDemandList/add.vue

@@ -419,7 +419,7 @@
       </el-table>
       </el-table>
     </el-form>
     </el-form>
       <div class="btn_group">
       <div class="btn_group">
-        <el-button type="primary" size="mini"  @click="jumpOA" v-if="sonPageStu == 'check' && (row.status == '1' || row.status == '2')">跳转OA</el-button>
+        <el-button type="primary" size="mini"  @click="jumpOA" v-if="sonPageStu == 'check' && (row.status == '1' || row.status == '2')">审批</el-button>
         <el-button type="primary" size="mini"  @click="copy" v-if="sonPageStu == 'check'">复制</el-button>
         <el-button type="primary" size="mini"  @click="copy" v-if="sonPageStu == 'check'">复制</el-button>
         <el-button type="primary" size="mini"  @click="save" v-if="sonPageStu == 'add' || sonPageStu == 'edit'">保存</el-button>
         <el-button type="primary" size="mini"  @click="save" v-if="sonPageStu == 'add' || sonPageStu == 'edit'">保存</el-button>
         <el-button type="primary" size="mini"  @click="submit" v-if="sonPageStu == 'check' && (row.status == '0' || row.status == '3')">提交</el-button>
         <el-button type="primary" size="mini"  @click="submit" v-if="sonPageStu == 'check' && (row.status == '0' || row.status == '3')">提交</el-button>

+ 0 - 2
src/views/purchase/apply/index.vue

@@ -62,7 +62,6 @@ export default {
     },
     },
     // 查 询
     // 查 询
     useQuery(prop, page) {
     useQuery(prop, page) {
-      this.selectData = [];
       this.fetchList(prop, page);
       this.fetchList(prop, page);
     },
     },
     // 重 置
     // 重 置
@@ -73,7 +72,6 @@ export default {
     },
     },
     // 选 择
     // 选 择
     useSelect(prop) {
     useSelect(prop) {
-      console.log("prop", prop);
       this.selectData = prop;
       this.selectData = prop;
     },
     },
     // 明 细
     // 明 细

+ 0 - 1
src/views/purchase/catalogue/index.vue

@@ -58,7 +58,6 @@ export default {
     },
     },
     // 查 询
     // 查 询
     useQuery(prop, page) {
     useQuery(prop, page) {
-      this.selectData = [];
       this.fetchList(prop, page);
       this.fetchList(prop, page);
     },
     },
     // 重 置
     // 重 置

+ 1 - 1
src/views/purchase/contract/add/columns.js

@@ -197,7 +197,7 @@ export default function useColumns() {
       attr: { is: "el-date-picker", valueFormat: "yyyy-MM-dd" },
       attr: { is: "el-date-picker", valueFormat: "yyyy-MM-dd" },
     },
     },
     {
     {
-      item: { key: "isTarget", title: "是否有指标" },
+      item: { key: "isTarget", title: "是否有指标", require: true },
       attr: { is: "el-select", dictName: "sys_yes_no" },
       attr: { is: "el-select", dictName: "sys_yes_no" },
     },
     },
     {
     {

+ 0 - 1
src/views/purchase/contract/index.vue

@@ -67,7 +67,6 @@ export default {
     },
     },
     // 查 询
     // 查 询
     useQuery(prop, page) {
     useQuery(prop, page) {
-      this.selectData = [];
       this.fetchList(prop, page);
       this.fetchList(prop, page);
     },
     },
     // 重 置
     // 重 置

+ 1 - 1
src/views/purchase/transferOrder/add.vue

@@ -1337,7 +1337,7 @@
             (row.status == '1' || row.status == '2') &&
             (row.status == '1' || row.status == '2') &&
             row.oaId
             row.oaId
           "
           "
-          >跳转OA</el-button
+          >审批</el-button
         >
         >
         <el-button
         <el-button
           type="primary"
           type="primary"