leniu-mealtime

leniu-tengyun-core 餐次处理规范

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "leniu-mealtime" with this command: npx skills add xu-cell/ai-engineering-init/xu-cell-ai-engineering-init-leniu-mealtime

leniu-tengyun-core 餐次处理规范

餐次枚举定义

AllocMealtimeTypeEnum

餐次类型枚举 AllocMealtimeTypeEnum 定义了5种餐次:

枚举值 key 显示名称 说明

MEALTIME_BREAKFAST 1 早餐 早餐

MEALTIME_LUNCH 2 午餐 午餐

MEALTIME_AFTERNOON_TEA 3 下午茶 下午茶

MEALTIME_DINNER 4 晚餐 晚餐

MEALTIME_MIDNIGHT_SNACK 5 夜宵 夜宵

常用方法

// 根据key获取枚举 AllocMealtimeTypeEnum typeEnum = AllocMealtimeTypeEnum.getTypeEnum(1);

// 根据key获取显示名称 String desc = AllocMealtimeTypeEnum.getValueByKey(1); // 返回 "早餐"

// 获取所有餐次key列表 List<Integer> allTypes = AllocMealtimeTypeEnum.allTypeList(); // [1, 2, 3, 4, 5]

// 获取正餐类型列表 List<Integer> normalTypes = AllocMealtimeTypeEnum.normalTypeList(); // [1, 2, 4]

餐次分类

  • 正餐:早餐(1)、午餐(2)、晚餐(4)

  • 非正餐:下午茶(3)、夜宵(5)

查询参数中的餐次处理

Param类定义

在报表查询Param类中添加餐次筛选字段:

@ApiModelProperty(value = "餐次集合") private List<Integer> mealtimeTypes;

完整示例

@Data @AllArgsConstructor @NoArgsConstructor @EqualsAndHashCode(callSuper = true) @ApiModel(value = "XXX查询入参") public class XxxParam extends ReportBaseParam {

@ApiModelProperty(value = "餐次集合")
private List&#x3C;Integer> mealtimeTypes;

// 其他查询字段...

}

返回VO中的餐次处理

VO字段定义

在报表返回VO类中定义餐次字段:

@Data @Accessors(chain = true) @ApiModel(value = "XXX报表") public class XxxVO {

@ExcelProperty(value = "餐次", order = 5, converter = MealtimeTypeConverter.class)
@ApiModelProperty(value = "餐次")
private Integer mealtimeType;

// 其他字段...

}

必要的导入

import com.alibaba.excel.annotation.ExcelProperty; import net.xnzn.core.common.export.converter.MealtimeTypeConverter;

字段说明

  • mealtimeType : 存储餐次的整数key值(1-5)

  • @ExcelProperty : 配置EasyExcel导出,使用MealtimeTypeConverter 进行转换

  • converter = MealtimeTypeConverter.class : 自动将整数转换为可读的餐次名称

MyBatis XML中的餐次查询

基本IN查询

<!-- 餐次筛选 --> <if test="mealtimeTypes != null and mealtimeTypes.size() > 0"> AND mealtime_type IN <foreach collection="mealtimeTypes" item="type" open="(" separator="," close=")"> #{type} </foreach> </if>

正餐筛选

<!-- 仅查询正餐(早餐、午餐、晚餐) --> AND mealtime_type IN (1, 2, 4)

完整示例

<select id="pageXxx" resultType="net.xnzn.core.xxx.vo.XxxVO"> SELECT id, order_date, mealtime_type, cust_name, real_amount FROM order_table WHERE del_flag = 2 <if test="startDate != null"> AND order_date >= #{startDate} </if> <if test="endDate != null"> AND order_date &lt;= #{endDate} </if> <if test="mealtimeTypes != null and mealtimeTypes.size() > 0"> AND mealtime_type IN <foreach collection="mealtimeTypes" item="type" open="(" separator="," close=")"> #{type} </foreach> </if> <if test="canteenId != null"> AND canteen_id = #{canteenId} </if> ORDER BY order_date DESC </select>

常见使用场景

场景1:查询指定餐次的订单

// Param定义 @ApiModelProperty(value = "餐次集合") private List<Integer> mealtimeTypes;

// Service调用 List<Integer> mealtimeTypes = Arrays.asList(1, 2); // 查询早餐和午餐 param.setMealtimeTypes(mealtimeTypes);

场景2:仅查询正餐

// 方式1:直接在XML中硬编码 AND mealtime_type IN (1, 2, 4)

// 方式2:使用枚举工具类 param.setMealtimeTypes(AllocMealtimeTypeEnum.normalTypeList());

场景3:导出时餐次列显示中文名称

// VO定义 @ExcelProperty(value = "餐次", order = 5, converter = MealtimeTypeConverter.class) @ApiModelProperty(value = "餐次") private Integer mealtimeType;

// 导出时自动转换:1 -> "早餐",2 -> "午餐" 等

注意事项

  • 字段命名:统一使用 mealtimeType (驼峰) 或 mealtime_type (下划线)

  • 类型:数据库和Java代码中均使用 Integer 类型

  • 转换器:导出时必须使用 MealtimeTypeConverter 进行转换

  • 国际化的影响:显示名称根据项目配置可能使用中文或国际化key

  • 正餐判断:需要区分正餐时使用 AllocMealtimeTypeEnum.normalTypeList() 方法

参考文档

详见:leniu-tengyun-core 源码

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

loki-log-query

No summary provided by upstream source.

Repository SourceNeeds Review
General

brainstorm

No summary provided by upstream source.

Repository SourceNeeds Review
General

openspec-ff-change

No summary provided by upstream source.

Repository SourceNeeds Review
General

utils-toolkit

No summary provided by upstream source.

Repository SourceNeeds Review