Browse Source

营销商机功能优化;

001295 1 năm trước cách đây
mục cha
commit
70f61658f5

+ 12 - 0
src/api/business/spd/cm/customersDepartment.js

@@ -43,3 +43,15 @@ export function delCustomersDepartment(ids) {
     data: ids
   })
 }
+
+//导入
+export function importDataDept(data) {
+  return request({
+    url: `/cm/customersDepartment/importData`,
+    method: 'post',
+    data: data,
+    headers: {
+      'Content-Type': 'multipart/form-data'
+    }
+  })
+}

+ 1 - 0
src/views/business/spd/bo/basic/bocontactList.vue

@@ -19,6 +19,7 @@
         </template>
       </el-table-column>
       <el-table-column label="联系电话" align="center" prop="telephone" show-overflow-tooltip/>
+      <el-table-column label="微信" align="center" prop="mail" />
       <el-table-column label="所属客户" align="center" prop="customerName" show-overflow-tooltip/>
       <el-table-column label="所属科室" align="center" prop="sectionName" />
       <el-table-column label="职务" align="center" prop="position" >

+ 1 - 0
src/views/business/spd/bo/contact/index.vue

@@ -53,6 +53,7 @@
         </template>
       </el-table-column>
       <el-table-column width="100" label="联系电话" align="center" prop="telephone" />
+      <el-table-column width="100" label="微信" align="center" prop="mail" />
       <el-table-column width="200" show-overflow-tooltip label="所属客户" align="center" prop="customerName" />
       <el-table-column show-overflow-tooltip label="所属科室" align="center" prop="sectionName" />
       <el-table-column label="职务" align="center" prop="position" >

+ 24 - 5
src/views/business/spd/bo/gather/index.vue

@@ -29,6 +29,7 @@ export default {
       loading: false,
       addType: "add",
       rowDetails: {},
+      selectData: []
     };
   },
   created() {
@@ -98,17 +99,32 @@ export default {
         })
         .catch(() => {});
     },
-    // 导出
-    handleExport() {
+    //条件导出
+    exportBtn() {
       this.download(
         "mk/bo/gathercg/export",
         {
-          ...this.params,
-          ...this.page,
+          ...this.params
         },
         `项目信息收集_${new Date().getTime()}.xlsx`
       );
     },
+    //选择导出
+    chooseExportBtn(){
+      if(this.selectData.length < 1){
+        this.$modal.msgWarning("请选择数据!");
+        return;
+      }
+      let ids = this.selectData.map((item)=> item.id);
+      this.download(
+        "mk/bo/gathercg/chooseExport/" + ids,
+        {},
+        `项目信息收集_${new Date().getTime()}.xlsx`
+      );
+    },
+    useSelect(prop) {
+      this.selectData = prop;
+    },
   },
 };
 </script>
@@ -140,11 +156,14 @@ export default {
       style="margin-top: 20px"
     >
       <el-col :span="1.5">
-        <el-button :size="size" @click="handleExport">导 出</el-button>
+        <el-button :size="size" @click="exportBtn">条件导出</el-button>
+        <el-button :size="size" @click="chooseExportBtn">选择导出</el-button>
       </el-col>
     </el-row>
 
     <el-super-ux-table
+      checkbox
+      @row-select="useSelect"
       v-model="tableData"
       :size="size"
       :dict="dict"

+ 33 - 2
src/views/business/spd/cm/customers/index.vue

@@ -599,7 +599,7 @@
               v-if="openState == 'check'"
             >
               <el-row :gutter="10" class="mb8">
-                <el-col :span="6" :offset="21">
+                <el-col :span="6" :offset="20">
                   <el-button
                     type="primary"
                     :size="size"
@@ -607,6 +607,12 @@
                   >
                     添加
                   </el-button>
+                  <BatchImport
+                    ref="batchImportDept"
+                    @import="importDataBtnDept"
+                    @temDownload="importTemplateBtnDept"
+                    :fileSize="2"
+                  ></BatchImport>
                   <el-button
                     :size="size"
                     type="danger"
@@ -714,7 +720,7 @@ import {
 // 客户负责人接口
 import { delCustomersResponsiblePerson } from "@/api/business/spd/cm/customersResponsiblePerson";
 // 客户科室接口
-import { delCustomersDepartment } from "@/api/business/spd/cm/customersDepartment";
+import { delCustomersDepartment,importDataDept } from "@/api/business/spd/cm/customersDepartment";
 import useColumns from "./columns";
 import { dicts } from "../dicts";
 export default {
@@ -733,6 +739,7 @@ export default {
       import("@/views/business/spd/cm/customersDepartment/index.vue"),
     ElSuperSearch: () => import("@/components/super-search/index.vue"),
     ElSuperUxTable: () => import("@/components/super-ux-table/index.vue"),
+    BatchImport: () => import("@/components/BatchImport/index.vue"),
   },
   dicts: [...dicts],
   data() {
@@ -1291,6 +1298,30 @@ export default {
         return this.$modal.msgError("资质信息中存在必填项未填!");
       }
     },
+    //导入模板-科室
+    importTemplateBtnDept(){
+      this.download('/cm/customersDepartment/importTemplate', {
+      }, `客户科室导入模板_${new Date().getTime()}.xlsx`)
+    },
+    //上传文件-科室
+    async importDataBtnDept(file) {
+      try {
+        this.$modal.loading("加载中......");
+        let formData = new FormData();
+        formData.append("file", file[0].raw);
+        let { code, msg } = await importDataDept(formData);
+        if (code == 200) {
+          this.$notify.success({ message: msg });
+          let { setVisible } = this.$refs.batchImportDept;
+          setVisible(false);
+          this.resetList();
+        }
+      } catch (error) {
+        console.log(error);
+      } finally {
+        this.$modal.closeLoading();
+      }
+    },
   },
 };
 </script>