CoreCms.Net.IRepository/IBaseRepository.cs
CoreCms.Net.IRepository/baifenbinfa/IJob_ApplicantProfileRepository.cs
@@ -35,7 +35,12 @@ /// <returns></returns> Task<AdminUiCallBack> InsertAsync(Job_ApplicantProfile entity); /// <summary> /// 导航出入 /// </summary> /// <param name="entity"></param> /// <returns></returns> Task<AdminUiCallBack> NvInsertAsync(Job_ApplicantProfile entity); /// <summary> /// 重写异步更新方法 /// </summary> CoreCms.Net.IRepository/baifenbinfa/IJob_jobSetingRepository.cs
@@ -95,5 +95,11 @@ Expression<Func<Job_jobSeting, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1, int pageSize = 20, bool blUseNoLock = false); /// <summary> /// /// </summary> /// <returns></returns> Task<List<Job_jobSeting>> QueryAsyncALL(); } } CoreCms.Net.Model/Entities/baifenbingfa/job/ApplicantProfile.cs
@@ -3,6 +3,8 @@ using SqlSugar; using System; using System.Collections.Generic; using System.ComponentModel; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -34,12 +36,12 @@ /// <summary> /// 应聘者的全名。 /// </summary> public string name { get; set; } public string? name { get; set; } /// <summary> /// 应聘者的性别。 /// </summary> public string gender { get; set; } public string? gender { get; set; } /// <summary> /// 应聘者的身高(单位:厘米)。 @@ -54,18 +56,18 @@ /// <summary> /// 应聘者的出生日期。 /// </summary> public DateTime dateOfBirth { get; set; } public DateTime? dateOfBirth { get; set; } /// <summary> /// 应聘者的毕业学校名称。 /// </summary> [SugarColumn(IsNullable =true)] public string graduatingSchool { get; set; } public string? graduatingSchool { get; set; } /// <summary> /// 应聘者的最高学历。 /// </summary> public string educationLevel { get; set; } public string? educationLevel { get; set; } /// <summary> /// 应聘者的专业名称。 @@ -76,7 +78,7 @@ /// <summary> /// 是否吸烟。 /// </summary> public string smokes { get; set; } public string? smokes { get; set; } /// <summary> /// 驾驶技术等级(如新手、熟练、专业)。 @@ -145,6 +147,7 @@ /// <summary> /// 申请正在审核中。 /// </summary> UnderReview, /// <summary> @@ -176,7 +179,7 @@ /// 工作经历 /// </summary> [SqlCodeFirst] public class Job_EmploymentRecord public partial class Job_EmploymentRecord { /// <summary> /// 主键ID,自增长 @@ -186,7 +189,7 @@ /// <summary> /// 工作开始日期。 /// </summary> public DateTime startDate { get; set; } public DateTime? startDate { get; set; } /// <summary> /// 工作结束日期,如果是当前工作,则为空或表示至今的日期。 @@ -196,24 +199,27 @@ /// <summary> /// 工作单位的名称。 /// </summary> public string workplace { get; set; } [SugarColumn(IsNullable = true)] public string? workplace { get; set; } /// <summary> /// 在该单位担任的职务或职位。 /// </summary> [SugarColumn(Length =512)] public string position { get; set; } [SugarColumn(Length =512, IsNullable = true)] public string? position { get; set; } /// <summary> /// 每月的工资或薪水。 /// </summary> public decimal monthlySalary { get; set; } [SugarColumn(IsNullable = true)] public decimal? monthlySalary { get; set; } /// <summary> /// 离职的原因。 /// </summary> [SugarColumn(Length = 512)] public string reasonForLeaving { get; set; } [SugarColumn(Length = 512, IsNullable = true)] public string? reasonForLeaving { get; set; } /// <summary> @@ -239,22 +245,26 @@ /// <summary> /// 姓名 /// </summary> public string name { get; set; } [SugarColumn(IsNullable =true)] public string? name { get; set; } /// <summary> /// 称谓 /// </summary> public string title { get; set; } [SugarColumn(IsNullable = true)] public string? title { get; set; } /// <summary> /// 年龄 /// </summary> public int age { get; set; } [SugarColumn(IsNullable =true)] public int? age { get; set; } /// <summary> /// 工作单位及职务 /// </summary> public string workUnitAndPosition { get; set; } [SugarColumn(IsNullable = true)] public string? workUnitAndPosition { get; set; } } } CoreCms.Net.Model/Entities/baifenbingfa/job/ApplicantProfilePartial.cs
@@ -25,13 +25,27 @@ /// 工作简历 /// </summary> [Navigate(NavigateType.OneToMany, nameof(Job_EmploymentRecord.ApplicantProfileId))] public List<Job_EmploymentRecord> employmentRecords{ get; set; } public List<Job_EmploymentRecord>? employmentRecords{ get; set; } /// <summary> /// 工作简历 /// 家庭成员 /// </summary> [Display(Name = "洽谈时间")] [Display(Name = "家庭成员")] [Navigate(NavigateType.OneToMany, nameof(Job_FamilyMember.ApplicantProfileId))] public List<Job_FamilyMember> FamilyMembers { get; set; } public List<Job_FamilyMember>? FamilyMembers { get; set; } } public partial class Job_EmploymentRecord { /// <summary> /// 起始结束时间 /// </summary> [SugarColumn(IsIgnore =true)] [Required] public List<DateTime> StartEndDateTimes { get; set; } } } CoreCms.Net.Repository/baifenbingfa/Job_ApplicantProfileRepository.cs
@@ -21,6 +21,7 @@ using CoreCms.Net.Model.ViewModels.UI; using SqlSugar; using CoreCms.Net.Model.Entities.baifenbingfa.jon; using Org.BouncyCastle.Crypto; namespace CoreCms.Net.Repository { @@ -263,6 +264,17 @@ return list; } public async Task<AdminUiCallBack> NvInsertAsync(Job_ApplicantProfile entity) { var jm = new AdminUiCallBack(); var bl = await DbClient.InsertNav<Job_ApplicantProfile>(entity).Include(x=>x.FamilyMembers).Include(x=>x.employmentRecords).ExecuteCommandAsync(); jm.code = bl ? 0 : 1; jm.msg = bl ? GlobalConstVars.InsertSuccess : GlobalConstVars.InsertFailure; return jm; } #endregion } CoreCms.Net.Repository/baifenbingfa/Job_jobSetingRepository.cs
@@ -218,6 +218,12 @@ return list; } public async Task<List<Job_jobSeting>> QueryAsyncALL() { var page = await DbClient.Queryable<Job_jobSeting>().Where(x => x.isEN == true).ToListAsync(); return page; } #endregion } CoreCms.Net.Services/baifenbingfa/Job_ApplicantProfileServices.cs
@@ -49,7 +49,7 @@ /// <returns></returns> public async Task<AdminUiCallBack> InsertAsync(Job_ApplicantProfile entity) { return await _dal.InsertAsync(entity); return await _dal.NvInsertAsync(entity); } /// <summary> CoreCms.Net.Web.Admin/Controllers/baifenbingfa/Job_jobSetingController.cs
@@ -32,6 +32,8 @@ using SqlSugar; using CoreCms.Net.Model.Entities.baifenbingfa.jon; using CoreCms.Net.Web.Admin.Infrastructure; using CoreCms.Net.Services; using CoreCms.Net.Auth.HttpContextUser; namespace CoreCms.Net.Web.Admin.Controllers { @@ -47,16 +49,21 @@ { private readonly IWebHostEnvironment _webHostEnvironment; private readonly IJob_jobSetingServices _Job_jobSetingServices; private readonly IHttpContextUser _user; /// <summary> /// 构造函数 ///</summary> public Job_jobSetingController(IWebHostEnvironment webHostEnvironment ,IJob_jobSetingServices Job_jobSetingServices ,ICoreCmsUserLogServices CoreCmsUserLogServices ,IHttpContextUser User ) { _webHostEnvironment = webHostEnvironment; _Job_jobSetingServices = Job_jobSetingServices; _user = User; } #region 获取列表============================================================ @@ -250,6 +257,8 @@ [Description("创建提交")] public async Task<AdminUiCallBack> DoCreate([FromBody]Job_jobSeting entity) { entity.createBy = _user?.Name??"系统或者其他"; entity.createTime = DateTime.Now; var jm = await _Job_jobSetingServices.InsertAsync(entity); return jm; } @@ -292,6 +301,8 @@ [Description("编辑提交")] public async Task<AdminUiCallBack> DoEdit([FromBody]Job_jobSeting entity) { entity.upDataBy = _user?.Name ?? "系统或者其他"; entity.upDataTime = DateTime.Now; var jm = await _Job_jobSetingServices.UpdateAsync(entity); return jm; } CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/job_jobseting/create.html
@@ -1,89 +1,51 @@ <script type="text/html" template lay-done="layui.data.done(d);"> <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-Job_jobSeting-createForm" id="LAY-app-Job_jobSeting-createForm"> <div class="layui-form-item"> <label for="id" class="layui-form-label layui-form-required">主键ID</label> <div class="layui-input-block"> <input type="number" min="0" max="999999" name="id" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入主键ID" lay-reqText="请输入主键ID并为数字" /> </div> </div> <div class="layui-form-item"> <label for="position" class="layui-form-label layui-form-required">职位名称,用于描述工作岗位的职责和角色。</label> <label for="position" class="layui-form-label layui-form-required">职位名称</label> <div class="layui-input-block"> <input name="position" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入职位名称,用于描述工作岗位的职责和角色。" lay-reqText="请输入职位名称,用于描述工作岗位的职责和角色。" /> </div> </div> <div class="layui-form-item"> <label for="quantity" class="layui-form-label layui-form-required">需求人数,表示公司招聘该职位的计划招聘数量。</label> <label for="quantity" class="layui-form-label layui-form-required">需求人数。</label> <div class="layui-input-block"> <input type="number" min="0" max="999999" name="quantity" lay-verType="tips" lay-verify="required|number" class="layui-input" value="1" placeholder="请输入需求人数,表示公司招聘该职位的计划招聘数量。" lay-reqText="请输入需求人数,表示公司招聘该职位的计划招聘数量。并为数字" /> </div> </div> <div class="layui-form-item"> <label for="location" class="layui-form-label layui-form-required">工作地点,包括城市和可能的具体办公地址。</label> <label for="location" class="layui-form-label layui-form-required">工作地点</label> <div class="layui-input-block"> <input name="location" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入工作地点,包括城市和可能的具体办公地址。" lay-reqText="请输入工作地点,包括城市和可能的具体办公地址。" /> </div> </div> <div class="layui-form-item"> <label for="jobDescription" class="layui-form-label layui-form-required">工作描述,包含职位的主要职责、任务以及期望的工作成果。</label> <label for="jobDescription" class="layui-form-label layui-form-required">工作描述</label> <div class="layui-input-block"> <input name="jobDescription" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入工作描述,包含职位的主要职责、任务以及期望的工作成果。" lay-reqText="请输入工作描述,包含职位的主要职责、任务以及期望的工作成果。" /> </div> </div> <div class="layui-form-item"> <label for="requirements" class="layui-form-label layui-form-required">岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。</label> <label for="requirements" class="layui-form-label layui-form-required">岗位要求</label> <div class="layui-input-block"> <input name="requirements" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。" lay-reqText="请输入岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。" /> </div> </div> <div class="layui-form-item" pane> <label for="isEN" class="layui-form-label layui-form-required">是否有效</label> <label for="isEN" class="layui-form-label layui-form-required">是否上架</label> <div class="layui-input-block"> <input type="checkbox" lay-filter="switch" name="isEN" lay-skin="switch" lay-text="开启|关闭"> <input type="checkbox" lay-filter="switch" name="isEN" lay-skin="switch" lay-text="上架|下架"> </div> </div> <div class="layui-form-item"> <label for="createTime" class="layui-form-label layui-form-required">建立时间</label> <div class="layui-input-block"> <input name="createTime" id="createTime-Job_jobSeting-createTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入建立时间" lay-reqText="请输入建立时间" /> </div> </div> <div class="layui-form-item"> <label for="upDataTime" class="layui-form-label layui-form-required">修改时间</label> <div class="layui-input-block"> <input name="upDataTime" id="createTime-Job_jobSeting-upDataTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入修改时间" lay-reqText="请输入修改时间" /> </div> </div> <div class="layui-form-item"> <label for="createBy" class="layui-form-label layui-form-required">创建人</label> <div class="layui-input-block"> <input name="createBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入创建人" lay-reqText="请输入创建人" /> </div> </div> <div class="layui-form-item"> <label for="upDataBy" class="layui-form-label layui-form-required">修改人</label> <div class="layui-input-block"> <input name="upDataBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入修改人" lay-reqText="请输入修改人" /> </div> </div> <div class="layui-form-item" pane> <label for="isdelete" class="layui-form-label layui-form-required">删除标志</label> <div class="layui-input-block"> <input type="checkbox" lay-filter="switch" name="isdelete" lay-skin="switch" lay-text="开启|关闭"> </div> </div> <div class="layui-form-item text-right core-hidden"> <input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-Job_jobSeting-createForm-submit" id="LAY-app-Job_jobSeting-createForm-submit" value="确认添加"> CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/job_jobseting/details.html
@@ -1,3 +1,12 @@ <!-- * @FilePath: details.html * @Author: 小飞侠 * @Date: 2024-05-15 14:27:56 * @LastEditors: * @LastEditTime: 2024-05-15 17:01:59 * Copyright: 2024 MinTinge CO.,LTD. All Rights Reserved. * @Descripttion: 写入你的描述 --> <script type="text/html" template lay-done="layui.data.done(d);"> <table class="layui-table layui-form" lay-filter="LAY-app-Job_jobSeting-detailsForm" id="LAY-app-Job_jobSeting-detailsForm"> <colgroup> @@ -6,18 +15,11 @@ </colgroup> <tbody> <tr> <td> <label for="id">主键ID</label> </td> <td> {{ d.params.data.id || '' }} </td> </tr> <tr> <td> <label for="position">职位名称,用于描述工作岗位的职责和角色。</label> <label for="position">职位名称</label> </td> <td> {{ d.params.data.position || '' }} @@ -26,7 +28,7 @@ <tr> <td> <label for="quantity">需求人数,表示公司招聘该职位的计划招聘数量。</label> <label for="quantity">需求人数</label> </td> <td> {{ d.params.data.quantity || '' }} @@ -35,7 +37,7 @@ <tr> <td> <label for="location">工作地点,包括城市和可能的具体办公地址。</label> <label for="location">工作地点</label> </td> <td> {{ d.params.data.location || '' }} @@ -44,7 +46,7 @@ <tr> <td> <label for="jobDescription">工作描述,包含职位的主要职责、任务以及期望的工作成果。</label> <label for="jobDescription">工作描述</label> </td> <td> {{ d.params.data.jobDescription || '' }} @@ -53,7 +55,7 @@ <tr> <td> <label for="requirements">岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。</label> <label for="requirements">岗位要求</label> </td> <td> {{ d.params.data.requirements || '' }} @@ -62,10 +64,10 @@ <tr> <td> <label for="isEN">是否有效</label> <label for="isEN">是否上架</label> </td> <td> <input type="checkbox" disabled name="isEN" value="{{d.params.data.isEN}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="isEN" {{ d.params.data.isEN ? 'checked' : '' }}> <input type="checkbox" disabled name="isEN" value="{{d.params.data.isEN}}" lay-skin="switch" lay-text="上架|下架" lay-filter="isEN" {{ d.params.data.isEN ? 'checked' : '' }}> </td> </tr> @@ -78,41 +80,7 @@ </td> </tr> <tr> <td> <label for="upDataTime">修改时间</label> </td> <td> {{ d.params.data.upDataTime || '' }} </td> </tr> <tr> <td> <label for="createBy">创建人</label> </td> <td> {{ d.params.data.createBy || '' }} </td> </tr> <tr> <td> <label for="upDataBy">修改人</label> </td> <td> {{ d.params.data.upDataBy || '' }} </td> </tr> <tr> <td> <label for="isdelete">删除标志</label> </td> <td> <input type="checkbox" disabled name="isdelete" value="{{d.params.data.isdelete}}" lay-skin="switch" lay-text="开启|关闭" lay-filter="isdelete" {{ d.params.data.isdelete ? 'checked' : '' }}> </td> </tr> </tbody> </table> CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/job_jobseting/edit.html
@@ -1,87 +1,47 @@ <script type="text/html" template lay-done="layui.data.sendParams(d);"> <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-Job_jobSeting-editForm" id="LAY-app-Job_jobSeting-editForm"> <input type="hidden" name="id" value="{{d.params.data.id || '' }}" /> <div class="layui-form-item"> <label for="id" class="layui-form-label layui-form-required">主键ID</label> <div class="layui-input-block"> <input type="number" min="0" max="999999" name="id" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.id || '' }}" placeholder="请输入主键ID" lay-reqText="请输入主键ID并为数字" /> </div> </div> <div class="layui-form-item"> <label for="position" class="layui-form-label layui-form-required">职位名称,用于描述工作岗位的职责和角色。</label> <label for="position" class="layui-form-label layui-form-required">职位名称</label> <div class="layui-input-block"> <input name="position" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入职位名称,用于描述工作岗位的职责和角色。" lay-reqText="请输入职位名称,用于描述工作岗位的职责和角色。" value="{{d.params.data.position || '' }}" /> </div> </div> <div class="layui-form-item"> <label for="quantity" class="layui-form-label layui-form-required">需求人数,表示公司招聘该职位的计划招聘数量。</label> <label for="quantity" class="layui-form-label layui-form-required">需求人数</label> <div class="layui-input-block"> <input type="number" min="0" max="999999" name="quantity" lay-verType="tips" lay-verify="required|number" class="layui-input" value="{{d.params.data.quantity || '' }}" placeholder="请输入需求人数,表示公司招聘该职位的计划招聘数量。" lay-reqText="请输入需求人数,表示公司招聘该职位的计划招聘数量。并为数字" /> </div> </div> <div class="layui-form-item"> <label for="location" class="layui-form-label layui-form-required">工作地点,包括城市和可能的具体办公地址。</label> <label for="location" class="layui-form-label layui-form-required">工作地点</label> <div class="layui-input-block"> <input name="location" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入工作地点,包括城市和可能的具体办公地址。" lay-reqText="请输入工作地点,包括城市和可能的具体办公地址。" value="{{d.params.data.location || '' }}" /> </div> </div> <div class="layui-form-item"> <label for="jobDescription" class="layui-form-label layui-form-required">工作描述,包含职位的主要职责、任务以及期望的工作成果。</label> <label for="jobDescription" class="layui-form-label layui-form-required">工作描述</label> <div class="layui-input-block"> <input name="jobDescription" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入工作描述,包含职位的主要职责、任务以及期望的工作成果。" lay-reqText="请输入工作描述,包含职位的主要职责、任务以及期望的工作成果。" value="{{d.params.data.jobDescription || '' }}" /> </div> </div> <div class="layui-form-item"> <label for="requirements" class="layui-form-label layui-form-required">岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。</label> <label for="requirements" class="layui-form-label layui-form-required">岗位要求</label> <div class="layui-input-block"> <input name="requirements" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。" lay-reqText="请输入岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。" value="{{d.params.data.requirements || '' }}" /> </div> </div> <div class="layui-form-item" pane> <label for="isEN" class="layui-form-label layui-form-required">是否有效</label> <label for="isEN" class="layui-form-label layui-form-required">是否上架</label> <div class="layui-input-block"> <input type="checkbox" lay-filter="switch" name="isEN" {{ d.params.data.isEN ? 'checked' : '' }} lay-skin="switch" lay-text="开启|关闭"> </div> </div> <div class="layui-form-item"> <label for="createTime" class="layui-form-label layui-form-required">建立时间</label> <div class="layui-input-block"> <input name="createTime" id="editTime-Job_jobSeting-createTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入建立时间" lay-reqText="请输入建立时间" value="{{d.params.data.createTime || '' }}"/> </div> </div> <div class="layui-form-item"> <label for="upDataTime" class="layui-form-label layui-form-required">修改时间</label> <div class="layui-input-block"> <input name="upDataTime" id="editTime-Job_jobSeting-upDataTime" type="text" lay-verType="tips" lay-verify="required|datetime" class="layui-input" placeholder="请输入修改时间" lay-reqText="请输入修改时间" value="{{d.params.data.upDataTime || '' }}"/> </div> </div> <div class="layui-form-item"> <label for="createBy" class="layui-form-label layui-form-required">创建人</label> <div class="layui-input-block"> <input name="createBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入创建人" lay-reqText="请输入创建人" value="{{d.params.data.createBy || '' }}" /> </div> </div> <div class="layui-form-item"> <label for="upDataBy" class="layui-form-label layui-form-required">修改人</label> <div class="layui-input-block"> <input name="upDataBy" lay-verType="tips" lay-verify="required" class="layui-input" placeholder="请输入修改人" lay-reqText="请输入修改人" value="{{d.params.data.upDataBy || '' }}" /> </div> </div> <div class="layui-form-item" pane> <label for="isdelete" class="layui-form-label layui-form-required">删除标志</label> <div class="layui-input-block"> <input type="checkbox" lay-filter="switch" name="isdelete" {{ d.params.data.isdelete ? 'checked' : '' }} lay-skin="switch" lay-text="开启|关闭"> <input type="checkbox" lay-filter="switch" name="isEN" {{ d.params.data.isEN ? 'checked' : '' }} lay-skin="switch" lay-text="上架|下架"> </div> </div> CoreCms.Net.Web.Admin/wwwroot/views/baifenbingfa/job_jobseting/index.html
@@ -21,44 +21,16 @@ <div class="layui-form coreshop-toolbar-search-form"> <div class="layui-form-item"> <div class="layui-inline"> <label class="layui-form-label" for="id">主键ID</label> <label class="layui-form-label" for="position">职位名称</label> <div class="layui-input-inline"> <input type="text" name="id" placeholder="请输入主键ID" class="layui-input"> <input type="text" name="position" placeholder="请输入职位名称" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="position">职位名称,用于描述工作岗位的职责和角色。</label> <div class="layui-input-inline"> <input type="text" name="position" placeholder="请输入职位名称,用于描述工作岗位的职责和角色。" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="quantity">需求人数,表示公司招聘该职位的计划招聘数量。</label> <div class="layui-input-inline"> <input type="text" name="quantity" placeholder="请输入需求人数,表示公司招聘该职位的计划招聘数量。" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="location">工作地点,包括城市和可能的具体办公地址。</label> <div class="layui-input-inline"> <input type="text" name="location" placeholder="请输入工作地点,包括城市和可能的具体办公地址。" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="jobDescription">工作描述,包含职位的主要职责、任务以及期望的工作成果。</label> <div class="layui-input-inline"> <input type="text" name="jobDescription" placeholder="请输入工作描述,包含职位的主要职责、任务以及期望的工作成果。" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="requirements">岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。</label> <div class="layui-input-inline"> <input type="text" name="requirements" placeholder="请输入岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="isEN">是否有效</label> <label class="layui-form-label" for="isEN">是否上架</label> <div class="layui-input-inline"> <select name="isEN"> <option value="">请选择</option> @@ -73,34 +45,7 @@ <input type="text" name="createTime" id="searchTime-Job_jobSeting-createTime" placeholder="请输入建立时间" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="upDataTime">修改时间</label> <div class="layui-input-inline" style="width: 260px;"> <input type="text" name="upDataTime" id="searchTime-Job_jobSeting-upDataTime" placeholder="请输入修改时间" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="createBy">创建人</label> <div class="layui-input-inline"> <input type="text" name="createBy" placeholder="请输入创建人" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="upDataBy">修改人</label> <div class="layui-input-inline"> <input type="text" name="upDataBy" placeholder="请输入修改人" class="layui-input"> </div> </div> <div class="layui-inline"> <label class="layui-form-label" for="isdelete">删除标志</label> <div class="layui-input-inline"> <select name="isdelete"> <option value="">请选择</option> <option value="True">是</option> <option value="False">否</option> </select> </div> </div> <div class="layui-inline"> <button class="layui-btn layui-btn-sm" lay-submit lay-filter="LAY-app-Job_jobSeting-search"><i class="layui-icon layui-icon-search"></i>筛选</button> </div> @@ -181,18 +126,15 @@ cols: [ [ { type: "checkbox", fixed: "left" }, { field: 'id', title: '主键ID', width: 60, sort: false}, { field: 'position', title: '职位名称,用于描述工作岗位的职责和角色。', sort: false,width: 105 }, { field: 'quantity', title: '需求人数,表示公司招聘该职位的计划招聘数量。', sort: false,width: 105 }, { field: 'location', title: '工作地点,包括城市和可能的具体办公地址。', sort: false,width: 105 }, { field: 'jobDescription', title: '工作描述,包含职位的主要职责、任务以及期望的工作成果。', sort: false,width: 105 }, { field: 'requirements', title: '岗位要求,列出申请者需要满足的教育背景、技能、经验和资格。', sort: false,width: 105 }, { field: 'isEN', title: '是否有效', width: 95, templet: '#switch_isEN', sort: false , unresize: true}, { type: 'numbers', title: '序号', width: 60, sort: false}, { field: 'position', title: '职位名称', sort: false,width: 105 }, { field: 'quantity', title: '需求人数', sort: false,width: 105 }, { field: 'location', title: '工作地点', sort: false,width: 105 }, { field: 'jobDescription', title: '工作描述', sort: false }, { field: 'requirements', title: '岗位要求', sort: false }, { field: 'isEN', title: '是否上架', width: 95, templet: '#switch_isEN', sort: false , unresize: true}, { field: 'createTime', title: '建立时间', width: 130, sort: false}, { field: 'upDataTime', title: '修改时间', width: 130, sort: false}, { field: 'createBy', title: '创建人', sort: false,width: 105 }, { field: 'upDataBy', title: '修改人', sort: false,width: 105 }, { field: 'isdelete', title: '删除标志', width: 95, templet: '#switch_isdelete', sort: false , unresize: true}, { width: 162, align: 'center', title:'操作', fixed: 'right', toolbar: '#LAY-app-Job_jobSeting-tableBox-bar' } ] ] @@ -251,7 +193,7 @@ area: ['1200px', '90%'], id: 'LAY-popup-Job_jobSeting-create', success: function (layero, index) { view(this.id).render('base/Job_jobSeting/create', { data: e.data }).done(function () { view(this.id).render('baifenbingfa/Job_jobSeting/create', { data: e.data }).done(function () { //监听提交 form.on('submit(LAY-app-Job_jobSeting-createForm-submit)', function(data) { @@ -297,7 +239,7 @@ area: ['1200px', '90%'], id: 'LAY-popup-Job_jobSeting-edit', success: function (layero, index) { view(this.id).render('base/Job_jobSeting/edit', { data: e.data }).done(function () { view(this.id).render('baifenbingfa/Job_jobSeting/edit', { data: e.data }).done(function () { //监听提交 form.on('submit(LAY-app-Job_jobSeting-editForm-submit)', function(data) { @@ -343,7 +285,7 @@ area: ['1200px', '90%'], id: 'LAY-popup-Job_jobSeting-details', success: function (layero, index) { view(this.id).render('base/Job_jobSeting/details', { data: e.data }).done(function () { view(this.id).render('baifenbingfa/Job_jobSeting/details', { data: e.data }).done(function () { form.render(); }); // 禁止弹窗出现滚动条 CoreCms.Net.Web.WebApi/Controllers/baifenbingfa/JobController.cs
New file @@ -0,0 +1,82 @@ using CoreCms.Net.IRepository; using CoreCms.Net.IServices; using CoreCms.Net.Model.Entities.baifenbingfa.jon; using CoreCms.Net.Model.FromBody; using CoreCms.Net.Model.ViewModels.UI; using CoreCms.Net.Services; using CoreCms.Net.Utility.Helper; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Swashbuckle.AspNetCore.Annotations; using System; using System.Threading.Tasks; namespace CoreCms.Net.Web.WebApi.Controllers.baifenbingfa { /// <summary> /// 招聘相关 /// </summary> [Route("api/[controller]")] [ApiController] public class JobController : ControllerBase { IJob_jobSetingRepository _job_JobSetingRepository; IJob_jobSetingServices _job_JobSetingServices; IJob_ApplicantProfileServices _job_ApplicantProfileServices; public JobController(IJob_jobSetingRepository job_JobSeting ,IJob_jobSetingServices job_JobSetingServices,IJob_ApplicantProfileServices job_ApplicantProfileServices) { _job_JobSetingRepository=job_JobSeting; _job_JobSetingServices=job_JobSetingServices; _job_ApplicantProfileServices=job_ApplicantProfileServices; } /// <summary> /// 获取招聘信息 /// </summary> /// <returns></returns> [HttpPost("jobSet")] [SwaggerResponse(200, "返回数据", typeof(WebApiCallBack))] [SwaggerResponse(201, "Data类型", typeof(Job_jobSeting))] public async Task<WebApiCallBack> GetjobSeting() { var jm = new WebApiCallBack(); jm.data = await _job_JobSetingRepository.QueryAsyncALL(); jm.status = true; return jm; } /// <summary> /// 创建简历 /// </summary> /// <param name="Param"></param> /// <returns></returns> [HttpPost("CreatCV")] public async Task<WebApiCallBack> CreatCVFile([FromBody] Job_ApplicantProfile Param) { var jm = new WebApiCallBack(); var CreatTime=DateTime.Now; Param.createTime = CreatTime; Param.createBy = "PC"; if (Param.employmentRecords!=null) foreach(var record in Param.employmentRecords) { if(record.StartEndDateTimes==null||record.StartEndDateTimes.Count<2) { jm.status = false; jm.msg = "工作经历必须填起止时间"; jm.code = 1; return jm; } record.startDate= record.StartEndDateTimes[0]; record.endDate = record.StartEndDateTimes[1]; } jm.data = await _job_ApplicantProfileServices.InsertAsync(Param); jm.status = true; return jm; } } } CoreCms.Net.Web.WebApi/CoreCms.Net.Web.WebApi.csproj
@@ -73,6 +73,7 @@ <PackageReference Include="NLog.Web.AspNetCore" Version="5.3.7" /> <PackageReference Include="Snowflake.Core" Version="2.0.0" /> <PackageReference Include="StackExchange.Redis" Version="2.7.10" /> <PackageReference Include="Swashbuckle.AspNetCore.Annotations" Version="6.6.1" /> <PackageReference Include="Tencent.QCloud.Cos.Sdk" Version="5.4.35" /> <PackageReference Include="ToolGood.Words" Version="3.1.0" /> </ItemGroup> @@ -108,10 +109,6 @@ <None Update="Dockerfile"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </None> </ItemGroup> <ItemGroup> <Folder Include="Controllers\baifenbingfa\" /> </ItemGroup> <ProjectExtensions><VisualStudio><UserProperties appsettings_1json__JsonSchema="" /></VisualStudio></ProjectExtensions>