You've already forked FrameTour-BE
feat(puzzle): 添加模板封面图片字段并更新相关逻辑
- 在PuzzleTemplateDTO和TemplateCreateRequest中新增coverImage字段 - 在PuzzleTemplateEntity中新增coverImage字段并映射到数据库 - 更新FaceServiceImpl以支持获取模板封面图片URL - 修改Mapper XML文件以支持coverImage字段的读写操作 - 调整SQL查询和插入语句以包含新的coverImage字段 - 更新三拼图内容页面逻辑以使用模板封面图片URL
This commit is contained in:
@@ -53,6 +53,11 @@ public class PuzzleTemplateDTO {
|
|||||||
*/
|
*/
|
||||||
private String backgroundImage;
|
private String backgroundImage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 模板封面图片URL
|
||||||
|
*/
|
||||||
|
private String coverImage;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 模板描述
|
* 模板描述
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -46,6 +46,11 @@ public class TemplateCreateRequest {
|
|||||||
*/
|
*/
|
||||||
private String backgroundImage;
|
private String backgroundImage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 模板封面图片URL
|
||||||
|
*/
|
||||||
|
private String coverImage;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 模板描述
|
* 模板描述
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -67,6 +67,12 @@ public class PuzzleTemplateEntity {
|
|||||||
@TableField("background_image")
|
@TableField("background_image")
|
||||||
private String backgroundImage;
|
private String backgroundImage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 模板封面图片URL(用于前端管理界面展示)
|
||||||
|
*/
|
||||||
|
@TableField("cover_image")
|
||||||
|
private String coverImage;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 模板描述
|
* 模板描述
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -51,7 +51,9 @@ import com.ycwl.basic.pricing.dto.ProductItem;
|
|||||||
import com.ycwl.basic.pricing.enums.ProductType;
|
import com.ycwl.basic.pricing.enums.ProductType;
|
||||||
import com.ycwl.basic.pricing.service.IPriceCalculationService;
|
import com.ycwl.basic.pricing.service.IPriceCalculationService;
|
||||||
import com.ycwl.basic.puzzle.entity.PuzzleGenerationRecordEntity;
|
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.PuzzleGenerationRecordMapper;
|
||||||
|
import com.ycwl.basic.puzzle.mapper.PuzzleTemplateMapper;
|
||||||
import com.ycwl.basic.repository.DeviceRepository;
|
import com.ycwl.basic.repository.DeviceRepository;
|
||||||
import com.ycwl.basic.repository.FaceRepository;
|
import com.ycwl.basic.repository.FaceRepository;
|
||||||
import com.ycwl.basic.repository.MemberRelationRepository;
|
import com.ycwl.basic.repository.MemberRelationRepository;
|
||||||
@@ -184,6 +186,7 @@ public class FaceServiceImpl implements FaceService {
|
|||||||
private PuzzleGenerationRecordMapper puzzleGenerationRecordMapper;
|
private PuzzleGenerationRecordMapper puzzleGenerationRecordMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private IPriceCalculationService iPriceCalculationService;
|
private IPriceCalculationService iPriceCalculationService;
|
||||||
|
private PuzzleTemplateMapper puzzleTemplateMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ApiResponse<PageInfo<FaceRespVO>> pageQuery(FaceReqQuery faceReqQuery) {
|
public ApiResponse<PageInfo<FaceRespVO>> pageQuery(FaceReqQuery faceReqQuery) {
|
||||||
@@ -454,6 +457,7 @@ public class FaceServiceImpl implements FaceService {
|
|||||||
if (count > 0) {
|
if (count > 0) {
|
||||||
ContentPageVO sfpContent = new ContentPageVO();
|
ContentPageVO sfpContent = new ContentPageVO();
|
||||||
List<PuzzleGenerationRecordEntity> records = puzzleGenerationRecordMapper.listByFaceId(faceId);
|
List<PuzzleGenerationRecordEntity> records = puzzleGenerationRecordMapper.listByFaceId(faceId);
|
||||||
|
PuzzleTemplateEntity template = puzzleTemplateMapper.getById(records.getFirst().getTemplateId());
|
||||||
sfpContent.setName("三拼图");
|
sfpContent.setName("三拼图");
|
||||||
sfpContent.setGroup("plog");
|
sfpContent.setGroup("plog");
|
||||||
sfpContent.setScenicId(face.getScenicId());
|
sfpContent.setScenicId(face.getScenicId());
|
||||||
@@ -461,8 +465,8 @@ public class FaceServiceImpl implements FaceService {
|
|||||||
sfpContent.setSourceType(3);
|
sfpContent.setSourceType(3);
|
||||||
sfpContent.setLockType(-1);
|
sfpContent.setLockType(-1);
|
||||||
sfpContent.setContentId(records.getFirst().getId());
|
sfpContent.setContentId(records.getFirst().getId());
|
||||||
sfpContent.setTemplateId(records.getFirst().getTemplateId());
|
sfpContent.setTemplateId(template.getId());
|
||||||
sfpContent.setTemplateCoverUrl(records.getFirst().getResultImageUrl());
|
sfpContent.setTemplateCoverUrl(template.getCoverImage());
|
||||||
sfpContent.setGoodsType(3);
|
sfpContent.setGoodsType(3);
|
||||||
sfpContent.setSort(0);
|
sfpContent.setSort(0);
|
||||||
IsBuyRespVO isBuyRespVO = orderBiz.isBuy(face.getMemberId(), face.getScenicId(), 5, records.getFirst().getTemplateId());
|
IsBuyRespVO isBuyRespVO = orderBiz.isBuy(face.getMemberId(), face.getScenicId(), 5, records.getFirst().getTemplateId());
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
<result column="background_type" property="backgroundType"/>
|
<result column="background_type" property="backgroundType"/>
|
||||||
<result column="background_color" property="backgroundColor"/>
|
<result column="background_color" property="backgroundColor"/>
|
||||||
<result column="background_image" property="backgroundImage"/>
|
<result column="background_image" property="backgroundImage"/>
|
||||||
|
<result column="cover_image" property="coverImage"/>
|
||||||
<result column="description" property="description"/>
|
<result column="description" property="description"/>
|
||||||
<result column="category" property="category"/>
|
<result column="category" property="category"/>
|
||||||
<result column="status" property="status"/>
|
<result column="status" property="status"/>
|
||||||
@@ -26,7 +27,7 @@
|
|||||||
<!-- 基础列 -->
|
<!-- 基础列 -->
|
||||||
<sql id="Base_Column_List">
|
<sql id="Base_Column_List">
|
||||||
id, name, code, canvas_width, canvas_height, background_type, background_color,
|
id, name, code, canvas_width, canvas_height, background_type, background_color,
|
||||||
background_image, description, category, status, scenic_id, create_time, update_time, deleted, deleted_at
|
background_image, cover_image, description, category, status, scenic_id, create_time, update_time, deleted, deleted_at
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<!-- 根据ID查询 -->
|
<!-- 根据ID查询 -->
|
||||||
@@ -67,10 +68,10 @@
|
|||||||
useGeneratedKeys="true" keyProperty="id">
|
useGeneratedKeys="true" keyProperty="id">
|
||||||
INSERT INTO puzzle_template (
|
INSERT INTO puzzle_template (
|
||||||
name, code, canvas_width, canvas_height, background_type, background_color,
|
name, code, canvas_width, canvas_height, background_type, background_color,
|
||||||
background_image, description, category, status, scenic_id, create_time, update_time, deleted
|
background_image, cover_image, description, category, status, scenic_id, create_time, update_time, deleted
|
||||||
) VALUES (
|
) VALUES (
|
||||||
#{name}, #{code}, #{canvasWidth}, #{canvasHeight}, #{backgroundType}, #{backgroundColor},
|
#{name}, #{code}, #{canvasWidth}, #{canvasHeight}, #{backgroundType}, #{backgroundColor},
|
||||||
#{backgroundImage}, #{description}, #{category}, #{status}, #{scenicId}, NOW(), NOW(), 0
|
#{backgroundImage}, #{coverImage}, #{description}, #{category}, #{status}, #{scenicId}, NOW(), NOW(), 0
|
||||||
)
|
)
|
||||||
</insert>
|
</insert>
|
||||||
|
|
||||||
@@ -85,6 +86,7 @@
|
|||||||
<if test="backgroundType != null">background_type = #{backgroundType},</if>
|
<if test="backgroundType != null">background_type = #{backgroundType},</if>
|
||||||
<if test="backgroundColor != null">background_color = #{backgroundColor},</if>
|
<if test="backgroundColor != null">background_color = #{backgroundColor},</if>
|
||||||
<if test="backgroundImage != null">background_image = #{backgroundImage},</if>
|
<if test="backgroundImage != null">background_image = #{backgroundImage},</if>
|
||||||
|
<if test="coverImage != null">cover_image = #{coverImage},</if>
|
||||||
<if test="description != null">description = #{description},</if>
|
<if test="description != null">description = #{description},</if>
|
||||||
<if test="category != null">category = #{category},</if>
|
<if test="category != null">category = #{category},</if>
|
||||||
<if test="status != null">status = #{status},</if>
|
<if test="status != null">status = #{status},</if>
|
||||||
|
|||||||
Reference in New Issue
Block a user