diff --git a/nursing-unit-common/src/main/java/com/nu/dto/DirectiveOpeLogInfoMQDto.java b/nursing-unit-common/src/main/java/com/nu/dto/DirectiveOpeLogInfoMQDto.java new file mode 100644 index 00000000..4c27f51d --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/dto/DirectiveOpeLogInfoMQDto.java @@ -0,0 +1,67 @@ +package com.nu.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; + +/** + * @Description: 服务指令操作日志详情表 + * @Author: jeecg-boot + * @Date: 2025-12-22 + * @Version: V1.0 + */ +@Data +public class DirectiveOpeLogInfoMQDto implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + private String id; + /**nu_config_directive_ope_log_main.id*/ + private String pkId; + /**分类标签*/ + private String instructionTagId; + /**分类标签名称*/ + private String instructionTagName; + /**服务类别id*/ + private String categoryId; + /**服务类别名称*/ + private String categoryName; + /**服务类型id*/ + private String typeId; + /**服务类型名称*/ + private String typeName; + /**服务指令id*/ + private String directiveId; + /**服务指令名称*/ + private String directiveName; + /**收费价格*/ + private BigDecimal tollPrice; + /**提成价格*/ + private BigDecimal comPrice; + /**周期类型 1日常护理 2周期护理 3即时护理*/ + private String cycleType; + /**服务说明*/ + private String serviceContent; + /**服务时长(分钟)*/ + private String serviceDuration; + /**所属部门*/ + private String sysOrgCode; + /**语音文件*/ + private String mp3File; + /**视频文件*/ + private String mp4File; + /**服务指令图片大图*/ + private String previewFile; + /**服务指令图片小图*/ + private String previewFileSmall; + /**即时指令图片*/ + private String immediateFile; + /**即时指令焦点图片*/ + private String immediateFileFocus; + /**创建日期*/ + private Date createTime; + /**数据类型 1修改前 2修改后*/ + private String dataType; +} diff --git a/nursing-unit-common/src/main/java/com/nu/dto/DirectiveOpeLogMainMQDto.java b/nursing-unit-common/src/main/java/com/nu/dto/DirectiveOpeLogMainMQDto.java new file mode 100644 index 00000000..a76357e8 --- /dev/null +++ b/nursing-unit-common/src/main/java/com/nu/dto/DirectiveOpeLogMainMQDto.java @@ -0,0 +1,41 @@ +package com.nu.dto; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @Description: 服务指令操作日志主表 + * @Author: jeecg-boot + * @Date: 2025-12-22 + * @Version: V1.0 + */ +@Data +public class DirectiveOpeLogMainMQDto implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + private String id; + /**机构编码*/ + private String orgCode; + /**操作类型 1新增 2修改*/ + private String opeType; + /**操作人*/ + private String createBy; + /**操作日期*/ + private Date createTime; + /**分类标签名称*/ + private String instructionTagName; + /**服务类别名称*/ + private String categoryName; + /**服务类型名称*/ + private String typeName; + /**服务指令名称*/ + private String directiveName; + /**周期类型名称*/ + private String cycleTypeName; + + private List opeInfoList; +} diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/controller/ConfigServiceDirectiveController.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/controller/ConfigServiceDirectiveController.java index 84c9d940..e6da28b7 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/controller/ConfigServiceDirectiveController.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/controller/ConfigServiceDirectiveController.java @@ -8,6 +8,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.nu.dto.DirectiveAsyncMQDto; +import com.nu.dto.DirectiveOpeLogInfoMQDto; +import com.nu.dto.DirectiveOpeLogMainMQDto; import com.nu.modules.config.canadddirective.entity.CanAddDirective; import com.nu.modules.config.canadddirective.service.ICanAddDirectiveService; import com.nu.modules.config.servicedirective.entity.ConfigServiceDirective; @@ -19,12 +21,14 @@ import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.compress.utils.Lists; import org.apache.commons.lang.StringUtils; +import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.api.ISysBaseAPI; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.query.QueryRuleEnum; +import org.jeecg.common.system.vo.LoginUser; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; @@ -283,13 +287,58 @@ public class ConfigServiceDirectiveController extends JeecgController infoList = Lists.newArrayList(); + DirectiveOpeLogInfoMQDto info = new DirectiveOpeLogInfoMQDto(); + info.setPkId(opeId);//主表id + info.setInstructionTagId(configServiceDirective.getInstructionTagId());//分类标签ID + info.setInstructionTagName(configServiceDirective.getInstructionName());//分类标签名称 + info.setCategoryId(configServiceDirective.getCategoryId());//服务类别id + info.setCategoryName(configServiceDirective.getCategoryName());//服务类别名称 + info.setTypeId(configServiceDirective.getTypeId());//服务类型ID + info.setTypeName(configServiceDirective.getTypeName());//服务类型名称 + info.setDirectiveId(configServiceDirective.getId());//服务指令ID + info.setDirectiveName(configServiceDirective.getDirectiveName());//服务指令名称 + info.setTollPrice(configServiceDirective.getTollPrice());//收费价格 + info.setComPrice(configServiceDirective.getComPrice());//提成价格 + info.setCycleType(configServiceDirective.getCycleType());//周期类型 + info.setServiceContent(configServiceDirective.getServiceContent());//服务说明 + info.setServiceDuration(configServiceDirective.getServiceDuration());//服务时长 + info.setSysOrgCode(configServiceDirective.getSysOrgCode());//所属部门 + info.setMp3File(configServiceDirective.getMp3File());//语音文件 + info.setMp4File(configServiceDirective.getMp4File());//视频文件 + info.setPreviewFile(configServiceDirective.getPreviewFile());//服务指令图片大图 + info.setPreviewFileSmall(configServiceDirective.getPreviewFileSmall());//服务指令图片小图 + info.setImmediateFile(configServiceDirective.getImmediateFile());//即时指令图片 + info.setImmediateFileFocus(configServiceDirective.getImmediateFileFocus());//即时指令焦点图片 + info.setCreateTime(new Date());//创建日期 + infoList.add(info); + mainMQDto.setOpeInfoList(infoList); + rabbitMQUtil.sendToExchange("hldy.directive", "hldy.directive.ope", mainMQDto); + } + return Result.OK("添加成功!"); } @@ -350,6 +399,8 @@ public class ConfigServiceDirectiveController extends JeecgController edit(@RequestBody ConfigServiceDirective configServiceDirective) { + ConfigServiceDirective his = configServiceDirectiveService.queryTranslate(configServiceDirective.getId()); + //处理媒体资源(放在保存方法之前) // configServiceDirectiveService.handleMediaFile(configServiceDirective); configServiceDirectiveService.updateById(configServiceDirective); @@ -372,6 +423,106 @@ public class ConfigServiceDirectiveController extends JeecgController infoList = Lists.newArrayList(); + //修改前 + { + DirectiveOpeLogInfoMQDto info = new DirectiveOpeLogInfoMQDto(); + info.setPkId(opeId);//主表id + info.setInstructionTagId(his.getInstructionTagId());//分类标签ID + info.setInstructionTagName(his.getInstructionName());//分类标签名称 + info.setCategoryId(his.getCategoryId());//服务类别id + info.setCategoryName(his.getCategoryName());//服务类别名称 + info.setTypeId(his.getTypeId());//服务类型ID + info.setTypeName(his.getTypeName());//服务类型名称 + info.setDirectiveId(his.getId());//服务指令ID + info.setDirectiveName(his.getDirectiveName());//服务指令名称 + info.setTollPrice(his.getTollPrice());//收费价格 + info.setComPrice(his.getComPrice());//提成价格 + info.setCycleType(his.getCycleType());//周期类型 + info.setServiceContent(his.getServiceContent());//服务说明 + info.setServiceDuration(his.getServiceDuration());//服务时长 + info.setSysOrgCode(his.getSysOrgCode());//所属部门 + info.setMp3File(his.getMp3File());//语音文件 + info.setMp4File(his.getMp4File());//视频文件 + info.setPreviewFile(his.getPreviewFile());//服务指令图片大图 + info.setPreviewFileSmall(his.getPreviewFileSmall());//服务指令图片小图 + info.setImmediateFile(his.getImmediateFile());//即时指令图片 + info.setImmediateFileFocus(his.getImmediateFileFocus());//即时指令焦点图片 + info.setCreateTime(new Date());//创建日期 + info.setDataType("1"); + infoList.add(info); + } + //修改后 + { + DirectiveOpeLogInfoMQDto info = new DirectiveOpeLogInfoMQDto(); + info.setPkId(opeId);//主表id + info.setInstructionTagId(configServiceDirective.getInstructionTagId());//分类标签ID + info.setInstructionTagName(configServiceDirective.getInstructionName());//分类标签名称 + info.setCategoryId(configServiceDirective.getCategoryId());//服务类别id + info.setCategoryName(configServiceDirective.getCategoryName());//服务类别名称 + info.setTypeId(configServiceDirective.getTypeId());//服务类型ID + info.setTypeName(configServiceDirective.getTypeName());//服务类型名称 + info.setDirectiveId(configServiceDirective.getId());//服务指令ID + info.setDirectiveName(configServiceDirective.getDirectiveName());//服务指令名称 + info.setTollPrice(configServiceDirective.getTollPrice());//收费价格 + info.setComPrice(configServiceDirective.getComPrice());//提成价格 + info.setCycleType(configServiceDirective.getCycleType());//周期类型 + info.setServiceContent(configServiceDirective.getServiceContent());//服务说明 + info.setServiceDuration(configServiceDirective.getServiceDuration());//服务时长 + info.setSysOrgCode(his.getSysOrgCode());//所属部门 + info.setMp3File(configServiceDirective.getMp3File());//语音文件 + info.setMp4File(configServiceDirective.getMp4File());//视频文件 + info.setPreviewFile(configServiceDirective.getPreviewFile());//服务指令图片大图 + info.setPreviewFileSmall(configServiceDirective.getPreviewFileSmall());//服务指令图片小图 + info.setImmediateFile(configServiceDirective.getImmediateFile());//即时指令图片 + info.setImmediateFileFocus(configServiceDirective.getImmediateFileFocus());//即时指令焦点图片 + info.setCreateTime(new Date());//创建日期 + info.setDataType("2"); + infoList.add(info); + } + mainMQDto.setOpeInfoList(infoList); + + boolean hasChanges = !Objects.equals(his.getInstructionTagId(), configServiceDirective.getInstructionTagId()) + || !Objects.equals(his.getInstructionName(), configServiceDirective.getInstructionName()) + || !Objects.equals(his.getCategoryId(), configServiceDirective.getCategoryId()) + || !Objects.equals(his.getCategoryName(), configServiceDirective.getCategoryName()) + || !Objects.equals(his.getTypeId(), configServiceDirective.getTypeId()) + || !Objects.equals(his.getTypeName(), configServiceDirective.getTypeName()) + || !Objects.equals(his.getDirectiveName(), configServiceDirective.getDirectiveName()) + || !Objects.equals(his.getTollPrice(), configServiceDirective.getTollPrice()) + || !Objects.equals(his.getComPrice(), configServiceDirective.getComPrice()) + || !Objects.equals(his.getCycleType(), configServiceDirective.getCycleType()) + || !Objects.equals(his.getServiceContent(), configServiceDirective.getServiceContent()) + || !Objects.equals(his.getServiceDuration(), configServiceDirective.getServiceDuration()) + || !Objects.equals(his.getMp3File(), configServiceDirective.getMp3File()) + || !Objects.equals(his.getMp4File(), configServiceDirective.getMp4File()) + || !Objects.equals(his.getPreviewFile(), configServiceDirective.getPreviewFile()) + || !Objects.equals(his.getPreviewFileSmall(), configServiceDirective.getPreviewFileSmall()) + || !Objects.equals(his.getImmediateFile(), configServiceDirective.getImmediateFile()) + || !Objects.equals(his.getImmediateFileFocus(), configServiceDirective.getImmediateFileFocus()); + + if (hasChanges) { + rabbitMQUtil.sendToExchange("hldy.directive", "hldy.directive.ope", mainMQDto); + } + } + return Result.OK("编辑成功!"); } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/ConfigServiceDirectiveMapper.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/ConfigServiceDirectiveMapper.java index e00db127..2569e554 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/ConfigServiceDirectiveMapper.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/ConfigServiceDirectiveMapper.java @@ -80,4 +80,6 @@ public interface ConfigServiceDirectiveMapper extends BaseMapper queryAndTranslate(@Param("existIds") String[] existIds); + + ConfigServiceDirective queryTranslate(@Param("id") String id); } diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/xml/ConfigServiceDirectiveMapper.xml b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/xml/ConfigServiceDirectiveMapper.xml index 7e558f5b..1b3c42eb 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/xml/ConfigServiceDirectiveMapper.xml +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/mapper/xml/ConfigServiceDirectiveMapper.xml @@ -268,4 +268,22 @@ order by m.create_time desc + + diff --git a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/service/IConfigServiceDirectiveService.java b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/service/IConfigServiceDirectiveService.java index cfe65857..54fd7cd9 100644 --- a/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/service/IConfigServiceDirectiveService.java +++ b/nursing-unit-services/nu-services-biz/src/main/java/com/nu/modules/config/servicedirective/service/IConfigServiceDirectiveService.java @@ -76,4 +76,6 @@ public interface IConfigServiceDirectiveService extends IService