From 11a66b42d34e41c88395f057292c34aae1ed0511 Mon Sep 17 00:00:00 2001 From: eight <641137800@qq.com> Date: 星期三, 11 九月 2024 16:14:14 +0800 Subject: [PATCH] 拆机更新功能 OK --- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/jobrecord/JobRecordDO.java | 2 +- sql/mysql/jh.sql | 6 ++++-- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java | 38 ++++++++++++++++++++++++-------------- jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/jobrecord/JobRecordMapper.java | 5 +++++ 4 files changed, 34 insertions(+), 17 deletions(-) diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/jobrecord/JobRecordDO.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/jobrecord/JobRecordDO.java index 1b72005..2e54e7c 100644 --- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/jobrecord/JobRecordDO.java +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/jobrecord/JobRecordDO.java @@ -59,7 +59,7 @@ /** * 浣滀笟姒傝 */ - private Integer summary; + private String summary; /** * 澶囨敞 */ diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/jobrecord/JobRecordMapper.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/jobrecord/JobRecordMapper.java index 69042d5..dd41d33 100644 --- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/jobrecord/JobRecordMapper.java +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/jobrecord/JobRecordMapper.java @@ -8,6 +8,9 @@ import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordDO; import org.apache.ibatis.annotations.Mapper; import cn.lihu.jh.module.ecg.controller.admin.jobrecord.vo.*; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.Update; /** * 宸ヤ綔璁板綍 Mapper @@ -33,4 +36,6 @@ .orderByDesc(JobRecordDO::getId)); } + @Select("SELECT * FROM lihu.job_record where rent_id=#{rentId} and job_type=#{jobType} and doc_id=#{docId} limit 1") + JobRecordDO selectByRentIdJobTypeDocId(@Param("rentId") Long rentId, @Param("jobType") Integer jobType, @Param("docId") Long docId ); } \ No newline at end of file diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java index e4a0a2c..46f992f 100644 --- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java +++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/devrent/DevRentServiceImpl.java @@ -8,6 +8,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDateTime; import java.util.*; import cn.lihu.jh.module.ecg.controller.admin.devrent.vo.*; import cn.lihu.jh.module.ecg.dal.dataobject.devrent.DevRentDO; @@ -70,20 +71,29 @@ Long userId = SecurityFrameworkUtils.getLoginUserId(); String userNickname = SecurityFrameworkUtils.getLoginUserNickname(); - JobRecordSaveReqVO jobRecordSaveReqVO = new JobRecordSaveReqVO(); - jobRecordSaveReqVO.setRentId( updateReqVO.getId() ); - jobRecordSaveReqVO.setDevId( updateReqVO.getDevId() ); - jobRecordSaveReqVO.setDocId( userId ); - jobRecordSaveReqVO.setDocName( userNickname ); - jobRecordSaveReqVO.setPatId( updateReqVO.getPatId() ); - jobRecordSaveReqVO.setPatName( updateReqVO.getPatName() ); - jobRecordSaveReqVO.setJobTime( updateReqVO.getReturnTime() ); - jobRecordSaveReqVO.setJobType( 1 ); - jobRecordSaveReqVO.setRemark( updateReqVO.getRemark() ); - jobRecordSaveReqVO.setSummary( updateReqVO.getInterference() + " " + updateReqVO.getBaseline() + " " + updateReqVO.getDetachment() ); - - JobRecordDO jobRecord = BeanUtils.toBean(jobRecordSaveReqVO, JobRecordDO.class); - jobRecordMapper.insert(jobRecord); + JobRecordDO jobRecordDO = jobRecordMapper.selectByRentIdJobTypeDocId(updateReqVO.getId(), 1, userId); + if (jobRecordDO == null) { + JobRecordSaveReqVO jobRecordSaveReqVO = new JobRecordSaveReqVO(); + jobRecordSaveReqVO.setRentId( updateReqVO.getId() ); + jobRecordSaveReqVO.setDevId( updateReqVO.getDevId() ); + jobRecordSaveReqVO.setDocId( userId ); + jobRecordSaveReqVO.setDocName( userNickname ); + jobRecordSaveReqVO.setPatId( updateReqVO.getPatId() ); + jobRecordSaveReqVO.setPatName( updateReqVO.getPatName() ); + jobRecordSaveReqVO.setJobTime( updateReqVO.getReturnTime() ); + jobRecordSaveReqVO.setJobType( 1 ); + jobRecordSaveReqVO.setRemark( updateReqVO.getRemark() ); + jobRecordSaveReqVO.setSummary( updateReqVO.getInterference() + " " + updateReqVO.getBaseline() + " " + updateReqVO.getDetachment() ); + JobRecordDO jobRecord = BeanUtils.toBean(jobRecordSaveReqVO, JobRecordDO.class); + jobRecordMapper.insert(jobRecord); + } else { + jobRecordDO.setJobTime( updateReqVO.getReturnTime() ); + jobRecordDO.setRemark( updateReqVO.getRemark() ); + jobRecordDO.setSummary( updateReqVO.getInterference() + " " + updateReqVO.getBaseline() + " " + updateReqVO.getDetachment() ); + jobRecordDO.setUpdater( String.valueOf(userId) ); + jobRecordDO.setUpdateTime( LocalDateTime.now() ); + jobRecordMapper.updateById(jobRecordDO); + } return 0L; } diff --git a/sql/mysql/jh.sql b/sql/mysql/jh.sql index 06cc27a..669bb9d 100644 --- a/sql/mysql/jh.sql +++ b/sql/mysql/jh.sql @@ -182,5 +182,7 @@ `updater` varchar(10) DEFAULT '' COMMENT '鏇存柊鑰�', `update_time` datetime NOT NULL COMMENT '鏇存柊鏃堕棿', `deleted` bit(1) DEFAULT b'0' COMMENT '鍒犻櫎鏍囪', - PRIMARY KEY (`id`) -) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='宸ヤ綔璁板綍琛�'; + PRIMARY KEY (`id`), + UNIQUE KEY `uni_rent_job_doc` (`rent_id`,`job_type`,`doc_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='宸ヤ綔璁板綍琛�'; + -- Gitblit v1.9.3