10 changed files with 257 additions and 2 deletions
Unified View
Diff Options
-
49dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/revenuereward/user/RevenueRewardUserQueryController.java
-
25dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/revenuereward/user/request/UseGetRevenueRewardAbstractQueryParams.java
-
24dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/revenuereward/user/request/UsePageRevenueRewardRecordQueryParams.java
-
23dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/revenuereward/user/response/UseGetRevenueRewardAbstractVo.java
-
33dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/revenuereward/user/response/UseGetRevenueRewardRecordVo.java
-
5dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/reward/RewardApplicationService.java
-
18dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/view/RevenueRewardViewDao.java
-
10dating-agency-mall-server/src/main/java/com/qniao/dam/query/revenuereward/RevenueRewardQueryService.java
-
21dating-agency-mall-server/src/main/java/com/qniao/dam/query/revenuereward/impl/RevenueRewardQueryServiceImpl.java
-
51dating-agency-mall-server/src/main/resources/mapper/revenuereward/RevenueRewardViewMapper.xml
@ -0,0 +1,49 @@ |
|||||
|
package com.qniao.dam.api.query.revenuereward.user; |
||||
|
|
||||
|
import com.qniao.dam.api.query.revenuereward.user.request.UseGetRevenueRewardAbstractQueryParams; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.request.UsePageRevenueRewardRecordQueryParams; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardAbstractVo; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardRecordVo; |
||||
|
import com.qniao.dam.query.revenuereward.RevenueRewardQueryService; |
||||
|
import com.qniao.domain.QnPage; |
||||
|
import com.qniao.framework.utils.PageUtil; |
||||
|
import io.swagger.annotations.Api; |
||||
|
import io.swagger.annotations.ApiOperation; |
||||
|
import org.springframework.web.bind.annotation.GetMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestParam; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
import javax.annotation.Resource; |
||||
|
import java.util.Objects; |
||||
|
|
||||
|
@RestController |
||||
|
@RequestMapping("user") |
||||
|
@Api(tags = "收益") |
||||
|
public class RevenueRewardUserQueryController { |
||||
|
|
||||
|
@Resource |
||||
|
private RevenueRewardQueryService revenueRewardQueryService; |
||||
|
|
||||
|
@GetMapping("get/revenue-reward-abstract") |
||||
|
@ApiOperation("获取用户收益摘要") |
||||
|
public UseGetRevenueRewardAbstractVo useGetRevenueRewardAbstract(UseGetRevenueRewardAbstractQueryParams queryParams, |
||||
|
@RequestParam("userId") Long userId) { |
||||
|
if (Objects.isNull(queryParams.getQueryUserId())) { |
||||
|
queryParams.setQueryUserId(userId); |
||||
|
} |
||||
|
return revenueRewardQueryService.getRevenueRewardAbstract(queryParams); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("page/revenue-reward-record") |
||||
|
@ApiOperation("获取用户收益记录") |
||||
|
public QnPage<UseGetRevenueRewardRecordVo> usePageRevenueRewardRecord(PageUtil pageUtil, |
||||
|
UsePageRevenueRewardRecordQueryParams queryParams, |
||||
|
@RequestParam("userId") Long userId) { |
||||
|
if (Objects.isNull(queryParams.getQueryUserId())) { |
||||
|
queryParams.setQueryUserId(userId); |
||||
|
} |
||||
|
return PageUtil.convert(revenueRewardQueryService.pageRevenueRewardRecord(pageUtil, queryParams),UseGetRevenueRewardRecordVo.class); |
||||
|
} |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,25 @@ |
|||||
|
package com.qniao.dam.api.query.revenuereward.user.request; |
||||
|
|
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
import org.springframework.format.annotation.DateTimeFormat; |
||||
|
|
||||
|
import java.time.LocalDateTime; |
||||
|
|
||||
|
@Data |
||||
|
public class UseGetRevenueRewardAbstractQueryParams { |
||||
|
|
||||
|
@ApiModelProperty("查询用户标识") |
||||
|
private Long queryUserId; |
||||
|
|
||||
|
@ApiModelProperty("收益开始时间") |
||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
||||
|
private LocalDateTime revenueTimeFrom; |
||||
|
|
||||
|
@ApiModelProperty("收益结束时间") |
||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
||||
|
private LocalDateTime revenueTimeTo; |
||||
|
|
||||
|
@ApiModelProperty("交易类型 101认证、102发布、103匹配、104推荐") |
||||
|
private Integer tradeType; |
||||
|
} |
||||
@ -0,0 +1,24 @@ |
|||||
|
package com.qniao.dam.api.query.revenuereward.user.request; |
||||
|
|
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
import org.springframework.format.annotation.DateTimeFormat; |
||||
|
|
||||
|
import java.time.LocalDateTime; |
||||
|
|
||||
|
@Data |
||||
|
public class UsePageRevenueRewardRecordQueryParams { |
||||
|
@ApiModelProperty("查询用户标识") |
||||
|
private Long queryUserId; |
||||
|
|
||||
|
@ApiModelProperty("收益开始时间") |
||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
||||
|
private LocalDateTime revenueTimeFrom; |
||||
|
|
||||
|
@ApiModelProperty("收益结束时间") |
||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
||||
|
private LocalDateTime revenueTimeTo; |
||||
|
|
||||
|
@ApiModelProperty("交易类型 101认证、102发布、103匹配、104推荐") |
||||
|
private Integer tradeType; |
||||
|
} |
||||
@ -0,0 +1,23 @@ |
|||||
|
package com.qniao.dam.api.query.revenuereward.user.response; |
||||
|
|
||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
||||
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
|
||||
|
@Data |
||||
|
public class UseGetRevenueRewardAbstractVo { |
||||
|
|
||||
|
@ApiModelProperty("收益唯一标识") |
||||
|
@JsonSerialize(using = ToStringSerializer.class) |
||||
|
private Long id; |
||||
|
|
||||
|
@ApiModelProperty("营收额") |
||||
|
private BigDecimal totalRevenue; |
||||
|
|
||||
|
@ApiModelProperty("收益额") |
||||
|
private BigDecimal totalEarnings; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,33 @@ |
|||||
|
package com.qniao.dam.api.query.revenuereward.user.response; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import com.qniao.dam.domian.aggregate.walletaccount.constant.TradeTypeEnum; |
||||
|
import io.swagger.annotations.ApiModelProperty; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
import java.time.LocalDateTime; |
||||
|
|
||||
|
@Data |
||||
|
public class UseGetRevenueRewardRecordVo { |
||||
|
|
||||
|
@ApiModelProperty("交易类型") |
||||
|
private TradeTypeEnum tradeType; |
||||
|
|
||||
|
@ApiModelProperty("营收额") |
||||
|
private BigDecimal revenue; |
||||
|
|
||||
|
@ApiModelProperty("收益额 营收额除去平台服务费") |
||||
|
private BigDecimal earnings; |
||||
|
|
||||
|
@ApiModelProperty("订单金额") |
||||
|
private BigDecimal totalAssociateOrderAmount; |
||||
|
|
||||
|
@ApiModelProperty("内容") |
||||
|
private String content; |
||||
|
|
||||
|
@ApiModelProperty("收益时间") |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
||||
|
private LocalDateTime revenueTime; |
||||
|
|
||||
|
} |
||||
@ -0,0 +1,18 @@ |
|||||
|
package com.qniao.dam.infrastructure.persistent.dao.view; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.request.UseGetRevenueRewardAbstractQueryParams; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.request.UsePageRevenueRewardRecordQueryParams; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardAbstractVo; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardRecordVo; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
@Mapper |
||||
|
public interface RevenueRewardViewDao { |
||||
|
UseGetRevenueRewardAbstractVo getRevenueRewardAbstract(@Param("queryParams") UseGetRevenueRewardAbstractQueryParams queryParams); |
||||
|
|
||||
|
IPage<UseGetRevenueRewardRecordVo> pageRevenueRewardRecord(Page<Object> pageWithoutOrders, |
||||
|
@Param("queryParams") UsePageRevenueRewardRecordQueryParams queryParams); |
||||
|
} |
||||
@ -1,7 +1,17 @@ |
|||||
package com.qniao.dam.query.revenuereward; |
package com.qniao.dam.query.revenuereward; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.request.UseGetRevenueRewardAbstractQueryParams; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.request.UsePageRevenueRewardRecordQueryParams; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardAbstractVo; |
||||
|
import com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardRecordVo; |
||||
import com.qniao.dam.domain.aggregate.revenuereward.entity.RevenueReward; |
import com.qniao.dam.domain.aggregate.revenuereward.entity.RevenueReward; |
||||
|
import com.qniao.framework.utils.PageUtil; |
||||
|
|
||||
public interface RevenueRewardQueryService { |
public interface RevenueRewardQueryService { |
||||
RevenueReward queryByUserId(Long userId); |
RevenueReward queryByUserId(Long userId); |
||||
|
|
||||
|
UseGetRevenueRewardAbstractVo getRevenueRewardAbstract(UseGetRevenueRewardAbstractQueryParams queryParams); |
||||
|
|
||||
|
IPage<UseGetRevenueRewardRecordVo> pageRevenueRewardRecord(PageUtil pageUtil, UsePageRevenueRewardRecordQueryParams queryParams); |
||||
} |
} |
||||
@ -0,0 +1,51 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8"?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
<mapper namespace="com.qniao.dam.infrastructure.persistent.dao.view.RevenueRewardViewDao"> |
||||
|
|
||||
|
|
||||
|
<select id="getRevenueRewardAbstract" |
||||
|
resultType="com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardAbstractVo"> |
||||
|
select |
||||
|
drr.id, |
||||
|
SUM(drrr.revenue) as totalRevenue, |
||||
|
SUM(drrr.earnings) as totalEarnings |
||||
|
from da_revenue_reward_record as drrr |
||||
|
LEFT JOIN da_revenue_reward as drr on drr.id=drrr.revenue_reward_id |
||||
|
WHERE drr.is_delete=0 |
||||
|
<if test="queryParams.queryUserId != null"> |
||||
|
and drr.user_id = #{queryParams.queryUserId} |
||||
|
</if> |
||||
|
<if test="queryParams.tradeType != null"> |
||||
|
and drrr.trade_type = #{queryParams.tradeType} |
||||
|
</if> |
||||
|
<if test="queryParams.revenueTimeFrom != null and queryParams.revenueTimeTo != null"> |
||||
|
and drrr.create_time BETWEEN #{queryParams.revenueTimeFrom} and #{queryParams.revenueTimeTo} |
||||
|
</if> |
||||
|
GROUP BY drr.id |
||||
|
limit 1 |
||||
|
</select> |
||||
|
|
||||
|
<select id="pageRevenueRewardRecord" |
||||
|
resultType="com.qniao.dam.api.query.revenuereward.user.response.UseGetRevenueRewardRecordVo"> |
||||
|
select |
||||
|
drrr.trade_type, |
||||
|
drrr.revenue, |
||||
|
drrr.earnings, |
||||
|
drrr.total_associate_order_amount, |
||||
|
drrr.content, |
||||
|
drrr.create_time as revenueTime |
||||
|
from da_revenue_reward_record as drrr |
||||
|
LEFT JOIN da_revenue_reward as drr on drr.id=drrr.revenue_reward_id |
||||
|
WHERE drr.is_delete=0 |
||||
|
<if test="queryParams.queryUserId != null"> |
||||
|
and drr.user_id = #{queryParams.queryUserId} |
||||
|
</if> |
||||
|
<if test="queryParams.tradeType != null"> |
||||
|
and drrr.trade_type = #{queryParams.tradeType} |
||||
|
</if> |
||||
|
<if test="queryParams.revenueTimeFrom != null and queryParams.revenueTimeTo != null"> |
||||
|
and drrr.create_time BETWEEN #{queryParams.revenueTimeFrom} and #{queryParams.revenueTimeTo} |
||||
|
</if> |
||||
|
ORDER BY drrr.create_time desc |
||||
|
</select> |
||||
|
</mapper> |
||||
Write
Preview
Loading…
Cancel
Save