From 6a886b3e14b773885cd44102a99c66b2492210a4 Mon Sep 17 00:00:00 2001 From: "jinguo24@163.com" Date: Sun, 26 Aug 2018 13:06:32 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BC=9A=E5=91=98=E7=BB=93=E6=9E=84=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2][=E6=96=B0=E5=A2=9E]=E6=9F=A5=E8=AF=A2=E7=99=BE?= =?UTF-8?q?=E5=88=86=E6=AF=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WxCUserBasicInfoController.java | 50 +++++++++++++++++++ .../simple/domain/dto/WxCuerBasicInfoDto.java | 14 ++++-- .../com/simple/domain/vo/UserStructureVo.java | 42 ++++++++++++++++ .../simple/mapper/WxCUserBasicInfoMapper.java | 2 + .../service/WxCUserBasicInfoService.java | 15 ++++-- .../impl/WxCUserBasicInfoServiceImpl.java | 23 ++++++--- .../mapper/WxCUserBasicInfoMapper.xml | 18 ++++++- 7 files changed, 150 insertions(+), 14 deletions(-) create mode 100644 mallinkService/src/main/java/com/simple/domain/vo/UserStructureVo.java diff --git a/mallinkAdmin/src/main/java/com/simple/controller/WxCUserBasicInfoController.java b/mallinkAdmin/src/main/java/com/simple/controller/WxCUserBasicInfoController.java index 7f3596889..59256f700 100644 --- a/mallinkAdmin/src/main/java/com/simple/controller/WxCUserBasicInfoController.java +++ b/mallinkAdmin/src/main/java/com/simple/controller/WxCUserBasicInfoController.java @@ -1,6 +1,8 @@ package com.simple.controller; +import java.text.NumberFormat; import java.util.ArrayList; +import java.util.Date; import java.util.List; import org.apache.commons.lang3.StringUtils; @@ -25,6 +27,7 @@ import com.simple.domain.po.WxCUserTags; import com.simple.domain.po.WxCoupon; import com.simple.domain.po.WxCouponOrder; import com.simple.domain.po.WxTags; +import com.simple.domain.vo.UserStructureVo; import com.simple.service.WxCUserBasicInfoService; import com.simple.service.WxCUserService; import com.simple.service.WxCUserTagsService; @@ -194,4 +197,51 @@ public class WxCUserBasicInfoController extends BaseController } return new ResultData(Result.SUCCESS,"查询成功",page); } + + @ApiOperation("查询会员性别结构") + @GetMapping("/findUserSexStructure") + public ResultData findUserSexStructure( + Date startTime,Date endTime + ) { + WxCuerBasicInfoDto dto = new WxCuerBasicInfoDto(); + dto.setStartTime(startTime); + dto.setEndTime(endTime); + dto.setSex(0); + //保密 + long secrecy = wxCUserBasicInfoService.findCountBySex(dto); + dto.setSex(1); + long boy = wxCUserBasicInfoService.findCountBySex(dto); + dto.setSex(2); + long girl=wxCUserBasicInfoService.findCountBySex(dto); + Long all =secrecy+boy+girl; + List vos = new ArrayList<>(); + vos.add(getVo(secrecy, all, "保密")); + vos.add(getVo(boy, all, "男")); + vos.add(getVo(girl, all, "女")); + return new ResultData(vos); + } + + @ApiOperation("查询会员年龄结构") + @GetMapping("/findUserSexStructure") + public ResultData findUserAgeStructure() { + + + return new ResultData(); + } + + + private UserStructureVo getVo(long count,long all,String name) { + UserStructureVo vo = new UserStructureVo(); + vo.setName(name); + vo.setCount(count+""); + NumberFormat nf = NumberFormat.getPercentInstance(); + nf.setMinimumFractionDigits(2);//控制保留小数点后几位,2:表示保留2位小数点 + if(all>0) { + vo.setPercentage(nf.format(new Long(count).doubleValue()/new Long(all).doubleValue())); + }else { + vo.setPercentage("0.00%"); + } + return vo; + } + } diff --git a/mallinkService/src/main/java/com/simple/domain/dto/WxCuerBasicInfoDto.java b/mallinkService/src/main/java/com/simple/domain/dto/WxCuerBasicInfoDto.java index 3641cd25c..7c06f2a9b 100644 --- a/mallinkService/src/main/java/com/simple/domain/dto/WxCuerBasicInfoDto.java +++ b/mallinkService/src/main/java/com/simple/domain/dto/WxCuerBasicInfoDto.java @@ -32,10 +32,18 @@ public class WxCuerBasicInfoDto implements Serializable{ // @io.swagger.annotations.ApiModelProperty(value="租户id",name="tenantId") @Transient private String tenantId; + + @Transient + private Integer sex; - - - + public Integer getSex() { + return sex; + } + + public void setSex(Integer sex) { + this.sex = sex; + } + public String getName() { return name; } diff --git a/mallinkService/src/main/java/com/simple/domain/vo/UserStructureVo.java b/mallinkService/src/main/java/com/simple/domain/vo/UserStructureVo.java new file mode 100644 index 000000000..1ecf44e4b --- /dev/null +++ b/mallinkService/src/main/java/com/simple/domain/vo/UserStructureVo.java @@ -0,0 +1,42 @@ +package com.simple.domain.vo; + +import java.io.Serializable; +/** + * 会员结构vo + * @author jinguo + * + */ +public class UserStructureVo implements Serializable{ + + /** + * + */ + private static final long serialVersionUID = 6780570955120276660L; + //名称 + private String name; + //数量 + private String count; + //百分比 + private String percentage; + public String getName() { + return name; + } + public void setName(String name) { + this.name = name; + } + public String getCount() { + return count; + } + public void setCount(String count) { + this.count = count; + } + public String getPercentage() { + return percentage; + } + public void setPercentage(String percentage) { + this.percentage = percentage; + } + + + +} diff --git a/mallinkService/src/main/java/com/simple/mapper/WxCUserBasicInfoMapper.java b/mallinkService/src/main/java/com/simple/mapper/WxCUserBasicInfoMapper.java index 93a40272a..cb1d469e7 100644 --- a/mallinkService/src/main/java/com/simple/mapper/WxCUserBasicInfoMapper.java +++ b/mallinkService/src/main/java/com/simple/mapper/WxCUserBasicInfoMapper.java @@ -17,5 +17,7 @@ public interface WxCUserBasicInfoMapper extends CommonMapper - select from wx_c_user_basic_info where 1=1 and `tenant_id` = #{tenantId} @@ -141,7 +141,21 @@ + - + +