Pārlūkot izejas kodu

【新增】计划单

howie 2 gadi atpakaļ
vecāks
revīzija
89f4271dd1

+ 352 - 129
src/views/finance/rebate_form.vue

@@ -4,7 +4,13 @@
     <el-divider />
     <!-- 表头 -->
     <div>
-      <el-form ref="searchForm" :model="searchForm" label-width="100px" size="mini" label-position="left">
+      <el-form
+        ref="searchForm"
+        :model="searchForm"
+        label-width="100px"
+        size="mini"
+        label-position="left"
+      >
         <el-row :gutter="20">
           <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="返利单号" prop="">
@@ -13,7 +19,15 @@
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="返利日期" prop="">
-              <el-date-picker v-model="searchForm.theTime" disabled class="selectStyle" type="datetime" placeholder="系统自动生成" default-time="23:59:59" value-format="yyyy-MM-dd HH:mm:ss" />
+              <el-date-picker
+                v-model="searchForm.theTime"
+                disabled
+                class="selectStyle"
+                type="datetime"
+                placeholder="系统自动生成"
+                default-time="23:59:59"
+                value-format="yyyy-MM-dd HH:mm:ss"
+              />
             </el-form-item>
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
@@ -23,7 +37,11 @@
           </el-col>
           <el-col :xs="24" :sm="12" :lg="6">
             <el-form-item label="制单人" prop="">
-              <el-input v-model="searchForm.createBy" disabled placeholder="请输入" />
+              <el-input
+                v-model="searchForm.createBy"
+                disabled
+                placeholder="请输入"
+              />
             </el-form-item>
           </el-col>
           <!-- <el-col :xs="24" :sm="12" :lg="6">
@@ -45,18 +63,38 @@
     <!-- 按钮 -->
     <div class="btn-group clearfix">
       <div class="fl">
-        <el-popconfirm v-if="$checkBtnRole('del', $route.meta.roles)" title="这是一段内容确定删除吗?" @onConfirm="delSeletFn">
-          <el-button slot="reference" :disabled="selectList.length < 1" type="danger" size="mini" class="textColor delStyle" icon="el-icon-minus">批量删除</el-button>
+        <el-popconfirm
+          v-if="$checkBtnRole('del', $route.meta.roles)"
+          title="这是一段内容确定删除吗?"
+          @onConfirm="delSeletFn"
+        >
+          <el-button
+            slot="reference"
+            :disabled="selectList.length < 1"
+            type="danger"
+            size="mini"
+            class="textColor delStyle"
+            icon="el-icon-minus"
+            >批量删除</el-button
+          >
         </el-popconfirm>
       </div>
       <div class="fr">
-        <el-button type="primary" size="mini" @click="downLoadFn">模板</el-button>
+        <el-button type="primary" size="mini" @click="downLoadFn"
+          >模板</el-button
+        >
         <!-- <a href="/rebate/order/download">下载文件</a> -->
         <!-- <el-button type="primary" size="mini" @click="importFn"
           >批量导入</el-button
         > -->
 
-        <el-upload class="import-btn" action="" :http-request="handleImport" :file-list="importFileList" :show-file-list="false">
+        <el-upload
+          class="import-btn"
+          action=""
+          :http-request="handleImport"
+          :file-list="importFileList"
+          :show-file-list="false"
+        >
           <el-button type="primary" size="mini">批量导入</el-button>
         </el-upload>
       </div>
@@ -78,90 +116,267 @@
           @row-click="onRowClick"
           @selection-change="selectionChange"
         >
-          <el-table-column align="center" type="selection" width="51" show-overflow-tooltip />
-          <el-table-column align="left" label="经销商编码" prop="customerNumber" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="center"
+            type="selection"
+            width="51"
+            show-overflow-tooltip
+          />
+          <el-table-column
+            align="left"
+            label="经销商编码"
+            prop="customerNumber"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.customerNumber" style="width: 100%" size="mini" disabled />
+              <el-input
+                v-model="scope.row.customerNumber"
+                style="width: 100%"
+                size="mini"
+                disabled
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="经销商名称" prop="customerName" min-width="300" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="经销商名称"
+            prop="customerName"
+            min-width="300"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-select v-model="scope.row.customerId" style="width: 100%" size="mini" placeholder="请选择" filterable @change="changeCustomerFn($event, scope.$index, scope.row)">
-                <el-option v-for="item in customerData" :key="item.id" :label="item.name" :value="item.id" />
+              <el-select
+                v-model="scope.row.customerId"
+                style="width: 100%"
+                size="mini"
+                placeholder="请选择"
+                filterable
+                @change="changeCustomerFn($event, scope.$index, scope.row)"
+              >
+                <el-option
+                  v-for="item in customerData"
+                  :key="item.id"
+                  :label="item.name"
+                  :value="item.id"
+                />
               </el-select>
             </template>
           </el-table-column>
-          <el-table-column align="left" label="返利类型" prop="customerWalletId" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="返利类型"
+            prop="customerWalletId"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-select v-model="scope.row.customerWalletId" style="width: 100%" size="mini" placeholder="请选择" filterable>
-                <el-option v-for="item in scope.row.walletList" :key="item.customerWalletId" :label="item.name" :value="item.customerWalletId" />
+              <el-select
+                v-model="scope.row.customerWalletId"
+                style="width: 100%"
+                size="mini"
+                placeholder="请选择"
+                filterable
+              >
+                <el-option
+                  v-for="item in scope.row.walletList"
+                  :key="item.customerWalletId"
+                  :label="item.name"
+                  :value="item.customerWalletId"
+                />
               </el-select>
             </template>
           </el-table-column>
-          <el-table-column align="right" label="返利总金额" prop="amount" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="right"
+            label="返利总金额"
+            prop="amount"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.amount" size="mini" style="width: 100%" class="mountclass" type="number" @mousewheel.native.prevent />
+              <el-input
+                v-model="scope.row.amount"
+                size="mini"
+                style="width: 100%"
+                class="mountclass"
+                type="number"
+                @mousewheel.native.prevent
+              />
             </template>
           </el-table-column>
