Bläddra i källkod

fix:导出时数据不完整

ly 9 månader sedan
förälder
incheckning
17714a4ffc

+ 20 - 0
src/main/java/cn/ezhizao/project/business/company/controller/BizCompanyController.java

@@ -106,6 +106,26 @@ public class BizCompanyController extends BaseController
     public void export(HttpServletResponse response, BizCompany bizCompany) throws NoSuchFieldException, IllegalAccessException, InterruptedException {
         setTenantId(bizCompany);
         List<BizCompany> list = bizCompanyService.getList(bizCompany);
+        for(BizCompany company:list){
+            if(company != null && company.getReferrerDataSource() != null) {
+                switch (company.getReferrerDataSource()) {
+                    case "company":
+                        BizCompany source = bizCompanyService.getById(company.getSourceId());
+                        company.setSourceName(source != null ? source.getName() : "");
+                        break;
+                    case "employee":
+                        SysUser sysUser = sysUserService.selectUserById(company.getSourceId());
+                        company.setSourceName(sysUser != null ? sysUser.getNickName() : "");
+                        break;
+                    case "channel":
+                        BizChannel channel = bizChannelService.getById(company.getSourceId());
+                        company.setSourceName(channel != null ? channel.getName() : "");
+                        break;
+                    default:
+                        break;
+                }
+            }
+        }
         ExcelUtil<BizCompany> util = new ExcelUtil<BizCompany>(BizCompany.class);
         if (bizCompany.getColumns() != null && !bizCompany.getColumns().isEmpty()) {
             util.exportExcel(response, list, "客户数据", "客户信息导出", bizCompany.getColumns().toArray(new String[0]));

+ 2 - 1
src/main/resources/mybatis/business/BizCompanyMapper.xml

@@ -20,9 +20,10 @@
 
     <select id="getList" parameterType="BizCompany" resultMap="BizCompanyResult">
         SELECT
-        c.*, s.nick_name as leader_name, a.nick_name as adviser_name
+        c.*, s.nick_name as leader_name, a.nick_name as adviser_name,source.title as sourceName
         FROM biz_company c
         LEFT JOIN sys_user s ON c.leader_id=s.user_id
+        left join biz_source `source` on c.source_id = `source`.id
         Left join sys_user a on c.adviser_id = a.user_id
         <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
             c.deleted = 0