From 2d2a6b9d20ae8c5d9fcbedac48b4428f696fa127 Mon Sep 17 00:00:00 2001
From: username@email.com <yzy2002yzy@163.com>
Date: 星期四, 16 五月 2024 14:46:35 +0800
Subject: [PATCH] 招聘简历打印

---
 CoreCms.Net.Web.Admin/Controllers/baifenbingfa/Job_ApplicantProfileController.cs |  115 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 107 insertions(+), 8 deletions(-)

diff --git a/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/Job_ApplicantProfileController.cs b/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/Job_ApplicantProfileController.cs
index 7fc4194..d01ba84 100644
--- a/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/Job_ApplicantProfileController.cs
+++ b/CoreCms.Net.Web.Admin/Controllers/baifenbingfa/Job_ApplicantProfileController.cs
@@ -32,6 +32,10 @@
 using SqlSugar;
 using CoreCms.Net.Model.Entities.baifenbingfa.jon;
 using CoreCms.Net.Web.Admin.Infrastructure;
+using CoreCms.Net.Services;
+using SqlSugar.Extensions;
+using NPOI.OpenXmlFormats.Spreadsheet;
+using CoreCms.Net.Auth.HttpContextUser;
 
 namespace CoreCms.Net.Web.Admin.Controllers
 {
@@ -47,16 +51,22 @@
     {
         private readonly IWebHostEnvironment _webHostEnvironment;
         private readonly IJob_ApplicantProfileServices _Job_ApplicantProfileServices;
+        private readonly IJob_jobSetingServices _Job_jobSetingServices;
+        private readonly IHttpContextUser _user;
 
         /// <summary>
         /// 鏋勯�犲嚱鏁�
         ///</summary>
         public Job_ApplicantProfileController(IWebHostEnvironment webHostEnvironment
             ,IJob_ApplicantProfileServices Job_ApplicantProfileServices
+            , IJob_jobSetingServices Job_jobSetingServices
+            , IHttpContextUser user
             )
         {
             _webHostEnvironment = webHostEnvironment;
             _Job_ApplicantProfileServices = Job_ApplicantProfileServices;
+            _Job_jobSetingServices = Job_jobSetingServices;
+            _user = user;
         }
 
         #region 鑾峰彇鍒楄〃============================================================
@@ -79,7 +89,7 @@
             Expression<Func<Job_ApplicantProfile, object>> orderEx = orderField switch
             {
                 "id" => p => p.id,"jobId" => p => p.jobId,"minSalaryRequirement" => p => p.minSalaryRequirement,"name" => p => p.name,"gender" => p => p.gender,"height" => p => p.height,"weight" => p => p.weight,"dateOfBirth" => p => p.dateOfBirth,"graduatingSchool" => p => p.graduatingSchool,"educationLevel" => p => p.educationLevel,"major" => p => p.major,"smokes" => p => p.smokes,"drivingSkill" => p => p.drivingSkill,"phoneNumber" => p => p.phoneNumber,"whiteWineCapacity" => p => p.whiteWineCapacity,"politicalAffiliation" => p => p.politicalAffiliation,"maritalStatus" => p => p.maritalStatus,"specialAbilities" => p => p.specialAbilities,"email" => p => p.email,"parentalStatus" => p => p.parentalStatus,"residentialAddress" => p => p.residentialAddress,"createTime" => p => p.createTime,"upDataTime" => p => p.upDataTime,"createBy" => p => p.createBy,"upDataBy" => p => p.upDataBy,"isdelete" => p => p.isdelete,"AuditStatu" => p => p.AuditStatu,
-                _ => p => p.id
+                _ => p => p.createTime
             };
 
             //璁剧疆鎺掑簭鏂瑰紡
@@ -120,7 +130,7 @@
 			var gender = Request.Form["gender"].FirstOrDefault();
             if (!string.IsNullOrEmpty(gender))
             {
-                where = where.And(p => p.gender.Contains(gender));
+                where = where.And(p => p.gender == gender);
             }
 			//搴旇仒鑰呯殑韬珮锛堝崟浣嶏細鍘樼背锛夈�� int
 			var height = Request.Form["height"].FirstOrDefault().ObjectToInt(0);
@@ -284,13 +294,28 @@
                 where = where.And(p => p.isdelete == false);
             }
 			//瀹℃牳鐘舵�併�� int
-			var AuditStatu =(AuditStatus) Request.Form["AuditStatu"].FirstOrDefault().ObjectToInt(0);
-            if (AuditStatu > 0)
+			var AuditStatu =(AuditStatus) Request.Form["AuditStatu"].FirstOrDefault().ObjectToInt(-1);
+            if (AuditStatu >= 0)
             {
                 where = where.And(p => p.AuditStatu == AuditStatu);
             }
             //鑾峰彇鏁版嵁
             var list = await _Job_ApplicantProfileServices.QueryPageAsync(where, orderEx, orderBy, pageCurrent, pageSize, true);
+
+            foreach (var job_ApplicantProfile in list)
+            {
+                job_ApplicantProfile.createTimetxt = job_ApplicantProfile.createTime.HasValue? job_ApplicantProfile.createTime.Value.ToString("yyyy-MM-dd"):"";
+                job_ApplicantProfile.dateOfBirthName = job_ApplicantProfile.dateOfBirth.ToString("yyyy-MM-dd");
+                var job_JobSeting = await _Job_jobSetingServices.QueryByIdAsync(job_ApplicantProfile.jobId, false);
+                if (job_JobSeting != null)
+                {
+                    job_ApplicantProfile.jobName = job_JobSeting.position;
+                }
+                var auditStatus = (int)job_ApplicantProfile.AuditStatu;
+
+                job_ApplicantProfile.dateOfBirthNameCeshi = EnumHelper.GetEnumDescriptionByValue<AuditStatus>(auditStatus);
+            }
+
             //杩斿洖鏁版嵁
             jm.data = list;
             jm.code = 0;
@@ -308,10 +333,15 @@
         /// <returns></returns>
         [HttpPost]
         [Description("棣栭〉鏁版嵁")]
-        public AdminUiCallBack GetIndex()
+        public async Task<AdminUiCallBack> GetIndex()
         {
+
             //杩斿洖鏁版嵁
             var jm = new AdminUiCallBack { code = 0 };
+
+            var job_JobSetings  =  await _Job_jobSetingServices.QueryListByClauseAsync(p => p.isdelete == false);
+            jm.data = job_JobSetings;
+
             return jm;
         }
         #endregion
@@ -367,8 +397,37 @@
                 jm.msg = "涓嶅瓨鍦ㄦ淇℃伅";
                 return jm;
             }
