From a61e31ef0821c12f12aaede8fee5f534a831cbd8 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 14 五月 2025 14:32:36 +0800
Subject: [PATCH] 提交
---
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