feat(puzzle): 添加模板封面图片字段并更新相关逻辑

- 在PuzzleTemplateDTO和TemplateCreateRequest中新增coverImage字段
- 在PuzzleTemplateEntity中新增coverImage字段并映射到数据库
- 更新FaceServiceImpl以支持获取模板封面图片URL
- 修改Mapper XML文件以支持coverImage字段的读写操作
- 调整SQL查询和插入语句以包含新的coverImage字段
- 更新三拼图内容页面逻辑以使用模板封面图片URL
This commit is contained in:
2025-11-21 16:04:59 +08:00
parent 038b2e6f08
commit cd5ba23d59
5 changed files with 27 additions and 5 deletions

View File

@@ -53,6 +53,11 @@ public class PuzzleTemplateDTO {
*/
private String backgroundImage;
/**
* 模板封面图片URL
*/
private String coverImage;
/**
* 模板描述
*/

View File

@@ -46,6 +46,11 @@ public class TemplateCreateRequest {
*/
private String backgroundImage;
/**
* 模板封面图片URL
*/
private String coverImage;
/**
* 模板描述
*/

View File

@@ -67,6 +67,12 @@ public class PuzzleTemplateEntity {
@TableField("background_image")
private String backgroundImage;
/**
* 模板封面图片URL(用于前端管理界面展示)
*/
@TableField("cover_image")
private String coverImage;
/**
* 模板描述
*/

View File

@@ -51,7 +51,9 @@ import com.ycwl.basic.pricing.dto.ProductItem;
import com.ycwl.basic.pricing.enums.ProductType;
import com.ycwl.basic.pricing.service.IPriceCalculationService;
import com.ycwl.basic.puzzle.entity.PuzzleGenerationRecordEntity;
import com.ycwl.basic.puzzle.entity.PuzzleTemplateEntity;
import com.ycwl.basic.puzzle.mapper.PuzzleGenerationRecordMapper;
import com.ycwl.basic.puzzle.mapper.PuzzleTemplateMapper;
import com.ycwl.basic.repository.DeviceRepository;
import com.ycwl.basic.repository.FaceRepository;
import com.ycwl.basic.repository.MemberRelationRepository;
@@ -184,6 +186,7 @@ public class FaceServiceImpl implements FaceService {
private PuzzleGenerationRecordMapper puzzleGenerationRecordMapper;
@Autowired
private IPriceCalculationService iPriceCalculationService;
private PuzzleTemplateMapper puzzleTemplateMapper;
@Override
public ApiResponse<PageInfo<FaceRespVO>> pageQuery(FaceReqQuery faceReqQuery) {
@@ -454,6 +457,7 @@ public class FaceServiceImpl implements FaceService {
if (count > 0) {
ContentPageVO sfpContent = new ContentPageVO();
List<PuzzleGenerationRecordEntity> records = puzzleGenerationRecordMapper.listByFaceId(faceId);
PuzzleTemplateEntity template = puzzleTemplateMapper.getById(records.getFirst().getTemplateId());
sfpContent.setName("三拼图");
sfpContent.setGroup("plog");
sfpContent.setScenicId(face.getScenicId());
@@ -461,8 +465,8 @@ public class FaceServiceImpl implements FaceService {
sfpContent.setSourceType(3);
sfpContent.setLockType(-1);
sfpContent.setContentId(records.getFirst().getId());
sfpContent.setTemplateId(records.getFirst().getTemplateId());
sfpContent.setTemplateCoverUrl(records.getFirst().getResultImageUrl());
sfpContent.setTemplateId(template.getId());
sfpContent.setTemplateCoverUrl(template.getCoverImage());
sfpContent.setGoodsType(3);
sfpContent.setSort(0);
IsBuyRespVO isBuyRespVO = orderBiz.isBuy(face.getMemberId(), face.getScenicId(), 5, records.getFirst().getTemplateId());