diff --git a/Tiobon.Core.Api/Controllers/Ghre/Ghre_ExamRecordController.cs b/Tiobon.Core.Api/Controllers/Ghre/Ghre_ExamRecordController.cs index bbec845d..359ef37a 100644 --- a/Tiobon.Core.Api/Controllers/Ghre/Ghre_ExamRecordController.cs +++ b/Tiobon.Core.Api/Controllers/Ghre/Ghre_ExamRecordController.cs @@ -44,10 +44,10 @@ public class Ghre_ExamRecordController : BaseController ModifyIsPass(string examRecordId, [FromBody] EditGhre_ExamRecordInput edit) + [HttpPost("ModifyFinallyIsPass/{examRecordId}")] + public async Task ModifyFinallyIsPass(string examRecordId, [FromBody] EditGhre_ExamRecordInput edit) { - return await _service.ModifyIsPass(examRecordId, edit); + return await _service.ModifyFinallyIsPass(examRecordId, edit); } //cc/ diff --git a/Tiobon.Core.Api/Tiobon.Core.Model.xml b/Tiobon.Core.Api/Tiobon.Core.Model.xml index 36122927..53ff764d 100644 --- a/Tiobon.Core.Api/Tiobon.Core.Model.xml +++ b/Tiobon.Core.Api/Tiobon.Core.Model.xml @@ -4375,6 +4375,11 @@ 实操分 + + + 最终是否合格 + + Ghre_ExamRecordAnswer (Dto.Base) @@ -18041,6 +18046,11 @@ 实操分 + + + 最终是否合格 + + Ghre_ExamRecordAnswer (Model) diff --git a/Tiobon.Core.IServices/Ghre/IGhre_ExamRecordServices.cs b/Tiobon.Core.IServices/Ghre/IGhre_ExamRecordServices.cs index c8226b69..8bf7d7e7 100644 --- a/Tiobon.Core.IServices/Ghre/IGhre_ExamRecordServices.cs +++ b/Tiobon.Core.IServices/Ghre/IGhre_ExamRecordServices.cs @@ -29,7 +29,7 @@ public interface IGhre_ExamRecordServices : IBaseServices ViewExamPaperCallBackAsync(long examRecordId); Task ModifyActualScore(string examRecordId, EditGhre_ExamRecordInput edit); - Task ModifyIsPass(string examRecordId, EditGhre_ExamRecordInput edit); + Task ModifyFinallyIsPass(string examRecordId, EditGhre_ExamRecordInput edit); Task SubmitAttachment(long examRecordId, List attachments); } \ No newline at end of file diff --git a/Tiobon.Core.Model/Base/Ghre/Ghre_ExamRecord.Dto.Base.cs b/Tiobon.Core.Model/Base/Ghre/Ghre_ExamRecord.Dto.Base.cs index 6f43b621..50aec92a 100644 --- a/Tiobon.Core.Model/Base/Ghre/Ghre_ExamRecord.Dto.Base.cs +++ b/Tiobon.Core.Model/Base/Ghre/Ghre_ExamRecord.Dto.Base.cs @@ -6,9 +6,9 @@ * * Ver 变更日期 负责人 变更内容 * ─────────────────────────────────── -*V0.01 2024/12/23 14:36:50 SimonHsiao 初版 +*V0.01 2025/1/13 16:14:43 SimonHsiao 初版 * -* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. +* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved. *┌──────────────────────────────────┐ *│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ *│ 作者:SimonHsiao │ @@ -215,4 +215,9 @@ public class Ghre_ExamRecordBase /// [Display(Name = "ActualScore"), Description("实操分"), Column(TypeName = "decimal(20,2)")] public decimal? ActualScore { get; set; } + + /// + /// 最终是否合格 + /// + public bool? FinallyIsPass { get; set; } } diff --git a/Tiobon.Core.Model/Models/Ghre/Ghre_ExamRecord.cs b/Tiobon.Core.Model/Models/Ghre/Ghre_ExamRecord.cs index a57335d0..4c79ae7b 100644 --- a/Tiobon.Core.Model/Models/Ghre/Ghre_ExamRecord.cs +++ b/Tiobon.Core.Model/Models/Ghre/Ghre_ExamRecord.cs @@ -6,9 +6,9 @@ * * Ver 变更日期 负责人 变更内容 * ─────────────────────────────────── -*V0.01 2024/12/23 14:36:50 SimonHsiao 初版 +*V0.01 2025/1/13 16:14:43 SimonHsiao 初版 * -* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved. +* Copyright(c) 2025 Tiobon Corporation. All Rights Reserved. *┌──────────────────────────────────┐ *│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │ *│ 作者:SimonHsiao │ @@ -216,4 +216,9 @@ public class Ghre_ExamRecord : BasePoco /// [Display(Name = "ActualScore"), Description("实操分"), Column(TypeName = "decimal(20,2)")] public decimal? ActualScore { get; set; } + + /// + /// 最终是否合格 + /// + public bool? FinallyIsPass { get; set; } } diff --git a/Tiobon.Core.Model/View/Ghre/Ghre_ExamRecord.Dto.View.cs b/Tiobon.Core.Model/View/Ghre/Ghre_ExamRecord.Dto.View.cs index 4aa609dc..8328058c 100644 --- a/Tiobon.Core.Model/View/Ghre/Ghre_ExamRecord.Dto.View.cs +++ b/Tiobon.Core.Model/View/Ghre/Ghre_ExamRecord.Dto.View.cs @@ -31,7 +31,9 @@ public class Ghre_ExamRecordDto : Ghre_ExamRecord /// 修改信息 /// public string UpdateDataInfo { get; set; } + public string IsPassLabel { get; set; } + public string FinallyIsPassLabel { get; set; } public string StaffNo { get; set; } public string StaffName { get; set; } diff --git a/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs b/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs index 504170ba..12066cf2 100644 --- a/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs +++ b/Tiobon.Core.Services/Ghre/Ghre_ExamRecordServices.cs @@ -99,6 +99,13 @@ public class Ghre_ExamRecordServices : BaseServices 0) attachments = await Db.Queryable().Where(x => ids.Contains(x.TableName)).ToListAsync(); + attachments.ForEach(x => + { + x.PhysicsPath = "/Advanced" + x.PhysicsPath; + x.RelativePath = "/Advanced" + x.RelativePath; + x.ThumbnailPath = "/Advanced" + x.ThumbnailPath; + x.FileURL = "/Advanced" + x.FileURL; + }); entitys.ForEach(async x => { x.ScoreMethodLabel = await GetParaLabel("ScoreMethod", x.ScoreMethod); @@ -107,6 +114,8 @@ public class Ghre_ExamRecordServices : BaseServices o.TableName == x.Id.ToString()).ToList(); //x.InStatusLabel = x.InStatus == "1" ? "在职" : null; //x.InStatusLabel = x.InStatus == "2" ? "离职" : null; @@ -188,22 +197,22 @@ public class Ghre_ExamRecordServices : BaseServices ModifyIsPass(string examRecordId, EditGhre_ExamRecordInput edit) + public async Task ModifyFinallyIsPass(string examRecordId, EditGhre_ExamRecordInput edit) { var entity = await QuerySingle(examRecordId); if (entity != null && entity.ExamId != null) if (await Db.Queryable().Where(x => x.Id == entity.ExamId.Value && x.Status == "Disabled").AnyAsync()) return ServiceResult.OprateFailed($"该考试已归档,不可进行调整!"); - if (entity.ActualScore is null && entity.AdjustScore is null) - return ServiceResult.OprateFailed($"请先变更调整分或实操分!"); + //if (entity.ActualScore is null && entity.AdjustScore is null) + // return ServiceResult.OprateFailed($"请先变更调整分或实操分!"); - entity.IsPass = edit.IsPass ?? false; + entity.FinallyIsPass = edit.FinallyIsPass ?? false; //string score1 = Regex.Replace(entity.Score.ToString(), @"\.(0+)$", "") + "/" + Regex.Replace(entity.Score.ToString(), @"\.(0+)$", ""); - await Update(entity, ["IsPass", "UpdateTime", "UpdateBy"]); + await Update(entity, ["FinallyIsPass", "UpdateTime", "UpdateBy"]); return ServiceResult.OprateSuccess("修改成功!"); } @@ -968,7 +977,8 @@ public class Ghre_ExamRecordServices : BaseServices().FirstAsync(x => x.Id == record.ExamPaperId); record.IsPass = examPaper.PassScore > (record.Score + record.AdjustScore) ? false : true; - await Db.Updateable(record).UpdateColumns(it => new { it.IsPass }, true)//true表示追加AOP赋值列 + record.FinallyIsPass = record.IsPass; + await Db.Updateable(record).UpdateColumns(it => new { it.IsPass, it.FinallyIsPass }, true)//true表示追加AOP赋值列 .ExecuteCommandAsync(); await Db.Deleteable().Where(x => x.ExamId == studyRecord.ExamId).ExecuteCommandAsync(); @@ -1272,14 +1282,14 @@ public class Ghre_ExamRecordServices : BaseServices SubmitAttachment(long examRecordId, List attachments) { - var paths = attachments.Select(x => x.PhysicsPath).Distinct().ToList(); + var path = attachments.Select(x => x.RelativePath.Replace("/Advanced", null)).Distinct().ToList(); await Db.Updateable() .SetColumns(it => new Ghre_Attachment() { TableName = null }) .Where(it => it.TableName == examRecordId.ObjToString()) .ExecuteCommandAsync(); await Db.Updateable() .SetColumns(it => new Ghre_Attachment() { TableName = examRecordId.ObjToString() }) - .Where(it => paths.Contains(it.PhysicsPath)) + .Where(it => path.Contains(it.RelativePath)) .ExecuteCommandAsync(); return ServiceResult.OprateSuccess("保存成功!"); } diff --git a/Tiobon.Core/Tiobon.Core.Model.xml b/Tiobon.Core/Tiobon.Core.Model.xml index 36122927..53ff764d 100644 --- a/Tiobon.Core/Tiobon.Core.Model.xml +++ b/Tiobon.Core/Tiobon.Core.Model.xml @@ -4375,6 +4375,11 @@ 实操分 + + + 最终是否合格 + + Ghre_ExamRecordAnswer (Dto.Base) @@ -18041,6 +18046,11 @@ 实操分 + + + 最终是否合格 + + Ghre_ExamRecordAnswer (Model)