招聘需求汇总

录用名单
master
xiaochanghai 6 months ago
parent f8c499024f
commit 4449debfe5
  1. 6
      Tiobon.Core.Api/Controllers/Ghrh/Ghrh_HumanRequestController.cs
  2. 8
      Tiobon.Core.Api/Controllers/Ghrh/Ghrh_ResumeController.cs
  3. 5
      Tiobon.Core.IServices/Ghrh/IGhrh_HumanRequestServices.cs
  4. 2
      Tiobon.Core.IServices/Ghrh/IGhrh_ResumeServices.cs
  5. 4
      Tiobon.Core.Model/View/Ghrh/Ghrh_HumanRequest.Dto.View.cs
  6. 2
      Tiobon.Core.Model/View/Ghrh/Ghrh_Resume.Dto.View.cs
  7. 2
      Tiobon.Core.Services/CommonServices.cs
  8. 61
      Tiobon.Core.Services/Ghrh/Ghrh_HumanRequestServices.cs
  9. 68
      Tiobon.Core.Services/Ghrh/Ghrh_ResumeServices.cs

@ -29,6 +29,12 @@ public class Ghrh_HumanRequestController : BaseController<IGhrh_HumanRequestServ
else else
return await _service.QueryFilterPage(body, $"Status ='{status}' AND WorkID IS NULL"); return await _service.QueryFilterPage(body, $"Status ='{status}' AND WorkID IS NULL");
} }
[HttpPost, Route("QuerySummary")]
public async Task<ServicePageResult<Ghrh_HumanRequestDto>> QueryFilterSummaryPage([FromBody] QueryBody body)
{
return await _service.QueryFilterSummaryPage(body);
}
#endregion #endregion
#region 状态修改 #region 状态修改

@ -554,4 +554,12 @@ public class Ghrh_ResumeController : BaseController<IGhrh_ResumeServices, Ghrh_R
public async Task<ServiceResult<dynamic>> QueryWorkStationStatisticsChart(int langId) => await _service.QueryWorkStationStatisticsChart(langId); public async Task<ServiceResult<dynamic>> QueryWorkStationStatisticsChart(int langId) => await _service.QueryWorkStationStatisticsChart(langId);
#endregion #endregion
#region 录用名单
[HttpPost, Route("QueryHireList")]
public async Task<ServicePageResult<Ghrh_ResumeDto>> QueryHireList([FromBody] QueryBody body)
{
return await _service.QueryHireList(body);
}
#endregion
} }

@ -1,4 +1,5 @@
using Tiobon.Core.IServices.BASE; using Tiobon.Core.Common;
using Tiobon.Core.IServices.BASE;
using Tiobon.Core.Model; using Tiobon.Core.Model;
using Tiobon.Core.Model.Models; using Tiobon.Core.Model.Models;
@ -12,4 +13,6 @@ public interface IGhrh_HumanRequestServices : IBaseServices<Ghrh_HumanRequest, G
Task<ServiceResult> UpdateStatus(InsertGhrh_HumanRequestInput input, string status); Task<ServiceResult> UpdateStatus(InsertGhrh_HumanRequestInput input, string status);
Task<ServiceResult<long>> InsertByStatus(InsertGhrh_HumanRequestInput insertModel, string status); Task<ServiceResult<long>> InsertByStatus(InsertGhrh_HumanRequestInput insertModel, string status);
Task<ServicePageResult<Ghrh_HumanRequestDto>> QueryFilterSummaryPage(QueryBody filter);
} }

@ -88,4 +88,6 @@ public interface IGhrh_ResumeServices : IBaseServices<Ghrh_Resume, Ghrh_ResumeDt
Task<ServiceResult<JArray>> QueryWorkstationInit(int langId , string menuName); Task<ServiceResult<JArray>> QueryWorkstationInit(int langId , string menuName);
Task<ServiceResult<dynamic>> QueryWorkStationStatisticsChart(int langId = 1); Task<ServiceResult<dynamic>> QueryWorkStationStatisticsChart(int langId = 1);
Task<ServicePageResult<Ghrh_ResumeDto>> QueryHireList(QueryBody filter);
} }

@ -127,5 +127,9 @@ public class Ghrh_HumanRequestDto : Ghrh_HumanRequest
/// 经验要求 /// 经验要求
/// </summary> /// </summary>
public List<Ghrh_HumanRequestExperience> Experience { get; set; } public List<Ghrh_HumanRequestExperience> Experience { get; set; }
public int InCount { get; set; }
public int OutCount { get; set; }
public string Year { get; set; }
public string Month { get; set; }
} }

@ -186,7 +186,7 @@ public class Ghrh_ResumeDto : Ghrh_Resume
/// 生日 /// 生日
/// </summary> /// </summary>
public string Birthday1 { get; set; } public string Birthday1 { get; set; }
public string Indate1 { get; set; }
/// <summary> /// <summary>
/// 录用公司 /// 录用公司
/// </summary> /// </summary>

