From 0e9bf54c5cc110f84c5ee6013c3622d7579db25d Mon Sep 17 00:00:00 2001 From: Kittapath Date: Mon, 28 Aug 2023 18:03:02 +0700 Subject: [PATCH] =?UTF-8?q?=E0=B9=81=E0=B8=81=E0=B9=89=E0=B8=84=E0=B8=B4?= =?UTF-8?q?=E0=B8=A7=E0=B8=A3=E0=B8=B5=E0=B9=88=E0=B8=88=E0=B8=B1=E0=B8=94?= =?UTF-8?q?=E0=B8=AA=E0=B8=A3=E0=B8=A3=E0=B9=80=E0=B8=84=E0=B8=A3=E0=B8=B7?= =?UTF-8?q?=E0=B9=88=E0=B8=AD=E0=B8=87=E0=B8=A3=E0=B8=B2=E0=B8=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/InsigniaManageController.cs | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/BMA.EHR.Insignia.Service/Controllers/InsigniaManageController.cs b/BMA.EHR.Insignia.Service/Controllers/InsigniaManageController.cs index 2b36be11..9d4ada59 100644 --- a/BMA.EHR.Insignia.Service/Controllers/InsigniaManageController.cs +++ b/BMA.EHR.Insignia.Service/Controllers/InsigniaManageController.cs @@ -468,20 +468,28 @@ namespace BMA.EHR.Insignia.Service.Controllers [HttpPut("return/{insigniaManageProfileId:length(36)}")] public async Task> PutReturnInsignia([FromBody] InsigniaReturnRequest req, Guid insigniaManageProfileId) { - var organization = await _context.Organizations.AsQueryable() - .Include(x => x.OrganizationOrganization) - .FirstOrDefaultAsync(x => x.Id == req.ReturnOrganizationId); - if (organization == null) - return Error(GlobalMessages.OrganizationNotFound); var uppdated = await _context.InsigniaManageProfiles.AsQueryable() + .Include(x => x.BorrowOrganization) .FirstOrDefaultAsync(x => x.Id == insigniaManageProfileId); if (uppdated == null) return Error(GlobalMessages.InsigniaManageNotFound); uppdated.Status = true; uppdated.ReturnDate = req.ReturnDate; - uppdated.ReturnOrganization = organization.OrganizationOrganization; + if (req.ReturnOrganizationId == Guid.Parse("00000000-0000-0000-0000-000000000000")) + { + uppdated.ReturnOrganization = uppdated.BorrowOrganization; + } + else + { + var organization = await _context.Organizations.AsQueryable() + .Include(x => x.OrganizationOrganization) + .FirstOrDefaultAsync(x => x.Id == req.ReturnOrganizationId); + if (organization == null) + return Error(GlobalMessages.OrganizationNotFound); + uppdated.ReturnOrganization = organization.OrganizationOrganization; + } uppdated.ReturnReason = req.ReturnReason; uppdated.LastUpdateFullName = FullName ?? "System Administrator"; uppdated.LastUpdateUserId = UserId ?? ""; @@ -511,7 +519,7 @@ namespace BMA.EHR.Insignia.Service.Controllers return Error(GlobalMessages.InsigniaTypeNotFound); var data = await _context.InsigniaManageProfiles.AsQueryable() .Where(x => x.InsigniaNoteProfile.RequestInsignia.InsigniaType == insigniaType) - .Where(x => x.InsigniaManageOrganiation.InsigniaManage.Year == year) + .Where(x => year == 0 ? x.Id != null : x.InsigniaManageOrganiation.InsigniaManage.Year == year) .OrderByDescending(x => x.CreatedAt) .Select(p => new { @@ -569,7 +577,7 @@ namespace BMA.EHR.Insignia.Service.Controllers public async Task> GetBorrowReturnInsignia(Guid insigniaManageProfileId) { var data = await _context.InsigniaManageProfiles.AsQueryable() - .Where(x => insigniaManageProfileId == Guid.Parse("00000000-0000-0000-0000-000000000000") ? x.Id != null : x.Id == insigniaManageProfileId) + .Where(x => x.Id == insigniaManageProfileId) .Select(p => new { Id = p.Id,