Browse Source

Merge branch 'dev_v1_1_20220720' of http://git.dayaedu.com/yonge/cooleshow into dev_v1_1_20220720

liujunchi 3 years ago
parent
commit
eb4da8ad60
23 changed files with 361 additions and 131 deletions
  1. 70 58
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/UserAccountDao.java
  2. 9 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/UserAccountRecordDao.java
  3. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/UserAccountRecordDto.java
  4. 10 3
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/UserAccountRecordSearch.java
  5. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserAccountRecord.java
  6. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/UserAccountRecordService.java
  7. 3 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/UserAccountService.java
  8. 6 6
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseGroupServiceImpl.java
  9. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseScheduleServiceImpl.java
  10. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java
  11. 19 41
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/PlatformCashAccountRecordServiceImpl.java
  12. 27 4
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserAccountRecordServiceImpl.java
  13. 12 5
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserAccountServiceImpl.java
  14. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderServiceImpl.java
  15. 5 5
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalServiceImpl.java
  16. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VideoLessonPurchaseRecordServiceImpl.java
  17. 22 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserAccountRecordVo.java
  18. 66 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/res/AccountShareTotal.java
  19. 12 0
      cooleshow-user/user-biz/src/main/resources/config/mybatis/UserAccountMapper.xml
  20. 40 1
      cooleshow-user/user-biz/src/main/resources/config/mybatis/UserAccountRecordMapper.xml
  21. 1 0
      cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/UserOrderController.java
  22. 26 0
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/UserAccountController.java
  23. 1 1
      cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/UserOrderController.java

+ 70 - 58
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/UserAccountDao.java

@@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.biz.dal.dto.UserAccountRecordDto;
 import com.yonge.cooleshow.biz.dal.dto.req.TotalReq;
 import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
+import com.yonge.cooleshow.biz.dal.vo.res.AccountShareTotal;
 import com.yonge.cooleshow.biz.dal.vo.res.AccountTotal;
 import org.apache.ibatis.annotations.Param;
 import com.yonge.cooleshow.biz.dal.entity.UserAccount;
@@ -15,70 +16,81 @@ import com.yonge.cooleshow.biz.dal.vo.UserAccountVo;
 import com.yonge.cooleshow.biz.dal.dto.search.UserAccountSearch;
 
 
-public interface UserAccountDao extends BaseMapper<UserAccount>{
-	/**
-	 * 查询详情
+public interface UserAccountDao extends BaseMapper<UserAccount> {
+    /**
+     * 查询详情
+     *
      * @author liweifan
      * @date 2022-03-30 13:53:51
      * @return: com.yonge.cooleshow.biz.dal.vo.UserAccountVo
-	 */
-	UserAccountVo detail(@Param("id") Long id);
+     */
+    UserAccountVo detail(@Param("id") Long id);
 
-	/**
-	 * 分页查询
+    /**
+     * 分页查询
+     *
      * @author liweifan
      * @date 2022-03-30 13:53:51
      * @return: com.yonge.cooleshow.biz.dal.vo.UserAccountVo
-	 */
-	List<UserAccountVo> selectPage(@Param("page") IPage page, @Param("param") UserAccountSearch userAccount);
-	/***
-	 * 账户变更(冻结)
-	 * @author liweifan
-	 * @param: userId
-	 * @param: transAmount
-	 * @updateTime 2022/4/7 17:54
-	 * @return: java.lang.Integer
-	 */
-    Integer frozenChangeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount,@Param("inOrOut") String inOrOut);
-	/***
-	 * 账户变更(冻结后交易成功)
-	 * @author liweifan
-	 * @param: userId
-	 * @param: transAmount
-	 * @updateTime 2022/4/7 17:54
-	 * @return: java.lang.Integer
-	 */
-	Integer frozenDeductChangeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount,@Param("inOrOut") String inOrOut);
-	/***
-	 * 账户变更(冻结后交易退回)
-	 * @author liweifan
-	 * @param: userId
-	 * @param: transAmount
-	 * @updateTime 2022/4/7 17:54
-	 * @return: java.lang.Integer
-	 */
-	Integer frozenBackChangeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount,@Param("inOrOut") String inOrOut);
-	/***
-	 * 账户变更(余额)
-	 * @author liweifan
-	 * @param: userId
-	 * @param: transAmount
-	 * @updateTime 2022/4/7 19:11
-	 * @return: java.lang.Integer
-	 */
-	Integer changeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount,@Param("inOrOut") String inOrOut);
-	/***
-	 * 收入统计
-	 * @author liweifan
-	 * @param: totalReq
-	 * @updateTime 2022/4/24 13:53
-	 * @return: java.util.List<com.yonge.cooleshow.biz.dal.vo.res.AccountTotal>
-	 */
-    List<AccountTotal> accountTotal(@Param("timeType")String timeType,@Param("param")TotalReq totalReq);
-	/**
-	 * 统计本次变更前已经变更的金额
-	 * @param orderNo
-	 * @return
-	 */
+     */
+    List<UserAccountVo> selectPage(@Param("page") IPage page, @Param("param") UserAccountSearch userAccount);
+
+    /***
+     * 账户变更(冻结)
+     * @author liweifan
+     * @param: userId
+     * @param: transAmount
+     * @updateTime 2022/4/7 17:54
+     * @return: java.lang.Integer
+     */
+    Integer frozenChangeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount, @Param("inOrOut") String inOrOut);
+
+    /***
+     * 账户变更(冻结后交易成功)
+     * @author liweifan
+     * @param: userId
+     * @param: transAmount
+     * @updateTime 2022/4/7 17:54
+     * @return: java.lang.Integer
+     */
+    Integer frozenDeductChangeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount, @Param("inOrOut") String inOrOut);
+
+    /***
+     * 账户变更(冻结后交易退回)
+     * @author liweifan
+     * @param: userId
+     * @param: transAmount
+     * @updateTime 2022/4/7 17:54
+     * @return: java.lang.Integer
+     */
+    Integer frozenBackChangeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount, @Param("inOrOut") String inOrOut);
+
+    /***
+     * 账户变更(余额)
+     * @author liweifan
+     * @param: userId
+     * @param: transAmount
+     * @updateTime 2022/4/7 19:11
+     * @return: java.lang.Integer
+     */
+    Integer changeAccount(@Param("userId") Long userId, @Param("transAmount") BigDecimal transAmount, @Param("inOrOut") String inOrOut);
+
+    /***
+     * 收入统计
+     * @author liweifan
+     * @param: totalReq
+     * @updateTime 2022/4/24 13:53
+     * @return: java.util.List<com.yonge.cooleshow.biz.dal.vo.res.AccountTotal>
+     */
+    List<AccountTotal> accountTotal(@Param("timeType") String timeType, @Param("param") TotalReq totalReq);
+
+    /**
+     * 统计本次变更前已经变更的金额
+     *
+     * @param orderNo
+     * @return
+     */
     BigDecimal totalTransAmountByOrderNo(@Param("orderNo") String orderNo);
