Commit e18d26d8a6c004394c5c3fd7cb184d3fde402a2f
1 parent
1944199f
fix: [CRM-客户统计]按客户创建时间筛选,关联合同是否有成交记录,有则视为[成交客户]
Showing
1 changed file
with
9 additions
and
8 deletions
yudao-module-crm/yudao-module-crm-biz/src/main/resources/mapper/statistics/CrmStatisticsCustomerMapper.xml
| @@ -18,17 +18,18 @@ | @@ -18,17 +18,18 @@ | ||
| 18 | 18 | ||
| 19 | <select id="selectCustomerDealCountGroupByDate" | 19 | <select id="selectCustomerDealCountGroupByDate" |
| 20 | resultType="cn.iocoder.yudao.module.crm.controller.admin.statistics.vo.customer.CrmStatisticsCustomerSummaryByDateRespVO"> | 20 | resultType="cn.iocoder.yudao.module.crm.controller.admin.statistics.vo.customer.CrmStatisticsCustomerSummaryByDateRespVO"> |
| 21 | - SELECT DATE_FORMAT(order_date, '%Y-%m-%d') AS time, | ||
| 22 | - COUNT(DISTINCT customer_id) AS customerDealCount | ||
| 23 | - FROM crm_contract | ||
| 24 | - WHERE deleted = 0 | ||
| 25 | - AND audit_status = ${@cn.iocoder.yudao.module.crm.enums.common.CrmAuditStatusEnum@APPROVE.status} | ||
| 26 | - AND owner_user_id IN | 21 | + SELECT DATE_FORMAT(customer.create_time, '%Y-%m-%d') AS time, |
| 22 | + COUNT(DISTINCT customer.id) AS customer_deal_count | ||
| 23 | + FROM crm_customer AS customer | ||
| 24 | + LEFT JOIN crm_contract AS contract ON contract.customer_id = customer.id | ||
| 25 | + WHERE customer.deleted = 0 AND contract.deleted = 0 | ||
| 26 | + AND contract.audit_status = ${@cn.iocoder.yudao.module.crm.enums.common.CrmAuditStatusEnum@APPROVE.status} | ||
| 27 | + AND customer.owner_user_id IN | ||
| 27 | <foreach collection="userIds" item="userId" open="(" close=")" separator=","> | 28 | <foreach collection="userIds" item="userId" open="(" close=")" separator=","> |
| 28 | #{userId} | 29 | #{userId} |
| 29 | </foreach> | 30 | </foreach> |
| 30 | - AND create_time BETWEEN #{times[0],javaType=java.time.LocalDateTime} AND #{times[1],javaType=java.time.LocalDateTime} | ||
| 31 | - GROUP BY time | 31 | + AND contract.create_time BETWEEN #{times[0],javaType=java.time.LocalDateTime} AND #{times[1],javaType=java.time.LocalDateTime} |
| 32 | + GROUP BY time | ||
| 32 | </select> | 33 | </select> |
| 33 | 34 | ||
| 34 | <select id="selectCustomerCreateCountGroupByUser" | 35 | <select id="selectCustomerCreateCountGroupByUser" |