linxk 3 週間 前
コミット
b80720978d

+ 32 - 7
cif-api/src/main/java/com/txz/cif/enums/BizTypeEnum.java

@@ -2,17 +2,33 @@ package com.txz.cif.enums;
 
 /**
  * 支付业务类型枚举类
- * 业务类型 1001充值 2001平台收费 2002专家佣金 2003销售佣金 3001提现 4001诊断冻结 5001诊断解冻
+ * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004一级红包佣金 5005二级红包佣金 6001充值返点 7001提现手续费 8001冻结 9001解冻
  */
 public enum BizTypeEnum {
 
     RECHARGE( 1001, "充值"),
-    CHARGE_TRANSFER( 2001, "平台收费"),
-    SPECIALIST_TRANSFER( 2002, "专家佣金"),
-    MARKET_TRANSFER( 2003, "销售佣金"),
-    WITHDRAW( 3001, "提现"),
-    DIAGNOSE_FREEZE( 4001, "诊断冻结"),
-    DIAGNOSE_UNFREEZE( 5001, "诊断解冻"),
+    WITHDRAW( 2001, "提现"),
+    OPEN_GROUP_PAY( 3001, "开团支付"),
+    JOIN_GROUP_PAY( 3002, "参团支付"),
+
+    FAIL_GROUP_REFUND( 4001, "未成团退款"),
+    SUCCESS_GROUP_REFUND( 4002, "成团退款"),
+
+    OPEN_GROUP_RED_ENVELOPE( 5001, "开团红包收益"),
+    JOIN_GROUP_RED_ENVELOPE( 5002, "参团红包收益"),
+
+    SIGN_RED_ENVELOPE( 5003, "签到红包收益"),
+
+    FIRST_COMMISSION( 5004, "一级佣金"),
+
+    SECONDARY_COMMISSION( 5005, "二级佣金"),
+
+    REFUND_RECHARGE( 6001, "充值返点"),
+
+    WITHDRAWAL_FEE( 7001, "提现手续费"),
+
+    FREEZE( 8001, "冻结"),
+    UNFREEZE( 9001, "解冻"),
     ;
 
     /**
@@ -40,6 +56,15 @@ public enum BizTypeEnum {
         return null;
     }
 
+    public static BizTypeEnum getByKey(int key) {
+        for (BizTypeEnum value : values()) {
+            if (value.key == key) {
+                return value;
+            }
+        }
+        return null;
+    }
+
     public int getKey() {
         return key;
     }

+ 1 - 1
cif-api/src/main/java/com/txz/cif/param/FreezdParam.java

@@ -43,7 +43,7 @@ public class FreezdParam implements Serializable {
     private BigDecimal amount;
 
     /**
-     * 业务类型 1001充值 2001钱包支付 2002参团成功 3001提现 4001冻结 5001解冻
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费 8001冻结 9001解冻
      */
     private Integer bizType;
 

+ 1 - 1
cif-api/src/main/java/com/txz/cif/param/PayParam.java

@@ -43,7 +43,7 @@ public class PayParam implements Serializable {
     private BigDecimal amount;
 
     /**
-     * 业务类型  2001钱包支付
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费 8001冻结 9001解冻
      */
     private Integer bizType;
 

+ 1 - 1
cif-api/src/main/java/com/txz/cif/param/RechargeParam.java

@@ -48,7 +48,7 @@ public class RechargeParam implements Serializable {
     private BigDecimal discount;
 
     /**
-     * 业务类型 1001充值 2001钱包支付 2002参团成功 3001提现 4001冻结 5001解冻
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费 8001冻结 9001解冻
      */
     private Integer bizType;
 

+ 1 - 1
cif-api/src/main/java/com/txz/cif/param/RefundParam.java

@@ -43,7 +43,7 @@ public class RefundParam implements Serializable {
     private BigDecimal amount;
 
     /**
-     * 业务类型  2002 成团 2003 未成团
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费 8001冻结 9001解冻
      */
     private Integer bizType;
 

+ 0 - 64
cif-api/src/main/java/com/txz/cif/param/TransParam.java

@@ -1,64 +0,0 @@
-/*
-*
-* FreezdParam.java
-* Copyright(C) 2017-2020 fendo公司
-* @date 2022-11-02
-*/
-package com.txz.cif.param;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.io.Serializable;
-import java.math.BigDecimal;
-import java.util.Date;
-
-@Data
-@Builder
-@AllArgsConstructor
-@NoArgsConstructor
-public class TransParam implements Serializable {
-
-    /**
-     * 业务编号
-     */
-    private String bizNo;
-
-    /**
-     * 业务Id
-     */
-    private String bizId;
-
-    /**
-     * 借账户
-     */
-    private Long debitAccount;
-
-    /**
-     * 贷账户
-     */
-    private Long creditAccount;
-
-    /**
-     * 转账金额
-     */
-    private BigDecimal amount;
-
-    /**
-     *  业务类型 1001充值 2001钱包支付 2002参团成功 3001提现 4001冻结 5001解冻
-     */
-    private Integer bizType;
-
-    /**
-     * 交易时间
-     */
-    private Date transTime;
-
-    private static final long serialVersionUID = 1L;
-
-
-
-
-}

+ 0 - 40
cif-api/src/main/java/com/txz/cif/param/UnFreezdAndTransParam.java

@@ -1,40 +0,0 @@
-/*
-*
-* FreezdParam.java
-* Copyright(C) 2017-2020 fendo公司
-* @date 2022-11-02
-*/
-package com.txz.cif.param;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.io.Serializable;
-import java.util.List;
-
-@Data
-@Builder
-@AllArgsConstructor
-@NoArgsConstructor
-public class UnFreezdAndTransParam implements Serializable {
-
-
-
-    /**
-     * 冻结流水号
-     */
-    private Long freezdId;
-
-    /**
-     * 转账入参,交易金额总和应为解冻金额
-     */
-    private List<TransParam> trans;
-
-    private static final long serialVersionUID = 1L;
-
-
-
-
-}

+ 1 - 1
cif-api/src/main/java/com/txz/cif/param/WithdrawParam.java

@@ -48,7 +48,7 @@ public class WithdrawParam implements Serializable {
     private BigDecimal amount;
 
     /**
-     * 业务类型 3001提现
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费 8001冻结 9001解冻
      */
     private Integer bizType;
 

+ 21 - 11
cif-service/src/main/java/com/txz/cif/dubbo/impl/AccountDubboServiceImpl.java

@@ -7,6 +7,7 @@ import cn.hutool.core.util.StrUtil;
 import com.txz.cif.core.ServiceException;
 import com.txz.cif.dto.Result;
 import com.txz.cif.dubbo.client.OperatingConfigDubboServiceClient;
+import com.txz.cif.enums.BizTypeEnum;
 import com.txz.cif.model.Account;
 import com.txz.cif.model.User;
 import com.txz.cif.param.*;
@@ -78,11 +79,12 @@ public class AccountDubboServiceImpl implements AccountDubboService {
     @Override
     public Result openGroup(OpenParam param) {
         //支付
+        //BizTypeEnum 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金
         Result result = flowService.pay(PayParam.builder().bizNo(param.getBizNo())
                 .amount(param.getAmount())
                 .bizId(param.getBizId())
                 .transTime(param.getTransTime())
-                .bizType(2001)
+                .bizType(BizTypeEnum.OPEN_GROUP_PAY.getKey())
                 .build());
         if (StrUtil.equals("200",result.getCode())){
             //计算开团红包金额
@@ -92,7 +94,7 @@ public class AccountDubboServiceImpl implements AccountDubboService {
 
             //开团红包
             Result result1 = redEnvelopeService.addRedEnvelope(RedEnvelopeParam.builder()
-                    .amount(amount).bizType(1).orderNo(param.getBizNo())
+                    .amount(amount).bizType(BizTypeEnum.OPEN_GROUP_RED_ENVELOPE.getKey()).orderNo(param.getBizNo())
                     .userIds(CollUtil.newArrayList(param.getUserId()))
                     .transTime(param.getTransTime())
                     .build());
@@ -103,21 +105,23 @@ public class AccountDubboServiceImpl implements AccountDubboService {
     @Override
     public Result joinGroup(JoinParam param) {
         //支付
+        //类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金
         Result result = flowService.pay(PayParam.builder().bizNo(param.getBizNo())
                 .amount(param.getAmount())
                 .bizId(param.getBizId())
                 .transTime(param.getTransTime())
-                .bizType(2001)
+                .bizType(BizTypeEnum.JOIN_GROUP_PAY.getKey())
                 .build());
         return Result.genSuccessResult();
     }
 
     @Override
     public Result cancelGroup(CancelParam param) {
+        //类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金
         for (Long userId:param.getUserIds()){
             Result result = flowService.refund(RefundParam.builder()
                     .transTime(param.getTransTime())
-                    .bizType(2003).bizNo(param.getBizNo())
+                    .bizType(BizTypeEnum.FAIL_GROUP_REFUND.getKey()).bizNo(param.getBizNo())
                     .bizId(param.getBizId())
                     .amount(param.getAmount())
                     .userId(userId)
@@ -133,7 +137,7 @@ public class AccountDubboServiceImpl implements AccountDubboService {
         BigDecimal amount = param.getAmount().multiply(new BigDecimal(rate)).divide(BigDecimal.valueOf(100),2, RoundingMode.DOWN);
         //参团红包
         Result result1 = redEnvelopeService.addRedEnvelope(RedEnvelopeParam.builder()
-                .amount(amount).bizType(2).orderNo(param.getBizNo())
+                .amount(amount).bizType(BizTypeEnum.JOIN_GROUP_RED_ENVELOPE.getKey()).orderNo(param.getBizNo())
                 .userIds(param.getUserIds())
                 .transTime(param.getTransTime())
                 .build());
@@ -142,10 +146,11 @@ public class AccountDubboServiceImpl implements AccountDubboService {
 
     @Override
     public Result accomplishGroup(AccomplishParam param) {
+        //类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金
         for (Long userId:param.getUserIds()){
             Result result = flowService.refund(RefundParam.builder()
                     .transTime(param.getTransTime())
-                    .bizType(2002).bizNo(param.getBizNo())
+                    .bizType(BizTypeEnum.SUCCESS_GROUP_REFUND.getKey()).bizNo(param.getBizNo())
                     .bizId(param.getBizId())
                     .amount(param.getAmount())
                     .userId(userId)
@@ -161,7 +166,7 @@ public class AccountDubboServiceImpl implements AccountDubboService {
 
         //参团红包
         Result result1 = redEnvelopeService.addRedEnvelope(RedEnvelopeParam.builder()
-                .amount(amount).bizType(2).orderNo(param.getBizNo())
+                .amount(amount).bizType(BizTypeEnum.JOIN_GROUP_RED_ENVELOPE.getKey()).orderNo(param.getBizNo())
                 .userIds(param.getUserIds())
                 .transTime(param.getTransTime())
                 .build());
@@ -169,11 +174,16 @@ public class AccountDubboServiceImpl implements AccountDubboService {
     }
 
 
+    /**
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金
+     * @param param
+     * @return
+     */
     @Override
     public Result addRedEnvelope(SignRedEnvelopeParam param) {
         RedEnvelopeParam p = BeanUtil.toBean(param,RedEnvelopeParam.class);
         p.setUserIds(CollUtil.newArrayList(param.getUserId()));
-        p.setBizType(3);
+        p.setBizType(BizTypeEnum.SIGN_RED_ENVELOPE.getKey());
         return redEnvelopeService.addRedEnvelope(p);
     }
 
@@ -190,9 +200,8 @@ public class AccountDubboServiceImpl implements AccountDubboService {
         if (param.getAmount() == null){
             return Result.genFailResult("参数金额为空");
         }
-        if (param.getBizType() == null){
-            param.setBizType(1);
-        }
+
+        param.setBizType(BizTypeEnum.RECHARGE.getKey());
         if (param.getTransTime() == null){
             param.setTransTime(DateUtil.date());
         }
@@ -202,6 +211,7 @@ public class AccountDubboServiceImpl implements AccountDubboService {
 
     @Override
     public Result withdraw(WithdrawParam param) {
+        param.setBizType(BizTypeEnum.WITHDRAW.getKey());
         return flowService.withdraw(param);
     }
 }

+ 2 - 2
cif-service/src/main/java/com/txz/cif/model/AccountFlow.java

@@ -75,10 +75,10 @@ public class AccountFlow {
     private Integer type;
 
     /**
-     * 业务类型 1充值 2远程诊断 3提现
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金
      */
     @Column(name = "biz_type")
-    @ApiModelProperty(value="bizType业务类型 1充值 2远程诊断 3提现")
+    @ApiModelProperty(value="类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费")
     private Integer bizType;
 
     @Column(name = "flow_type")

+ 2 - 2
cif-service/src/main/java/com/txz/cif/model/Flow.java

@@ -75,10 +75,10 @@ public class Flow {
     private BigDecimal amount;
 
     /**
-     * 业务类型 1充值 2提现 3参团 4退款 5开团红包 6参团红包 7签到红包 8下级红包佣金 9下下级红包佣金 10充值返点
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费
      */
     @Column(name = "biz_type")
-    @ApiModelProperty(value="类型 1充值 2提现 3参团 4退款 5开团红包 6参团红包 7签到红包 8下级红包佣金 9下下级红包佣金 10充值返点  ")
+    @ApiModelProperty(value="类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费  ")
     private Integer bizType;
 
 

+ 2 - 2
cif-service/src/main/java/com/txz/cif/model/RedEnvelope.java

@@ -76,10 +76,10 @@ public class RedEnvelope {
     private Integer status;
 
     /**
-     * 类型 1开团红包 2参团红包 3签到红包 4下级红包佣金 5下下级红包佣金
+     * 类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费
      */
     @Column(name = "biz_type")
-    @ApiModelProperty(value="bizType类型 1开团红包 2参团红包 3签到红包 4下级红包佣金 5下下级红包佣金")
+    @ApiModelProperty(value="类型 1001充值 2001提现  3001开团支付 3002参团支付  4001未成团退款 4002成团退款 5001开团红包收益 5002参团红包收益 5003签到红包收益 5004下级红包佣金 5005下下级红包佣金 6001充值返点 7001提现手续费")
     private Integer bizType;
 
     /**

+ 5 - 0
cif-service/src/main/java/com/txz/cif/model/User.java

@@ -130,6 +130,11 @@ public class User  {
     @ApiModelProperty(value="lastLoginTime最后登录时间")
     private Date lastLoginTime;
 
+
+    @ApiModelProperty(value="备注")
+    private String memo;
+
+
     /**
      * 创建人
      */

+ 1 - 0
cif-service/src/main/java/com/txz/cif/service/impl/FlowServiceImpl.java

@@ -233,6 +233,7 @@ public class FlowServiceImpl extends AbstractService<Flow> implements FlowServic
 
     @Override
     public Result refund(RefundParam param) {
+
         //借:主营支出-退款(借)     +100元
         //贷:个人账户    (贷)     +100元
 

+ 5 - 0
cif-service/src/main/java/com/txz/cif/service/impl/RechargeRecordServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.date.DateUtil;
 import com.txz.cif.dao.RechargeRecordMapper;
 import com.txz.cif.model.RechargeRecord;
 import com.txz.cif.param.RechargeParam;
+import com.txz.cif.service.AccountService;
 import com.txz.cif.service.FlowService;
 import com.txz.cif.service.RechargeRecordService;
 import com.txz.cif.core.AbstractService;
@@ -24,6 +25,9 @@ public class RechargeRecordServiceImpl extends AbstractService<RechargeRecord> i
 
     @Resource
     private FlowService flowService;
+
+    @Resource
+    private AccountService accountService;
     @Override
     public void success(RechargeRecord record) {
         update(RechargeRecord.builder()
@@ -31,6 +35,7 @@ public class RechargeRecordServiceImpl extends AbstractService<RechargeRecord> i
                 .successTime(DateUtil.date())
                 .status(2)
                 .build());
+//        accountService.
         flowService.recharge(RechargeParam.builder()
                         .amount(record.getAmount())
                         .bizNo(record.getOrderNo())

+ 9 - 4
cif-service/src/main/java/com/txz/cif/service/impl/RedEnvelopeServiceImpl.java

@@ -7,6 +7,7 @@ import com.txz.cif.constants.MyConstants;
 import com.txz.cif.dao.RedEnvelopeMapper;
 import com.txz.cif.dto.Result;
 import com.txz.cif.dubbo.client.OperatingConfigDubboServiceClient;
+import com.txz.cif.enums.BizTypeEnum;
 import com.txz.cif.model.Account;
 import com.txz.cif.model.ConfigMember;
 import com.txz.cif.model.RedEnvelope;
@@ -52,26 +53,30 @@ public class RedEnvelopeServiceImpl extends AbstractService<RedEnvelope> impleme
     @Resource
     private ConfigMemberService configMemberService;
 
+    /**
+     * 类型 1充值 2提现 3参团 4退款 5开团红包 6参团红包 7签到红包 8下级红包佣金 9下下级红包佣金
+     * @param param
+     * @return
+     */
     @Override
     public Result addRedEnvelope(RedEnvelopeParam param) {
         com.txz.operating.result.Result<ConfigDTO> redEnvelopeSettelDay = operatingConfigDubboServiceClient.getConfigByCode("red_envelope_settel_day");
         Integer settleDay = Integer.parseInt(redEnvelopeSettelDay.getData().getValueInfo());
         Date settleTime = DateUtil.offsetDay(param.getTransTime(),settleDay);
         List<RedEnvelope> redEnvelopes = new ArrayList<>();
-        if (param.getBizType() == 1){
+        if (BizTypeEnum.getByKey(param.getBizType()) == BizTypeEnum.OPEN_GROUP_RED_ENVELOPE){
             //开团红包
             redEnvelopes.addAll(bulidRedEnvelope(param.getUserIds().get(0),param,settleTime)) ;
-        } else if (param.getBizType() == 2){
+        } else if (BizTypeEnum.getByKey(param.getBizType()) == BizTypeEnum.JOIN_GROUP_RED_ENVELOPE){
             //参团红包
             for (Long userId:param.getUserIds()){
                 redEnvelopes.addAll(bulidRedEnvelope(userId,param,settleTime)) ;
             }
-        } else if (param.getBizType() == 3){
+        } else if (BizTypeEnum.getByKey(param.getBizType()) == BizTypeEnum.SIGN_RED_ENVELOPE){
             //签到红包
             redEnvelopes.addAll(bulidRedEnvelope(param.getUserIds().get(0),param,settleTime)) ;
         }
         if (CollUtil.isNotEmpty(redEnvelopes)){
-
             save(redEnvelopes);
         }
         return null;

+ 59 - 0
cif-service/src/main/java/com/txz/cif/web/bo/UserBo2.java

@@ -0,0 +1,59 @@
+package com.txz.cif.web.bo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.*;
+
+import java.math.BigDecimal;
+
+@Getter
+@Setter
+@ToString
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+@ApiModel("用户管理信息")
+public class UserBo2 {
+    /**
+     * 用户id
+     */
+    @ApiModelProperty(value="用户id")
+    private Long id;
+
+    @ApiModelProperty("名称")
+    private String nickname;
+
+    @ApiModelProperty("头像")
+    private String headPic;
+
+    @ApiModelProperty(value="status状态  1正常 2禁用 3停用 4锁定")
+    private Byte status;
+
+    private String phoneNo;
+
+    /**
+     * token
+     */
+    @ApiModelProperty(value="vip")
+    private Integer vipLevel;
+
+    @ApiModelProperty(value="备注")
+    private String memo;
+
+    @ApiModelProperty(value="邀请好友数")
+    private Integer inviteNum;
+
+    @ApiModelProperty(value="团队人数")
+    private Integer teamNum;
+
+
+    @ApiModelProperty(value="成团数")
+    private Integer successGroupNum;
+
+    @ApiModelProperty(value="钱包余额")
+    private BigDecimal walletBalance;
+
+    @ApiModelProperty(value="收益余额")
+    private BigDecimal earningsBalance;
+
+}

+ 116 - 0
cif-service/src/main/java/com/txz/cif/web/mng/UserController.java

@@ -0,0 +1,116 @@
+package com.txz.cif.web.mng;
+
+import java.math.BigDecimal;
+import java.util.*;
+import java.util.stream.Collectors;
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.NumberUtil;
+import cn.hutool.core.util.RandomUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.crypto.SecureUtil;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.txz.cif.util.IpUtils;
+import com.txz.cif.web.bo.UserBo;
+import com.txz.cif.web.bo.UserBo2;
+import com.txz.cif.web.bo.UserInfoBO;
+import com.txz.cif.web.para.LoginAccountParameters;
+import com.txz.cif.web.para.MyUserParam;
+import com.txz.cif.web.para.RegisterAccountParameters;
+import com.txz.cif.web.para.UserInfoForm;
+import com.txz.cif.core.*;
+import com.txz.cif.model.*;
+import com.txz.cif.service.*;
+import com.txz.cif.core.AuthService;
+import io.swagger.annotations.*;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.web.bind.annotation.*;
+import lombok.extern.slf4j.Slf4j;
+import tk.mybatis.mapper.entity.Condition;
+import tk.mybatis.mapper.entity.Example;
+
+@RestController
+@RequestMapping(value = "/user")
+@Api(tags = "[后台]用户管理")
+@Slf4j
+public class UserController extends AbstractApiController {
+
+    @Resource
+    private RedisUtil redisUtil;
+
+    @Resource
+    private UserService userService;
+
+    @Resource
+    private FlowService flowService;
+
+
+    @PostMapping("/list")
+    @ApiOperation(value = "获取用户",httpMethod = "POST")
+    public Result<List<UserBo2>> list(@RequestBody MyUserParam param, HttpServletRequest request, @RequestHeader(value = X_CLIENT_TOKEN_USERID,required = false) Long userId) {
+        PageHelper.startPage(param.getPage(), param.getSize());
+        Condition condition = new Condition(User.class);
+        Example.Criteria criteria = condition.createCriteria();
+        Example.Criteria criteria2 = condition.or();
+        if (param.getType() == 1){
+            criteria.andEqualTo("pid",userId);
+            criteria2.andEqualTo("pid",userId);
+        } else {
+            criteria.andEqualTo("ppid",userId);
+            criteria2.andEqualTo("ppid",userId);
+        }
+        if (StrUtil.isNotBlank(param.getName())) {
+            criteria.andLike("name", "%" + param.getName() + "%");
+            criteria2.andLike("name", "%" + param.getName() + "%");
+        }
+        if (StrUtil.isNotBlank(param.getPhone())) {
+            criteria.andEqualTo("phoneNo", param.getPhone());
+            criteria2.andEqualTo("phoneNo", param.getPhone());
+        }
+        if (StrUtil.isNotBlank(param.getStartTime())) {
+            criteria.andGreaterThanOrEqualTo("createTime", param.getStartTime());
+            criteria2.andGreaterThanOrEqualTo("createTime", param.getStartTime());
+        }
+        if (StrUtil.isNotBlank(param.getEndTime())) {
+            criteria.andLessThanOrEqualTo("createTime", param.getEndTime());
+            criteria2.andLessThanOrEqualTo("createTime", param.getEndTime());
+        }
+
+        PageInfo pageInfo = null;
+        try {
+            condition.setOrderByClause("create_time desc");
+            List<User> list = userService.findByCondition(condition);
+            pageInfo = new PageInfo(list);
+            pageInfo.setList(list.stream().map(u -> {
+                UserBo2 bo = BeanUtil.toBean(u,UserBo2.class);
+                //邀请人数、团队人数
+                Condition c  = new Condition(User.class);
+                c.createCriteria().andEqualTo("pid",u.getId());
+                Integer inviteNum = userService.countByCondition(c);
+                bo.setInviteNum(inviteNum);
+                c  = new Condition(User.class);
+                c.createCriteria().andEqualTo("ppid",u.getId());
+                Integer inviteNextNum = userService.countByCondition(c);
+                bo.setTeamNum(inviteNum+inviteNextNum);
+                //付款过的订单
+                c  = new Condition(Flow.class);
+                c.createCriteria().andEqualTo("bizType",2001);
+                Integer payNum = flowService.countByCondition(c);
+                bo.setSuccessGroupNum(payNum);
+
+                return bo;
+            }).collect(Collectors.toList()));
+        } catch (Exception e) {
+            log.error("查询对象操作异常e:{}", e);
+            return ResultGenerator.genFailResult(ResultCode.INTERNAL_SERVER_ERROR);
+        }
+        return ResultGenerator.genSuccessResult(pageInfo);
+    }
+
+
+}

+ 2 - 2
cif-service/src/main/java/com/txz/cif/web/para/MyUserParam.java

@@ -14,7 +14,7 @@ public class MyUserParam {
     @ApiModelProperty("每页显示条数")
     private Integer size;
 
-    @ApiModelProperty("类型:1下级 2下下级")
+    @ApiModelProperty("类型:0本级 1下级 2下下级")
     private Integer type;
 
     /**
@@ -32,7 +32,7 @@ public class MyUserParam {
     /**
      * 手机号
      */
-    @ApiModelProperty("手机号")
+    @ApiModelProperty("手机号/用户id")
     private String phone;
 
     @ApiModelProperty("名称")

+ 1 - 0
cif-service/src/main/resources/mapper/UserMapper.xml

@@ -10,6 +10,7 @@
     <result column="ppid" jdbcType="BIGINT" property="ppid" />
     <result column="user_no" jdbcType="VARCHAR" property="userNo" />
     <result column="language" jdbcType="VARCHAR" property="language" />
+    <result column="memo" jdbcType="VARCHAR" property="memo" />
 
     <result column="invited_code" jdbcType="VARCHAR" property="invitedCode" />
     <result column="nickname" jdbcType="VARCHAR" property="nickname" />