From ce7717b14b7f96c2462f7dbad78d6b4875de9d65 Mon Sep 17 00:00:00 2001 From: LiJianZhao Date: Fri, 16 May 2025 15:37:47 +0800 Subject: [PATCH] dev --- .../common/annotations/RecordCommonLog.java | 12 +++++ .../common/config/RecordCommonLogAspect.java | 49 +++++++++++++++++++ .../controller/charge/ChargeController.java | 6 +++ .../controller/common/FileController.java | 2 +- .../controller/common/SignController.java | 4 ++ .../diagnosis/MedicalRecordController.java | 3 ++ .../controller/goods/GoodsCateController.java | 3 ++ .../controller/goods/GoodsController.java | 6 +++ .../inventory/InventoryApplyController.java | 2 + .../inventory/InventoryCheckController.java | 3 +- .../inventory/InventoryController.java | 25 +++++----- .../InventoryPurchaseController.java | 5 ++ .../InventorySupplierController.java | 2 + .../controller/item/ItemController.java | 4 +- .../controller/item/ItemGroupController.java | 4 +- .../OrganizationMemberController.java | 3 ++ .../OrganizationSectionController.java | 5 ++ .../controller/patient/PatientController.java | 7 ++- .../patient/RegistrationController.java | 6 +++ .../SocialReconciliationController.java | 4 ++ .../social/SocialUploadController.java | 1 + .../controller/vip/VipIntegralController.java | 2 + .../vip/VipLevelConfigController.java | 10 ++-- .../server/entity/common/CommonLog.java | 16 ++++-- .../clinic/server/service/BaseService.java | 19 +------ .../service/common/CommonLogService.java | 39 +++++++++++++++ .../social/SocialInventoryUploadService.java | 2 +- 27 files changed, 200 insertions(+), 44 deletions(-) create mode 100644 src/main/java/com/syjiaer/clinic/server/common/annotations/RecordCommonLog.java create mode 100644 src/main/java/com/syjiaer/clinic/server/common/config/RecordCommonLogAspect.java create mode 100644 src/main/java/com/syjiaer/clinic/server/service/common/CommonLogService.java diff --git a/src/main/java/com/syjiaer/clinic/server/common/annotations/RecordCommonLog.java b/src/main/java/com/syjiaer/clinic/server/common/annotations/RecordCommonLog.java new file mode 100644 index 0000000..cd605db --- /dev/null +++ b/src/main/java/com/syjiaer/clinic/server/common/annotations/RecordCommonLog.java @@ -0,0 +1,12 @@ +package com.syjiaer.clinic.server.common.annotations; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +public @interface RecordCommonLog { + String operation() default "默认事件"; +} diff --git a/src/main/java/com/syjiaer/clinic/server/common/config/RecordCommonLogAspect.java b/src/main/java/com/syjiaer/clinic/server/common/config/RecordCommonLogAspect.java new file mode 100644 index 0000000..b09fba7 --- /dev/null +++ b/src/main/java/com/syjiaer/clinic/server/common/config/RecordCommonLogAspect.java @@ -0,0 +1,49 @@ +package com.syjiaer.clinic.server.common.config; + +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; +import com.syjiaer.clinic.server.common.util.InfoUtil; +import com.syjiaer.clinic.server.common.util.ParmsUtil; +import com.syjiaer.clinic.server.entity.common.CommonLog; +import com.syjiaer.clinic.server.entity.manager.ManagerUser; +import com.syjiaer.clinic.server.mapper.common.CommonLogMapper; +import com.syjiaer.clinic.server.service.common.CommonLogService; +import lombok.extern.apachecommons.CommonsLog; +import lombok.extern.slf4j.Slf4j; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.After; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import org.aspectj.lang.reflect.MethodSignature; +import java.lang.reflect.Method; +import java.util.Map; + +@Component +@Aspect +@Slf4j +public class RecordCommonLogAspect { + @Autowired + private CommonLogService commonLogService; + @Pointcut("@annotation(com.syjiaer.clinic.server.common.annotations.RecordCommonLog)") + public void pointcut() { + } + + + @After("pointcut()") + public void after(JoinPoint joinPoint) { + // 获取被切入的方法 + MethodSignature signature = (MethodSignature) joinPoint.getSignature(); + Method method = signature.getMethod(); + + // 获取方法上的注解 + String operation = "未知"; + if (method.isAnnotationPresent(RecordCommonLog.class)) { + RecordCommonLog annotation = method.getAnnotation(RecordCommonLog.class); + operation =annotation.operation(); + } + commonLogService.saveLog(operation); + } +} diff --git a/src/main/java/com/syjiaer/clinic/server/controller/charge/ChargeController.java b/src/main/java/com/syjiaer/clinic/server/controller/charge/ChargeController.java index 61709ab..caeff99 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/charge/ChargeController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/charge/ChargeController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.charge; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.api.output.OM2206A; import com.syjiaer.clinic.server.common.api.output.OM2207A; import com.syjiaer.clinic.server.common.util.DateUtil; @@ -33,6 +34,7 @@ public class ChargeController extends BaseController { * 保存收费订单 * @return */ + @RecordCommonLog(operation = "生成订单") @RequestMapping("/save") public Result save() { ChargeSaveDto dto = parmsUtil.getObject("data", ChargeSaveDto.class); @@ -62,6 +64,7 @@ public class ChargeController extends BaseController { * 完成订单 * @return */ + @RecordCommonLog(operation = "完成订单") @RequestMapping("/completeOrder") public Result completeOrder() { Integer id = parmsUtil.getInteger("id"); @@ -85,6 +88,7 @@ public class ChargeController extends BaseController { * 医保上传支付明细 * @return */ + @RecordCommonLog(operation = "上传医保费用明细") @RequestMapping("/uploadCostDetails") public Result uploadCostDetails() { String changeOrderCode = parmsUtil.getString("changeOrderCode"); @@ -109,6 +113,7 @@ public class ChargeController extends BaseController { * 医保真实支付 * @return */ + @RecordCommonLog(operation = "医保收费") @RequestMapping("/socialRealPay") public Result socialRealPay(){ String changeOrderCode = parmsUtil.getString("changeOrderCode"); @@ -124,6 +129,7 @@ public class ChargeController extends BaseController { /** * 订单退款 */ + @RecordCommonLog(operation = "订单退款") @RequestMapping("/refund") public Result refund() { String changeOrderCode = parmsUtil.getString("changeOrderCode","订单号为空"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/common/FileController.java b/src/main/java/com/syjiaer/clinic/server/controller/common/FileController.java index 791a63d..4ac7e0c 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/common/FileController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/common/FileController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.common; import com.syjiaer.clinic.server.common.annotations.NoAuthCheck; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; @@ -27,7 +28,6 @@ import java.util.UUID; public class FileController extends BaseController { @Autowired private FileService fileService; - @RequestMapping("/upload") @NoAuthCheck public Result handleFileUpload(@RequestParam("file") MultipartFile file) { diff --git a/src/main/java/com/syjiaer/clinic/server/controller/common/SignController.java b/src/main/java/com/syjiaer/clinic/server/controller/common/SignController.java index 120a289..fb24fc9 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/common/SignController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/common/SignController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.common; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; import com.syjiaer.clinic.server.entity.manager.ManagerUserSign; @@ -15,6 +16,8 @@ import org.springframework.web.bind.annotation.RestController; public class SignController extends BaseController { @Autowired private SignService signService; + + @RecordCommonLog(operation = "医保签到") @RequestMapping("/in") public Result in() { String mac = parmsUtil.getString("mac", "请输入mac地址"); @@ -22,6 +25,7 @@ public class SignController extends BaseController { ManagerUserSign signResult = signService.in(ip, mac); return success(signResult); } + @RecordCommonLog(operation = "医保签退") @RequestMapping("/out") public Result out() { signService.out(); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/diagnosis/MedicalRecordController.java b/src/main/java/com/syjiaer/clinic/server/controller/diagnosis/MedicalRecordController.java index d768827..2bc924d 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/diagnosis/MedicalRecordController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/diagnosis/MedicalRecordController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.diagnosis; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; @@ -31,6 +32,7 @@ public class MedicalRecordController extends BaseController { * 保存病历 * @return */ + @RecordCommonLog(operation = "完成诊断,保存病历信息") @RequestMapping("/save") public Result save() { MedicalRecordSaveDto saveDto = parmsUtil.getObject("data", MedicalRecordSaveDto.class); @@ -42,6 +44,7 @@ public class MedicalRecordController extends BaseController { * 查询患者病历 * @return */ + @RequestMapping("/listByPatient") public Result> listByPatient() { Integer patientId = parmsUtil.getInteger("patientId", "患者不能为空"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsCateController.java b/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsCateController.java index 1730c67..0a99a96 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsCateController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsCateController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.goods; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; import com.syjiaer.clinic.server.entity.goods.GoodsCate; @@ -52,6 +53,7 @@ public class GoodsCateController extends BaseController { * 删除二级分类 * 参数 id */ + @RecordCommonLog(operation = "删除商品二级分类") @RequestMapping("del") public Result del(){ Map map=getParms(); @@ -64,6 +66,7 @@ public class GoodsCateController extends BaseController { * 保存二级分类 * 参数 cateList */ + @RecordCommonLog(operation = "保存商品二级分类") @RequestMapping("save") public Result save(){ List cateList = parmsUtil.getList("cateList", GoodsCate.class); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsController.java b/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsController.java index fe5e14e..7bf7a64 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/goods/GoodsController.java @@ -2,6 +2,7 @@ package com.syjiaer.clinic.server.controller.goods; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.enums.GoodsPricingModelEnum; import com.syjiaer.clinic.server.common.util.ParmsUtil; import com.syjiaer.clinic.server.common.vo.Page; @@ -41,6 +42,7 @@ public class GoodsController extends BaseController { * 商品建档 或 修改 * @return */ + @RecordCommonLog(operation = "商品建档或修改") @RequestMapping("save") public Result save() { @@ -80,6 +82,7 @@ public class GoodsController extends BaseController { /** * 商品重新初始化医保库存 */ + @RecordCommonLog(operation = "商品重新初始化医保库存") @RequestMapping("returnInit") public Result returnInit() { Integer goodId = parmsUtil.getInteger("id"); @@ -122,6 +125,7 @@ public class GoodsController extends BaseController { * 商品添加标识码 * 参数:goodsId,idCode */ + @RecordCommonLog(operation = "商品添加标识码") @RequestMapping("addIdCode") public Result addIdCode(){ Integer goodsId = parmsUtil.getInteger("goodsId","商品id为空"); @@ -143,6 +147,7 @@ public class GoodsController extends BaseController { /** * 停售 */ + @RecordCommonLog(operation = "停售商品") @RequestMapping("disableSale") public Result disableSale() { Integer id = parmsUtil.getInteger("id", "id不存在"); @@ -151,6 +156,7 @@ public class GoodsController extends BaseController { /** * 启售商品 */ + @RecordCommonLog(operation = "启售商品") @RequestMapping("enableSale") public Result enableSale() { Integer id = parmsUtil.getInteger("id", "id不存在"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryApplyController.java b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryApplyController.java index e68153e..44eb92a 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryApplyController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryApplyController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.inventory; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.constants.Constants; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -28,6 +29,7 @@ public class InventoryApplyController extends BaseController { /** * 创建领用单并领用 */ + @RecordCommonLog(operation = "创建领用单并领用") @RequestMapping("/create") public Result create() { List mapList = parmsUtil.getList("data",Map.class); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryCheckController.java b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryCheckController.java index b77d6e0..75ee646 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryCheckController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryCheckController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.inventory; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; @@ -34,8 +35,8 @@ public class InventoryCheckController extends BaseController { /** * 保存盘点记录 */ + @RecordCommonLog(operation = "完成盘点") @RequestMapping("/save") - @Transactional public Result save() { List list = parmsUtil.getList("list", Map.class); String remark = parmsUtil.getString("remark"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryController.java b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryController.java index 57ba0b8..54c6d61 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.inventory; import com.alibaba.fastjson.JSON; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.util.DateUtil; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; @@ -31,8 +32,9 @@ public class InventoryController extends BaseController { private InventoryPurchaseService iInventoryPurchaseService; @Autowired private InventoryService inventoryService; + /** - *根据采购单code 获取采购单信息 + * 根据采购单code 获取采购单信息 */ @RequestMapping("/listByOrderCode") public Result> listByOrderCode() { @@ -41,7 +43,6 @@ public class InventoryController extends BaseController { } - /** * 根据goodsId 获取该goods的所有库存信息 带库存总量 */ @@ -55,7 +56,7 @@ public class InventoryController extends BaseController { return error("商品不存在"); } Map goodsMap = JSON.parseObject(JSON.toJSONString(goods), Map.class); - List list = inventoryService.getListByGoodsId(goodsId,isZero); + List list = inventoryService.getListByGoodsId(goodsId, isZero); List> listMap = new ArrayList<>(); for (Inventory inventory : list) { Map map = new HashMap<>(); @@ -85,7 +86,7 @@ public class InventoryController extends BaseController { if (goods == null) { return error("商品不存在"); } - List list = inventoryService.getListByGoodsId(goodsId,true); + List list = inventoryService.getListByGoodsId(goodsId, true); return success(list); } @@ -106,10 +107,10 @@ public class InventoryController extends BaseController { * 进销存统计 */ @RequestMapping("/getInventoryStatistics") - public Result< List> getInventoryStatistics() { - int goodsId = parmsUtil.getInteger("goodsId","请选择商品id"); - String startDateStr = parmsUtil.getString("startDate","请选择开始时间"); - String endDateStr= parmsUtil.getString("endDate","请选择结束时间"); + public Result> getInventoryStatistics() { + int goodsId = parmsUtil.getInteger("goodsId", "请选择商品id"); + String startDateStr = parmsUtil.getString("startDate", "请选择开始时间"); + String endDateStr = parmsUtil.getString("endDate", "请选择结束时间"); LocalDateTime startDateTime = DateUtil.getDateTime(startDateStr); LocalDateTime endDateTime = DateUtil.getDateTime(endDateStr).plusDays(1); List inventoryStatistics = inventoryService.getInventoryStatistics(goodsId, startDateTime, endDateTime); @@ -119,9 +120,9 @@ public class InventoryController extends BaseController { //todo getInventoryLog @RequestMapping("/getInventoryLog") public Result>> getInventoryLog() { - int goodsId = parmsUtil.getInteger("goodsId","请选择商品id"); - String startDateStr = parmsUtil.getString("startDate","请选择开始时间"); - String endDateStr= parmsUtil.getString("endDate","请选择结束时间"); + int goodsId = parmsUtil.getInteger("goodsId", "请选择商品id"); + String startDateStr = parmsUtil.getString("startDate", "请选择开始时间"); + String endDateStr = parmsUtil.getString("endDate", "请选择结束时间"); LocalDateTime startDateTime = DateUtil.getDateTime(startDateStr); LocalDateTime endDateTime = DateUtil.getDateTime(endDateStr).plusDays(1); List> inventoryStatistics = inventoryService.getInventoryLogByGoodsId(goodsId, startDateTime, endDateTime); @@ -130,8 +131,10 @@ public class InventoryController extends BaseController { /** * 采购单 采购项修改 + * * @return */ + @RecordCommonLog(operation = "更改采购单商品信息") @RequestMapping("/update") public Result update() { List list = parmsUtil.getList("list", Inventory.class); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryPurchaseController.java b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryPurchaseController.java index a402d49..d68133c 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryPurchaseController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventoryPurchaseController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.inventory; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.constants.Constants; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -36,6 +37,7 @@ public class InventoryPurchaseController extends BaseController { * 创建采购单 * @return */ + @RecordCommonLog(operation = "创建采购单") @RequestMapping("/create") public Result create() { InventoryPurchase purchase_order = parmsUtil.getObject("inventoryOrder", InventoryPurchase.class); @@ -70,6 +72,7 @@ public class InventoryPurchaseController extends BaseController { * 更新采购单基本信息 * @return */ + @RecordCommonLog(operation = "更新采购单基本信息") @RequestMapping("/update") public Result update() { InventoryPurchase inventoryOrder = parmsUtil.getObject("inventoryOrder", InventoryPurchase.class); @@ -84,6 +87,7 @@ public class InventoryPurchaseController extends BaseController { * 采购单修改时 添加采购的商品 * @return */ + @RecordCommonLog(operation = "已有的采购单中添加商品") @RequestMapping("/addOneGoods") public Result addOneGoods() { Inventory inventory = parmsUtil.getObject("data", Inventory.class); @@ -102,6 +106,7 @@ public class InventoryPurchaseController extends BaseController { *采购单退货 * @return */ + @RecordCommonLog(operation = "采购单退货") @RequestMapping("/returnable") public Result returnable() { List list = parmsUtil.getIntList("idList"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventorySupplierController.java b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventorySupplierController.java index b3c87fa..72cb0b6 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventorySupplierController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/inventory/InventorySupplierController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.inventory; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.constants.Constants; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -33,6 +34,7 @@ public class InventorySupplierController extends BaseController { * 保存供货商 * @return */ + @RecordCommonLog(operation = "保存供货商") @RequestMapping("/save") public Result save() { InventorySupplier inventorySupplier = parmsUtil.getObject("inventorySupplier", InventorySupplier.class); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/item/ItemController.java b/src/main/java/com/syjiaer/clinic/server/controller/item/ItemController.java index d329ea8..124cd11 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/item/ItemController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/item/ItemController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.item; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -39,13 +40,14 @@ public class ItemController extends BaseController { } return success(itemService.get(id)); } - + @RecordCommonLog(operation = "保存服务项目") @RequestMapping("/add") public Result createItem() { Item item = parmsUtil.getObject("data", Item.class); itemService.save(item); return success(); } + @RecordCommonLog(operation = "编辑服务项目") @RequestMapping("/edit") public Result updateItem() { Item item = parmsUtil.getObject("data", Item.class); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/item/ItemGroupController.java b/src/main/java/com/syjiaer/clinic/server/controller/item/ItemGroupController.java index e3bab63..98da331 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/item/ItemGroupController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/item/ItemGroupController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.item; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -33,6 +34,7 @@ public class ItemGroupController extends BaseController { return success(itemGroup); } + @RecordCommonLog(operation = "保存服务项目组套") @RequestMapping("/save") public Result save() { ItemGroupParam itemGroupParam = parmsUtil.getObject("data", ItemGroupParam.class); @@ -42,7 +44,7 @@ public class ItemGroupController extends BaseController { itemGroupService.save(itemGroupParam); return success(); } - + @RecordCommonLog(operation = "删除服务项目组套") @RequestMapping("/delete") public Result delete() { Integer id = parmsUtil.getInteger("id", "id不能为空"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationMemberController.java b/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationMemberController.java index 90ee4d8..9b000e1 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationMemberController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationMemberController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.organization; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -31,6 +32,7 @@ public class OrganizationMemberController extends BaseController { return success(organizationMemberService.pageList(page,size,name,tel)); } @RequestMapping("/save") + @RecordCommonLog(operation = "保存成员信息") public Result save() { OrganizationMemberSaveDto dto = parmsUtil.getObject("data", OrganizationMemberSaveDto.class); if(dto ==null){ @@ -40,6 +42,7 @@ public class OrganizationMemberController extends BaseController { return success(); } @RequestMapping("/delete") + @RecordCommonLog(operation = "删除成员") public Result delete() { Integer id = parmsUtil.getInteger("id"); if(id == null){ diff --git a/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationSectionController.java b/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationSectionController.java index 759d188..f75eaec 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationSectionController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/organization/OrganizationSectionController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.organization; import com.alibaba.fastjson.JSONObject; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -28,12 +29,14 @@ public class OrganizationSectionController extends BaseController { String resperTel = parmsUtil.getString("resperTel"); return success(organizationSectionService.list(page,size,name,caty,resperName,resperTel)); } + @RecordCommonLog(operation = "添加科室") @RequestMapping("/add") public Result add() { OrganizationSection organizationSection = parmsUtil.getObjectWithCheck("data", OrganizationSection.class); organizationSectionService.add(organizationSection); return success("添加成功"); } + @RecordCommonLog(operation = "修改科室信息") @RequestMapping("/edit") public Result edit() { OrganizationSection organizationSection = parmsUtil.getObjectWithCheck("data", OrganizationSection.class); @@ -43,6 +46,8 @@ public class OrganizationSectionController extends BaseController { organizationSectionService.edit(organizationSection); return success("编辑成功"); } + + @RecordCommonLog(operation = "删除科室") @RequestMapping("/delete") public Result delete() { Integer id = parmsUtil.getInteger("id"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/patient/PatientController.java b/src/main/java/com/syjiaer/clinic/server/controller/patient/PatientController.java index 0e4e27a..99efe83 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/patient/PatientController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/patient/PatientController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.patient; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; @@ -30,13 +31,14 @@ public class PatientController extends BaseController { private PatientInfoService patientInfoService; @RequestMapping("/create") + @RecordCommonLog(operation = "创建患者") public Result create() { PatientInfo patientInfo = parmsUtil.getObject("vipInfo", PatientInfo.class); patientInfoService.create(patientInfo); return success(); } - + @RecordCommonLog(operation = "修改患者信息") @RequestMapping("/update") public Result update() { PatientInfo patientInfo = parmsUtil.getObject("vipInfo", PatientInfo.class); @@ -45,6 +47,7 @@ public class PatientController extends BaseController { } @RequestMapping("/delete") + @RecordCommonLog(operation = "删除患者") public Result delete() { int patientId = parmsUtil.getInteger("id", "ID不能为空"); return success(patientInfoService.removeById(patientId)); @@ -72,7 +75,7 @@ public class PatientController extends BaseController { List list = patientInfoService.search(keyword); return success(list); } - + @RecordCommonLog(operation = "改变会员等级") @RequestMapping("/changeLevel") public Result changeLevel() { int vipId = parmsUtil.getInteger("vipId", "会员ID不能为空"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java b/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java index 6270162..ce4c205 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/patient/RegistrationController.java @@ -1,5 +1,6 @@ package com.syjiaer.clinic.server.controller.patient; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.exception.MessageException; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; @@ -29,6 +30,7 @@ public class RegistrationController extends BaseController { * 挂号 * @return */ + @RecordCommonLog(operation = "挂号") @RequestMapping("/add") public Result registration() { @@ -55,6 +57,7 @@ public class RegistrationController extends BaseController { /** *取消挂号 */ + @RecordCommonLog(operation = "取消挂号") @RequestMapping("/cancel") public Result cancel() { Integer id = parmsUtil.getInteger("id"); @@ -66,6 +69,7 @@ public class RegistrationController extends BaseController { * 修改挂号信息 * @return */ + @RecordCommonLog(operation = "修改挂号信息") @RequestMapping("/edit") public Result edit() { PatientRegistration registration = parmsUtil.getObjectWithCheck("data", PatientRegistration.class); @@ -80,6 +84,7 @@ public class RegistrationController extends BaseController { * 删除挂号信息 * @return */ + @RecordCommonLog(operation = "删除挂号信息") @RequestMapping("/delete") public Result delete() { Integer id = parmsUtil.getInteger("id"); @@ -135,6 +140,7 @@ public class RegistrationController extends BaseController { * 更改挂号单状态 在诊断 诊断 * @return */ + @RecordCommonLog(operation = "更改挂号单状态") @RequestMapping("/changeStatus") public Result changeStatus(){ Integer regisId= parmsUtil.getInteger("id","挂号单不能为空"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialReconciliationController.java b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialReconciliationController.java index e513f36..f93bcf6 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialReconciliationController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialReconciliationController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.social; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.api.input.IM2601; import com.syjiaer.clinic.server.common.api.input.IM3201; import com.syjiaer.clinic.server.common.api.output.OM3201; @@ -54,6 +55,7 @@ public class SocialReconciliationController extends BaseController { /** * 对总账 */ + @RecordCommonLog(operation = "对总账") @RequestMapping("/totalDo") public Result totalDo(){ ReconciliationItemDto dto = parmsUtil.getObject("data", ReconciliationItemDto.class); @@ -62,6 +64,7 @@ public class SocialReconciliationController extends BaseController { /** * 明细对账 */ + @RecordCommonLog(operation = "明细对账") @RequestMapping("/detailDo") public Result> detailDo(){ ReconciliationItemDto dto = parmsUtil.getObject("data", ReconciliationItemDto.class); @@ -82,6 +85,7 @@ public class SocialReconciliationController extends BaseController { /** * 冲正 */ + @RecordCommonLog(operation = "冲正") @RequestMapping("/reversal") public Result reversal(){ diff --git a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialUploadController.java b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialUploadController.java index 4751c38..9509496 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/social/SocialUploadController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/social/SocialUploadController.java @@ -81,6 +81,7 @@ public class SocialUploadController extends BaseController { /** * 单独上报3501 */ + @RequestMapping("upload3501Data") public Result upload3501Data() { return success(socialInventoryUploadService.upload3501()); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/vip/VipIntegralController.java b/src/main/java/com/syjiaer/clinic/server/controller/vip/VipIntegralController.java index 054ea7c..a19a867 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/vip/VipIntegralController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/vip/VipIntegralController.java @@ -1,6 +1,7 @@ package com.syjiaer.clinic.server.controller.vip; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.vo.Page; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; @@ -24,6 +25,7 @@ public class VipIntegralController extends BaseController { @Autowired private PatientInfoService patientInfoService; + @RecordCommonLog(operation = "添加会员积分") @RequestMapping("/add") public Result add(){ Integer vipId = parmsUtil.getInteger("vipId","请输入会员id"); diff --git a/src/main/java/com/syjiaer/clinic/server/controller/vip/VipLevelConfigController.java b/src/main/java/com/syjiaer/clinic/server/controller/vip/VipLevelConfigController.java index 374bb93..b7be1b5 100644 --- a/src/main/java/com/syjiaer/clinic/server/controller/vip/VipLevelConfigController.java +++ b/src/main/java/com/syjiaer/clinic/server/controller/vip/VipLevelConfigController.java @@ -2,6 +2,7 @@ package com.syjiaer.clinic.server.controller.vip; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.vo.Result; import com.syjiaer.clinic.server.controller.BaseController; import com.syjiaer.clinic.server.entity.vip.VipLevelConfig; @@ -27,14 +28,14 @@ import java.util.List; public class VipLevelConfigController extends BaseController { @Autowired private VipLevelConfigService vipLevelConfigService; - + @RecordCommonLog(operation = "创建会员等级配置") @RequestMapping("/create") public Result create() { VipLevelConfig levelConfig = parmsUtil.getObject("vipLevelConfig", VipLevelConfig.class); vipLevelConfigService.create(levelConfig); return success(); } - + @RecordCommonLog(operation = "修改会员等级配置") @RequestMapping("/edit") public Result edit() { VipLevelConfig levelConfig = parmsUtil.getObject("vipLevelConfig", VipLevelConfig.class); @@ -44,17 +45,16 @@ public class VipLevelConfigController extends BaseController { return success(); } + @RecordCommonLog(operation = "保存会员等级配置") @RequestMapping("/save") - @Transactional public Result save() { List levelConfigList = parmsUtil.getList("vipLevelConfig", VipLevelConfig.class); vipLevelConfigService.save(levelConfigList); return success(); } - + @RecordCommonLog(operation = "删除一个会员等级配置") @RequestMapping("/delete") - @Transactional(rollbackFor = Exception.class) public Result delete() { int id = parmsUtil.getInteger("id", "ID不能为空"); vipLevelConfigService.delete(id); diff --git a/src/main/java/com/syjiaer/clinic/server/entity/common/CommonLog.java b/src/main/java/com/syjiaer/clinic/server/entity/common/CommonLog.java index 8680650..8a22475 100644 --- a/src/main/java/com/syjiaer/clinic/server/entity/common/CommonLog.java +++ b/src/main/java/com/syjiaer/clinic/server/entity/common/CommonLog.java @@ -5,20 +5,19 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.time.LocalDateTime; import lombok.Getter; import lombok.Setter; import lombok.ToString; import lombok.experimental.Accessors; - -import java.io.Serializable; -import java.time.LocalDateTime; /** *

* 操作日志 *

* * @author NiuZiYuan - * @since 2025-04-17 + * @since 2025-05-16 */ @Getter @Setter @@ -42,4 +41,13 @@ public class CommonLog implements Serializable { @ApiModelProperty("创建时间") private LocalDateTime createDatetime; + + @ApiModelProperty("管理员名称") + private String managerName; + + @ApiModelProperty("管理员账号") + private String managerUsername; + + @ApiModelProperty("请求参数") + private String params; } diff --git a/src/main/java/com/syjiaer/clinic/server/service/BaseService.java b/src/main/java/com/syjiaer/clinic/server/service/BaseService.java index 5e0af6f..ac2536c 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/BaseService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/BaseService.java @@ -32,28 +32,13 @@ public abstract class BaseService { private ParmsUtil parmsUtil; @Autowired private HeadersUtil headersUtil; - @Autowired - private CommonLogMapper commonLogMapper; + @Value("${jwt.expiration}") protected long jwtExpiration; @Value("${jwt.secret}") protected String jwtSecret; - /* - * 保存日志 - * @param message 日志信息 - */ - public void saveLog(String message) { - CommonLog commonLog = new CommonLog(); - int manager_id = 0; - if (getInfos().get("manager_id") != null) { - manager_id = Integer.parseInt(getInfos().get("manager_id").toString()); - } - commonLog.setManagerId(manager_id); - commonLog.setMessage(message); - commonLog.setCreateDatetime(LocalDateTime.now()); - commonLogMapper.insert(commonLog); - } + protected ManagerUser getManagerUser() { return managerUtil.getManagerUser(); diff --git a/src/main/java/com/syjiaer/clinic/server/service/common/CommonLogService.java b/src/main/java/com/syjiaer/clinic/server/service/common/CommonLogService.java new file mode 100644 index 0000000..e838b10 --- /dev/null +++ b/src/main/java/com/syjiaer/clinic/server/service/common/CommonLogService.java @@ -0,0 +1,39 @@ +package com.syjiaer.clinic.server.service.common; + +import com.alibaba.fastjson2.JSONObject; +import com.syjiaer.clinic.server.common.exception.MessageException; +import com.syjiaer.clinic.server.entity.common.CommonLog; +import com.syjiaer.clinic.server.entity.manager.ManagerUser; +import com.syjiaer.clinic.server.mapper.common.CommonLogMapper; +import com.syjiaer.clinic.server.service.BaseService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.time.LocalDateTime; +import java.util.Map; + +@Service +public class CommonLogService extends BaseService { + @Autowired + private CommonLogMapper commonLogMapper; + /* + * 保存日志 + * @param message 日志信息 + */ + public void saveLog(String message) { + + ManagerUser managerUser = getManagerUser(); + if (managerUser == null){ + throw new MessageException("获取登录用户信息失败"); + } + CommonLog commonLog = new CommonLog(); + commonLog.setManagerId(managerUser.getId()); + commonLog.setManagerName(managerUser.getName()); + commonLog.setManagerUsername(managerUser.getUsername()); + commonLog.setMessage(message); + commonLog.setCreateDatetime(LocalDateTime.now()); + Map map = getParms(); + commonLog.setParams(JSONObject.toJSONString(map)); + commonLogMapper.insert(commonLog); + } +} diff --git a/src/main/java/com/syjiaer/clinic/server/service/social/SocialInventoryUploadService.java b/src/main/java/com/syjiaer/clinic/server/service/social/SocialInventoryUploadService.java index c84056b..cb5630c 100644 --- a/src/main/java/com/syjiaer/clinic/server/service/social/SocialInventoryUploadService.java +++ b/src/main/java/com/syjiaer/clinic/server/service/social/SocialInventoryUploadService.java @@ -2,6 +2,7 @@ package com.syjiaer.clinic.server.service.social; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.syjiaer.clinic.server.common.annotations.RecordCommonLog; import com.syjiaer.clinic.server.common.api.input.*; import com.syjiaer.clinic.server.common.api.request.SocialRequest; import com.syjiaer.clinic.server.common.constants.Constants; @@ -234,7 +235,6 @@ public class SocialInventoryUploadService extends BaseService { notDoNumberVo.setTotalNumber(count3501 + count3502 + count3503 + count3505); return notDoNumberVo; } - public boolean upload3501() { QueryWrapper initQuery = new QueryWrapper<>(); initQuery.in("upload_status", UploadStatusEnum.NoUpload.getStatus(), UploadStatusEnum.UploadFailed.getStatus());