Przeglądaj źródła

齐料性功能调整

zhouqi 1 rok temu
rodzic
commit
4b040979a4

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

@@ -154,3 +154,12 @@ export async function getCurrentList (data) {
   }
   return Promise.reject(new Error(res.data.message));
 }
+
+// 齐套性检查
+export async function homogeneityInspectMerge(data) {
+  const res = await request.post(`/aps/productionplan/homogeneityInspectMerge`,  data);
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}

+ 16 - 1
src/api/saleOrder/index.js

@@ -156,6 +156,14 @@ export async function getOrderDetail(code) {
   }
   return Promise.reject(new Error(res.data.message));
 }
+// 获取多个订单详情
+export async function getByCodeList(data) {
+  const res = await request.post(`/aps/salesorder/getByCodeList/`, data);
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}
 // 获取计划详情
 export async function getUpdateInfoById(id) {
   const res = await request.get(`/aps/productionplan/getUpdateInfoById/${id}`);
@@ -258,5 +266,12 @@ export async function synchronousDataByJDY(data) {
   }
   return Promise.reject(new Error(res.data.message));
 }
-
+// 齐套性检查
+export async function orderHomogeneityInspect(data) {
+  const res = await request.post(`/aps/productionplan/orderHomogeneityInspect`,  data);
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}
 

+ 9 - 1
src/views/productionPlan/components/currentDetailDialog.vue

@@ -195,6 +195,14 @@
         rules: {},
 
         columns: [
+          {
+            columnKey: 'index',
+            label: '序号',
+            type: 'index',
+            width: 55,
+            align: 'center',
+            showOverflowTooltip: true
+          },
           {
             prop: 'orderNo',
             label: '订单号',
@@ -257,7 +265,7 @@
           ...where,
         });
       },
