Bläddra i källkod

营销-SPD-商机:新增一个报表界面,数据是写死的待后续完善;

001295 2 år sedan
förälder
incheckning
4e3d439264

+ 10 - 0
src/api/business/spd/bo/statement.js

@@ -0,0 +1,10 @@
+import request from '@/utils/request'
+
+// 查询商机基础信息列表
+export function listBasic(query) {
+  return request({
+    url: '/mk/bo/statement/list',
+    method: 'get',
+    params: query
+  })
+}

+ 3 - 0
src/views/business/spd/bo/basic/process.vue

@@ -1495,6 +1495,7 @@ export default {
         case '2-01':
           this.activeName = 't20101';
           this.tabsName.t20101 = true;
+          this.tabsName.A = true;
           break;
         case '2-02':
           this.activeName = 't20201';
@@ -1536,6 +1537,7 @@ export default {
         case '3-01':
           this.activeName = 't30101';
           this.tabsName.t30101 = true;
+          this.tabsName.A = true;
           break;
         case '3-02':
           this.activeName = 't30201';
@@ -1572,6 +1574,7 @@ export default {
         case '4-01':
           this.activeName = 't40101';
           this.tabsName.t40101 = true;
+          this.tabsName.A = true;
           break;
         case '4-02':
           this.activeName = 't40201';

+ 224 - 0
src/views/business/spd/bo/statement/index.vue

@@ -0,0 +1,224 @@
+<template>
+  <div class="app-container">
+    <el-tabs v-model="activeName" @tab-click="handleClick">
+      <el-tab-pane label="SPD商机" name="0">
+        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+          <el-form-item label="商机名称" prop="boName">
+            <el-input
+              v-model="queryParams.boName"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="客户" prop="customerName">
+            <el-input
+              v-model="queryParams.customerName"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="负责人" prop="principalName">
+            <el-input
+              v-model="queryParams.principalName"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item label="商机来源" prop="boSource">
+            <el-input
+              v-model="queryParams.boSource"
+              clearable
+              @keyup.enter.native="handleQuery"
+            />
+          </el-form-item>
+          <el-form-item>
+            <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+            <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+          </el-form-item>
+        </el-form>
+        <el-table :data="boList" >
+          <el-table-column label="客户" align="center" prop="customerName" />
+          <el-table-column label="部门" align="center" prop="deptName" />
+          <el-table-column label="负责人" align="center" prop="principalName" />
+          <el-table-column label="商机名称" align="center" prop="boName" />
+          <el-table-column label="商机名称" align="center" prop="boCode" />
+          <el-table-column label="创建日期" align="center" prop="createTime" />
+          <el-table-column label="商机审核" align="center" prop="a71" />
+          <el-table-column label="项目立项" align="center" prop="a72" />
+          <el-table-column label="售前提案/邀请考察" align="center" prop="a73" />
+          <el-table-column label="开院务会" align="center" prop="a74" />
+          <el-table-column label="院内立项" align="center" prop="a75" />
+          <el-table-column label="进场调研" align="center" prop="a76" />
+          <el-table-column label="解决方案" align="center" prop="a78" />
+          <el-table-column label="投标与签合同" align="center" prop="a79" />
+        </el-table>
+      </el-tab-pane>
+      <el-tab-pane label="耗材集采商机" name="1">功能开发中</el-tab-pane>
+      <el-tab-pane label="耗材集采商机" name="2">功能开发中</el-tab-pane>
+      <el-tab-pane label="医疗设备商机" name="3">功能开发中</el-tab-pane>
+      <el-tab-pane label="军队医疗设备商机" name="4">功能开发中</el-tab-pane>
+    </el-tabs>
+
+    <pagination
+      v-show="total > 0"
+      :total="total"
+      :page.sync="queryParams.pageNum"
+      :limit.sync="queryParams.pageSize"
+      @pagination="getList"
+    />
+  </div>
+</template>
+
+
+<script>
+import { listBasic } from "@/api/business/spd/bo/statement";
+
+export default {
+  data() {
+    return {
+      //查询参数
+      queryParams: {
+        pageNum: 1,
+        pageSize: 10,
+        boType: null,
+        boName: null,
+        customerName: null,
+        principalName: null,
+        boSource: null,
+      },
+      // 显示搜索条件
+      showSearch: true,
+      //列表数据
+      boList:[],
+      //spdBoList
+      spdBoList:[],
+      //当前页签
+      activeName: '0',
+      //分页参数
+      total:0,
+    };
+  },
+  created() {
+    // this.getList();
+    var e = {
+      name: '0',
+    }
+    this.handleClick(e);
+  },
+  methods: {
+    /** 查询任务列表 */
+    getList() {
+      this.queryParams.boType = this.activeName;
+      listBasic(this.queryParams).then(response => {
+        this.boList = response.rows;
+        this.total = response.total;
+      });
+    },
+    handleClick(e) {
+      console.log('e',e);
+      // this.queryParams.boType = e.name;
+      // listBasic(this.queryParams).then(response => {
+      //   this.boList = response.rows;
+      //   this.total = response.total;
+      // });
+      switch (e.name) {
+        case "0":
+          // console.log('this.boList[i].boNodeFlowList',this.boList[0].boNodeFlowList);
+          // for (var i = 0; i < this.boList.length; i++) {
+          //   var nodes = this.boList[i].boNodeFlowList;
+          //   console.log('nodes',nodes);
+          //   // this.boList[i].a71 = nodes.filter(ele => ele. == '71').day;
+          // }
+          // console.log('转换后',this.boList);
+          this.boList = [
+            {
+              "id": 180,
+              "boCode": "BO20230428000024",
+              "boName": "李卓-测试客户1-SPD商机",
+              "boType": "0",
+              "boState": "0",
+              "boSource": "0",
+              "boStage": "0-01",
+              "boStageName": "商机审核",
+              "principal": "9273",
+              "principalName": "李卓",
+              "winningRate": "30%",
+              "winningState": "0",
+              "marketingOrganizing": "441675649082705",
+              "marketingOrganizingName": "湖南德荣医疗健康产业有限公司",
+              "marketingArea": "2318344533693184",
+              "marketingAreaName": "湘南区",
+              "deptName": "数字科技中心",
+              "dept": "426339510156234",
+              "createBy": "李卓",
+              "userCode": "002637",
+              "createTime": "2023-04-28 10:37:26",
+              "customerName": "测试客户1",
+              "hosDiscreetValue": 2002,
+              a71:'1天',
+              a72:'2天',
+              a73:'1天',
+              a74:'5天',
+              a75:'1天',
+            },
+            {
+              "id": 180,
+              "boCode": "BO20230428000024",
+              "boName": "李卓-测试客户1-SPD商机",
+              "boType": "0",
+              "boState": "0",
+              "boSource": "0",
+              "boStage": "0-01",
+              "boStageName": "商机审核",
+              "principal": "9273",
+              "principalName": "李卓",
+              "winningRate": "30%",
+              "winningState": "0",
+              "marketingOrganizing": "441675649082705",
+              "marketingOrganizingName": "湖南德荣医疗健康产业有限公司",
+              "marketingArea": "2318344533693184",
+              "marketingAreaName": "湘南区",
+              "deptName": "数字科技中心",
+              "dept": "426339510156234",
+              "createBy": "李卓",
+              "userCode": "002637",
+              "createTime": "2023-04-28 10:37:26",
+              "customerName": "测试客户1",
+              "hosDiscreetValue": 2002,
+              a71:'1天',
+              a72:'2天',
+              a73:'9天',
+              a74:'5天',
+              a75:'1天',
+              a76:'1天',
+              a77:'1天',
+              a78:'1天',
+              a79:'60天',
+            },
+          ]
+          break;
+        case "1":
+          break;
+        case "2":
+          break;
+        case "3":
+          break;
+        case "4":
+          break;
+        default:
+          break;
+      }
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      this.handleQuery();
+    },
+  }
+};
+</script>