Jelajahi Sumber

增加主表序号,界面优化。

DongZ 1 tahun lalu
induk
melakukan
94daea8435

+ 8 - 1
src/api/business/spd/task_management/visitingPlan/visitingPlan.js

@@ -53,6 +53,13 @@ export function delPlan(id) {
         method: 'delete'
     })
 }
+//拜访计划明细删除
+export function delPlanItem(id) {
+    return request({
+        url: '/mk/bo/item/' + id,
+        method: 'delete'
+    })
+}
 // 采购需求单导出
 export function exportPlan(data) {
     return request({
@@ -61,4 +68,4 @@ export function exportPlan(data) {
       data: data,
       responseType: 'blob'
     })
-  }
+}

+ 151 - 151
src/views/business/spd/task_management/visitingPlan/add.vue

@@ -4,6 +4,7 @@
       <span>基本信息</span>
       <el-form :model="basicForm" :rules="basicRules" ref="basic" label-width="auto">
         <el-row :gutter="10">
+
           <el-col :span="1.5">
               <el-form-item label="计划编码">
                 <el-input
@@ -20,7 +21,7 @@
               <el-input
                 v-model.trim="basicForm.planName"
                 size="mini"
-                :disabled="sonDisable"
+                :readonly="sonDisable"
                 clearable
                 style="width: 200px"
               />
@@ -28,6 +29,15 @@
          </el-col>
 
          <el-col :span="1.5">
+            <el-form-item label="线路类型" prop="type">
+              <el-select :disabled="sonDisable" v-model="basicForm.type" size="mini" style="width: 200px">
+                <el-option v-for="dict in dict.type.mk_plan_route_type" :key="dict.value" :label="dict.label" :value="dict.value">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="1.5">
             <el-form-item label="执行人" prop="chargerName">
                 <el-select clearable size="mini" v-model="basicForm.chargerName" :disabled="sonDisable" @focus="choose('CONTACTS_PARAM', true, '执行人')" style="width: 200px">
                   <el-option v-for="item in personOptions" :key="item.id" :label="item.name" :value="item.code" />
@@ -36,6 +46,19 @@
           </el-col>
 
           <el-col :span="1.5">
+            <el-form-item label="确认状态" prop="state">
+              <el-select disabled v-model="basicForm.state" size="mini" style="width: 200px">
+                <el-option v-for="dict in dict.type.mk_plan_state" :key="dict.value" :label="dict.label" :value="dict.value">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+
+        </el-row>
+
+        <el-row :gutter="10">
+
+          <el-col :span="1.5">
             <el-form-item label="开始时间" prop="startDate" :rules="{ required: true, message: '请选择开始时间', trigger: 'blur' }">
               <el-date-picker
                 v-model="basicForm.startDate"
@@ -43,7 +66,6 @@
                 clearable
                 type="date"
                 value-format="yyyy-MM-dd"
-                @change="changePlanDate"
                 size="mini"
                 style="width: 200px"
               >
@@ -59,7 +81,6 @@
                 clearable
                 type="date"
                 value-format="yyyy-MM-dd"
-                @change="changePlanDate"
                 size="mini"
                 style="width: 200px"
               >
@@ -93,19 +114,13 @@
             </el-form-item>
           </el-col>
 
-          <el-col :span="1.5">
-            <el-form-item label="确认状态" prop="state">
-              <el-select disabled v-model="basicForm.state" size="mini" style="width: 200px">
-                <el-option v-for="dict in dict.type.mk_plan_state" :key="dict.value" :label="dict.label" :value="dict.value">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </el-col>
         </el-row>
 
         <span>明细信息</span>
         <div class="btn_grooup">
           <el-button type="primary" size="mini" @click="addLine" v-if="!sonDisable">增行</el-button>
+          <el-button type="primary" size="mini" @click="delItems" v-if="sonPageStu == 'edit'">批量删除</el-button>
+          <el-button type="primary" size="mini" @click="edit" v-if="sonPageStu == 'check'">编辑</el-button>
         </div>
 
         <el-table 
@@ -116,82 +131,82 @@
           @selection-change="handleSelectionChange"
           :cell-class-name="cellClassName"
         >
