简历库导入

master
xiaochanghai 6 months ago
parent 527699c3ef
commit e260e261eb
  1. 14
      Tiobon.Core.Api/Controllers/Ghrs/Ghrs_ListCommonSqlController.cs
  2. 295
      Tiobon.Core.Api/Tiobon.Core.Model.xml
  3. 5
      Tiobon.Core.Api/Tiobon.Core.xml
  4. 11
      Tiobon.Core.IServices/Ghrs/IGhrs_ListCommonSqlServices.cs
  5. 172
      Tiobon.Core.Model/Base/Ghrs/Ghrs_ListCommonSql.Dto.Base.cs
  6. 26
      Tiobon.Core.Model/Edit/Ghrs/Ghrs_ListCommonSql.Dto.EditInput.cs
  7. 26
      Tiobon.Core.Model/Insert/Ghrs/Ghrs_ListCommonSql.Dto.InsertInput.cs
  8. 174
      Tiobon.Core.Model/Models/Ghrs/Ghrs_ListCommonSql.cs
  9. 1
      Tiobon.Core.Model/Models/Ghrz/Ghrz_Shihua_OA_Employment.cs
  10. 34
      Tiobon.Core.Model/View/Ghrs/Ghrs_ListCommonSql.Dto.View.cs
  11. 7
      Tiobon.Core.Model/ViewModels/Extend/ResumeTemplateGroupColumn.cs
  12. 229
      Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs
  13. 15
      Tiobon.Core.Services/Ghrs/Ghrs_ListCommonSqlServices.cs

@ -0,0 +1,14 @@
namespace Tiobon.Core.Api.Controllers;
/// <summary>
/// Ghrs_ListCommonSql(Controller)
/// </summary>
[Route("api/[controller]")]
[ApiController, GlobalActionFilter]
[Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghrs)]
public class Ghrs_ListCommonSqlController : BaseController<IGhrs_ListCommonSqlServices, Ghrs_ListCommonSql, Ghrs_ListCommonSqlDto, InsertGhrs_ListCommonSqlInput, EditGhrs_ListCommonSqlInput>
{
public Ghrs_ListCommonSqlController(IGhrs_ListCommonSqlServices service) : base(service)
{
}
}