-          <el-table-column align="right" label="暂扣返利" prop="withholdAmount" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="right"
+            label="暂扣返利"
+            prop="withholdAmount"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.withholdAmount" style="width: 100%" size="mini" class="mountclass" type="number" @mousewheel.native.prevent />
+              <el-input
+                v-model="scope.row.withholdAmount"
+                style="width: 100%"
+                size="mini"
+                class="mountclass"
+                type="number"
+                @mousewheel.native.prevent
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="政策文件流水号" prop="policyFileNo" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="政策文件流水号"
+            prop="policyFileNo"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.policyFileNo" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.policyFileNo"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="政策文号" prop="policyDocNo" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="政策文号"
+            prop="policyDocNo"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.policyDocNo" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.policyDocNo"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="政策年份" prop="policyYear" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="政策年份"
+            prop="policyYear"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.policyYear" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.policyYear"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="政策月份" prop="policyMonth" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="政策月份"
+            prop="policyMonth"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.policyMonth" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.policyMonth"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="政策归属部门" prop="policyOrg" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="政策归属部门"
+            prop="policyOrg"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.policyOrg" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.policyOrg"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="客户区域" prop="customerArea" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="客户区域"
+            prop="customerArea"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.customerArea" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.customerArea"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="客户属性" prop="customerAttr" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="客户属性"
+            prop="customerAttr"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.customerAttr" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.customerAttr"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="建立实际归属客户" prop="rewardActualCustomers" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="建立实际归属客户"
+            prop="rewardActualCustomers"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.rewardActualCustomers" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.rewardActualCustomers"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="备注1" prop="remark1" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="备注1"
+            prop="remark1"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.remark1" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.remark1"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
-          <el-table-column align="left" label="备注2" prop="remark2" min-width="160" show-overflow-tooltip>
+          <el-table-column
+            align="left"
+            label="备注2"
+            prop="remark2"
+            min-width="160"
+            show-overflow-tooltip
+          >
             <template slot-scope="scope">
-              <el-input v-model="scope.row.remark2" style="width: 100%" size="mini" />
+              <el-input
+                v-model="scope.row.remark2"
+                style="width: 100%"
+                size="mini"
+              />
             </template>
           </el-table-column>
         </el-table>
       </div>
     </div>
-    <br>
+    <br />
 
     <!-- 按钮 -->
     <div class="btn-group clearfix">
@@ -173,16 +388,20 @@
         <el-button type="primary" size="mini" @click="cancelFn">重置</el-button>
       </div>
       <div class="fr">
-        <el-button type="primary" size="mini" @click="addRowFn">添加行</el-button>
-        <el-button type="primary" size="mini" @click="delRowFn">删除行</el-button>
+        <el-button type="primary" size="mini" @click="addRowFn"
+          >添加行</el-button
+        >
+        <el-button type="primary" size="mini" @click="delRowFn"
+          >删除行</el-button
+        >
       </div>
     </div>
   </div>
 </template>
 
 <script>
-import { mapGetters } from 'vuex'
-import { downloadFiles, handleImport } from '@/utils/util'
+import { mapGetters } from "vuex";
+import { downloadFiles, handleImport } from "@/utils/util";
 
 import {
   getCustomerList,
@@ -190,8 +409,8 @@ import {
   getRebateOrderAdd,
   getRebateOrderApply,
   getRebateOrderList,
-  getRebateOrderDownLoad
-} from '@/api/finance/rebate_form'
+  getRebateOrderDownLoad,
+} from "@/api/finance/rebate_form";
 export default {
   data() {
     return {
@@ -204,10 +423,10 @@ export default {
       searchForm: {
         // theTime: "",
 
-        remark: '',
-        createBy: ''
+        remark: "",
+        createBy: "",
       },
-      delIndex: null
+      delIndex: null,
       // rules: {
       //   theTime: [
       //     {
@@ -217,83 +436,87 @@ export default {
       //     },
       //   ],
       // },
-    }
+    };
   },
 
   computed: {
-    ...mapGetters(['name'])
+    ...mapGetters(["name"]),
   },
   created() {
-    this.getCustomerData()
-    this.searchForm.createBy = this.name
+    this.getCustomerData();
+    this.searchForm.createBy = this.name;
+  },
+  activated() {
+    Object.assign(this.$data, this.$options.data());
+    this.getCustomerData();
   },
   methods: {
     // 合计
     getSummaries(param) {
-      const { columns, data } = param
-      const sums = []
+      const { columns, data } = param;
+      const sums = [];
       columns.forEach((column, index) => {
         if (index === 0) {
-          sums[index] = '合计'
+          sums[index] = "合计";
         }
         if (index === 4) {
           const map2 = data.map((v) => {
-            return v.amount * 1
-          })
+            return v.amount * 1;
+          });
           sums[index] = map2
             .reduce((prev, curr) => {
-              const value = Number(curr)
+              const value = Number(curr);
               if (!isNaN(value)) {
-                return (prev + curr) * 1
+                return (prev + curr) * 1;
               } else {
-                return prev * 1
+                return prev * 1;
               }
             }, 0)
-            .toFixed(2)
+            .toFixed(2);
         }
         if (index === 5) {
           const map2 = data.map((v) => {
-            return v.withholdAmount * 1
-          })
+            return v.withholdAmount * 1;
+          });
           sums[index] = map2
             .reduce((prev, curr) => {
-              const value = Number(curr)
+              const value = Number(curr);
               if (!isNaN(value)) {
-                return (prev + curr) * 1
+                return (prev + curr) * 1;
               } else {
-                return prev * 1
+                return prev * 1;
               }
             }, 0)
-            .toFixed(2)
+            .toFixed(2);
         }
-      })
+      });
 
-      return sums
+      return sums;
     },
     // 删除
     delSeletFn() {
-      this.selectList.sort(function(a, b) {
-        return b - a
-      })
+      this.selectList.sort(function (a, b) {
+        return b - a;
+      });
 
       for (let index = 0; index < this.selectList.length; index++) {
         // console.log(index);
-        this.dataList.splice(this.selectList[index], 1)
+        this.dataList.splice(this.selectList[index], 1);
       }
     },
     // 选择项改变
     selectionChange(v) {
-      this.selectList = v.map((v) => v.index)
+      this.selectList = v.map((v) => v.index);
     },
 
     // 导入
     async handleImport(param) {
-      this.listLoading = true
-      const file = param.file
-      const formData = new FormData()
-      formData.append('file', file)
-      const result = await handleImport('rebate/order/import', formData)
-      this.importFileList = []
+      this.listLoading = true;
+      const file = param.file;
+      const formData = new FormData();
+      formData.append("file", file);
+      const result = await handleImport("rebate/order/import", formData);
+      this.importFileList = [];
       if (result.code == 200) {
         // let Arr = result.data.items;
         // let list = [];
@@ -328,36 +551,36 @@ export default {
         // let aa = [...this.dataList, ...list];
 
         // this.dataList = aa;
-        this.$message.success('导入成功')
-        this.$router.push('/finance/rebate/rebate_list')
+        this.$message.success("导入成功");
+        this.$router.push("/finance/rebate/rebate_list");
       } else {
-        this.$message.error(result.message)
+        this.$message.error(result.message);
       }
-      this.listLoading = false
+      this.listLoading = false;
     },
     // 下载模板
     async downLoadFn() {
-      downloadFiles('rebate/order/download')
+      downloadFiles("rebate/order/download");
     },
     // 重置
     cancelFn() {
       this.searchForm = {
-        theTime: '',
-        createTime: '',
-        remark: '',
-        createBy: ''
-      }
+        theTime: "",
+        createTime: "",
+        remark: "",
+        createBy: "",
+      };
     },
     rouClassNameFn({ row, rowIndex }) {
       // 把每一行的索引放进row
-      row.index = rowIndex
+      row.index = rowIndex;
     },
     onRowClick(row, event, column) {
-      this.delIndex = row.index
+      this.delIndex = row.index;
     },
     // 删除行
     delRowFn() {
-      this.dataList.splice(this.delIndex, 1)
+      this.dataList.splice(this.delIndex, 1);
     },
     // //提交审批
     // async submitFn() {