-        <el-table-column show-overflow-tooltip type="selection"/>
-        <el-table-column show-overflow-tooltip label="序号" type="index" align="center"/>
-        <el-table-column show-overflow-tooltip label="计划编号" prop="planCode" width="150"/>
-        <el-table-column show-overflow-tooltip label="日期"  prop="date" width="230px">
-          <template slot-scope="scope">
-            <el-form-item class="hang" :prop="'mkBoPlanItemList.' + scope.$index + '.' + 'date'" :rules="{ required: true, message: '请填写日期', trigger: 'blur' }">
-              <el-date-picker
-                v-model="scope.row.date"
-                :readonly="sonDisable"
-                clearable
-                type="date"
-                size="mini"
-                value-format="yyyy-MM-dd"
-                placeholder="选择日期">
-              </el-date-picker>
-            </el-form-item>
-          </template>
-        </el-table-column>
+          <el-table-column type="selection" align="center"/>
+          <el-table-column label="序号" type="index" align="center"/>
+          <el-table-column show-overflow-tooltip label="计划编号" prop="planCode" width="150"/>
+          <el-table-column show-overflow-tooltip label="日期"  prop="date" width="230px">
+            <template slot-scope="scope">
+              <el-form-item class="hang" :prop="'mkBoPlanItemList.' + scope.$index + '.' + 'date'" :rules="{ required: true, message: '请填写日期', trigger: 'blur' }">
+                <el-date-picker
+                  v-model="scope.row.date"
+                  readonly
+                  clearable
+                  type="date"
+                  size="mini"
+                  value-format="yyyy-MM-dd"
+                  placeholder="选择日期">
+                </el-date-picker>
+              </el-form-item>
+            </template>
+          </el-table-column>
 
-        <el-table-column show-overflow-tooltip label="客户名称" prop="customerName" min-width="230">
-          <template slot-scope="scope">
-            <el-form-item class="hang">
-              <el-select clearable size="mini" v-model="scope.row.customerName" :disabled="sonDisable" @focus="chooseSon(scope.$index, 'CUSTOMER_PARAM_ZT', true, '客户')" style="width: 200px">
-                <el-option v-for="item in customerOptions" :key="item.id" :label="item.name" :value="item.code" />
-              </el-select>
-            </el-form-item>
-          </template>
-        </el-table-column>
+          <el-table-column show-overflow-tooltip label="客户名称" prop="customerName" min-width="230">
+            <template slot-scope="scope">
+              <el-form-item class="hang">
+                <el-select clearable size="mini" v-model="scope.row.customerName" :disabled="sonDisable" @focus="chooseSon(scope.$index, 'CUSTOMER_PARAM_ZT', true, '客户')" style="width: 200px">
+                  <el-option v-for="item in customerOptions" :key="item.id" :label="item.name" :value="item.code" />
+                </el-select>
+              </el-form-item>
+            </template>
+          </el-table-column>
 
-        <el-table-column show-overflow-tooltip label="联系人" prop="contactName" min-width="230">
-          <template slot-scope="scope">
-            <el-form-item class="hang">
-              <el-select clearable size="mini" v-model="scope.row.contactName" :disabled="sonDisable" @focus="chooseSon(scope.$index, 'LINKMAN_PARAM', true, '联系人', {})" style="width: 200px">
-                <el-option v-for="item in linkOptions" :key="item.id" :label="item.name" :value="item.code" />
-              </el-select>
-            </el-form-item>
-          </template>
-        </el-table-column>
+          <el-table-column show-overflow-tooltip label="联系人" prop="contactName" min-width="230">
+            <template slot-scope="scope">
+              <el-form-item class="hang">
+                <el-select clearable size="mini" v-model="scope.row.contactName" :disabled="sonDisable" @focus="chooseSon(scope.$index, 'LINKMAN_PARAM', true, '联系人', {})" style="width: 200px">
+                  <el-option v-for="item in linkOptions" :key="item.id" :label="item.name" :value="item.code" />
+                </el-select>
+              </el-form-item>
+            </template>
+          </el-table-column>
 
