From c4dfb5b30a5b2917c259f40c1c80abb28b504990 Mon Sep 17 00:00:00 2001 From: 龚焕茏 <2842157468@qq.com> Date: 星期一, 25 三月 2024 15:41:23 +0800 Subject: [PATCH] 工单阈值 --- ycl-server/src/main/java/com/ycl/platform/service/impl/CheckTemplateServiceImpl.java | 79 ++++++++++++++++++++++++++++++--------- 1 files changed, 61 insertions(+), 18 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 37398d2..bdb28d7 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,10 +1,15 @@ 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.platform.service.YwUnitService; import com.ycl.system.Result; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.platform.domain.form.CheckTemplateForm; @@ -15,6 +20,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.system.page.PageUtil; import com.ycl.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.beans.BeanUtils; @@ -39,19 +45,27 @@ public class CheckTemplateServiceImpl extends ServiceImpl<CheckTemplateMapper, CheckTemplate> implements CheckTemplateService { private final CheckTemplateMapper checkTemplateMapper; - + private final CheckTemplateRuleMapper checkTemplateRuleMapper; + @Autowired + private YwUnitService unitService; /** * 娣诲姞 * @param form * @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("娣诲姞鎴愬姛"); } /** @@ -60,17 +74,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("淇敼鎴愬姛"); } /** @@ -79,11 +104,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("鍒犻櫎鎴愬姛"); } /** @@ -92,11 +119,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("鍒犻櫎鎴愬姛"); } /** @@ -119,6 +148,7 @@ List<CheckTemplateVO> vos = page.getRecords().stream() .map( entity -> CheckTemplateVO.getVoByEntity(entity, null) + .setUnitName(unitService.getById(entity.getUnitId()).getUnitName()) ) .collect(Collectors.toList()); return Result.ok().data(vos).total(page.getTotal()); @@ -135,6 +165,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); } -- Gitblit v1.8.0