You've already forked FrameTour-BE
feat(puzzle): 实现拼图自动填充规则引擎及相关功能
- 新增拼图填充规则管理Controller、DTO、Entity等核心类 - 实现条件评估策略模式,支持多种匹配规则 - 实现数据源解析策略模式,支持多种数据来源 - 新增拼图元素自动填充引擎,支持优先级匹配和动态填充 - 在SourceMapper中增加设备统计和查询相关方法 - 在PuzzleGenerateRequest中新增faceId字段用于触发自动填充 - 完善相关枚举类和工具类,提升系统可维护性和扩展性
This commit is contained in:
43
src/main/resources/mapper/PuzzleFillRuleItemMapper.xml
Normal file
43
src/main/resources/mapper/PuzzleFillRuleItemMapper.xml
Normal file
@@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ycwl.basic.puzzle.mapper.PuzzleFillRuleItemMapper">
|
||||
|
||||
<resultMap id="BaseResultMap" type="com.ycwl.basic.puzzle.entity.PuzzleFillRuleItemEntity">
|
||||
<id column="id" property="id"/>
|
||||
<result column="rule_id" property="ruleId"/>
|
||||
<result column="element_key" property="elementKey"/>
|
||||
<result column="data_source" property="dataSource"/>
|
||||
<result column="source_filter" property="sourceFilter"/>
|
||||
<result column="sort_strategy" property="sortStrategy"/>
|
||||
<result column="fallback_value" property="fallbackValue"/>
|
||||
<result column="item_order" property="itemOrder"/>
|
||||
<result column="create_time" property="createTime"/>
|
||||
<result column="update_time" property="updateTime"/>
|
||||
</resultMap>
|
||||
|
||||
<select id="listByRuleId" resultMap="BaseResultMap">
|
||||
SELECT *
|
||||
FROM puzzle_fill_rule_item
|
||||
WHERE rule_id = #{ruleId}
|
||||
ORDER BY item_order ASC, id ASC
|
||||
</select>
|
||||
|
||||
<insert id="batchInsert">
|
||||
INSERT INTO puzzle_fill_rule_item (
|
||||
rule_id, element_key, data_source, source_filter,
|
||||
sort_strategy, fallback_value, item_order
|
||||
) VALUES
|
||||
<foreach collection="items" item="item" separator=",">
|
||||
(
|
||||
#{item.ruleId}, #{item.elementKey}, #{item.dataSource}, #{item.sourceFilter},
|
||||
#{item.sortStrategy}, #{item.fallbackValue}, #{item.itemOrder}
|
||||
)
|
||||
</foreach>
|
||||
</insert>
|
||||
|
||||
<delete id="deleteByRuleId">
|
||||
DELETE FROM puzzle_fill_rule_item
|
||||
WHERE rule_id = #{ruleId}
|
||||
</delete>
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user