diff --git a/Tiobon.Core.Api/Controllers/Ghre/Ghre_TitleSkill_BoltoneController.cs b/Tiobon.Core.Api/Controllers/Ghre/Ghre_TitleSkill_BoltoneController.cs
new file mode 100644
index 00000000..5392a0d0
--- /dev/null
+++ b/Tiobon.Core.Api/Controllers/Ghre/Ghre_TitleSkill_BoltoneController.cs
@@ -0,0 +1,14 @@
+namespace Tiobon.Core.Api.Controllers;
+
+///
+/// Ghre_TitleSkill_Boltone(Controller)
+///
+[Route("api/[controller]")]
+[ApiController, GlobalActionFilter]
+[Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghre)]
+public class Ghre_TitleSkill_BoltoneController : BaseController
+{
+ public Ghre_TitleSkill_BoltoneController(IGhre_TitleSkill_BoltoneServices service) : base(service)
+ {
+ }
+}
\ 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 8bbc3afd..c482a0b4 100644
--- a/Tiobon.Core.Api/Tiobon.Core.Model.xml
+++ b/Tiobon.Core.Api/Tiobon.Core.Model.xml
@@ -9780,6 +9780,111 @@
预留字段12
+
+
+ Ghre_TitleSkill_Boltone (Dto.Base)
+
+
+
+
+ 部门ID
+
+
+
+
+ 课程ID
+
+
+
+
+ 岗位ID
+
+
+
+
+ 必/选修
+
+
+
+
+ 生效日期
+
+
+
+
+ 失效日期
+
+
+
+
+ 备注
+
+
+
+
+ 默认标志
+
+
+
+
+ 预留字段1
+
+
+
+
+ 预留字段2
+
+
+
+
+ 预留字段3
+
+
+
+
+ 预留字段4
+
+
+
+
+ 预留字段5
+
+
+
+
+ 预留字段6
+
+
+
+
+ 预留字段7
+
+
+
+
+ 预留字段8
+
+
+
+
+ 预留字段9
+
+
+
+
+ 预留字段10
+
+
+
+
+ 预留字段11
+
+
+
+
+ 预留字段12
+
+
【牛尾】培训计划 (Dto.Base)
@@ -16662,6 +16767,11 @@
培训讲师异动附件 (Dto.EditInput)
+
+
+ Ghre_TitleSkill_Boltone (Dto.EditInput)
+
+
【牛尾】培训计划 (Dto.EditInput)
@@ -17258,6 +17368,11 @@
培训讲师异动附件 (Dto.InsertInput)
+
+
+ Ghre_TitleSkill_Boltone (Dto.InsertInput)
+
+
【牛尾】培训计划 (Dto.InsertInput)
@@ -27327,6 +27442,111 @@
预留字段12
+
+
+ Ghre_TitleSkill_Boltone (Model)
+
+
+
+
+ 部门ID
+
+
+
+
+ 课程ID
+
+
+
+
+ 岗位ID
+
+
+
+
+ 必/选修
+
+
+
+
+ 生效日期
+
+
+
+
+ 失效日期
+
+
+
+
+ 备注
+
+
+
+
+ 默认标志
+
+
+
+
+ 预留字段1
+
+
+
+
+ 预留字段2
+
+
+
+
+ 预留字段3
+
+
+
+
+ 预留字段4
+
+
+
+
+ 预留字段5
+
+
+
+
+ 预留字段6
+
+
+
+
+ 预留字段7
+
+
+
+
+ 预留字段8
+
+
+
+
+ 预留字段9
+
+
+
+
+ 预留字段10
+
+
+
+
+ 预留字段11
+
+
+
+
+ 预留字段12
+
+
【牛尾】培训计划 (Model)
@@ -36183,6 +36403,21 @@
修改信息
+
+
+ Ghre_TitleSkill_Boltone(Dto.View1)
+
+
+
+
+ 创建信息
+
+
+
+
+ 修改信息
+
+
【牛尾】培训计划(Dto.View1)
diff --git a/Tiobon.Core.Api/Tiobon.Core.xml b/Tiobon.Core.Api/Tiobon.Core.xml
index 57c194c5..b1bd51a8 100644
--- a/Tiobon.Core.Api/Tiobon.Core.xml
+++ b/Tiobon.Core.Api/Tiobon.Core.xml
@@ -1555,6 +1555,11 @@
status
+
+
+ Ghre_TitleSkill_Boltone(Controller)
+
+
【牛尾】培训计划(Controller)
diff --git a/Tiobon.Core.IServices/Ghre/IGhre_TitleSkill_BoltoneServices.cs b/Tiobon.Core.IServices/Ghre/IGhre_TitleSkill_BoltoneServices.cs
new file mode 100644
index 00000000..05055afe
--- /dev/null
+++ b/Tiobon.Core.IServices/Ghre/IGhre_TitleSkill_BoltoneServices.cs
@@ -0,0 +1,8 @@
+namespace Tiobon.Core.IServices;
+
+///
+/// Ghre_TitleSkill_Boltone(自定义服务接口)
+///
+public interface IGhre_TitleSkill_BoltoneServices : IBaseServices
+{
+}
\ No newline at end of file
diff --git a/Tiobon.Core.Model/Base/Ghre/Ghre_TitleSkill_Boltone.Dto.Base.cs b/Tiobon.Core.Model/Base/Ghre/Ghre_TitleSkill_Boltone.Dto.Base.cs
new file mode 100644
index 00000000..7c9bb779
--- /dev/null
+++ b/Tiobon.Core.Model/Base/Ghre/Ghre_TitleSkill_Boltone.Dto.Base.cs
@@ -0,0 +1,139 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_TitleSkill_Boltone.cs
+*
+*功 能: N / A
+* 类 名: Ghre_TitleSkill_Boltone
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/4/17 15:42:52 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghre_TitleSkill_Boltone (Dto.Base)
+///
+public class Ghre_TitleSkill_BoltoneBase
+{
+
+ ///
+ /// 部门ID
+ ///
+ [Display(Name = "DeptId"), Description("部门ID"), MaxLength(32, ErrorMessage = "部门ID 不能超过 32 个字符")]
+ public string DeptId { get; set; }
+
+ ///
+ /// 课程ID
+ ///
+ [Display(Name = "CourseId"), Description("课程ID"), MaxLength(32, ErrorMessage = "课程ID 不能超过 32 个字符")]
+ public string CourseId { get; set; }
+
+ ///
+ /// 岗位ID
+ ///
+ [Display(Name = "TitleId"), Description("岗位ID"), MaxLength(32, ErrorMessage = "岗位ID 不能超过 32 个字符")]
+ public string TitleId { get; set; }
+
+ ///
+ /// 必/选修
+ ///
+ public int? RequiredElective { get; set; }
+
+ ///
+ /// 生效日期
+ ///
+ public DateTime? EffectiveDate { get; set; }
+
+ ///
+ /// 失效日期
+ ///
+ public DateTime? ExpiryDate { get; set; }
+
+ ///
+ /// 备注
+ ///
+ [Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
+ public string RemarkSz { 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; }
+}
diff --git a/Tiobon.Core.Model/Edit/Ghre/Ghre_TitleSkill_Boltone.Dto.EditInput.cs b/Tiobon.Core.Model/Edit/Ghre/Ghre_TitleSkill_Boltone.Dto.EditInput.cs
new file mode 100644
index 00000000..139ff099
--- /dev/null
+++ b/Tiobon.Core.Model/Edit/Ghre/Ghre_TitleSkill_Boltone.Dto.EditInput.cs
@@ -0,0 +1,26 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_TitleSkill_Boltone.cs
+*
+*功 能: N / A
+* 类 名: Ghre_TitleSkill_Boltone
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/4/17 15:42:52 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghre_TitleSkill_Boltone (Dto.EditInput)
+///
+public class EditGhre_TitleSkill_BoltoneInput : Ghre_TitleSkill_BoltoneBase
+{
+}
diff --git a/Tiobon.Core.Model/Insert/Ghre/Ghre_TitleSkill_Boltone.Dto.InsertInput.cs b/Tiobon.Core.Model/Insert/Ghre/Ghre_TitleSkill_Boltone.Dto.InsertInput.cs
new file mode 100644
index 00000000..4212c1f6
--- /dev/null
+++ b/Tiobon.Core.Model/Insert/Ghre/Ghre_TitleSkill_Boltone.Dto.InsertInput.cs
@@ -0,0 +1,26 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_TitleSkill_Boltone.cs
+*
+*功 能: N / A
+* 类 名: Ghre_TitleSkill_Boltone
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/4/17 15:42:52 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghre_TitleSkill_Boltone (Dto.InsertInput)
+///
+public class InsertGhre_TitleSkill_BoltoneInput : Ghre_TitleSkill_BoltoneBase
+{
+}
diff --git a/Tiobon.Core.Model/Models/Ghre/Ghre_TitleSkill_Boltone.cs b/Tiobon.Core.Model/Models/Ghre/Ghre_TitleSkill_Boltone.cs
new file mode 100644
index 00000000..5179c325
--- /dev/null
+++ b/Tiobon.Core.Model/Models/Ghre/Ghre_TitleSkill_Boltone.cs
@@ -0,0 +1,140 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_TitleSkill_Boltone.cs
+*
+*功 能: N / A
+* 类 名: Ghre_TitleSkill_Boltone
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/4/17 15:42:52 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghre_TitleSkill_Boltone (Model)
+///
+[SugarTable("Ghre_TitleSkill_Boltone", "Ghre_TitleSkill_Boltone"), Entity(TableCnName = "Ghre_TitleSkill_Boltone", TableName = "Ghre_TitleSkill_Boltone")]
+public class Ghre_TitleSkill_Boltone : BasePoco
+{
+
+ ///
+ /// 部门ID
+ ///
+ [Display(Name = "DeptId"), Description("部门ID"), MaxLength(32, ErrorMessage = "部门ID 不能超过 32 个字符")]
+ public string DeptId { get; set; }
+
+ ///
+ /// 课程ID
+ ///
+ [Display(Name = "CourseId"), Description("课程ID"), MaxLength(32, ErrorMessage = "课程ID 不能超过 32 个字符")]
+ public string CourseId { get; set; }
+
+ ///
+ /// 岗位ID
+ ///
+ [Display(Name = "TitleId"), Description("岗位ID"), MaxLength(32, ErrorMessage = "岗位ID 不能超过 32 个字符")]
+ public string TitleId { get; set; }
+
+ ///
+ /// 必/选修
+ ///
+ public int? RequiredElective { get; set; }
+
+ ///
+ /// 生效日期
+ ///
+ public DateTime? EffectiveDate { get; set; }
+
+ ///
+ /// 失效日期
+ ///
+ public DateTime? ExpiryDate { get; set; }
+
+ ///
+ /// 备注
+ ///
+ [Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
+ public string RemarkSz { 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; }
+}
diff --git a/Tiobon.Core.Model/View/Ghre/Ghre_TitleSkill_Boltone.Dto.View.cs b/Tiobon.Core.Model/View/Ghre/Ghre_TitleSkill_Boltone.Dto.View.cs
new file mode 100644
index 00000000..ec5dabcf
--- /dev/null
+++ b/Tiobon.Core.Model/View/Ghre/Ghre_TitleSkill_Boltone.Dto.View.cs
@@ -0,0 +1,34 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_TitleSkill_Boltone.cs
+*
+*功 能: N / A
+* 类 名: Ghre_TitleSkill_Boltone
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2025/4/17 15:42:52 SimonHsiao 初版
+*
+* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+///
+/// Ghre_TitleSkill_Boltone(Dto.View1)
+///
+public class Ghre_TitleSkill_BoltoneDto : Ghre_TitleSkill_Boltone
+{
+ ///
+ /// 创建信息
+ ///
+ public string CreateDataInfo { get; set; }
+
+ ///
+ /// 修改信息
+ ///
+ public string UpdateDataInfo { get; set; }
+}
diff --git a/Tiobon.Core.Services/Ghre/Ghre_TitleSkill_BoltoneServices.cs b/Tiobon.Core.Services/Ghre/Ghre_TitleSkill_BoltoneServices.cs
new file mode 100644
index 00000000..bbb8ce94
--- /dev/null
+++ b/Tiobon.Core.Services/Ghre/Ghre_TitleSkill_BoltoneServices.cs
@@ -0,0 +1,15 @@
+namespace Tiobon.Core.Services;
+
+///
+/// Ghre_TitleSkill_Boltone (服务)
+///
+public class Ghre_TitleSkill_BoltoneServices : BaseServices, IGhre_TitleSkill_BoltoneServices
+{
+ private readonly IBaseRepository _dal;
+ public Ghre_TitleSkill_BoltoneServices(ICaching caching, IBaseRepository dal)
+ {
+ this._dal = dal;
+ base.BaseDal = dal;
+ base._caching = caching;
+ }
+}
\ No newline at end of file