Sfoglia il codice sorgente

feat: CRM 客户限制

Wanwan 1 anno fa
parent
commit
a7f86dfd8b

+ 82 - 78
src/views/crm/customer/detail/CustomerDetails.vue

@@ -1,82 +1,86 @@
 <template>
-  <el-collapse v-model="activeNames">
-    <el-collapse-item name="basicInfo">
-      <template #title>
-        <span class="text-base font-bold">基本信息</span>
-      </template>
-      <el-descriptions :column="4">
-        <el-descriptions-item label="客户名称">
-          {{ customer.name }}
-        </el-descriptions-item>
-        <el-descriptions-item label="所属行业">
-          <dict-tag :type="DICT_TYPE.CRM_CUSTOMER_INDUSTRY" :value="customer.industryId" />
-        </el-descriptions-item>
-        <el-descriptions-item label="客户来源">
-          <dict-tag :type="DICT_TYPE.CRM_CUSTOMER_SOURCE" :value="customer.source" />
-        </el-descriptions-item>
-        <el-descriptions-item label="客户等级">
-          <dict-tag :type="DICT_TYPE.CRM_CUSTOMER_LEVEL" :value="customer.level" />
-        </el-descriptions-item>
-        <el-descriptions-item label="手机">
-          {{ customer.mobile }}
-        </el-descriptions-item>
-        <el-descriptions-item label="电话">
-          {{ customer.telephone }}
-        </el-descriptions-item>
-        <el-descriptions-item label="邮箱">
-          {{ customer.email }}
-        </el-descriptions-item>
-        <el-descriptions-item label="QQ">
-          {{ customer.qq }}
-        </el-descriptions-item>
-        <el-descriptions-item label="微信">
-          {{ customer.wechat }}
-        </el-descriptions-item>
-        <el-descriptions-item label="网址">
-          {{ customer.website }}
-        </el-descriptions-item>
-        <el-descriptions-item label="所在地">
-          {{ customer.areaName }}
-        </el-descriptions-item>
-        <el-descriptions-item label="详细地址">
-          {{ customer.detailAddress }}
-        </el-descriptions-item>
-        <el-descriptions-item label="下次联系时间">
-          {{ customer.contactNextTime ? formatDate(customer.contactNextTime, 'YYYY-MM-DD') : '空' }}
-        </el-descriptions-item>
-        <el-descriptions-item label="最后跟进时间">
-          {{ customer.contactLastTime ? formatDate(customer.contactLastTime) : '空' }}
-        </el-descriptions-item>
-      </el-descriptions>
-      <el-descriptions :column="1">
-        <el-descriptions-item label="客户描述">
-          {{ customer.description }}
-        </el-descriptions-item>
-        <el-descriptions-item label="备注">
-          {{ customer.remark }}
-        </el-descriptions-item>
-      </el-descriptions>
-    </el-collapse-item>
-    <el-collapse-item name="systemInfo">
-      <template #title>
-        <span class="text-base font-bold">系统信息</span>
-      </template>
-      <el-descriptions :column="2">
-        <el-descriptions-item label="负责人">
-          {{ customer.ownerUserName }}
-        </el-descriptions-item>
-        <el-descriptions-item label="创建人">
-          {{ customer.creatorName }}
-        </el-descriptions-item>
-        <el-descriptions-item label="创建时间">
-          {{ customer.createTime ? formatDate(customer.createTime) : '空' }}
-        </el-descriptions-item>
-        <el-descriptions-item label="更新时间">
-          {{ customer.updateTime ? formatDate(customer.updateTime) : '空' }}
-        </el-descriptions-item>
-      </el-descriptions>
-    </el-collapse-item>
-  </el-collapse>
+  <ContentWrap>
+    <el-collapse class="" v-model="activeNames">
+      <el-collapse-item name="basicInfo">
+        <template #title>
+          <span class="text-base font-bold">基本信息</span>
+        </template>
+        <el-descriptions :column="4">
+          <el-descriptions-item label="客户名称">
+            {{ customer.name }}
+          </el-descriptions-item>
+          <el-descriptions-item label="所属行业">
+            <dict-tag :type="DICT_TYPE.CRM_CUSTOMER_INDUSTRY" :value="customer.industryId" />
+          </el-descriptions-item>
+          <el-descriptions-item label="客户来源">
+            <dict-tag :type="DICT_TYPE.CRM_CUSTOMER_SOURCE" :value="customer.source" />
+          </el-descriptions-item>
+          <el-descriptions-item label="客户等级">
+            <dict-tag :type="DICT_TYPE.CRM_CUSTOMER_LEVEL" :value="customer.level" />
+          </el-descriptions-item>
+          <el-descriptions-item label="手机">
+            {{ customer.mobile }}
+          </el-descriptions-item>
+          <el-descriptions-item label="电话">
+            {{ customer.telephone }}
+          </el-descriptions-item>
+          <el-descriptions-item label="邮箱">
+            {{ customer.email }}
+          </el-descriptions-item>
+          <el-descriptions-item label="QQ">
+            {{ customer.qq }}
+          </el-descriptions-item>
+          <el-descriptions-item label="微信">
+            {{ customer.wechat }}
+          </el-descriptions-item>
+          <el-descriptions-item label="网址">
+            {{ customer.website }}
+          </el-descriptions-item>
+          <el-descriptions-item label="所在地">
+            {{ customer.areaName }}
+          </el-descriptions-item>
+          <el-descriptions-item label="详细地址">
+            {{ customer.detailAddress }}
+          </el-descriptions-item>
+          <el-descriptions-item label="下次联系时间">
+            {{
+              customer.contactNextTime ? formatDate(customer.contactNextTime, 'YYYY-MM-DD') : '空'
+            }}
+          </el-descriptions-item>
+          <el-descriptions-item label="最后跟进时间">
+            {{ customer.contactLastTime ? formatDate(customer.contactLastTime) : '空' }}
+          </el-descriptions-item>
+        </el-descriptions>
+        <el-descriptions :column="1">
+          <el-descriptions-item label="客户描述">
+            {{ customer.description }}
+          </el-descriptions-item>
+          <el-descriptions-item label="备注">
+            {{ customer.remark }}
+          </el-descriptions-item>
+        </el-descriptions>
+      </el-collapse-item>
+      <el-collapse-item name="systemInfo">
+        <template #title>
+          <span class="text-base font-bold">系统信息</span>
+        </template>
+        <el-descriptions :column="2">
+          <el-descriptions-item label="负责人">
+            {{ customer.ownerUserName }}
+          </el-descriptions-item>
+          <el-descriptions-item label="创建人">
+            {{ customer.creatorName }}
+          </el-descriptions-item>
+          <el-descriptions-item label="创建时间">
+            {{ customer.createTime ? formatDate(customer.createTime) : '空' }}
+          </el-descriptions-item>
+          <el-descriptions-item label="更新时间">
+            {{ customer.updateTime ? formatDate(customer.updateTime) : '空' }}
+          </el-descriptions-item>
+        </el-descriptions>
+      </el-collapse-item>
+    </el-collapse>
+  </ContentWrap>
 </template>
 <script setup lang="ts">
 import * as CustomerApi from '@/api/crm/customer'