+
+    AccountShareTotal accountShareTotal(@Param("param") TotalReq query);
 }

+ 9 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/UserAccountRecordDao.java

@@ -42,8 +42,10 @@ public interface UserAccountRecordDao extends BaseMapper<UserAccountRecord> {
 
     List<UserAccountRecordVo> selectAllPage(@Param("param") UserAccountRecordSearch userAccountRecord);
 
+    List<UserAccountRecordVo> sharePage(@Param("page") IPage page, @Param("param") UserAccountRecordSearch userAccountRecord);
 
     UserAccountVo accountTotal(@Param("param") UserAccountRecordSearch param);
+
     /**
      * app查询详情
      *
@@ -98,5 +100,11 @@ public interface UserAccountRecordDao extends BaseMapper<UserAccountRecord> {
                                     @Param("bizType") AccountBizTypeEnum bizType,
                                     @Param("bizId") Long bizId);
 
-
+    /**
+     * 查询老师账户中可以入账的分润记录
+     *
+     * @param bizTypes
+     * @return
+     */
+    List<UserAccountRecord> queryCanAccountByBizType(@Param("bizTypes")List<String> bizTypes);
 }

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/UserAccountRecordDto.java

@@ -19,7 +19,7 @@ import java.math.BigDecimal;
 @ApiModel(value = "UserAccountRecordDto对象", description = "账户变更传输对象")
 public class UserAccountRecordDto extends UserAccountRecord {
     public UserAccountRecordDto(Long accountId, PostStatusEnum postStatus, BigDecimal transAmount, InOrOutEnum inOrOut, AccountBizTypeEnum bizType,
-                                Long bizId, String bizName, String orderNo) {
+                                Long bizId, String bizName, String orderNo, Long buyUser) {
         this.setAccountId(accountId);
         this.setPostStatus(postStatus);
         this.setTransAmount(transAmount);
@@ -28,5 +28,6 @@ public class UserAccountRecordDto extends UserAccountRecord {
         this.setBizId(bizId);
         this.setBizName(bizName);
         this.setOrderNo(orderNo);
+        this.setBuyUser(buyUser);
     }
 }

+ 10 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/UserAccountRecordSearch.java

@@ -1,6 +1,5 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
-import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.yonge.cooleshow.biz.dal.enums.AccountBizTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
@@ -48,8 +47,8 @@ public class UserAccountRecordSearch extends QueryInfo{
 	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
 	private LocalDateTime endTime;
-
-
+	@ApiModelProperty("购买学生 ")
+	private String username;
 
 	public Long getUserId() {
 		return userId;
@@ -114,4 +113,12 @@ public class UserAccountRecordSearch extends QueryInfo{
 	public void setPostStatus(PostStatusEnum postStatus) {
 		this.postStatus = postStatus;
 	}
+
+	public String getUsername() {
+		return username;
+	}
+
+	public void setUsername(String username) {
+		this.username = username;
+	}
 }

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserAccountRecord.java

@@ -54,6 +54,9 @@ public class UserAccountRecord implements Serializable {
     @ApiModelProperty("订单号 ")
     @TableField(value = "order_no_")
     private String orderNo;
+    @ApiModelProperty("购买人id")
+    @TableField(value = "buy_user_")
+    private Long buyUser;
     @ApiModelProperty("创建时间 ")
     @TableField(value = "create_time_")
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@@ -74,6 +77,8 @@ public class UserAccountRecord implements Serializable {
     @ApiModelProperty(value = "账期时间")
     private Date accountPeriodTime;
 
+
+
     public Long getId() {
         return id;
     }
@@ -193,4 +198,12 @@ public class UserAccountRecord implements Serializable {
     public void setAccountPeriodTime(Date accountPeriodTime) {
         this.accountPeriodTime = accountPeriodTime;
     }
+
+    public Long getBuyUser() {
+        return buyUser;
+    }
+
+    public void setBuyUser(Long buyUser) {
+        this.buyUser = buyUser;
+    }
 }

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/UserAccountRecordService.java

@@ -42,6 +42,14 @@ public interface UserAccountRecordService extends IService<UserAccountRecord> {
 
     List<UserAccountRecordVo> selectAllPage(UserAccountRecordSearch query);
 
+
+    /**
+     * 分页查询
+     *
+     * @author liweifan
+     * @date 2022-03-30
+     */
+    IPage<UserAccountRecordVo> sharePage(IPage<UserAccountRecordVo> page, UserAccountRecordSearch query);
     /**
      * app查询详情
      *
@@ -79,4 +87,9 @@ public interface UserAccountRecordService extends IService<UserAccountRecord> {
 
 
     HttpResponseResult<UserAccountVo> accountTotal(UserAccountRecordSearch query);
+
+    /**
+     * 修改老师账户入账状态
+     */
+    void updateWaitRecord();
 }

+ 3 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/UserAccountService.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.biz.dal.entity.UserAccountRecord;
 import com.yonge.cooleshow.biz.dal.vo.UserAccountVo;
 import com.yonge.cooleshow.biz.dal.dto.search.UserAccountSearch;
 import com.yonge.cooleshow.biz.dal.entity.UserAccount;
+import com.yonge.cooleshow.biz.dal.vo.res.AccountShareTotal;
 import com.yonge.cooleshow.biz.dal.vo.res.AccountTotal;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.cooleshow.common.entity.MallOrderItemDto;
@@ -79,7 +80,6 @@ public interface UserAccountService extends IService<UserAccount>  {
      */
     HttpResponseResult<AccountTotal> accountTotal(TotalReq totalReq);
 
-
     /**
      * 设置老师分润状态
      *
@@ -92,4 +92,6 @@ public interface UserAccountService extends IService<UserAccount>  {
      * @return
      */
     boolean saveMallAccountRecord(List<MallOrderItemDto> shareDto);
+
+    HttpResponseResult<AccountShareTotal> accountShareTotal(TotalReq query);
 }

+ 6 - 6
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseGroupServiceImpl.java

@@ -111,7 +111,7 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
      */
     @Override
     public LiveCourseInfoVo queryLiveCourseInfo(Long groupId) {
-        return queryLiveCourseInfo(groupId,getSysUser());
+        return queryLiveCourseInfo(groupId, getSysUser());
     }
 
     /**
@@ -120,7 +120,7 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
      * @param groupId 课程组id
      */
 
-    private LiveCourseInfoVo queryLiveCourseInfo(Long groupId,SysUser sysUser) {
+    private LiveCourseInfoVo queryLiveCourseInfo(Long groupId, SysUser sysUser) {
         CourseGroup group = Optional.ofNullable(groupId).map(this::getById)
                 .orElseThrow(() -> new BizException("课程组信息不存在"));
 
@@ -808,7 +808,7 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
         List<UserAccountRecordDto> userAccountRecordDtos = new ArrayList<>();
         for (CourseScheduleTeacherSalary salary : teacherSalaryList) {
             UserAccountRecordDto dto = new UserAccountRecordDto(orderParam.getMerchId(), PostStatusEnum.WAIT, salary.getActualSalary(),
-                    InOrOutEnum.IN, AccountBizTypeEnum.LIVE, salary.getCourseScheduleId(), orderParam.getGoodName(), orderParam.getOrderNo());
+                    InOrOutEnum.IN, AccountBizTypeEnum.LIVE, salary.getCourseScheduleId(), orderParam.getGoodName(), orderParam.getOrderNo(), orderParam.getUserId());
             userAccountRecordDtos.add(dto);
         }
         userAccountService.accountRecord(userAccountRecordDtos);
@@ -1237,17 +1237,17 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
         SysUser teacher = this.getSysUser(liveCourseInfoVo.getTeacherId());
 
         LiveCourseGroupShareVo liveCourseGroupShareVo = new LiveCourseGroupShareVo();
-        BeanUtils.copyProperties(liveCourseInfoVo,liveCourseGroupShareVo);
+        BeanUtils.copyProperties(liveCourseInfoVo, liveCourseGroupShareVo);
         liveCourseGroupShareVo.setShareTeacherAvatar(teacher.getAvatar());
         liveCourseGroupShareVo.setShareTeacherName(teacher.getUsername());
 
-        String teacherLiveGroupShareProfitUrl= sysConfigService.findConfigValue(SysConfigConstant.TEACHER_LIVE_GROUP_SHARE_PROFIT_URL);
+        String teacherLiveGroupShareProfitUrl = sysConfigService.findConfigValue(SysConfigConstant.TEACHER_LIVE_GROUP_SHARE_PROFIT_URL);
 
         ShareProfitVo result = new ShareProfitVo();
         result.setTeacherId(sysUser.getId());
         result.setType("LIVE");
         result.setLiveCourseGroup(liveCourseGroupShareVo);
-        result.setUrl(MessageFormatter.arrayFormat(teacherLiveGroupShareProfitUrl,liveGroupId, sysUser.getId()));
+        result.setUrl(MessageFormatter.arrayFormat(teacherLiveGroupShareProfitUrl, liveGroupId, sysUser.getId()));
         result.setName(sysUser.getUsername());
         result.setAvatar(sysUser.getAvatar());
         return result;

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/CourseScheduleServiceImpl.java

@@ -1147,7 +1147,7 @@ public class CourseScheduleServiceImpl extends ServiceImpl<CourseScheduleDao, Co
         List<UserAccountRecordDto> userAccountRecordDtos = new ArrayList<>();
         for (CourseScheduleTeacherSalary salary : teacherSalaryList) {
             UserAccountRecordDto dto = new UserAccountRecordDto(orderParam.getMerchId(), PostStatusEnum.WAIT, salary.getActualSalary(),
-                    InOrOutEnum.IN, AccountBizTypeEnum.LIVE, salary.getCourseScheduleId(), orderParam.getGoodName(), orderParam.getOrderNo());
+                    InOrOutEnum.IN, AccountBizTypeEnum.LIVE, salary.getCourseScheduleId(), orderParam.getGoodName(), orderParam.getOrderNo(), orderParam.getUserId());
             userAccountRecordDtos.add(dto);
         }
         userAccountService.accountRecord(userAccountRecordDtos);

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java

@@ -626,7 +626,7 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao, MusicSheet
         //插入老师账户变更记录-老师预收
         userAccountService.accountRecord(
                 new UserAccountRecordDto(userOrderDetailVo.getMerchId(), PostStatusEnum.WAIT, transAmount, InOrOutEnum.IN,
-                        AccountBizTypeEnum.MUSIC, musicSheetId, userOrderDetailVo.getGoodName(), userOrderDetailVo.getOrderNo()));
+                        AccountBizTypeEnum.MUSIC, musicSheetId, userOrderDetailVo.getGoodName(), userOrderDetailVo.getOrderNo(),userOrderDetailVo.getUserId()));
     }
 
     @Override

+ 19 - 41
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/PlatformCashAccountRecordServiceImpl.java

@@ -8,6 +8,7 @@ import java.util.stream.Collectors;
 
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.yonge.cooleshow.biz.dal.enums.GoodTypeEnum;
+import com.yonge.cooleshow.biz.dal.service.UserAccountRecordService;
 import com.yonge.toolset.base.util.StringUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -41,6 +42,8 @@ public class PlatformCashAccountRecordServiceImpl extends ServiceImpl<PlatformCa
 
     @Autowired
     private SysConfigService sysConfigService;
+    @Autowired
+    private UserAccountRecordService userAccountRecordService;
 
     @Override
     public PlatformCashAccountRecordDao getDao() {
@@ -60,49 +63,22 @@ public class PlatformCashAccountRecordServiceImpl extends ServiceImpl<PlatformCa
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean updateWaitRecord() {
-
-        //getDao().queryCanAccountByBizType();
-
-
-        List<String> paramNames = new ArrayList<String>();
-        paramNames.add(SysConfigConstant.MALL_ACCOUNT_PERIOD);
-        paramNames.add(SysConfigConstant.MUSIC_ACCOUNT_PERIOD);
-        paramNames.add(SysConfigConstant.VIP_ACCOUNT_PERIOD);
-        paramNames.add(SysConfigConstant.VIDEO_ACCOUNT_PERIOD);
-        paramNames.add(SysConfigConstant.LIVE_ACCOUNT_PERIOD);
-
-        List<SysConfig> sysConfigs = sysConfigService.findByParamName(paramNames);
-
-        Map<String, String> configMap = sysConfigs.stream().collect(Collectors.toMap(SysConfig::getParamName, SysConfig::getParamValue));
-
-        List<PlatformCashAccountRecord> list = new ArrayList<PlatformCashAccountRecord>();
-        //根据不同类型(业务类型:PRACTICE、陪练课 LIVE、直播课 VIDEO、视频课 MUSIC、乐谱)查询超过账期待结算的记录
-        // List<PlatformCashAccountRecord> list1 = getDao().queryByBizTypeAndPaymentDays(AccountBizTypeEnum.MALL_SHARE.getCode(), Integer.parseInt(configMap.get(SysConfigConstant.MALL_ACCOUNT_PERIOD).toString()));
-        List<PlatformCashAccountRecord> list2 = getDao().queryByBizTypeAndPaymentDays(AccountBizTypeEnum.MUSIC_SHARE.getCode(), Integer.parseInt(configMap.get(SysConfigConstant.MUSIC_ACCOUNT_PERIOD).toString()));
-        List<PlatformCashAccountRecord> list3 = getDao().queryByBizTypeAndPaymentDays(AccountBizTypeEnum.VIP_SHARE.getCode(), Integer.parseInt(configMap.get(SysConfigConstant.VIP_ACCOUNT_PERIOD).toString()));
-        List<PlatformCashAccountRecord> list4 = getDao().queryByBizTypeAndPaymentDays(AccountBizTypeEnum.VIDEO_SHARE.getCode(), Integer.parseInt(configMap.get(SysConfigConstant.VIDEO_ACCOUNT_PERIOD).toString()));
-        List<PlatformCashAccountRecord> list5 = getDao().queryByBizTypeAndPaymentDays(AccountBizTypeEnum.LIVE_SHARE.getCode(), Integer.parseInt(configMap.get(SysConfigConstant.LIVE_ACCOUNT_PERIOD).toString()));
-
-        // if (list1.size() > 0) {
-        //     list.addAll(list1);
-        // }
-        if (list2.size() > 0) {
-            list.addAll(list2);
-        }
-        if (list3.size() > 0) {
-            list.addAll(list3);
-        }
-        if (list4.size() > 0) {
-            list.addAll(list4);
-        }
-        if (list5.size() > 0) {
-            list.addAll(list5);
-        }
-
+        //平台账户修改
+        List<String> paramNames = new ArrayList<>();
+        paramNames.add(AccountBizTypeEnum.PRACTICE.getCode());
+        paramNames.add(AccountBizTypeEnum.LIVE.getCode());
+        paramNames.add(AccountBizTypeEnum.LIVE_SHARE.getCode());
+        paramNames.add(AccountBizTypeEnum.VIDEO.getCode());
+        paramNames.add(AccountBizTypeEnum.VIDEO_SHARE.getCode());
+        paramNames.add(AccountBizTypeEnum.MUSIC.getCode());
+        paramNames.add(AccountBizTypeEnum.MUSIC_SHARE.getCode());
+        paramNames.add(AccountBizTypeEnum.VIP.getCode());
+        paramNames.add(AccountBizTypeEnum.VIP_SHARE.getCode());
+
+        List<PlatformCashAccountRecord> list = getDao().queryCanAccountByBizType(paramNames);
         if (list.size() > 0) {
             Date date = new Date();
-            List<PlatformCashAccountRecord> batchUpdateList = new ArrayList<PlatformCashAccountRecord>();
-
+            List<PlatformCashAccountRecord> batchUpdateList = new ArrayList<>();
             for (PlatformCashAccountRecord pcar : list) {
                 //预收改成实收
                 pcar.setPostStatus(PostStatusEnum.RECORDED);
@@ -114,6 +90,8 @@ public class PlatformCashAccountRecordServiceImpl extends ServiceImpl<PlatformCa
                 getDao().batchUpdate(batchUpdateList);
             }
         }
+        //老师账户修改
+        userAccountRecordService.updateWaitRecord();
         return true;
     }
 

+ 27 - 4
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserAccountRecordServiceImpl.java

@@ -10,10 +10,12 @@ import com.yonge.cooleshow.biz.dal.enums.GoodTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.MessageTypeEnum;
 import com.yonge.cooleshow.biz.dal.service.CourseScheduleService;
 import com.yonge.cooleshow.biz.dal.service.SysMessageService;
+import com.yonge.cooleshow.biz.dal.service.UserAccountService;
 import com.yonge.cooleshow.biz.dal.vo.TeacherEarningVo;
 import com.yonge.cooleshow.biz.dal.vo.UserAccountVo;
 import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
 import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.cooleshow.common.enums.PostStatusEnum;
 import com.yonge.toolset.thirdparty.message.MessageSenderPluginContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -46,6 +48,9 @@ public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordD
     @Autowired
     private CourseScheduleService courseScheduleService;
 
+    @Autowired
+    private UserAccountService userAccountService;
+
     @Override
     public UserAccountRecordVo detail(Long id) {
         UserAccountRecordVo detail = baseMapper.detail(id);
@@ -54,7 +59,7 @@ public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordD
 
     @Override
     public UserAccountRecordVo detail(String orderNo, AccountBizTypeEnum bizType, Long bizId) {
-        UserAccountRecordVo detail = baseMapper.detailByBiz(orderNo,bizType,bizId);
+        UserAccountRecordVo detail = baseMapper.detailByBiz(orderNo, bizType, bizId);
         return detail;
     }
 
@@ -69,12 +74,31 @@ public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordD
     }
 
     @Override
+    public IPage<UserAccountRecordVo> sharePage(IPage<UserAccountRecordVo> page, UserAccountRecordSearch query) {
+        return page.setRecords(baseMapper.sharePage(page, query));
+    }
+
+    @Override
     public HttpResponseResult<UserAccountVo> accountTotal(UserAccountRecordSearch query) {
         return HttpResponseResult.succeed(baseMapper.accountTotal(query));
     }
 
     @Override
-    public UserAccountRecordVo appDetail(Long id){
+    public void updateWaitRecord() {
+        //平台账户修改
+        List<String> paramNames = new ArrayList<>();
+        paramNames.add(AccountBizTypeEnum.LIVE_SHARE.getCode());
+        paramNames.add(AccountBizTypeEnum.VIDEO_SHARE.getCode());
+        paramNames.add(AccountBizTypeEnum.MUSIC_SHARE.getCode());
+        paramNames.add(AccountBizTypeEnum.VIP_SHARE.getCode());
+        List<UserAccountRecord> accountRecords = baseMapper.queryCanAccountByBizType(paramNames);
+        for (UserAccountRecord accountRecord : accountRecords) {
+            userAccountService.accountChange(accountRecord.getId(), PostStatusEnum.RECORDED);
+        }
+    }
+
+    @Override
+    public UserAccountRecordVo appDetail(Long id) {
         UserAccountRecordVo detail = baseMapper.appDetail(id);
         return detail;
     }
@@ -128,7 +152,7 @@ public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordD
                     .eq(CourseSchedule::getCourseGroupId, userOrderDetailVo.getBizId())
                     .ne(CourseSchedule::getStatus, "CANCEL")
             );
-            cancel.stream().forEach(o->bizIds.add(o.getId()));
+            cancel.stream().forEach(o -> bizIds.add(o.getId()));
         }
         if (CollectionUtils.isEmpty(bizIds)) {
             return new ArrayList<>();
@@ -137,5 +161,4 @@ public class UserAccountRecordServiceImpl extends ServiceImpl<UserAccountRecordD
     }
 
 
-
 }

+ 12 - 5
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserAccountServiceImpl.java

@@ -15,6 +15,7 @@ import com.yonge.cooleshow.biz.dal.enums.GoodTypeEnum;
 import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
 import com.yonge.cooleshow.biz.dal.service.*;
 import com.yonge.cooleshow.biz.dal.vo.UserAccountRecordVo;
+import com.yonge.cooleshow.biz.dal.vo.res.AccountShareTotal;
 import com.yonge.cooleshow.common.entity.MallOrderItemDto;
 import com.yonge.cooleshow.common.enums.CacheNameEnum;
 import com.yonge.cooleshow.biz.dal.vo.res.AccountTotal;
@@ -397,7 +398,7 @@ public class UserAccountServiceImpl extends ServiceImpl<UserAccountDao, UserAcco
     @Override
     public void mallTeacherRecordState(List<MallOrderItemDto> shareDto) {
         if (CollectionUtils.isEmpty(shareDto)) {
-            return ;
+            return;
         }
         for (MallOrderItemDto mallOrderItemDto : shareDto) {
             mallTeacherRecordState(mallOrderItemDto);
@@ -431,6 +432,7 @@ public class UserAccountServiceImpl extends ServiceImpl<UserAccountDao, UserAcco
 
     /**
      * 记录平台收入和用户分润收入
+     *
      * @return
      */
     @Override
@@ -444,6 +446,11 @@ public class UserAccountServiceImpl extends ServiceImpl<UserAccountDao, UserAcco
         return true;
     }
 
+    @Override
+    public HttpResponseResult<AccountShareTotal> accountShareTotal(TotalReq query) {
+        return HttpResponseResult.succeed(baseMapper.accountShareTotal(query));
+    }
+
     public void saveMallAccountRecord(MallOrderItemDto shareDto) {
         BigDecimal expectPrice = shareDto.getRealAmount();
         if (expectPrice.compareTo(BigDecimal.ZERO) <= 0) {
@@ -451,7 +458,7 @@ public class UserAccountServiceImpl extends ServiceImpl<UserAccountDao, UserAcco
         }
         //平台收入
         PlatformCashAccountRecord platformCashAccountRecord = new PlatformCashAccountRecord(shareDto.getUserId(), expectPrice,
-                          InOrOutEnum.IN, PostStatusEnum.WAIT, AccountBizTypeEnum.MALL, shareDto.getProductSkuId(), shareDto.getOrderSn(),new Date());
+                InOrOutEnum.IN, PostStatusEnum.WAIT, AccountBizTypeEnum.MALL, shareDto.getProductSkuId(), shareDto.getOrderSn(), new Date());
 
         platformCashAccountRecordService.save(platformCashAccountRecord);
 
@@ -466,11 +473,11 @@ public class UserAccountServiceImpl extends ServiceImpl<UserAccountDao, UserAcco
                 //插入分润老师账户变更记录-分润老师预收
                 HttpResponseResult<UserAccountRecord> recomRecordRes = this.accountRecord(
                         new UserAccountRecordDto(shareDto.getPromoterId(), PostStatusEnum.WAIT, shareFee, InOrOutEnum.IN,
-                                                 bizTypeEnum, shareDto.getProductSkuId(), shareDto.getProductName(), shareDto.getOrderSn()));
-                if(recomRecordRes.getStatus()){
+                                bizTypeEnum, shareDto.getProductSkuId(), shareDto.getProductName(), shareDto.getOrderSn(), shareDto.getUserId()));
+                if (recomRecordRes.getStatus()) {
                     //插入平台预支
                     platformCashAccountRecord = new PlatformCashAccountRecord(shareDto.getPromoterId(), shareFee,
-                            InOrOutEnum.OUT, PostStatusEnum.WAIT, AccountBizTypeEnum.MALL_SHARE, shareDto.getProductSkuId(), shareDto.getOrderSn(),new Date());
+                            InOrOutEnum.OUT, PostStatusEnum.WAIT, AccountBizTypeEnum.MALL_SHARE, shareDto.getProductSkuId(), shareDto.getOrderSn(), new Date());
                     platformCashAccountRecordService.save(platformCashAccountRecord);
                 }
             }

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserOrderServiceImpl.java