@@ -370,61 +593,61 @@ export default {
     // },
     // 新增
     async addFn() {
-      let arr
-      await this.$refs.searchForm.validate()
+      let arr;
+      await this.$refs.searchForm.validate();
       this.dataList.forEach((v) => {
         arr = v.walletList.filter(
           (i) => i.customerWalletId == v.customerWalletId
-        )
-        v.walletName = arr[0].name
-      })
-      await getRebateOrderAdd({ ...this.searchForm, items: this.dataList })
-      this.$message.success('保存成功')
-      this.$router.push('/finance/rebate/rebate_list')
+        );
+        v.walletName = arr[0].name;
+      });
+      await getRebateOrderAdd({ ...this.searchForm, items: this.dataList });
+      this.$message.success("保存成功");
+      this.$router.push("/finance/rebate/rebate_list");
     },
     // 选择经销商名称事件
     async changeCustomerFn(v, index, value) {
-      value.customerWalletId = ''
+      value.customerWalletId = "";
 
       const res = await getWalletCustomerList({
         customerId: v,
-        type: 'REBATE'
-      })
-      const res2 = this.customerData.filter((i) => i.id == v)
+        type: "REBATE",
+      });
+      const res2 = this.customerData.filter((i) => i.id == v);
 
-      this.$set(this.dataList[index], 'customerNumber', res2[0].number)
-      this.$set(this.dataList[index], 'customerName', res2[0].name)
+      this.$set(this.dataList[index], "customerNumber", res2[0].number);
+      this.$set(this.dataList[index], "customerName", res2[0].name);
 
-      this.$set(this.dataList[index], 'walletList', res.data)
+      this.$set(this.dataList[index], "walletList", res.data);
     },
     // 获取经销商数据
     async getCustomerData() {
-      const res = await getCustomerList({ pageSize: -1, pageNum: 1 })
-      this.customerData = res.data.records
+      const res = await getCustomerList({ pageSize: -1, pageNum: 1 });
+      this.customerData = res.data.records;
     },
 
     // 添加行
     addRowFn() {
       this.dataList.push({
-        customerNumber: '',
-        customerName: '',
-        customerWalletId: '',
+        customerNumber: "",
+        customerName: "",
+        customerWalletId: "",
         amount: null,
         withholdAmount: null,
-        policyFileNo: '',
-        policyDocNo: '',
-        policyYear: '',
-        policyMonth: '',
-        policyOrg: '',
-        customerArea: '',
-        customerAttr: '',
-        rewardActualCustomers: '',
-        remark1: '',
-        remark2: ''
-      })
-    }
-  }
-}
+        policyFileNo: "",
+        policyDocNo: "",
+        policyYear: "",
+        policyMonth: "",
+        policyOrg: "",
+        customerArea: "",
+        customerAttr: "",
+        rewardActualCustomers: "",
+        remark1: "",
+        remark2: "",
+      });
+    },
+  },
+};
 </script>
 
 <style lang="scss" scoped>

+ 562 - 263
src/views/supply/engin/components/engin_examine.vue

@@ -19,7 +19,14 @@
         <el-col :span="8" class="item">
           <div class="label">业务员</div>
           <div class="value">
-            <el-select v-model="detailData.serviceId" placeholder="选择业务员" size="small" filterable clearable style="width: 100%">
+            <el-select
+              v-model="detailData.serviceId"
+              placeholder="选择业务员"
+              size="small"
+              filterable
+              clearable
+              style="width: 100%"
+            >
               <el-option
                 v-for="item in salesmanList"
                 :key="item.adminUserId"
@@ -36,13 +43,22 @@
         <el-col :span="8" class="item">
           <div class="label">项目名称</div>
           <div class="value">
-            <el-input v-model="detailData.projectName" placeholder="请输入项目名称" />
+            <el-input
+              v-model="detailData.projectName"
+              placeholder="请输入项目名称"
+            />
           </div>
         </el-col>
         <el-col :span="8" class="item">
           <div class="label">机型类别</div>
           <div class="value">
-            <el-select v-model="detailData.machineType" placeholder="选择机型类别" size="small" clearable style="width: 100%">
+            <el-select
+              v-model="detailData.machineType"
+              placeholder="选择机型类别"
+              size="small"
+              clearable
+              style="width: 100%"
+            >
               <el-option
                 v-for="item in machineTypeList"
                 :key="item.dictCode"
@@ -59,13 +75,22 @@
         <el-col :span="8" class="item">
           <div class="label">使用单位</div>
           <div class="value">
-            <el-input v-model="detailData.useUnit" placeholder="请输入使用单位" />
+            <el-input
+              v-model="detailData.useUnit"
+              placeholder="请输入使用单位"
+            />
           </div>
         </el-col>
         <el-col :span="8" class="item">
           <div class="label">行业类别</div>
           <div class="value">
-            <el-select v-model="detailData.tradeCategory" placeholder="选择行业类别" size="small" clearable style="width: 100%">
+            <el-select
+              v-model="detailData.tradeCategory"
+              placeholder="选择行业类别"
+              size="small"
+              clearable
+              style="width: 100%"
+            >
               <el-option
                 v-for="item in tradeCategoryList"
                 :key="item.value"
@@ -78,19 +103,31 @@
         <el-col :span="8" class="item">
           <div class="label">工程编号</div>
           <div class="value">
-            <el-input v-model="detailData.projectNo" placeholder="请输入工程编号" />
+            <el-input
+              v-model="detailData.projectNo"
+              placeholder="请输入工程编号"
+            />
           </div>
         </el-col>
         <el-col :span="8" class="item">
           <div class="label">厂工程编码</div>
           <div class="value">
-            <el-input v-model="detailData.enginFactoryNo" placeholder="请输入厂工程编码" />
+            <el-input
+              v-model="detailData.enginFactoryNo"
+              placeholder="请输入厂工程编码"
+            />
           </div>
         </el-col>
         <el-col :span="8" class="item">
           <div class="label">工程登录类型</div>
           <div class="value">
-            <el-select v-model="detailData.enginSignType" placeholder="选择工程登录类型" size="small" clearable style="width: 100%">
+            <el-select
+              v-model="detailData.enginSignType"
+              placeholder="选择工程登录类型"
+              size="small"
+              clearable
+              style="width: 100%"
+            >
               <el-option
                 v-for="item in loginTypeList"
                 :key="item.dictCode"
@@ -125,19 +162,28 @@
         <el-col :span="24" class="item">
           <div class="label">安装地址</div>
           <div class="value">
-            <el-input v-model="detailData.installAddress" placeholder="请输入安装地址" />
+            <el-input
+              v-model="detailData.installAddress"
+              placeholder="请输入安装地址"
+            />
           </div>
         </el-col>
         <el-col v-if="!isCustomer" :span="24" class="item">
           <div class="label">格力内部备注</div>
           <div class="value">
