推荐记录表

master
xiaochanghai 6 months ago
parent ed17c3a24f
commit 0d79772a79
  1. 6
      Model/Tiobon.Web.pdm
  2. 15
      Tiobon.Core.Api/Tiobon.Core.Model.xml
  3. 8
      Tiobon.Core.Model/Base/Ghrh/Ghrh_HumanRequest.Dto.Base.cs
  4. 8
      Tiobon.Core.Model/Models/Ghrh/Ghrh_HumanRequest.cs
  5. 6
      Tiobon.Core.Model/View/Ghrh/Ghrh_InterviewOrder.Dto.View.cs
  6. 1
      Tiobon.Core.Services/CommonServices.cs
  7. 7
      Tiobon.Core.Services/Ghrh/Ghrh_HumanRequestServices.cs
  8. 71
      Tiobon.Core.Services/Ghrh/Ghrh_InterviewOrderServices.cs
  9. 15
      Tiobon.Core/Tiobon.Core.Model.xml

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<?PowerDesigner AppLocale="UTF16" ID="{C294868A-C3F3-41AD-98CC-78B6D4E0CC40}" Label="" LastModificationDate="1735198582" Name="Tiobon" Objects="2781" Symbols="104" Target="Microsoft SQL Server 2008" Type="{CDE44E21-9669-11D1-9914-006097355D9B}" signature="PDM_DATA_MODEL_XML" version="15.0.0.2613"?>
<?PowerDesigner AppLocale="UTF16" ID="{C294868A-C3F3-41AD-98CC-78B6D4E0CC40}" Label="" LastModificationDate="1735199244" Name="Tiobon" Objects="2781" Symbols="104" Target="Microsoft SQL Server 2008" Type="{CDE44E21-9669-11D1-9914-006097355D9B}" signature="PDM_DATA_MODEL_XML" version="15.0.0.2613"?>
<!-- do not edit this file -->
<Model xmlns:a="attribute" xmlns:c="collection" xmlns:o="object">
@ -39732,10 +39732,10 @@ Ghra_staff_InsureBase
<o:Column Id="o2306">
<a:ObjectID>D828CE04-9FAE-40AF-9BFA-40C4C105CD12</a:ObjectID>
<a:Name>订单号</a:Name>
<a:Code>OrderNo</a:Code>
<a:Code>RequestNo</a:Code>
<a:CreationDate>1735198505</a:CreationDate>
<a:Creator>Administrator</a:Creator>
<a:ModificationDate>1735198582</a:ModificationDate>
<a:ModificationDate>1735199244</a:ModificationDate>
<a:Modifier>Administrator</a:Modifier>
<a:Comment>订单号</a:Comment>
<a:DataType>nvarchar(32)</a:DataType>

@ -7185,6 +7185,11 @@
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrh_HumanRequestBase.RequestNo">
<summary>
订单号
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrh_HumanRequestDetailBase">
<summary>
人力需求维护明细 (Dto.Base)
@ -20846,6 +20851,11 @@
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrh_HumanRequest.RequestNo">
<summary>
订单号
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrh_HumanRequestDetail">
<summary>
人力需求维护明细 (Model)
@ -28042,6 +28052,11 @@
状态
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrh_InterviewOrderDto.RequestNo">
<summary>
需求单号
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrh_InterviewRecordDto">
<summary>
面试记录(Dto.View1)

@ -6,7 +6,7 @@
*
* Ver
*
*V0.01 2024/12/19 11:14:16 SimonHsiao
*V0.01 2024/12/26 15:37:27 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
@ -322,4 +322,10 @@ public class Ghrh_HumanRequestBase
/// 预留字段12
/// </summary>
public int? ReverseI2 { get; set; }
/// <summary>
/// 订单号
/// </summary>
[Display(Name = "RequestNo"), Description("订单号"), MaxLength(32, ErrorMessage = "订单号 不能超过 32 个字符")]
public string RequestNo { get; set; }
}