-        <el-table-column show-overflow-tooltip label="详细地址" prop="address" min-width="200">
-          <template slot-scope="scope">
-            <el-form-item class="hang">
-              <el-input clearable :readonly="sonDisable" size="mini" v-model="scope.row.address"/>
-            </el-form-item>
-          </template>
-        </el-table-column>
+          <el-table-column show-overflow-tooltip label="详细地址" prop="address" min-width="200">
+            <template slot-scope="scope">
+              <el-form-item class="hang">
+                <el-input clearable :readonly="sonDisable" size="mini" v-model="scope.row.address"/>
+              </el-form-item>
+            </template>
+          </el-table-column>
 
-        <el-table-column show-overflow-tooltip label="拜访目的" prop="purpose" min-width="200">
-          <template slot-scope="scope">
-            <el-form-item class="hang">
-              <el-select clearable v-model="scope.row.purpose" size="mini">
-                <el-option v-for=" dict in dict.type.mk_bo_behavior_goal" :key="dict.value" :label="dict.label" :value="dict.value">
-                </el-option>
-              </el-select>
-            </el-form-item>
-          </template>
-        </el-table-column>
+          <el-table-column show-overflow-tooltip label="拜访目的" prop="purpose" min-width="200">
+            <template slot-scope="scope">
+              <el-form-item class="hang">
+                <el-select clearable :disabled="sonDisable" v-model="scope.row.purpose" size="mini">
+                  <el-option v-for=" dict in dict.type.mk_bo_behavior_goal" :key="dict.value" :label="dict.label" :value="dict.value">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </template>
+          </el-table-column>
 
-        <el-table-column show-overflow-tooltip label="商机" prop="boName" min-width="200"/>
-        <el-table-column show-overflow-tooltip label="营销活动" prop="marketingCampaign" min-width="200">
-          <template slot-scope="scope">
-            <el-form-item class="hang">
-              <el-input clearable :readonly="sonDisable" size="mini" v-model="scope.row.marketingCampaign"/>
-            </el-form-item>
-          </template>
-        </el-table-column>
+          <el-table-column :readonly="sonDisable" show-overflow-tooltip label="商机" prop="boName" min-width="200"/>
+          <el-table-column :readonly="sonDisable" show-overflow-tooltip label="营销活动" prop="marketingCampaign" min-width="200">
+            <template slot-scope="scope">
+              <el-form-item class="hang">
+                <el-input clearable :readonly="sonDisable" size="mini" v-model="scope.row.marketingCampaign"/>
+              </el-form-item>
+            </template>
+          </el-table-column>
 
-        <el-table-column
+          <el-table-column
             fixed="right"
             label="操作"
             align="center"
-            >
-          <template slot-scope="scope">
-            <el-button type="text" size="mini" :disabled="sonDisable" @click="delLine(scope.$index, scope.row)">删除</el-button>
-          </template>
-        </el-table-column>
+          >
+            <template slot-scope="scope">
+              <el-button type="text" size="mini" :disabled="sonDisable" @click="delLine(scope.$index, scope.row)">删除</el-button>
+            </template>
+          </el-table-column>
         </el-table>
       </el-form>
     </el-card>
@@ -209,26 +224,21 @@
 
       <Refers ref="refer" @doSubmit="selectionsToInput" :single="true"/>
 
-      <!-- <popDialog ref="materialRefer" @doSubmit="selectMaterial" :single="true" /> -->
-
     </div>
   </div>
 </template>
 
 <script>
-import {addPlan, getPlanDetail, editPlan} from '@/api/business/spd/task_management/visitingPlan/visitingPlan.js'
+import {addPlan, getPlanDetail, editPlan, delPlanItem} from '@/api/business/spd/task_management/visitingPlan/visitingPlan.js'
 import Refers from '@/components/Refers/refers.vue'
 // 用于回显参照框数据
 import {getRefer} from '@/api/purchase/basic.js'
