diff --git a/Tiobon.Core.Api/Controllers/Ghrp/Ghrp_TemplateAreaController.cs b/Tiobon.Core.Api/Controllers/Ghrp/Ghrp_TemplateAreaController.cs
new file mode 100644
index 00000000..61ef42a4
--- /dev/null
+++ b/Tiobon.Core.Api/Controllers/Ghrp/Ghrp_TemplateAreaController.cs
@@ -0,0 +1,30 @@
+using Newtonsoft.Json.Linq;
+using System.Data;
+
+namespace Tiobon.Core.Api.Controllers;
+
+///
+/// 模板区域(Controller)
+///
+[Route("api/[controller]")]
+[ApiController, GlobalActionFilter]
+[Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghrp)]
+public class Ghrp_TemplateAreaController : BaseController
+{
+ public Ghrp_TemplateAreaController(IGhrp_TemplateAreaServices service) : base(service)
+ {
+ }
+ #region 加载左侧区域
+ ///
+ /// 初始化获取区域元素
+ ///
+ /// 阶段
+ ///
+ [HttpPost, Route("InitAreaInfo")]
+ public async Task> InitAreaInfo() => await _service.InitAreaInfo();
+ #endregion
+
+ [HttpPost, Route("ItemMatchField")]
+ public async Task> ItemMatchField() => await _service.ItemMatchField();
+
+}
\ No newline at end of file
diff --git a/Tiobon.Core.Api/Tiobon.Core.Model.xml b/Tiobon.Core.Api/Tiobon.Core.Model.xml
index 5e162309..ad96c57d 100644
--- a/Tiobon.Core.Api/Tiobon.Core.Model.xml
+++ b/Tiobon.Core.Api/Tiobon.Core.Model.xml
@@ -4,56 +4,6 @@
Tiobon.Core.Model
-
-
- 表主键
-
-
-
-
- 1:有效,0:未生效
-
-
-
-
- 创建人
-
-
-
-
- 创建时间
-
-
-
-
- 创建程序
-
-
-
-
- 创建IP
-
-
-
-
- 最后修改人
-
-
-
-
- 最后修改时间
-
-
-
-
- 最后修改程序
-
-
-
-
- 最后修改IP
-
-
年级 (Dto.Base)
@@ -3035,6 +2985,16 @@
集团数据归属
+
+
+ 类别
+
+
+
+
+ 设计模板
+
+
课程场景ID
@@ -3045,6 +3005,186 @@
课程ID
+
+
+ 证书模板 (Dto.Base)
+
+
+
+
+ 集团数据归属
+
+
+
+
+ 规则类型
+
+
+
+
+ 编号生成类型
+
+
+
+
+ 规则编号
+
+
+
+
+ 证书名称
+
+
+
+
+ 课程场景ID
+
+
+
+
+ 课程场景ID
+
+
+
+
+ 课程ID
+
+
+
+
+ 课程ID
+
+
+
+
+ 有效期类型
+
+
+
+
+ 固定数
+
+
+
+
+ 固定类型
+
+
+
+
+ 有效期
+
+
+
+
+ 发放规则
+
+
+
+
+ 分数
+
+
+
+
+ 分数1
+
+
+
+
+ 颁发机构类型
+
+
+
+
+ 颁发机构ID
+
+
+
+
+ 颁发机构名称
+
+
+
+
+ 类别
+
+
+
+
+ 设计模板
+
+
+
+
+ 备注
+
+
+
+
+ 默认标志
+
+
+
+
+ 预留字段1
+
+
+
+
+ 预留字段2
+
+
+
+
+ 预留字段3
+
+
+
+
+ 预留字段4
+
+
+
+
+ 预留字段5
+
+
+
+
+ 预留字段6
+
+
+
+
+ 预留字段7
+
+
+
+
+ 预留字段8
+
+
+
+
+ 预留字段9
+
+
+
+
+ 预留字段10
+
+
+
+
+ 预留字段11
+
+
+
+
+ 预留字段12
+
+
参数配置 (Dto.Base)
@@ -4230,11 +4370,6 @@
课程快照ID
-
-
- 考试ID
-
-
获得日期
@@ -4315,6 +4450,11 @@
预留字段12
+
+
+ 考试ID
+
+
学分规则ID
@@ -8320,6 +8460,16 @@
预留字段12
+
+
+ 生效日期
+
+
+
+
+ 失效日期
+
+
员工群组 (Dto.Base)
@@ -8760,6 +8910,11 @@
完成状态
+
+
+ 学分
+
+
培训记录明细 (Dto.Base)
@@ -16775,6 +16930,286 @@
内置
+
+
+ 模板区域 (Dto.Base)
+
+
+
+
+ 模板ID
+
+
+
+
+ 前端UUID
+
+
+
+
+ 区域分类
+
+
+
+
+ 区域分类名称
+
+
+
+
+ 区域标题
+
+
+
+
+ 区域说明
+
+
+
+
+ 标题字体大小
+
+
+
+
+ 说明字体大小
+
+
+
+
+ 标题LangKey
+
+
+
+
+ 标题LangKey
+
+
+
+
+ 区域隐藏
+
+
+
+
+ 权重合计显示
+
+
+
+
+ 区域元素list
+
+
+
+
+ 区域元素列数
+
+
+
+
+ 区域元素字体大小
+
+
+
+
+ 元素标题对齐方式
+
+
+
+
+ 区域元素对齐方式
+
+
+
+
+ 显示分数
+
+
+
+
+ 显示等级
+
+
+
+
+ 分数显示位数
+
+
+
+
+ 等级显示格式
+
+
+
+
+ 显示操作人
+
+
+
+
+ 显示操作时间
+
+
+
+
+ 显示操作类型
+
+
+
+
+ 显示操作备注
+
+
+
+
+ 请假分组
+
+
+
+
+ 选择假别
+
+
+
+
+ 显示缺勤天数
+
+
+
+
+ 奖励
+
+
+
+
+ 惩罚
+
+
+
+
+ 关联模板
+
+
+
+
+ 关联区域
+
+
+
+
+ 关联区域元素
+
+
+
+
+ 关联期间类别
+
+
+
+
+ 关联期间
+
+
+
+
+ 头像显示
+
+
+
+
+ 工号显示
+
+
+
+
+ 姓名显示
+
+
+
+
+ 提交时间显示
+
+
+
+
+ 备注
+
+
+
+
+ 排序
+
+
+
+
+ 默认标志
+
+
+
+
+ 预留字段1
+
+
+
+
+ 预留字段2
+
+
+
+
+ 预留字段3
+
+
+
+
+ 预留字段4
+
+
+
+
+ 预留字段5
+
+
+
+
+ 预留字段6
+
+
+
+
+ 预留字段7
+
+
+
+
+ 预留字段8
+
+
+
+
+ 预留字段9
+
+
+
+
+ 预留字段10
+
+
+
+
+ 预留字段11
+
+
+
+
+ 预留字段12
+
+
+
+
+ 内置
+
+
Ghrs_Attachment (Dto.Base)
@@ -18522,6 +18957,11 @@
培训证书规则 (Dto.EditInput)
+
+
+ 证书模板 (Dto.EditInput)
+
+
参数配置 (Dto.EditInput)
@@ -19032,6 +19472,11 @@
考核模板 (Dto.EditInput)
+
+
+ 模板区域 (Dto.EditInput)
+
+
Ghrs_Attachment (Dto.EditInput)
@@ -19182,6 +19627,11 @@
培训证书规则 (Dto.InsertInput)
+
+
+ 证书模板 (Dto.InsertInput)
+
+
参数配置 (Dto.InsertInput)
@@ -19708,6 +20158,11 @@
考核模板 (Dto.InsertInput)
+
+
+ 模板区域 (Dto.InsertInput)
+
+
Ghrs_Attachment (Dto.InsertInput)
@@ -22947,6 +23402,196 @@
集团数据归属
+
+
+ 类别
+
+
+
+
+ 设计模板
+
+
+
+
+ 证书模板 (Model)
+
+
+
+
+ 集团数据归属
+
+
+
+
+ 规则类型
+
+
+
+
+ 编号生成类型
+
+
+
+
+ 规则编号
+
+
+
+
+ 证书名称
+
+
+
+
+ 课程场景ID
+
+
+
+
+ 课程场景ID
+
+
+
+
+ 课程ID
+
+
+
+
+ 课程ID
+
+
+
+
+ 有效期类型
+
+
+
+
+ 固定数
+
+
+
+
+ 固定类型
+
+
+
+
+ 有效期
+
+
+
+
+ 发放规则
+
+
+
+
+ 分数
+
+
+
+
+ 分数1
+
+
+
+
+ 颁发机构类型
+
+
+
+
+ 颁发机构ID
+
+
+
+
+ 颁发机构名称
+
+
+
+
+ 类别
+
+
+
+
+ 设计模板
+
+
+
+
+ 备注
+
+
+
+
+ 默认标志
+
+
+
+
+ 预留字段1
+
+
+
+
+ 预留字段2
+
+
+
+
+ 预留字段3
+
+
+
+
+ 预留字段4
+
+
+
+
+ 预留字段5
+
+
+
+
+ 预留字段6
+
+
+
+
+ 预留字段7
+
+
+
+
+ 预留字段8
+
+
+
+
+ 预留字段9
+
+
+
+
+ 预留字段10
+
+
+
+
+ 预留字段11
+
+
+
+
+ 预留字段12
+
+
参数配置 (Model)
@@ -24127,11 +24772,6 @@
课程快照ID
-
-
- 考试ID
-
-
获得日期
@@ -24212,6 +24852,11 @@
预留字段12
+
+
+ 考试ID
+
+
学分规则ID
@@ -28562,6 +29207,11 @@
完成状态
+
+
+ 学分
+
+
培训记录明细 (Model)
@@ -36712,6 +37362,286 @@
内置
+
+
+ 模板区域 (Model)
+
+
+
+
+ 模板ID
+
+
+
+
+ 前端UUID
+
+
+
+
+ 区域分类
+
+
+
+
+ 区域分类名称
+
+
+
+
+ 区域标题
+
+
+
+
+ 区域说明
+
+
+
+
+ 标题字体大小
+
+
+
+
+ 说明字体大小
+
+
+
+
+ 标题LangKey
+
+
+
+
+ 标题LangKey
+
+
+
+
+ 区域隐藏
+
+
+
+
+ 权重合计显示
+
+
+
+
+ 区域元素list
+
+
+
+
+ 区域元素列数
+
+
+
+
+ 区域元素字体大小
+
+
+
+
+ 元素标题对齐方式
+
+
+
+
+ 区域元素对齐方式
+
+
+
+
+ 显示分数
+
+
+
+
+ 显示等级
+
+
+
+
+ 分数显示位数
+
+
+
+
+ 等级显示格式
+
+
+
+
+ 显示操作人
+
+
+
+
+ 显示操作时间
+
+
+
+
+ 显示操作类型
+
+
+
+
+ 显示操作备注
+
+
+
+
+ 请假分组
+
+
+
+
+ 选择假别
+
+
+
+
+ 显示缺勤天数
+
+
+
+
+ 奖励
+
+
+
+
+ 惩罚
+
+
+
+
+ 关联模板
+
+
+
+
+ 关联区域
+
+
+
+
+ 关联区域元素
+
+
+
+
+ 关联期间类别
+
+
+
+
+ 关联期间
+
+
+
+
+ 头像显示
+
+
+
+
+ 工号显示
+
+
+
+
+ 姓名显示
+
+
+
+
+ 提交时间显示
+
+
+
+
+ 备注
+
+
+
+
+ 排序
+
+
+
+
+ 默认标志
+
+
+
+
+ 预留字段1
+
+
+
+
+ 预留字段2
+
+
+
+
+ 预留字段3
+
+
+
+
+ 预留字段4
+
+
+
+
+ 预留字段5
+
+
+
+
+ 预留字段6
+
+
+
+
+ 预留字段7
+
+
+
+
+ 预留字段8
+
+
+
+
+ 预留字段9
+
+
+
+
+ 预留字段10
+
+
+
+
+ 预留字段11
+
+
+
+
+ 预留字段12
+
+
+
+
+ 内置
+
+
Ghrs_Attachment (Model)
@@ -38364,41 +39294,6 @@
Reverse5
-
- 博客ID
-
-
-
-
- 创建时间
-
-
-
-
- 手机
-
-
-
-
- qq
-
-
-
-
- 留言内容
-
-
-
-
- ip地址
-
-
-
-
- 是否显示在前台,0否1是
-
-
-
接口API地址信息表
@@ -38755,249 +39650,6 @@
修改时间
-
-
- 状态
- 中立字段,某些表可使用某些表不使用
-
-
-
-
- 中立字段,某些表可使用某些表不使用
- 逻辑上的删除,非物理删除
- 例如:单据删除并非直接删除
-
-
-
-
- 中立字段
- 是否内置数据
-
-
-
-
- 创建ID
-
-
-
-
- 创建者
-
-
-
-
- 创建时间
-
-
-
-
- 修改ID
-
-
-
-
- 更新者
-
-
-
-
- 修改日期
-
-
-
-
- 数据版本
-
-
-
-
- 软删除 过滤器
-
-
-
-
- 系统租户表
- 根据TenantType 分为两种方案:
- 1.按租户字段区分
- 2.按租户分库
-
-
-
- 注意:
- 使用租户Id方案,无需配置分库的连接
-
-
-
-
- 名称
-
-
-
-
- 租户类型
-
-
-
-
- 数据库/租户标识 不可重复
- 使用Id方案,可无需配置
-
-
-
-
- 主机
- 使用Id方案,可无需配置
-
-
-
-
- 数据库类型
- 使用Id方案,可无需配置
-
-
-
-
- 数据库连接
- 使用Id方案,可无需配置
-
-
-
-
- 状态
-
-
-
-
- 备注
-
-
-
-
- 用户信息表
-
-
-
-
- 登录账号
-
-
-
-
- 登录密码
-
-
-
-
- 真实姓名
-
-
-
-
- 状态
-
-
-
-
- 部门
-
-
-
-
- 备注
-
-
-
-
- 创建时间
-
-
-
-
- 更新时间
-
-
-
-
- 关键业务修改时间
-
-
-
-
- 最后异常时间
-
-
-
-
- 错误次数
-
-
-
-
- 登录账号
-
-
-
-
- 租户Id
-
-
-
-
- 业务数据
- 多租户 (Id 隔离)
-
-
-
-
- 无需手动赋值
-
-
-
-
- 名称
-
-
-
-
- 金额
-
-
-
-
- 多租户-多表方案 业务表 子表
-
-
-
-
- 多租户-多表方案 业务表
-
-
-
-
- 名称
-
-
-
-
- 金额
-
-
-
-
- 多租户-多库方案 业务表
- 公共库无需标记[MultiTenant]特性
-
-
-
-
- 名称
-
-
-
-
- 金额
-
-
用户跟角色关联表
@@ -39533,6 +40185,21 @@
课程ID
+
+
+ 证书模板(Dto.View1)
+
+
+
+
+ 创建信息
+
+
+
+
+ 修改信息
+
+
参数配置(Dto.View)
@@ -40228,6 +40895,16 @@
修改信息
+
+
+ 生效日期
+
+
+
+
+ 失效日期
+
+
员工群组(Dto.View1)
@@ -41853,6 +42530,21 @@
修改信息
+
+
+ 模板区域(Dto.View1)
+
+
+
+
+ 创建信息
+
+
+
+
+ 修改信息
+
+
Ghrs_Attachment(Dto.View)
@@ -42408,21 +43100,6 @@
已逾期
-
-
- 真实表名(数据库表名,若没有填写默认实体为表名)
-
-
-
-
- 表中文名
-
-
-
-
- 是否校验唯一性
-
-
以下model 来自ids4项目,多库模式,为了调取ids4数据
@@ -42552,23 +43229,6 @@
api ID
-
-
- ID
- 泛型主键Tkey
-
-
-
-
- 用户信息表
-
-
-
-
- Id
- 泛型主键Tkey
-
-
用户跟角色关联表
@@ -42642,177 +43302,11 @@
查询条件( 例如:id = 1 and name = 小明)
-
-
- 服务层响应实体(泛型)
-
-
-
-
- 状态码
-
-
-
-
- 操作是否成功
-
-
-
-
- 返回信息
-
-
-
-
- 开发者信息
-
-
-
-
- 返回数据集合
-
-
-
-
- 返回成功
-
- 消息
-
-
-
-
- 返回成功
-
- 消息
- 数据
-
-
-
-
- 返回失败
-
- 消息
-
-
-
-
- 返回失败
-
- 消息
- 数据
-
-
-
-
- 返回消息
-
- 失败/成功
- 消息
- 数据
-
-
-
-
- 服务层响应实体
-
-
-
-
- 状态码
-
-
-
-
- 操作是否成功
-
-
-
-
- 返回信息
-
-
-
-
- 返回数据集合
-
-
-
-
- 操作成功
-
-
-
-
-
-
- 操作失败
-
-
-
-
-
-
-
- 返回数据
-
-
-
-
- 服务层分页响应实体(泛型)
-
-
-
-
- 操作是否成功
-
-
-
-
- 返回信息
-
-
数据库读取类型
-
-
- 租户模型接口
-
-
-
-
- 租户Id
-
-
-
-
- 标识 多租户 的业务表
- 默认设置是多库
- 公共表无需区分 直接使用主库 各自业务在各自库中
-
-
-
-
- 租户隔离方案
-
-
-
-
- Id隔离
-
-
-
-
- 库隔离
-
-
-
-
- 表隔离
-
-
博客信息展示类
@@ -42893,11 +43387,6 @@
-
-
- Type Description balabala
-
-
bgColor
@@ -43638,51 +44127,6 @@
Offer文件路径
-
-
- 留言信息展示类
-
-
-
- 留言表
-
-
-
-
- 博客ID
-
-
-
-
- 创建时间
-
-
-
-
- 手机
-
-
-
-
- qq
-
-
-
-
- 留言内容
-
-
-
-
- ip地址
-
-
-
-
- 是否显示在前台,0否1是
-
-
-
实现IJob的类
@@ -43808,26 +44252,6 @@
用来测试 RestSharp Post 请求
-
-
- 留言排名展示类
-
-
-
- 博客ID
-
-
-
-
-
- 评论数量
-
-
-
- 博客标题
-
-
-
分组
diff --git a/Tiobon.Core.Api/Tiobon.Core.xml b/Tiobon.Core.Api/Tiobon.Core.xml
index 5ee6772c..d1a7c8c5 100644
--- a/Tiobon.Core.Api/Tiobon.Core.xml
+++ b/Tiobon.Core.Api/Tiobon.Core.xml
@@ -79,14 +79,14 @@
初始化 (注入)
-
+
根据条件查询数据
条件
-
+
查询作废
@@ -100,7 +100,7 @@
主键ID
-
+
查询菜单表单信息
@@ -148,7 +148,7 @@
主键IDs
-
+
Excel导出
@@ -168,7 +168,7 @@
公共服务
-
+
构造函数
@@ -176,21 +176,21 @@
-
+
获取菜单
-
+
获取模块信息接口
-
+
获取模块信息接口
@@ -205,7 +205,7 @@
-
+
导出Excel
@@ -222,14 +222,14 @@
多语
-
+
获取流程信息
-
+
流程提交处理
@@ -512,7 +512,7 @@
-
+
获取新入职人员列表
@@ -749,7 +749,7 @@
培训记录(Controller)
-
+
根据条件查询数据
@@ -778,6 +778,17 @@
+
+
+ 根据条件查询数据
+
+
+
+
+
+ 证书模板(Controller)
+
+
参数配置(Controller)
@@ -804,7 +815,7 @@
课程(Controller)
-
+
根据条件查询数据
@@ -827,7 +838,7 @@
-
+
统计
@@ -873,14 +884,14 @@
学分记录(Controller)
-
+
查询明细数据
body
-
+
根据工号查询学分明细
@@ -910,13 +921,13 @@
考试(Controller)
-
+
查询初始化数据
-
+
根据条件查询数据
@@ -1019,7 +1030,7 @@
-
+
根据条件查询数据
@@ -1072,7 +1083,7 @@
考试记录(Controller)
-
+
根据条件查询数据
@@ -1194,7 +1205,7 @@
开班管理(Controller)
-
+
根据条件查询数据
@@ -1355,7 +1366,7 @@
培训计划(Controller)
-
+
根据条件查询数据
@@ -1363,14 +1374,21 @@
status
-
+
根据条件查询数据
条件
-
+
+
+ 根据条件查询数据
+
+ 条件
+
+
+
培训计划达成率——宝连通
@@ -1414,7 +1432,7 @@
培训需求(Controller)
-
+
根据条件查询数据
@@ -1422,7 +1440,7 @@
status
-
+
查询菜单表单信息
@@ -1434,7 +1452,7 @@
必选修查询(Controller)
-
+
根据条件查询数据
@@ -1462,28 +1480,28 @@
培训记录(Controller)
-
+
获取ESS查询条件
-
+
获取ESS查询条件
-
+
获取学习记录
-
+
获取课程
@@ -1507,13 +1525,19 @@
-
+
讲师上课分析
+
+
+ 积分发放
+
+
+
培训记录明细(Controller)
@@ -1536,7 +1560,7 @@
必选修规则结果(Controller)
-
+
根据条件查询数据
@@ -1554,7 +1578,7 @@
问卷调查(Controller)
-
+
根据条件查询数据
@@ -1636,6 +1660,13 @@
+
+
+ QueryESS
+
+
+
+
问卷调查选项(Controller)
@@ -1708,7 +1739,7 @@
培训讲师异动(Controller)
-
+
根据条件查询数据
@@ -1721,7 +1752,7 @@
Ghre_Teacher(Controller)
-
+
根据条件查询数据
@@ -1749,7 +1780,7 @@
【牛尾】培训计划(Controller)
-
+
根据条件查询数据
@@ -1789,7 +1820,7 @@
人力需求维护(Controller)
-
+
根据条件查询数据
@@ -1797,7 +1828,7 @@
status
-
+
Excel导出
@@ -1876,7 +1907,7 @@
-
+
根据条件查询数据
@@ -1953,7 +1984,7 @@
-
+
根据条件查询数据
@@ -2080,7 +2111,7 @@
简历Ids
-
+
ESS端查询面试记录
@@ -2164,7 +2195,7 @@
语言别
-
+
Excel导出录用名单
@@ -2219,7 +2250,7 @@
-
+
获取分组数据
@@ -2242,28 +2273,28 @@
-
+
获取分组数据
-
+
执行分组列栏位操作
-
+
查询模板栏位
-
+
查询模板栏位
@@ -2398,6 +2429,18 @@
考核模板(Controller)
+
+
+ 模板区域(Controller)
+
+
+
+
+ 初始化获取区域元素
+
+ 阶段
+
+
Ghrs_Attachment(Controller)
diff --git a/Tiobon.Core.IServices/Ghrp/IGhrp_TemplateAreaServices.cs b/Tiobon.Core.IServices/Ghrp/IGhrp_TemplateAreaServices.cs
new file mode 100644
index 00000000..5cb7346e
--- /dev/null
+++ b/Tiobon.Core.IServices/Ghrp/IGhrp_TemplateAreaServices.cs
@@ -0,0 +1,14 @@
+using System.Data;
+using Tiobon.Core.Model.Models;
+
+namespace Tiobon.Core.IServices
+{
+ ///
+ /// 模板区域(自定义服务接口)
+ ///
+ public interface IGhrp_TemplateAreaServices :IBaseServices
+ {
+ Task> InitAreaInfo();
+ Task> ItemMatchField();
+ }
+}
\ No newline at end of file
diff --git a/Tiobon.Core.Model/Base/Ghrp/Ghrp_TemplateArea.Dto.Base.cs b/Tiobon.Core.Model/Base/Ghrp/Ghrp_TemplateArea.Dto.Base.cs
new file mode 100644
index 00000000..5f12f20d
--- /dev/null
+++ b/Tiobon.Core.Model/Base/Ghrp/Ghrp_TemplateArea.Dto.Base.cs
@@ -0,0 +1,330 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrp_TemplateArea.cs
+*
+*功 能: N / A
+* 类 名: Ghrp_TemplateArea
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/6/10 16:56:20 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+using System.ComponentModel;
+using System.ComponentModel.DataAnnotations;
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 模板区域 (Dto.Base)
+ ///
+ public class Ghrp_TemplateAreaBase
+ {
+
+ ///
+ /// 模板ID
+ ///
+ public long? PerformanceTemplateId { get; set; }
+
+ ///
+ /// 前端UUID
+ ///
+ [Display(Name = "uuid"), Description("前端UUID"), MaxLength(100, ErrorMessage = "前端UUID 不能超过 100 个字符")]
+ public string uuid { get; set; }
+
+ ///
+ /// 区域分类
+ ///
+ [Display(Name = "AreaType"), Description("区域分类"), MaxLength(100, ErrorMessage = "区域分类 不能超过 100 个字符")]
+ public string AreaType { get; set; }
+
+ ///
+ /// 区域分类名称
+ ///
+ [Display(Name = "AreaTypeName"), Description("区域分类名称"), MaxLength(100, ErrorMessage = "区域分类名称 不能超过 100 个字符")]
+ public string AreaTypeName { get; set; }
+
+ ///
+ /// 区域标题
+ ///
+ [Display(Name = "AreaTitle"), Description("区域标题"), MaxLength(255, ErrorMessage = "区域标题 不能超过 255 个字符")]
+ public string AreaTitle { get; set; }
+
+ ///
+ /// 区域说明
+ ///
+ [Display(Name = "AreaSubTitle"), Description("区域说明"), MaxLength(800, ErrorMessage = "区域说明 不能超过 800 个字符")]
+ public string AreaSubTitle { get; set; }
+
+ ///
+ /// 标题字体大小
+ ///
+ public int? AreaTitleFontSize { get; set; }
+
+ ///
+ /// 说明字体大小
+ ///
+ public int? AreaSubTitleFontSize { get; set; }
+
+ ///
+ /// 标题LangKey
+ ///
+ [Display(Name = "AreaTitleLangKey"), Description("标题LangKey"), MaxLength(255, ErrorMessage = "标题LangKey 不能超过 255 个字符")]
+ public string AreaTitleLangKey { get; set; }
+
+ ///
+ /// 标题LangKey
+ ///
+ [Display(Name = "AreaSubTitleLangKey"), Description("标题LangKey"), MaxLength(255, ErrorMessage = "标题LangKey 不能超过 255 个字符")]
+ public string AreaSubTitleLangKey { get; set; }
+
+ ///
+ /// 区域隐藏
+ ///
+ public bool? AreaHide { get; set; }
+
+ ///
+ /// 权重合计显示
+ ///
+ public bool? ShowWeightSum { get; set; }
+
+ ///
+ /// 区域元素list
+ ///
+ [Display(Name = "ElList"), Description("区域元素list"), MaxLength(-1, ErrorMessage = "区域元素list 不能超过 -1 个字符")]
+ public string ElList { get; set; }
+
+ ///
+ /// 区域元素列数
+ ///
+ public int? ElColNums { get; set; }
+
+ ///
+ /// 区域元素字体大小
+ ///
+ public int? ElFontSize { get; set; }
+
+ ///
+ /// 元素标题对齐方式
+ ///
+ [Display(Name = "ElLabelAlign"), Description("元素标题对齐方式"), MaxLength(255, ErrorMessage = "元素标题对齐方式 不能超过 255 个字符")]
+ public string ElLabelAlign { get; set; }
+
+ ///
+ /// 区域元素对齐方式
+ ///
+ [Display(Name = "ElAlign"), Description("区域元素对齐方式"), MaxLength(255, ErrorMessage = "区域元素对齐方式 不能超过 255 个字符")]
+ public string ElAlign { get; set; }
+
+ ///
+ /// 显示分数
+ ///
+ public bool? ShowScore { get; set; }
+
+ ///
+ /// 显示等级
+ ///
+ public bool? ShowGrade { get; set; }
+
+ ///
+ /// 分数显示位数
+ ///
+ public int? ScorePrecision { get; set; }
+
+ ///
+ /// 等级显示格式
+ ///
+ [Display(Name = "GradeFormat"), Description("等级显示格式"), MaxLength(-1, ErrorMessage = "等级显示格式 不能超过 -1 个字符")]
+ public string GradeFormat { get; set; }
+
+ ///
+ /// 显示操作人
+ ///
+ public bool? ShowOpStaff { get; set; }
+
+ ///
+ /// 显示操作时间
+ ///
+ public bool? ShowOpTime { get; set; }
+
+ ///
+ /// 显示操作类型
+ ///
+ public bool? ShowOpDoType { get; set; }
+
+ ///
+ /// 显示操作备注
+ ///
+ public bool? ShowOpRemark { get; set; }
+
+ ///
+ /// 请假分组
+ ///
+ [Display(Name = "LeaveTypeGroup"), Description("请假分组"), MaxLength(-1, ErrorMessage = "请假分组 不能超过 -1 个字符")]
+ public string LeaveTypeGroup { get; set; }
+
+ ///
+ /// 选择假别
+ ///
+ [Display(Name = "LeaveType"), Description("选择假别"), MaxLength(1000, ErrorMessage = "选择假别 不能超过 1000 个字符")]
+ public string LeaveType { get; set; }
+
+ ///
+ /// 显示缺勤天数
+ ///
+ public bool? ShowAbsence { get; set; }
+
+ ///
+ /// 奖励
+ ///
+ [Display(Name = "Reward"), Description("奖励"), MaxLength(-1, ErrorMessage = "奖励 不能超过 -1 个字符")]
+ public string Reward { get; set; }
+
+ ///
+ /// 惩罚
+ ///
+ [Display(Name = "Punish"), Description("惩罚"), MaxLength(-1, ErrorMessage = "惩罚 不能超过 -1 个字符")]
+ public string Punish { get; set; }
+
+ ///
+ /// 关联模板
+ ///
+ public long? QuoteTpl { get; set; }
+
+ ///
+ /// 关联区域
+ ///
+ public long? QuoteArea { get; set; }
+
+ ///
+ /// 关联区域元素
+ ///
+ public long? QuoteEl { get; set; }
+
+ ///
+ /// 关联期间类别
+ ///
+ public long? QuotePeriodType { get; set; }
+
+ ///
+ /// 关联期间
+ ///
+ public long? QuotePeriod { get; set; }
+
+ ///
+ /// 头像显示
+ ///
+ public bool? ShowStaffPhoto { get; set; }
+
+ ///
+ /// 工号显示
+ ///
+ public bool? ShowStaffNo { get; set; }
+
+ ///
+ /// 姓名显示
+ ///
+ public bool? ShowStaffName { get; set; }
+
+ ///
+ /// 提交时间显示
+ ///
+ public bool? ShowFlowTime { get; set; }
+
+ ///
+ /// 备注
+ ///
+ [Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
+ public string RemarkSz { get; set; }
+
+ ///
+ /// 排序
+ ///
+ public int? SortNo { get; set; }
+
+ ///
+ /// 默认标志
+ ///
+ public int? IsDefault { get; set; }
+
+ ///
+ /// 预留字段1
+ ///
+ [Display(Name = "Reverse1"), Description("预留字段1"), MaxLength(1000, ErrorMessage = "预留字段1 不能超过 1000 个字符")]
+ public string Reverse1 { get; set; }
+
+ ///
+ /// 预留字段2
+ ///
+ [Display(Name = "Reverse2"), Description("预留字段2"), MaxLength(1000, ErrorMessage = "预留字段2 不能超过 1000 个字符")]
+ public string Reverse2 { get; set; }
+
+ ///
+ /// 预留字段3
+ ///
+ [Display(Name = "Reverse3"), Description("预留字段3"), MaxLength(1000, ErrorMessage = "预留字段3 不能超过 1000 个字符")]
+ public string Reverse3 { get; set; }
+
+ ///
+ /// 预留字段4
+ ///
+ [Display(Name = "Reverse4"), Description("预留字段4"), MaxLength(1000, ErrorMessage = "预留字段4 不能超过 1000 个字符")]
+ public string Reverse4 { get; set; }
+
+ ///
+ /// 预留字段5
+ ///
+ [Display(Name = "Reverse5"), Description("预留字段5"), MaxLength(1000, ErrorMessage = "预留字段5 不能超过 1000 个字符")]
+ public string Reverse5 { get; set; }
+
+ ///
+ /// 预留字段6
+ ///
+ [Display(Name = "Reverse6"), Description("预留字段6"), MaxLength(1000, ErrorMessage = "预留字段6 不能超过 1000 个字符")]
+ public string Reverse6 { get; set; }
+
+ ///
+ /// 预留字段7
+ ///
+ [Display(Name = "Reverse7"), Description("预留字段7"), MaxLength(1000, ErrorMessage = "预留字段7 不能超过 1000 个字符")]
+ public string Reverse7 { get; set; }
+
+ ///
+ /// 预留字段8
+ ///
+ [Display(Name = "Reverse8"), Description("预留字段8"), MaxLength(1000, ErrorMessage = "预留字段8 不能超过 1000 个字符")]
+ public string Reverse8 { get; set; }
+
+ ///
+ /// 预留字段9
+ ///
+ [Display(Name = "Reverse9"), Description("预留字段9"), MaxLength(1000, ErrorMessage = "预留字段9 不能超过 1000 个字符")]
+ public string Reverse9 { get; set; }
+
+ ///
+ /// 预留字段10
+ ///
+ [Display(Name = "Reverse10"), Description("预留字段10"), MaxLength(1000, ErrorMessage = "预留字段10 不能超过 1000 个字符")]
+ public string Reverse10 { get; set; }
+
+ ///
+ /// 预留字段11
+ ///
+ public int? ReverseI1 { get; set; }
+
+ ///
+ /// 预留字段12
+ ///
+ public int? ReverseI2 { get; set; }
+
+ ///
+ /// 内置
+ ///
+ public int? BuiltIn { get; set; }
+ }
+}
diff --git a/Tiobon.Core.Model/Edit/Ghrp/Ghrp_TemplateArea.Dto.EditInput.cs b/Tiobon.Core.Model/Edit/Ghrp/Ghrp_TemplateArea.Dto.EditInput.cs
new file mode 100644
index 00000000..8397e877
--- /dev/null
+++ b/Tiobon.Core.Model/Edit/Ghrp/Ghrp_TemplateArea.Dto.EditInput.cs
@@ -0,0 +1,27 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrp_TemplateArea.cs
+*
+*功 能: N / A
+* 类 名: Ghrp_TemplateArea
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/6/10 16:56:20 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 模板区域 (Dto.EditInput)
+ ///
+ public class EditGhrp_TemplateAreaInput : Ghrp_TemplateAreaBase
+ {
+ }
+}
diff --git a/Tiobon.Core.Model/Insert/Ghrp/Ghrp_TemplateArea.Dto.InsertInput.cs b/Tiobon.Core.Model/Insert/Ghrp/Ghrp_TemplateArea.Dto.InsertInput.cs
new file mode 100644
index 00000000..6dd3cd5f
--- /dev/null
+++ b/Tiobon.Core.Model/Insert/Ghrp/Ghrp_TemplateArea.Dto.InsertInput.cs
@@ -0,0 +1,27 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrp_TemplateArea.cs
+*
+*功 能: N / A
+* 类 名: Ghrp_TemplateArea
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/6/10 16:56:20 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 模板区域 (Dto.InsertInput)
+ ///
+ public class InsertGhrp_TemplateAreaInput : Ghrp_TemplateAreaBase
+ {
+ }
+}
diff --git a/Tiobon.Core.Model/Models/Ghrp/Ghrp_TemplateArea.cs b/Tiobon.Core.Model/Models/Ghrp/Ghrp_TemplateArea.cs
new file mode 100644
index 00000000..9d229b88
--- /dev/null
+++ b/Tiobon.Core.Model/Models/Ghrp/Ghrp_TemplateArea.cs
@@ -0,0 +1,332 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrp_TemplateArea.cs
+*
+*功 能: N / A
+* 类 名: Ghrp_TemplateArea
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/6/10 16:56:20 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+using System.ComponentModel;
+using System.ComponentModel.DataAnnotations;
+using SqlSugar;
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 模板区域 (Model)
+ ///
+ [SugarTable("Ghrp_TemplateArea", "Ghrp_TemplateArea"), Entity(TableCnName = "模板区域", TableName = "Ghrp_TemplateArea")]
+ public class Ghrp_TemplateArea : BasePoco
+ {
+
+ ///
+ /// 模板ID
+ ///
+ public long? PerformanceTemplateId { get; set; }
+
+ ///
+ /// 前端UUID
+ ///
+ [Display(Name = "uuid"), Description("前端UUID"), MaxLength(100, ErrorMessage = "前端UUID 不能超过 100 个字符")]
+ public string uuid { get; set; }
+
+ ///
+ /// 区域分类
+ ///
+ [Display(Name = "AreaType"), Description("区域分类"), MaxLength(100, ErrorMessage = "区域分类 不能超过 100 个字符")]
+ public string AreaType { get; set; }
+
+ ///
+ /// 区域分类名称
+ ///
+ [Display(Name = "AreaTypeName"), Description("区域分类名称"), MaxLength(100, ErrorMessage = "区域分类名称 不能超过 100 个字符")]
+ public string AreaTypeName { get; set; }
+
+ ///
+ /// 区域标题
+ ///
+ [Display(Name = "AreaTitle"), Description("区域标题"), MaxLength(255, ErrorMessage = "区域标题 不能超过 255 个字符")]
+ public string AreaTitle { get; set; }
+
+ ///
+ /// 区域说明
+ ///
+ [Display(Name = "AreaSubTitle"), Description("区域说明"), MaxLength(800, ErrorMessage = "区域说明 不能超过 800 个字符")]
+ public string AreaSubTitle { get; set; }
+
+ ///
+ /// 标题字体大小
+ ///
+ public int? AreaTitleFontSize { get; set; }
+
+ ///
+ /// 说明字体大小
+ ///
+ public int? AreaSubTitleFontSize { get; set; }
+
+ ///
+ /// 标题LangKey
+ ///
+ [Display(Name = "AreaTitleLangKey"), Description("标题LangKey"), MaxLength(255, ErrorMessage = "标题LangKey 不能超过 255 个字符")]
+ public string AreaTitleLangKey { get; set; }
+
+ ///
+ /// 标题LangKey
+ ///
+ [Display(Name = "AreaSubTitleLangKey"), Description("标题LangKey"), MaxLength(255, ErrorMessage = "标题LangKey 不能超过 255 个字符")]
+ public string AreaSubTitleLangKey { get; set; }
+
+ ///
+ /// 区域隐藏
+ ///
+ public bool? AreaHide { get; set; }
+
+ ///
+ /// 权重合计显示
+ ///
+ public bool? ShowWeightSum { get; set; }
+
+ ///
+ /// 区域元素list
+ ///
+ [Display(Name = "ElList"), Description("区域元素list"), MaxLength(-1, ErrorMessage = "区域元素list 不能超过 -1 个字符")]
+ public string ElList { get; set; }
+
+ ///
+ /// 区域元素列数
+ ///
+ public int? ElColNums { get; set; }
+
+ ///
+ /// 区域元素字体大小
+ ///
+ public int? ElFontSize { get; set; }
+
+ ///
+ /// 元素标题对齐方式
+ ///
+ [Display(Name = "ElLabelAlign"), Description("元素标题对齐方式"), MaxLength(255, ErrorMessage = "元素标题对齐方式 不能超过 255 个字符")]
+ public string ElLabelAlign { get; set; }
+
+ ///
+ /// 区域元素对齐方式
+ ///
+ [Display(Name = "ElAlign"), Description("区域元素对齐方式"), MaxLength(255, ErrorMessage = "区域元素对齐方式 不能超过 255 个字符")]
+ public string ElAlign { get; set; }
+
+ ///
+ /// 显示分数
+ ///
+ public bool? ShowScore { get; set; }
+
+ ///
+ /// 显示等级
+ ///
+ public bool? ShowGrade { get; set; }
+
+ ///
+ /// 分数显示位数
+ ///
+ public int? ScorePrecision { get; set; }
+
+ ///
+ /// 等级显示格式
+ ///
+ [Display(Name = "GradeFormat"), Description("等级显示格式"), MaxLength(-1, ErrorMessage = "等级显示格式 不能超过 -1 个字符")]
+ public string GradeFormat { get; set; }
+
+ ///
+ /// 显示操作人
+ ///
+ public bool? ShowOpStaff { get; set; }
+
+ ///
+ /// 显示操作时间
+ ///
+ public bool? ShowOpTime { get; set; }
+
+ ///
+ /// 显示操作类型
+ ///
+ public bool? ShowOpDoType { get; set; }
+
+ ///
+ /// 显示操作备注
+ ///
+ public bool? ShowOpRemark { get; set; }
+
+ ///
+ /// 请假分组
+ ///
+ [Display(Name = "LeaveTypeGroup"), Description("请假分组"), MaxLength(-1, ErrorMessage = "请假分组 不能超过 -1 个字符")]
+ public string LeaveTypeGroup { get; set; }
+
+ ///
+ /// 选择假别
+ ///
+ [Display(Name = "LeaveType"), Description("选择假别"), MaxLength(1000, ErrorMessage = "选择假别 不能超过 1000 个字符")]
+ public string LeaveType { get; set; }
+
+ ///
+ /// 显示缺勤天数
+ ///
+ public bool? ShowAbsence { get; set; }
+
+ ///
+ /// 奖励
+ ///
+ [Display(Name = "Reward"), Description("奖励"), MaxLength(-1, ErrorMessage = "奖励 不能超过 -1 个字符")]
+ public string Reward { get; set; }
+
+ ///
+ /// 惩罚
+ ///
+ [Display(Name = "Punish"), Description("惩罚"), MaxLength(-1, ErrorMessage = "惩罚 不能超过 -1 个字符")]
+ public string Punish { get; set; }
+
+ ///
+ /// 关联模板
+ ///
+ public long? QuoteTpl { get; set; }
+
+ ///
+ /// 关联区域
+ ///
+ public long? QuoteArea { get; set; }
+
+ ///
+ /// 关联区域元素
+ ///
+ public long? QuoteEl { get; set; }
+
+ ///
+ /// 关联期间类别
+ ///
+ public long? QuotePeriodType { get; set; }
+
+ ///
+ /// 关联期间
+ ///
+ public long? QuotePeriod { get; set; }
+
+ ///
+ /// 头像显示
+ ///
+ public bool? ShowStaffPhoto { get; set; }
+
+ ///
+ /// 工号显示
+ ///
+ public bool? ShowStaffNo { get; set; }
+
+ ///
+ /// 姓名显示
+ ///
+ public bool? ShowStaffName { get; set; }
+
+ ///
+ /// 提交时间显示
+ ///
+ public bool? ShowFlowTime { get; set; }
+
+ ///
+ /// 备注
+ ///
+ [Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
+ public string RemarkSz { get; set; }
+
+ ///
+ /// 排序
+ ///
+ public int? SortNo { get; set; }
+
+ ///
+ /// 默认标志
+ ///
+ public int? IsDefault { get; set; }
+
+ ///
+ /// 预留字段1
+ ///
+ [Display(Name = "Reverse1"), Description("预留字段1"), MaxLength(1000, ErrorMessage = "预留字段1 不能超过 1000 个字符")]
+ public string Reverse1 { get; set; }
+
+ ///
+ /// 预留字段2
+ ///
+ [Display(Name = "Reverse2"), Description("预留字段2"), MaxLength(1000, ErrorMessage = "预留字段2 不能超过 1000 个字符")]
+ public string Reverse2 { get; set; }
+
+ ///
+ /// 预留字段3
+ ///
+ [Display(Name = "Reverse3"), Description("预留字段3"), MaxLength(1000, ErrorMessage = "预留字段3 不能超过 1000 个字符")]
+ public string Reverse3 { get; set; }
+
+ ///
+ /// 预留字段4
+ ///
+ [Display(Name = "Reverse4"), Description("预留字段4"), MaxLength(1000, ErrorMessage = "预留字段4 不能超过 1000 个字符")]
+ public string Reverse4 { get; set; }
+
+ ///
+ /// 预留字段5
+ ///
+ [Display(Name = "Reverse5"), Description("预留字段5"), MaxLength(1000, ErrorMessage = "预留字段5 不能超过 1000 个字符")]
+ public string Reverse5 { get; set; }
+
+ ///
+ /// 预留字段6
+ ///
+ [Display(Name = "Reverse6"), Description("预留字段6"), MaxLength(1000, ErrorMessage = "预留字段6 不能超过 1000 个字符")]
+ public string Reverse6 { get; set; }
+
+ ///
+ /// 预留字段7
+ ///
+ [Display(Name = "Reverse7"), Description("预留字段7"), MaxLength(1000, ErrorMessage = "预留字段7 不能超过 1000 个字符")]
+ public string Reverse7 { get; set; }
+
+ ///
+ /// 预留字段8
+ ///
+ [Display(Name = "Reverse8"), Description("预留字段8"), MaxLength(1000, ErrorMessage = "预留字段8 不能超过 1000 个字符")]
+ public string Reverse8 { get; set; }
+
+ ///
+ /// 预留字段9
+ ///
+ [Display(Name = "Reverse9"), Description("预留字段9"), MaxLength(1000, ErrorMessage = "预留字段9 不能超过 1000 个字符")]
+ public string Reverse9 { get; set; }
+
+ ///
+ /// 预留字段10
+ ///
+ [Display(Name = "Reverse10"), Description("预留字段10"), MaxLength(1000, ErrorMessage = "预留字段10 不能超过 1000 个字符")]
+ public string Reverse10 { get; set; }
+
+ ///
+ /// 预留字段11
+ ///
+ public int? ReverseI1 { get; set; }
+
+ ///
+ /// 预留字段12
+ ///
+ public int? ReverseI2 { get; set; }
+
+ ///
+ /// 内置
+ ///
+ public int? BuiltIn { get; set; }
+ }
+}
diff --git a/Tiobon.Core.Model/View/Ghrp/Ghrp_TemplateArea.Dto.View.cs b/Tiobon.Core.Model/View/Ghrp/Ghrp_TemplateArea.Dto.View.cs
new file mode 100644
index 00000000..47c2b573
--- /dev/null
+++ b/Tiobon.Core.Model/View/Ghrp/Ghrp_TemplateArea.Dto.View.cs
@@ -0,0 +1,34 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrp_TemplateArea.cs
+*
+*功 能: N / A
+* 类 名: Ghrp_TemplateArea
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/6/10 16:56:20 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+///
+/// 模板区域(Dto.View1)
+///
+public class Ghrp_TemplateAreaDto : Ghrp_TemplateArea
+{
+///
+/// 创建信息
+///
+public string CreateDataInfo { get; set; }
+
+///
+/// 修改信息
+///
+public string UpdateDataInfo { get; set; }
+}
diff --git a/Tiobon.Core.Services/Ghrp/Ghrp_TemplateAreaServices.cs b/Tiobon.Core.Services/Ghrp/Ghrp_TemplateAreaServices.cs
new file mode 100644
index 00000000..9de907fa
--- /dev/null
+++ b/Tiobon.Core.Services/Ghrp/Ghrp_TemplateAreaServices.cs
@@ -0,0 +1,250 @@
+namespace Tiobon.Core.Services
+{
+ ///
+ /// 模板区域 (服务)
+ ///
+ public class Ghrp_TemplateAreaServices : BaseServices, IGhrp_TemplateAreaServices
+ {
+ private readonly IBaseRepository _dal;
+ public Ghrp_TemplateAreaServices(ICaching caching, IBaseRepository dal)
+ {
+ this._dal = dal;
+ base.BaseDal = dal;
+ base._caching = caching;
+ }
+
+ #region 初始化模板参数
+ ///
+ /// 初始化加载 区域元素
+ ///
+ ///
+ public async Task> InitAreaInfo()
+ {
+ string sql = @"select (select 'Label' type,ColumnName field,StaffInfoColumnName [text]
+ from Ghra_StaffTemplateInfoGroupColumn a inner join Ghra_StaffInfoColumn b on a.StaffInfoColumnID = b.StaffInfoColumnId
+ where StaffTemplateId =1
+ and a.IsEnable=1 and b.IsEnable=1 and b.IsRelease = 1
+ and GroupType='base'
+ and IsDisplay=1
+ order by RowNum,ColNum
+ for json path) StaffInfo,
+ (select 'Label' [type],field field,[label] [text]
+ from Ghrs_PageSettingEdit
+ where IsEnable=1
+ and pageNo = 'F_PerformancePeriod'
+ and defaultHidden != 'true'
+ and elementType != 'FnKey'
+ order by RowNum,ColNum
+ for json path) PerformancePeriodInfo";
+ DataTable dt = await Db.Ado.GetDataTableAsync(sql);
+ string StaffInfo = dt.Rows[0]["StaffInfo"].ToString();
+ if (string.IsNullOrEmpty(StaffInfo)) StaffInfo = "[]";
+ string PerformancePeriodInfo = dt.Rows[0]["PerformancePeriodInfo"].ToString();
+ if (string.IsNullOrEmpty(PerformancePeriodInfo)) PerformancePeriodInfo = "[]";
+
+ string JsonStr = @"[
+ {
+ ""title"": ""摘要区"",
+ ""name"": ""AbstractArea"",
+ ""children"": [
+ {
+ ""groupName"": ""基本信息"",
+ ""groupList"": "+ StaffInfo + @"
+ },
+ {
+ ""groupName"": ""考核期间信息"",
+ ""groupList"": " + PerformancePeriodInfo + @"
+ }
+ ]
+ },
+ {
+ ""title"": ""考核单说明区"",
+ ""name"": ""DescriptionArea"",
+ ""children"": [
+ {
+ ""groupName"": ""控件选择"",
+ ""groupList"": [
+ {
+ ""type"": ""RichText"",
+ ""field"": null,
+ ""text"": ""富文本框""
+ }
+ ]
+ }
+ ]
+ },
+ {
+ ""title"": ""指标区"",
+ ""name"": ""TargetArea"",
+ ""children"": [
+ {
+ ""groupName"": ""控件选择"",
+ ""groupList"": [
+ {
+ ""type"": ""Table"",
+ ""field"": null,
+ ""text"": ""表格""
+ }
+ ]
+ }
+ ]
+ },
+ {
+ ""title"": ""调整显示区"",
+ ""name"": ""AdjustArea"",
+ ""children"": [
+ {
+ ""groupName"": ""控件选择"",
+ ""groupList"": [
+ {
+ ""type"": ""Input"",
+ ""field"": null,
+ ""text"": ""单行文本框""
+ }
+ ]
+ }
+ ]
+ },
+ {
+ ""title"": ""评语区"",
+ ""name"": ""CommentArea"",
+ ""children"": [
+ {
+ ""groupName"": ""控件选择"",
+ ""groupList"": [
+ {
+ ""type"": ""Input"",
+ ""field"": null,
+ ""text"": ""单行文本框""
+ },
+ {
+ ""type"": ""InputTextArea"",
+ ""field"": null,
+ ""text"": ""多行文本框""
+ }
+ ]
+ }
+ ]
+ },
+ {
+ ""title"": ""页面按钮区"",
+ ""name"": ""ButtonArea"",
+ ""children"": [
+ {
+ ""groupName"": ""控件选择"",
+ ""groupList"": [
+ {
+ ""type"": ""Button"",
+ ""field"": ""Save"",
+ ""text"": ""暂存""
+ },
+ {
+ ""type"": ""Button"",
+ ""field"": ""Reject"",
+ ""text"": ""驳回""
+ },
+ {
+ ""type"": ""Button"",
+ ""field"": ""Submit"",
+ ""text"": ""提交""
+ },
+ {
+ ""type"": ""Button"",
+ ""field"": ""Export"",
+ ""text"": ""导出""
+ },
+ {
+ ""type"": ""Button"",
+ ""field"": ""Close"",
+ ""text"": ""关闭""
+ }
+ ]
+ }
+ ]
+ },
+ {
+ ""title"": ""最终显示区"",
+ ""name"": ""FinalArea"",
+ ""children"": []
+ },
+ {
+ ""title"": ""操作历史区"",
+ ""name"": ""HistoryArea"",
+ ""children"": []
+ },
+ {
+ ""title"": ""考勤信息区"",
+ ""name"": ""AttendanceArea"",
+ ""children"": []
+ },
+ {
+ ""title"": ""奖惩信息区"",
+ ""name"": ""RewardsArea"",
+ ""children"": []
+ },
+ {
+ ""title"": ""自定义区域"",
+ ""name"": ""CustomizeArea"",
+ ""children"": [
+ {
+ ""groupName"": ""控件选择"",
+ ""groupList"": [
+ {
+ ""type"": ""Input"",
+ ""field"": null,
+ ""text"": ""单行文本框""
+ },
+ {
+ ""type"": ""InputTextArea"",
+ ""field"": null,
+ ""text"": ""多行文本框""
+ },
+ {
+ ""type"": ""ApiSelect"",
+ ""field"": null,
+ ""text"": ""下拉框""
+ }
+ ]
+ }
+ ]
+ },
+ {
+ ""title"": ""引用区域"",
+ ""name"": ""QuoteArea"",
+ ""children"": []
+ },
+ {
+ ""title"": ""流程区域"",
+ ""name"": ""FlowArea"",
+ ""children"": []
+ },
+ {
+ ""title"": ""附件区域"",
+ ""name"": ""FileUploadArea"",
+ ""children"": []
+ }
+ ]";
+ var Result = JArray.Parse(JsonStr);
+ return ServiceResult.OprateSuccess("查询成功!", Result);
+ }
+
+ ///
+ /// 获取 指标匹配字段
+ ///
+ ///
+ public async Task> ItemMatchField()
+ {
+ string sql = @"select field,label,dbo.FS_GetdataSourceBySet(dataSource,APIDataSourceType,Ghrs_PageSettingEdit.APIDataSourceID) dataSource
+ ,elementType,dataType
+ from Ghrs_PageSettingEdit
+ where IsEnable=1
+ and pageNo = 'F_PerformanceItem'
+ and (field like 'Tag%')";
+ DataTable dt = await Db.Ado.GetDataTableAsync(sql);
+
+ return ServiceResult.OprateSuccess("查询成功!", dt);
+ }
+
+ #endregion
+ }
+}
\ No newline at end of file