mirror of
https://gitee.com/hhyykk/ipms-sjy.git
synced 2025-07-25 00:15:06 +08:00
code review:会员积分配置
This commit is contained in:
@ -0,0 +1,45 @@
|
||||
package cn.iocoder.yudao.module.member.controller.admin.point;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigRespVO;
|
||||
import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO;
|
||||
import cn.iocoder.yudao.module.member.convert.point.MemberPointConfigConvert;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
|
||||
import cn.iocoder.yudao.module.member.service.point.MemberPointConfigService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.validation.Valid;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
@Tag(name = "管理后台 - 会员积分设置")
|
||||
@RestController
|
||||
@RequestMapping("/point/config")
|
||||
@Validated
|
||||
public class MemberPointConfigController {
|
||||
|
||||
@Resource
|
||||
private MemberPointConfigService memberPointConfigService;
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "保存会员积分配置")
|
||||
@PreAuthorize("@ss.hasPermission('member:point-config:save')")
|
||||
public CommonResult<Boolean> updateConfig(@Valid @RequestBody MemberPointConfigSaveReqVO saveReqVO) {
|
||||
memberPointConfigService.saveConfig(saveReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得会员积分配置")
|
||||
@PreAuthorize("@ss.hasPermission('member:point-config:query')")
|
||||
public CommonResult<MemberPointConfigRespVO> getConfig() {
|
||||
MemberPointConfigDO config = memberPointConfigService.getConfig();
|
||||
return success(MemberPointConfigConvert.INSTANCE.convert(config));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,27 @@
|
||||
package cn.iocoder.yudao.module.member.controller.admin.point.vo.config;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 会员积分配置 Base VO,提供给添加、修改、详细的子 VO 使用
|
||||
* 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成
|
||||
*/
|
||||
@Data
|
||||
public class MemberPointConfigBaseVO {
|
||||
|
||||
@Schema(description = "积分抵扣开关", required = true, example = "true")
|
||||
private Boolean tradeDeductEnable;
|
||||
|
||||
@Schema(description = "积分抵扣,单位:分", example = "13506")
|
||||
private BigDecimal tradeDeductUnitPrice;
|
||||
|
||||
@Schema(description = "积分抵扣最大值", example = "32428")
|
||||
private Long tradeDeductMaxPrice;
|
||||
|
||||
@Schema(description = "1 元赠送多少分")
|
||||
private Long tradeGivePoint;
|
||||
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
package cn.iocoder.yudao.module.member.controller.admin.point.vo.config;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 会员积分配置 Response VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class MemberPointConfigRespVO extends MemberPointConfigBaseVO {
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
package cn.iocoder.yudao.module.member.controller.admin.point.vo.config;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
@Schema(description = "管理后台 - 会员积分配置保存 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class MemberPointConfigSaveReqVO extends MemberPointConfigBaseVO {
|
||||
}
|
@ -0,0 +1 @@
|
||||
package cn.iocoder.yudao.module.member.controller.admin.point.vo.recrod;
|
@ -0,0 +1,20 @@
|
||||
package cn.iocoder.yudao.module.member.convert.point;
|
||||
|
||||
import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigRespVO;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
/**
|
||||
* 会员积分配置 Convert
|
||||
*
|
||||
* @author QingX
|
||||
*/
|
||||
@Mapper
|
||||
public interface MemberPointConfigConvert {
|
||||
|
||||
MemberPointConfigConvert INSTANCE = Mappers.getMapper(MemberPointConfigConvert.class);
|
||||
|
||||
MemberPointConfigRespVO convert(MemberPointConfigDO bean);
|
||||
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
package cn.iocoder.yudao.module.member.dal.dataobject.point;
|
||||
|
||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||
import com.baomidou.mybatisplus.annotation.KeySequence;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 会员积分配置 DO
|
||||
*
|
||||
* @author QingX
|
||||
*/
|
||||
@TableName("member_point_config")
|
||||
@KeySequence("member_point_config_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class MemberPointConfigDO extends BaseDO {
|
||||
|
||||
/**
|
||||
* 自增主键
|
||||
*/
|
||||
@TableId
|
||||
private Integer id;
|
||||
/**
|
||||
* 积分抵扣开关
|
||||
*/
|
||||
private Boolean tradeDeductEnable;
|
||||
/**
|
||||
* 积分抵扣,单位:分
|
||||
*
|
||||
* 1 积分抵扣多少分
|
||||
*/
|
||||
private BigDecimal tradeDeductUnitPrice;
|
||||
/**
|
||||
* 积分抵扣最大值
|
||||
*/
|
||||
private Integer tradeDeductMaxPrice;
|
||||
/**
|
||||
* 1 元赠送多少分
|
||||
*/
|
||||
private Integer tradeGivePoint;
|
||||
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package cn.iocoder.yudao.module.member.dal.mysql.point;
|
||||
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* 积分设置 Mapper
|
||||
*
|
||||
* @author QingX
|
||||
*/
|
||||
@Mapper
|
||||
public interface MemberPointConfigMapper extends BaseMapperX<MemberPointConfigDO> {
|
||||
}
|
@ -0,0 +1,29 @@
|
||||
package cn.iocoder.yudao.module.member.service.point;
|
||||
|
||||
import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
|
||||
|
||||
import javax.validation.Valid;
|
||||
|
||||
/**
|
||||
* 会员积分配置 Service 接口
|
||||
*
|
||||
* @author QingX
|
||||
*/
|
||||
public interface MemberPointConfigService {
|
||||
|
||||
/**
|
||||
* 保存会员积分配置
|
||||
*
|
||||
* @param saveReqVO 更新信息
|
||||
*/
|
||||
void saveConfig(@Valid MemberPointConfigSaveReqVO saveReqVO);
|
||||
|
||||
/**
|
||||
* 获得会员积分配置
|
||||
*
|
||||
* @return 积分配置
|
||||
*/
|
||||
MemberPointConfigDO getConfig();
|
||||
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
package cn.iocoder.yudao.module.member.service.point;
|
||||
|
||||
import cn.iocoder.yudao.module.member.controller.admin.point.vo.config.MemberPointConfigSaveReqVO;
|
||||
import cn.iocoder.yudao.module.member.dal.dataobject.point.MemberPointConfigDO;
|
||||
import cn.iocoder.yudao.module.member.dal.mysql.point.MemberPointConfigMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 会员积分配置 Service 实现类
|
||||
*
|
||||
* @author QingX
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class MemberPointConfigServiceImpl implements MemberPointConfigService {
|
||||
|
||||
@Resource
|
||||
private MemberPointConfigMapper memberPointConfigMapper;
|
||||
|
||||
@Override
|
||||
public void saveConfig(MemberPointConfigSaveReqVO saveReqVO) {
|
||||
// TODO qingx:配置存在,则 update;不存在则 insert
|
||||
}
|
||||
|
||||
@Override
|
||||
public MemberPointConfigDO getConfig() {
|
||||
// TODO qingx:直接查询到一条;
|
||||
return null;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user