master
xiaochanghai 7 months ago
parent 3b76ffebc2
commit d58953adbb
  1. 62
      Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs

@ -2652,7 +2652,10 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
#region Body
var staffId = GetStaffId();
var assessDetails = await _ghrh_InterviewAssessDetailServices.Query(x => x.InterviewAssessId == assess.Id);
var assessDetails = new List<Ghrh_InterviewAssessDetail>();
if (assess != null)
assessDetails = await _ghrh_InterviewAssessDetailServices.Query(x => x.InterviewAssessId == assess.Id);
var body = new JArray();
assessConfigs.ForEach(x =>
{
@ -2671,7 +2674,7 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
obj.Add(new JProperty("Score" + (i + 1), assessDetail.AssessContent.ObjToInt()));
else
obj.Add(new JProperty("Score" + (i + 1), null));
if (record.StaffId == staffId)
if (record.StaffId == staffId && record.Round == order.Round)
obj.Add(new JProperty("CanEdit" + (i + 1), true));
else
obj.Add(new JProperty("CanEdit" + (i + 1), false));
@ -2694,7 +2697,7 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
obj.Add(new JProperty("Score" + (i + 1), assessDetail.AssessContent.ObjToInt()));
else
obj.Add(new JProperty("Score" + (i + 1), null));
if (record.StaffId == staffId)
if (record.StaffId == staffId && record.Round == order.Round)
obj.Add(new JProperty("CanEdit" + (i + 1), true));
else
obj.Add(new JProperty("CanEdit" + (i + 1), false));
@ -2715,7 +2718,7 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
obj.Add(new JProperty("Score" + (i + 1), assessDetail.AssessContent));
else
obj.Add(new JProperty("Score" + (i + 1), null));
if (record.StaffId == staffId)
if (record.StaffId == staffId && record.Round == order.Round)
obj.Add(new JProperty("CanEdit" + (i + 1), true));
else
obj.Add(new JProperty("CanEdit" + (i + 1), false));
@ -2787,7 +2790,8 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
var staffId = GetStaffId();
var records = await _ghrh_InterviewRecordServices.Query(x => x.OrderId == order.Id, "Round ASC");
var isPass = false;
var evaluateContent = string.Empty;
await _ghrh_InterviewAssessDetailServices.Delete(x => x.InterviewAssessId == interviewAssessId && x.StaffId == staffId);
for (int i = 0; i < input.Count; i++)
{
@ -2800,8 +2804,16 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
{
if (dic["CanEdit" + (j + 1)].ObjToBool() != true)
continue;
var assessContent = dic["Score" + (j + 1)].ObjToString();
if (records[j].Round == order.Round && assessConfigId.ObjToString() == "IsPass")
{
if (assessContent == "1")
isPass = true;
}
if (records[j].Round == order.Round && assessConfigId.ObjToString() == "EvaluateContent")
{
evaluateContent = assessContent;
}
await _ghrh_InterviewAssessDetailServices.Add(new InsertGhrh_InterviewAssessDetailInput()
{
InterviewAssessId = interviewAssessId,
@ -2813,30 +2825,30 @@ 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)
return ServiceResult.OprateSuccess();
string Status = isPass == false ? DIC_INTERVIEW_ORDER_STATUS.InterviewFail : DIC_INTERVIEW_ORDER_STATUS.HasInterview;
string InterviewResult = isPass == false ? "面试不通过" : "面试通过";
//string Status = input.IsPass == false ? DIC_INTERVIEW_ORDER_STATUS.InterviewFail : DIC_INTERVIEW_ORDER_STATUS.HasInterview;
//string InterviewResult = input.IsPass == false ? "面试不通过" : "面试通过";
//var order = await _ghrh_InterviewOrderServices.QuerySingle(x => x.ResumeId == id);
//order.Status = Status;
//order.IsPass = input.IsPass;
//order.InterviewResult = InterviewResult;
//order.InterviewContent = input.Content;
//order.InterviewResultRemark = input.Content;
//await _ghrh_InterviewOrderServices.Update(order, ["Status", "IsPass", "InterviewResult", "InterviewContent", "InterviewResultRemark"]);
order.Status = Status;
order.IsPass = isPass;
order.InterviewResult = InterviewResult;
order.InterviewContent = evaluateContent;
order.InterviewResultRemark = evaluateContent;
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());
//record.InterviewResult = InterviewResult;
//record.InterviewResultRemark = input.Content;
//record.IsPass = input.IsPass;
//record.AssessTime = DateTime.Now;
//record.Status = Status;
//await _ghrh_InterviewRecordServices.Update(record, ["AssessTime", "Status", "IsPass", "InterviewResult", "InterviewResultRemark"]);
var record = await _ghrh_InterviewRecordServices.QuerySingle(x => x.Round == order.Round && x.OrderId == order.Id && x.StaffId == GetStaffId());
record.InterviewResult = InterviewResult;
record.InterviewResultRemark = evaluateContent;
record.IsPass = isPass;
record.AssessTime = DateTime.Now;
record.Status = Status;
await _ghrh_InterviewRecordServices.Update(record, ["AssessTime", "Status", "IsPass", "InterviewResult", "InterviewResultRemark"]);
//await UpdateResumeStatus(entity, Status);
await UpdateResumeStatus(entity, Status);
//await LogRecord(order.Id, $"填写了面试评估,轮数:{order.Round},是否通过:{(input.IsPass == true ? "通过" : "不通过")},内容:{input.Content}!");
await LogRecord(order.Id, $"填写了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "" : "")},内容:{evaluateContent}!");
return ServiceResult.OprateSuccess();
}

Loading…
Cancel
Save