-            <el-input v-model="detailData.geLiInerNote" placeholder="请输入格力内部备注" />
+            <el-input
+              v-model="detailData.geLiInerNote"
+              placeholder="请输入格力内部备注"
+            />
           </div>
         </el-col>
         <el-col :span="24" class="item">
           <div class="label">格力回复</div>
           <div class="value">
-            <el-input v-model="detailData.geLiNote" placeholder="请输入格力回复" />
+            <el-input
+              v-model="detailData.geLiNote"
+              placeholder="请输入格力回复"
+            />
           </div>
         </el-col>
         <el-col :span="24" class="item">
@@ -162,7 +208,7 @@
               type="date"
               prefix-icon="none"
               value-format="yyyy-MM-dd"
-              style="width: 100%;"
+              style="width: 100%"
               placeholder="选择日期"
             />
           </div>
@@ -173,7 +219,13 @@
     <div class="main-title">
       <div class="title">货品信息</div>
       <div>
-        <el-button type="primary" size="small" icon="el-icon-plus" @click="openDialog">添加货品</el-button>
+        <el-button
+          type="primary"
+          size="small"
+          icon="el-icon-plus"
+          @click="openDialog"
+          >添加货品</el-button
+        >
       </div>
     </div>
 
@@ -190,40 +242,120 @@
         :summary-method="$getSummaries"
       >
         <el-table-column align="center" label="序号" type="index" width="50" />
-        <el-table-column align="left" label="销售类型" prop="saleTypeName" min-width="120" show-overflow-tooltip />
-        <el-table-column align="left" label="物料编码" prop="materialNumber" min-width="120" show-overflow-tooltip />
-        <el-table-column align="left" label="产品编码" prop="materialOldNumber" min-width="120" show-overflow-tooltip />
-        <el-table-column align="left" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip />
-        <el-table-column align="left" label="规格型号" prop="specification" min-width="160" show-overflow-tooltip>
+        <el-table-column
+          align="left"
+          label="销售类型"
+          prop="saleTypeName"
+          min-width="120"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          align="left"
+          label="物料编码"
+          prop="materialNumber"
+          min-width="120"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          align="left"
+          label="产品编码"
+          prop="materialOldNumber"
+          min-width="120"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          align="left"
+          label="产品名称"
+          prop="materialName"
+          min-width="160"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          align="left"
+          label="规格型号"
+          prop="specification"
+          min-width="160"
+          show-overflow-tooltip
+        >
           <template slot-scope="scope">
             <el-input v-model="scope.row.specification" size="small" />
           </template>
         </el-table-column>
-        <el-table-column align="left" label="单位" prop="unit" min-width="100" show-overflow-tooltip />
-        <el-table-column align="right" label="单价" prop="price" min-width="100" show-overflow-tooltip>
+        <el-table-column
+          align="left"
+          label="单位"
+          prop="unit"
+          min-width="100"
+          show-overflow-tooltip
+        />
+        <el-table-column
+          align="right"
+          label="单价"
+          prop="price"
+          min-width="100"
+          show-overflow-tooltip
+        >
           <template slot-scope="scope">
-            <el-input v-model="scope.row.price" size="small" type="number" @mousewheel.native.prevent />
+            <el-input
+              v-model="scope.row.price"
+              size="small"
+              type="number"
+              @mousewheel.native.prevent
+            />
           </template>
         </el-table-column>
-        <el-table-column align="right" label="数量" prop="qty" min-width="100" show-overflow-tooltip>
+        <el-table-column
+          align="right"
+          label="数量"
+          prop="qty"
+          min-width="100"
+          show-overflow-tooltip
+        >
           <template slot-scope="scope">
-            <el-input v-model="scope.row.qty" size="small" type="number" @mousewheel.native.prevent />
+            <el-input
+              v-model="scope.row.qty"
+              size="small"
+              type="number"
+              @mousewheel.native.prevent
+            />
           </template>
         </el-table-column>
-        <el-table-column align="right" label="订单金额" min-width="100" prop="compute_amount" show-overflow-tooltip>
+        <el-table-column
+          align="right"
+          label="订单金额"
+          min-width="100"
+          prop="compute_amount"
+          show-overflow-tooltip
+        >
           <template slot-scope="scope">
             {{ scope.row.compute_amount | numToFixed }}
           </template>
         </el-table-column>
-        <el-table-column align="left" label="备注" prop="remark" min-width="200" show-overflow-tooltip>
+        <el-table-column
+          align="left"
+          label="备注"
+          prop="remark"
+          min-width="200"
+          show-overflow-tooltip
+        >
           <template slot-scope="scope">
             <el-input v-model="scope.row.remark" size="small" />
           </template>
         </el-table-column>
-        <el-table-column align="left" label="税率" prop="taxRate" min-width="100" show-overflow-tooltip />
+        <el-table-column
+          align="left"
+          label="税率"
+          prop="taxRate"
+          min-width="100"
+          show-overflow-tooltip
+        />
         <el-table-column align="center" label="操作" width="100" fixed="right">
           <template slot-scope="scope">
-            <el-button type="text" @click="deleteItem(scope.$index, scope.row.cid)">删除</el-button>
+            <el-button
+              type="text"
+              @click="deleteItem(scope.$index, scope.row.cid)"
+              >删除</el-button
+            >
           </template>
         </el-table-column>
       </el-table>
@@ -234,11 +366,20 @@
     </div>
     <div class="diy-table-1">
       <el-row :gutter="0">
-        <el-col :span="12" class="item">
+        <el-col :span="8" class="item">
           <div class="label">审批人</div>
           <div class="value">{{ userName }}</div>
         </el-col>
-        <el-col :span="12" class="item">
+        <el-col :span="8" class="item">
+          <div class="label">是否计划单</div>
+          <div class="value">
+            <el-radio-group v-model="examineForm.isPlanOrder">
+              <el-radio :label="true">是</el-radio>
+              <el-radio :label="false">否</el-radio>
+            </el-radio-group>
+          </div>
+        </el-col>
+        <el-col :span="8" class="item">
           <div class="label">审批结果</div>
           <div class="value">
             <el-radio-group v-model="examineForm.examineResult">
@@ -249,17 +390,24 @@
         </el-col>
         <el-col :span="24" class="item">
           <div class="label">审批说明</div>
-          <div class="value"><el-input v-model="examineForm.remark" placeholder="请输入内容" /></div>
+          <div class="value">
+            <el-input v-model="examineForm.remark" placeholder="请输入内容" />
+          </div>
         </el-col>
       </el-row>
     </div>
 
     <div class="page-footer">
       <div class="footer">
-        <el-button type="primary" :loading="formLoading" @click="clickSubmitForm">{{ formLoading ? '提交中 ...' : '提 交' }}</el-button>
+        <el-button
+          type="primary"
+          :loading="formLoading"
+          @click="clickSubmitForm"
+          >{{ formLoading ? "提交中 ..." : "提 交" }}</el-button
+        >
         <el-popconfirm
           title="确定关闭吗?"
