diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/PartyAnalysExcel.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/PartyAnalysExcel.java new file mode 100644 index 000000000..11ca7c67f --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/PartyAnalysExcel.java @@ -0,0 +1,52 @@ +package com.elink.esua.epdc.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * @author: qushutong + * @Date: 2020/2/12 14:24 + * @Description: 注册用户分析 + */ +@Data +public class PartyAnalysExcel { + @Excel(name = "街道名称") + private String streetName; + + @Excel(name = "注册用户数") + private Integer userCount; + + @Excel(name = "注册党员数") + private Integer partyMemberCount; + + @Excel(name = "注册居民数") + private Integer residentCount; + + @Excel(name = "男") + private Integer maleCount; + + @Excel(name = "女") + private Integer femaleCount; + + @Excel(name = "其他") + private Integer unknownSexCount; + + @Excel(name = "超过50岁用户数量") + private Integer oldCount; + + @Excel(name = "老龄化比例") + private BigDecimal oldPercent; + + @Excel(name = "50岁以下用户数量") + private Integer youngCount; + + @Excel(name = "年轻化比例") + private BigDecimal youngPercent; + + @Excel(name = "党员认证失败数") + private Integer partyAuthFailureCount; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/RegisterExcel.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/RegisterExcel.java new file mode 100644 index 000000000..b6ff4556a --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/RegisterExcel.java @@ -0,0 +1,50 @@ +package com.elink.esua.epdc.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author: qushutong + * @Date: 2020/2/12 14:24 + * @Description: 注册用户分析 + */ +@Data +public class RegisterExcel { + @Excel(name = "街道名称") + private String streetName; + + @Excel(name = "注册用户数") + private Integer userCount; + + @Excel(name = "注册党员数") + private Integer partyMemberCount; + + @Excel(name = "注册居民数") + private Integer residentCount; + + @Excel(name = "男") + private Integer maleCount; + + @Excel(name = "女") + private Integer femaleCount; + + @Excel(name = "其他") + private Integer unknownSexCount; + + @Excel(name = "超过50岁用户数量") + private Integer oldCount; + + @Excel(name = "老龄化比例") + private BigDecimal oldPercent; + + @Excel(name = "50岁以下用户数量") + private Integer youngCount; + + @Excel(name = "年轻化比例") + private BigDecimal youngPercent; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java index ed1283e6e..208b5ef31 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java @@ -1,6 +1,7 @@ package com.elink.esua.epdc.modules.user.controller; import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.ExcelUtils; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils; import com.elink.esua.epdc.dto.user.form.MemberRankFormDTO; @@ -20,20 +21,13 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.excel.PartyAnalysExcel; +import com.elink.esua.epdc.excel.RegisterExcel; import com.elink.esua.epdc.modules.user.service.UserAnalysisService; -import com.elink.esua.epdc.modules.user.service.YoungMemberRankService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - import java.util.List; import java.util.Map; - -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; +import javax.servlet.http.HttpServletResponse; /** * 数据端,用户数据分析相关接口 @@ -144,4 +138,32 @@ public class UserAnalysisController { ValidatorUtils.validateEntity(formDto); return userAnalysisService.getGridStatistics(formDto); } + /*** + * 注册用户总数排名分析导出 + * @param params + * @param response + * @return void + * @author qushutong + * @date 2020/2/12 14:38 + */ + @GetMapping("export/register") + public void exportRegister(@RequestParam Map params, HttpServletResponse response) throws Exception { + PageData pageData = userAnalysisService.pageUserDataRank(params); + ExcelUtils.exportExcelToTarget(response, "注册用户总数排名分析", pageData.getList(), RegisterExcel.class); + } + + + /*** + * 党员排名分析导出 + * @param params + * @param response + * @return void + * @author qushutong + * @date 2020/2/12 14:38 + */ + @GetMapping("export/party") + public void exportParty(@RequestParam Map params, HttpServletResponse response) throws Exception { + PageData pageData = userAnalysisService.pageUserDataRank(params); + ExcelUtils.exportExcelToTarget(response, "党员排名分析", pageData.getList(), PartyAnalysExcel.class); + } }