Browse Source

基础配置

master
张彭杰 1 year ago
parent
commit
4ef672d9f2
17 changed files with 330 additions and 0 deletions
  1. 34
      dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/rewardconfig/constant/RewardTypeEnum.java
  2. 22
      dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/rewardconfig/entity/RewardConfig.java
  3. 5
      dating-agency-mall-server/pom.xml
  4. 28
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/rewardconfig/user/RewardConfigUserCommandController.java
  5. 30
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/rewardconfig/user/request/UserEditRewardConfigDto.java
  6. 29
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/rewardconfig/user/RewardConfigUserQueryController.java
  7. 16
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/rewardconfig/user/request/UserGetRewardConfigDetailQueryParams.java
  8. 24
      dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/rewardconfig/user/response/UserGetRewardConfigDetailVo.java
  9. 18
      dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/rewardconfig/RewardConfigApplicationService.java
  10. 18
      dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/rewardconfig/RewardConfigAggregate.java
  11. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/rewardconfig/repository/RewardConfigRepository.java
  12. 7
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/domain/RewardConfigDao.java
  13. 11
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/view/RewardConfigViewDao.java
  14. 31
      dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/repository/impl/RewardConfigRepositoryImpl.java
  15. 8
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/rewardconfig/RewardConfigQueryService.java
  16. 22
      dating-agency-mall-server/src/main/java/com/qniao/dam/query/rewardconfig/impl/RewardConfigQueryServiceImpl.java
  17. 20
      dating-agency-mall-server/src/main/resources/mapper/rewardconfig/RewardConfigViewMapper.xml

34
dating-agency-mall-constant/src/main/java/com/qniao/dam/domian/aggregate/rewardconfig/constant/RewardTypeEnum.java

@ -0,0 +1,34 @@
package com.qniao.dam.domian.aggregate.rewardconfig.constant;
import com.baomidou.mybatisplus.annotation.EnumValue;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonValue;
import lombok.Getter;
@Getter
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum RewardTypeEnum {
MATCHMAKER_JOIN_RECOMMEND(1, "红娘入驻推荐");
@EnumValue
@JsonValue
private final Integer value;
private final String desc;
RewardTypeEnum(Integer value, String desc) {
this.value = value;
this.desc = desc;
}
@JsonCreator
public static RewardTypeEnum get(Object code) {
for (RewardTypeEnum e : RewardTypeEnum.values()) {
if (e.getValue().equals(code)) {
return e;
}
}
return null;
}
}

22
dating-agency-mall-entity/src/main/java/com/qniao/dam/domain/aggregate/rewardconfig/entity/RewardConfig.java

@ -0,0 +1,22 @@
package com.qniao.dam.domain.aggregate.rewardconfig.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.qniao.dam.domian.aggregate.rewardconfig.constant.RewardTypeEnum;
import com.qniao.domain.Entity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("da_reward_config")
public class RewardConfig extends Entity<RewardConfig> {
@ApiModelProperty("奖励类型")
private RewardTypeEnum rewardType;
@ApiModelProperty("奖励金额")
private BigDecimal rewardAmount;
}

5
dating-agency-mall-server/pom.xml

@ -72,6 +72,11 @@
<artifactId>weixin-java-pay</artifactId>
<version>3.3.4.B</version>
</dependency>
<dependency>
<groupId>com.github.wechatpay-apiv3</groupId>
<artifactId>wechatpay-apache-httpclient</artifactId>
<version>0.4.9</version>
</dependency>
<dependency>
<groupId>com.qniao</groupId>
<artifactId>dating-agency-mall-event</artifactId>

28
dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/rewardconfig/user/RewardConfigUserCommandController.java

@ -0,0 +1,28 @@
package com.qniao.dam.api.command.rewardconfig.user;
import com.qniao.dam.api.command.rewardconfig.user.request.UserEditRewardConfigDto;
import com.qniao.dam.application.service.rewardconfig.RewardConfigApplicationService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import javax.validation.Valid;
@RestController
@RequestMapping("user")
@Api(tags = "奖励配置")
public class RewardConfigUserCommandController {
@Resource
private RewardConfigApplicationService rewardConfigApplicationService;
@ApiOperation("修改奖励配置")
@PostMapping("edit/reward-config")
public void userEditRewardConfig(@RequestBody @Valid UserEditRewardConfigDto dto) {
rewardConfigApplicationService.edit(dto.trans2Domain());
}
}

