简历查看页面接口开发

master
xiaochanghai 6 months ago
parent 7409fe365b
commit 4c32357f09
  1. 10
      Tiobon.Core.Api/Tiobon.Core.Model.xml
  2. 10
      Tiobon.Core.Model/ViewModels/Extend/ResumeViewTab.cs
  3. 20
      Tiobon.Core.Services/Ghrh/Ghrh_OfferApplyOrderServices.cs
  4. 39
      Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs
  5. 17
      Tiobon.Core.Services/Ghrh/Ghrh_YearHumanSettingsServices.cs

@ -29432,6 +29432,16 @@
人力需求单Id
</summary>
</member>
<member name="P:Tiobon.Core.Model.ViewModels.Extend.ResumeLogItem.FlowSignID">
<summary>
FlowSignID
</summary>
</member>
<member name="P:Tiobon.Core.Model.ViewModels.Extend.ResumeLogItem.WorkId">
<summary>
workId
</summary>
</member>
<member name="P:Tiobon.Core.Model.ViewModels.Extend.ResumeLogItem.Attachments">
<summary>
附件

@ -365,6 +365,16 @@ public class ResumeLogItem
/// </summary>
public long? RequestId { get; set; }
/// <summary>
/// FlowSignID
/// </summary>
public long? FlowSignID { get; set; }
/// <summary>
/// workId
/// </summary>
public long? WorkId { get; set; }
/// <summary>
/// 附件
/// </summary>

@ -1,4 +1,6 @@
namespace Tiobon.Core.Services;
using Tiobon.Core.IServices;
namespace Tiobon.Core.Services;
/// <summary>
/// 录用审批单 (服务)
@ -150,6 +152,22 @@ public class Ghrh_OfferApplyOrderServices : BaseServices<Ghrh_OfferApplyOrder, G
if (message.IsNotEmptyOrNull())
throw new Exception(message);
var order = await Db.Queryable<Ghrh_InterviewOrder>().FirstAsync(x => x.ResumeId == entity.ResumeId);
var dict = new Dictionary<string, object>
{
{ "Id", SnowFlakeSingle.Instance.NextId() },
{ "CreateBy", App.User.ID },
{ "CreateTime", DateTime.Now },
{ "InterviewOrderId", order.Id },
{ "ResumeId", entity.ResumeId },
{ "Source", "ApplyOffer" },
{ "UserId", App.User.ID },
{ "UserName", App.User.Name },
{ "RemarkSz", "发起录用审批!" },
{ "ReverseI2", id }
};
await Db.Insertable(dict).AS("Ghrh_InterviewLog").ExecuteCommandAsync();
#endregion
return id;

@ -2368,7 +2368,7 @@ END";
}
#endregion
#region 发起录用审批
#region 发起录用审批-作废
public async Task<ServiceResult> ApplyOfferApproval(List<long> ids)
{
for (int i = 0; i < ids.Count; i++)
@ -2951,10 +2951,11 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
var order = new Ghrh_InterviewOrder();
if (orderId is null)
{
order = await _ghrh_InterviewOrderServices.QuerySingle(x => x.ResumeId == id);
if (order == null)
return ServiceResult<dynamic>.OprateFailed("无效的简历ID!");
orderId = order.Id;
}
else
order = await Db.Ado.SqlQuerySingleAsync<Ghrh_InterviewOrder>($"SELECT * from Ghrh_InterviewOrder where Id={orderId} ");
@ -3360,7 +3361,7 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
await UpdateResumeStatus(entity, Status);
await LogRecord(order.Id, $"提交了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "" : "")},内容:{evaluateContent}!", id, null, "AssessInterview");
await LogRecord(order.Id, $"提交了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "" : "")},内容:{evaluateContent}!", id, null, "TempAssessInterview");
}
else
await LogRecord(order.Id, $"暂存了面试评估,轮数:{order.Round},是否通过:{(isPass == true ? "" : "")},内容:{evaluateContent}!", id, null, "AssessInterview");
@ -3553,28 +3554,40 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1 AND C.Status = A.Status";
var interviewLog = interviewLogs[j];
var attachments = new List<Ghrs_Attachment>();
var item = new ResumeLogItem()
{
Time = interviewLog.CreateTime,
Operator = interviewLog.UserName,
Content = interviewLog.RemarkSz,
Source = interviewLog.Source,
Attachments = attachments,
};
switch (interviewLog.Source)
{
case "Recommended":
attachments = await Db.Queryable<Ghrs_Attachment>().Where(x => x.TableName == interviewLog.InterviewOrderId.ObjToString()).ToListAsync();
item.RequestId = interviewLog.Source == "Recommended" ? orders[i].RequestId : null;
break;
case "ScheduleInterview":
attachments = await Db.Queryable<Ghrs_Attachment>().Where(x => x.TableName == interviewLog.InterviewRecordId.ObjToString()).ToListAsync();
break;
case "ApplyOffer":
if (interviewLog.ReverseI2 != null && interviewLog.ReverseI2 != 0)
{
var order = await Db.Queryable<Ghrh_OfferApplyOrder>().FirstAsync(x => x.Id == interviewLog.ReverseI2);
if (order != null)
{
item.WorkId = order.WorkID;
item.FlowSignID = await Db.Ado.GetIntAsync($"Select FlowSignID from Ghrw_FlowSign where WorkID ={order.WorkID} and IsBegin=1");
}
}
break;
default:
break;
}
items.Add(new ResumeLogItem()
{
Time = interviewLog.CreateTime,
Operator = interviewLog.UserName,
Content = interviewLog.RemarkSz,
Source = interviewLog.Source,
Attachments = attachments,
RequestId = interviewLog.Source == "Recommended" ? orders[i].RequestId : null
});
items.Add(item);
}
logs.Add(new ResumeLog()
{

@ -20,6 +20,17 @@ public class Ghrh_YearHumanSettingsServices : BaseServices<Ghrh_YearHumanSetting
_commonServices = commonServices;
}
public override async Task<long> Add(InsertGhrh_YearHumanSettingsInput entity)
{
entity.WorkState = 1;
var result = await base.Add(entity);
return result;
}
public override async Task<ServicePageResult<Ghrh_YearHumanSettingsDto>> QueryFilterPage(QueryBody filter, string condition, bool? IsEnable = true)
{
var result = await base.QueryFilterPage(filter, "WorkState = 1", IsEnable);
@ -118,8 +129,8 @@ public class Ghrh_YearHumanSettingsServices : BaseServices<Ghrh_YearHumanSetting
if (x.GroupName == "预算编制数")
{
int month = x.field.Replace("M", null).Replace("F", null).ObjToInt();
x.label = year + "-" + x.field.Replace("M", null).Replace("F", null);
int month = x.field.Replace("M", null).Replace("_F", null).ObjToInt();
x.label = year + "-" + x.field.Replace("M", null).Replace("_F", null);
if (month == 12)
year++;
}
@ -219,7 +230,7 @@ public class Ghrh_YearHumanSettingsServices : BaseServices<Ghrh_YearHumanSetting
}
#region Excel导入
public override async Task<ServiceResult<ExcelData>> ImportExcel(IFormFile file)

Loading…
Cancel
Save