code review 店铺装修

This commit is contained in:
YunaiV 2023-11-04 22:52:41 +08:00
parent 1eff9822ce
commit 989d7c44d0
7 changed files with 54 additions and 38 deletions

View File

@ -15,12 +15,12 @@
<!-- 各种 module 拓展 --> <!-- 各种 module 拓展 -->
<module>yudao-module-system</module> <module>yudao-module-system</module>
<module>yudao-module-infra</module> <module>yudao-module-infra</module>
<!-- <module>yudao-module-member</module>--> <module>yudao-module-member</module>
<!-- <module>yudao-module-bpm</module>--> <!-- <module>yudao-module-bpm</module>-->
<!-- <module>yudao-module-report</module>--> <!-- <module>yudao-module-report</module>-->
<!-- <module>yudao-module-mp</module>--> <!-- <module>yudao-module-mp</module>-->
<!-- <module>yudao-module-pay</module>--> <module>yudao-module-pay</module>
<!-- <module>yudao-module-mall</module>--> <module>yudao-module-mall</module>
<!-- 示例项目 --> <!-- 示例项目 -->
<!-- <module>yudao-example</module>--> <!-- <module>yudao-example</module>-->
</modules> </modules>

View File

@ -3,7 +3,7 @@ package cn.iocoder.yudao.module.promotion.controller.admin.diy.vo.template;
import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotEmpty;
import java.util.List; import java.util.List;
/** /**
@ -14,7 +14,7 @@ import java.util.List;
public class DiyTemplateBaseVO { public class DiyTemplateBaseVO {
@Schema(description = "模板名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "默认主题") @Schema(description = "模板名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "默认主题")
@NotNull(message = "模板名称不能为空") @NotEmpty(message = "模板名称不能为空")
private String name; private String name;
@Schema(description = "备注", example = "默认主题") @Schema(description = "备注", example = "默认主题")

View File

@ -32,6 +32,8 @@ public class DiyPageDO extends BaseDO {
private Long id; private Long id;
/** /**
* 装修模板编号 * 装修模板编号
*
* 关联 {@link DiyTemplateDO#getId()}
*/ */
private Long templateId; private Long templateId;
/** /**

View File

@ -14,6 +14,9 @@ import java.util.List;
/** /**
* 装修模板 DO * 装修模板 DO
* *
* 1. 新建一个模版下面可以包含多个 {@link DiyPageDO} 页面例如说首页我的
* 2. 如果需要使用某个模版则将 {@link #used} 设置为 true表示已使用有且仅有一个
*
* @author owen * @author owen
*/ */
@TableName(value = "promotion_diy_template", autoResultMap = true) @TableName(value = "promotion_diy_template", autoResultMap = true)

View File