+            if (model.AuditStatu != AuditStatus.Submitted)
+            {
+                jm.msg = "淇℃伅宸茬粡瀹℃牳";
+                return jm;
+            }
+            var job_JobSeting = await _Job_jobSetingServices.QueryByIdAsync(model.jobId, false);
+            if (job_JobSeting == null)
+            {
+                jm.msg = "涓嶅瓨鍦ㄦ宸ヤ綔";
+                return jm;
+            }
+            model.jobName = job_JobSeting.position;
+            model.dateOfBirthName = model.dateOfBirth.ToString("yyyy/MM/dd");
+            var job_FamilyMembers = _Job_ApplicantProfileServices.getJobFamilyMember(model.id);
+
+
+
+            var job_EmploymentRecords = _Job_ApplicantProfileServices.getJobEmploymentRecord(model.id);
+            foreach (var job_EmploymentRecord in job_EmploymentRecords)
+            {
+                job_EmploymentRecord.startDatetxt = job_EmploymentRecord.startDate.ToString("yyyy/MM") +
+                    (job_EmploymentRecord.endDate.HasValue ? "-" + job_EmploymentRecord.endDate.Value.ToString("yyyy/MM") : "");
+            }
+
             jm.code = 0;
-            jm.data = model;
+            jm.data = new
+            {
+                model,
+                job_FamilyMembers,
+                job_EmploymentRecords
+            };
 
             return jm;
         }
@@ -385,7 +444,23 @@
         [Description("缂栬緫鎻愪氦")]
         public async Task<AdminUiCallBack> DoEdit([FromBody]Job_ApplicantProfile entity)
         {
-            var jm = await _Job_ApplicantProfileServices.UpdateAsync(entity);
+            var jm = new AdminUiCallBack();
+
+            var model = await _Job_ApplicantProfileServices.QueryByIdAsync(entity.id, false);
+            if (model == null)
+            {
+                jm.msg = "涓嶅瓨鍦ㄦ淇℃伅";
+                return jm;
+            }
+            
+            model.AuditStatu = AuditStatus.Approved;
+            model.upDataBy = _user.Name;
+                model.upDataTime = DateTime.Now;
+            jm = await _Job_ApplicantProfileServices.UpdateAsync(model);
+           if(jm.code == 0)
+            {
+                jm.msg = "瀹℃牳鎴愬姛锛�";
+            }
             return jm;
         }
         #endregion
@@ -451,8 +526,32 @@
                 jm.msg = "涓嶅瓨鍦ㄦ淇℃伅";
                 return jm;
             }
+            var job_JobSeting  = await _Job_jobSetingServices.QueryByIdAsync(model.jobId, false);
+            if (job_JobSeting == null)
+            {
+                jm.msg = "涓嶅瓨鍦ㄦ宸ヤ綔";
+                return jm;
+            }
+            model.jobName = job_JobSeting.position;
+            model.dateOfBirthName = model.dateOfBirth.ToString("yyyy/MM/dd");
+            var job_FamilyMembers =_Job_ApplicantProfileServices.getJobFamilyMember(model.id);
+
+           
+
+            var job_EmploymentRecords = _Job_ApplicantProfileServices.getJobEmploymentRecord(model.id);
+            foreach (var job_EmploymentRecord in job_EmploymentRecords)
+            {
+                job_EmploymentRecord.startDatetxt = job_EmploymentRecord.startDate.ToString("yyyy/MM") + 
+                    (job_EmploymentRecord.endDate.HasValue ? "-"+ job_EmploymentRecord.endDate.Value.ToString("yyyy/MM") : "");
+            }
+
             jm.code = 0;
-            jm.data = model;
+            jm.data = new
+            {
+                model,
+                job_FamilyMembers,
+                job_EmploymentRecords
+            };
 
             return jm;
         }

--
Gitblit v1.9.1