30
dating-agency-mall-server/src/main/java/com/qniao/dam/api/command/rewardconfig/user/request/UserEditRewardConfigDto.java

@ -0,0 +1,30 @@
package com.qniao.dam.api.command.rewardconfig.user.request;
import com.qniao.dam.domain.aggregate.rewardconfig.entity.RewardConfig;
import com.qniao.dam.domian.aggregate.rewardconfig.constant.RewardTypeEnum;
import com.qniao.domain.Trans2DomainAssembler;
import com.qniao.framework.utils.TypeConvertUtils;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
@Data
public class UserEditRewardConfigDto implements Trans2DomainAssembler<RewardConfig> {
@ApiModelProperty("唯一标识")
@NotNull
private Long id;
@ApiModelProperty("奖励类型")
private RewardTypeEnum rewardType;
@ApiModelProperty("奖励金额")
private BigDecimal rewardAmount;
@Override
public RewardConfig trans2Domain() {
return TypeConvertUtils.convert(this, RewardConfig.class);
}
}

29
dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/rewardconfig/user/RewardConfigUserQueryController.java

@ -0,0 +1,29 @@
package com.qniao.dam.api.query.rewardconfig.user;
import com.qniao.dam.api.query.rewardconfig.user.request.UserGetRewardConfigDetailQueryParams;
import com.qniao.dam.api.query.rewardconfig.user.response.UserGetRewardConfigDetailVo;
import com.qniao.dam.query.rewardconfig.RewardConfigQueryService;
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;
@RestController
@RequestMapping("user")
@Api(tags = "奖励配置")
public class RewardConfigUserQueryController {
@Resource
private RewardConfigQueryService rewardConfigQueryService;
@GetMapping("get/reward-config-detail")
@ApiOperation("客户获取奖励配置")
public UserGetRewardConfigDetailVo useGetRewardConfigDetail(@RequestParam UserGetRewardConfigDetailQueryParams queryParams) {
return rewardConfigQueryService.getRewardConfigDetail(queryParams);
}
}

16
dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/rewardconfig/user/request/UserGetRewardConfigDetailQueryParams.java

@ -0,0 +1,16 @@
package com.qniao.dam.api.query.rewardconfig.user.request;
import com.qniao.dam.domian.aggregate.rewardconfig.constant.RewardTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class UserGetRewardConfigDetailQueryParams {
@ApiModelProperty("唯一标识")
private Long id;
@ApiModelProperty("奖励类型")
private RewardTypeEnum rewardType;
}

24
dating-agency-mall-server/src/main/java/com/qniao/dam/api/query/rewardconfig/user/response/UserGetRewardConfigDetailVo.java

@ -0,0 +1,24 @@
package com.qniao.dam.api.query.rewardconfig.user.response;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qniao.dam.domian.aggregate.rewardconfig.constant.RewardTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class UserGetRewardConfigDetailVo {
@ApiModelProperty("唯一标识")
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
@ApiModelProperty("奖励类型")
private RewardTypeEnum rewardType;
@ApiModelProperty("奖励金额")
private BigDecimal rewardAmount;
}

18
dating-agency-mall-server/src/main/java/com/qniao/dam/application/service/rewardconfig/RewardConfigApplicationService.java

@ -0,0 +1,18 @@
package com.qniao.dam.application.service.rewardconfig;
import com.qniao.dam.domain.aggregate.rewardconfig.RewardConfigAggregate;
import com.qniao.dam.domain.aggregate.rewardconfig.entity.RewardConfig;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class RewardConfigApplicationService {
@Resource
private RewardConfigAggregate rewardConfigAggregate;
public void edit(RewardConfig rewardConfig) {
rewardConfigAggregate.edit(rewardConfig);
}
}

18
dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/rewardconfig/RewardConfigAggregate.java

@ -0,0 +1,18 @@
package com.qniao.dam.domain.aggregate.rewardconfig;
import com.qniao.dam.domain.aggregate.rewardconfig.entity.RewardConfig;
import com.qniao.dam.domain.aggregate.rewardconfig.repository.RewardConfigRepository;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class RewardConfigAggregate {
@Resource
private RewardConfigRepository rewardConfigRepository;
public void edit(RewardConfig rewardConfig) {
rewardConfigRepository.save(rewardConfig);
}
}