@ -42,7 +42,6 @@ public class DiyPageServiceImpl implements DiyPageService {
DiyPageDO diyPage = DiyPageConvert.INSTANCE.convert(createReqVO); DiyPageDO diyPage = DiyPageConvert.INSTANCE.convert(createReqVO);
diyPage.setProperty("{}"); diyPage.setProperty("{}");
diyPageMapper.insert(diyPage); diyPageMapper.insert(diyPage);
// 返回
return diyPage.getId(); return diyPage.getId();
} }
@ -57,6 +56,13 @@ public class DiyPageServiceImpl implements DiyPageService {
diyPageMapper.updateById(updateObj); diyPageMapper.updateById(updateObj);
} }
/**
* 校验 Page 页面在一个 template 模版下的名字是唯一的
*
* @param id Page 编号
* @param templateId 模版编号
* @param name Page 名字
*/
void validateNameUnique(Long id, Long templateId, String name) { void validateNameUnique(Long id, Long templateId, String name) {
if (templateId != null || StrUtil.isBlank(name)) { if (templateId != null || StrUtil.isBlank(name)) {
return; return;

View File

@ -32,9 +32,11 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
@Resource @Resource
private DiyTemplateMapper diyTemplateMapper; private DiyTemplateMapper diyTemplateMapper;
@Resource @Resource
private DiyPageService diyPageService; private DiyPageService diyPageService;
// TODO @疯狂事务
@Override @Override
public Long createDiyTemplate(DiyTemplateCreateReqVO createReqVO) { public Long createDiyTemplate(DiyTemplateCreateReqVO createReqVO) {
// 校验名称唯一 // 校验名称唯一
@ -120,9 +122,11 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
} }
@Override @Override
// TODO @疯狂事务
public void useDiyTemplate(Long id) { public void useDiyTemplate(Long id) {
// 校验存在 // 校验存在
validateDiyTemplateExists(id); validateDiyTemplateExists(id);
// TODO @疯狂要不已使用的情况抛个业务异常
// 已使用的更新为未使用 // 已使用的更新为未使用
DiyTemplateDO used = diyTemplateMapper.selectByUsed(true); DiyTemplateDO used = diyTemplateMapper.selectByUsed(true);
if (used != null) { if (used != null) {
@ -136,8 +140,8 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
this.updateUsed(id, true, LocalDateTime.now()); this.updateUsed(id, true, LocalDateTime.now());
} }
@Transactional(rollbackFor = Exception.class)
@Override @Override
@Transactional(rollbackFor = Exception.class)
public void updateDiyTemplateProperty(DiyTemplatePropertyUpdateRequestVO updateReqVO) { public void updateDiyTemplateProperty(DiyTemplatePropertyUpdateRequestVO updateReqVO) {
// 校验存在 // 校验存在
validateDiyTemplateExists(updateReqVO.getId()); validateDiyTemplateExists(updateReqVO.getId());
@ -151,6 +155,7 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
return diyTemplateMapper.selectByUsed(true); return diyTemplateMapper.selectByUsed(true);
} }
// TODO @疯狂挪到 useDiyTemplate 下面改名 updateTemplateUsed 会不会好点哈
/** /**
* 更新模板是否使用 * 更新模板是否使用
* *

View File

@ -37,11 +37,11 @@
</dependency> </dependency>
<!-- 会员中心。默认注释,保证编译速度 --> <!-- 会员中心。默认注释,保证编译速度 -->
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-member-biz</artifactId>--> <artifactId>yudao-module-member-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- 数据报表。默认注释,保证编译速度 --> <!-- 数据报表。默认注释,保证编译速度 -->
<!-- <dependency>--> <!-- <dependency>-->
@ -56,11 +56,11 @@
<!-- <version>${revision}</version>--> <!-- <version>${revision}</version>-->
<!-- </dependency>--> <!-- </dependency>-->
<!-- 支付服务。默认注释,保证编译速度 --> <!-- 支付服务。默认注释,保证编译速度 -->
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-pay-biz</artifactId>--> <artifactId>yudao-module-pay-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- 微信公众号模块。默认注释,保证编译速度 --> <!-- 微信公众号模块。默认注释,保证编译速度 -->
<!-- <dependency>--> <!-- <dependency>-->
@ -69,27 +69,27 @@
<!-- <version>${revision}</version>--> <!-- <version>${revision}</version>-->
<!-- </dependency>--> <!-- </dependency>-->
<!-- 商城相关模块。默认注释,保证编译速度--> <!-- 商城相关模块。默认注释,保证编译速度-->
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-promotion-biz</artifactId>--> <artifactId>yudao-module-promotion-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-product-biz</artifactId>--> <artifactId>yudao-module-product-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-trade-biz</artifactId>--> <artifactId>yudao-module-trade-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- <dependency>--> <dependency>
<!-- <groupId>cn.iocoder.boot</groupId>--> <groupId>cn.iocoder.boot</groupId>
<!-- <artifactId>yudao-module-statistics-biz</artifactId>--> <artifactId>yudao-module-statistics-biz</artifactId>
<!-- <version>${revision}</version>--> <version>${revision}</version>
<!-- </dependency>--> </dependency>
<!-- spring boot 配置所需依赖 --> <!-- spring boot 配置所需依赖 -->
<dependency> <dependency>