营销:接入 APP 装修页面
This commit is contained in:
parent
680718c78f
commit
d6b59743a3
|
@ -0,0 +1,36 @@
|
|||
package cn.iocoder.yudao.module.promotion.controller.app.diy;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.module.promotion.controller.app.diy.vo.AppDiyPagePropertyRespVO;
|
||||
import cn.iocoder.yudao.module.promotion.dal.dataobject.diy.DiyPageDO;
|
||||
import cn.iocoder.yudao.module.promotion.service.diy.DiyPageService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
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 static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
@Tag(name = "用户 APP - 装修页面")
|
||||
@RestController
|
||||
@RequestMapping("/promotion/diy-page")
|
||||
@Validated
|
||||
public class AppDiyPageController {
|
||||
@Resource
|
||||
private DiyPageService diyPageService;
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得装修页面")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
public CommonResult<AppDiyPagePropertyRespVO> getDiyPage(@RequestParam("id") Long id) {
|
||||
DiyPageDO diyPage = diyPageService.getDiyPage(id);
|
||||
return success(BeanUtils.toBean(diyPage, AppDiyPagePropertyRespVO.class));
|
||||
}
|
||||
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
package cn.iocoder.yudao.module.promotion.controller.app.diy.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonRawValue;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
@ -16,6 +17,7 @@ public class AppDiyPagePropertyRespVO {
|
|||
private String name;
|
||||
|
||||
@Schema(description = "页面属性", example = "[]")
|
||||
@JsonRawValue
|
||||
private String property;
|
||||
|
||||
}
|
||||
|
|
|
@ -11,11 +11,11 @@ import cn.iocoder.yudao.module.promotion.convert.diy.DiyPageConvert;
|
|||
import cn.iocoder.yudao.module.promotion.convert.diy.DiyTemplateConvert;
|
||||
import cn.iocoder.yudao.module.promotion.dal.dataobject.diy.DiyTemplateDO;
|
||||
import cn.iocoder.yudao.module.promotion.dal.mysql.diy.DiyTemplateMapper;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import jakarta.annotation.Resource;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
|
@ -36,7 +36,7 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
|
|||
@Resource
|
||||
private DiyPageService diyPageService;
|
||||
|
||||
// TODO @疯狂:事务;
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@Override
|
||||
public Long createDiyTemplate(DiyTemplateCreateReqVO createReqVO) {
|
||||
// 校验名称唯一
|
||||
|
@ -121,8 +121,8 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
|
|||
return diyTemplateMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@Override
|
||||
// TODO @疯狂:事务;
|
||||
public void useDiyTemplate(Long id) {
|
||||
// 校验存在
|
||||
validateDiyTemplateExists(id);
|
||||
|
@ -134,10 +134,23 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
|
|||
if (used.getId().equals(id)) {
|
||||
return;
|
||||
}
|
||||
this.updateUsed(used.getId(), false, null);
|
||||
this.updateTemplateUsed(used.getId(), false, null);
|
||||
}
|
||||
// 更新为已使用
|
||||
this.updateUsed(id, true, LocalDateTime.now());
|
||||
this.updateTemplateUsed(id, true, LocalDateTime.now());
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新模板是否使用
|
||||
*
|
||||
* @param id 模板编号
|
||||
* @param used 是否使用
|
||||
* @param usedTime 使用时间
|
||||
*/
|
||||
private void updateTemplateUsed(Long id, Boolean used, LocalDateTime usedTime) {
|
||||
DiyTemplateDO updateObj = new DiyTemplateDO().setId(id)
|
||||
.setUsed(used).setUsedTime(usedTime);
|
||||
diyTemplateMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -155,18 +168,4 @@ public class DiyTemplateServiceImpl implements DiyTemplateService {
|
|||
return diyTemplateMapper.selectByUsed(true);
|
||||
}
|
||||
|
||||
// TODO @疯狂:挪到 useDiyTemplate 下面,改名 updateTemplateUsed 会不会好点哈;
|
||||
/**
|
||||
* 更新模板是否使用
|
||||
*
|
||||
* @param id 模板编号
|
||||
* @param used 是否使用
|
||||
* @param usedTime 使用时间
|
||||
*/
|
||||
private void updateUsed(Long id, Boolean used, LocalDateTime usedTime) {
|
||||
DiyTemplateDO updateObj = new DiyTemplateDO().setId(id)
|
||||
.setUsed(used).setUsedTime(usedTime);
|
||||
diyTemplateMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue