diff --git a/Tiobon.Core.Model/View/Ghrh/Ghrh_YearHumanApplyOrder.Dto.View.cs b/Tiobon.Core.Model/View/Ghrh/Ghrh_YearHumanApplyOrder.Dto.View.cs index 87ad1823..2a560e3d 100644 --- a/Tiobon.Core.Model/View/Ghrh/Ghrh_YearHumanApplyOrder.Dto.View.cs +++ b/Tiobon.Core.Model/View/Ghrh/Ghrh_YearHumanApplyOrder.Dto.View.cs @@ -32,5 +32,5 @@ public class Ghrh_YearHumanApplyOrderDto : Ghrh_YearHumanApplyOrder /// public string UpdateDataInfo { get; set; } - public List Items { get; set; } + public List Items { get; set; } } diff --git a/Tiobon.Core.Services/BASE/BaseServices.cs b/Tiobon.Core.Services/BASE/BaseServices.cs index 84c73b32..e4156d74 100644 --- a/Tiobon.Core.Services/BASE/BaseServices.cs +++ b/Tiobon.Core.Services/BASE/BaseServices.cs @@ -802,7 +802,7 @@ public class BaseServices : IBaseServ FROM Ghrs_PageSettingQuery WHERE IsEnable = 1 AND PageNo = '{body.menuName}' - AND (defaultHidden = 'false' OR defaultHidden is null) + AND (defaultHidden = 'false' OR defaultHidden is null OR defaultHidden ='') ORDER BY SortNo ASC"; var columns = DbAccess.QueryList(sql); diff --git a/Tiobon.Core.Services/Ghre/Ghre_CourseSceneServices.cs b/Tiobon.Core.Services/Ghre/Ghre_CourseSceneServices.cs index 87ac36eb..6ff3902c 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_CourseSceneServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_CourseSceneServices.cs @@ -34,9 +34,12 @@ public class Ghre_CourseSceneServices : BaseServices(); }); - var coures = await Db.Queryable().Where(x => x.CourseSceneIds != null && (x.CourseSceneIds.Contains(body.id.ObjToString()) || x.CourseSceneId == body.id) && x.Status == Consts.DIC_COURSE_STATUS.RELEASED).ToListAsync(); - if (DT_TableDataT1.Any()) - DT_TableDataT1[0].Courses = coures; + if (body.id.IsNotEmptyOrNull()) + { + var coures = await Db.Queryable().Where(x => x.CourseSceneIds != null && (x.CourseSceneIds.Contains(body.id.ObjToString()) || x.CourseSceneId == body.id) && x.Status == Consts.DIC_COURSE_STATUS.RELEASED).ToListAsync(); + if (DT_TableDataT1.Any()) + DT_TableDataT1[0].Courses = coures; + } result.result.DT_TableDataT1 = DT_TableDataT1; return result; } diff --git a/Tiobon.Core.Services/Ghre/Ghre_ExamPaperServices.cs b/Tiobon.Core.Services/Ghre/Ghre_ExamPaperServices.cs index 49256d89..d609195b 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_ExamPaperServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_ExamPaperServices.cs @@ -1,5 +1,4 @@ using MongoDB.Driver.Linq; -using NPOI.SS.Formula.Functions; using System.Net; using System.Text.RegularExpressions; @@ -608,7 +607,7 @@ public class Ghre_ExamPaperServices : BaseServices x.Id == examRecordId || x.StudyRecordId == examRecordId); examRecordId = record.Id; - var details = await Db.Queryable().Where(x => x.ExamRecordId == record.Id).ToListAsync(); - var detailIds = details.Select(x => x.Id).ToList(); - var recordAnswers = await Db.Queryable() + using var _context = ContextFactory.CreateContext(); + + var src = _context.Ghre_ExamRecordDetail.Where(x => x.ExamRecordId == record.Id); + var src1 = _context.Ghre_ExamRecordAnswer .OrderBy(x => x.TaxisNo) - .Where(x => x.ExamRecordDetailId != null && detailIds.Contains(x.ExamRecordDetailId.Value)) + .Where(x => x.ExamRecordDetailId != null && x.ExamRecordId == record.Id); + + if (groupId != null) + src = src.Where(x => x.GroupId == groupId); + else + src = src.Where(x => x.IsEnable == 1); + + var details = await src + .ToListAsync(); + var detailIds = details.Select(x => x.Id).ToList(); + + src1 = src1.Where(x => detailIds.Contains(x.ExamRecordDetailId.Value)); + + var recordAnswers = await src1 .ToListAsync(); if (record.ScoreStatus == Consts.DIC_EXAM_RECORD_SCORE_STATUS.NO_SCORE) await ExamHelper.SystemMarkAsync(Db, record, details, recordAnswers); @@ -636,7 +651,7 @@ public class Ghre_ExamRecordServices : BaseServices new { it.ExamId }).ExecuteCommandAsync(); #endregion - if (entity.DateType == DicExamDateType.EXAM_DATE) - { - courseEndTime = entity.EndTime.Value.Date.AddDays(1); - courseTime = courseEndTime.AddDays(-(snap?.ValidityPeriod ?? 1) * 30); - } + //if (entity.DateType == DicExamDateType.EXAM_DATE) + //{ + // courseEndTime = entity.EndTime.Value.Date.AddDays(1); + // courseTime = courseEndTime.AddDays(-(snap?.ValidityPeriod ?? 1) * 30); + //} for (int i = 0; i < staffs.Count; i++) { diff --git a/Tiobon.Core.Services/Ghre/Ghre_PlanServices.cs b/Tiobon.Core.Services/Ghre/Ghre_PlanServices.cs index 8ffeef14..0250c1ab 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_PlanServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_PlanServices.cs @@ -483,7 +483,7 @@ public class Ghre_PlanServices : BaseServices.OprateSuccess("计划暂存_" + DateTimeHelper.ConvertToSecondString1(DateTime.Now) + ".xlsx", physicsPath1); else return ServiceResult.OprateSuccess("计划维护_" + DateTimeHelper.ConvertToSecondString1(DateTime.Now) + ".xlsx", physicsPath1); @@ -587,8 +587,7 @@ public class Ghre_PlanServices : BaseServices().Where(o => value1.Contains(o.StaffName) || value1.Contains(o.StaffNo) || value1.Contains(o.StaffEname)).Select(x => x.StaffID).ToListAsync(); - dict.Add("Month", JsonHelper.ObjToJson(ids)); + dict.Add("Month", JsonHelper.ObjToJson(value2)); } else { @@ -689,9 +688,9 @@ public class Ghre_PlanServices : BaseServices { - if (menuName == "F_TrainPlan_Wait") + if (menuName == "F_TrainPlan_Wait" || menuName == "F_UshioTrainPlan_Wait") x.Add("Status", "Wait"); - else if (menuName == "F_TrainPlan_Temporary") + else if (menuName == "F_TrainPlan_Temporary" || menuName == "F_UshioTrainPlan_Temporary") x.Add("Status", "Temporary"); }); await Db.Insertable(dictList).AS(entityType.GetEntityTableName()).ExecuteCommandAsync(); diff --git a/Tiobon.Core.Services/Ghre/Ghre_RequestServices.cs b/Tiobon.Core.Services/Ghre/Ghre_RequestServices.cs index b2dfa774..24447225 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_RequestServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_RequestServices.cs @@ -282,6 +282,7 @@ FROM Ghre_Request A YearMonth1 YearMonthLabel, DeptName, TrainClass, + TrainCategory, TrainLevel, InOrOut FROM (SELECT A.Id, @@ -293,6 +294,7 @@ FROM Ghre_Request A ISNULL (B.DeptId, D.DeptId) DeptId, ISNULL (A.RequestNum, 1) RequestNum, A.TrainClass, + A.TrainCategory, A.CourseSource, A.RequestSource, TrainLevel, @@ -307,6 +309,7 @@ FROM Ghre_Request A YearMonth1, DeptName, TrainClass, + TrainCategory, TrainLevel, InOrOut) A ORDER BY {filter.orderBy}"; @@ -319,6 +322,7 @@ FROM Ghre_Request A YearMonth1 YearMonthLabel, DeptName, TrainClass, + TrainCategory, TrainLevel, InOrOut FROM (SELECT A.Id, @@ -331,8 +335,9 @@ FROM Ghre_Request A ISNULL (B.DeptName, D.DeptName) DeptName, ISNULL (B.DeptId, D.DeptId) DeptId, ISNULL (A.RequestNum, 1) RequestNum, - A.TrainClass, A.CourseSource, - + A.TrainClass, + A.TrainCategory, + A.CourseSource, TrainLevel, A.RequestSource, A.InOrOut, @@ -346,6 +351,7 @@ FROM Ghre_Request A YearMonth1, DeptName, TrainClass, + TrainCategory, TrainLevel, InOrOut) A ORDER BY {filter.orderBy}"; @@ -354,6 +360,7 @@ FROM Ghre_Request A result.ForEach(async x => { x.TrainClassLabel = await GetParaLabel("TrainingRequestTrainClass", x.TrainClass); + x.TrainCategory = await GetParaLabel("TrainingCategory", x.TrainCategory); x.TrainLevelLabel = await GetParaLabel("TrainingRequestTrainLevel", x.TrainLevel); x.InOrOutLabel = await GetParaLabel("CourseInOrOut", x.InOrOut); x.TeacherClassLabel = await GetParaLabel("TrainingTeacherType", x.InOrOut); diff --git a/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanApplyOrderServices.cs b/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanApplyOrderServices.cs index e7cffb7a..162f39cd 100644 --- a/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanApplyOrderServices.cs +++ b/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanApplyOrderServices.cs @@ -1,4 +1,6 @@ -namespace Tiobon.Core.Services; +using System.Data; + +namespace Tiobon.Core.Services; /// /// 年度人力申请 (服务) @@ -19,7 +21,56 @@ public class Ghrh_YearHumanApplyOrderServices : BaseServices x.WorkID == objId); if (entity != null) - entity.Items = await Db.Queryable().Where(x => x.OrderId == entity.Id).ToListAsync(); + { + var items = await Db.Queryable().Where(x => x.OrderId == entity.Id).ToListAsync(); + + entity.Items = Mapper.Map(items).ToANew>(); + if (entity.Items.Any()) + { + + var deptIds = entity.Items.Select(x => x.DeptId).Distinct().ToList(); + var titleIds = entity.Items.Select(x => x.TitleId).Distinct().ToList(); + var jobIds = entity.Items.Select(x => x.JobId).Distinct().ToList(); + var gradeIds = entity.Items.Select(x => x.GradeId).Distinct().ToList(); + + if (deptIds.Any()) + { + var depts = await Db.Queryable().Where(x => deptIds.Contains(x.DeptID)).Select(x => new { x.DeptID, x.DeptName }).ToListAsync(); + entity.Items.ForEach(x => x.DeptName = depts.FirstOrDefault(o => x.DeptId == o.DeptID)?.DeptName); + } + + if (titleIds.Any()) + { + var titles = await Db.Queryable().Where(x => titleIds.Contains(x.TitleID)).ToListAsync(); + + entity.Items.ForEach(rule => + { + rule.TitleName = titles.FirstOrDefault(o => rule.TitleId == o.TitleID)?.TitleName; + }); + } + + if (gradeIds.Any()) + { + var grades = await Db.Queryable().Where(x => gradeIds.Contains(x.GradeID)).ToListAsync(); + + entity.Items.ForEach(rule => + { + rule.GradeName = grades.FirstOrDefault(o => rule.GradeId == o.GradeID)?.GradeName; + }); + } + + if (jobIds.Any()) + { + var jobs = await Db.Queryable().Where(x => jobIds.Contains(x.JobID)).ToListAsync(); + + entity.Items.ForEach(rule => + { + rule.JobName = jobs.FirstOrDefault(o => rule.JobId == o.JobID)?.JobName; + }); + } + } + } + return ServiceResult.OprateSuccess("查询成功!", entity); } diff --git a/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanSettingsServices.cs b/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanSettingsServices.cs index 03d3a1e0..fe2140b8 100644 --- a/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanSettingsServices.cs +++ b/Tiobon.Core.Services/Ghrh/Ghrh_YearHumanSettingsServices.cs @@ -242,7 +242,19 @@ public class Ghrh_YearHumanSettingsServices : BaseServices x.rowNum).ToList(); #endregion - return ServiceResult>.OprateSuccess("查询成功!", flowReturn.result.JM_TableColumnT1.TableColumn); ; + flowReturn.result.JM_TableColumnT1.TableColumn.ForEach(x => + { + if (x.field == "DeptId") + x.field = "DeptName"; + else if (x.field == "TitleId") + x.field = "TitleName"; + else if (x.field == "JobId") + x.field = "JobName"; + else if (x.field == "GradeId") + x.field = "GradeName"; + }); + + return ServiceResult>.OprateSuccess("查询成功!", flowReturn.result.JM_TableColumnT1.TableColumn); }