-          style="margin-left: 10px;"
+          style="margin-left: 10px"
           @onConfirm="goBack"
         >
           <el-button slot="reference">返回列表</el-button>
@@ -268,41 +416,80 @@
     </div>
 
     <el-dialog title="添加产品" :visible.sync="isShowGoodsDialog" width="80%">
-      <el-form ref="goodsScreenForm" :model="goodsScreenForm" size="small" label-position="left">
+      <el-form
+        ref="goodsScreenForm"
+        :model="goodsScreenForm"
+        size="small"
+        label-position="left"
+      >
         <el-row :gutter="20">
           <el-col :xs="12" :sm="6" :lg="6">
             <el-form-item prop="salesType">
-              <el-select v-model="goodsScreenForm.salesType" placeholder="选择销售类型" style="width: 100%" clearable>
-                <el-option v-for="item in salesTypeList" :key="item.id" :label="item.saleName" :value="item.id" />
+              <el-select
+                v-model="goodsScreenForm.salesType"
+                placeholder="选择销售类型"
+                style="width: 100%"
+                clearable
+              >
+                <el-option
+                  v-for="item in salesTypeList"
+                  :key="item.id"
+                  :label="item.saleName"
+                  :value="item.id"
+                />
               </el-select>
             </el-form-item>
           </el-col>
           <el-col :xs="12" :sm="6" :lg="6">
             <el-form-item prop="proNum">
-              <el-input v-model="goodsScreenForm.proNum" placeholder="请输入产品编码" />
+              <el-input
+                v-model="goodsScreenForm.proNum"
+                placeholder="请输入产品编码"
+              />
             </el-form-item>
           </el-col>
           <el-col :xs="12" :sm="6" :lg="6">
             <el-form-item prop="proName">
-              <el-input v-model="goodsScreenForm.proName" placeholder="请输入产品名称" />
+              <el-input
+                v-model="goodsScreenForm.proName"
+                placeholder="请输入产品名称"
+              />
             </el-form-item>
           </el-col>
           <el-col :xs="12" :sm="6" :lg="6">
             <el-form-item prop="proModel">
-              <el-input v-model="goodsScreenForm.proModel" placeholder="请输入产品型号" />
+              <el-input
+                v-model="goodsScreenForm.proModel"
+                placeholder="请输入产品型号"
+              />
             </el-form-item>
           </el-col>
           <el-col :xs="12" :sm="6" :lg="6">
             <el-form-item prop="price1" style="display: flex">
-              <el-input v-model="goodsScreenForm.price1" placeholder="请输入价格" style="width: 46%" />
+              <el-input
+                v-model="goodsScreenForm.price1"
+                placeholder="请输入价格"
+                style="width: 46%"
+              />
               <span> - </span>
-              <el-input v-model="goodsScreenForm.price2" placeholder="请输入价格" style="width: 46%" />
+              <el-input
+                v-model="goodsScreenForm.price2"
+                placeholder="请输入价格"
+                style="width: 46%"
+              />
             </el-form-item>
           </el-col>
           <el-col :xs="12" :sm="18" :lg="18" class="tr">
             <el-form-item label="">
-              <el-button size="small" @click="resetGoodsScreenForm">清空</el-button>
-              <el-button size="small" type="primary" @click="submitGoodsScreenForm">搜索</el-button>
+              <el-button size="small" @click="resetGoodsScreenForm"
+                >清空</el-button
+              >
+              <el-button
+                size="small"
+                type="primary"
+                @click="submitGoodsScreenForm"
+                >搜索</el-button
+              >
             </el-form-item>
           </el-col>
         </el-row>
@@ -310,12 +497,50 @@
 
       <div class="tables">
         <div class="table">
-          <el-table :data="leftGoodsList" element-loading-text="Loading" border fit highlight-current-row stripe height="400" @selection-change="leftSelectionChange">
-            <el-table-column align="center" type="selection" width="55" :selectable="checkboxSelect" />
-            <el-table-column align="center" label="产品编码" prop="number" min-width="100" show-overflow-tooltip />
-            <el-table-column align="center" label="产品名称" prop="name" min-width="160" show-overflow-tooltip />
-            <el-table-column align="center" label="产品型号" prop="specification" min-width="160" show-overflow-tooltip />
-            <el-table-column align="center" label="产品价格" prop="batchPrice" min-width="80" show-overflow-tooltip />
+          <el-table
+            :data="leftGoodsList"
+            element-loading-text="Loading"
+            border
+            fit
+            highlight-current-row
+            stripe
+            height="400"
+            @selection-change="leftSelectionChange"
+          >
+            <el-table-column
+              align="center"
+              type="selection"
+              width="55"
+              :selectable="checkboxSelect"
+            />
+            <el-table-column
+              align="center"
+              label="产品编码"
+              prop="number"
+              min-width="100"
+              show-overflow-tooltip
+            />
+            <el-table-column
+              align="center"
+              label="产品名称"
+              prop="name"
+              min-width="160"
+              show-overflow-tooltip
+            />
+            <el-table-column
+              align="center"
+              label="产品型号"
+              prop="specification"
+              min-width="160"
+              show-overflow-tooltip
+            />
+            <el-table-column
+              align="center"
+              label="产品价格"
+              prop="batchPrice"
+              min-width="80"
+              show-overflow-tooltip
+            />
           </el-table>
           <div class="pagination clearfix" style="margin-top: 10px">
             <div class="fr">
@@ -331,18 +556,59 @@
           </div>
         </div>
         <div class="buttons">
-          <el-button size="small" type="primary" @click="addAllGoods">全部添加</el-button>
-          <el-button size="small" type="primary" @click="addGoods">添&emsp;加</el-button>
-          <el-button size="small" type="danger" @click="deleteGoods">删&emsp;除</el-button>
-          <el-button size="small" type="danger" @click="deleteAllGoods">全部删除</el-button>
+          <el-button size="small" type="primary" @click="addAllGoods"
+            >全部添加</el-button
+          >
+          <el-button size="small" type="primary" @click="addGoods"
+            >添&emsp;加</el-button
+          >
+          <el-button size="small" type="danger" @click="deleteGoods"
+            >删&emsp;除</el-button
+          >
+          <el-button size="small" type="danger" @click="deleteAllGoods"
+            >全部删除</el-button
+          >
         </div>
         <div class="table">
-          <el-table :data="rightGoodsList" element-loading-text="Loading" border fit highlight-current-row stripe height="400" @selection-change="rightSelectionChange">
+          <el-table
+            :data="rightGoodsList"
+            element-loading-text="Loading"
+            border
+            fit
+            highlight-current-row
+            stripe
+            height="400"
+            @selection-change="rightSelectionChange"
+          >
             <el-table-column align="center" type="selection" width="55" />
