You've already forked FrameTour-BE
- 新增拼图填充规则管理Controller、DTO、Entity等核心类 - 实现条件评估策略模式,支持多种匹配规则 - 实现数据源解析策略模式,支持多种数据来源 - 新增拼图元素自动填充引擎,支持优先级匹配和动态填充 - 在SourceMapper中增加设备统计和查询相关方法 - 在PuzzleGenerateRequest中新增faceId字段用于触发自动填充 - 完善相关枚举类和工具类,提升系统可维护性和扩展性
44 lines
1.7 KiB
XML
44 lines
1.7 KiB
XML
<?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>
|