-       async open(row) {
+      open(row) {
          this.visible = true;
          this.reload({code: row.bomCode});
       },

+ 104 - 12
src/views/productionPlan/components/homogeneityInspectDialog.vue

@@ -45,6 +45,14 @@
 <!--      </el-form>-->
 
 <!--      <headerTitle title="剩余拆批" class="mt20"> </headerTitle>-->
+      <div class="optionButton">
+        <el-button type="primary" @click="merge"
+        >合并</el-button>
+      </div>
+      <el-tabs v-model="activeName" @tab-click="tabClick()" type="card" size="mini">
+        <el-tab-pane label="自制件" name="first"></el-tab-pane>
+        <el-tab-pane label="装配件" name="second"></el-tab-pane>
+      </el-tabs>
       <el-form ref="form" :model="form" :rules="rules">
 <!--        <ele-pro-table-->
 <!--          ref="table"-->
@@ -104,7 +112,9 @@
           ref="table"
           :needPage="false"
           :columns="columns"
-          :datasource="form.homogeneityInspect"
+          :key="activeName"
+          :init-load="false"
+          :datasource="datasource"
         >
           <template v-slot:stockCount="{ row }">
             <el-link type="primary" :underline="false" @click="stockDetail(row)">
@@ -116,6 +126,30 @@
               {{ row.currentCount }}
             </el-link>
           </template>
+          <template v-slot:stockColor="{ row }">
+            <div :class="{'statusRed' : row.stockStatus == '缺料'}">
+              {{row.stockStatus}}
+            </div>
+          </template>
+          <template v-slot:currentColor="{ row }">
+            <div :class="{'statusRed' : row.currentStatus == '缺料'}">
+              {{row.currentStatus}}
+            </div>
+          </template>
+          <template v-slot:finishColor="{ row }">
+            <div :class="{'statusRed' : row.finishStatus == '缺料'}">
+              {{row.finishStatus}}
+            </div>
+          </template>
+          <template v-slot:finishCount="{ row }">
+            <div>
+              <div v-if="row.finishCount > 0">{{row.finishCount}}</div>
+              <div v-else>-</div>
+            </div>
+          </template>
+
+
+
 <!--          <template v-slot:requiredFormingNum="scope">-->
 <!--            <el-form-item-->
 <!--              :prop="'unpackList.' + scope.$index + '.requiredFormingNum'"-->
@@ -168,7 +202,7 @@
 </template>
 
 <script>
-  import { homogeneityInspect } from '@/api/productionPlan/index.js';
+  import { homogeneityInspect, homogeneityInspectMerge } from '@/api/productionPlan/index.js';
   import stockDetailDialog from './stockDetailDialog.vue';
   import currentDetailDialog from './currentDetailDialog.vue';
   export default {
@@ -195,6 +229,21 @@
         rules: {},
 
         columns: [
+          {
+            columnKey: 'index',
+            label: '序号',
+            type: 'index',
+            width: 55,
+            align: 'center',
+            showOverflowTooltip: true
+          },
+          {
+            prop: 'productCode',
+            label: '计划编号',
+            align: 'center',
+            minWidth: 100,
+            showOverflowTooltip: true
+          },
           {
             prop: 'opCode',
             label: '工序编码',
@@ -235,6 +284,7 @@
             minWidth: 80
           },
           {
+            slot: 'stockColor',
             prop: 'stockStatus',
             label: '库存状态',
             align: 'center',
@@ -248,37 +298,55 @@
             minWidth: 80
           },
           {
+            slot: 'currentColor',
             prop: 'currentStatus',
             label: '在途状态',
             align: 'center',
             minWidth: 80
           },
           {
+            slot: 'finishCount',
+            prop: 'finishCount',
+            label: '最终缺料数量',
+            align: 'center',
+            minWidth: 80
+          },
+          {
+            slot: 'finishColor',
             prop: 'finishStatus',
             label: '最终状态',
             align: 'center',
             minWidth: 80
           },
         ],
-
+        ids: [],
+        activeName: 'first',
       };
     },
     methods: {
+      reload(where) {
+        this.$nextTick(() => {
+          this.$refs.table.reload({ page: 1, where });
+        });
+      },
+      /* 表格数据源 */
+      datasource({ page, limit, where }) {
+        return homogeneityInspect({
+          pageNum: page,
+          size: limit,
+          ...where,
+        });
+      },
        stockDetail(row) {
          this.$refs.stockDetailDialog.open(row);
        },
        currentDetail(row) {
          this.$refs.currentDetailDialog.open(row);
        },
-       async open(ids) {
-         try{
-           this.visible = true;
-           this.form.homogeneityInspect = await homogeneityInspect(ids);
-         } catch(err) {
-
-         } finally {
-
-         }
+      open(ids) {
+         this.visible = true;
+         this.ids = ids;
+         this.reload({planIds: ids});
       },
       cancel() {
         this.formData = {};
@@ -287,6 +355,22 @@
 
       confirm() {
         this.visible = false;
+      },
+      async merge(){
+        if(this.activeName == 'first'){
+          this.reload({planIds: this.ids, productType: 1, merge: 2});
+        }
+        if(this.activeName == 'second'){
+          this.reload({planIds: this.ids, productType: 2, merge: 2});
+        }
+      },
+      tabClick(){
+        if(this.activeName == 'first'){
+          this.reload({planIds: this.ids, productType: 1});
+        }
+        if(this.activeName == 'second'){
+          this.reload({planIds: this.ids, productType: 2});
+        }
       }
     }
   };
@@ -300,4 +384,12 @@
   .el-form-item {
     margin-bottom: 0 !important;
   }
+  .optionButton {
+    display: flex;
+    justify-content: flex-end;
+    padding-bottom: 3px;
+  }
+  .statusRed{
+    color: red;
+  }
 </style>

+ 9 - 1
src/views/productionPlan/components/stockDetailDialog.vue

@@ -195,6 +195,14 @@
         rules: {},
 
         columns: [
+          {
+            columnKey: 'index',
+            label: '序号',
+            type: 'index',
+            width: 55,
+            align: 'center',
+            showOverflowTooltip: true
+          },
           {
             prop: 'categoryCode',
             label: '物品编码',
@@ -292,7 +300,7 @@
         this.sort = sort;
         this.reload();
       },
-      async open(row) {
+      open(row) {
           this.visible = true;
           this.reload({categoryCode: row.bomCode});
       },

+ 50 - 14
src/views/saleOrder/components/create-order.vue

@@ -1,4 +1,5 @@
 <template>
+  <div>
   <ele-modal :visible.sync="visible" :title="title" width="80vw" append-to-body>
     <el-form
       ref="form"
@@ -178,7 +179,7 @@
             <el-form-item
               label-width="0px"
               :prop="'productInfoList.' + scope.$index + '.produceType'"
-         
+
             >
 
               <el-select v-model="scope.row.produceType"   @change="changeProduceType(scope.row, scope.$index)" :key="scope.$index" >
@@ -195,14 +196,14 @@
         </el-table-column>
 
 
-        
+
         <el-table-column label="BOM版本" width="140" align="center" prop="bomCategoryId" v-if="clientEnvironmentId != 4">
           <template slot-scope="scope">
             <el-form-item
               label-width="0px"
               :prop="'productInfoList.' + scope.$index + '.bomCategoryId'"
-              :key="scope.$index" 
-         
+              :key="scope.$index"
+
             >
 
               <el-select v-model="scope.row.bomCategoryId"    @change="changeBomId(scope.row, scope.$index)" >
@@ -223,7 +224,7 @@
             <el-form-item
               label-width="0px"
               :prop="'productInfoList.' + scope.$index + '.produceRoutingId'"
-         
+
             >
               <el-select v-model="scope.row.produceRoutingId"    >
                 <el-option
@@ -254,9 +255,9 @@
 
 
 
-        
+
         <el-table-column label="计量单位" align="center" prop="measuringUnit">
-          
+
         </el-table-column>
         <el-table-column
           label="模数"
@@ -292,7 +293,7 @@
               <el-input
                 size="small"
                 style="width: 100%"
-               
+
                 @input="
                   tableHandleKeyUp(
                     scope.row,
@@ -314,6 +315,13 @@
         </el-table-column>
         <el-table-column label="操作" align="center" width="70">
           <template slot-scope="scope">
+            <el-link
+              type="primary"
+              :underline="false"
+              @click="homogeneityInspect(scope.row)"
+            >
+              齐套性检查
+            </el-link>
             <el-button
               type="text"
               @click="handleDeleteItem(scope.$index)"
@@ -321,6 +329,7 @@
               >删除</el-button
             >
           </template>
+
         </el-table-column>
       </el-table>
       <div class="add-product" @click="addEquipment">
@@ -345,19 +354,26 @@
       "
     >
     </EquipmentDialog>
+
+
+
   </ele-modal>
+    <orderHomogeneityInspectDialog ref="orderHomogeneityInspectDialog"></orderHomogeneityInspectDialog>
+  </div>
 </template>
 
 <script>
 import { getCode } from '@/api/codeManagement';
 import EquipmentDialog from '../components/EquipmentDialog.vue';
+import orderHomogeneityInspectDialog from "./orderHomogeneityInspectDialog";
 import { createOrUpdate, getOrderDetail , bomListByPlan, bomRoutingList} from '@/api/saleOrder';
 
 import dayjs from 'dayjs';
 import { multiply } from '@/utils/math';
 export default {
   components: {
-    EquipmentDialog
+    EquipmentDialog,
+    orderHomogeneityInspectDialog
   },
   data() {
     return {
@@ -678,15 +694,16 @@ export default {
 
 
     changeProduceType(row, index) {
-
       let param = {
         bomType:  row.produceType,
         categoryId: row.categoryId
       }
       bomListByPlan(param).then(res => {
-        this.$set(this.form.productInfoList[index], 'bomVersionList',  res || [])
-
-        console.log(this.form.productInfoList)
+        let arr = res || [];
+        if(arr.length == 0){
+          row.bomCategoryId = '';
+        }
+        this.$set(this.form.productInfoList[index], 'bomVersionList',  arr);
         this.$forceUpdate()
       })
 
@@ -694,10 +711,29 @@ export default {
 
     changeBomId(row, index) {
       bomRoutingList(row.bomCategoryId).then((res) => {
-        this.form.productInfoList[index].routingList = res || []
+        let arr = res || [];
+        if(arr.length == 0){
+          row.produceRoutingId = '';
+        }
+        this.$set(this.form.productInfoList[index], 'routingList',  arr);
+        this.$forceUpdate()
       })
     },
 
+    homogeneityInspect(row){
+      if(!row.produceType){
+        this.$message.warning('请选择加工方式');
+        return;
+      }
+      if(!row.bomCategoryId){
+        this.$message.warning('请选择BOM版本');
+        return;
+      }
+      let data = [];
+      data.push({bomId: row.bomCategoryId, planNum: row.contractNum});
+      this.$refs.orderHomogeneityInspectDialog.open(data);
+
+    },
 
 
 

+ 21 - 1
src/views/saleOrder/components/order-search.vue

@@ -207,6 +207,20 @@
       <el-col v-bind="styleResponsive ? { lg: 24, md: 24 } : { span: 24 }">
         <el-form-item label-width="0px">
           <div class="btn-wrapper">
+            <el-button
+              @click="payBudget"
+              size="mini"
+              type="danger"
+            >
+              交期预估</el-button
+            >
+            <el-button
+              @click="homogeneityInspect"
+              size="mini"
+              type="success"
+            >
+              齐套性检查</el-button
+            >
             <el-button
               @click="goProduct"
               size="mini"
@@ -509,7 +523,13 @@
           this.$message.success('同步成功!');
           this.reset()
         });
-      }
+      },
+      payBudget(){
+
+      },
+      homogeneityInspect(){
+        this.$emit('check');
+      },
     }
   };
 </script>

+ 312 - 0
src/views/saleOrder/components/orderHomogeneityInspectDialog.vue

@@ -0,0 +1,312 @@
+<template>
+  <div>
+  <ele-modal
+    width="80vw"
+    :visible.sync="visible"
+    :close-on-click-modal="false"
+    row-key="code"
+    custom-class="ele-dialog-form"
+    :title="'齐套性检查'"
+  >
+    <div class="form-wrapper">
+<!--      <el-form :model="requestData" label-width="0" :show-message="false">-->
+<!--        <el-descriptions title="" :column="2" border>-->
+<!--          <el-descriptions-item label="计划编号">-->
+<!--            {{ formData.code }}</el-descriptions-item-->
+<!--          >-->
+
+<!--          <el-descriptions-item label="产品编码">{{-->
+<!--            formData.productCode-->
+<!--            }}</el-descriptions-item>-->
+
+<!--          <el-descriptions-item label="产品名称">{{-->
+<!--            formData.productName-->
+<!--            }}</el-descriptions-item>-->
+
+<!--          <el-descriptions-item label="牌号|型号">-->
+<!--            {{ formData.brandNo }}|{{ formData.model }}</el-descriptions-item-->
+<!--          >-->
+
+<!--          <el-descriptions-item label="批次号">{{-->
+<!--            formData.batchNo-->
+<!--            }}</el-descriptions-item>-->
+
+<!--          <el-descriptions-item label="工艺路线">{{-->
+<!--            formData.produceRoutingName-->
+<!--            }}</el-descriptions-item>-->
+
+<!--          <el-descriptions-item label="要求生产数量">{{-->
+<!--            formData.requiredFormingNum-->
+<!--            }}</el-descriptions-item>-->
+<!--          <el-descriptions-item label="要求完成日期">{{-->
+<!--            formData.reqMoldTime-->
+<!--            }}</el-descriptions-item>-->
+<!--        </el-descriptions>-->
+<!--      </el-form>-->
+
+<!--      <headerTitle title="剩余拆批" class="mt20"> </headerTitle>-->
+      <el-form ref="form" :model="form" :rules="rules">
+<!--        <ele-pro-table-->
+<!--          ref="table"-->
+<!--          :needPage="false"-->
+<!--          :columns="columns"-->
+<!--          :datasource="form.surplusUnpack"-->
+<!--        >-->
+<!--          <template v-slot:toolbar>-->
+<!--            <el-button-->
+<!--              size="small"-->
+<!--              type="primary"-->
+<!--              icon="el-icon-plus"-->
+<!--              class="ele-btn-icon"-->
+<!--              :disabled="requiredFormingNum == 0 ? true : false"-->
+<!--              @click="openUnpack"-->
+<!--            >-->
+<!--              拆批-->
+<!--            </el-button>-->
+<!--          </template>-->
+
+<!--          <template v-slot:requiredFormingNum="scope">-->
+<!--            <el-form-item-->
+<!--              v-if="requiredFormingNum != 0"-->
+<!--              :prop="'surplusUnpack.' + scope.$index + '.requiredFormingNum'"-->
+<!--              :rules="[-->
+<!--                {-->
+<!--                  required: true,-->
+<!--                  message: '请输入要求生产数量',-->
+<!--                  trigger: 'change'-->
+<!--                },-->
+<!--                {-->
+<!--                  pattern: /^\d+(\.{0,1}\d+){0,1}$/,-->
+<!--                  message: '拆批数超过生产数量',-->
+<!--                  trigger: ['blur', 'change']-->
+<!--                }-->
+<!--              ]"-->
+<!--            >-->
+<!--              <el-input-->
+<!--                disabled-->
+<!--                v-model="requiredFormingNum"-->
+<!--                placeholder="请输入"-->
+<!--              ></el-input>-->
+<!--            </el-form-item>-->
+
+<!--            <el-form-item v-else> 工单已全部拆完 </el-form-item>-->
+<!--          </template>-->
+
+<!--          <template v-slot:splitResidue="scope">-->
+<!--            {{ formData.splitResidue }}-->
+<!--          </template>-->
+
+<!--        </ele-pro-table>-->
+
+<!--        <headerTitle title="拆批" class="mt20"> </headerTitle>-->
+
+        <ele-pro-table
+          ref="table"
+          :needPage="false"
+          :columns="columns"
+          :datasource="datasource"
+          :init-load="false"
+        >
+          <template v-slot:stockCount="{ row }">
+            <el-link type="primary" :underline="false" @click="stockDetail(row)">
+              {{ row.stockCount }}
+            </el-link>
+          </template>
+          <template v-slot:currentCount="{ row }">
+            <el-link type="primary" :underline="false" @click="currentDetail(row)">
+              {{ row.currentCount }}
+            </el-link>
+          </template>
+<!--          <template v-slot:requiredFormingNum="scope">-->
+<!--            <el-form-item-->
+<!--              :prop="'unpackList.' + scope.$index + '.requiredFormingNum'"-->
+<!--              :rules="{-->
+<!--                required: true,-->
+<!--                message: '请输入要求生产数量',-->
+<!--                trigger: 'change'-->
+<!--              }"-->
+<!--            >-->
+<!--              <el-input-number-->
+<!--                type="number"-->
+<!--                @change="changeNum(scope.$index)"-->
+<!--                :min="0"-->
+<!--                v-model="scope.row.requiredFormingNum"-->
+<!--                placeholder="请输入"-->
+<!--              ></el-input-number>-->
+<!--            </el-form-item>-->
+<!--          </template>-->
+
+<!--          <template v-slot:reqMoldTime="scope">-->
+<!--            <el-form-item-->
+<!--              :prop="'unpackList.' + scope.$index + '.reqMoldTime'"-->
+<!--              :rules="{-->
+<!--                required: true,-->
+<!--                message: '请选择开始计划时间',-->
+<!--                trigger: 'change'-->
+<!--              }"-->
+<!--            >-->
+<!--              <el-date-picker-->
+<!--                class="w100"-->
+<!--                v-model="scope.row.reqMoldTime"-->
+<!--                type="date"-->
+<!--                value-format="yyyy-MM-dd"-->
+<!--              ></el-date-picker>-->
+<!--            </el-form-item>-->
+<!--          </template>-->
+        </ele-pro-table>
+      </el-form>
+    </div>
+    <div slot="footer">
+      <el-button plain @click="cancel">取消</el-button>
+      <el-button type="primary" @click="confirm">确定</el-button>
+    </div>
+  </ele-modal>
+
+  <stockDetailDialog ref="stockDetailDialog" />
+
+  <currentDetailDialog ref="currentDetailDialog" />
+  </div>
+</template>
+
+<script>
+  import { orderHomogeneityInspect } from '@/api/saleOrder/index.js';
+  import stockDetailDialog from '../../productionPlan/components/stockDetailDialog.vue';
+  import currentDetailDialog from '../../productionPlan/components/currentDetailDialog.vue';
+  import {homogeneityInspect} from "@/api/productionPlan";
+  export default {
+    components: {
+      stockDetailDialog,
+      currentDetailDialog
+    },
+    data() {
+      return {
+        visible: false,
+
+        formData: {},
+        requestData: {
+          deviceCode: '',
+          deviceName: '',
+          deviceId: ''
+        },
+        requiredFormingNum: 0,
+
+        form: {
+          homogeneityInspect: []
+        },
+
+        rules: {},
+
+        columns: [
+          {
+            prop: 'opCode',
+            label: '工序编码',
+            align: 'center',
+            minWidth: 100,
+            showOverflowTooltip: true
+          },
+          {
+            prop: 'opName',
+            label: '工序名称',
+            align: 'center',
+            minWidth: 100
+          },
+          {
+            prop: 'bomCode',
+            label: '物料编码',
+            align: 'center',
+            minWidth: 100,
+            showOverflowTooltip: true
+          },
+          {
+            prop: 'bomName',
+            label: '物料名称',
+            align: 'center',
+            minWidth: 100
+          },
+          {
+            prop: 'count',
+            label: '定额数量',
+            align: 'center',
+            minWidth: 80
+          },
+          {
+            slot: 'stockCount',
+            prop: 'stockCount',
+            label: '库存数量',
+            align: 'center',
+            minWidth: 80
+          },
+          {
+            prop: 'stockStatus',
+            label: '库存状态',
+            align: 'center',
+            minWidth: 80
+          },
+          {
+            slot: 'currentCount',
+            prop: 'currentCount',
+            label: '在途数量',
+            align: 'center',
+            minWidth: 80
+          },
+          {
+            prop: 'currentStatus',
+            label: '在途状态',
+            align: 'center',
+            minWidth: 80
+          },
+          {
+            prop: 'finishStatus',
+            label: '最终状态',
+            align: 'center',
+            minWidth: 80
+          },
+        ],
+        ids: [],
+      };
+    },
+    methods: {
+        reload(where) {
+          this.$nextTick(() => {
+            this.$refs.table.reload({ page: 1, where });
+          });
+        },
+        /* 表格数据源 */
+        datasource({ page, limit, where }) {
+          return homogeneityInspect({
+            pageNum: page,
+            size: limit,
+            ...where,
+          });
+        },
+       stockDetail(row) {
+         this.$refs.stockDetailDialog.open(row);
+       },
+       currentDetail(row) {
+         this.$refs.currentDetailDialog.open(row);
+       },
+      open(data) {
+         this.visible = true;
+         this.reload(data);
+      },
+      cancel() {
+        this.formData = {};
+        this.visible = false;
+      },
+
+      confirm() {
+        this.visible = false;
+      },
+    }
+  };
+</script>
+
+<style lang="scss" scoped>
+  .mt20 {
+    margin-top: 20px;
+  }
+
+  .el-form-item {
+    margin-bottom: 0 !important;
+  }
+</style>

+ 24 - 2
src/views/saleOrder/index.vue

@@ -6,6 +6,7 @@
         @search="reload"
         :selection="selection"
         :activeName="activeName"
+        @check="check"
       >
       </order-search>
       <el-tabs v-model="activeName" type="card" @tab-click="changeTab">
@@ -97,6 +98,8 @@
     <order-detail @refresh="reload" ref="detailDialog"> </order-detail>
     <!-- 创建订单 -->
     <create-order ref="createDialog" @refresh="reload"> </create-order>
+
+    <orderHomogeneityInspectDialog ref="orderHomogeneityInspectDialog"></orderHomogeneityInspectDialog>
   </div>
 </template>
 
@@ -104,12 +107,14 @@
   import OrderSearch from './components/order-search.vue';
   import OrderDetail from './components/order-detail.vue';
   import CreateOrder from './components/create-order.vue';
+  import orderHomogeneityInspectDialog from './components/orderHomogeneityInspectDialog';
 
   import {
     getPageList,
     deleteOrder,
     updatePriority,
-    fieldModel
+    fieldModel,
+    getByCodeList
   } from '@/api/saleOrder';
   import dictMixins from '@/mixins/dictMixins';
   import { debounce } from 'lodash';
@@ -120,7 +125,8 @@
     components: {
       OrderSearch,
       OrderDetail,
-      CreateOrder
+      CreateOrder,
+      orderHomogeneityInspectDialog,
     },
     data() {
       return {
@@ -359,6 +365,22 @@
       this.requestDict('生产状态');
     },
     methods: {
+      check(){
+        if(this.selection.length > 0){
+          let codeList = [];
+          this.selection.map(ele => {
+            if(ele.code){
+              codeList.push(ele.code);
+            }
+          })
+          // getByCodeList(codeList).then(res => {
+          //   console.log(res);
+          // })
+        } else {
+          this.$message.warning('请至少选择一条计划!');
+        }
+
+      },
       getFieldModel() {
         fieldModel({ fieldModel: 't_main_category' }).then((res) => {
           const privateColumn = [];