diff --git a/Tiobon.Core.Api/Tiobon.Core.Model.xml b/Tiobon.Core.Api/Tiobon.Core.Model.xml index 3e3fa962..475f184a 100644 --- a/Tiobon.Core.Api/Tiobon.Core.Model.xml +++ b/Tiobon.Core.Api/Tiobon.Core.Model.xml @@ -28197,6 +28197,11 @@ 生日 + + + 录用公司 + + 用人部门 diff --git a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs index c3a46578..749f26ac 100644 --- a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs +++ b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs @@ -2,6 +2,7 @@ using DinkToPdf.Contracts; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Hosting; +using System.ComponentModel.Design; using System.IO.Compression; using static Tiobon.Core.Model.Consts; @@ -290,7 +291,6 @@ public class Ghrh_ResumeServices : BaseServices x.Id).ToList(); var titleIds = list.Where(x => x.TitleId != null).Select(x => x.TitleId.Value).Distinct().ToList(); - var titles = await Db.Queryable().Where(x => x.TitleID != null && titleIds.Contains(x.TitleID.Value)).ToListAsync(); var eduBGs = await _ghrh_ResumeEduBGServices.QueryDto(x => x.ResumeId != null && ids.Contains(x.ResumeId.Value)); var workExps = await _ghrh_ResumeWorkExpServices.QueryDto(x => x.ResumeId != null && ids.Contains(x.ResumeId.Value)); @@ -311,7 +311,15 @@ public class Ghrh_ResumeServices : BaseServices().Where(x => x.ConfigCode == "ESS_Recruit_Custom_Transfer_Staff").FirstAsync(); - var applyOrders = await Db.Queryable().Where(x => x.ResumeId != null && ids.Contains(x.ResumeId.Value) && x.WorkState == 0).ToListAsync(); + var applyOrders = await Db.Queryable().Where(x => x.ResumeId != null && ids.Contains(x.ResumeId.Value)).ToListAsync(); + + var companyIds = applyOrders.Where(x => x.CompanyId != null).Select(x => x.CompanyId).ToList(); + var deptIds = applyOrders.Where(x => x.DeptId != null).Select(x => x.DeptId).ToList(); + titleIds.AddRange(applyOrders.Where(x => x.TitleId != null).Select(x => x.TitleId.Value).ToList()); + var legalCompanys = await Db.Queryable().Where(x => companyIds.Contains(x.LegalCompanyID)).ToListAsync(); + var depts = await Db.Queryable().Where(x => deptIds.Contains(x.DeptID)).ToListAsync(); + var titles = await Db.Queryable().Where(x => x.TitleID != null && titleIds.Contains(x.TitleID.Value)).ToListAsync(); + #endregion list.ForEach(async x => @@ -363,23 +371,8 @@ public class Ghrh_ResumeServices : BaseServices o.ResumeId == x.ResumeId)).SingleOrDefault(); - if (applyOrder != null) - { - if (applyOrder.WorkNo.IsNotEmptyOrNull()) - x.OfferApplyExist = true; - //x.HireCompanyName = (await Db.Queryable().Where(x => x.DeptID == applyOrder.DeptId).FirstAsync())?.DeptName - x.HireDeptName = (await Db.Queryable().Where(x => x.DeptID == applyOrder.DeptId).FirstAsync())?.DeptName; - x.HireTitleName = (await Db.Queryable().Where(x => x.TitleID == applyOrder.TitleId).FirstAsync())?.TitleName; - } x.InterviewTime1 = order.InterviewTime; x.InterviewContent = order.InterviewContent; @@ -388,6 +381,24 @@ public class Ghrh_ResumeServices : BaseServices o.ResumeId == x.ResumeId)).SingleOrDefault(); + if (applyOrder != null) + { + if (applyOrder.WorkNo.IsNotEmptyOrNull()) + x.OfferApplyExist = true; + x.HireCompanyName = legalCompanys.Where(x => x.LegalCompanyID == applyOrder.CompanyId).FirstOrDefault()?.LegalCompanyName; + x.HireDeptName = depts.Where(x => x.DeptID == applyOrder.DeptId).FirstOrDefault()?.DeptName; + x.HireTitleName = titles.Where(x => x.TitleID == applyOrder.TitleId).FirstOrDefault()?.TitleName; + } + x.OfferApplyType = offerApplyConfig?.ConfigValue ?? "System"; + + if (x.Status == DIC_INTERVIEW_ORDER_STATUS.HasSendOffer) + { + //x.InterviewResult = "推荐中"; + x.TransferStaffType = sendOfferConfig?.ConfigValue ?? "System"; + } }); return result; @@ -2432,6 +2443,10 @@ END"; await _ghrh_InterviewRecordServices.Update(records, ["Status"]); await LogRecord(order.Id, isOffer == true ? "标记为已报到!" : "标记为未报到!", id, null, "CheckIn"); } + else + { + + } } return ServiceResult.OprateSuccess(); @@ -2517,6 +2532,21 @@ END"; await UpdateResumeStatus(entity, DIC_INTERVIEW_ORDER_STATUS.WaitSendOffer); var order = await _ghrh_InterviewOrderServices.QuerySingle(x => x.ResumeId == id); + + if (order == null) + { + var orderId = await _ghrh_InterviewOrderServices.Add(new InsertGhrh_InterviewOrderInput() + { + ResumeId = id, + RecommendTime = DateTime.Now, + RecommendId = App.User.ID, + Round = 1, + OrderNo = await GenerateContinuousSequence("Ghrh_InterviewOrder", "OrderNo", "V"), + Status = DIC_INTERVIEW_ORDER_STATUS.WaitSendOffer, + }); + await _ghrh_InterviewOrderServices.QuerySingle(x => x.ResumeId == id); + } + if (order != null) { diff --git a/Tiobon.Core/Tiobon.Core.Model.xml b/Tiobon.Core/Tiobon.Core.Model.xml index 3e3fa962..475f184a 100644 --- a/Tiobon.Core/Tiobon.Core.Model.xml +++ b/Tiobon.Core/Tiobon.Core.Model.xml @@ -28197,6 +28197,11 @@ 生日 + + + 录用公司 + + 用人部门