Browse Source

直播红娘任务

master
张彭杰 1 month ago
parent
commit
aae5867341
5 changed files with 72 additions and 17 deletions
  1. 20
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/right/user/RightUserQueryController.java
  2. 30
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/right/user/response/UserGetUserVipInfoVo.java
  3. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/right/RightQueryService.java
  4. 30
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/right/impl/RightQueryServiceImpl.java
  5. 2
      dating-agency-mall-server/src/main/resources/mapper/right/PurchaseProductRecordQueryService.xml

20
dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/right/user/RightUserQueryController.java

@ -3,13 +3,12 @@ package com.qniao.dam.api.query.right.user;
import com.qniao.dam.api.query.right.user.request.UserCheckEnableRightBySdkQueryParam; import com.qniao.dam.api.query.right.user.request.UserCheckEnableRightBySdkQueryParam;
import com.qniao.dam.api.query.right.user.request.UserListRightByCustomerQueryParam; import com.qniao.dam.api.query.right.user.request.UserListRightByCustomerQueryParam;
import com.qniao.dam.api.query.right.user.request.UserListRightByOperatorQueryParam; import com.qniao.dam.api.query.right.user.request.UserListRightByOperatorQueryParam;
import com.qniao.dam.api.query.right.user.response.UserCheckEnableRightBySdkVo;
import com.qniao.dam.api.query.right.user.response.UserListRightByCustomerVo;
import com.qniao.dam.api.query.right.user.response.UserListRightByOperatorVo;
import com.qniao.dam.api.query.right.user.response.UserVipRightVo;
import com.qniao.dam.api.query.right.user.response.*;
import com.qniao.dam.domain.aggregate.right.entity.Right;
import com.qniao.dam.query.right.RightQueryService; import com.qniao.dam.query.right.RightQueryService;
import com.qniao.dau.infrastructure.constant.RequestHeaderFields; import com.qniao.dau.infrastructure.constant.RequestHeaderFields;
import com.qniao.framework.annotation.IgnoreResponseAdvice; import com.qniao.framework.annotation.IgnoreResponseAdvice;
import com.qniao.framework.utils.TypeConvertUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
@ -17,6 +16,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Objects;
@RestController @RestController
@RequestMapping("user") @RequestMapping("user")
@ -51,7 +51,15 @@ public class RightUserQueryController {
@GetMapping("check/user/vip/right") @GetMapping("check/user/vip/right")
@ApiOperation("检查用户vip权益") @ApiOperation("检查用户vip权益")
public UserVipRightVo checkUserVipRight(@RequestParam("userId") Long userId,@RequestParam("miId") Long miId){
return rightQueryService.checkUserVipRight(userId,miId);
public UserVipRightVo checkUserVipRight(@RequestParam("userId") Long userId, @RequestParam("miId") Long miId) {
return rightQueryService.checkUserVipRight(userId, miId);
}
@GetMapping("get/user/vip/right")
@ApiOperation("获取用户vip信息")
public UserGetUserVipInfoVo userGetUserVipInfo(@RequestParam("userId") Long userId,
@RequestParam("miId") Long miId) {
Right right = rightQueryService.getUserVipInfo(userId, miId);
return Objects.nonNull(right) ? TypeConvertUtils.convert(right, UserGetUserVipInfoVo.class) : null;
} }
} }

30
dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/right/user/response/UserGetUserVipInfoVo.java

