|
|
@ -5,6 +5,7 @@ using SqlSugar; |
|
|
|
using System.Dynamic; |
|
|
|
using System.Dynamic; |
|
|
|
using Tiobon.Core.Common; |
|
|
|
using Tiobon.Core.Common; |
|
|
|
using Tiobon.Core.Common.Caches; |
|
|
|
using Tiobon.Core.Common.Caches; |
|
|
|
|
|
|
|
using Tiobon.Core.Common.DB.Dapper.Extensions; |
|
|
|
using Tiobon.Core.Common.Helper; |
|
|
|
using Tiobon.Core.Common.Helper; |
|
|
|
using Tiobon.Core.IRepository.Base; |
|
|
|
using Tiobon.Core.IRepository.Base; |
|
|
|
using Tiobon.Core.IServices; |
|
|
|
using Tiobon.Core.IServices; |
|
|
@ -400,7 +401,7 @@ public class Ghrh_ResumeServices : BaseServices<Ghrh_Resume, Ghrh_ResumeDto, Ins |
|
|
|
} |
|
|
|
} |
|
|
|
#endregion |
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
|
|
#region 查询简历是否存在 |
|
|
|
#region 查询招聘表单信息接口 |
|
|
|
public async Task<ServiceResult<dynamic>> Query(long id, int langId) |
|
|
|
public async Task<ServiceResult<dynamic>> Query(long id, int langId) |
|
|
|
{ |
|
|
|
{ |
|
|
|
dynamic obj = new ExpandoObject(); |
|
|
|
dynamic obj = new ExpandoObject(); |
|
|
@ -409,448 +410,185 @@ public class Ghrh_ResumeServices : BaseServices<Ghrh_Resume, Ghrh_ResumeDto, Ins |
|
|
|
var entity = await QueryById(id); |
|
|
|
var entity = await QueryById(id); |
|
|
|
|
|
|
|
|
|
|
|
#region Column |
|
|
|
#region Column |
|
|
|
var columnStr = @"[
|
|
|
|
string sql = @"DECLARE @ID BIGINT = 1
|
|
|
|
{ |
|
|
|
|
|
|
|
""tabName"": ""应聘信息"", |
|
|
|
BEGIN |
|
|
|
""tabKey"": ""a1"", |
|
|
|
DECLARE |
|
|
|
""type"": ""list"", |
|
|
|
@MasterTemplateID INT = 0, |
|
|
|
""children"": [ |
|
|
|
@TemplateType INT -- 母版设定ID |
|
|
|
{ |
|
|
|
SELECT @TemplateType = TemplateType |
|
|
|
""field"": ""PhotoUrl"", |
|
|
|
FROM Ghrh_ResumeTemplate |
|
|
|
""label"": ""照片"", |
|
|
|
WHERE ID = @ID |
|
|
|
""required"": ""true"", |
|
|
|
SELECT @MasterTemplateID = ID |
|
|
|
""elementType"": ""FileUpload"", |
|
|
|
FROM Ghrh_ResumeTemplate |
|
|
|
""dataSource"": """", |
|
|
|
WHERE IsEnable = 1 AND TemplateType = 1 |
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
SELECT * |
|
|
|
""sortNo"": 1, |
|
|
|
FROM (SELECT a.ID, |
|
|
|
""editable"": ""true"" |
|
|
|
a.ID |
|
|
|
}, |
|
|
|
ResumeTemplateInfoGroupID, |
|
|
|
{ |
|
|
|
b.ID |
|
|
|
""field"": ""StaffName"", |
|
|
|
ResumeInfoGroupID, |
|
|
|
""label"": ""姓名"", |
|
|
|
b.GroupName |
|
|
|
""required"": ""true"", |
|
|
|
tabName, |
|
|
|
""elementType"": ""Input"", |
|
|
|
b.GroupType |
|
|
|
""dataSource"": """", |
|
|
|
tabKey, |
|
|
|
""dataType"": ""string"", |
|
|
|
b.TableName, |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
b.TablePKIDName, -- 是否可挑选栏位 |
|
|
|
""sortNo"": 1, |
|
|
|
ISNULL (a.IsDisplay, 0) |
|
|
|
""editable"": ""false"" |
|
|
|
isDisplay, |
|
|
|
}, |
|
|
|
isnull (a.SortNo, b.SortNo) |
|
|
|
{ |
|
|
|
SortNo, |
|
|
|
""field"": ""IdCardNo"", |
|
|
|
CASE WHEN b.GroupType = 'Base' THEN 'list' ELSE 'block' END |
|
|
|
""label"": ""身份证号码"", |
|
|
|
AS type, |
|
|
|
""required"": ""true"", |
|
|
|
-- case when ISNULL(a.IsDisplay,0)=0 then '' |
|
|
|
""elementType"": ""Input"", |
|
|
|
CASE |
|
|
|
""dataSource"": """", |
|
|
|
WHEN 1 = 2 |
|
|
|
""dataType"": ""string"", |
|
|
|
THEN |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
'' |
|
|
|
""sortNo"": 1, |
|
|
|
ELSE |
|
|
|
""editable"": ""true"" |
|
|
|
CASE |
|
|
|
}, |
|
|
|
WHEN b.GroupType = 'Base' -- 读取各模板设定 |
|
|
|
{ |
|
|
|
THEN |
|
|
|
""field"": ""Mobile"", |
|
|
|
isnull |
|
|
|
""label"": ""手机号码"", |
|
|
|
( |
|
|
|
""required"": ""true"", |
|
|
|
(SELECT pp.ColumnName field, |
|
|
|
""elementType"": ""Input"", |
|
|
|
pp.ResumeInfoColumnName label, |
|
|
|
""dataSource"": """", |
|
|
|
pp.IsRequired required, |
|
|
|
""dataType"": ""string"", |
|
|
|
pp.ColumnType elementType, |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
CASE |
|
|
|
""sortNo"": 1, |
|
|
|
WHEN pp.DataSourceType = |
|
|
|
""editable"": ""false"" |
|
|
|
'ParaDetailNo' |
|
|
|
}, |
|
|
|
THEN |
|
|
|
{ |
|
|
|
(SELECT 'TBParaDetail_' |
|
|
|
""field"": ""Gender"", |
|
|
|
+ ParaTypeNo |
|
|
|
""label"": ""性别"", |
|
|
|
+ '_' |
|
|
|
""required"": ""true"", |
|
|
|
+ ParaMasterNo |
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
FROM Ghrs_ParaMaster |
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_Gender"", |
|
|
|
WHERE ParaMasterId = |
|
|
|
""dataType"": ""string"", |
|
|
|
pp.DataSource) |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
ELSE |
|
|
|
""sortNo"": 1, |
|
|
|
NULL |
|
|
|
""editable"": ""true"" |
|
|
|
END dataSource, |
|
|
|
}, |
|
|
|
pp.DataType dataType, |
|
|
|
{ |
|
|
|
pp.MultipleSelect multipleSelect, |
|
|
|
""field"": ""Nation"", |
|
|
|
kk.SortNo sortNo, |
|
|
|
""label"": ""民族"", |
|
|
|
pp.Placeholder placeholder, |
|
|
|
""required"": ""true"", |
|
|
|
pp.Editable editable |
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
FROM Ghrh_ResumeTemplateInfoGroupColumn kk, |
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_A02"", |
|
|
|
Ghrh_ResumeInfoColumn pp |
|
|
|
""dataType"": ""string"", |
|
|
|
WHERE kk.ResumeTemplateInfoGroupID = a.ID |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
-- a.ResumeTemplateInfoGroupID |
|
|
|
""sortNo"": 1, |
|
|
|
AND kk.ResumeInfoColumnID = pp.ID |
|
|
|
""editable"": ""true"" |
|
|
|
AND kk.IsDisplay = 1 |
|
|
|
}, |
|
|
|
AND pp.IsEnable = 1 |
|
|
|
{ |
|
|
|
AND kk.IsEnable = 1 |
|
|
|
""field"": ""NativePlace"", |
|
|
|
order by kk.SortNo |
|
|
|
""label"": ""籍贯"", |
|
|
|
FOR JSON PATH, INCLUDE_NULL_VALUES), |
|
|
|
""required"": ""true"", |
|
|
|
'') |
|
|
|
""elementType"": ""Input"", |
|
|
|
WHEN b.GroupType = 'Photo' -- 读取各模板设定 |
|
|
|
""dataSource"": """", |
|
|
|
THEN |
|
|
|
""dataType"": ""string"", |
|
|
|
(SELECT PhotoType |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
FROM Ghrh_ResumeTemplate |
|
|
|
""sortNo"": 1, |
|
|
|
WHERE ResumeTemplateID = @MasterTemplateID |
|
|
|
""editable"": ""true"" |
|
|
|
FOR JSON PATH, INCLUDE_NULL_VALUES) |
|
|
|
}, |
|
|
|
WHEN b.GroupType NOT IN ('Base', 'Photo') -- 读取母版的设定 |
|
|
|
{ |
|
|
|
THEN |
|
|
|
""field"": ""MaritalStatus"", |
|
|
|
isnull |
|
|
|
""label"": ""婚姻状况"", |
|
|
|
( |
|
|
|
""required"": ""true"", |
|
|
|
(SELECT pp.ColumnName field, |
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
pp.ResumeInfoColumnName label, |
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_A03"", |
|
|
|
pp.IsRequired required, |
|
|
|
""dataType"": ""string"", |
|
|
|
pp.ColumnType elementType, |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
CASE |
|
|
|
""sortNo"": 1, |
|
|
|
WHEN pp.DataSourceType = |
|
|
|
""editable"": ""true"" |
|
|
|
'ParaDetailNo' |
|
|
|
}, |
|
|
|
THEN |
|
|
|
{ |
|
|
|
(SELECT 'TBParaDetail_' |
|
|
|
""field"": ""PoliticStatus"", |
|
|
|
+ ParaTypeNo |
|
|
|
""label"": ""政治面貌"", |
|
|
|
+ '_' |
|
|
|
""required"": ""true"", |
|
|
|
+ ParaMasterNo |
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
FROM Ghrs_ParaMaster |
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_A04"", |
|
|
|
WHERE ParaMasterId = |
|
|
|
""dataType"": ""string"", |
|
|
|
pp.DataSource) |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
ELSE |
|
|
|
""sortNo"": 1, |
|
|
|
NULL |
|
|
|
""editable"": ""true"" |
|
|
|
END dataSource, |
|
|
|
} |
|
|
|
pp.DataType dataType, |
|
|
|
] |
|
|
|
pp.MultipleSelect multipleSelect, |
|
|
|
}, |
|
|
|
kk.SortNo sortNo, |
|
|
|
{ |
|
|
|
pp.Placeholder placeholder, |
|
|
|
""tabName"": ""个人信息"", |
|
|
|
pp.Editable editable |
|
|
|
""tabKey"": ""a2"", |
|
|
|
FROM Ghrh_ResumeTemplateInfoGroupColumn kk, |
|
|
|
""type"": ""list"", |
|
|
|
Ghrh_ResumeInfoColumn pp |
|
|
|
""children"": [ |
|
|
|
WHERE kk.ResumeTemplateID = |
|
|
|
{ |
|
|
|
@MasterTemplateID |
|
|
|
""field"": ""CertificateType"", |
|
|
|
AND kk.ResumeInfoGroupId = b.Id |
|
|
|
""label"": ""证照类型"", |
|
|
|
-- b.ResumeInfoGroupId |
|
|
|
""required"": ""true"", |
|
|
|
AND pp.Id = kk.ResumeInfoColumnId |
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
AND kk.IsDisplay = 1 |
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_D51"", |
|
|
|
AND pp.IsEnable = 1 |
|
|
|
""dataType"": ""string"", |
|
|
|
AND kk.IsEnable = 1 |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
order by kk.SortNo |
|
|
|
""sortNo"": 1, |
|
|
|
FOR JSON PATH, INCLUDE_NULL_VALUES), |
|
|
|
""editable"": ""true"" |
|
|
|
'') |
|
|
|
}, |
|
|
|
END |
|
|
|
{ |
|
|
|
END |
|
|
|
""field"": ""RegisteredType"", |
|
|
|
children1 |
|
|
|
""label"": ""户口性质"", |
|
|
|
FROM Ghrh_ResumeInfoGroup b |
|
|
|
""required"": ""true"", |
|
|
|
LEFT JOIN Ghrh_ResumeTemplateInfoGroup a |
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
ON a.ResumeInfoGroupId = b.ID |
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_A08"", |
|
|
|
AND a.IsEnable = 1 |
|
|
|
""dataType"": ""string"", |
|
|
|
AND a.ResumeTemplateID = @ID |
|
|
|
""multipleSelect"": ""false"", |
|
|
|
WHERE b.IsEnable = 1) a |
|
|
|
""sortNo"": 1, |
|
|
|
WHERE a.IsDisplay = 1 |
|
|
|
""editable"": ""true"" |
|
|
|
-- order by ISNULL(a.IsDisplay,0) desc,isnull(a.SortNo,b.SortNo) -- 显示的放上面, 不显示的放下面, 再按照序号排序 |
|
|
|
}, |
|
|
|
ORDER BY a.SortNo ASC |
|
|
|
{ |
|
|
|
END";
|
|
|
|
""field"": ""IDCardBegin"", |
|
|
|
var columns = await Db.Ado.SqlQueryAsync<ResumeFormColumn>(sql); |
|
|
|
""label"": ""证件有效期开始"", |
|
|
|
columns.ForEach(x => |
|
|
|
""required"": ""false"", |
|
|
|
{ |
|
|
|
""elementType"": ""DatePicker"", |
|
|
|
if (x.children1.IsNotEmptyOrNull()) |
|
|
|
""dataSource"": """", |
|
|
|
x.children = JsonHelper.JsonToObj<List<ResumeFormColumnChildren>>(x.children1); |
|
|
|
""dataType"": ""date"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
x.children1 = null; |
|
|
|
""sortNo"": 1, |
|
|
|
}); |
|
|
|
""editable"": ""true"" |
|
|
|
obj.Columns = columns; |
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""IDCardEnd"", |
|
|
|
|
|
|
|
""label"": ""证件有效期结束"", |
|
|
|
|
|
|
|
""required"": ""false"", |
|
|
|
|
|
|
|
""elementType"": ""DatePicker"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""date"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""RegisteredAddress"", |
|
|
|
|
|
|
|
""label"": ""身份证地址"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""NowAddress"", |
|
|
|
|
|
|
|
""label"": ""现居住地址"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""TitleType"", |
|
|
|
|
|
|
|
""label"": ""职称类型/级别"", |
|
|
|
|
|
|
|
""required"": ""false"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""IsStay"", |
|
|
|
|
|
|
|
""label"": ""是否住宿"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
|
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_A12"", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""CarNo"", |
|
|
|
|
|
|
|
""label"": ""车牌号"", |
|
|
|
|
|
|
|
""required"": ""false"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""tabName"": ""家庭关系"", |
|
|
|
|
|
|
|
""tabKey"": ""a3"", |
|
|
|
|
|
|
|
""type"": ""block"", |
|
|
|
|
|
|
|
""children"": [ |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""RelationName"", |
|
|
|
|
|
|
|
""label"": ""姓名"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""RelationAge"", |
|
|
|
|
|
|
|
""label"": ""年龄"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""RelationType"", |
|
|
|
|
|
|
|
""label"": ""与本人关系"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
|
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_SocialRelationType"", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""WorkCompany"", |
|
|
|
|
|
|
|
""label"": ""工作单位"", |
|
|
|
|
|
|
|
""required"": ""false"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""Telephone"", |
|
|
|
|
|
|
|
""label"": ""联系电话"", |
|
|
|
|
|
|
|
""required"": ""false"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""tabName"": ""教育背景"", |
|
|
|
|
|
|
|
""tabKey"": ""a4"", |
|
|
|
|
|
|
|
""type"": ""block"", |
|
|
|
|
|
|
|
""children"": [ |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""BeginDate"", |
|
|
|
|
|
|
|
""label"": ""开始时间"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""DatePicker"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""date"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""EndDate"", |
|
|
|
|
|
|
|
""label"": ""结束时间"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""DatePicker"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""date"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""SchoolName"", |
|
|
|
|
|
|
|
""label"": ""毕业学校"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""DeptName"", |
|
|
|
|
|
|
|
""label"": ""专业"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""DegreeLevel"", |
|
|
|
|
|
|
|
""label"": ""学历"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""ApiSelect"", |
|
|
|
|
|
|
|
""dataSource"": ""TBParaDetail_GhrStaff_EducationalBGLevel"", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""tabName"": ""工作经历"", |
|
|
|
|
|
|
|
""tabKey"": ""a5"", |
|
|
|
|
|
|
|
""type"": ""block"", |
|
|
|
|
|
|
|
""children"": [ |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""BeginDate"", |
|
|
|
|
|
|
|
""label"": ""开始时间"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""DatePicker"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""date"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""EndDate"", |
|
|
|
|
|
|
|
""label"": ""结束时间"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""DatePicker"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""date"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""CompanyName"", |
|
|
|
|
|
|
|
""label"": ""工作单位"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""TitleName"", |
|
|
|
|
|
|
|
""label"": ""职位"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""SalaryAmount"", |
|
|
|
|
|
|
|
""label"": ""月薪"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
}, |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
""field"": ""SeparationReason"", |
|
|
|
|
|
|
|
""label"": ""离职原因"", |
|
|
|
|
|
|
|
""required"": ""true"", |
|
|
|
|
|
|
|
""elementType"": ""Input"", |
|
|
|
|
|
|
|
""dataSource"": """", |
|
|
|
|
|
|
|
""dataType"": ""string"", |
|
|
|
|
|
|
|
""multipleSelect"": ""false"", |
|
|
|
|
|
|
|
""sortNo"": 1, |
|
|
|
|
|
|
|
""editable"": ""true"" |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
] |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
]";
|
|
|
|
|
|
|
|
obj.Column = JsonHelper.JsonToObj<List<ResumeFormColumn>>(columnStr); |
|
|
|
|
|
|
|
#endregion |
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
|
|
#region Data |
|
|
|
#region Data |
|
|
|
dynamic resumeData = new ExpandoObject(); |
|
|
|
|
|
|
|
resumeData.PhotoUrl = entity?.PhotoUrl; |
|
|
|
sql = @"DECLARE @ResumeTemplateID BIGINT = 1
|
|
|
|
resumeData.StaffName = entity?.StaffName; |
|
|
|
|
|
|
|
resumeData.IdCardNo = entity?.IdCardNo; |
|
|
|
SELECT pp.ColumnName field |
|
|
|
resumeData.Mobile = entity?.Mobile; |
|
|
|
FROM Ghrh_ResumeTemplateInfoGroupColumn kk, Ghrh_ResumeInfoColumn pp |
|
|
|
resumeData.Gender = entity?.Gender; |
|
|
|
WHERE kk.ResumeTemplateInfoGroupID = |
|
|
|
resumeData.Nation = entity?.Nation; |
|
|
|
(SELECT b.Id |
|
|
|
resumeData.NativePlace = entity?.NativePlace; |
|
|
|
FROM Ghrh_ResumeInfoGroup a |
|
|
|
resumeData.MaritalStatus = entity?.MaritalStatus; |
|
|
|
JOIN Ghrh_ResumeTemplateInfoGroup b |
|
|
|
resumeData.PoliticStatus = entity?.PoliticStatus; |
|
|
|
ON b.ResumeInfoGroupId = a.ID |
|
|
|
Data.a1 = resumeData; |
|
|
|
WHERE a.GroupType = 'Base' |
|
|
|
|
|
|
|
AND a.IsEnable = 1 |
|
|
|
resumeData = new ExpandoObject(); |
|
|
|
AND b.ResumeTemplateID = @ResumeTemplateID) |
|
|
|
resumeData.CertificateType = entity?.CertificateType; |
|
|
|
-- a.ResumeTemplateInfoGroupID |
|
|
|
resumeData.RegisteredType = entity?.RegisteredType; |
|
|
|
AND kk.ResumeInfoColumnID = pp.ID |
|
|
|
resumeData.IDCardBegin = entity?.IDCardBegin; |
|
|
|
AND kk.IsDisplay = 1 |
|
|
|
resumeData.IDCardEnd = entity?.IDCardEnd; |
|
|
|
AND pp.IsEnable = 1 |
|
|
|
resumeData.RegisteredAddress = entity?.RegisteredAddress; |
|
|
|
AND kk.IsEnable = 1 |
|
|
|
resumeData.NowAddress = entity?.NowAddress; |
|
|
|
ORDER BY kk.SortNo";
|
|
|
|
resumeData.TitleType = entity?.TitleType; |
|
|
|
|
|
|
|
resumeData.IsStay = entity?.IsStay; |
|
|
|
var columnNames = await Db.Ado.SqlQueryAsync<string>(sql); |
|
|
|
resumeData.CarNo = entity?.CarNo; |
|
|
|
columnNames = columnNames.Distinct().ToList(); |
|
|
|
|
|
|
|
var dicts = new Dictionary<string, object>(); |
|
|
|
Data.a2 = resumeData; |
|
|
|
columnNames.ForEach(x => |
|
|
|
Data.a3 = await _ghre_ResumeHomeServices.QueryDto(x => x.ResumeId != null && x.ResumeId == id);//家庭关系 |
|
|
|
{ |
|
|
|
Data.a4 = await _ghre_ResumeEduBGServices.QueryDto(x => x.ResumeId != null && x.ResumeId == id);//教育背景 |
|
|
|
var value = entity.GetPropertyValue(x); |
|
|
|
Data.a5 = await _ghre_ResumeWorkExpServices.QueryDto(x => x.ResumeId != null && x.ResumeId == id);//工作经历 |
|
|
|
dicts.Add(x, value); |
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
Data.Base = dicts; |
|
|
|
|
|
|
|
Data.Family = await _ghre_ResumeHomeServices.QueryDto(x => x.ResumeId != null && x.ResumeId == id);//家庭关系 |
|
|
|
|
|
|
|
Data.Education = await _ghre_ResumeEduBGServices.QueryDto(x => x.ResumeId != null && x.ResumeId == id);//教育背景 |
|
|
|
|
|
|
|
Data.WorkExp = await _ghre_ResumeWorkExpServices.QueryDto(x => x.ResumeId != null && x.ResumeId == id);//工作经历 |
|
|
|
|
|
|
|
|
|
|
|
obj.Data = Data; |
|
|
|
obj.Data = Data; |
|
|
|
#endregion |
|
|
|
#endregion |
|
|
@ -868,8 +606,24 @@ public class Ghrh_ResumeServices : BaseServices<Ghrh_Resume, Ghrh_ResumeDto, Ins |
|
|
|
obj.Guide = Guide; |
|
|
|
obj.Guide = Guide; |
|
|
|
#endregion |
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#region 承诺 |
|
|
|
|
|
|
|
var promiseList = new List<string> |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
"本人诚实告知未思有各类传染性疾病,若经体检后发现有不符合本公司要求的项目,本人愿意放弃此次应征机会!", |
|
|
|
|
|
|
|
"本人正式入职之前,已不与任何单位存在劳动关系,并承诺在工作中不使用曾经服务过的工作单位的技术和商业秘密,如有违背,由此引起的法律纠纷及经济责任由本人承担。" |
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
obj.Promise = promiseList; |
|
|
|
|
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
|
|
return ServiceResult<dynamic>.OprateSuccess("查询成功", obj); |
|
|
|
return ServiceResult<dynamic>.OprateSuccess("查询成功", obj); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
#endregion |
|
|
|
#endregion |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#region 简历提交接口 |
|
|
|
|
|
|
|
public async Task<ServiceResult> Submit(long id, string status, ResumeFormColumnSubmit resume) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
return ServiceResult.OprateSuccess(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
#endregion |
|
|
|
} |
|
|
|
} |