@@ -837,7 +837,7 @@ public class UserOrderServiceImpl extends ServiceImpl<UserOrderDao, UserOrder> i
                     //插入分润老师账户变更记录-分润老师预收
                     HttpResponseResult<UserAccountRecord> recomRecordRes = userAccountService.accountRecord(
                             new UserAccountRecordDto(orderDetailVo.getRecomUserId(), PostStatusEnum.WAIT, shareFee, InOrOutEnum.IN,
-                                    bizTypeEnum, orderDetailVo.getBizId(), orderDetailVo.getGoodName(), orderDetailVo.getOrderNo()));
+                                    bizTypeEnum, orderDetailVo.getBizId(), orderDetailVo.getGoodName(), orderDetailVo.getOrderNo(),orderDetailVo.getUserId()));
                     if (recomRecordRes.getStatus()) {
                         //插入平台预支
                         PlatformCashAccountRecord platformCashAccountRecord = new PlatformCashAccountRecord(orderDetailVo.getRecomUserId(), shareFee,

+ 5 - 5
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserWithdrawalServiceImpl.java

@@ -165,7 +165,7 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
         //插入账户变更
         HttpResponseResult<UserAccountRecord> accountChange = userAccountService.accountRecord(new UserAccountRecordDto(user.getId(), PostStatusEnum.FROZEN,
                 withdrawalReq.getAmountWithdrawal(), InOrOutEnum.OUT, AccountBizTypeEnum.WITHDRAWAL,
-                userWithdrawal.getId(), "老师结算", null
+                userWithdrawal.getId(), "老师结算", null, null
         ));
 
         if (accountChange.getStatus()) {
@@ -279,12 +279,12 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
                 res = HttpResponseResult.failed("结算" + authOperaReq.getId() + "失败,失败原因:" + withdraw.getMsg());
 
                 UserAccountRecordVo detail = accountRecordService.detail(null, AccountBizTypeEnum.WITHDRAWAL, Long.parseLong(authOperaReq.getId()));
-                userAccountService.accountChange(detail.getId(),PostStatusEnum.CANCEL);
+                userAccountService.accountChange(detail.getId(), PostStatusEnum.CANCEL);
             }
         } else {
             //审核不通过,账户解冻
             UserAccountRecordVo detail = accountRecordService.detail(null, AccountBizTypeEnum.WITHDRAWAL, Long.parseLong(authOperaReq.getId()));
-            userAccountService.accountChange(detail.getId(),PostStatusEnum.CANCEL);
+            userAccountService.accountChange(detail.getId(), PostStatusEnum.CANCEL);
 
             //发生审核未通过通知
             unpassSend(build.getUserId(), build.getPhone(), authOperaReq.getReason());
@@ -357,7 +357,7 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
 
             //结算成功,账户解冻,入账户明细
             UserAccountRecordVo recordVo = accountRecordService.detail(null, AccountBizTypeEnum.WITHDRAWAL, detail.getId());
-            userAccountService.accountChange(recordVo.getId(),PostStatusEnum.RECORDED);
+            userAccountService.accountChange(recordVo.getId(), PostStatusEnum.RECORDED);
             //发生结算成功通知
             successSend(detail.getUserId(), detail.getPhone());
         } else if ("2".equals(callback.getStatus())) {
@@ -369,7 +369,7 @@ public class UserWithdrawalServiceImpl extends ServiceImpl<UserWithdrawalDao, Us
 
             //结算失败,账户解冻
             UserAccountRecordVo recordVo = accountRecordService.detail(null, AccountBizTypeEnum.WITHDRAWAL, detail.getId());
-            userAccountService.accountChange(recordVo.getId(),PostStatusEnum.CANCEL);
+            userAccountService.accountChange(recordVo.getId(), PostStatusEnum.CANCEL);
 
             //发生结算失败通知
             unpassSend(detail.getUserId(), detail.getPhone(), callback.getErrorMsg());

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/VideoLessonPurchaseRecordServiceImpl.java

@@ -173,7 +173,7 @@ public class VideoLessonPurchaseRecordServiceImpl extends ServiceImpl<VideoLesso
         //插入老师账户变更记录-老师预收
         userAccountService.accountRecord(
                 new UserAccountRecordDto(userOrderDetailVo.getMerchId(), PostStatusEnum.WAIT, transAmount, InOrOutEnum.IN,
-                        AccountBizTypeEnum.VIDEO, lessonGroup.getId(), lessonGroup.getLessonName(), userOrderDetailVo.getOrderNo()));
+                        AccountBizTypeEnum.VIDEO, lessonGroup.getId(), lessonGroup.getLessonName(), userOrderDetailVo.getOrderNo(),userOrderDetailVo.getUserId()));
     }
 
     /**

+ 22 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/UserAccountRecordVo.java

@@ -23,6 +23,12 @@ public class UserAccountRecordVo extends UserAccountRecord{
 	@ApiModelProperty("发生时间(mm-dd) ")
 	private String timeDay;
 
+	@ApiModelProperty("购买用户名称 ")
+	private String buyUserName;
+
+	@ApiModelProperty("购买用户头像 ")
+	private String buyUserAvatar;
+
 	@ApiModelProperty(value = "上课时间")
 	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@@ -64,4 +70,20 @@ public class UserAccountRecordVo extends UserAccountRecord{
 	public void setEndTime(Date endTime) {
 		this.endTime = endTime;
 	}
+
+	public String getBuyUserName() {
+		return buyUserName;
+	}
+
+	public void setBuyUserName(String buyUserName) {
+		this.buyUserName = buyUserName;
+	}
+
+	public String getBuyUserAvatar() {
+		return buyUserAvatar;
+	}
+
+	public void setBuyUserAvatar(String buyUserAvatar) {
+		this.buyUserAvatar = buyUserAvatar;
+	}
 }

+ 66 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/res/AccountShareTotal.java

@@ -0,0 +1,66 @@
+package com.yonge.cooleshow.biz.dal.vo.res;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.math.BigDecimal;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022/4/21 11:29
+ */
+@ApiModel(value = "AccountShareTotal", description = "分润统计对象")
+public class AccountShareTotal {
+    @ApiModelProperty("累计奖励")
+    private BigDecimal totalAmount = BigDecimal.ZERO;
+    @ApiModelProperty("待入账")
+    private BigDecimal waitAmount = BigDecimal.ZERO;
+    @ApiModelProperty("已入账")
+    private BigDecimal recordedAmount = BigDecimal.ZERO;
+    @ApiModelProperty("已退费")
+    private BigDecimal cancelAmount = BigDecimal.ZERO;
+
+    @ApiModelProperty("推广学员数")
+    private BigDecimal studentNum = BigDecimal.ZERO;
+
+
+    public BigDecimal getTotalAmount() {
+        return totalAmount;
+    }
+
+    public void setTotalAmount(BigDecimal totalAmount) {
+        this.totalAmount = totalAmount;
+    }
+
+    public BigDecimal getWaitAmount() {
+        return waitAmount;
+    }
+
+    public void setWaitAmount(BigDecimal waitAmount) {
+        this.waitAmount = waitAmount;
+    }
+
+    public BigDecimal getRecordedAmount() {
+        return recordedAmount;
+    }
+
+    public void setRecordedAmount(BigDecimal recordedAmount) {
+        this.recordedAmount = recordedAmount;
+    }
+
+    public BigDecimal getCancelAmount() {
+        return cancelAmount;
+    }
+
+    public void setCancelAmount(BigDecimal cancelAmount) {
+        this.cancelAmount = cancelAmount;
+    }
+
+    public BigDecimal getStudentNum() {
+        return studentNum;
+    }
+
+    public void setStudentNum(BigDecimal studentNum) {
+        this.studentNum = studentNum;
+    }
+}

