|
|
@ -3,6 +3,7 @@ using DinkToPdf.Contracts; |
|
|
|
using Microsoft.AspNetCore.Hosting; |
|
|
|
using Microsoft.AspNetCore.Hosting; |
|
|
|
using Microsoft.Extensions.Hosting; |
|
|
|
using Microsoft.Extensions.Hosting; |
|
|
|
using System.IO.Compression; |
|
|
|
using System.IO.Compression; |
|
|
|
|
|
|
|
using Tiobon.Core.IServices; |
|
|
|
using static Tiobon.Core.Model.Consts; |
|
|
|
using static Tiobon.Core.Model.Consts; |
|
|
|
|
|
|
|
|
|
|
|
namespace Tiobon.Core.Services; |
|
|
|
namespace Tiobon.Core.Services; |
|
|
@ -45,6 +46,7 @@ public class Ghrh_ResumeServices : BaseServices<Ghrh_Resume, Ghrh_ResumeDto, Ins |
|
|
|
private readonly IGhrh_AssessConfigServices _ghrh_AssessConfigServices; |
|
|
|
private readonly IGhrh_AssessConfigServices _ghrh_AssessConfigServices; |
|
|
|
private readonly IGhrh_InterviewAssessServices _ghrh_InterviewAssessServices; |
|
|
|
private readonly IGhrh_InterviewAssessServices _ghrh_InterviewAssessServices; |
|
|
|
private readonly IGhrh_InterviewAssessDetailServices _ghrh_InterviewAssessDetailServices; |
|
|
|
private readonly IGhrh_InterviewAssessDetailServices _ghrh_InterviewAssessDetailServices; |
|
|
|
|
|
|
|
private readonly IGhrh_TemplateServices _ghrh_TemplateServices; |
|
|
|
private readonly IWebHostEnvironment Env; |
|
|
|
private readonly IWebHostEnvironment Env; |
|
|
|
private readonly IConverter _converter; |
|
|
|
private readonly IConverter _converter; |
|
|
|
private readonly IWebHostEnvironment _hostingEnvironment; |
|
|
|
private readonly IWebHostEnvironment _hostingEnvironment; |
|
|
@ -63,6 +65,7 @@ public class Ghrh_ResumeServices : BaseServices<Ghrh_Resume, Ghrh_ResumeDto, Ins |
|
|
|
IGhrh_AssessConfigServices ghrh_AssessConfigServices, |
|
|
|
IGhrh_AssessConfigServices ghrh_AssessConfigServices, |
|
|
|
IGhrh_InterviewAssessServices ghrh_InterviewAssessServices, |
|
|
|
IGhrh_InterviewAssessServices ghrh_InterviewAssessServices, |
|
|
|
IGhrh_InterviewAssessDetailServices ghrh_InterviewAssessDetailServices, |
|
|
|
IGhrh_InterviewAssessDetailServices ghrh_InterviewAssessDetailServices, |
|
|
|
|
|
|
|
IGhrh_TemplateServices ghrh_TemplateServices, |
|
|
|
IConverter converter, |
|
|
|
IConverter converter, |
|
|
|
IWebHostEnvironment hostingEnvironment, |
|
|
|
IWebHostEnvironment hostingEnvironment, |
|
|
|
IGhrh_ResumeWorkExpServices ghre_ResumeWorkExpServices, IWebHostEnvironment env) |
|
|
|
IGhrh_ResumeWorkExpServices ghre_ResumeWorkExpServices, IWebHostEnvironment env) |
|
|
@ -84,6 +87,7 @@ public class Ghrh_ResumeServices : BaseServices<Ghrh_Resume, Ghrh_ResumeDto, Ins |
|
|
|
_ghrh_AssessConfigServices = ghrh_AssessConfigServices; |
|
|
|
_ghrh_AssessConfigServices = ghrh_AssessConfigServices; |
|
|
|
_ghrh_InterviewAssessServices = ghrh_InterviewAssessServices; |
|
|
|
_ghrh_InterviewAssessServices = ghrh_InterviewAssessServices; |
|
|
|
_ghrh_InterviewAssessDetailServices = ghrh_InterviewAssessDetailServices; |
|
|
|
_ghrh_InterviewAssessDetailServices = ghrh_InterviewAssessDetailServices; |
|
|
|
|
|
|
|
_ghrh_TemplateServices = ghrh_TemplateServices; |
|
|
|
Env = env; |
|
|
|
Env = env; |
|
|
|
_converter = converter; |
|
|
|
_converter = converter; |
|
|
|
_hostingEnvironment = hostingEnvironment; |
|
|
|
_hostingEnvironment = hostingEnvironment; |
|
|
@ -2011,7 +2015,7 @@ END"; |
|
|
|
return ServiceResult.OprateSuccess(); |
|
|
|
return ServiceResult.OprateSuccess(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public async Task<ServiceResult> SendOffer(long id, string content) |
|
|
|
public async Task<ServiceResult> SendOffer(long id, Dictionary<string, string> extFields) |
|
|
|
{ |
|
|
|
{ |
|
|
|
var entity = await base.QueryById(id); |
|
|
|
var entity = await base.QueryById(id); |
|
|
|
if (entity == null) |
|
|
|
if (entity == null) |
|
|
@ -2027,6 +2031,7 @@ END"; |
|
|
|
|
|
|
|
|
|
|
|
await LogRecord(order.Id, "变更状态为:已发offer!"); |
|
|
|
await LogRecord(order.Id, "变更状态为:已发offer!"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var content = (await _ghrh_TemplateServices.Preview(id, null)).Data; |
|
|
|
#region 发送邮件 |
|
|
|
#region 发送邮件 |
|
|
|
var mailOutbox = new Ghrs_MailOutbox(); |
|
|
|
var mailOutbox = new Ghrs_MailOutbox(); |
|
|
|
mailOutbox.TOMail = entity.Email; |
|
|
|
mailOutbox.TOMail = entity.Email; |
|
|
@ -3140,30 +3145,37 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status"; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (order.Status == DIC_INTERVIEW_ORDER_STATUS.InterviewFail || order.Status == DIC_INTERVIEW_ORDER_STATUS.HasInterview) |
|
|
|
if (status == 1) |
|
|
|
return ServiceResult.OprateSuccess(); |
|
|
|
{ |
|
|
|
|
|
|
|
if (order.Status == DIC_INTERVIEW_ORDER_STATUS.InterviewFail || order.Status == DIC_INTERVIEW_ORDER_STATUS.HasInterview) |
|
|
|
|
|
|
|
return ServiceResult.OprateSuccess(); |
|
|
|
|
|
|
|
|
|
|
|
string Status = isPass == false ? DIC_INTERVIEW_ORDER_STATUS.InterviewFail : DIC_INTERVIEW_ORDER_STATUS.HasInterview; |
|
|
|
string Status = isPass == false ? DIC_INTERVIEW_ORDER_STATUS.InterviewFail : DIC_INTERVIEW_ORDER_STATUS.HasInterview; |
|
|
|
string InterviewResult = isPass == false ? "面试不通过" : "面试通过"; |
|
|
|
string InterviewResult = isPass == false ? "面试不通过" : "面试通过"; |
|
|
|
|
|
|
|
|
|
|
|
order.Status = Status; |
|
|
|
order.Status = Status; |
|
|
|
order.IsPass = isPass; |
|
|
|
order.IsPass = isPass; |
|
|
|
order.InterviewResult = InterviewResult; |
|
|
|
order.InterviewResult = InterviewResult; |
|
|
|
order.InterviewContent = evaluateContent; |
|
|
|
order.InterviewContent = evaluateContent; |
|
|
|
order.InterviewResultRemark = evaluateContent; |
|
|
|
order.InterviewResultRemark = evaluateContent; |
|
|
|
await _ghrh_InterviewOrderServices.Update(order, ["Status", "IsPass", "InterviewResult", "InterviewContent", "InterviewResultRemark"]); |
|
|
|
await _ghrh_InterviewOrderServices.Update(order, ["Status", "IsPass", "InterviewResult", "InterviewContent", "InterviewResultRemark"]); |
|
|
|
|
|
|
|
|
|
|
|
var record = await _ghrh_InterviewRecordServices.QuerySingle(x => x.Round == order.Round && x.OrderId == order.Id && x.StaffId == GetStaffId()); |
|
|
|
var record = await _ghrh_InterviewRecordServices.QuerySingle(x => x.Round == order.Round && x.OrderId == order.Id && x.StaffId == GetStaffId()); |
|
|
|
record.InterviewResult = InterviewResult; |
|
|
|
record.InterviewResult = InterviewResult; |
|
|
|
record.InterviewResultRemark = evaluateContent; |
|
|
|
record.InterviewResultRemark = evaluateContent; |
|
|
|
record.IsPass = isPass; |
|
|
|
record.IsPass = isPass; |
|
|
|
record.AssessTime = DateTime.Now; |
|
|
|
record.AssessTime = DateTime.Now; |
|
|
|
record.Status = Status; |
|
|
|
record.Status = Status; |
|
|
|
await _ghrh_InterviewRecordServices.Update(record, ["AssessTime", "Status", "IsPass", "InterviewResult", "InterviewResultRemark"]); |
|
|
|
await _ghrh_InterviewRecordServices.Update(record, ["AssessTime", "Status", "IsPass", "InterviewResult", "InterviewResultRemark"]); |
|
|
|
|
|
|
|
|
|
|
|
await UpdateResumeStatus(entity, Status); |
|
|
|
await UpdateResumeStatus(entity, Status); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
await LogRecord(order.Id, $"提交了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "通过" : "不通过")},内容:{evaluateContent}!"); |
|
|
|
|
|
|
|
await LogRecord(order.Id, $"提交了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "通过" : "不通过")},内容:{evaluateContent}!"); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
else |
|
|
|
|
|
|
|
await LogRecord(order.Id, $"提暂存了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "通过" : "不通过")},内容:{evaluateContent}!"); |
|
|
|
|
|
|
|
|
|
|
|
await LogRecord(order.Id, $"填写了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "通过" : "不通过")},内容:{evaluateContent}!"); |
|
|
|
|
|
|
|
return ServiceResult.OprateSuccess(); |
|
|
|
return ServiceResult.OprateSuccess(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|