diff --git a/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java b/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java index 33e01ae..bfaeccc 100644 --- a/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java +++ b/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java @@ -335,10 +335,40 @@ public interface ExperimentalMapper { /** * 判断是否处于审核流程中的数据 + * * @param id * @return int * @author cwchen * @date 2024/7/22 14:13 */ int isCheck(Long id); + + /** + * 判断提交数据中是否存在流程数据或者存在待试验项 + * + * @param list + * @return int + * @author cwchen + * @date 2024/7/22 15:24 + */ + int isNotEditData(List list); + + /** + * 更新收样表中的状态为待审阅 + * + * @param list + * @return void + * @author cwchen + * @date 2024/7/22 15:33 + */ + void updateSampleStatus(List list); + + /** + * 更新试验表中数据为待审阅 + * @param list + * @return void + * @author cwchen + * @date 2024/7/22 15:33 + */ + void updateExperStatus(List list); } diff --git a/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java b/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java index 0b94c9d..1f5a5e2 100644 --- a/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java +++ b/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java @@ -307,10 +307,20 @@ public class ExperimentalServiceImpl implements ExperimentalService { @Transactional(rollbackFor = Exception.class) public ServerResponse commitCheckTestData(ParamsDto dto) { try { + // 判断是否提交空数据 if(dto.getIds() == null || dto.getIds().length == 0){ return ServerResponse.createByErrorMsg(HttpStatus.ERROR,"未提交审查数据"); } - + // 判断提交数据中是否存在流程数据或者存在待试验项 + List list = Arrays.asList(dto.getIds()); + int result = mapper.isNotEditData(list); + if(result > 0){ + return ServerResponse.createByErrorMsg(HttpStatus.ERROR,"提交数据中存在待试验项或处于审核流程或已试验结束"); + } + // 更新收样表中的状态为待审阅 + mapper.updateSampleStatus(list); + // 更新试验表中数据为待审阅 + mapper.updateExperStatus(list); } catch (Exception e) { log.error(e.toString(), e); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); diff --git a/src/main/resources/mappers/basis/ExperimentalMapper.xml b/src/main/resources/mappers/basis/ExperimentalMapper.xml index c5a792d..3f5fac2 100644 --- a/src/main/resources/mappers/basis/ExperimentalMapper.xml +++ b/src/main/resources/mappers/basis/ExperimentalMapper.xml @@ -179,6 +179,22 @@ exper_code = #{experCode},check_time = #{checkTime},update_time = #{updateTime},update_user = #{updateUser}, exper_conclu = #{experConclu},remarsk = #{remarsk} WHERE id = #{id} + + + UPDATE tb_sample SET audti_status = 0,process_status = 1 + WHERE id IN + + #{item} + + + + + UPDATE tb_exper SET status = 1,audit_status = 0 + WHERE sample_id IN + + #{item} + + DELETE FROM tb_config_basis WHERE exper_id = #{id} @@ -452,4 +468,20 @@ (status = 3 AND audit_status = 4) ) + +