+ 12 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/UserAccountMapper.xml

@@ -156,4 +156,16 @@
         where post_status_ in ('WAIT','FROZEN','RECORDED') and in_or_out_ = 'IN' and err_flag_ = 0
             and order_no_ = #{orderNo}
     </select>
+
+    <select id="accountShareTotal" resultType="com.yonge.cooleshow.biz.dal.vo.res.AccountShareTotal">
+        select
+            sum(if(t.post_status_ in ('WAIT','RECORDED'),t.trans_amount_,0)) as totalAmount,
+            sum(if(t.post_status_ = 'WAIT',t.trans_amount_,0)) as waitAmount,
+            sum(if(t.post_status_ = 'RECORDED',t.trans_amount_,0)) as recordedAmount,
+            sum(if(t.post_status_ = 'CANCEL',t.trans_amount_,0)) as cancelAmount,
+            count(distinct t.buy_user_) as studentNum
+        from user_cash_account_record t
+        where t.account_id_ = #{param.userId}
+          and t.biz_type_ in ('LIVE_SHARE','VIDEO_SHARE','MUSIC_SHARE','VIP_SHARE','MALL_SHARE')
+    </select>
 </mapper>

+ 40 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/UserAccountRecordMapper.xml

@@ -17,6 +17,7 @@
         <result column="err_flag_" property="errFlag" />
         <result column="err_msg_" property="errMsg" />
         <result column="account_period_time_" property="accountPeriodTime" />