7
dating-agency-mall-server/src/main/java/com/qniao/dam/domain/aggregate/rewardconfig/repository/RewardConfigRepository.java

@ -0,0 +1,7 @@
package com.qniao.dam.domain.aggregate.rewardconfig.repository;
import com.qniao.dam.domain.aggregate.rewardconfig.entity.RewardConfig;
import com.qniao.domain.Repository;
public interface RewardConfigRepository extends Repository<RewardConfig, Long> {
}

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

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

11
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/dao/view/RewardConfigViewDao.java

@ -0,0 +1,11 @@
package com.qniao.dam.infrastructure.persistent.dao.view;
import com.qniao.dam.api.query.rewardconfig.user.request.UserGetRewardConfigDetailQueryParams;
import com.qniao.dam.api.query.rewardconfig.user.response.UserGetRewardConfigDetailVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface RewardConfigViewDao {
UserGetRewardConfigDetailVo getRewardConfigDetail(@Param("queryParams") UserGetRewardConfigDetailQueryParams queryParams);
}

31
dating-agency-mall-server/src/main/java/com/qniao/dam/infrastructure/persistent/repository/impl/RewardConfigRepositoryImpl.java

@ -0,0 +1,31 @@
package com.qniao.dam.infrastructure.persistent.repository.impl;
import com.qniao.dam.domain.aggregate.rewardconfig.entity.RewardConfig;
import com.qniao.dam.domain.aggregate.rewardconfig.repository.RewardConfigRepository;
import com.qniao.dam.infrastructure.persistent.dao.domain.RewardConfigDao;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Objects;
@Service
public class RewardConfigRepositoryImpl implements RewardConfigRepository {
@Resource
private RewardConfigDao rewardConfigDao;
@Override
public RewardConfig load(Long id) {
return rewardConfigDao.selectById(id);
}
@Override
public Long save(RewardConfig entity) {
if (Objects.isNull(entity.getId()) || Objects.isNull(rewardConfigDao.selectById(entity.getId()))) {
rewardConfigDao.insert(entity);
} else {
rewardConfigDao.updateById(entity);
}
return entity.getId();
}
}

8
dating-agency-mall-server/src/main/java/com/qniao/dam/query/rewardconfig/RewardConfigQueryService.java

@ -0,0 +1,8 @@
package com.qniao.dam.query.rewardconfig;
import com.qniao.dam.api.query.rewardconfig.user.request.UserGetRewardConfigDetailQueryParams;
import com.qniao.dam.api.query.rewardconfig.user.response.UserGetRewardConfigDetailVo;
public interface RewardConfigQueryService {
UserGetRewardConfigDetailVo getRewardConfigDetail(UserGetRewardConfigDetailQueryParams queryParams);
}

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

@ -0,0 +1,22 @@
package com.qniao.dam.query.rewardconfig.impl;
import com.qniao.dam.api.query.rewardconfig.user.request.UserGetRewardConfigDetailQueryParams;
import com.qniao.dam.api.query.rewardconfig.user.response.UserGetRewardConfigDetailVo;
import com.qniao.dam.infrastructure.persistent.dao.domain.RewardConfigDao;
import com.qniao.dam.infrastructure.persistent.dao.view.RewardConfigViewDao;
import com.qniao.dam.query.rewardconfig.RewardConfigQueryService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class RewardConfigQueryServiceImpl implements RewardConfigQueryService {
@Resource
private RewardConfigViewDao rewardConfigViewDao;
@Override
public UserGetRewardConfigDetailVo getRewardConfigDetail(UserGetRewardConfigDetailQueryParams queryParams) {
return rewardConfigViewDao.getRewardConfigDetail(queryParams);
}
}

20
dating-agency-mall-server/src/main/resources/mapper/rewardconfig/RewardConfigViewMapper.xml

@ -0,0 +1,20 @@
<?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.RewardConfigViewDao">
<select id="getRewardConfigDetail"
resultType="com.qniao.dam.api.query.rewardconfig.user.response.UserGetRewardConfigDetailVo">
select
id,
reward_type,
reward_amount
from da_reward_config
where is_delete=0
<if test="queryParams.id != null">
AND id = #{queryParams.id}
</if>
<if test="queryParams.rewardType != null">
AND reward_type = #{queryParams.rewardType}
</if>
</select>
</mapper>
Loading…
Cancel
Save