From f92d6be3200959bd92af16dd14dd0248ac743ffc Mon Sep 17 00:00:00 2001 From: xiaochanghai Date: Thu, 14 Nov 2024 15:49:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=B7=B2=E6=8A=A5=E5=88=B0/?= =?UTF-8?q?=E6=9C=AA=E6=8A=A5=E9=81=93=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Ghrh/Ghrh_ResumeController.cs | 16 ++++++ .../Ghrh/IGhrh_ResumeServices.cs | 2 + .../Ghrh/Ghrh_ResumeServices.cs | 52 ++++++++++++++++++- 3 files changed, 69 insertions(+), 1 deletion(-) diff --git a/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs b/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs index aec5c35a..c3197697 100644 --- a/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs +++ b/Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs @@ -355,4 +355,20 @@ public class Ghrh_ResumeController : BaseController + /// 已报到/未报道接口 + /// + /// 简历Id + /// 已报到传true,未报到传false + /// + [HttpPost, Route("ModifyIsOffer/{id}/{value}")] + public async Task ModifyIsOffer(long id, bool value) + { + return await _service.ModifyIsOffer(id, value); + } + #endregion + + } \ No newline at end of file diff --git a/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs b/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs index 7da69395..48378847 100644 --- a/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs +++ b/Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs @@ -53,4 +53,6 @@ public interface IGhrh_ResumeServices : IBaseServices SendOffer(long id); Task RemindHasOffer(long id); + + Task ModifyIsOffer(long id, bool isOffer); } \ No newline at end of file diff --git a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs index dc748216..a95db1e3 100644 --- a/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs +++ b/Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs @@ -1543,6 +1543,11 @@ END"; order.Round++; order.Status = DIC_INTERVIEW_ORDER_STATUS.HasRecommended; await _ghrh_InterviewOrderServices.Update(order, ["Status", "Round"]); + + + entity.Status = DIC_INTERVIEW_ORDER_STATUS.HasRecommended; + await Update(entity, ["Status"]); + await _ghrh_InterviewRecordServices.Add(new InsertGhrh_InterviewRecordInput() { OrderId = order.Id, @@ -1567,11 +1572,15 @@ END"; return ServiceResult.OprateFailed("无效的简历ID!"); var order = await _ghrh_InterviewOrderServices.QuerySingle(x => x.ResumeId == id); + order.Status = DIC_INTERVIEW_ORDER_STATUS.HasInterview; + await _ghrh_InterviewOrderServices.Update(order, ["Status"]); + var record = await _ghrh_InterviewRecordServices.QuerySingle(x => x.Round == order.Round && x.OrderId == order.Id); record.RemarkSz = input.Content; record.InterviewResult = input.IsPass; record.AssessTime = DateTime.Now; - await _ghrh_InterviewRecordServices.Update(record, ["AssessTime", "RemarkSz", "InterviewResult"]); + record.Status = DIC_INTERVIEW_ORDER_STATUS.HasInterview; + await _ghrh_InterviewRecordServices.Update(record, ["AssessTime", "Status", "RemarkSz", "InterviewResult"]); var usser = await GetUser(); await _ghrh_InterviewLogServices.Add(new InsertGhrh_InterviewLogInput() @@ -1613,6 +1622,9 @@ END"; if (entity == null) return ServiceResult.OprateFailed("无效的简历ID!"); + entity.Status = DIC_INTERVIEW_ORDER_STATUS.HasSendOffer; + await Update(entity, ["Status"]); + var order = await _ghrh_InterviewOrderServices.QuerySingle(x => x.ResumeId == id); order.Status = DIC_INTERVIEW_ORDER_STATUS.HasSendOffer; await _ghrh_InterviewOrderServices.Update(order, ["Status"]); @@ -1663,4 +1675,42 @@ END"; return ServiceResult.OprateSuccess(); } #endregion + + #region 变更是否报道 + public async Task ModifyIsOffer(long id, bool isOffer) + { + var entity = await base.QueryById(id); + if (entity == null) + return ServiceResult.OprateFailed("无效的简历ID!"); + + //if (entity.Status != DIC_INTERVIEW_ORDER_STATUS.HasSendOffer) + // return ServiceResult.OprateFailed("非【已发offer】状态下简历不可发送提醒!"); + + var order = await _ghrh_InterviewOrderServices.QuerySingle(x => x.ResumeId == id); + if (order != null) + { + var record = await _ghrh_InterviewRecordServices.QuerySingle(x => x.Round == order.Round && x.OrderId == order.Id); + if (isOffer) + { + entity.Status = DIC_INTERVIEW_ORDER_STATUS.HasOffer; + order.Status = DIC_INTERVIEW_ORDER_STATUS.HasOffer; + record.Status = DIC_INTERVIEW_ORDER_STATUS.HasOffer; + + } + + await Update(entity, ["Status"]); + await _ghrh_InterviewOrderServices.Update(order, ["Status"]); + await _ghrh_InterviewRecordServices.Update(record, ["Status"]); + + var usser = await GetUser(); + await _ghrh_InterviewLogServices.Add(new InsertGhrh_InterviewLogInput() + { + OrderId = order.Id, + RemarkSz = $"用户【{usser?.UserName ?? App.User.ID.ToString()}】变更是否报道!" + }); + } + + return ServiceResult.OprateSuccess(); + } + #endregion } \ No newline at end of file