+ 1 - 2
src/views/crm/customer/detail/index.vue

@@ -66,8 +66,7 @@
   <el-col>
     <el-tabs>
       <el-tab-pane label="详细资料">
-        <!-- TODO wanwan:这个 ml-2 是不是可以优化下,不要整个左移,而是里面的内容有个几 px 的偏移,不顶在框里 -->
-        <CustomerDetails class="ml-2" :customer="customer" />
+        <CustomerDetails :customer="customer" />
       </el-tab-pane>
       <el-tab-pane label="活动" lazy> 活动</el-tab-pane>
       <el-tab-pane label="邮件" lazy> 邮件</el-tab-pane>

+ 16 - 1
src/views/crm/customerLimitConfig/CustomerQuantityLimit.vue

@@ -1,4 +1,7 @@
 <template>
+  <el-button type="primary" plain @click="handleQuery">
+    <Icon icon="ep:refresh" class="mr-5px" /> 刷新
+  </el-button>
   <el-button
     type="primary"
     plain
@@ -7,7 +10,13 @@
   >
     <Icon icon="ep:plus" class="mr-5px" /> 新增
   </el-button>
-  <el-table v-loading="loading" :data="list" :stripe="true" :show-overflow-tooltip="true">
+  <el-table
+    v-loading="loading"
+    :data="list"
+    :stripe="true"
+    :show-overflow-tooltip="true"
+    class="mt-4"
+  >
     <el-table-column label="编号" align="center" prop="id" />
     <el-table-column label="规则类型" align="center" prop="type" />
     <el-table-column label="规则适用人群" align="center" prop="userNames" />
@@ -122,6 +131,12 @@ const handleDelete = async (id: number) => {
 
 const { confType } = defineProps<{ confType: LimitConfType }>()
 
+/** 搜索按钮操作 */
+const handleQuery = () => {
+  queryParams.pageNo = 1
+  getList()
+}
+
 /** 初始化 **/
 onMounted(() => {
   getList()

+ 1 - 1
src/views/crm/customerLimitConfig/index.vue

@@ -1,7 +1,7 @@
 <template>
   <!-- 列表 -->
   <ContentWrap>
-    <el-tabs tab-position="left" style="height: 200px">
+    <el-tabs tab-position="left">
       <el-tab-pane label="拥有客户数限制">
         <CustomerQuantityLimit :confType="LimitConfType.CUSTOMER_QUANTITY_LIMIT" />
       </el-tab-pane>