From df871e57ea5013efc8668f925952b00c1c2d0c6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=B5=B7=E8=88=AA?= <11918452+yang-haihang@user.noreply.gitee.com> Date: Wed, 19 Feb 2025 17:16:12 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=9F=A5=E8=AF=A2=E6=9C=80?= =?UTF-8?q?=E8=BF=91=E9=80=81=E6=A3=80=E4=BA=BA=E4=BF=A1=E6=81=AF=E7=9A=84?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/EntrustmentController.java | 21 +++++--- .../service/EntrustmentService.java | 3 ++ .../service/impl/EntrustmentServiceImpl.java | 49 +++++++++++++++++++ 3 files changed, 67 insertions(+), 6 deletions(-) diff --git a/src/main/java/digital/laboratory/platform/entrustment/controller/EntrustmentController.java b/src/main/java/digital/laboratory/platform/entrustment/controller/EntrustmentController.java index 763cf22..f0ed357 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/controller/EntrustmentController.java +++ b/src/main/java/digital/laboratory/platform/entrustment/controller/EntrustmentController.java @@ -187,8 +187,8 @@ public class EntrustmentController { .in((statuses != null) && (statuses.size() > 0), "e.status", statuses) .eq(dataSources != null, "e.data_sources", dataSources) .like(StrUtil.isNotBlank(caseName), "c.case_name", caseName) - .orderByDesc(statuses != null && statuses.size() > 0 && statuses.get(0) == 9, "CAST(SUBSTRING(e.accept_no, 1,4) AS UNSIGNED)","CAST(SUBSTRING(e.accept_no, 6) AS UNSIGNED)") - .orderByDesc(statuses != null && statuses.size() > 0 && statuses.get(0) == 7, "CAST(SUBSTRING(e.entrustment_no, 4,4) AS UNSIGNED)","CAST(SUBSTRING(e.entrustment_no, 9) AS UNSIGNED)") + .orderByDesc(statuses != null && statuses.size() > 0 && statuses.get(0) == 9, "CAST(SUBSTRING(e.accept_no, 1,4) AS UNSIGNED)", "CAST(SUBSTRING(e.accept_no, 6) AS UNSIGNED)") + .orderByDesc(statuses != null && statuses.size() > 0 && statuses.get(0) == 7, "CAST(SUBSTRING(e.entrustment_no, 4,4) AS UNSIGNED)", "CAST(SUBSTRING(e.entrustment_no, 9) AS UNSIGNED)") ); } else { //-- 当前用户是普通用户, 不是鉴定中心员工 @@ -1500,7 +1500,7 @@ public class EntrustmentController { @SysLog("创建鉴定委托书") @GetMapping("/el") // @PreAuthorize("@pms.hasPermission('EntrustmentEdit')") - public String bizGetPDFEntrustmentLetter(String id, HttpServletRequest theHttpServletRequest, HttpServletResponse httpServletResponse) { + public String bizGetPDFEntrustmentLetter(String id, HttpServletRequest theHttpServletRequest, HttpServletResponse httpServletResponse) { return entrustmentService.bizGetPDFEntrustmentLetter(id, theHttpServletRequest, httpServletResponse); } @@ -2294,7 +2294,7 @@ public class EntrustmentController { @DeleteMapping("del_delivePhoto_base64") @ApiOperation(value = "删除送检人照片", notes = "删除送检人照片") - public R delDeliverPhoto( String id,String fileName) throws Exception { + public R delDeliverPhoto(String id, String fileName) throws Exception { String path = OSSDirectoryConstants.ACCEPT_DIRECTORY + "/" + id + "/" + "deliverPhoto/" + fileName; ossFile.fileDelete(path); return R.ok("删除成功!"); @@ -2344,7 +2344,7 @@ public class EntrustmentController { @PutMapping("/editRequirement") @ApiOperation(value = "修改鉴定要求") - public R editRequirement(@RequestBody Entrustment entrustment){ + public R editRequirement(@RequestBody Entrustment entrustment) { Entrustment entst = entrustmentService.getById(entrustment.getId()); entst.setEntrustRequirement(entrustment.getEntrustRequirement()); return entrustmentService.updateById(entst) ? R.ok("修改成功") : R.failed("修改失败"); @@ -2353,7 +2353,7 @@ public class EntrustmentController { @ApiOperation("根据委托时间去修改一些时间类型的字段信息,例如 submit_time、check_claim_time、check_time、approve_claim_time、approve_time、" + "deliver_confirm_time、accept_claim_time、accept_time、create_time以及process_info字段中的time类型的数据") @PutMapping("/alertTimeFiledInfoByEntrustDate") - public R alertTimeFiledInfoByEntrustDate(@RequestBody Entrustment entrustment){ + public R alertTimeFiledInfoByEntrustDate(@RequestBody Entrustment entrustment) { boolean success = entrustmentService.alertTimeFiledInfoByEntrustDate(entrustment); return success ? R.ok("修改成功") : R.failed("修改失败"); } @@ -2368,4 +2368,13 @@ public class EntrustmentController { return R.ok(allowSubmit, "有检材未保存,请先保存检材后在提交!"); } } + + @ApiOperation("通过用户查询对应的委托单位ID,再根据这个委托单位查询出最近一条含有送检人信息的数据") + @GetMapping("/getDelivererList") + public R getDelivererList(HttpServletRequest theHttpServletRequest) { + Principal principal = theHttpServletRequest.getUserPrincipal(); + DLPUser dlpUser = (DLPUser) ((OAuth2Authentication) principal).getUserAuthentication().getPrincipal(); + return R.ok(entrustmentService.getDelivererList(dlpUser), "数据查询成功!"); + + } } diff --git a/src/main/java/digital/laboratory/platform/entrustment/service/EntrustmentService.java b/src/main/java/digital/laboratory/platform/entrustment/service/EntrustmentService.java index 4f9df23..5c1c5a2 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/service/EntrustmentService.java +++ b/src/main/java/digital/laboratory/platform/entrustment/service/EntrustmentService.java @@ -11,6 +11,7 @@ import digital.laboratory.platform.entrustment.dto.EntrustmentDTO; import digital.laboratory.platform.entrustment.entity.Entrustment; import digital.laboratory.platform.entrustment.entity.EntrustmentIdentificationMaterial; import digital.laboratory.platform.entrustment.vo.EntrustmentVO; +import digital.laboratory.platform.sys.entity.Deliverer; import digital.laboratory.platform.sys.entity.SysUser; import digital.laboratory.platform.sys.vo.entrustment.MarkersVO; import digital.laboratory.platform.sys.entity.entrustment.Sample; @@ -206,4 +207,6 @@ public interface EntrustmentService extends IService { * @return */ Boolean isEligibleForSubmission(String entrustId, Integer materialCount); + + List getDelivererList(DLPUser dlpUser); } diff --git a/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustmentServiceImpl.java b/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustmentServiceImpl.java index 7903d68..6ca0a7a 100644 --- a/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustmentServiceImpl.java +++ b/src/main/java/digital/laboratory/platform/entrustment/service/impl/EntrustmentServiceImpl.java @@ -3568,4 +3568,53 @@ public class EntrustmentServiceImpl extends ServiceImpl getDelivererList(DLPUser dlpUser) { + // 从DLP用户对象中获取组织ID + String orgId = dlpUser.getOrgId(); + + // 查询数据库以获取与当前组织ID匹配且有指定配送员信息的委托记录列表, + // 按创建时间降序排列。 + List list = this.list(Wrappers.lambdaQuery() + .eq(Entrustment::getClientOrgId, orgId) + .isNotNull(Entrustment::getDeliverer1Name) // 确保第一个配送员名字不为空 + .isNotNull(Entrustment::getDeliverer2Name) // 确保第二个配送员名字不为空 + .orderByDesc(Entrustment::getCreateTime)); // 按创建时间降序 + + // 如果查询结果不为空且至少有一个条目 + if (list != null && list.size() > 0) { + Entrustment entrustment = list.get(0); // 获取最新的一条记录 + + List deliverers = new ArrayList<>(); // 创建一个列表来保存配送员信息 + + // 设置第一个配送员的信息,并加入到列表中 + Deliverer deliverer1 = new Deliverer(); + deliverer1.setCert(entrustment.getDeliverer1Cert()); + deliverer1.setName(entrustment.getDeliverer1Name()); + deliverer1.setPhone(entrustment.getDeliverer1Phone()); + deliverer1.setPosition(entrustment.getDeliverer1Position()); + + // 设置第二个配送员的信息,并加入到列表中 + Deliverer deliverer2 = new Deliverer(); + deliverer2.setCert(entrustment.getDeliverer2Cert()); + deliverer2.setName(entrustment.getDeliverer2Name()); + deliverer2.setPhone(entrustment.getDeliverer2Phone()); + deliverer2.setPosition(entrustment.getDeliverer2Position()); + + deliverers.add(deliverer1); + deliverers.add(deliverer2); + + return deliverers; // 返回包含两个配送员信息的列表 + } else { + return null; // 如果没有找到相关记录,则返回null + } + } + }