@ -1810,7 +1810,9 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
// }); // });
//} //}
break; break;
case "F_InterviewHireList":
case "F_OfferTemplate": case "F_OfferTemplate":
case "F_InterviewRequestSummary":
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "NewYN").FirstOrDefault(); toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "NewYN").FirstOrDefault();
if (toolbar != null) toolbar.fnKey = "TBD1YN"; if (toolbar != null) toolbar.fnKey = "TBD1YN";
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "UpdateYN").FirstOrDefault(); toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "UpdateYN").FirstOrDefault();

@ -97,7 +97,11 @@ public class Ghrh_HumanRequestServices : BaseServices<Ghrh_HumanRequest, Ghrh_Hu
#region 查询 #region 查询
public override async Task<ServicePageResult<Ghrh_HumanRequestDto>> QueryFilterPage(QueryBody filter, string condition, bool? IsEnable = true) public override async Task<ServicePageResult<Ghrh_HumanRequestDto>> QueryFilterPage(QueryBody filter, string condition, bool? IsEnable = true)
{ {
var result = await base.QueryFilterPage(filter, $"dbo.[FUserDeptPriv] ({App.User.ID}, DeptId, getdate())=1", IsEnable); if (condition.IsNotEmptyOrNull())
condition += $" AND dbo.[FUserDeptPriv] ({App.User.ID}, DeptId, getdate())=1";
else
condition = $"dbo.[FUserDeptPriv] ({App.User.ID}, DeptId, getdate())=1";
var result = await base.QueryFilterPage(filter, condition, IsEnable);
var entitys = result.result.DT_TableDataT1; var entitys = result.result.DT_TableDataT1;
var deptIds = entitys.Where(x => x.DeptId != null).Select(x => x.DeptId).ToList(); var deptIds = entitys.Where(x => x.DeptId != null).Select(x => x.DeptId).ToList();
@ -227,6 +231,61 @@ WHERE A.IsEnable = 1 AND A.Id = {entitys[i].YearHumanId}");
result.result.DT_TableDataT1 = DT_TableDataT1; result.result.DT_TableDataT1 = DT_TableDataT1;
return result; return result;
} }
public async Task<ServicePageResult<Ghrh_HumanRequestDto>> QueryFilterSummaryPage(QueryBody filter)
{
if (string.IsNullOrWhiteSpace(filter.orderBy))
filter.orderBy = "YearMonth DESC";
if (filter.pageSize == 0)
filter.pageSize = 10000;
Type entityType = typeof(Ghrh_InterviewOrder);
var countSql = @$" SELECT COUNT(1) FROM Ghrh_HumanRequestSummary_V";
var sql1 = @$"DECLARE @langId INT = {filter.langId};";
var sql = @$" SELECT *
FROM Ghrh_HumanRequestSummary_V A";
string conditions = " WHERE 1=1 ";
var properties = entityType.GetGenericProperties();
if (filter.jsonParam != null)
foreach (JProperty jProperty in filter.jsonParam.Properties())
{
var name = jProperty.Name;
var value = jProperty.Value.ToString();
if (name == "page" || name == "pageSize")
continue;
if (!string.IsNullOrWhiteSpace(value))
conditions = DealConditions(conditions, name, value);
}
sql += conditions;
countSql += conditions;
int total = await Db.Ado.GetIntAsync(countSql);
sql = "SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY " + filter.orderBy + ") NUM FROM (SELECT * FROM (" + sql + " ";
sql += ") A ) B ) C";
sql += " WHERE NUM <= " + filter.pageNum * filter.pageSize + " AND NUM >" + (filter.pageNum - 1) * filter.pageSize;
sql = sql1 + sql;
var entitys = await Db.Ado.SqlQueryAsync<Ghrh_HumanRequestDto>(sql);
var result = new ServicePageResult<Ghrh_HumanRequestDto>(filter.pageNum, total, filter.pageSize, entitys);
var list = result.result.DT_TableDataT1;
var tagIds = new List<long>();
tagIds = tagIds.Distinct().ToList();
var tags = await Db.Queryable<Ghrh_ResumeTag>().Where(x => tagIds.Contains(x.Id)).ToListAsync();
for (int i = 0; i < list.Count; i++)
{
}
return result;
}
#endregion #endregion
#region 更新 #region 更新