-// 明细行选择物料参照
-import popDialog from '@/components/PopDialog/index.vue'
 export default {
   name: 'addPlanList',
-  props: ['pageStu','row', 'disable'],
-  dicts: ['mk_plan_state', 'mk_bo_behavior_goal'],
+  props: ['pageStu', 'row', 'disable'],
+  dicts: ['mk_plan_state', 'mk_plan_route_type', 'mk_bo_behavior_goal'],
   components: {
-    Refers,
-    popDialog
+    Refers
   },
   model: {
     prop: 'isList',
@@ -239,9 +249,9 @@ export default {
       // 不能直接改变props传来的值
       sonPageStu: this.pageStu,
       sonDisable: this.disable,
-      dialog: {
-        config: false
-      },
+      // dialog: {
+      //   config: false
+      // },
       basicForm: {
         id: '',
         planId: '',
@@ -249,10 +259,11 @@ export default {
         planName :'',
         charger: '',
         chargerName: '',
+        type: '0',
         dept: '',
         deptName: '',
-        startDate: '',
-        deadlineTime: '',
+        startDate: this.getWeek(1),
+        deadlineTime: this.getWeek(7),
         date: '',
         marketingArea: '',
         marketingAreaName: '',
@@ -269,11 +280,6 @@ export default {
         mkBoPlanItemList: []
       },
       delDemandItemList: [],
-      options: [{
-        value: 'Y', label: '是',
-      }, {
-        value: 'N', label: '否'
-      }],
       basicRules: {},
       tableList: [],
       referCondition: {
@@ -313,17 +319,6 @@ export default {
     }
   },
   methods:{
-    // 改变单据日期时清空子表的日期
-    changePlanDate() {
-      this.basicForm.mkBoPlanItemList.forEach(item => {
-        item.deliveryDate = null
-      })
-    },
-    // 清空
-    cleanYLSL(scope) {
-      scope.row.reservedQty = ''
-      scope.row.reservedPeriod = ''
-    },
     handleData() {
       console.log('222')
       // 复制新增把id,编码,创建人置为空,子表去掉id
@@ -351,31 +346,9 @@ export default {
         if (res.code === 200) {
           // console.log('res', res)
           this.basicForm = res.data
-          for (let i = 0; i < this.basicForm.mkBoPlanItemList.length; i++) {
-            this.basicForm.mkBoPlanItemList[i].planCode = res.data.planCode
-          }
-          // console.log('this.basicForm.mkBoPlanItemList.planCode', this.basicForm.mkBoPlanItemList.planCode)
         }
       })
     },
-    // getDetails(row) {
-    //   getPlanDetail(row.id).then(res => {
-    //     if (res.code === 200) {
-    //       // this.basicForm = res.data
-    //       console.log('res', res)
-    //       let reciveForm = res.data
-    //       let params = {...{id: row.id}, ...{pageNum:1, pageSize: 10}}
-    //       getPlanSonDetail(params.id).then(res => {
-    //         if (res.code === 200) {
-    //         reciveForm.mkBoPlanItemList = res.data
-    //         console.log('reciveForm',reciveForm)
-    //         this.basicForm = reciveForm
-    //         }
-    //       })
-    //     }
-    //   })
-    // },
-
     async save() {
       if(this.basicForm.mkBoPlanItemList.length !== 0) {
         this.$refs['basic'].validate((valid) => {
@@ -436,7 +409,7 @@ export default {
         id: null,
         planId: null,
         planCode: null,
-        date: null,
+        date: this.getCurrentTime(),
         customer: null,
         customerName: null,
         contact: null,
@@ -446,14 +419,6 @@ export default {
         bo: null,
         boName: null,
         marketingCampaign: null,
-        tenantId: null,
-        revision: null,
-        createBy: null,
-        createByName: null,
-        createTime: null,
-        updateBy: null,
-        updateByName: null,
-        updateTime: null,
         delFlag: 0,
         // 新增字段
         model: null,
@@ -462,6 +427,22 @@ export default {
       }
       this.basicForm.mkBoPlanItemList.push(newLine)
     },
+    // 批量删除按钮
+    delItems() {
+      if(this.ids.length == 0) {
+        this.$modal.msgWarning("请选中至少一条数据");
+      } else {
+        let param = this.ids.join()
+        this.$modal.confirm('确认信息').then(() => {
+        delPlanItem(param).then(res => {
+          if (res.code === 200) {
+            this.$modal.msgSuccess("删除成功");
+            this.getDetails(this.row)
+          }
+        })
+        }).catch(() => {})
+      }
+    },
     delLine(index, row) {
       console.log('删除行:', index)
       console.log('改变行:', row)
@@ -480,7 +461,12 @@ export default {
       this.delDemandItemList.push(...delList)
       console.log('删除的数组',this.delDemandItemList)
     },
-
+    edit() {
+      // this.isList = false
+      // this.page = 'edit'
+      // this.rowDetail = row
+      // this.disable = false
+    },
     back() {
       this.$emit('jugislist', true)
       // let queryParams = {
@@ -495,11 +481,16 @@ export default {
         return 'success-row';
       }
     },
+    // handleSelectionChange(selection) {
+    //   this.ids = selection.map(item =>{
+    //     return item.id
+    //   })
+    //   console.log('选中数组', this.ids)
+    // },
     handleSelectionChange(selection) {
-      this.ids = selection.map(item =>{
-        return item.id
-      })
-      console.log('选中数组', this.ids)
+      console.log('选中', selection)
+      this.ids = selection.map(item => item.id)
+      console.log('选中数组', this.ids.join())
     },
     // 回显参照框
     reBackRefer(type, id, title) {
@@ -564,13 +555,22 @@ export default {
         this.basicForm.mkBoPlanItemList[this.tableIndex].contactName = selection[0].name
       }
     },
-    // tableRowClassName({ row, rowIndex }) {
-    //   row.index = rowIndex;
-    // },
-    // rowClick(row){
-    //   this.tableIndex = row.index;
-    //   console.log("row.index",row.index);
-    // }
+    //获取当前时间
+    getCurrentTime() {
+      let date = new Date();
+      return date;
+    },
+    //获取下周七天日期,day表示想要星期几
+    getWeek(day) {
+      const week = [];
+      for (let i = 0; i < 7; i++) {
+        let Stamp = new Date();
+        let num = 7-Stamp.getDay() + 1 + i;
+        Stamp.setDate(Stamp.getDate() + num);
+        week[i] = Stamp.getFullYear() + '-' + (Stamp.getMonth() + 1) + '-' + Stamp.getDate();
+      }
+      return week[day - 1];
+    }
   }
 }
 

+ 72 - 122
src/views/business/spd/task_management/visitingPlan/index.vue

@@ -4,6 +4,7 @@
       <el-card>
         <el-form class="search_area" label-width="100px">
           <el-row :gutter="10">
+            
             <el-col :span="1.5">
               <el-form-item label="计划编码">
                 <el-input
@@ -14,6 +15,7 @@
                 />
               </el-form-item>
             </el-col>
+
             <el-col :span="1.5">
               <el-form-item label="计划名称">
                 <el-input
@@ -24,30 +26,25 @@
                 />
               </el-form-item>
             </el-col>
-            <!-- <el-col :span="1.5">
+            
+            <el-col :span="1.5">
               <el-form-item label="线路类型">
-                <el-select clearable size="mini" v-model="queryParams.type" @focus="chooseOrg('CONTACTS_PARAM', true, '线路类型')" style="width: 200px">
-                  <el-option v-for="item in typeOptions" :key="item.id" :label="item.name" :value="item.code" />
+                <el-select clearable v-model="queryParams.type" size="mini" style="width: 200px">
+                  <el-option v-for=" dict in dict.type.mk_plan_route_type" :key="dict.value" :label="dict.label" :value="dict.value">
+                  </el-option>
                 </el-select>
               </el-form-item>
-            </el-col> -->
+            </el-col>
+
             <el-col :span="1.5">
               <el-form-item label="执行人">
-              <el-select clearable size="mini" v-model="queryParams.chargerName" @focus="chooseOrg('CONTACTS_PARAM', true, '执行人')" style="width: 200px">
+              <el-select clearable size="mini" v-model="queryParams.chargerName" @focus="choose('CONTACTS_PARAM', true, '执行人')" style="width: 200px">
                 <el-option v-for="item in personOptions" :key="item.id" :label="item.name" :value="item.code" />
               </el-select>
               </el-form-item>
             </el-col>
                             
             <el-col :span="1.5">
-              <el-form-item label="确认状态">
-                <el-select clearable v-model="queryParams.state" size="mini" style="width: 200px">
-                  <el-option v-for=" dict in dict.type.mk_plan_state" :key="dict.value" :label="dict.label" :value="dict.value">
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
-            <el-col :span="1.5">
               <el-form-item label="" label-width="20px">
               <el-button type="primary" size="mini" icon="el-icon-search" plain @click="searchList">搜索</el-button>
               <el-button size="mini" icon="el-icon-refresh" plain @click="resetList">重置</el-button>
@@ -58,7 +55,8 @@
           <CollapseTransition>
             <div v-show="expanded">
               <el-row :gutter="10">
-                <el-col :span="1.5">
+
+                <!-- <el-col :span="1.5">
                   <el-form-item label="开始时间">
                     <el-date-picker
                     v-model="queryParams.startDate"
@@ -71,6 +69,7 @@
                     </el-date-picker>
                   </el-form-item>
                 </el-col>
+
                 <el-col :span="1.5">
                   <el-form-item label="截止时间">
                     <el-date-picker
@@ -83,10 +82,11 @@
                     >
                     </el-date-picker>
                   </el-form-item>
-                </el-col>
+                </el-col> -->
+
                 <el-col :span="1.5">
                   <el-form-item label="销售区域">
-                    <el-select clearable v-model="queryParams.marketingAreaName" size="mini" @focus="chooseOrg('DEPT_PARAM', true, '销售区域')" style="width: 200px">
+                    <el-select clearable v-model="queryParams.marketingAreaName" size="mini" @focus="choose('MK_SALESAREA_PARAM', true, '销售区域')" style="width: 200px">
                       <el-option
                         v-for="item in deptOptions"
                         :key="item.id"
@@ -96,9 +96,10 @@
                     </el-select>
                   </el-form-item>
                 </el-col>
+
                 <el-col :span="1.5">
                   <el-form-item label="部门">
-                    <el-select clearable v-model="queryParams.deptName" size="mini" @focus="chooseOrg('DEPT_PARAM', true, '部门')" style="width: 200px">
+                    <el-select clearable v-model="queryParams.deptName" size="mini" @focus="choose('DEPT_PARAM', true, '部门')" style="width: 200px">
                       <el-option
                         v-for="item in deptOptions"
                         :key="item.id"
@@ -108,6 +109,31 @@
                     </el-select>
                   </el-form-item>
                 </el-col>
+
+                <el-col :span="1.5">
+                  <el-form-item label="确认状态">
+                    <el-select clearable v-model="queryParams.state" size="mini" style="width: 200px">
+                      <el-option v-for=" dict in dict.type.mk_plan_state" :key="dict.value" :label="dict.label" :value="dict.value">
+                      </el-option>
+                    </el-select>
+                  </el-form-item>
+                </el-col>
+                
+                <el-col :span="1.5">
+                  <el-form-item label="时间范围">
+                    <el-date-picker
+                      size="mini"
+                      v-model="dateRange"
+                      style="width: 200px"
+                      value-format="yyyy-MM-dd"
+                      type="daterange"
+                      range-separator="-"
+                      start-placeholder="开始日期"
+                      end-placeholder="结束日期"
+                      />
+                  </el-form-item>
+                </el-col>
+
               </el-row>
             </div>
           </CollapseTransition>
@@ -149,7 +175,8 @@
         style="font-size: 12px;"
         @selection-change="handleSelectionChange"
         >
-          <el-table-column show-overflow-tooltip type="selection" width="55" />
+          <el-table-column type="selection" align="center" min-width="55" />
+          <el-table-column type="index" label="序号" min-width="50" align="center"/>
           <el-table-column show-overflow-tooltip label="计划编码" align="center" min-width="200" prop="planCode"/>
           <el-table-column show-overflow-tooltip label="计划名称" align="center" min-width="150" prop="planName"/>
           <el-table-column show-overflow-tooltip label="执行人" align="center" min-width="150" prop="chargerName"/>
@@ -185,79 +212,6 @@
       </el-card>
     </div>
 
-    <!-- 用户导入对话框 -->
-    <el-dialog title="数据导入" :visible.sync="upload.open" width="400px">
-      <el-upload
-      ref="upload"
-      :limit="1"
-      accept=".xlsx, .xls"
-      :headers="upload.headers"
-      :action="upload.url + '?updateSupport=' + upload.updateSupport"
-      :disabled="upload.isUploading"
-      :on-progress="handleFileUploadProgress"
-      :on-success="handleFileSuccess"
-      :on-error="errorFile"
-      :auto-upload="false"
-      drag
-      >
-        <i class="el-icon-upload"></i>
-        <div class="el-upload__text">
-          将文件拖到此处,或
-          <em>点击上传</em>
-        </div>
-        <!-- <div class="el-upload__tip" slot="tip">
-          <el-checkbox v-model="upload.updateSupport" />是否更新已经存在的用户数据
-        </div> -->
-        <div class="el-upload__tip" style="color:red" slot="tip">提示:仅允许导入“xls”或“xlsx”格式文件!</div>
-      </el-upload>
-      <div slot="footer" class="dialog-footer">
-        <el-button size="mini" type="primary" @click="submitFileForm">确 定</el-button>
-        <el-button size="mini" @click="upload.open = false">取 消</el-button>
-      </div>
-    </el-dialog>
-
-    <!-- 模板下载新增参数 -->
-    <el-dialog title="需求模板下载" :visible.sync="download.open" @close="clearDownload" width="400px">
-
-    <el-row style="margin-bottom: 20px;">
-      <span style="margin-right: 10px;">需求客户</span>
-      <el-select clearable size="mini" v-model="download.customer" @clear="download.customer = ''" @focus="chooseOrg('CUSTOMER_PARAM', true, '选择客户')">
-       <el-option v-for="item in mBcustomer" :key="item.id" :label="item.name" :value="item.code" />
-      </el-select>
-    </el-row>
-
-    <!-- <el-row style="margin-bottom: 20px;">
-      <span style="margin-right: 10px;">供应仓库</span>
-      <el-select clearable size="mini" v-model="download.warehouse" @clear="cleanMb" @focus="chooseOrg('WAREHOUSE_PARAM', true, '选择仓库')">
-        <el-option v-for="item in mBwarehouse" :key="item.id" :label="item.name" :value="item.code" />
-      </el-select>
-    </el-row> -->
-
-    <el-row style="margin-bottom: 20px;">
-      <span style="margin-right: 10px;">供应货位</span>
-      <el-select clearable size="mini" v-model="download.cargoSpace" @clear="download.cargoSpace = ''" @focus="mbHuowei('ALLOCATION_PARAM', true, '选择货位', download.warehouseId)">
-        <el-option v-for="item in mBcargoSpace" :key="item.id" :label="item.name" :value="item.code" />
-      </el-select>
-    </el-row>
-
-    <el-row style="margin-bottom: 20px;">
-      <span style="margin-right: 10px;">品类选择</span>
-      <el-select
-      v-model="download.category"
-      size="mini"
-      clearable
-      @focus="chooseTreeRefer('MATERIALCLASSIFY_PARAM', false, '选择品类')"
-      >
-       <el-option v-for="item in classOptions" :key="item.id" :label="item.name" :value="item.code" />
-      </el-select>
-    </el-row>
-
-    <div slot="footer" class="dialog-footer">
-      <el-button size="mini" type="primary" @click="mbDownload">模板下载</el-button>
-      <el-button size="mini" @click="download.open = false">取 消</el-button>
-    </div>
-    </el-dialog>
-
     <Add v-model="isList" v-if="!isList" :pageStu="page" :disable="disable" :row="rowDetail" @refresh="searchList"/>
 
     <Refers ref="refer" @doSubmit="selectionsToInput" :single="true"/>
@@ -273,7 +227,7 @@ import Add from './add.vue'
 import Refers from '@/components/Refers/refers.vue'
 import TreeRefers from '@/components/Refers/treeRefer.vue'
 import CollapseTransition from '@/components/MyCollapse/collapse.vue'
-import {getPlanList, delPlan, downLoadDemand, exportPlan, submitPlan } from '@/api/business/spd/task_management/visitingPlan/visitingPlan.js'
+import {getPlanList, delPlan, exportPlan, submitPlan } from '@/api/business/spd/task_management/visitingPlan/visitingPlan.js'
 export default {
   name: 'PlanLise',
   components: {
@@ -282,7 +236,7 @@ export default {
     Refers,
     TreeRefers
   },
-  dicts: ['mk_plan_state'],
+  dicts: ['mk_plan_state', 'mk_plan_route_type'],
   data() {
     return {
       // 导入参数
@@ -340,11 +294,6 @@ export default {
         isPage: true,
         title: ''
       },
-      options: [{
-        value: 'Y', label: '是',
-      }, {
-        value: 'N', label: '否'
-      }],
       customerOptions: [],
       personOptions: [],
       deptOptions: [],
@@ -352,7 +301,9 @@ export default {
       total: 0,
       rowDetail: {},
       disable: false,
-      ids: []
+      ids: [],
+      // 查询日期范围
+      dateRange: [],
     }
   },
   created() {
@@ -374,6 +325,7 @@ export default {
       this.getList(this.queryParams)
     },
     resetList() {
+      this.dateRange = [];
       this.queryParams = {
         planCode: '',
         planName: '',
@@ -393,7 +345,7 @@ export default {
       this.getList(this.queryParams)
     },
     getList(params){
-      getPlanList(params).then(res => {
+      getPlanList(this.addDateRange(params, this.dateRange)).then(res => {
         if (res.code === 200) {
           this.tableList = res.rows
           this.total = res.total
@@ -581,44 +533,42 @@ export default {
     drop() {
       this.expanded = !this.expanded
     },
-    // 搜索区参照选择
-    chooseOrg(type, isPage, title, stordocId) {
+    // // 搜索区参照选择
+    // chooseOrg(type, isPage, title, stordocId) {
+    //   this.referCondition.type = type
+    //   this.referCondition.isPage = isPage
+    //   this.referCondition.title = title
+    //   this.referCondition.stordocId = stordocId
+    //   this.$refs.refer.init(this.referCondition)
+    // },
+    // 基本信息选择参照带出数据
+    choose(type, isPage, title) {
       this.referCondition.type = type
       this.referCondition.isPage = isPage
       this.referCondition.title = title
-      this.referCondition.stordocId = stordocId
       this.$refs.refer.init(this.referCondition)
     },
     selectionsToInput(selection) {
       // 搜索区选择客户
-      if (this.referCondition.type == 'CUSTOMER_PARAM' && this.referCondition.title == '需求客户') {
+      if (this.referCondition.type == 'CUSTOMER_PARAM') {
         this.customerOptions = selection
         this.queryParams.customer = selection[0].id
-      }
-      // 模板内选择客户
-      if (this.referCondition.type == 'CUSTOMER_PARAM' && this.referCondition.title == '选择客户') {
-        this.mBcustomer = selection
-        this.download.customer = selection[0].code
-      }
-      // 模板内选择仓库
-      if (this.referCondition.type == 'WAREHOUSE_PARAM' && this.referCondition.title == '选择仓库') {
-        this.mBwarehouse = selection
-        this.download.warehouse = selection[0].code
-        this.download.warehouseId = selection[0].id
-      }
-      // 模板内选择货位
-      if (this.referCondition.type == 'ALLOCATION_PARAM' && this.referCondition.title == '选择货位') {
-        this.mBcargoSpace = selection
-        this.download.cargoSpace = selection[0].code
+        this.queryParams.customerName = selection[0].name
       }
       if (this.referCondition.type == 'CONTACTS_PARAM') {
         this.personOptions = selection
-        this.queryParams.charger = selection[0].name
+        this.queryParams.charger = selection[0].id
         this.queryParams.chargerName = selection[0].name
       }
       if (this.referCondition.type == 'DEPT_PARAM') {
         this.deptOptions = selection
-        this.queryParams.demandDept = selection[0].id
+        this.queryParams.dept = selection[0].id
+        this.queryParams.deptName = selection[0].name
+      }
+      if(this.referCondition.type == 'MK_SALESAREA_PARAM') {
+        this.personOptions = selection
+        this.queryParams.marketingArea = selection[0].id
+        this.queryParams.marketingAreaName = selection[0].name
       }
     },
     // 搜索区树形选择