Browse Source

收益明细

release
张彭杰 1 year ago
parent
commit
72dbd9fe92
10 changed files with 88 additions and 0 deletions
  1. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/revenuereward/user/response/UsePageRevenueRewardRecordByOperatorVo.java
  2. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/domain/OperationCenterDao.java
  3. 3
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/matchmaker/MatchmakerQueryService.java
  4. 30
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/matchmaker/impl/MatchmakerQueryServiceImpl.java
  5. 5
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/operationcenter/OperationCenterQueryService.java
  6. 22
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/operationcenter/impl/OperationCenterQueryServiceImpl.java
  7. 4
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/revenuereward/impl/RevenueRewardQueryServiceImpl.java
  8. 2
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/store/StoreQueryService.java
  9. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/store/impl/StoreQueryServiceImpl.java
  10. 1
      dating-agency-mall-server/src/main/resources/mapper/revenuereward/RevenueRewardViewMapper.xml

7
dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/revenuereward/user/response/UsePageRevenueRewardRecordByOperatorVo.java

@ -5,6 +5,7 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qniao.dam.domian.aggregate.product.constant.ProductSubCategoryEnum;
import com.qniao.dam.domian.aggregate.walletaccount.constant.TradeTypeEnum;
import com.qniao.dau.domian.aggregate.matchmaker.constant.MatchmakerLevelEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -29,9 +30,15 @@ public class UsePageRevenueRewardRecordByOperatorVo {
@ApiModelProperty("收益者手机")
private String revenueOwnerPhone;
@ApiModelProperty("红娘用户ID")
private Long matchmakerUserId;
@ApiModelProperty("红娘身份类型")
private ProductSubCategoryEnum matchmakerType;
@ApiModelProperty("红娘等级")
private MatchmakerLevelEnum matchmakerLevel;
@ApiModelProperty("交易类型")
private TradeTypeEnum tradeType;

7
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/domain/OperationCenterDao.java

@ -0,0 +1,7 @@
package com.qniao.dam.infrastructure.persistent.dao.domain;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qniao.dau.domain.aggregate.operationcenter.entity.OperationCenter;
public interface OperationCenterDao extends BaseMapper<OperationCenter> {
}

3
dating-agency-mall-server/src/main/java/com/qniao/dam/query/matchmaker/MatchmakerQueryService.java

@ -2,9 +2,12 @@ package com.qniao.dam.query.matchmaker;
import com.qniao.dau.domain.aggregate.matchmaker.entity.Matchmaker;
import com.qniao.dau.domain.aggregate.matchmakeraudit.entity.MatchmakerAudit;
import com.qniao.dau.domian.aggregate.matchmaker.constant.MatchmakerLevelEnum;
public interface MatchmakerQueryService {
Matchmaker queryByUserId(Long userId);
MatchmakerAudit queryAuditByUserId(Long userId);
MatchmakerLevelEnum queryLevelByUserId(Long userId);
}

30
dating-agency-mall-server/src/main/java/com/qniao/dam/query/matchmaker/impl/MatchmakerQueryServiceImpl.java

@ -4,11 +4,15 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qniao.dam.infrastructure.persistent.dao.domain.MatchmakerAuditDao;
import com.qniao.dam.infrastructure.persistent.dao.domain.MatchmakerDao;
import com.qniao.dam.query.matchmaker.MatchmakerQueryService;
import com.qniao.dam.query.operationcenter.OperationCenterQueryService;
import com.qniao.dam.query.store.StoreQueryService;
import com.qniao.dau.domain.aggregate.matchmaker.entity.Matchmaker;
import com.qniao.dau.domain.aggregate.matchmakeraudit.entity.MatchmakerAudit;
import com.qniao.dau.domian.aggregate.matchmaker.constant.MatchmakerLevelEnum;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Objects;
@Service
public class MatchmakerQueryServiceImpl implements MatchmakerQueryService {
@ -17,6 +21,10 @@ public class MatchmakerQueryServiceImpl implements MatchmakerQueryService {
private MatchmakerDao matchmakerDao;
@Resource
private MatchmakerAuditDao matchmakerAuditDao;
@Resource
private StoreQueryService storeQueryService;
@Resource
private OperationCenterQueryService operationCenterQueryService;
@Override
public Matchmaker queryByUserId(Long userId) {
@ -32,5 +40,27 @@ public class MatchmakerQueryServiceImpl implements MatchmakerQueryService {
.orderByDesc(MatchmakerAudit::getCreateTime)
.last("limit 1"));
}
/**
* 查询用户的红娘级别
*
* @param userId
* @return
*/
@Override
public MatchmakerLevelEnum queryLevelByUserId(Long userId) {
MatchmakerLevelEnum matchmakerLevel = null;
Matchmaker matchmaker = queryByUserId(userId);
if (Objects.nonNull(matchmaker)) {
matchmakerLevel = matchmaker.queryLevel();
if (storeQueryService.hasByUserId(userId)) {
matchmakerLevel = MatchmakerLevelEnum.MATCHMAKER_STORE;
}
if (operationCenterQueryService.hasByUserId(userId)) {
matchmakerLevel = MatchmakerLevelEnum.MATCHMAKER_OPERATION_CENTER;
}
}
return matchmakerLevel;
}
}

5
dating-agency-mall-server/src/main/java/com/qniao/dam/query/operationcenter/OperationCenterQueryService.java

@ -0,0 +1,5 @@
package com.qniao.dam.query.operationcenter;
public interface OperationCenterQueryService {
boolean hasByUserId(Long userId);
}

22
dating-agency-mall-server/src/main/java/com/qniao/dam/query/operationcenter/impl/OperationCenterQueryServiceImpl.java

@ -0,0 +1,22 @@
package com.qniao.dam.query.operationcenter.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qniao.dam.infrastructure.persistent.dao.domain.OperationCenterDao;
import com.qniao.dam.query.operationcenter.OperationCenterQueryService;
import com.qniao.dau.domain.aggregate.operationcenter.entity.OperationCenter;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class OperationCenterQueryServiceImpl implements OperationCenterQueryService {
@Resource
private OperationCenterDao operationCenterDao;
@Override
public boolean hasByUserId(Long userId) {
return operationCenterDao.selectCount(new LambdaQueryWrapper<OperationCenter>()
.eq(OperationCenter::getAdministratorId, userId)) > 0;
}
}

4
dating-agency-mall-server/src/main/java/com/qniao/dam/query/revenuereward/impl/RevenueRewardQueryServiceImpl.java

@ -10,6 +10,7 @@ import com.qniao.dam.domain.aggregate.revenuereward.entity.RevenueReward;
import com.qniao.dam.domian.aggregate.walletaccount.constant.IdentityTypeEnum;
import com.qniao.dam.infrastructure.persistent.dao.domain.RevenueRewardDao;
import com.qniao.dam.infrastructure.persistent.dao.view.RevenueRewardViewDao;
import com.qniao.dam.query.matchmaker.MatchmakerQueryService;
import com.qniao.dam.query.revenuereward.RevenueRewardQueryService;
import com.qniao.domain.QnPage;
import com.qniao.framework.utils.PageUtil;
@ -28,6 +29,8 @@ public class RevenueRewardQueryServiceImpl implements RevenueRewardQueryService
private RevenueRewardDao revenueRewardDao;
@Resource
private RevenueRewardViewDao revenueRewardViewDao;
@Resource
private MatchmakerQueryService matchmakerQueryService;
@Override
public RevenueReward queryByUserId(Long userId) {
@ -79,6 +82,7 @@ public class RevenueRewardQueryServiceImpl implements RevenueRewardQueryService
Map<Long, List<RevenueRewardAssociateOrderRecordVo>> allAssociateOrderRecordMap = allAssociateOrderRecordList.stream().collect(Collectors.groupingBy(RevenueRewardAssociateOrderRecordVo::getRevenueRewardRecordId));
page.getRecords().forEach(record -> {
record.setAssociateOrderRecordList(allAssociateOrderRecordMap.get(record.getRevenueRewardRecordId()));
record.setMatchmakerLevel(matchmakerQueryService.queryLevelByUserId(record.getMatchmakerUserId()));
});
}
return page;

2
dating-agency-mall-server/src/main/java/com/qniao/dam/query/store/StoreQueryService.java

@ -4,4 +4,6 @@ import com.qniao.dau.domain.aggregate.store.entity.Store;
public interface StoreQueryService {
Store queryById(Long id);
boolean hasByUserId(Long userId);
}

7
dating-agency-mall-server/src/main/java/com/qniao/dam/query/store/impl/StoreQueryServiceImpl.java

@ -1,5 +1,6 @@
package com.qniao.dam.query.store.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qniao.dam.infrastructure.persistent.dao.domain.StoreDao;
import com.qniao.dam.query.store.StoreQueryService;
import com.qniao.dau.domain.aggregate.store.entity.Store;
@ -17,4 +18,10 @@ public class StoreQueryServiceImpl implements StoreQueryService {
public Store queryById(Long id) {
return storeDao.selectById(id);
}
@Override
public boolean hasByUserId(Long userId) {
return storeDao.selectCount(new LambdaQueryWrapper<Store>()
.eq(Store::getAdministratorId, userId)) > 0;
}
}

1
dating-agency-mall-server/src/main/resources/mapper/revenuereward/RevenueRewardViewMapper.xml

@ -60,6 +60,7 @@
select
darrr.id as revenueRewardRecordId,
darrr.create_time,
dam.user_id as matchmakerUserId,
dam.type as matchmakerType,
dam.`name` as revenueOwnerName,
dam.phone as revenueOwnerPhone,

Loading…
Cancel
Save