Skip to content
Back to skills

Shucheng Budget Data Model

ASecurity

提供预算系统数据模型的完整定义,包括所有表名、字段名、数据类型等。当用户需要查询预算相关数据模型结构、编写数据查询脚本、或需要了解特定表的字段信息时使用此技能。

  • 12 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 22, 2026
databasessql

Security analysis

A100/100

Scanned September 22, 2026

npx -y skills add luokai0/ai-agent-skills-by-luo-kai --skill shucheng-budget-data-model --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Shucheng Budget Data Model?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Shucheng Budget Data Model
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/luokai0-shucheng-budget-data-model/badge)](https://www.skillsdirectory.com/skills/luokai0-shucheng-budget-data-model)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
---
name: budget-data-model
description: "提供预算系统数据模型的完整定义,包括所有表名、字段名、数据类型等。当用户需要查询预算相关数据模型结构、编写数据查询脚本、或需要了解特定表的字段信息时使用此技能。"
metadata: { "openclaw": { "emoji": "📊", "requires": { "bins": [] } } }
---

# 预算系统数据模型技能

提供预算系统的完整数据模型定义,包含 68 个数据表的详细结构信息。

## 何时使用

✅ **使用此技能的情况:**

- "预算管理表有哪些字段?"
- "查询预算数据需要用到哪些表?"
- "帮我写一个查询预算数据的脚本"
- "预算表的表名是什么?"
- "需要了解预算系统的数据库结构"
- "某字段在哪个表里?"

## 数据模型结构

每个数据模型包含以下信息:

- **table_id**: 表标识(数据库表名)
- **table_name**: 表显示名(中文别名)
- **fields**: 字段列表,每个字段包含:
  - **field_id**: 字段标识(数据库字段名)
  - **field_name**: 字段显示名(中文别名)
  - **data_type**: 数据类型(string/number/integer/datetime/date/array)
  - **length**: 长度/精度
  - **is_required**: 是否必填
  - **is_editable**: 是否可编辑

## 主要数据表分类

### 预算基础表
- 预算主表
- 预算版本
- 预算公式
- 预算科目

### 费用预算表
- 单位成本
- 成本预算
- 毛利预算
- 费用明细

### 业务预算表
- 维修计划
- 培训计划
- 附加服务
- 航材储备

### 报表相关表
- 预算报表主表
- 预算报表明细
- 预算执行报表

### 辅助表
- 预算科目值表
- 预算公式明细
- 飞机预算方案

## 数据查询规范

### 1. 使用 DataModelUtils 查询

```groovy
// 单条查询
def 数据 = DataModelUtils.getCIByPK("表名", ['ID': 值])

// 多条查询
def 数据列表 = DataModelUtils.getCIByAttr("表名", ['字段名': 值])

// SQL 查询
def sql = """SELECT * FROM "表名" WHERE 条件"""
def 结果 = DataModelUtils.queryForListMap(sql, null)
```

### 2. 字段命名规范

- 使用中文变量名(如 `def 预算数据`)
- 字段访问使用 `dataFieldMap.字段名`
- ID 字段通常为 `ID` 或 `表名 id`

### 3. 常见字段类型

| 类型 | 说明 | 示例 |
|------|------|------|
| string | 字符串 | '预算名称' |
| number | 数字(含小数) | 1000.00 |
| integer | 整数 | 2024 |
| datetime | 日期时间 | ${currTime} |
| date | 日期 | '2024-01-01' |
| array | 数组 | ['值 1', '值 2'] |

## 常用数据表说明

### 预算主表
用于存储预算的基本信息,包含预算名称、状态、创建时间等。

### 预算版本表
用于存储预算的不同版本,支持版本管理和历史追溯。

### 单位成本表
存储各单位的成本数据,包含月份、项目、金额等字段。

### 成本预算表
存储成本预算数据,支持多维度预算编制。

### 维修计划表
存储飞机维修计划,包含飞机号、客户编号、维修项目等。

### 培训计划表
存储培训计划信息,包含培训人员、时间、项目等。

## 数据模型文件

完整的数据模型定义存储在 `references/data_models.json` 文件中,包含所有 68 个数据表的详细字段信息。

## 使用示例

### 示例 1:查询预算主表数据

```groovy
def 预算数据 = DataModelUtils.getCIByPK("预算主表", ['ID': 预算 ID])
def 预算名称 = 预算数据.dataFieldMap.预算名称
def 状态 = 预算数据.dataFieldMap.状态
```

### 示例 2:查询某飞机的维修计划

```groovy
def 维修计划列表 = DataModelUtils.getCIByAttr("维修计划表", ['飞机号': 飞机号])
for (计划 in 维修计划列表) {
    println "维修项目:" + 计划.dataFieldMap.维修项目
}
```

### 示例 3:汇总某单位某月的成本

```groovy
def sql = """
    SELECT SUM("金额") AS 总成本
    FROM "单位成本表"
    WHERE "单位 id" = ? AND "月份" = ?
"""
def 结果 = DataModelUtils.queryForListMap(sql, [单位 ID, 月份])
def 总成本 = 结果 [0].总成本
```

## 注意事项

1. **表名和字段名**:使用数据模型中定义的准确名称
2. **数据类型**:注意区分 string、number、integer 等类型
3. **必填字段**:创建数据时确保必填字段有值
4. **ID 字段**:主键字段通常为 ID 或 表名 id,长度为 128
5. **关联查询**:通过 id 字段进行表间关联

## 相关文件

- `references/data_models.json` - 完整数据模型定义(68 个表)

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…