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 bfaeccc..8d0fe4e 100644 --- a/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java +++ b/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java @@ -365,10 +365,30 @@ public interface ExperimentalMapper { /** * 更新试验表中数据为待审阅 + * * @param list * @return void * @author cwchen * @date 2024/7/22 15:33 */ void updateExperStatus(List list); + + /** + * 获取收样中的试验项是否全部填写 + * + * @param sampleId + * @return List + * @author cwchen + * @date 2024/7/22 16:09 + */ + List isAllExper(Long sampleId); + + /** + * 更新收样表中的状态为待提交 + * @param id + * @return void + * @author cwchen + * @date 2024/7/22 16:24 + */ + void editSampleStatus(Long id); } 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 1f5a5e2..6ac7b20 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 @@ -20,10 +20,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; /** * @className:ExperimentalServiceImpl @@ -172,9 +169,13 @@ public class ExperimentalServiceImpl implements ExperimentalService { // 添加设备试验项数据 mapper.addExperDevItem(experDevItemVos); } - } - + // 获取收样中的试验项是否全部填写 + List resultList = mapper.isAllExper(vo.getSampleId()); + if(Objects.equals(resultList.get(0),resultList.get(1))){ + // 更新收样表中的状态为待提交 + mapper.editSampleStatus(vo.getId()); + } } catch (Exception e) { log.error(e.toString(), e); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); @@ -193,7 +194,7 @@ public class ExperimentalServiceImpl implements ExperimentalService { // 处于审核流程中的数据无法进行修改 int isCheck = mapper.isCheck(vo.getId()); if(isCheck > 0){ - return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "处于审核流程中的数据无法进行修改"); + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "处于审核流程中的数据或者试验完成的数据无法进行修改"); } // 整体数据校验数据 String validResult = validatorsUtils.valid(vo, TestVo.Query.class); diff --git a/src/main/resources/mappers/basis/ExperimentalMapper.xml b/src/main/resources/mappers/basis/ExperimentalMapper.xml index 3f5fac2..e89ee7c 100644 --- a/src/main/resources/mappers/basis/ExperimentalMapper.xml +++ b/src/main/resources/mappers/basis/ExperimentalMapper.xml @@ -176,7 +176,7 @@ UPDATE tb_exper SET dev_type_code = #{devTypeCode},dev_type_name = #{devTypeName},dev_num = #{sampleQuantity}, dev_module = #{devModule},sample_date = #{sampleDate},exper_time = #{experTime},next_exper_time = #{nextExperTime}, submit_unit = #{customId},submit_location = #{experLocal},exper_dev = #{experDev},exper_module = #{experModule}, - exper_code = #{experCode},check_time = #{checkTime},update_time = #{updateTime},update_user = #{updateUser}, + exper_code = #{experCode},check_time = #{checkTime},update_time = #{updateTime},update_user = #{updateUser},exper_stand = #{experStand}, exper_conclu = #{experConclu},remarsk = #{remarsk} WHERE id = #{id} @@ -195,6 +195,10 @@ #{item} + + + UPDATE tb_sample SET process_status = 1 WHERE id = #{id} + DELETE FROM tb_config_basis WHERE exper_id = #{id} @@ -268,7 +272,7 @@ LEFT JOIN sys_user su2 ON ts.update_user = su2.id AND su2.del_flag = 0 LEFT JOIN tb_team tt ON ts.team_id = tt.id AND tt.del_flag = 0 LEFT JOIN ( - SELECT sample_id,COUNT(sample_id) AS num,GROUP_CONCAT(DISTINCT dev_type_name) AS sampleDev,GROUP_CONCAT(DISTINCT dev_type_code) AS sampleDevCode + SELECT sample_id,COUNT(sample_id) AS num,ANY_VALUE(GROUP_CONCAT(DISTINCT dev_type_name)) AS sampleDev,ANY_VALUE(GROUP_CONCAT(DISTINCT dev_type_code)) AS sampleDevCode FROM tb_sample_device WHERE del_falg = 0 GROUP BY sample_id @@ -327,7 +331,8 @@ a.dev_type_name AS devTypeName, a.dev_module AS devModule, a.exper_local_code AS experLocalCode, - a.exper_local AS experLocal + a.exper_local AS experLocal, + ts.id FROM tb_sample ts LEFT JOIN ( SELECT tsd.dev_type_code, @@ -462,10 +467,10 @@ SELECT COUNT(*) FROM tb_exper WHERE id = #{id} AND del_flag = 0 AND ( - (status = 0 AND audit_status = 0) OR - (status = 1 AND audit_status = 2) OR - (status = 2 AND audit_status = 3) OR - (status = 3 AND audit_status = 4) + (status = 1 AND audit_status = 0) OR + (status = 2 AND audit_status = 0) OR + (status = 3 AND audit_status = 0) OR + (status = 4 AND audit_status = 1) ) @@ -484,4 +489,12 @@ (audti_status = 1 AND process_status = 4) ) + +