@ -6,7 +6,7 @@
*
* Ver
*
*V0.01 2024/12/19 11:14:16 SimonHsiao
*V0.01 2024/12/26 15:37:27 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
@ -323,4 +323,10 @@ public class Ghrh_HumanRequest : BasePoco
/// 预留字段12
/// </summary>
public int? ReverseI2 { get; set; }
/// <summary>
/// 订单号
/// </summary>
[Display(Name = "RequestNo"), Description("订单号"), MaxLength(32, ErrorMessage = "订单号 不能超过 32 个字符")]
public string RequestNo { get; set; }
}

@ -86,4 +86,10 @@ public class Ghrh_InterviewOrderDto : Ghrh_InterviewOrder
/// 状态
/// </summary>
public string StatusLabel { get; set; }
/// <summary>
/// 需求单号
/// </summary>
public string RequestNo { get; set; }
}

@ -3635,6 +3635,7 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
dict.Status = "WaitConfirm";
#endregion
dict.ApplicantId = GetStaffId();
dict.RequestNo = await GenerateContinuousSequence("Ghrh_HumanRequest", "RequestNo", "R");
id = await Db.Insertable(dict).ExecuteReturnSnowflakeIdAsync();
sql = $"SELECT ISNULL(MAX(id)+1,1) FROM Ghrh_HumanRequest WHERE Id !='{id}'";

@ -46,9 +46,9 @@ public class Ghrh_HumanRequestServices : BaseServices<Ghrh_HumanRequest, Ghrh_Hu
public override async Task<long> Add(InsertGhrh_HumanRequestInput entity)
{
entity.ApplicantId = GetStaffId();
entity.RequestNo = await GenerateContinuousSequence("Ghrh_HumanRequest", "RequestNo", "R");
var id = await base.Add(entity);
var sql = $"SELECT ISNULL(MAX(id)+1,1) FROM Ghrh_HumanRequest WHERE Id !='{id}'";
var id1 = await Db.Ado.GetLongAsync(sql);
sql = $"UPDATE Ghrh_HumanRequest SET Id={id1} WHERE Id ='{id}'";
@ -164,6 +164,9 @@ FROM Ghrh_YearHumanSettings A
LEFT JOIN Ghra_Title B ON A.TitleId = B.TitleID
LEFT JOIN Ghra_Job C ON A.JobId = C.JobID
WHERE A.IsEnable = 1 AND A.Id = {entitys[i].YearHumanId}");
if (entitys[i].WorkNo.IsNotEmptyOrNull())
entitys[i].RequestNo = entitys[i].WorkNo;
}
var userIds = entitys.Where(x => x.RefuseUserId != null).Select(x => x.RefuseUserId).Distinct().ToList();
userIds.AddRange(entitys.Where(x => x.AgreeUserId != null).Select(x => x.AgreeUserId).Distinct());

