diff --git a/Tiobon.Core.Api/Controllers/Ghrz/Ghrz_Shihua_OA_EmploymentController.cs b/Tiobon.Core.Api/Controllers/Ghrz/Ghrz_Shihua_OA_EmploymentController.cs
new file mode 100644
index 00000000..f07cfede
--- /dev/null
+++ b/Tiobon.Core.Api/Controllers/Ghrz/Ghrz_Shihua_OA_EmploymentController.cs
@@ -0,0 +1,14 @@
+namespace Tiobon.Core.Api.Controllers;
+
+///
+/// Ghrz_Shihua_OA_Employment(Controller)
+///
+[Route("api/[controller]")]
+[ApiController, GlobalActionFilter]
+[Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghrz)]
+public class Ghrz_Shihua_OA_EmploymentController : BaseController
+{
+ public Ghrz_Shihua_OA_EmploymentController(IGhrz_Shihua_OA_EmploymentServices service) : base(service)
+ {
+ }
+}
\ No newline at end of file
diff --git a/Tiobon.Core.Extensions/ServiceExtensions/SwaggerSetup.cs b/Tiobon.Core.Extensions/ServiceExtensions/SwaggerSetup.cs
index 3b8880ad..2d0fd3c3 100644
--- a/Tiobon.Core.Extensions/ServiceExtensions/SwaggerSetup.cs
+++ b/Tiobon.Core.Extensions/ServiceExtensions/SwaggerSetup.cs
@@ -308,6 +308,12 @@ namespace Tiobon.Core.Extensions
///
public const string GroupName_Ghrh = " ghrh";
public const string GroupName_Ghrm = " ghrh";
+
+ ///
+ /// 招聘模块
+ ///
+ public const string GroupName_Ghrz = " other";
+
}
}
diff --git a/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs b/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs
index f4a60745..670b7b10 100644
--- a/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs
+++ b/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs
@@ -73,4 +73,6 @@ public interface IGhrh_ResumeServices : IBaseServices> Download(List ids);
Task> QueryAssessForm(long id);
+
+ Task Shihua_OA_Sync();
}
\ No newline at end of file
diff --git a/Tiobon.Core.IServices/Ghrz/IGhrz_Shihua_OA_EmploymentServices.cs b/Tiobon.Core.IServices/Ghrz/IGhrz_Shihua_OA_EmploymentServices.cs
new file mode 100644
index 00000000..42b20072
--- /dev/null
+++ b/Tiobon.Core.IServices/Ghrz/IGhrz_Shihua_OA_EmploymentServices.cs
@@ -0,0 +1,11 @@
+using Tiobon.Core.IServices.BASE;
+using Tiobon.Core.Model.Models;
+
+namespace Tiobon.Core.IServices;
+
+///
+/// Ghrz_Shihua_OA_Employment(自定义服务接口)
+///
+ public interface IGhrz_Shihua_OA_EmploymentServices :IBaseServices
+{
+ }
\ No newline at end of file
diff --git a/Tiobon.Core.Model/Base/Ghrz/Ghrz_Shihua_OA_Employment.Dto.Base.cs b/Tiobon.Core.Model/Base/Ghrz/Ghrz_Shihua_OA_Employment.Dto.Base.cs
new file mode 100644
index 00000000..1a7f401e
--- /dev/null
+++ b/Tiobon.Core.Model/Base/Ghrz/Ghrz_Shihua_OA_Employment.Dto.Base.cs
@@ -0,0 +1,265 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrz_Shihua_OA_Employment.cs
+*
+*功 能: N / A
+* 类 名: Ghrz_Shihua_OA_Employment
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/12/10 13:43:11 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghrz_Shihua_OA_Employment (Dto.Base)
+///
+public class Ghrz_Shihua_OA_EmploymentBase
+{
+
+ ///
+ /// EmploymentID
+ ///
+ public int? EmploymentID { get; set; }
+
+ ///
+ /// UserNo
+ ///
+ [Display(Name = "UserNo"), Description("UserNo"), MaxLength(100, ErrorMessage = "UserNo 不能超过 100 个字符")]
+ public string UserNo { get; set; }
+
+ ///
+ /// WorkNo
+ ///
+ [Display(Name = "WorkNo"), Description("WorkNo"), MaxLength(100, ErrorMessage = "WorkNo 不能超过 100 个字符")]
+ public string WorkNo { get; set; }
+
+ ///
+ /// WorkType
+ ///
+ [Display(Name = "WorkType"), Description("WorkType"), MaxLength(100, ErrorMessage = "WorkType 不能超过 100 个字符")]
+ public string WorkType { get; set; }
+
+ ///
+ /// StaffNo
+ ///
+ [Display(Name = "StaffNo"), Description("StaffNo"), MaxLength(100, ErrorMessage = "StaffNo 不能超过 100 个字符")]
+ public string StaffNo { get; set; }
+
+ ///
+ /// EmployName
+ ///
+ [Display(Name = "EmployName"), Description("EmployName"), MaxLength(100, ErrorMessage = "EmployName 不能超过 100 个字符")]
+ public string EmployName { get; set; }
+
+ ///
+ /// IDCardType
+ ///
+ [Display(Name = "IDCardType"), Description("IDCardType"), MaxLength(100, ErrorMessage = "IDCardType 不能超过 100 个字符")]
+ public string IDCardType { get; set; }
+
+ ///
+ /// IDCardNo
+ ///
+ [Display(Name = "IDCardNo"), Description("IDCardNo"), MaxLength(100, ErrorMessage = "IDCardNo 不能超过 100 个字符")]
+ public string IDCardNo { get; set; }
+
+ ///
+ /// EffectDate
+ ///
+ public DateTime? EffectDate { get; set; }
+
+ ///
+ /// StaffType
+ ///
+ [Display(Name = "StaffType"), Description("StaffType"), MaxLength(100, ErrorMessage = "StaffType 不能超过 100 个字符")]
+ public string StaffType { get; set; }
+
+ ///
+ /// EduDegree
+ ///
+ [Display(Name = "EduDegree"), Description("EduDegree"), MaxLength(100, ErrorMessage = "EduDegree 不能超过 100 个字符")]
+ public string EduDegree { get; set; }
+
+ ///
+ /// PeriodMasterNo
+ ///
+ [Display(Name = "PeriodMasterNo"), Description("PeriodMasterNo"), MaxLength(100, ErrorMessage = "PeriodMasterNo 不能超过 100 个字符")]
+ public string PeriodMasterNo { get; set; }
+
+ ///
+ /// DeptNo
+ ///
+ [Display(Name = "DeptNo"), Description("DeptNo"), MaxLength(100, ErrorMessage = "DeptNo 不能超过 100 个字符")]
+ public string DeptNo { get; set; }
+
+ ///
+ /// InDate
+ ///
+ public DateTime? InDate { get; set; }
+
+ ///
+ /// TitleNo
+ ///
+ [Display(Name = "TitleNo"), Description("TitleNo"), MaxLength(100, ErrorMessage = "TitleNo 不能超过 100 个字符")]
+ public string TitleNo { get; set; }
+
+ ///
+ /// CostCenterNo
+ ///
+ [Display(Name = "CostCenterNo"), Description("CostCenterNo"), MaxLength(100, ErrorMessage = "CostCenterNo 不能超过 100 个字符")]
+ public string CostCenterNo { get; set; }
+
+ ///
+ /// GradeNo
+ ///
+ [Display(Name = "GradeNo"), Description("GradeNo"), MaxLength(100, ErrorMessage = "GradeNo 不能超过 100 个字符")]
+ public string GradeNo { get; set; }
+
+ ///
+ /// RecruitFrom
+ ///
+ [Display(Name = "RecruitFrom"), Description("RecruitFrom"), MaxLength(100, ErrorMessage = "RecruitFrom 不能超过 100 个字符")]
+ public string RecruitFrom { get; set; }
+
+ ///
+ /// ZoneNo
+ ///
+ [Display(Name = "ZoneNo"), Description("ZoneNo"), MaxLength(100, ErrorMessage = "ZoneNo 不能超过 100 个字符")]
+ public string ZoneNo { get; set; }
+
+ ///
+ /// S02
+ ///
+ [Display(Name = "S02"), Description("S02"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S02 { get; set; }
+
+ ///
+ /// S03
+ ///
+ [Display(Name = "S03"), Description("S03"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S03 { get; set; }
+
+ ///
+ /// S04
+ ///
+ [Display(Name = "S04"), Description("S04"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S04 { get; set; }
+
+ ///
+ /// S05
+ ///
+ [Display(Name = "S05"), Description("S05"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S05 { get; set; }
+
+ ///
+ /// S06
+ ///
+ [Display(Name = "S06"), Description("S06"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S06 { get; set; }
+
+ ///
+ /// S21
+ ///
+ [Display(Name = "S21"), Description("S21"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S21 { get; set; }
+
+ ///
+ /// S22
+ ///
+ [Display(Name = "S22"), Description("S22"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S22 { get; set; }
+
+ ///
+ /// S23
+ ///
+ [Display(Name = "S23"), Description("S23"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S23 { get; set; }
+
+ ///
+ /// S66
+ ///
+ [Display(Name = "S66"), Description("S66"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S66 { get; set; }
+
+ ///
+ /// S68
+ ///
+ [Display(Name = "S68"), Description("S68"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S68 { get; set; }
+
+ ///
+ /// S70
+ ///
+ [Display(Name = "S70"), Description("S70"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S70 { get; set; }
+
+ ///
+ /// TotalAmount
+ ///
+ [Display(Name = "TotalAmount"), Description("TotalAmount"), Column(TypeName = "decimal(18,2)")]
+ public decimal? TotalAmount { get; set; }
+
+ ///
+ /// RemarkSz
+ ///
+ [Display(Name = "RemarkSz"), Description("RemarkSz"), MaxLength(2000, ErrorMessage = "RemarkSz 不能超过 2000 个字符")]
+ public string RemarkSz { get; set; }
+
+ ///
+ /// IsRead
+ ///
+ public int? IsRead { get; set; }
+
+ ///
+ /// ResultCode
+ ///
+ public int? ResultCode { get; set; }
+
+ ///
+ /// ResultMsg
+ ///
+ [Display(Name = "ResultMsg"), Description("ResultMsg"), MaxLength(200, ErrorMessage = "ResultMsg 不能超过 200 个字符")]
+ public string ResultMsg { get; set; }
+
+ ///
+ /// ResultID
+ ///
+ public int? ResultID { get; set; }
+
+ ///
+ /// Reverse1
+ ///
+ [Display(Name = "Reverse1"), Description("Reverse1"), MaxLength(1000, ErrorMessage = "Reverse1 不能超过 1000 个字符")]
+ public string Reverse1 { get; set; }
+
+ ///
+ /// Reverse2
+ ///
+ [Display(Name = "Reverse2"), Description("Reverse2"), MaxLength(1000, ErrorMessage = "Reverse2 不能超过 1000 个字符")]
+ public string Reverse2 { get; set; }
+
+ ///
+ /// Reverse3
+ ///
+ [Display(Name = "Reverse3"), Description("Reverse3"), MaxLength(1000, ErrorMessage = "Reverse3 不能超过 1000 个字符")]
+ public string Reverse3 { get; set; }
+
+ ///
+ /// Reverse4
+ ///
+ [Display(Name = "Reverse4"), Description("Reverse4"), MaxLength(1000, ErrorMessage = "Reverse4 不能超过 1000 个字符")]
+ public string Reverse4 { get; set; }
+
+ ///
+ /// Reverse5
+ ///
+ [Display(Name = "Reverse5"), Description("Reverse5"), MaxLength(1000, ErrorMessage = "Reverse5 不能超过 1000 个字符")]
+ public string Reverse5 { get; set; }
+}
diff --git a/Tiobon.Core.Model/Edit/Ghrz/Ghrz_Shihua_OA_Employment.Dto.EditInput.cs b/Tiobon.Core.Model/Edit/Ghrz/Ghrz_Shihua_OA_Employment.Dto.EditInput.cs
new file mode 100644
index 00000000..f3e887f1
--- /dev/null
+++ b/Tiobon.Core.Model/Edit/Ghrz/Ghrz_Shihua_OA_Employment.Dto.EditInput.cs
@@ -0,0 +1,26 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrz_Shihua_OA_Employment.cs
+*
+*功 能: N / A
+* 类 名: Ghrz_Shihua_OA_Employment
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/12/10 13:43:11 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghrz_Shihua_OA_Employment (Dto.EditInput)
+///
+public class EditGhrz_Shihua_OA_EmploymentInput : Ghrz_Shihua_OA_EmploymentBase
+{
+}
diff --git a/Tiobon.Core.Model/Insert/Ghrz/Ghrz_Shihua_OA_Employment.Dto.InsertInput.cs b/Tiobon.Core.Model/Insert/Ghrz/Ghrz_Shihua_OA_Employment.Dto.InsertInput.cs
new file mode 100644
index 00000000..02ead85d
--- /dev/null
+++ b/Tiobon.Core.Model/Insert/Ghrz/Ghrz_Shihua_OA_Employment.Dto.InsertInput.cs
@@ -0,0 +1,26 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrz_Shihua_OA_Employment.cs
+*
+*功 能: N / A
+* 类 名: Ghrz_Shihua_OA_Employment
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/12/10 13:43:11 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghrz_Shihua_OA_Employment (Dto.InsertInput)
+///
+public class InsertGhrz_Shihua_OA_EmploymentInput : Ghrz_Shihua_OA_EmploymentBase
+{
+}
diff --git a/Tiobon.Core.Model/Models/Ghrz/Ghrz_Shihua_OA_Employment.cs b/Tiobon.Core.Model/Models/Ghrz/Ghrz_Shihua_OA_Employment.cs
new file mode 100644
index 00000000..c327898f
--- /dev/null
+++ b/Tiobon.Core.Model/Models/Ghrz/Ghrz_Shihua_OA_Employment.cs
@@ -0,0 +1,266 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrz_Shihua_OA_Employment.cs
+*
+*功 能: N / A
+* 类 名: Ghrz_Shihua_OA_Employment
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/12/10 13:43:11 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+namespace Tiobon.Core.Model.Models;
+
+
+///
+/// Ghrz_Shihua_OA_Employment (Model)
+///
+[SugarTable("Ghrz_Shihua_OA_Employment", "Ghrz_Shihua_OA_Employment"), Entity(TableCnName = "Ghrz_Shihua_OA_Employment", TableName = "Ghrz_Shihua_OA_Employment")]
+public class Ghrz_Shihua_OA_Employment : BasePoco
+{
+
+ ///
+ /// EmploymentID
+ ///
+ public int? EmploymentID { get; set; }
+
+ ///
+ /// UserNo
+ ///
+ [Display(Name = "UserNo"), Description("UserNo"), MaxLength(100, ErrorMessage = "UserNo 不能超过 100 个字符")]
+ public string UserNo { get; set; }
+
+ ///
+ /// WorkNo
+ ///
+ [Display(Name = "WorkNo"), Description("WorkNo"), MaxLength(100, ErrorMessage = "WorkNo 不能超过 100 个字符")]
+ public string WorkNo { get; set; }
+
+ ///
+ /// WorkType
+ ///
+ [Display(Name = "WorkType"), Description("WorkType"), MaxLength(100, ErrorMessage = "WorkType 不能超过 100 个字符")]
+ public string WorkType { get; set; }
+
+ ///
+ /// StaffNo
+ ///
+ [Display(Name = "StaffNo"), Description("StaffNo"), MaxLength(100, ErrorMessage = "StaffNo 不能超过 100 个字符")]
+ public string StaffNo { get; set; }
+
+ ///
+ /// EmployName
+ ///
+ [Display(Name = "EmployName"), Description("EmployName"), MaxLength(100, ErrorMessage = "EmployName 不能超过 100 个字符")]
+ public string EmployName { get; set; }
+
+ ///
+ /// IDCardType
+ ///
+ [Display(Name = "IDCardType"), Description("IDCardType"), MaxLength(100, ErrorMessage = "IDCardType 不能超过 100 个字符")]
+ public string IDCardType { get; set; }
+
+ ///
+ /// IDCardNo
+ ///
+ [Display(Name = "IDCardNo"), Description("IDCardNo"), MaxLength(100, ErrorMessage = "IDCardNo 不能超过 100 个字符")]
+ public string IDCardNo { get; set; }
+
+ ///
+ /// EffectDate
+ ///
+ public DateTime? EffectDate { get; set; }
+
+ ///
+ /// StaffType
+ ///
+ [Display(Name = "StaffType"), Description("StaffType"), MaxLength(100, ErrorMessage = "StaffType 不能超过 100 个字符")]
+ public string StaffType { get; set; }
+
+ ///
+ /// EduDegree
+ ///
+ [Display(Name = "EduDegree"), Description("EduDegree"), MaxLength(100, ErrorMessage = "EduDegree 不能超过 100 个字符")]
+ public string EduDegree { get; set; }
+
+ ///
+ /// PeriodMasterNo
+ ///
+ [Display(Name = "PeriodMasterNo"), Description("PeriodMasterNo"), MaxLength(100, ErrorMessage = "PeriodMasterNo 不能超过 100 个字符")]
+ public string PeriodMasterNo { get; set; }
+
+ ///
+ /// DeptNo
+ ///
+ [Display(Name = "DeptNo"), Description("DeptNo"), MaxLength(100, ErrorMessage = "DeptNo 不能超过 100 个字符")]
+ public string DeptNo { get; set; }
+
+ ///
+ /// InDate
+ ///
+ public DateTime? InDate { get; set; }
+
+ ///
+ /// TitleNo
+ ///
+ [Display(Name = "TitleNo"), Description("TitleNo"), MaxLength(100, ErrorMessage = "TitleNo 不能超过 100 个字符")]
+ public string TitleNo { get; set; }
+
+ ///
+ /// CostCenterNo
+ ///
+ [Display(Name = "CostCenterNo"), Description("CostCenterNo"), MaxLength(100, ErrorMessage = "CostCenterNo 不能超过 100 个字符")]
+ public string CostCenterNo { get; set; }
+
+ ///
+ /// GradeNo
+ ///
+ [Display(Name = "GradeNo"), Description("GradeNo"), MaxLength(100, ErrorMessage = "GradeNo 不能超过 100 个字符")]
+ public string GradeNo { get; set; }
+
+ ///
+ /// RecruitFrom
+ ///
+ [Display(Name = "RecruitFrom"), Description("RecruitFrom"), MaxLength(100, ErrorMessage = "RecruitFrom 不能超过 100 个字符")]
+ public string RecruitFrom { get; set; }
+
+ ///
+ /// ZoneNo
+ ///
+ [Display(Name = "ZoneNo"), Description("ZoneNo"), MaxLength(100, ErrorMessage = "ZoneNo 不能超过 100 个字符")]
+ public string ZoneNo { get; set; }
+
+ ///
+ /// S02
+ ///
+ [Display(Name = "S02"), Description("S02"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S02 { get; set; }
+
+ ///
+ /// S03
+ ///
+ [Display(Name = "S03"), Description("S03"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S03 { get; set; }
+
+ ///
+ /// S04
+ ///
+ [Display(Name = "S04"), Description("S04"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S04 { get; set; }
+
+ ///
+ /// S05
+ ///
+ [Display(Name = "S05"), Description("S05"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S05 { get; set; }
+
+ ///
+ /// S06
+ ///
+ [Display(Name = "S06"), Description("S06"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S06 { get; set; }
+
+ ///
+ /// S21
+ ///
+ [Display(Name = "S21"), Description("S21"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S21 { get; set; }
+
+ ///
+ /// S22
+ ///
+ [Display(Name = "S22"), Description("S22"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S22 { get; set; }
+
+ ///
+ /// S23
+ ///
+ [Display(Name = "S23"), Description("S23"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S23 { get; set; }
+
+ ///
+ /// S66
+ ///
+ [Display(Name = "S66"), Description("S66"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S66 { get; set; }
+
+ ///
+ /// S68
+ ///
+ [Display(Name = "S68"), Description("S68"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S68 { get; set; }
+
+ ///
+ /// S70
+ ///
+ [Display(Name = "S70"), Description("S70"), Column(TypeName = "decimal(18,2)")]
+ public decimal? S70 { get; set; }
+
+ ///
+ /// TotalAmount
+ ///
+ [Display(Name = "TotalAmount"), Description("TotalAmount"), Column(TypeName = "decimal(18,2)")]
+ public decimal? TotalAmount { get; set; }
+
+ ///
+ /// RemarkSz
+ ///
+ [Display(Name = "RemarkSz"), Description("RemarkSz"), MaxLength(2000, ErrorMessage = "RemarkSz 不能超过 2000 个字符")]
+ public string RemarkSz { get; set; }
+
+ ///
+ /// IsRead
+ ///
+ public int? IsRead { get; set; }
+
+ ///
+ /// ResultCode
+ ///
+ public int? ResultCode { get; set; }
+
+ ///
+ /// ResultMsg
+ ///
+ [Display(Name = "ResultMsg"), Description("ResultMsg"), MaxLength(200, ErrorMessage = "ResultMsg 不能超过 200 个字符")]
+ public string ResultMsg { get; set; }
+
+ ///
+ /// ResultID
+ ///
+ public int? ResultID { get; set; }
+
+ ///
+ /// Reverse1
+ ///
+ [Display(Name = "Reverse1"), Description("Reverse1"), MaxLength(1000, ErrorMessage = "Reverse1 不能超过 1000 个字符")]
+ public string Reverse1 { get; set; }
+
+ ///
+ /// Reverse2
+ ///
+ [Display(Name = "Reverse2"), Description("Reverse2"), MaxLength(1000, ErrorMessage = "Reverse2 不能超过 1000 个字符")]
+ public string Reverse2 { get; set; }
+
+ ///
+ /// Reverse3
+ ///
+ [Display(Name = "Reverse3"), Description("Reverse3"), MaxLength(1000, ErrorMessage = "Reverse3 不能超过 1000 个字符")]
+ public string Reverse3 { get; set; }
+
+ ///
+ /// Reverse4
+ ///
+ [Display(Name = "Reverse4"), Description("Reverse4"), MaxLength(1000, ErrorMessage = "Reverse4 不能超过 1000 个字符")]
+ public string Reverse4 { get; set; }
+
+ ///
+ /// Reverse5
+ ///
+ [Display(Name = "Reverse5"), Description("Reverse5"), MaxLength(1000, ErrorMessage = "Reverse5 不能超过 1000 个字符")]
+ public string Reverse5 { get; set; }
+}
diff --git a/Tiobon.Core.Model/View/Ghrz/Ghrz_Shihua_OA_Employment.Dto.View.cs b/Tiobon.Core.Model/View/Ghrz/Ghrz_Shihua_OA_Employment.Dto.View.cs
new file mode 100644
index 00000000..32c32add
--- /dev/null
+++ b/Tiobon.Core.Model/View/Ghrz/Ghrz_Shihua_OA_Employment.Dto.View.cs
@@ -0,0 +1,34 @@
+/* 代码由框架生成,任何更改都可能导致被代码生成器覆盖,可自行修改。
+* Ghrz_Shihua_OA_Employment.cs
+*
+*功 能: N / A
+* 类 名: Ghrz_Shihua_OA_Employment
+*
+* Ver 变更日期 负责人 变更内容
+* ───────────────────────────────────
+*V0.01 2024/12/10 13:43:11 SimonHsiao 初版
+*
+* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
+*┌──────────────────────────────────┐
+*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
+*│ 作者:SimonHsiao │
+*└──────────────────────────────────┘
+*/
+
+namespace Tiobon.Core.Model.Models;
+
+///
+/// Ghrz_Shihua_OA_Employment(Dto.View1)
+///
+public class Ghrz_Shihua_OA_EmploymentDto : Ghrz_Shihua_OA_Employment
+{
+ ///
+ /// 创建信息
+ ///
+ public string CreateDataInfo { get; set; }
+
+ ///
+ /// 修改信息
+ ///
+ public string UpdateDataInfo { get; set; }
+}
diff --git a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs
index 2de8fe57..c2ccd1b1 100644
--- a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs
+++ b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs
@@ -2,7 +2,6 @@
using DinkToPdf.Contracts;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
-using System.IO;
using System.IO.Compression;
using static Tiobon.Core.Model.Consts;
@@ -3279,6 +3278,24 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
#endregion
+ #region 实话OA同步
+ public async Task Shihua_OA_Sync()
+ {
+ var list = await Db.Queryable().Where(x => x.CreateTime.Value.Date == DateTime.Now).ToListAsync();
+
+ for (int i = 0; i < list.Count; i++)
+ {
+ var data = list[i];
+
+
+ var insert = new InsertGhrh_OfferApplyOrderInput()
+ {
+ OrderNo = data.WorkNo
+ };
+ }
+ }
+ #endregion
+
#region 通用方法
///
/// 记录日志
@@ -3326,7 +3343,7 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
{
var entity = await base.QueryById(id);
- if (entity.IsSyncToStaff == true)
+ if (entity.IsSyncToStaff == true || await Db.Queryable().Where(x => x.IdCardNo == entity.IdCardNo).AnyAsync())
{
return false;
}
diff --git a/Tiobon.Core.Services/Ghrz/Ghrz_Shihua_OA_EmploymentServices.cs b/Tiobon.Core.Services/Ghrz/Ghrz_Shihua_OA_EmploymentServices.cs
new file mode 100644
index 00000000..3a859a69
--- /dev/null
+++ b/Tiobon.Core.Services/Ghrz/Ghrz_Shihua_OA_EmploymentServices.cs
@@ -0,0 +1,15 @@
+namespace Tiobon.Core.Services;
+
+///
+/// Ghrz_Shihua_OA_Employment (服务)
+///
+public class Ghrz_Shihua_OA_EmploymentServices : BaseServices, IGhrz_Shihua_OA_EmploymentServices
+{
+ private readonly IBaseRepository _dal;
+ public Ghrz_Shihua_OA_EmploymentServices(ICaching caching, IBaseRepository dal)
+ {
+ this._dal = dal;
+ base.BaseDal = dal;
+ base._caching = caching;
+ }
+}
\ No newline at end of file
diff --git a/Tiobon.Core.Tasks/QuartzNet/Jobs/Job_Shihua_OA_Sync_Quartz.cs b/Tiobon.Core.Tasks/QuartzNet/Jobs/Job_Shihua_OA_Sync_Quartz.cs
new file mode 100644
index 00000000..fdf1e621
--- /dev/null
+++ b/Tiobon.Core.Tasks/QuartzNet/Jobs/Job_Shihua_OA_Sync_Quartz.cs
@@ -0,0 +1,27 @@
+using Tiobon.Core.IServices;
+using Quartz;
+
+///
+/// 这里要注意下,命名空间和程序集是一样的,不然反射不到
+///
+namespace Tiobon.Core.Tasks;
+
+public class Job_Shihua_OA_Sync_Quartz : JobBase, IJob
+{
+ private readonly IGhre_StudyRecordServices _ghre_StudyRecordServices;
+
+ public Job_Shihua_OA_Sync_Quartz(IGhre_StudyRecordServices ghre_StudyRecordServices, ITasksQzServices tasksQzServices, ITasksLogServices tasksLogServices)
+ : base(tasksQzServices, tasksLogServices)
+ {
+ _ghre_StudyRecordServices = ghre_StudyRecordServices;
+ }
+ public async Task Execute(IJobExecutionContext context)
+ {
+ var executeLog = await ExecuteJob(context, async () => await Run(context));
+ }
+ public async Task Run(IJobExecutionContext context)
+ {
+ Console.WriteLine($"Job_Shihua_OA_Sync_Quartz 执行 {DateTime.Now.ToShortTimeString()}");
+ await _ghre_StudyRecordServices.SyncToESS();
+ }
+}