Browse Source

优化客户信息导出列表

master
fanzongzhe 1 year ago
parent
commit
2231110ae2
  1. 8
      anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempExportVo.java
  2. 32
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempMapper.xml
  3. 30
      anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java

8
anrui-crm/anrui-crm-api/src/main/java/com/yxt/anrui/crm/api/crmcustomertemp/CrmCustomerTempExportVo.java

@ -36,8 +36,8 @@ public class CrmCustomerTempExportVo {
private String level;
@ExportEntityMap(CnName = "提醒日期", EnName = "remind_day")
private String remind_day;
@ExportEntityMap(CnName = "意向车型", EnName = "yxcounts")
private String yxcounts;
@ExportEntityMap(CnName = "跟进记录", EnName = "gjcounts")
private String gjcounts;
// @ExportEntityMap(CnName = "意向车型", EnName = "yxcounts")
// private String yxcounts;
// @ExportEntityMap(CnName = "跟进记录", EnName = "gjcounts")
// private String gjcounts;
}

32
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempMapper.xml

@ -251,8 +251,10 @@
</select>
<select id="exportExcel" resultType="com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempExportVo">
SELECT
@row_number:=@row_number + 1 AS rankNo
,a.* FROM (
@row_number := @row_number + 1 AS rankNo,
a.*
FROM
(
SELECT
DATE_FORMAT( cct.createTime, '%Y-%m-%d' ) AS createTime,
cct.customerNo,
@ -261,7 +263,6 @@
cct.staffSid,
cct.`name`,
cct.customerType,
-- org.orgName AS deptName,
cct.mobile,
cct.weixin,
cct.`level`,
@ -269,15 +270,30 @@
cct.createOrgSid,
so.orgSidPath,
cct.levelKey,
DATE_FORMAT( cct.remind_day, '%Y-%m-%d' ) AS remind_day,
( SELECT COUNT(*) FROM crm_vehicledemand cv WHERE cct.sid = cv.customerSid AND states = 1 ) yxcounts,
( SELECT COUNT(*) FROM crm_visit cvi WHERE cct.sid = cvi.customerSid ) gjcounts
DATE_FORMAT( cct.remind_day, '%Y-%m-%d' ) AS remind_day
-- ,
-- ( SELECT COUNT(*) FROM crm_vehicledemand cv WHERE cct.sid = cv.customerSid AND states = 1 ) yxcounts,
-- ( SELECT COUNT(*) FROM crm_visit cvi WHERE cct.sid = cvi.customerSid ) gjcounts
,
(
SELECT
sso.orgName
FROM
anrui_portal.sys_staff_org AS sso
LEFT JOIN anrui_portal.sys_organization AS soz ON sso.orgSid = soz.sid
WHERE
sso.staffSid = cct.staffSid
AND soz.psid = cct.createOrgSid
LIMIT 1
) as deptName
FROM
crm_customer_temp cct
LEFT JOIN anrui_portal.sys_organization so ON cct.createOrgSid = so.sid
LEFT JOIN anrui_portal.sys_staffinfo st ON cct.staffSid = st.sid
-- LEFT JOIN anrui_portal.sys_staff_org AS org ON org.staffSid = st.sid and so.psid = org.orgSid
) as a,(SELECT @row_number:=0) AS t
) AS a,(
SELECT
@row_number := 0
) AS t
<where>
${ew.sqlSegment}
</where>

30
anrui-crm/anrui-crm-biz/src/main/java/com/yxt/anrui/crm/biz/crmcustomertemp/CrmCustomerTempService.java

@ -1290,21 +1290,21 @@ public class CrmCustomerTempService extends MybatisBaseService<CrmCustomerTempMa
apply(StringUtils.isNotBlank(createEndDate), "date_format (a.createTime,'%Y-%m-%d') <= date_format('" + createEndDate + "','%Y-%m-%d')"
);
List<CrmCustomerTempExportVo> records = baseMapper.exportExcel(qw);
if (!records.isEmpty()) {
records.stream().forEach(r -> {
String createOrgSid = r.getCreateOrgSid();
String staffSid = r.getStaffSid();
List<SysStaffOrgVo> sysStaffOrgVos = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid).getData();
sysStaffOrgVos.stream().forEach(s -> {
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(s.getOrgSid()).getData();
String psid = sysOrganizationVo.getPsid();
if (psid.equals(createOrgSid)) {
String orgName = s.getOrgName();
r.setDeptName(orgName);
}
});
});
}
// if (!records.isEmpty()) {
// records.stream().forEach(r -> {
// String createOrgSid = r.getCreateOrgSid();
// String staffSid = r.getStaffSid();
// List<SysStaffOrgVo> sysStaffOrgVos = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid).getData();
// sysStaffOrgVos.stream().forEach(s -> {
// SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(s.getOrgSid()).getData();
// String psid = sysOrganizationVo.getPsid();
// if (psid.equals(createOrgSid)) {
// String orgName = s.getOrgName();
// r.setDeptName(orgName);
// }
// });
// });
// }
return records;
}

Loading…
Cancel
Save