diff --git a/Tiobon.Core.Api/Controllers/Ghre/Ghre_CreditPointController.cs b/Tiobon.Core.Api/Controllers/Ghre/Ghre_CreditPointController.cs
new file mode 100644
index 00000000..f49d7f28
--- /dev/null
+++ b/Tiobon.Core.Api/Controllers/Ghre/Ghre_CreditPointController.cs
@@ -0,0 +1,14 @@
+namespace Tiobon.Core.Api.Controllers;
+
+///
+/// 学分记录(Controller)
+///
+[Route("api/[controller]")]
+[ApiController, GlobalActionFilter]
+[Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghre)]
+public class Ghre_CreditPointController : BaseController
+{
+ public Ghre_CreditPointController(IGhre_CreditPointServices service) : base(service)
+ {
+ }
+}
\ No newline at end of file
diff --git a/Tiobon.Core.IServices/Ghre/IGhre_CreditPointServices.cs b/Tiobon.Core.IServices/Ghre/IGhre_CreditPointServices.cs
new file mode 100644
index 00000000..8711e108
--- /dev/null
+++ b/Tiobon.Core.IServices/Ghre/IGhre_CreditPointServices.cs
@@ -0,0 +1,12 @@
+using Tiobon.Core.IServices.BASE;
+using Tiobon.Core.Model.Models;
+
+namespace Tiobon.Core.IServices
+{
+ ///
+ /// 学分记录(自定义服务接口)
+ ///
+ public interface IGhre_CreditPointServices :IBaseServices
+ {
+ }
+}
\ No newline at end of file
diff --git a/Tiobon.Core.Model/Base/Ghre/Ghre_CreditPoint.Dto.Base.cs b/Tiobon.Core.Model/Base/Ghre/Ghre_CreditPoint.Dto.Base.cs
new file mode 100644
index 00000000..04cca03c
--- /dev/null
+++ b/Tiobon.Core.Model/Base/Ghre/Ghre_CreditPoint.Dto.Base.cs
@@ -0,0 +1,135 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_CreditPoint.cs
+*
+*功 能: N / A
+* 类 名: Ghre_CreditPoint
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/7/15 18:11:50 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+using System.ComponentModel;
+using System.ComponentModel.DataAnnotations;
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 学分记录 (Dto.Base)
+ ///
+ public class Ghre_CreditPointBase
+ {
+
+ ///
+ /// 员工ID
+ ///
+ public int? StaffId { get; set; }
+
+ ///
+ /// 课程ID
+ ///
+ public long? CourseId { get; set; }
+
+ ///
+ /// 课程快照ID
+ ///
+ public long? CourseSnapId { get; set; }
+
+ ///
+ /// 获得日期
+ ///
+ public DateTime? Date { get; set; }
+
+ ///
+ /// 获得学分
+ ///
+ public int? CreditPoints { 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_CreditPoint.Dto.EditInput.cs b/Tiobon.Core.Model/Edit/Ghre/Ghre_CreditPoint.Dto.EditInput.cs
new file mode 100644
index 00000000..5aacefb3
--- /dev/null
+++ b/Tiobon.Core.Model/Edit/Ghre/Ghre_CreditPoint.Dto.EditInput.cs
@@ -0,0 +1,27 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_CreditPoint.cs
+*
+*功 能: N / A
+* 类 名: Ghre_CreditPoint
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/7/15 18:11:50 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 学分记录 (Dto.EditInput)
+ ///
+ public class EditGhre_CreditPointInput : Ghre_CreditPointBase
+ {
+ }
+}
diff --git a/Tiobon.Core.Model/Insert/Ghre/Ghre_CreditPoint.Dto.InsertInput.cs b/Tiobon.Core.Model/Insert/Ghre/Ghre_CreditPoint.Dto.InsertInput.cs
new file mode 100644
index 00000000..36ffca0d
--- /dev/null
+++ b/Tiobon.Core.Model/Insert/Ghre/Ghre_CreditPoint.Dto.InsertInput.cs
@@ -0,0 +1,27 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_CreditPoint.cs
+*
+*功 能: N / A
+* 类 名: Ghre_CreditPoint
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/7/15 18:11:50 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 学分记录 (Dto.InsertInput)
+ ///
+ public class InsertGhre_CreditPointInput : Ghre_CreditPointBase
+ {
+ }
+}
diff --git a/Tiobon.Core.Model/Models/Ghre/Ghre_CreditPoint.cs b/Tiobon.Core.Model/Models/Ghre/Ghre_CreditPoint.cs
new file mode 100644
index 00000000..07a6f150
--- /dev/null
+++ b/Tiobon.Core.Model/Models/Ghre/Ghre_CreditPoint.cs
@@ -0,0 +1,137 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_CreditPoint.cs
+*
+*功 能: N / A
+* 类 名: Ghre_CreditPoint
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/7/15 18:11:50 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+using System.ComponentModel;
+using System.ComponentModel.DataAnnotations;
+using SqlSugar;
+
+namespace Tiobon.Core.Model.Models
+{
+
+ ///
+ /// 学分记录 (Model)
+ ///
+ [SugarTable("Ghre_CreditPoint", "Ghre_CreditPoint"), Entity(TableCnName = "学分记录", TableName = "Ghre_CreditPoint")]
+ public class Ghre_CreditPoint : BasePoco
+ {
+
+ ///
+ /// 员工ID
+ ///
+ public int? StaffId { get; set; }
+
+ ///
+ /// 课程ID
+ ///
+ public long? CourseId { get; set; }
+
+ ///
+ /// 课程快照ID
+ ///
+ public long? CourseSnapId { get; set; }
+
+ ///
+ /// 获得日期
+ ///
+ public DateTime? Date { get; set; }
+
+ ///
+ /// 获得学分
+ ///
+ public int? CreditPoints { 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_CreditPoint.Dto.View.cs b/Tiobon.Core.Model/View/Ghre/Ghre_CreditPoint.Dto.View.cs
new file mode 100644
index 00000000..efa71d83
--- /dev/null
+++ b/Tiobon.Core.Model/View/Ghre/Ghre_CreditPoint.Dto.View.cs
@@ -0,0 +1,34 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghre_CreditPoint.cs
+*
+*功 能: N / A
+* 类 名: Ghre_CreditPoint
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/7/15 18:11:50 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+///
+/// 学分记录(Dto.View)
+///
+public class Ghre_CreditPointDto : Ghre_CreditPoint
+{
+///
+/// 创建信息
+///
+public string CreateDataInfo { get; set; }
+
+///
+/// 修改信息
+///
+public string UpdateDataInfo { get; set; }
+}
diff --git a/Tiobon.Core.Services/Ghre/Ghre_CreditPointServices.cs b/Tiobon.Core.Services/Ghre/Ghre_CreditPointServices.cs
new file mode 100644
index 00000000..f420471b
--- /dev/null
+++ b/Tiobon.Core.Services/Ghre/Ghre_CreditPointServices.cs
@@ -0,0 +1,23 @@
+
+using Tiobon.Core.IServices;
+using Tiobon.Core.Model.Models;
+using Tiobon.Core.Services.BASE;
+using Tiobon.Core.IRepository.Base;
+using Tiobon.Core.Common.Caches;
+
+namespace Tiobon.Core.Services
+{
+ ///
+ /// 学分记录 (服务)
+ ///
+ public class Ghre_CreditPointServices : BaseServices, IGhre_CreditPointServices
+ {
+ private readonly IBaseRepository _dal;
+ public Ghre_CreditPointServices(ICaching caching, IBaseRepository dal)
+ {
+ this._dal = dal;
+ base.BaseDal = dal;
+ base._caching = caching;
+ }
+ }
+}
\ No newline at end of file