From 32929606943fedfca286b052bcb280193a3e0222 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期六, 18 一月 2025 10:23:58 +0800 Subject: [PATCH] git ch --- server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java | 79 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 79 insertions(+), 0 deletions(-) diff --git a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java index 93f38be..791341b 100644 --- a/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java +++ b/server/service/src/main/java/com/doumee/service/business/impl/SolutionsBaseServiceImpl.java @@ -22,6 +22,7 @@ import org.apache.shiro.SecurityUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; @@ -442,4 +443,82 @@ QueryWrapper<SolutionsBase> wrapper = new QueryWrapper<>(solutionsBase); return solutionsBaseMapper.selectCount(wrapper); } + + + @Override + @Transactional(rollbackFor = {Exception.class,BusinessException.class}) + public void createSolutionBase(Integer solutionId){ + List<Solutions> solutionsList = solutionsMapper.selectList(new QueryWrapper<Solutions>().lambda() + .eq(Objects.nonNull(solutionId),Solutions::getId,solutionId) + .isNull(Solutions::getParentId).eq(Solutions::getDataType,Constants.ZERO).eq(Solutions::getIsdeleted,Constants.ZERO)); + for (Solutions solutions: solutionsList) { + SolutionsBase solutionsBase = new SolutionsBase(); + solutionsBase.setCreator(solutions.getCreator()); + solutionsBase.setCreateDate(new Date()); + solutionsBase.setIsdeleted(Constants.ZERO); + solutionsBase.setName(solutions.getName()); + solutionsBase.setStatus(solutions.getStatus()); + solutionsBase.setSortnum(Constants.ZERO); + solutionsBase.setInsuranceId(solutions.getInsuranceId()); + solutionsBase.setValidType(solutions.getValidType()); + solutionsBase.setMinAge(solutions.getMinAge()); + solutionsBase.setMaxAge(solutions.getMaxAge()); + solutionsBase.setSingleWorktype(solutions.getSingleWorktype()); + solutionsBase.setSpecialInfo(solutions.getSpecialInfo()); + solutionsBase.setSpecialAgreement(solutions.getSpecialAgreement()); + solutionsBase.setOrtherInfo(solutions.getOrtherInfo()); + solutionsBase.setDataType(Constants.ZERO); + solutionsBase.setValidTypeNum(solutions.getValidTypeNum()); + solutionsBase.setShopId(solutions.getShopId()); + solutionsBase.setAddValidDays(solutions.getAddValidDays()); + solutionsBase.setDelValidDays(solutions.getDelValidDays()); + solutionsBase.setCanAdd(solutions.getCanAdd()); + solutionsBase.setCanReduce(solutions.getCanReduce()); + solutionsBase.setCanChangeUnit(solutions.getCanChangeUnit()); + solutionsBase.setDelOnlyReplace(solutions.getDelOnlyReplace()); + solutionsBase.setCompanyName(solutions.getCompanyName()); + solutionsBase.setCompanyName(solutions.getCompanyName()); + solutionsBase.setCorrectWarnTime("18:30"); + solutionsBaseMapper.insert(solutionsBase); + + + //濡傛灉鏈夊伐绉嶏紝鍒欎骇鐢熶竴涓柊鐨勬湁鏁堝巻鍙茬増鏈� ~ + SolutionsBase newModel = new SolutionsBase(); + BeanUtils.copyProperties(solutionsBase,newModel); + newModel.setId(null); + newModel.setBaseId(solutionsBase.getId()); + newModel.setDataType(Constants.TWO); + solutionsBaseMapper.insert(newModel); + + List<SolutionWorktype> solutionWorktypeList = solutionWorktypeJoinMapper.selectList(new QueryWrapper<SolutionWorktype>().lambda().eq(SolutionWorktype::getType,Constants.ZERO).eq(SolutionWorktype::getSolutionId,solutions.getId())); + + Integer num = 1; + for(SolutionWorktype solutionWorktype : solutionWorktypeList) { + //鍩虹鐗堟湰 + SolutionWorktype w = new SolutionWorktype(); + w.setSolutionId(solutionsBase.getId()); + w.setIsdeleted(Constants.ZERO); + w.setCreator(newModel.getCreator()); + w.setCreateDate(solutionsBase.getCreateDate()); + w.setStatus(Constants.ZERO); + w.setSortnum(num++); + w.setWorktypeId(solutionWorktype.getWorktypeId()); + w.setType(Constants.ONE); + solutionWorktypeJoinMapper.insert(w); + + //鍘嗗彶鐗堟湰鐨勫伐绉嶄俊鎭� + SolutionWorktype newType = new SolutionWorktype(); + BeanUtils.copyProperties(w, newType); + newType.setSolutionId(newModel.getId()); + solutionWorktypeJoinMapper.insert(newType); + } + + solutionsMapper.update(null,new UpdateWrapper<Solutions>().lambda().set(Solutions::getParentId,solutionsBase.getId()) + .and(i->i.eq(Solutions::getId,solutions.getId()).or().eq(Solutions::getBaseId,solutions.getId())) + ); + } + } + + + } -- Gitblit v1.9.3