@ -0,0 +1,30 @@
package com.qniao.dam.api.query.right.user.response;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qniao.dam.domian.aggregate.right.constant.RightTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
@Data
public class UserGetUserVipInfoVo {
@ApiModelProperty("唯一标识")
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
@ApiModelProperty("权益类型")
private RightTypeEnum type;
@ApiModelProperty("开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime startTime;
@ApiModelProperty("结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime endTime;
}

7
dating-agency-mall-server/src/main/java/com/qniao/dam/query/right/RightQueryService.java

@ -3,10 +3,7 @@ package com.qniao.dam.query.right;
import com.qniao.dam.api.query.right.user.request.UserCheckEnableRightBySdkQueryParam; import com.qniao.dam.api.query.right.user.request.UserCheckEnableRightBySdkQueryParam;
import com.qniao.dam.api.query.right.user.request.UserListRightByCustomerQueryParam; import com.qniao.dam.api.query.right.user.request.UserListRightByCustomerQueryParam;
import com.qniao.dam.api.query.right.user.request.UserListRightByOperatorQueryParam; import com.qniao.dam.api.query.right.user.request.UserListRightByOperatorQueryParam;
import com.qniao.dam.api.query.right.user.response.UserCheckEnableRightBySdkVo;
import com.qniao.dam.api.query.right.user.response.UserListRightByCustomerVo;
import com.qniao.dam.api.query.right.user.response.UserListRightByOperatorVo;
import com.qniao.dam.api.query.right.user.response.UserVipRightVo;
import com.qniao.dam.api.query.right.user.response.*;
import com.qniao.dam.domain.aggregate.right.entity.Right; import com.qniao.dam.domain.aggregate.right.entity.Right;
import com.qniao.dam.domain.aggregate.right.entity.RightTerm; import com.qniao.dam.domain.aggregate.right.entity.RightTerm;
import com.qniao.dam.domian.aggregate.right.constant.RightNameEnum; import com.qniao.dam.domian.aggregate.right.constant.RightNameEnum;
@ -38,4 +35,6 @@ public interface RightQueryService {
List<UserListRightByOperatorVo> listRightByOperator(UserListRightByOperatorQueryParam queryParam); List<UserListRightByOperatorVo> listRightByOperator(UserListRightByOperatorQueryParam queryParam);
UserVipRightVo checkUserVipRight(Long userId, Long miId); UserVipRightVo checkUserVipRight(Long userId, Long miId);
Right getUserVipInfo(Long userId, Long miId);
} }

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

@ -7,10 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.qniao.dam.api.query.right.user.request.UserCheckEnableRightBySdkQueryParam; import com.qniao.dam.api.query.right.user.request.UserCheckEnableRightBySdkQueryParam;
import com.qniao.dam.api.query.right.user.request.UserListRightByCustomerQueryParam; import com.qniao.dam.api.query.right.user.request.UserListRightByCustomerQueryParam;
import com.qniao.dam.api.query.right.user.request.UserListRightByOperatorQueryParam; import com.qniao.dam.api.query.right.user.request.UserListRightByOperatorQueryParam;
import com.qniao.dam.api.query.right.user.response.UserCheckEnableRightBySdkVo;
import com.qniao.dam.api.query.right.user.response.UserListRightByCustomerVo;
import com.qniao.dam.api.query.right.user.response.UserListRightByOperatorVo;
import com.qniao.dam.api.query.right.user.response.UserVipRightVo;
import com.qniao.dam.api.query.right.user.response.*;
import com.qniao.dam.domain.aggregate.right.entity.Right; import com.qniao.dam.domain.aggregate.right.entity.Right;
import com.qniao.dam.domain.aggregate.right.entity.RightTerm; import com.qniao.dam.domain.aggregate.right.entity.RightTerm;
import com.qniao.dam.domain.aggregate.right.repository.RightRepository; import com.qniao.dam.domain.aggregate.right.repository.RightRepository;
@ -63,13 +60,34 @@ public class RightQueryServiceImpl implements RightQueryService {
public UserVipRightVo checkUserVipRight(Long userId, Long miId) { public UserVipRightVo checkUserVipRight(Long userId, Long miId) {
UserVipRightVo vo = new UserVipRightVo(); UserVipRightVo vo = new UserVipRightVo();
vo.setVip(false); vo.setVip(false);
Integer count = rightDao.checkUserVip(userId,miId);
if(count > 0){
Integer count = rightDao.checkUserVip(userId, miId);
if (count > 0) {
vo.setVip(true); vo.setVip(true);
} }
return vo; return vo;
} }
@Override
public Right getUserVipInfo(Long userId, Long miId) {
Right right = rightDao.selectOne(new LambdaQueryWrapper<Right>()
.eq(Right::getUserId, userId)
.eq(Right::getMiId, miId)
.eq(Right::getType, RightTypeEnum.VIP)
.ge(Right::getEndTime, LocalDateTime.now())
.eq(Right::getEnable, true)
.last("limit 1"));
if (Objects.isNull(right)) {
right = rightDao.selectOne(new LambdaQueryWrapper<Right>()
.eq(Right::getUserId, userId)
.eq(Right::getMiId, miId)
.eq(Right::getType, RightTypeEnum.VIP_TRIAL)
.ge(Right::getEndTime, LocalDateTime.now())
.eq(Right::getEnable, true)
.last("limit 1"));
}
return right;
}
@Override @Override
public List<UserListRightByCustomerVo> listRightByCustomer(UserListRightByCustomerQueryParam queryParam) { public List<UserListRightByCustomerVo> listRightByCustomer(UserListRightByCustomerQueryParam queryParam) {
List<UserListRightByCustomerVo> customerVolist = new ArrayList<>(); List<UserListRightByCustomerVo> customerVolist = new ArrayList<>();

2
dating-agency-mall-server/src/main/resources/mapper/right/PurchaseProductRecordQueryService.xml

@ -23,6 +23,6 @@
<select id="checkUserVip" resultType="java.lang.Integer"> <select id="checkUserVip" resultType="java.lang.Integer">
SELECT COUNT(1) FROM `da_right` SELECT COUNT(1) FROM `da_right`
WHERE is_delete = 0 and user_id =#{userId} AND mi_id =#{miId} AND start_time &lt;= NOW() AND end_time >= NOW() AND `type` = 601
WHERE is_delete = 0 and user_id =#{userId} AND mi_id =#{miId} AND start_time &lt;= NOW() AND end_time >= NOW() AND `type` in (601,602)
</select> </select>
</mapper> </mapper>
Loading…
Cancel
Save