From 9ccd0bc5786cbb1bca2c9fda28f0cd730126656d Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 13 三月 2024 09:21:38 +0800 Subject: [PATCH] 合并 --- ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java | 83 ++++++++++++++++++++++++++++++++--------- 1 files changed, 64 insertions(+), 19 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java index c08db94..03b5866 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java @@ -1,8 +1,13 @@ package com.ycl.platform.service.impl; +import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; +import com.ycl.platform.base.BaseSelect; import com.ycl.platform.domain.entity.CheckTemplate; +import com.ycl.platform.domain.entity.CheckTemplateRule; import com.ycl.platform.domain.entity.YwUnit; +import com.ycl.platform.domain.vo.RuleItemVO; import com.ycl.platform.mapper.CheckTemplateMapper; +import com.ycl.platform.mapper.CheckTemplateRuleMapper; import com.ycl.platform.service.CheckTemplateService; import com.ycl.system.Result; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -38,6 +43,7 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateMapper, CheckTemplate> implements CheckTemplateService { private final CheckTemplateMapper checkTemplateMapper; + private final CheckTemplateRuleMapper checkTemplateRuleMapper; /** * 娣诲姞 @@ -45,12 +51,18 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public Result add(CheckTemplateForm form) { CheckTemplate entity = CheckTemplateForm.getEntityByForm(form, null); - if(baseMapper.insert(entity) > 0) { - return Result.ok("娣诲姞鎴愬姛"); - } - return Result.error("娣诲姞澶辫触"); + baseMapper.insert(entity); + form.getRuleFormList().stream().forEach(rule -> { + CheckTemplateRule checkTemplateRule = new CheckTemplateRule(); + checkTemplateRule.setCheckTemplateId(entity.getId()); + checkTemplateRule.setCheckRuleId(rule.getRuleId()); + checkTemplateRule.setWeight(rule.getWeight()); + checkTemplateRuleMapper.insert(checkTemplateRule); + }); + return Result.ok("娣诲姞鎴愬姛"); } /** @@ -59,17 +71,28 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public Result update(CheckTemplateForm form) { CheckTemplate entity = baseMapper.selectById(form.getId()); - // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊 Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); BeanUtils.copyProperties(form, entity); - if (baseMapper.updateById(entity) > 0) { - return Result.ok("淇敼鎴愬姛"); - } - return Result.error("淇敼澶辫触"); + baseMapper.updateById(entity); + + // 鍏堝垹闄ゅ師鍏堢殑瀵瑰簲鍏崇郴 + new LambdaUpdateChainWrapper<>(checkTemplateRuleMapper) + .eq(CheckTemplateRule::getCheckTemplateId, form.getId()) + .remove(); + // 鍐嶉噸鏂版坊鍔� + form.getRuleFormList().stream().forEach(rule -> { + CheckTemplateRule checkTemplateRule = new CheckTemplateRule(); + checkTemplateRule.setCheckTemplateId(entity.getId()); + checkTemplateRule.setCheckRuleId(rule.getRuleId()); + checkTemplateRule.setWeight(rule.getWeight()); + checkTemplateRuleMapper.insert(checkTemplateRule); + }); + return Result.ok("淇敼鎴愬姛"); } /** @@ -78,11 +101,13 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public Result remove(List<String> ids) { - if(baseMapper.deleteBatchIds(ids) > 0) { - return Result.ok("鍒犻櫎鎴愬姛"); - } - return Result.error("鍒犻櫎澶辫触"); + baseMapper.deleteBatchIds(ids); + new LambdaUpdateChainWrapper<>(checkTemplateRuleMapper) + .in(CheckTemplateRule::getCheckTemplateId, ids) + .remove(); + return Result.ok("鍒犻櫎鎴愬姛"); } /** @@ -91,11 +116,13 @@ * @return */ @Override + @Transactional(rollbackFor = Exception.class) public Result removeById(String id) { - if(baseMapper.deleteById(id) > 0) { - return Result.ok("鍒犻櫎鎴愬姛"); - } - return Result.error("鍒犻櫎澶辫触"); + baseMapper.deleteById(id); + new LambdaUpdateChainWrapper<>(checkTemplateRuleMapper) + .eq(CheckTemplateRule::getCheckTemplateId, id) + .remove(); + return Result.ok("鍒犻櫎鎴愬姛"); } /** @@ -134,6 +161,19 @@ CheckTemplate entity = baseMapper.selectById(id); Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); CheckTemplateVO vo = CheckTemplateVO.getVoByEntity(entity, null); + + // 鏌ヨ�冩牳瑙勫垯 + List<CheckTemplateRule> ruleList = new LambdaQueryChainWrapper<>(checkTemplateRuleMapper) + .eq(CheckTemplateRule::getCheckTemplateId, entity.getId()) + .list(); + List<RuleItemVO> ruleVOS = ruleList.stream().map(rule -> { + RuleItemVO ruleItemVO = new RuleItemVO(); + ruleItemVO.setRuleId(rule.getCheckRuleId()); + ruleItemVO.setWeight(rule.getWeight()); + return ruleItemVO; + }).collect(Collectors.toList()); + vo.setRuleFormList(ruleVOS); + return Result.ok().data(vo); } @@ -144,9 +184,14 @@ @Override public Result all() { List<CheckTemplate> entities = baseMapper.selectList(null); - List<CheckTemplateVO> vos = entities.stream() + List<BaseSelect> vos = entities.stream() .map( - entity -> CheckTemplateVO.getVoByEntity(entity, null) + entity -> { + BaseSelect baseSelect = new BaseSelect(); + baseSelect.setId(entity.getId()); + baseSelect.setValue(entity.getTemplateName()); + return baseSelect; + } ) .collect(Collectors.toList()); return Result.ok().data(vos); -- Gitblit v1.8.0