@ -11368,6 +11368,136 @@
TableID TableID
</summary> </summary>
</member> </member>
<member name="T:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase">
<summary>
Ghrs_ListCommonSql (Dto.Base)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.ListCommonSqlId">
<summary>
ListCommonSqlId
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.ListCommonSqlNo">
<summary>
ListCommonSqlNo
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.ListCommonSqlName">
<summary>
ListCommonSqlName
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.ListCommonSqlType">
<summary>
ListCommonSqlType
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.ListCommonSqlType2">
<summary>
ListCommonSqlType2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.ListComment">
<summary>
ListComment
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.SelectSql">
<summary>
SelectSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.JsonTitle">
<summary>
JsonTitle
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.WhereSql">
<summary>
WhereSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.OrderBySql">
<summary>
OrderBySql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.SqlTopCountSql">
<summary>
SqlTopCountSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.SqlGetIDSql">
<summary>
SqlGetIDSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.RemarkSz">
<summary>
RemarkSz
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.SortNo">
<summary>
SortNo
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.IsDefault">
<summary>
IsDefault
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse1">
<summary>
Reverse1
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse2">
<summary>
Reverse2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse3">
<summary>
Reverse3
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse4">
<summary>
Reverse4
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse5">
<summary>
Reverse5
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse6">
<summary>
Reverse6
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse7">
<summary>
Reverse7
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse8">
<summary>
Reverse8
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.Reverse9">
<summary>
Reverse9
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlBase.SqlIDToName">
<summary>
SqlIDToName
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrs_MailOutboxBase"> <member name="T:Tiobon.Core.Model.Models.Ghrs_MailOutboxBase">
<summary> <summary>
Ghrs_MailOutbox (Dto.Base) Ghrs_MailOutbox (Dto.Base)
@ -12272,6 +12402,11 @@
学历编号 学历编号
</summary> </summary>
</member> </member>
<member name="P:Tiobon.Core.Model.Models.Ghrz_Shihua_OA_EmploymentBase.LegalCompanyNo">
<summary>
LegalCompanyNo
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrz_Shihua_OA_EmploymentBase.PeriodMasterNo"> <member name="P:Tiobon.Core.Model.Models.Ghrz_Shihua_OA_EmploymentBase.PeriodMasterNo">
<summary> <summary>
计薪类别编号 计薪类别编号
@ -12857,6 +12992,11 @@
Ghrs_LangKey (Dto.EditInput) Ghrs_LangKey (Dto.EditInput)
</summary> </summary>
</member> </member>
<member name="T:Tiobon.Core.Model.Models.EditGhrs_ListCommonSqlInput">
<summary>
Ghrs_ListCommonSql (Dto.EditInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.EditGhrs_MailOutboxInput"> <member name="T:Tiobon.Core.Model.Models.EditGhrs_MailOutboxInput">
<summary> <summary>
Ghrs_MailOutbox (Dto.EditInput) Ghrs_MailOutbox (Dto.EditInput)
@ -13327,6 +13467,11 @@
Ghrs_LangKey (Dto.InsertInput) Ghrs_LangKey (Dto.InsertInput)
</summary> </summary>
</member> </member>
<member name="T:Tiobon.Core.Model.Models.InsertGhrs_ListCommonSqlInput">
<summary>
Ghrs_ListCommonSql (Dto.InsertInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.InsertGhrs_MailOutboxInput"> <member name="T:Tiobon.Core.Model.Models.InsertGhrs_MailOutboxInput">
<summary> <summary>
Ghrs_MailOutbox (Dto.InsertInput) Ghrs_MailOutbox (Dto.InsertInput)
@ -25034,6 +25179,136 @@
TableID TableID
</summary> </summary>
</member> </member>
<member name="T:Tiobon.Core.Model.Models.Ghrs_ListCommonSql">
<summary>
Ghrs_ListCommonSql (Model)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.ListCommonSqlId">
<summary>
ListCommonSqlId
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.ListCommonSqlNo">
<summary>
ListCommonSqlNo
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.ListCommonSqlName">
<summary>
ListCommonSqlName
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.ListCommonSqlType">
<summary>
ListCommonSqlType
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.ListCommonSqlType2">
<summary>
ListCommonSqlType2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.ListComment">
<summary>
ListComment
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.SelectSql">
<summary>
SelectSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.JsonTitle">
<summary>
JsonTitle
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.WhereSql">
<summary>
WhereSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.OrderBySql">
<summary>
OrderBySql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.SqlTopCountSql">
<summary>
SqlTopCountSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.SqlGetIDSql">
<summary>
SqlGetIDSql
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.RemarkSz">
<summary>
RemarkSz
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.SortNo">
<summary>
SortNo
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.IsDefault">
<summary>
IsDefault
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse1">
<summary>
Reverse1
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse2">
<summary>
Reverse2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse3">
<summary>
Reverse3
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse4">
<summary>
Reverse4
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse5">
<summary>
Reverse5
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse6">
<summary>
Reverse6
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse7">
<summary>
Reverse7
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse8">
<summary>
Reverse8
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.Reverse9">
<summary>
Reverse9
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSql.SqlIDToName">
<summary>
SqlIDToName
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrs_MailOutbox"> <member name="T:Tiobon.Core.Model.Models.Ghrs_MailOutbox">
<summary> <summary>
Ghrs_MailOutbox (Model) Ghrs_MailOutbox (Model)
@ -25943,6 +26218,11 @@
学历编号 学历编号
</summary> </summary>
</member> </member>
<member name="P:Tiobon.Core.Model.Models.Ghrz_Shihua_OA_Employment.LegalCompanyNo">
<summary>
LegalCompanyNo
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrz_Shihua_OA_Employment.PeriodMasterNo"> <member name="P:Tiobon.Core.Model.Models.Ghrz_Shihua_OA_Employment.PeriodMasterNo">
<summary> <summary>
计薪类别编号 计薪类别编号
@ -28807,6 +29087,21 @@
修改信息 修改信息
</summary> </summary>
</member> </member>
<member name="T:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlDto">
<summary>
Ghrs_ListCommonSql(Dto.View1)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlDto.CreateDataInfo">
<summary>
创建信息
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrs_ListCommonSqlDto.UpdateDataInfo">
<summary>
修改信息
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrs_MailOutboxDto"> <member name="T:Tiobon.Core.Model.Models.Ghrs_MailOutboxDto">
<summary> <summary>
Ghrs_MailOutbox(Dto.View1) Ghrs_MailOutbox(Dto.View1)

@ -1829,6 +1829,11 @@
Ghrs_LangKey(Controller) Ghrs_LangKey(Controller)
</summary> </summary>
</member> </member>
<member name="T:Tiobon.Core.Api.Controllers.Ghrs_ListCommonSqlController">
<summary>
Ghrs_ListCommonSql(Controller)
</summary>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghrs_MailOutboxController"> <member name="T:Tiobon.Core.Api.Controllers.Ghrs_MailOutboxController">
<summary> <summary>
Ghrs_MailOutbox(Controller) Ghrs_MailOutbox(Controller)

@ -0,0 +1,11 @@
using Tiobon.Core.IServices.BASE;
using Tiobon.Core.Model.Models;
namespace Tiobon.Core.IServices;
/// <summary>
/// Ghrs_ListCommonSql(自定义服务接口)
/// </summary>
public interface IGhrs_ListCommonSqlServices :IBaseServices<Ghrs_ListCommonSql, Ghrs_ListCommonSqlDto, InsertGhrs_ListCommonSqlInput, EditGhrs_ListCommonSqlInput>
{
}

@ -0,0 +1,172 @@
/* ,
* Ghrs_ListCommonSql.cs
*
* N / A
* Ghrs_ListCommonSql
*
* Ver
*
*V0.01 2024/12/27 11:37:17 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models;
/// <summary>
/// Ghrs_ListCommonSql (Dto.Base)
/// </summary>
public class Ghrs_ListCommonSqlBase
{
/// <summary>
/// ListCommonSqlId
/// </summary>
public int? ListCommonSqlId { get; set; }
/// <summary>
/// ListCommonSqlNo
/// </summary>
[Display(Name = "ListCommonSqlNo"), Description("ListCommonSqlNo"), MaxLength(1000, ErrorMessage = "ListCommonSqlNo 不能超过 1000 个字符")]
public string ListCommonSqlNo { get; set; }
/// <summary>
/// ListCommonSqlName
/// </summary>
[Display(Name = "ListCommonSqlName"), Description("ListCommonSqlName"), MaxLength(1000, ErrorMessage = "ListCommonSqlName 不能超过 1000 个字符")]
public string ListCommonSqlName { get; set; }
/// <summary>
/// ListCommonSqlType
/// </summary>
[Display(Name = "ListCommonSqlType"), Description("ListCommonSqlType"), MaxLength(1000, ErrorMessage = "ListCommonSqlType 不能超过 1000 个字符")]
public string ListCommonSqlType { get; set; }
/// <summary>
/// ListCommonSqlType2
/// </summary>
[Display(Name = "ListCommonSqlType2"), Description("ListCommonSqlType2"), MaxLength(1000, ErrorMessage = "ListCommonSqlType2 不能超过 1000 个字符")]
public string ListCommonSqlType2 { get; set; }
/// <summary>
/// ListComment
/// </summary>
[Display(Name = "ListComment"), Description("ListComment"), MaxLength(2000, ErrorMessage = "ListComment 不能超过 2000 个字符")]
public string ListComment { get; set; }
/// <summary>
/// SelectSql
/// </summary>
[Display(Name = "SelectSql"), Description("SelectSql"), MaxLength(-1, ErrorMessage = "SelectSql 不能超过 -1 个字符")]
public string SelectSql { get; set; }
/// <summary>
/// JsonTitle
/// </summary>
[Display(Name = "JsonTitle"), Description("JsonTitle"), MaxLength(-1, ErrorMessage = "JsonTitle 不能超过 -1 个字符")]
public string JsonTitle { get; set; }
/// <summary>
/// WhereSql
/// </summary>
[Display(Name = "WhereSql"), Description("WhereSql"), MaxLength(-1, ErrorMessage = "WhereSql 不能超过 -1 个字符")]
public string WhereSql { get; set; }
/// <summary>
/// OrderBySql
/// </summary>
[Display(Name = "OrderBySql"), Description("OrderBySql"), MaxLength(2000, ErrorMessage = "OrderBySql 不能超过 2000 个字符")]
public string OrderBySql { get; set; }
/// <summary>
/// SqlTopCountSql
/// </summary>
[Display(Name = "SqlTopCountSql"), Description("SqlTopCountSql"), MaxLength(-1, ErrorMessage = "SqlTopCountSql 不能超过 -1 个字符")]
public string SqlTopCountSql { get; set; }
/// <summary>
/// SqlGetIDSql
/// </summary>
[Display(Name = "SqlGetIDSql"), Description("SqlGetIDSql"), MaxLength(2000, ErrorMessage = "SqlGetIDSql 不能超过 2000 个字符")]
public string SqlGetIDSql { get; set; }
/// <summary>
/// RemarkSz
/// </summary>
[Display(Name = "RemarkSz"), Description("RemarkSz"), MaxLength(2000, ErrorMessage = "RemarkSz 不能超过 2000 个字符")]
public string RemarkSz { get; set; }
/// <summary>
/// SortNo
/// </summary>
public int? SortNo { get; set; }
/// <summary>
/// IsDefault
/// </summary>
public int? IsDefault { get; set; }
/// <summary>
/// Reverse1
/// </summary>
[Display(Name = "Reverse1"), Description("Reverse1"), MaxLength(1000, ErrorMessage = "Reverse1 不能超过 1000 个字符")]
public string Reverse1 { get; set; }
/// <summary>
/// Reverse2
/// </summary>
[Display(Name = "Reverse2"), Description("Reverse2"), MaxLength(1000, ErrorMessage = "Reverse2 不能超过 1000 个字符")]
public string Reverse2 { get; set; }
/// <summary>
/// Reverse3
/// </summary>
[Display(Name = "Reverse3"), Description("Reverse3"), MaxLength(1000, ErrorMessage = "Reverse3 不能超过 1000 个字符")]
public string Reverse3 { get; set; }
/// <summary>
/// Reverse4
/// </summary>
[Display(Name = "Reverse4"), Description("Reverse4"), MaxLength(1000, ErrorMessage = "Reverse4 不能超过 1000 个字符")]
public string Reverse4 { get; set; }
/// <summary>
/// Reverse5
/// </summary>
[Display(Name = "Reverse5"), Description("Reverse5"), MaxLength(1000, ErrorMessage = "Reverse5 不能超过 1000 个字符")]
public string Reverse5 { get; set; }
/// <summary>
/// Reverse6
/// </summary>
[Display(Name = "Reverse6"), Description("Reverse6"), MaxLength(1000, ErrorMessage = "Reverse6 不能超过 1000 个字符")]
public string Reverse6 { get; set; }
/// <summary>
/// Reverse7
/// </summary>
[Display(Name = "Reverse7"), Description("Reverse7"), MaxLength(1000, ErrorMessage = "Reverse7 不能超过 1000 个字符")]
public string Reverse7 { get; set; }
/// <summary>
/// Reverse8
/// </summary>
[Display(Name = "Reverse8"), Description("Reverse8"), MaxLength(1000, ErrorMessage = "Reverse8 不能超过 1000 个字符")]
public string Reverse8 { get; set; }
/// <summary>
/// Reverse9
/// </summary>
[Display(Name = "Reverse9"), Description("Reverse9"), MaxLength(1000, ErrorMessage = "Reverse9 不能超过 1000 个字符")]
public string Reverse9 { get; set; }
/// <summary>
/// SqlIDToName
/// </summary>
[Display(Name = "SqlIDToName"), Description("SqlIDToName"), MaxLength(2000, ErrorMessage = "SqlIDToName 不能超过 2000 个字符")]
public string SqlIDToName { get; set; }
}

@ -0,0 +1,26 @@
/* ,
* Ghrs_ListCommonSql.cs
*
* N / A
* Ghrs_ListCommonSql
*
* Ver
*
*V0.01 2024/12/27 11:37:17 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models;
/// <summary>
/// Ghrs_ListCommonSql (Dto.EditInput)
/// </summary>
public class EditGhrs_ListCommonSqlInput : Ghrs_ListCommonSqlBase
{
}

@ -0,0 +1,26 @@
/* ,
* Ghrs_ListCommonSql.cs
*
* N / A
* Ghrs_ListCommonSql
*
* Ver
*
*V0.01 2024/12/27 11:37:17 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models;
/// <summary>
/// Ghrs_ListCommonSql (Dto.InsertInput)
/// </summary>
public class InsertGhrs_ListCommonSqlInput : Ghrs_ListCommonSqlBase
{
}

@ -0,0 +1,174 @@
/* ,
* Ghrs_ListCommonSql.cs
*
* N / A
* Ghrs_ListCommonSql
*
* Ver
*
*V0.01 2024/12/27 11:37:17 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models;
/// <summary>
/// Ghrs_ListCommonSql (Model)
/// </summary>
[SugarTable("Ghrs_ListCommonSql", "Ghrs_ListCommonSql"), Entity(TableCnName = "Ghrs_ListCommonSql", TableName = "Ghrs_ListCommonSql")]
public class Ghrs_ListCommonSql : BasePoco1
{
/// <summary>
/// ListCommonSqlId
/// </summary>
[SugarColumn(IsNullable = false, IsPrimaryKey = true, IsIdentity = true), Display(Name = "表主键")]
public int? ListCommonSqlId { get; set; }
/// <summary>
/// ListCommonSqlNo
/// </summary>
[Display(Name = "ListCommonSqlNo"), Description("ListCommonSqlNo"), MaxLength(1000, ErrorMessage = "ListCommonSqlNo 不能超过 1000 个字符")]
public string ListCommonSqlNo { get; set; }
/// <summary>
/// ListCommonSqlName
/// </summary>
[Display(Name = "ListCommonSqlName"), Description("ListCommonSqlName"), MaxLength(1000, ErrorMessage = "ListCommonSqlName 不能超过 1000 个字符")]
public string ListCommonSqlName { get; set; }
/// <summary>
/// ListCommonSqlType
/// </summary>
[Display(Name = "ListCommonSqlType"), Description("ListCommonSqlType"), MaxLength(1000, ErrorMessage = "ListCommonSqlType 不能超过 1000 个字符")]
public string ListCommonSqlType { get; set; }
/// <summary>
/// ListCommonSqlType2
/// </summary>
[Display(Name = "ListCommonSqlType2"), Description("ListCommonSqlType2"), MaxLength(1000, ErrorMessage = "ListCommonSqlType2 不能超过 1000 个字符")]
public string ListCommonSqlType2 { get; set; }
/// <summary>
/// ListComment
/// </summary>
[Display(Name = "ListComment"), Description("ListComment"), MaxLength(2000, ErrorMessage = "ListComment 不能超过 2000 个字符")]
public string ListComment { get; set; }
/// <summary>
/// SelectSql
/// </summary>
[Display(Name = "SelectSql"), Description("SelectSql"), MaxLength(-1, ErrorMessage = "SelectSql 不能超过 -1 个字符")]
public string SelectSql { get; set; }
/// <summary>
/// JsonTitle
/// </summary>
[Display(Name = "JsonTitle"), Description("JsonTitle"), MaxLength(-1, ErrorMessage = "JsonTitle 不能超过 -1 个字符")]
public string JsonTitle { get; set; }
/// <summary>
/// WhereSql
/// </summary>
[Display(Name = "WhereSql"), Description("WhereSql"), MaxLength(-1, ErrorMessage = "WhereSql 不能超过 -1 个字符")]
public string WhereSql { get; set; }
/// <summary>
/// OrderBySql
/// </summary>
[Display(Name = "OrderBySql"), Description("OrderBySql"), MaxLength(2000, ErrorMessage = "OrderBySql 不能超过 2000 个字符")]
public string OrderBySql { get; set; }
/// <summary>
/// SqlTopCountSql
/// </summary>
[Display(Name = "SqlTopCountSql"), Description("SqlTopCountSql"), MaxLength(-1, ErrorMessage = "SqlTopCountSql 不能超过 -1 个字符")]
public string SqlTopCountSql { get; set; }
/// <summary>
/// SqlGetIDSql
/// </summary>
[Display(Name = "SqlGetIDSql"), Description("SqlGetIDSql"), MaxLength(2000, ErrorMessage = "SqlGetIDSql 不能超过 2000 个字符")]
public string SqlGetIDSql { get; set; }
/// <summary>
/// RemarkSz
/// </summary>
[Display(Name = "RemarkSz"), Description("RemarkSz"), MaxLength(2000, ErrorMessage = "RemarkSz 不能超过 2000 个字符")]
public string RemarkSz { get; set; }
/// <summary>
/// SortNo
/// </summary>
public int? SortNo { get; set; }
/// <summary>
/// IsDefault
/// </summary>
public int? IsDefault { get; set; }
/// <summary>
/// Reverse1
/// </summary>
[Display(Name = "Reverse1"), Description("Reverse1"), MaxLength(1000, ErrorMessage = "Reverse1 不能超过 1000 个字符")]
public string Reverse1 { get; set; }
/// <summary>
/// Reverse2
/// </summary>
[Display(Name = "Reverse2"), Description("Reverse2"), MaxLength(1000, ErrorMessage = "Reverse2 不能超过 1000 个字符")]
public string Reverse2 { get; set; }
/// <summary>
/// Reverse3
/// </summary>
[Display(Name = "Reverse3"), Description("Reverse3"), MaxLength(1000, ErrorMessage = "Reverse3 不能超过 1000 个字符")]
public string Reverse3 { get; set; }
/// <summary>
/// Reverse4
/// </summary>
[Display(Name = "Reverse4"), Description("Reverse4"), MaxLength(1000, ErrorMessage = "Reverse4 不能超过 1000 个字符")]
public string Reverse4 { get; set; }
/// <summary>
/// Reverse5
/// </summary>
[Display(Name = "Reverse5"), Description("Reverse5"), MaxLength(1000, ErrorMessage = "Reverse5 不能超过 1000 个字符")]
public string Reverse5 { get; set; }
/// <summary>
/// Reverse6
/// </summary>
[Display(Name = "Reverse6"), Description("Reverse6"), MaxLength(1000, ErrorMessage = "Reverse6 不能超过 1000 个字符")]
public string Reverse6 { get; set; }
/// <summary>
/// Reverse7
/// </summary>
[Display(Name = "Reverse7"), Description("Reverse7"), MaxLength(1000, ErrorMessage = "Reverse7 不能超过 1000 个字符")]
public string Reverse7 { get; set; }
/// <summary>
/// Reverse8
/// </summary>
[Display(Name = "Reverse8"), Description("Reverse8"), MaxLength(1000, ErrorMessage = "Reverse8 不能超过 1000 个字符")]
public string Reverse8 { get; set; }
/// <summary>
/// Reverse9
/// </summary>
[Display(Name = "Reverse9"), Description("Reverse9"), MaxLength(1000, ErrorMessage = "Reverse9 不能超过 1000 个字符")]
public string Reverse9 { get; set; }
/// <summary>
/// SqlIDToName
/// </summary>
[Display(Name = "SqlIDToName"), Description("SqlIDToName"), MaxLength(2000, ErrorMessage = "SqlIDToName 不能超过 2000 个字符")]
public string SqlIDToName { get; set; }
}

@ -34,6 +34,7 @@ public class Ghrz_Shihua_OA_Employment
/// <summary> /// <summary>
/// EmploymentID /// EmploymentID
/// </summary> /// </summary>
[SugarColumn(IsNullable = false, IsPrimaryKey = true, IsIdentity = false), Display(Name = "表主键")]
public int? EmploymentID { get; set; } public int? EmploymentID { get; set; }
/// <summary> /// <summary>

@ -0,0 +1,34 @@
/* ,
* Ghrs_ListCommonSql.cs
*
* N / A
* Ghrs_ListCommonSql
*
* Ver
*
*V0.01 2024/12/27 11:37:17 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models;
/// <summary>
/// Ghrs_ListCommonSql(Dto.View1)
/// </summary>
public class Ghrs_ListCommonSqlDto : Ghrs_ListCommonSql
{
/// <summary>
/// 创建信息
/// </summary>
public string CreateDataInfo { get; set; }
/// <summary>
/// 修改信息
/// </summary>
public string UpdateDataInfo { get; set; }
}

@ -35,6 +35,13 @@ public class ResumeFormColumn1
public string ColumnType { get; set; } public string ColumnType { get; set; }
public string MapTableName { get; set; } public string MapTableName { get; set; }
public string MapColumnName { get; set; } public string MapColumnName { get; set; }
public string DataType { get; set; }
public string DataSourceType { get; set; }
public bool? IsRequired { get; set; }
public string DataSource { get; set; }
public string DataSourceID { get; set; }
} }

@ -1,4 +1,5 @@
using DinkToPdf; using Amazon.Runtime.Internal.Transform;
using DinkToPdf;
using DinkToPdf.Contracts; using DinkToPdf.Contracts;
using Microsoft.AspNetCore.Hosting; using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
@ -1222,7 +1223,8 @@ END";
resumeTemplateID = await Db.Ado.GetLongAsync("select top 1 Id from Ghrh_ResumeTemplate where IsEnable=1 and IsPublish=1"); resumeTemplateID = await Db.Ado.GetLongAsync("select top 1 Id from Ghrh_ResumeTemplate where IsEnable=1 and IsPublish=1");
var sql = @$"DECLARE @ResumeTemplateID BIGINT = {resumeTemplateID} var sql = @$"DECLARE @ResumeTemplateID BIGINT = {resumeTemplateID}
SELECT A.ColumnName, A.ResumeInfoColumnName ColumnNameDesc, D.GroupType, A.MapTableName, A.MapColumnName SELECT A.ColumnName, A.ResumeInfoColumnName ColumnNameDesc, D.GroupType, A.MapTableName, A.MapColumnName,
A.DataType, A.ColumnType, A.IsRequired, A.DataSourceType, A.DataSource, A.DataSourceID
FROM Ghrh_ResumeInfoColumn A FROM Ghrh_ResumeInfoColumn A
LEFT JOIN Ghrh_ResumeTemplateInfoGroupColumn B LEFT JOIN Ghrh_ResumeTemplateInfoGroupColumn B
ON B.ResumeInfoColumnID = A.ID ON B.ResumeInfoColumnID = A.ID
@ -3681,6 +3683,9 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1
var resume = await base.QuerySingle(x => x.IdCardNo == data.IDCardNo); var resume = await base.QuerySingle(x => x.IdCardNo == data.IDCardNo);
if (resume is null)
continue;
var deptId = (await Db.Queryable<Ghro_Dept>().Where(x => x.DeptNo == data.DeptNo).FirstAsync())?.DeptID; var deptId = (await Db.Queryable<Ghro_Dept>().Where(x => x.DeptNo == data.DeptNo).FirstAsync())?.DeptID;
var titleId = (await Db.Queryable<Ghra_Title>().Where(x => x.TitleNo == data.TitleNo).FirstAsync())?.TitleID; var titleId = (await Db.Queryable<Ghra_Title>().Where(x => x.TitleNo == data.TitleNo).FirstAsync())?.TitleID;
var gradeId = (await Db.Queryable<Ghra_Grade>().Where(x => x.GradeNo == data.GradeNo).FirstAsync())?.GradeID; var gradeId = (await Db.Queryable<Ghra_Grade>().Where(x => x.GradeNo == data.GradeNo).FirstAsync())?.GradeID;
@ -3870,6 +3875,11 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1
#endregion #endregion
if (items.Any()) if (items.Any())
await Db.Insertable(items).ExecuteCommandAsync(); await Db.Insertable(items).ExecuteCommandAsync();
await Db.Updateable<Ghrz_Shihua_OA_Employment>()
.SetColumns(it => new Ghrz_Shihua_OA_Employment() { IsRead = 1 })
.Where(it => it.EmploymentID == data.EmploymentID)
.ExecuteCommandAsync();
} }
} }
catch (Exception E) catch (Exception E)
@ -3984,6 +3994,221 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1
} }
#endregion #endregion
#region Excel导入
public override async Task<ServiceResult<string>> DownloadExcel(string menuName)
{
var physicsPath = $"{Environment.CurrentDirectory}{Path.DirectorySeparatorChar}wwwroot";
var path = $"{$"{Path.DirectorySeparatorChar}files{Path.DirectorySeparatorChar}ExcelTemplate{Path.DirectorySeparatorChar}"}";
if (!Directory.Exists(physicsPath + path))
Directory.CreateDirectory(physicsPath + path);
Type entityType = typeof(Ghre_Teacher);
DataTable dt = new DataTable("TempTable");
var formColumns = await QueryResumeFormColumn();
string fileName = path + SnowFlakeSingle.instance.getID() + ".xlsx";
formColumns.Where(x => x.GroupType == "Base")
.ToList()
.ForEach(x =>
{
if (!dt.Columns.Contains(x.ColumnNameDesc))
dt.Columns.Add(x.ColumnNameDesc, typeof(string));
});
var dr = dt.NewRow();
dt.Rows.Add(dr);
NPOIHelper.ExportExcel(dt, null, "简历导入模板", physicsPath + fileName);
var physicsPath1 = physicsPath + fileName;
//if (dataSourceLists.Any())
// physicsPath1 = physicsPath + path + newFileName;
var result = ServiceResult<string>.OprateSuccess("简历导入模板_" + DateTimeHelper.ConvertToSecondString1(DateTime.Now) + ".xlsx", physicsPath1);
return result;
}
public override async Task<ServiceResult<ExcelData>> ImportExcel(IFormFile file, string menuName = null, long? MasterId = null)
{
var data = new ExcelData();
long id = SnowFlakeSingle.instance.getID();
var physicsPath = $"{Environment.CurrentDirectory}{Path.DirectorySeparatorChar}wwwroot";
var path = $"{$"{Path.DirectorySeparatorChar}files{Path.DirectorySeparatorChar}import{Path.DirectorySeparatorChar}{id}{Path.DirectorySeparatorChar}"}";
if (!Directory.Exists(physicsPath + path))
Directory.CreateDirectory(physicsPath + path);
var filepath = physicsPath + path + file.FileName;
using (var stream = File.Create(filepath))
{
await file.CopyToAsync(stream);
}
string extension = Path.GetExtension(filepath);
bool isExistError = false;
var id1 = SnowFlakeSingle.instance.getID();
string errorFileName = path + SnowFlakeSingle.instance.getID() + extension;
var dt = NPOIHelper.ImportExcel(filepath, "简历导入模板");
if (dt.Columns["Comments"] == null)
dt.Columns.Add("Comments", typeof(string));
var formColumns = await QueryResumeFormColumn();
formColumns = formColumns.Where(x => x.GroupType == "Base")
.ToList();
for (int i = 0; i < dt.Rows.Count; i++)
{
var comments = new List<string>();
bool isContinue = false;
var dict = new Dictionary<string, object>
{
{ "Id", SnowFlakeSingle.Instance.NextId() },
{ "CreateBy", App.User.ID },
{ "CreateTime", DateTime.Now },
{ "UpdateTime", DateTime.Now }
};
formColumns.ForEach(x =>
{
if (!dt.Columns.Contains(x.ColumnNameDesc))
{
comments.Add("未查询到【" + x.ColumnNameDesc + "】列!");
data.ErrorCount++;
dt.Rows[i]["Comments"] = string.Join(";", comments.Select(a => a));
isExistError = true;
isContinue = true;
}
});
if (isContinue)
continue;
for (int j = 0; j < formColumns.Count; j++)
{
var column = formColumns[j];
var value = dt.Rows[i][column.ColumnNameDesc].ToString();
if (column.IsRequired == true && value.IsNullOrEmpty())
{
comments.Add(column.ColumnNameDesc + "不能为空!");
data.ErrorCount++;
dt.Rows[i]["Comments"] = string.Join(";", comments.Select(a => a));
isExistError = true;
continue;
}
if (column.DataSourceType.IsNullOrEmpty())
{
if (column.DataType == "int" || column.DataType == "decimal")
{
try
{
Convert.ToInt64(value);
}
catch (Exception)
{
comments.Add(column.ColumnNameDesc + "无效的数字类型!");
data.ErrorCount++;
dt.Rows[i]["Comments"] = string.Join(";", comments.Select(a => a));
isExistError = true;
continue;
}
}
else if (column.DataType == "date")
{
try
{
Convert.ToDateTime(value);
}
catch (Exception)
{
comments.Add(column.ColumnNameDesc + "无效的日期类型!");
data.ErrorCount++;
dt.Rows[i]["Comments"] = string.Join(";", comments.Select(a => a));
isExistError = true;
continue;
}
}
}
if (value.IsNotEmptyOrNull())
{
if (column.DataSource.IsNotEmptyOrNull() && column.DataSourceType.IsNotEmptyOrNull())
{
if (column.DataSourceType == "CommonList")
{
var commonSql = await Db.Queryable<Ghrs_ListCommonSql>().Where(x => x.ListCommonSqlId == column.DataSource.ObjToInt()).FirstAsync();
if (commonSql != null)
{
string sql = @$"SELECT [value]
FROM ({commonSql.SelectSql}) A
WHERE label = '{value}'";
sql = sql.Replace("{@LangID}", "1");
var id2 = await Db.Ado.GetLongAsync(sql);
dict.Add(column.ColumnName, id2);
}
}
else if (column.DataSourceType == "ParaDetailNo")
{
var sql = @$"SELECT ParaDetailNo
FROM Ghrs_ParaDetail
WHERE ParaMasterId IN (SELECT ParaMasterId
FROM Ghrs_ParaMaster
WHERE ParaMasterId = {column.DataSource.ObjToInt()})
AND IsEnable = 1
AND ParaDetailName = '{value}'";
var id2 = await Db.Ado.GetStringAsync(sql);
dict.Add(column.ColumnName, id2);
}
}
else
dict.Add(column.ColumnName, value);
}
}
if (dict.ContainsKey("IdCardNo"))
{
if (await base.AnyAsync(x => x.IdCardNo == dict["IdCardNo"].ToString()))
{
comments.Add("证件号码不能重复!");
data.ErrorCount++;
dt.Rows[i]["Comments"] = string.Join(";", comments.Select(a => a));
isExistError = true;
continue;
}
}
if (isExistError)
continue;
try
{
dict.Add("Status", "WaitRecommended");
dict.Add("ApplicationStatus", "Submit");
await Db.Insertable(dict).AS("Ghrh_Resume").ExecuteCommandAsync();
data.SuccessCount++;
//data.SuccessCount += list.Count;
}
catch (Exception E)
{
comments.Add(E.Message);
data.ErrorCount++;
dt.Rows[i]["Comments"] = string.Join(";", comments.Select(a => a));
isExistError = true;
continue;
}
}
if (isExistError)
{
NPOIHelper.ExportExcel(dt, null, "简历导入模板", physicsPath + errorFileName);
data.filePath = "/Advanced" + errorFileName;
}
return ServiceResult<ExcelData>.OprateSuccess("导入成功!", data);
}
#endregion
#region 通用方法 #region 通用方法
/// <summary> /// <summary>
/// 记录日志 /// 记录日志

@ -0,0 +1,15 @@
namespace Tiobon.Core.Services;
/// <summary>
/// Ghrs_ListCommonSql (服务)
/// </summary>
public class Ghrs_ListCommonSqlServices : BaseServices<Ghrs_ListCommonSql, Ghrs_ListCommonSqlDto, InsertGhrs_ListCommonSqlInput, EditGhrs_ListCommonSqlInput>, IGhrs_ListCommonSqlServices
{
private readonly IBaseRepository<Ghrs_ListCommonSql> _dal;
public Ghrs_ListCommonSqlServices(ICaching caching, IBaseRepository<Ghrs_ListCommonSql> dal)
{
this._dal = dal;
base.BaseDal = dal;
base._caching = caching;
}
}
Loading…
Cancel
Save