@ -134,6 +134,7 @@ public class Ghrh_ResumeServices : BaseServices<Ghrh_Resume, Ghrh_ResumeDto, Ins
#endregion #endregion
x.Birthday1 = DateTimeHelper.ConvertToDayString(x.Birthday); x.Birthday1 = DateTimeHelper.ConvertToDayString(x.Birthday);
x.WorkYears = x.WorkYears ?? 0; x.WorkYears = x.WorkYears ?? 0;
x.Indate1 = DateTimeHelper.ConvertToDayString(x.Indate);
if (x.IsPass != null) if (x.IsPass != null)
x.IsPassLabel = x.IsPass == true ? "通过" : "不通过"; x.IsPassLabel = x.IsPass == true ? "通过" : "不通过";
@ -4375,7 +4376,7 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1
{ {
new JProperty("Count", group.Where(x=>x.Status=="WaitInterview").FirstOrDefault()?.Count??0), new JProperty("Count", group.Where(x=>x.Status=="WaitInterview").FirstOrDefault()?.Count??0),
new JProperty("Unit",peopleText), new JProperty("Unit",peopleText),
new JProperty("MenuName","F_ESS_Candidate"), new JProperty("MenuName","F_ESS_Interview"),
new JProperty("TabKey","WaitInterview"), new JProperty("TabKey","WaitInterview"),
}; };
item = new JObject item = new JObject
@ -4400,12 +4401,12 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1
{ {
new JProperty("Count", sum), new JProperty("Count", sum),
new JProperty("Unit",peopleText), new JProperty("Unit",peopleText),
new JProperty("MenuName","F_ESS_Candidate"), new JProperty("MenuName","F_ESS_Interview"),
new JProperty("TabKey","HasInterview"), new JProperty("TabKey","HasInterview"),
}; };
item = new JObject item = new JObject
{ {
new JProperty("CanMore", 0), new JProperty("CanMore", 1),
new JProperty("ColNum", 6), new JProperty("ColNum", 6),
new JProperty("RowNum", 0), new JProperty("RowNum", 0),
new JProperty("Height", 17.2), new JProperty("Height", 17.2),
@ -4429,12 +4430,12 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1
Detail = new JObject { Detail = new JObject {
new JProperty("Count", group1.Where(x=>x.Status=="HasOffer").FirstOrDefault()?.Count??0), new JProperty("Count", group1.Where(x=>x.Status=="HasOffer").FirstOrDefault()?.Count??0),
new JProperty("Unit",peopleText), new JProperty("Unit",peopleText),
new JProperty("MenuName","F_ESS_Candidate"), new JProperty("MenuName","F_ESS_Hire"),
new JProperty("TabKey","HasOffer"), new JProperty("TabKey","HasOffer"),
}; };
item = new JObject item = new JObject
{ {
new JProperty("CanMore", 0), new JProperty("CanMore", 1),
new JProperty("ColNum", 8), new JProperty("ColNum", 8),
new JProperty("RowNum", 0), new JProperty("RowNum", 0),
new JProperty("Height", 17.2), new JProperty("Height", 17.2),
@ -4688,6 +4689,63 @@ WHERE A.IsEnable = 1 AND C.IsEnable = 1
} }
#endregion #endregion
#region 录用名单
public async Task<ServicePageResult<Ghrh_ResumeDto>> QueryHireList(QueryBody filter)
{
if (string.IsNullOrWhiteSpace(filter.orderBy))
filter.orderBy = "InDate DESC";
if (filter.pageSize == 0)
filter.pageSize = 10000;
var countSql = @$" SELECT COUNT(1) FROM Ghrh_ResumeHireList_V";
var sql1 = @$"DECLARE @langId INT = {filter.langId};";
var sql = @$" SELECT *
FROM Ghrh_ResumeHireList_V A";
string conditions = " WHERE 1=1 ";
if (filter.jsonParam != null)
foreach (JProperty jProperty in filter.jsonParam.Properties())
{
var name = jProperty.Name;
var value = jProperty.Value.ToString();
if (name == "page" || name == "pageSize")
continue;
if (!string.IsNullOrWhiteSpace(value))
conditions = DealConditions(conditions, name, value);
}
sql += conditions;
countSql += conditions;
int total = await Db.Ado.GetIntAsync(countSql);
sql = "SELECT * FROM (SELECT *, ROW_NUMBER() OVER (ORDER BY " + filter.orderBy + ") NUM FROM (SELECT * FROM (" + sql + " ";
sql += ") A ) B ) C";
sql += " WHERE NUM <= " + filter.pageNum * filter.pageSize + " AND NUM >" + (filter.pageNum - 1) * filter.pageSize;
sql = sql1 + sql;
var entitys = await Db.Ado.SqlQueryAsync<Ghrh_ResumeDto>(sql);
var result = new ServicePageResult<Ghrh_ResumeDto>(filter.pageNum, total, filter.pageSize, entitys);
var list = result.result.DT_TableDataT1;
var tagIds = new List<long>();
tagIds = tagIds.Distinct().ToList();
var tags = await Db.Queryable<Ghrh_ResumeTag>().Where(x => tagIds.Contains(x.Id)).ToListAsync();
for (int i = 0; i < list.Count; i++)
{
await SetLabel(list[i]);
}
return result;
}
#endregion
#region 通用方法 #region 通用方法
/// <summary> /// <summary>
/// 记录日志 /// 记录日志

Loading…
Cancel
Save