EsmUserCountVO.java 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. package com.ydtech.modules.esm.model.vo;
  2. import com.ydtech.utils.BigDecimalUtils;
  3. import io.swagger.annotations.ApiModel;
  4. import io.swagger.annotations.ApiModelProperty;
  5. import lombok.AllArgsConstructor;
  6. import lombok.Data;
  7. import lombok.NoArgsConstructor;
  8. import java.io.Serializable;
  9. import java.util.List;
  10. @Data
  11. @ApiModel("团队管理展示")
  12. public class EsmUserCountVO implements Serializable {
  13. private static final long serialVersionUID = 5053893395186078389L;
  14. @ApiModelProperty(value = "汇总信息")
  15. private List<EsmTeamPolicyVO> hzList;//汇总信息
  16. //明细数据
  17. @ApiModelProperty(value = "明细数据--汇总")
  18. private AggregateDataList aggregateDataLists ;//汇总详细
  19. @ApiModelProperty(value = "明细数据--本级")
  20. private AggregateDataList aggregateDataLists0 ;//本级详细
  21. @ApiModelProperty(value = "明细数据--一级")
  22. private AggregateDataList aggregateDataLists1 ;//一级详细
  23. @ApiModelProperty(value = "明细数据--二级")
  24. private AggregateDataList aggregateDataLists2 ;//二级详细
  25. @ApiModelProperty(value = "明细数据--三级")
  26. private AggregateDataList aggregateDataLists3 ;//三级详细
  27. @ApiModelProperty(value = "明细数据--临时团队")
  28. private AggregateDataList aggregateDataLists9 ;//临时团队
  29. @Data
  30. @AllArgsConstructor
  31. @NoArgsConstructor
  32. public static class AggregateDataList implements Serializable{
  33. private static final long serialVersionUID = -7452147636460212353L;
  34. @ApiModelProperty(value = "汇总数据")
  35. private AggregateData aggregateData;
  36. @ApiModelProperty("明细数据")
  37. private List<EsmUserPolicyVO> userPolicyList;
  38. public AggregateDataList(List<EsmUserPolicyVO> userPolicyList) {
  39. AggregateData aggregateDataO = new AggregateData();
  40. userPolicyList.forEach(x->{
  41. aggregateDataO.setOrdernum(aggregateDataO.getOrdernum() + x.getOrdernum());
  42. aggregateDataO.setPolicynum(aggregateDataO.getPolicynum() + x.getPolicynum());
  43. double sumPremium = BigDecimalUtils.addDouble(aggregateDataO.getSumpremium(), x.getSumpremium());
  44. aggregateDataO.setSumpremium(sumPremium);
  45. aggregateDataO.setBjpolicynum(aggregateDataO.getBjpolicynum() + x.getBjpolicynum());
  46. aggregateDataO.setBjsumpremium(aggregateDataO.getBjsumpremium() + x.getBjpolicynum());
  47. });
  48. this.userPolicyList = userPolicyList;
  49. this.aggregateData = aggregateDataO;
  50. }
  51. }
  52. @Data
  53. @AllArgsConstructor
  54. @NoArgsConstructor
  55. public static class AggregateData implements Serializable{
  56. private static final long serialVersionUID = -176510042680346765L;
  57. @ApiModelProperty(value = "出单笔数")
  58. private int ordernum;
  59. @ApiModelProperty(value = "核保笔数")
  60. private int policynum;
  61. @ApiModelProperty(value = "签单保费")
  62. private double sumpremium;
  63. @ApiModelProperty(value = "报价次数")
  64. private int bjpolicynum;
  65. @ApiModelProperty(value = "报价金额")
  66. private double bjsumpremium;
  67. }
  68. }