From a66fd838acae2422043e047b915942644281f5e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Mon, 3 Nov 2025 06:05:50 +0800 Subject: [PATCH] =?UTF-8?q?feat(clinic):=E4=BC=98=E5=8C=96=E5=A4=84?= =?UTF-8?q?=E6=96=B9=E7=9B=B8=E5=85=B3=E5=8A=9F=E8=83=BD=E5=B9=B6=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E8=8F=9C=E5=8D=95=E6=8E=92=E5=BA=8F-=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=20ClinicPatientUser=20=E5=AE=9E=E4=BD=93=E4=B8=AD?= =?UTF-8?q?=E7=9A=84=20sex=20=E5=AD=97=E6=AE=B5=E7=B1=BB=E5=9E=8B=E4=B8=BA?= =?UTF-8?q?=20Integer=20-=20=E7=A7=BB=E9=99=A4=20ClinicPatientUser=20?= =?UTF-8?q?=E4=B8=AD=20age=20=E5=AD=97=E6=AE=B5=E7=9A=84=20@TableField=20?= =?UTF-8?q?=E6=B3=A8=E8=A7=A3=20-=20=E5=9C=A8=20ClinicPrescription=20?= =?UTF-8?q?=E5=AE=9E=E4=BD=93=E4=B8=AD=E6=96=B0=E5=A2=9E=E6=82=A3=E8=80=85?= =?UTF-8?q?=E5=92=8C=E5=8C=BB=E7=94=9F=E7=9B=B8=E5=85=B3=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=AD=97=E6=AE=B5=20-=20=E6=9B=B4=E6=96=B0=E5=A4=84=E6=96=B9?= =?UTF-8?q?=E4=B8=BB=E8=A1=A8=E5=85=B3=E8=81=94=E6=9F=A5=E8=AF=A2=20SQL?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E6=82=A3=E8=80=85=E5=92=8C=E5=8C=BB?= =?UTF-8?q?=E7=94=9F=E4=BF=A1=E6=81=AF=E5=85=B3=E8=81=94=20-=20=E5=A4=84?= =?UTF-8?q?=E6=96=B9=E6=8E=A7=E5=88=B6=E5=99=A8=E4=B8=AD=E5=90=AF=E7=94=A8?= =?UTF-8?q?=E5=BD=93=E5=89=8D=E7=99=BB=E5=BD=95=E7=94=A8=E6=88=B7=E4=BD=9C?= =?UTF-8?q?=E4=B8=BA=E5=8C=BB=E7=94=9F=EF=BC=8C=E5=B9=B6=E7=94=9F=E6=88=90?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=8F=B7-=20=E4=BF=9D=E5=AD=98=E5=A4=84?= =?UTF-8?q?=E6=96=B9=E5=90=8E=E8=BF=94=E5=9B=9E=E5=8C=85=E5=90=AB=E5=A4=84?= =?UTF-8?q?=E6=96=B9=20ID=20=E7=9A=84=E5=AE=8C=E6=95=B4=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=20-=20=E8=B0=83=E6=95=B4=E5=A4=84=E6=96=B9=E6=98=8E=E7=BB=86?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=9D=83=E9=99=90=E6=B3=A8=E8=A7=A3=EF=BC=8C?= =?UTF-8?q?=E7=BB=9F=E4=B8=80=E4=BD=BF=E7=94=A8=E5=A4=84=E6=96=B9=E4=B8=BB?= =?UTF-8?q?=E8=A1=A8=E6=9D=83=E9=99=90=20-=20=E6=96=B0=E5=A2=9E=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E6=9C=80=E6=96=B0=E4=B8=80=E6=9D=A1=E5=A4=84=E6=96=B9?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E7=9A=84=E6=9C=8D=E5=8A=A1=E6=96=B9=E6=B3=95?= =?UTF-8?q?=20-=20=E8=8F=9C=E5=8D=95=E6=9C=8D=E5=8A=A1=E4=B8=AD=E5=B0=86?= =?UTF-8?q?=E6=8F=92=E4=BB=B6=E8=8F=9C=E5=8D=95=E6=8E=92=E5=BA=8F=E5=8F=B7?= =?UTF-8?q?=E4=BB=8E0=20=E8=B0=83=E6=95=B4=E4=B8=BA=20100?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ClinicPrescriptionController.java | 18 ++++++++------ .../ClinicPrescriptionItemController.java | 21 ++++++---------- .../clinic/entity/ClinicPatientUser.java | 4 +--- .../clinic/entity/ClinicPrescription.java | 24 +++++++++++++++++++ .../mapper/xml/ClinicPatientUserMapper.xml | 2 +- .../mapper/xml/ClinicPrescriptionMapper.xml | 4 +++- .../service/ClinicPrescriptionService.java | 2 ++ .../impl/ClinicPrescriptionServiceImpl.java | 6 +++++ .../system/service/impl/MenuServiceImpl.java | 2 +- 9 files changed, 56 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionController.java b/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionController.java index 2088cbf..f16989f 100644 --- a/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionController.java +++ b/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionController.java @@ -1,5 +1,6 @@ package com.gxwebsoft.clinic.controller; +import cn.hutool.core.util.IdUtil; import com.gxwebsoft.clinic.entity.ClinicPrescription; import com.gxwebsoft.clinic.param.ClinicPrescriptionParam; import com.gxwebsoft.clinic.service.ClinicPrescriptionService; @@ -8,6 +9,7 @@ import com.gxwebsoft.common.core.web.ApiResult; import com.gxwebsoft.common.core.web.BaseController; import com.gxwebsoft.common.core.web.BatchParam; import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.system.entity.User; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.security.access.prepost.PreAuthorize; @@ -30,7 +32,6 @@ public class ClinicPrescriptionController extends BaseController { @Resource private ClinicPrescriptionService clinicPrescriptionService; - @PreAuthorize("hasAuthority('clinic:clinicPrescription:list')") @Operation(summary = "分页查询处方主表") @GetMapping("/page") public ApiResult> page(ClinicPrescriptionParam param) { @@ -46,7 +47,6 @@ public class ClinicPrescriptionController extends BaseController { return success(clinicPrescriptionService.listRel(param)); } - @PreAuthorize("hasAuthority('clinic:clinicPrescription:list')") @Operation(summary = "根据id查询处方主表") @GetMapping("/{id}") public ApiResult get(@PathVariable("id") Integer id) { @@ -60,12 +60,16 @@ public class ClinicPrescriptionController extends BaseController { @PostMapping() public ApiResult save(@RequestBody ClinicPrescription clinicPrescription) { // 记录当前登录用户id - // User loginUser = getLoginUser(); - // if (loginUser != null) { - // clinicPrescription.setUserId(loginUser.getUserId()); - // } + User loginUser = getLoginUser(); + if (loginUser != null) { + clinicPrescription.setDoctorId(loginUser.getUserId()); + // 生成订单号 + String orderNo = Long.toString(IdUtil.getSnowflakeNextId()); + clinicPrescription.setOrderNo(orderNo); + } if (clinicPrescriptionService.save(clinicPrescription)) { - return success("添加成功"); + // 返回处方数据,包含处方ID + return success("添加成功",clinicPrescriptionService.getByLastId(clinicPrescription)); } return fail("添加失败"); } diff --git a/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionItemController.java b/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionItemController.java index d8ab619..eda3050 100644 --- a/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionItemController.java +++ b/src/main/java/com/gxwebsoft/clinic/controller/ClinicPrescriptionItemController.java @@ -30,7 +30,6 @@ public class ClinicPrescriptionItemController extends BaseController { @Resource private ClinicPrescriptionItemService clinicPrescriptionItemService; - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:list')") @Operation(summary = "分页查询处方明细表") @GetMapping("/page") public ApiResult> page(ClinicPrescriptionItemParam param) { @@ -38,7 +37,7 @@ public class ClinicPrescriptionItemController extends BaseController { return success(clinicPrescriptionItemService.pageRel(param)); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:list')") + @PreAuthorize("hasAuthority('clinic:clinicPrescription:list')") @Operation(summary = "查询全部处方明细表") @GetMapping() public ApiResult> list(ClinicPrescriptionItemParam param) { @@ -46,7 +45,6 @@ public class ClinicPrescriptionItemController extends BaseController { return success(clinicPrescriptionItemService.listRel(param)); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:list')") @Operation(summary = "根据id查询处方明细表") @GetMapping("/{id}") public ApiResult get(@PathVariable("id") Integer id) { @@ -54,23 +52,18 @@ public class ClinicPrescriptionItemController extends BaseController { return success(clinicPrescriptionItemService.getByIdRel(id)); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:save')") + @PreAuthorize("hasAuthority('clinic:clinicPrescription:save')") @OperationLog @Operation(summary = "添加处方明细表") @PostMapping() public ApiResult save(@RequestBody ClinicPrescriptionItem clinicPrescriptionItem) { - // 记录当前登录用户id - // User loginUser = getLoginUser(); - // if (loginUser != null) { - // clinicPrescriptionItem.setUserId(loginUser.getUserId()); - // } if (clinicPrescriptionItemService.save(clinicPrescriptionItem)) { return success("添加成功"); } return fail("添加失败"); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:update')") + @PreAuthorize("hasAuthority('clinic:clinicPrescription:update')") @OperationLog @Operation(summary = "修改处方明细表") @PutMapping() @@ -81,7 +74,7 @@ public class ClinicPrescriptionItemController extends BaseController { return fail("修改失败"); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:remove')") + @PreAuthorize("hasAuthority('clinic:clinicPrescription:remove')") @OperationLog @Operation(summary = "删除处方明细表") @DeleteMapping("/{id}") @@ -92,7 +85,7 @@ public class ClinicPrescriptionItemController extends BaseController { return fail("删除失败"); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:save')") + @PreAuthorize("hasAuthority('clinic:clinicPrescription:save')") @OperationLog @Operation(summary = "批量添加处方明细表") @PostMapping("/batch") @@ -103,7 +96,7 @@ public class ClinicPrescriptionItemController extends BaseController { return fail("添加失败"); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:update')") + @PreAuthorize("hasAuthority('clinic:clinicPrescription:update')") @OperationLog @Operation(summary = "批量修改处方明细表") @PutMapping("/batch") @@ -114,7 +107,7 @@ public class ClinicPrescriptionItemController extends BaseController { return fail("修改失败"); } - @PreAuthorize("hasAuthority('clinic:clinicPrescriptionItem:remove')") + @PreAuthorize("hasAuthority('clinic:clinicPrescription:remove')") @OperationLog @Operation(summary = "批量删除处方明细表") @DeleteMapping("/batch") diff --git a/src/main/java/com/gxwebsoft/clinic/entity/ClinicPatientUser.java b/src/main/java/com/gxwebsoft/clinic/entity/ClinicPatientUser.java index 4bf6860..1b99fcb 100644 --- a/src/main/java/com/gxwebsoft/clinic/entity/ClinicPatientUser.java +++ b/src/main/java/com/gxwebsoft/clinic/entity/ClinicPatientUser.java @@ -45,11 +45,9 @@ public class ClinicPatientUser implements Serializable { private String phone; @Schema(description = "性别 0未知 1男 2女") - @TableField(exist = false) - private String sex; + private Integer sex; @Schema(description = "年龄") - @TableField(exist = false) private Integer age; @Schema(description = "身高") diff --git a/src/main/java/com/gxwebsoft/clinic/entity/ClinicPrescription.java b/src/main/java/com/gxwebsoft/clinic/entity/ClinicPrescription.java index 6988786..fadc3e3 100644 --- a/src/main/java/com/gxwebsoft/clinic/entity/ClinicPrescription.java +++ b/src/main/java/com/gxwebsoft/clinic/entity/ClinicPrescription.java @@ -33,9 +33,33 @@ public class ClinicPrescription implements Serializable { @Schema(description = "患者") private Integer userId; + @Schema(description = "患者名称") + @TableField(exist = false) + private String realName; + + @Schema(description = "年龄") + @TableField(exist = false) + private String age; + + @Schema(description = "身高") + @TableField(exist = false) + private String height; + + @Schema(description = "体重") + @TableField(exist = false) + private String weight; + @Schema(description = "医生") private Integer doctorId; + @Schema(description = "医生名称") + @TableField(exist = false) + private String doctorName; + + @Schema(description = "医生资格") + @TableField(exist = false) + private String qualification; + @Schema(description = "订单编号") private String orderNo; diff --git a/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPatientUserMapper.xml b/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPatientUserMapper.xml index dd9b63d..d2124a7 100644 --- a/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPatientUserMapper.xml +++ b/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPatientUserMapper.xml @@ -4,7 +4,7 @@ - SELECT a.*, b.phone,b.avatar, b.sex, b.age + SELECT a.*, b.phone, b.avatar FROM clinic_patient_user a LEFT JOIN gxwebsoft_core.sys_user b ON a.user_id = b.user_id diff --git a/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPrescriptionMapper.xml b/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPrescriptionMapper.xml index 19b24ea..290025c 100644 --- a/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPrescriptionMapper.xml +++ b/src/main/java/com/gxwebsoft/clinic/mapper/xml/ClinicPrescriptionMapper.xml @@ -4,8 +4,10 @@ - SELECT a.* + SELECT a.*, b.real_name, b.age, b.sex, b.height, b.weight, c.real_name as doctorName, c.qualification FROM clinic_prescription a + LEFT JOIN clinic_patient_user b ON a.user_id = b.user_id + LEFT JOIN clinic_doctor_user c ON a.doctor_id = c.user_id AND a.id = #{param.id} diff --git a/src/main/java/com/gxwebsoft/clinic/service/ClinicPrescriptionService.java b/src/main/java/com/gxwebsoft/clinic/service/ClinicPrescriptionService.java index 820cd8d..5e6d4c0 100644 --- a/src/main/java/com/gxwebsoft/clinic/service/ClinicPrescriptionService.java +++ b/src/main/java/com/gxwebsoft/clinic/service/ClinicPrescriptionService.java @@ -40,4 +40,6 @@ public interface ClinicPrescriptionService extends IService */ ClinicPrescription getByIdRel(Integer id); + // 添加成功后返回数据 + ClinicPrescription getByLastId(ClinicPrescription clinicPrescription); } diff --git a/src/main/java/com/gxwebsoft/clinic/service/impl/ClinicPrescriptionServiceImpl.java b/src/main/java/com/gxwebsoft/clinic/service/impl/ClinicPrescriptionServiceImpl.java index 0cc20fd..742f741 100644 --- a/src/main/java/com/gxwebsoft/clinic/service/impl/ClinicPrescriptionServiceImpl.java +++ b/src/main/java/com/gxwebsoft/clinic/service/impl/ClinicPrescriptionServiceImpl.java @@ -1,6 +1,7 @@ package com.gxwebsoft.clinic.service.impl; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gxwebsoft.clinic.entity.ClinicPrescription; import com.gxwebsoft.clinic.entity.ClinicPrescriptionItem; @@ -66,4 +67,9 @@ public class ClinicPrescriptionServiceImpl extends ServiceImpl().orderByDesc(ClinicPrescription::getId).eq(ClinicPrescription::getUserId, clinicPrescription.getUserId()).last("limit 1")); + } + } diff --git a/src/main/java/com/gxwebsoft/common/system/service/impl/MenuServiceImpl.java b/src/main/java/com/gxwebsoft/common/system/service/impl/MenuServiceImpl.java index c6e84d2..969aee3 100644 --- a/src/main/java/com/gxwebsoft/common/system/service/impl/MenuServiceImpl.java +++ b/src/main/java/com/gxwebsoft/common/system/service/impl/MenuServiceImpl.java @@ -78,7 +78,7 @@ public class MenuServiceImpl extends ServiceImpl implements Me }); // 5.调整新插件的排序 final Menu menu = baseMapper.selectById(this.plugMenuId); - menu.setSortNumber(0); + menu.setSortNumber(100); baseMapper.updateById(menu); return true; }