@ -62,13 +62,70 @@ public class Ghrh_InterviewOrderServices : BaseServices<Ghrh_InterviewOrder, Ghr
#region 查询
public override async Task<ServicePageResult<Ghrh_InterviewOrderDto>> QueryFilterPage(QueryBody filter, string condition, bool? IsEnable = true)
{
var result = await base.QueryFilterPage(filter, condition, null);
if (string.IsNullOrWhiteSpace(filter.orderBy))
filter.orderBy = "CreateTime1 DESC";
if (filter.pageSize == 0)
filter.pageSize = 10000;
Type entityType = typeof(Ghrh_InterviewOrder);
var countSql = @$" SELECT COUNT(1) FROM {entityType.GetEntityTableName()}";
var sql1 = @$"DECLARE @langId INT = {filter.langId};";
var sql = @$" SELECT *,
ISNULL ((SELECT CASE WHEN @langId = 1 THEN UserName ELSE UserEname END
FROM Ghrs_User B
WHERE B.UserId = A.CreateBy),
'') CreateDataInfo,
ISNULL ((SELECT CASE WHEN @langId = 1 THEN UserName ELSE UserEname END
FROM Ghrs_User B
WHERE B.UserId = A.UpdateBy),
'') UpdateDataInfo, ISNULL(A.UpdateTime, A.CreateTime) CreateTime1
FROM {entityType.GetEntityTableName()} A";
string conditions = " WHERE 1=1 ";
//if (IsEnable == true)
// conditions += " AND IsEnable = 1";
//else if (IsEnable == false)
// conditions += " AND IsEnable = 0";
if (!string.IsNullOrWhiteSpace(condition))
conditions += " AND " + condition;
var properties = entityType.GetGenericProperties();
if (filter.jsonParam != null)
foreach (JProperty jProperty in filter.jsonParam.Properties())
{
var name = jProperty.Name;
var value = jProperty.Value.ToString();
if (name == "page" || name == "pageSize" || !properties.Any(x => x.Name == name))
continue;
if (!string.IsNullOrWhiteSpace(value))
conditions = DealConditions(conditions, name, value);
}
sql += conditions;
countSql += conditions;
int total = await Db.Ado.GetIntAsync(countSql);
sql = "SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY " + filter.orderBy + ") NUM FROM (SELECT * FROM (" + sql + " ";
sql += ") A ) B ) C";
sql += " WHERE NUM <= " + filter.pageNum * filter.pageSize + " AND NUM >" + (filter.pageNum - 1) * filter.pageSize;
sql = sql1 + sql;
var entitys = await Db.Ado.SqlQueryAsync<Ghrh_InterviewOrderDto>(sql);
var result = new ServicePageResult<Ghrh_InterviewOrderDto>(filter.pageNum, total, filter.pageSize, entitys);
var list = result.result.DT_TableDataT1;
var resumeIds = list.Where(x => x.ResumeId != null).Select(x => x.ResumeId).ToList();
var requestIds = list.Where(x => x.RequestId != null).Select(x => x.RequestId).ToList();
var resumes = await Db.Queryable<Ghrh_Resume>().Where(x => resumeIds.Contains(x.Id)).ToListAsync();
var requests = await Db.Queryable<Ghrh_HumanRequest>().Where(x => requestIds.Contains(x.Id)).ToListAsync();
var titleIds = resumes.Where(x => x.TitleId != null).Select(x => x.TitleId.Value).Distinct().ToList();
var titles = await Db.Queryable<Ghra_Title>().Where(x => x.TitleID != null && titleIds.Contains(x.TitleID.Value)).ToListAsync();
var tagIds = new List<long>();
@ -117,18 +174,24 @@ public class Ghrh_InterviewOrderServices : BaseServices<Ghrh_InterviewOrder, Ghr
{
case "Fail":
entity.StatusLabel = "不合适";
break;
break;
case "HasRecommended":
entity.StatusLabel = "待预约";
break;
break;
case "Hire":
entity.StatusLabel = "不合适";
break;
default:
default:
entity.StatusLabel = "已约面";
break;
}
}
if (entity.RequestId != null)
{
var request = requests.Where(x => x.Id == entity.RequestId).FirstOrDefault();
entity.RequestNo = request.RequestNo;
}
}
return result;

@ -7185,6 +7185,11 @@
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrh_HumanRequestBase.RequestNo">
<summary>
订单号
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrh_HumanRequestDetailBase">
<summary>
人力需求维护明细 (Dto.Base)
@ -20846,6 +20851,11 @@
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrh_HumanRequest.RequestNo">
<summary>
订单号
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrh_HumanRequestDetail">
<summary>
人力需求维护明细 (Model)
@ -28042,6 +28052,11 @@
状态
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghrh_InterviewOrderDto.RequestNo">
<summary>
需求单号
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghrh_InterviewRecordDto">
<summary>
面试记录(Dto.View1)

Loading…
Cancel
Save