+        <result column="buy_user_" property="buyUser" />
     </resultMap>
 
     <!-- 表字段 -->
@@ -36,6 +37,7 @@
         , t.err_flag_ as errFlag
         , t.err_msg_ as errMsg
         , t.account_period_time_ as accountPeriodTime
+        , t.buy_user_ as buyUser
         </sql>
 
     <select id="detail" resultType="com.yonge.cooleshow.biz.dal.vo.UserAccountRecordVo">
@@ -79,7 +81,7 @@
             a.end_time_ as endTime
         from user_cash_account_record t
         left join sys_user u on t.account_id_ = u.id_
-        left join course_schedule a on t.biz_id_ = a.id_ and t.biz_type_ in ('PRACTICE','LIVE')
+        left join course_schedule a on t.biz_id_ = a.id_ and t.biz_type_ in ('PRACTICE','LIVE','LIVE_SHARE')
         <where>
             <if test="null != param.search and '' != param.search">
                 AND (
@@ -101,6 +103,34 @@
         <include refid="selectSql"/>
     </select>
 
+    <select id="sharePage" resultType="com.yonge.cooleshow.biz.dal.vo.UserAccountRecordVo">
+        select
+            <include refid="baseColumns" />,
+            ifnull(u.username_,u.real_name_) as accountName,
+            DATE_FORMAT(t.create_time_,'%m-%d') as timeDay,
+            ifnull(u1.username_,u1.real_name_) as buyUserName,
+            u1.avatar_ as buyUserAvatar
+        from user_cash_account_record t
+        left join sys_user u on t.account_id_ = u.id_
+        left join sys_user u1 on t.buy_user_ = u1.id_
+        <where>
+            and t.biz_type_ in ('LIVE_SHARE','VIDEO_SHARE','MUSIC_SHARE','VIP_SHARE','MALL_SHARE')
+            <if test="null != param.username and '' != param.username">
+                AND u1.username_ LIKE CONCAT('%', #{param.username}, '%')
+            </if>
+            <if test="null != param.search and '' != param.search">
+                AND (
+                u.id_ LIKE CONCAT('%', #{param.search}, '%') or
+                u.username_ LIKE CONCAT('%', #{param.search}, '%') or
+                u.phone_ LIKE CONCAT('%', #{param.search}, '%')
+                )
+            </if>
+            <include refid="selectCondition"/>
+        </where>
+        order by t.update_time_ desc
+    </select>
+
+
     <select id="accountTotal" resultType="com.yonge.cooleshow.biz.dal.vo.UserAccountVo">
         select
             sum(
@@ -290,4 +320,13 @@
             </if>
         </where>
     </select>
+
+    <select id="queryCanAccountByBizType" resultType="com.yonge.cooleshow.biz.dal.entity.UserAccountRecord">
+        select * from user_cash_account_record
+        where post_status_ = 'WAIT' and account_period_time_ &lt; now()
+        and biz_type_ IN
+        <foreach collection="bizTypes" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </select>
 </mapper>

+ 1 - 0
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/UserOrderController.java

@@ -185,6 +185,7 @@ public class UserOrderController extends BaseController {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
         query.setUserId(user.getId());
+        query.setOrderClient(ClientEnum.STUDENT.getCode());
 
         if (StringUtil.isEmpty(query.getSearchDate())) {
             query.setSearchDate(DateUtil.format(new Date(), "yyyy-MM"));

+ 26 - 0
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/UserAccountController.java

@@ -8,6 +8,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.UserAccountRecordSearch;
 import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
 import com.yonge.cooleshow.biz.dal.service.UserAccountRecordService;
 import com.yonge.cooleshow.biz.dal.service.UserAccountService;
+import com.yonge.cooleshow.biz.dal.vo.res.AccountShareTotal;
 import com.yonge.toolset.mybatis.support.PageUtil;
 import com.yonge.cooleshow.biz.dal.vo.UserAccountRecordVo;
 import com.yonge.cooleshow.biz.dal.vo.UserAccountVo;
@@ -22,6 +23,7 @@ import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.Valid;
@@ -98,4 +100,28 @@ public class UserAccountController extends BaseController {
         query.setUserId(user.getId());
         return userAccountService.accountTotal(query);
     }
+
+    @ApiOperation(value = "酷乐秀推广计划-统计")
+    @PostMapping("/accountShareTotal")
+    public HttpResponseResult<AccountShareTotal> accountShareTotal() {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        TotalReq query = new TotalReq();
+        query.setUserId(user.getId());
+        return userAccountService.accountShareTotal(query);
+    }
+
+    @PostMapping("/sharePage")
+    @ApiOperation(value = "酷乐秀推广计划-分页", notes = "传入userAccountRecordSearch")
+    public HttpResponseResult<PageInfo<UserAccountRecordVo>> sharePage(@RequestBody UserAccountRecordSearch query) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        query.setUserId(user.getId());
+        IPage<UserAccountRecordVo> pages = userAccountRecordService.sharePage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+    }
 }

+ 1 - 1
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/UserOrderController.java

@@ -160,7 +160,7 @@ public class UserOrderController extends BaseController {
             return failed(HttpStatus.FORBIDDEN, "请登录");
         }
         query.setUserId(user.getId());
-
+        query.setOrderClient(ClientEnum.TEACHER.getCode());
         if (StringUtil.isEmpty(query.getSearchDate())) {
             query.setSearchDate(DateUtil.format(new Date(), "yyyy-MM"));
         }