-            <el-table-column align="center" label="产品编码" prop="number" min-width="100" show-overflow-tooltip />
-            <el-table-column align="center" label="产品名称" prop="name" min-width="160" show-overflow-tooltip />
-            <el-table-column align="center" label="产品型号" prop="specification" min-width="160" show-overflow-tooltip />
-            <el-table-column align="center" label="产品价格" prop="batchPrice" min-width="80" show-overflow-tooltip />
+            <el-table-column
+              align="center"
+              label="产品编码"
+              prop="number"
+              min-width="100"
+              show-overflow-tooltip
+            />
+            <el-table-column
+              align="center"
+              label="产品名称"
+              prop="name"
+              min-width="160"
+              show-overflow-tooltip
+            />
+            <el-table-column
+              align="center"
+              label="产品型号"
+              prop="specification"
+              min-width="160"
+              show-overflow-tooltip
+            />
+            <el-table-column
+              align="center"
+              label="产品价格"
+              prop="batchPrice"
+              min-width="80"
+              show-overflow-tooltip
+            />
           </el-table>
         </div>
       </div>
@@ -352,42 +618,46 @@
         <el-button type="primary" @click="submitAddGoods">确 定</el-button>
       </span>
     </el-dialog>
-
   </div>
 </template>
 
 <script>
-import { getEnginDetail, getRetailProductList, examineEngin } from '@/api/supply/engin'
-import { getTypeList, getSalesmanList, getDictList } from '@/api/common'
-import { mapGetters } from 'vuex'
+import {
+  getEnginDetail,
+  getRetailProductList,
+  examineEngin,
+} from "@/api/supply/engin";
+import { getTypeList, getSalesmanList, getDictList } from "@/api/common";
+import { mapGetters } from "vuex";
 
 export default {
-  name: 'EnginExamine',
-  componentName: 'EnginExamine',
+  name: "EnginExamine",
+  componentName: "EnginExamine",
   filters: {
     statusFilter(val) {
       const statusList = [
-        { label: '已保存', value: 'SAVE' },
-        { label: '待审核', value: 'WAIT' },
-        { label: '审核通过', value: 'OK' },
+        { label: "已保存", value: "SAVE" },
+        { label: "待审核", value: "WAIT" },
+        { label: "审核通过", value: "OK" },
         // { label: '审核驳回', value: 'FAIL' },,
-        { label: '已关闭', value: 'CLOSE' }
-      ]
-      const obj = statusList.find(o => o.value == val)
-      return obj ? obj.label : ''
-    }
+        { label: "已关闭", value: "CLOSE" },
+      ];
+      const obj = statusList.find((o) => o.value == val);
+      return obj ? obj.label : "";
+    },
   },
-  props: ['listItem'],
+  props: ["listItem"],
   data() {
     return {
       detailData: {},
       goodsList: [],
-      userName: JSON.parse(localStorage.getItem('supply_user')).nickName,
+      userName: JSON.parse(localStorage.getItem("supply_user")).nickName,
 
       formLoading: false,
       examineForm: {
         examineResult: true,
-        remark: ''
+        remark: "",
+        isPlanOrder: "",
       },
       salesTypeList: [],
       salesmanList: [],
@@ -395,27 +665,27 @@ export default {
       loginTypeList: [],
       powerList: [],
       tradeCategoryList: [
-        { value: '房地产', label: '房地产' },
-        { value: '公共建筑', label: '公共建筑' },
-        { value: '工业制造', label: '工业制造' },
-        { value: '商业项目', label: '商业项目' },
-        { value: '采暖及清洁能源', label: '采暖及清洁能源' },
-        { value: '轨道交通', label: '轨道交通' },
-        { value: '数据通讯', label: '数据通讯' },
-        { value: '冷冻冷藏', label: '冷冻冷藏' },
-        { value: '高端制造', label: '高端制造' },
-        { value: '医院医疗', label: '医院医疗' },
-        { value: '其他', label: '其他' }
+        { value: "房地产", label: "房地产" },
+        { value: "公共建筑", label: "公共建筑" },
+        { value: "工业制造", label: "工业制造" },
+        { value: "商业项目", label: "商业项目" },
+        { value: "采暖及清洁能源", label: "采暖及清洁能源" },
+        { value: "轨道交通", label: "轨道交通" },
+        { value: "数据通讯", label: "数据通讯" },
+        { value: "冷冻冷藏", label: "冷冻冷藏" },
+        { value: "高端制造", label: "高端制造" },
+        { value: "医院医疗", label: "医院医疗" },
+        { value: "其他", label: "其他" },
       ],
 
       isShowGoodsDialog: false,
       goodsScreenForm: {
-        proNum: '',
-        proName: '',
-        proModel: '',
-        price1: '',
-        price2: '',
-        salesType: ''
+        proNum: "",
+        proName: "",
+        proModel: "",
+        price1: "",
+        price2: "",
+        salesType: "",
       },
       currentPage: 1,
       listTotal: 0,
@@ -425,12 +695,12 @@ export default {
 
       leftSelection: [],
       rightSelection: [],
-      examineStatus: ''
-    }
+      examineStatus: "",
+    };
   },
 
   computed: {
-    ...mapGetters(['isCustomer'])
+    ...mapGetters(["isCustomer"]),
   },
 
   watch: {
@@ -438,50 +708,50 @@ export default {
       handler(newValue, oldValue) {
         if (newValue && newValue.length) {
           newValue.forEach((item, index) => {
-            this.goodsList[index].compute_amount = item.price * item.qty
-          })
+            this.goodsList[index].compute_amount = item.price * item.qty;
+          });
         }
       },
       immediate: true,
-      deep: true
-    }
+      deep: true,
+    },
   },
 
   created() {
-    this.getDetail()
-    this.getTypeList()
-    this.getSalesmanList()
-    this.getDictList()
+    this.getDetail();
+    this.getTypeList();
+    this.getSalesmanList();
+    this.getDictList();
   },
 
   methods: {
     // 返回列表
     goBack() {
-      this.$emit('backListFormDetail')
+      this.$emit("backListFormDetail");
     },
 
     // 获取详情
     getDetail() {
-      getEnginDetail({ id: this.listItem.enginInfoId }).then(res => {
-        this.detailData = res.data
-        this.examineStatus = res.data.examineStatus
-        res.data.items.forEach(item => {
-          item.sums1 = ['qty', 'hasOrderQty', 'hasDeliverQty']
-          item.sums2 = ['compute_amount', 'price']
-          item.cid = item.id
-        })
-        this.goodsList = res.data.items
-      })
+      getEnginDetail({ id: this.listItem.enginInfoId }).then((res) => {
+        this.detailData = res.data;
+        this.examineStatus = res.data.examineStatus;
+        res.data.items.forEach((item) => {
+          item.sums1 = ["qty", "hasOrderQty", "hasDeliverQty"];
+          item.sums2 = ["compute_amount", "price"];
+          item.cid = item.id;
+        });
+        this.goodsList = res.data.items;
+      });
     },
 
     // 获取销售类型列表
     getTypeList() {
       getTypeList({
         pageNum: 1,
-        pageSize: -1
+        pageSize: -1,
       }).then((res) => {
-        this.salesTypeList = res.data.records
-      })
+        this.salesTypeList = res.data.records;
+      });
     },
 
     getSalesmanList() {
@@ -489,23 +759,23 @@ export default {
         pageNum: 1,
         pageSize: -1,
         isCustomer: 0,
-        status: true
-      }).then(res => {
-        this.salesmanList = res.data.records
-      })
+        status: true,
+      }).then((res) => {
+        this.salesmanList = res.data.records;
+      });
     },
 
     // 获取产品大类列表
     getDictList() {
-      getDictList({ sysDictEnum: 'MACHINE_TYPE' }).then(res => {
-        this.machineTypeList = res.data
-      })
-      getDictList({ sysDictEnum: 'POWER_CATEGORY' }).then(res => {
-        this.powerList = res.data
-      })
-      getDictList({ sysDictEnum: 'SIGN_TYPE' }).then(res => {
-        this.loginTypeList = res.data
-      })
+      getDictList({ sysDictEnum: "MACHINE_TYPE" }).then((res) => {
+        this.machineTypeList = res.data;
+      });
+      getDictList({ sysDictEnum: "POWER_CATEGORY" }).then((res) => {
+        this.powerList = res.data;
+      });
+      getDictList({ sysDictEnum: "SIGN_TYPE" }).then((res) => {
+        this.loginTypeList = res.data;
+      });
     },
 
     // 获取商品列表
@@ -518,126 +788,136 @@ export default {
         materialName: this.goodsScreenForm.proName,
         specification: this.goodsScreenForm.proModel,
         price1: this.goodsScreenForm.price1,
-        price2: this.goodsScreenForm.price2
-      }).then(res => {
-        const oldGoodsList = this.goodsList
-        const newGoodsList = res.data.records
+        price2: this.goodsScreenForm.price2,
+      }).then((res) => {
+        const oldGoodsList = this.goodsList;
+        const newGoodsList = res.data.records;
         for (let i = 0; i < oldGoodsList.length; i++) {
-          const oldItem = oldGoodsList[i]
+          const oldItem = oldGoodsList[i];
           for (let j = 0; j < newGoodsList.length; j++) {
-            const newItem = newGoodsList[j]
+            const newItem = newGoodsList[j];
             if (newItem.id === oldItem.id) {
-              newGoodsList[j].selected = true
-              break
+              newGoodsList[j].selected = true;
+              break;
             }
           }
         }
-        res.data.records.forEach(item => {
-          item.materialName = item.name
-          item.materialCode = item.number
-          item.saleTypeName = item.saleName
-          item.unit = item.baseUnit
-          item.price = item.batchPrice
-          item.tax = item.taxRate
-          item.isDirectTransfer = false
-          item.directTransferQty = ''
-          item.status1 = ''
-          item.status2 = ''
-          item.rebateAmount = ''
-          item.rebateRate = ''
-          item.productPriceId = item.id
+        res.data.records.forEach((item) => {
+          item.materialName = item.name;
+          item.materialCode = item.number;
+          item.saleTypeName = item.saleName;
+          item.unit = item.baseUnit;
+          item.price = item.batchPrice;
+          item.tax = item.taxRate;
+          item.isDirectTransfer = false;
+          item.directTransferQty = "";
+          item.status1 = "";
+          item.status2 = "";
+          item.rebateAmount = "";
+          item.rebateRate = "";
+          item.productPriceId = item.id;
           // item.customerWalletId = (item.wallets && item.wallets.length) ? item.wallets[0].customerWalletId : '';
-        })
-        this.leftGoodsList = res.data.records
-        this.listTotal = res.data.total
-      })
+        });
+        this.leftGoodsList = res.data.records;
+        this.listTotal = res.data.total;
+      });
     },
 
     // 查询重复值并禁选
     checkboxSelect(row, rowIndex) {
       if (row.selected) {
-        return false // 禁用
+        return false; // 禁用
       } else {
-        return true // 不禁用
+        return true; // 不禁用
       }
     },
 
     // 点击 选择商品
     openDialog() {
-      this.isShowGoodsDialog = true
-      this.getGoodsList()
+      this.isShowGoodsDialog = true;
+      this.getGoodsList();
     },
 
     // 提交筛选表单
     submitGoodsScreenForm() {
-      this.currentPage = 1
-      this.getGoodsList()
+      this.currentPage = 1;
+      this.getGoodsList();
     },
 
     // 重置筛选表单
     resetGoodsScreenForm() {
-      this.$refs.goodsScreenForm.resetFields()
-      this.currentPage = 1
-      this.getGoodsList()
+      this.$refs.goodsScreenForm.resetFields();
+      this.currentPage = 1;
+      this.getGoodsList();
     },
 
     // 更改列表当前页
     handleTableCurrentChange(val) {
-      this.currentPage = val
-      this.getGoodsList()
+      this.currentPage = val;
+      this.getGoodsList();
     },
 
     // 关闭 弹窗
     closeDialog() {
-      this.isShowGoodsDialog = false
+      this.isShowGoodsDialog = false;
     },
 
     // 左侧列表选择
     leftSelectionChange(val) {
-      this.leftSelection = val
+      this.leftSelection = val;
     },
 
     // 右侧列表选择
     rightSelectionChange(val) {
-      this.rightSelection = val
+      this.rightSelection = val;
     },
 
     // 数组去重
     delRepeat(arr1, arr2) {
-      const allArr = arr1.concat(arr2) // 两个数组对象合并
-      const newArr = [] // 存放去重后数据的新数组
-      for (let i = 0; i < allArr.length; i++) { // 循环allArr数组对象的内容
-        let flag = true // 建立标记,判断数据是否重复,true为不重复
-        for (let j = 0; j < newArr.length; j++) { // 循环新数组的内容
-          if (allArr[i].id == newArr[j].id) { // 让allArr数组对象的内容与新数组的内容作比较,相同的话,改变标记为false
-            flag = false
+      const allArr = arr1.concat(arr2); // 两个数组对象合并
+      const newArr = []; // 存放去重后数据的新数组
+      for (let i = 0; i < allArr.length; i++) {
+        // 循环allArr数组对象的内容
+        let flag = true; // 建立标记,判断数据是否重复,true为不重复
+        for (let j = 0; j < newArr.length; j++) {
+          // 循环新数组的内容
+          if (allArr[i].id == newArr[j].id) {
+            // 让allArr数组对象的内容与新数组的内容作比较,相同的话,改变标记为false
+            flag = false;
           }
         }
-        if (flag) { // 判断是否重复
-          newArr.push(allArr[i]) // 不重复的放入新数组。  新数组的内容会继续进行上边的循环。
+        if (flag) {
+          // 判断是否重复
+          newArr.push(allArr[i]); // 不重复的放入新数组。  新数组的内容会继续进行上边的循环。
         }
       }
-      return newArr
+      return newArr;
     },
 
     // 全部添加
     addAllGoods() {
-      this.rightGoodsList = this.delRepeat(this.leftGoodsList, this.rightGoodsList)
+      this.rightGoodsList = this.delRepeat(
+        this.leftGoodsList,
+        this.rightGoodsList
+      );
     },
 
     // 添加
     addGoods() {
-      this.rightGoodsList = this.delRepeat(this.leftSelection, this.rightGoodsList)
+      this.rightGoodsList = this.delRepeat(
+        this.leftSelection,
+        this.rightGoodsList
+      );
     },
 
     // 删除
     deleteGoods() {
-      const rightGoodsList = this.rightGoodsList
-      const rightSelection = this.rightSelection
+      const rightGoodsList = this.rightGoodsList;
+      const rightSelection = this.rightSelection;
       for (let i = 0; i < rightGoodsList.length; i++) {
         for (let j = 0; j < rightSelection.length; j++) {
           if (rightSelection[j].materialId == rightGoodsList[i].materialId) {
-            this.rightGoodsList.splice(i, 1)
+            this.rightGoodsList.splice(i, 1);
           }
         }
       }
@@ -645,107 +925,126 @@ export default {
 
     // 全部删除
     deleteAllGoods() {
-      this.rightGoodsList = []
+      this.rightGoodsList = [];
     },
 
     // 确定 添加产品
     submitAddGoods() {
       // this.goodsList = this.delRepeat(this.rightGoodsList, this.goodsList);
-      this.goodsList = this.goodsList.concat(this.rightGoodsList)
-      this.goodsList = this.goodsList.concat(this.rightGoodsList)
-      this.goodsList.forEach(k => {
-        k.cid = ''
-      })
-      this.isShowGoodsDialog = false
-      this.leftGoodsList = []
-      this.rightGoodsList = []
+      this.goodsList = this.goodsList.concat(this.rightGoodsList);
+      this.goodsList = this.goodsList.concat(this.rightGoodsList);
+      this.goodsList.forEach((k) => {
+        k.cid = "";
+      });
+      this.isShowGoodsDialog = false;
+      this.leftGoodsList = [];
+      this.rightGoodsList = [];
     },
 
     // 删除产品
     deleteItem(index, id) {
-      if (this.listItem && this.examineStatus === 'OK' && id) {
-        this.$errorMsg('不能删除')
-        return
+      if (this.listItem && this.examineStatus === "OK" && id) {
+        this.$errorMsg("不能删除");
+        return;
       }
-      this.goodsList.splice(index, 1)
+      this.goodsList.splice(index, 1);
     },
 
     clickSubmitForm() {
-      if (!this.detailData.serviceId) {
-        return this.$errorMsg('请选择业务员')
-      }
-      this.$confirm('此操作将审批订单, 是否继续?', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-      }).then(() => {
-        const saleManItem = this.salesmanList.find(o => o.adminUserId == this.detailData.serviceId)
-        const params = JSON.parse(JSON.stringify(this.detailData))
-        params.enginInfoId = this.listItem.enginInfoId
-        params.mainId = this.listItem.mainId
-        params.examineResult = this.examineForm.examineResult
-        params.examineNote = this.examineForm.remark
-        params.serviceName = saleManItem.nickName
-        params.items = this.goodsList
-        this.formLoading = true
-        examineEngin(params).then(res => {
-          this.$successMsg('审批成功')
-          this.goBack()
-          this.$parent.getList()
-        }).finally(res => {
-          this.formLoading = false
+      this.$confirm("请确认信息单是否未计划单,请勾选是否计划单选项", "提示", {
+        confirmButtonText: "是计划单",
+        cancelButtonText: "不是计划单",
+        type: "warning",
+      })
+        .then(() => {
+          this.examineForm.isPlanOrder = true;
         })
-      }).catch(() => {})
-    }
+        .catch(() => {
+          this.examineForm.isPlanOrder = false;
+        })
+        .finally(() => {
+          if (!this.detailData.serviceId) {
+            return this.$errorMsg("请选择业务员");
+          }
+          this.$confirm("此操作将审批订单, 是否继续?", "提示", {
+            confirmButtonText: "确定",
+            cancelButtonText: "取消",
+            type: "warning",
+          })
+            .then(() => {
+              const saleManItem = this.salesmanList.find(
+                (o) => o.adminUserId == this.detailData.serviceId
+              );
+              const params = JSON.parse(JSON.stringify(this.detailData));
+              params.enginInfoId = this.listItem.enginInfoId;
+              params.mainId = this.listItem.mainId;
+              params.examineResult = this.examineForm.examineResult;
+              params.examineNote = this.examineForm.remark;
+              params.isPlanOrder = this.examineForm.isPlanOrder;
+              params.serviceName = saleManItem.nickName;
+              params.items = this.goodsList;
+              this.formLoading = true;
+              examineEngin(params)
+                .then((res) => {
+                  this.$successMsg("审批成功");
+                  this.goBack();
+                  this.$parent.getList();
+                })
+                .finally((res) => {
+                  this.formLoading = false;
+                });
+            })
+            .catch(() => {});
+        });
+    },
+  },
+};
+</script>
 
+<style scoped lang="scss">
+.detail-container {
+  width: 100%;
+  height: 100%;
+}
+.main-title {
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  margin-top: 20px;
+  height: 60px;
+  border-bottom: 1px solid #dcdfe6;
+  margin-bottom: 20px;
+  .title {
+    font-size: 16px;
+    font-weight: 600;
+    padding-left: 10px;
   }
 }
-</script>
 
-<style scoped lang="scss">
-  .detail-container {
-    width: 100%;
-    height: 100%;
+.tables {
+  display: flex;
+  margin-top: 10px;
+  .table {
+    width: 45%;
   }
-  .main-title {
+  .buttons {
     display: flex;
-    justify-content: space-between;
+    flex-direction: column;
+    justify-content: center;
     align-items: center;
-    margin-top: 20px;
-    height: 60px;
-    border-bottom: 1px solid #DCDFE6;
-    margin-bottom: 20px;
-    .title {
-      font-size: 16px;
-      font-weight: 600;
-      padding-left: 10px;
-    }
-  }
-
-  .tables {
-    display: flex;
-    margin-top: 10px;
-    .table {
-      width: 45%;
-    }
-    .buttons {
-      display: flex;
-      flex-direction: column;
-      justify-content: center;
-      align-items: center;
-      padding: 0 10px;
-      button {
-        margin: 0;
-        margin-top: 10px;
-      }
+    padding: 0 10px;
+    button {
+      margin: 0;
+      margin-top: 10px;
     }
   }
+}
 
-  ::v-deep input::-webkit-outer-spin-button,
-  ::v-deep input::-webkit-inner-spin-button {
-    -webkit-appearance: none;
-  }
-  ::v-deep input[type='number'] {
-    -moz-appearance: textfield;
-  }
+::v-deep input::-webkit-outer-spin-button,
+::v-deep input::-webkit-inner-spin-button {
+  -webkit-appearance: none;
+}
+::v-deep input[type="number"] {
+  -moz-appearance: textfield;
+}
 </style>