From ea96725351a6b1c05e8c4c32f6e5785d266f8fe2 Mon Sep 17 00:00:00 2001
From: xiejun <xj@2023>
Date: 星期三, 06 十二月 2023 14:26:48 +0800
Subject: [PATCH] 集团码导入功能开发
---
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LifeCycleServiceImpl.java | 69 +++++++++++++++++++++++++++-------
1 files changed, 55 insertions(+), 14 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LifeCycleServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LifeCycleServiceImpl.java
index f2f24e2..7d61250 100644
--- a/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LifeCycleServiceImpl.java
+++ b/Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/service/impl/LifeCycleServiceImpl.java
@@ -4,21 +4,17 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.vci.ubcs.omd.constant.BtmTypeConstant;
+import com.baomidou.mybatisplus.extension.toolkit.SqlRunner;
import com.vci.ubcs.omd.dto.LifeCycleDTO;
import com.vci.ubcs.omd.dto.LifeCycleEdgeDTO;
import com.vci.ubcs.omd.dto.LifeCycleLineEventDTO;
import com.vci.ubcs.omd.dto.LifeCycleNodeDTO;
import com.vci.ubcs.omd.entity.*;
import com.vci.ubcs.omd.mapper.*;
-import com.vci.ubcs.omd.repeater.DomainRepeater;
import com.vci.ubcs.omd.service.IBtmTypeService;
import com.vci.ubcs.omd.service.ILifeCycleService;
import com.vci.ubcs.omd.service.IStatusService;
-import com.vci.ubcs.omd.vo.BtmTypeVO;
-import com.vci.ubcs.omd.vo.LifeCycleEventVO;
-import com.vci.ubcs.omd.vo.LifeCycleVO;
-import com.vci.ubcs.omd.vo.StatusVO;
+import com.vci.ubcs.omd.vo.*;
import com.vci.ubcs.omd.wrapper.LifeCycleEventWrapper;
import com.vci.ubcs.omd.wrapper.LifeCycleRuleWrapper;
import com.vci.ubcs.starter.enumpack.NewAppConstantEnum;
@@ -84,7 +80,8 @@
@Resource
private LifeCycleEventMapper eventMapper;
-
+ @Resource
+ private LifeCycleMapper lifeCycleMapper;
/**
* 鑾峰彇鐢熷懡鍛ㄦ湡鍒楄〃
*
@@ -109,6 +106,18 @@
return LifeCycleEventWrapper.build().pageVO(eventMapper.selectPage(Condition.getPage(query),Condition.getQueryWrapper(conditionMap, LifeCycleEvent.class).lambda().orderByAsc(LifeCycleEvent::getEventFullName)));
}
+ public List<LifeCycleEventVO> listEventNoPage(){
+ QueryWrapper<LifeCycleEvent> queryWrapper = new QueryWrapper();
+ List<LifeCycleEvent> lifeCycleEvents = eventMapper.selectList(queryWrapper);
+ List<LifeCycleEventVO> vos = new ArrayList<>();
+ lifeCycleEvents.stream().forEach(lifeCycleEvent -> {
+ LifeCycleEventVO vo = new LifeCycleEventVO();
+ BeanUtil.convert(lifeCycleEvent,vo);
+ vos.add(vo);
+ });
+ return vos;
+ }
+
/**
* 娣诲姞淇濆瓨
*
@@ -120,8 +129,8 @@
public LifeCycleVO addSave(LifeCycleDTO lifeCycleDTO) {
VciBaseUtil.alertNotNull(lifeCycleDTO,"鐢熷懡鍛ㄦ湡淇℃伅",lifeCycleDTO.getId(),"鐢熷懡鍛ㄦ湡鐨勭紪鍙�",lifeCycleDTO.getName(),"鐢熷懡鍛ㄦ湡鍚嶇О",lifeCycleDTO.getNodes(),"鐢熷懡鍛ㄦ湡鐨勮妭鐐�",lifeCycleDTO.getStartStatus(),"璧峰鐘舵��");
//鍏堟煡璇㈡槸鍚﹀瓨鍦�
- QueryWrapper wrapper = new QueryWrapper(LifeCycleRule.class);
- wrapper.eq("lower(id)",lifeCycleDTO.getId().toLowerCase(Locale.ROOT));
+ QueryWrapper<LifeCycleRule> wrapper = new QueryWrapper<>();
+ wrapper.eq("id",lifeCycleDTO.getId().toLowerCase(Locale.ROOT));
if(baseMapper.selectCount(wrapper)>0){
throw new VciBaseException("鐢熷懡鍛ㄦ湡鐨勭紪鍙蜂笉鑳介噸澶�");
}
@@ -244,7 +253,7 @@
* @return 杩炴帴绾跨殑涓婚敭
*/
private String addLifeCycleEdge(LifeCycleEdgeDTO edgeDTO,List<String> statusList,String lifeOid,String creator,Date now){
- VciBaseUtil.alertNotNull(edgeDTO.getSource(),"鏉ユ簮鐘舵��",edgeDTO.getTarget(),"鐩爣鐘舵��",edgeDTO.getName(),"杩炴帴绾垮悕绉�");
+ VciBaseUtil.alertNotNull(edgeDTO.getSource(),"鏉ユ簮鐘舵��",edgeDTO.getTarget(),"鐩爣鐘舵��");
if(!statusList.contains(edgeDTO.getSource())
||!statusList.contains(edgeDTO.getTarget())){
throw new VciBaseException("鏁版嵁閿欒锛孾" + edgeDTO.getName() + "]杩炴帴绾夸笂涓娇鐢ㄧ殑鐘舵�佹病鏈夋壘鍒�");
@@ -319,19 +328,51 @@
lifeCycleDTO.getOid(),"涓婚敭");
LifeCycleRule rule = selectByOid(lifeCycleDTO.getOid());
//鏌ヨ閲嶅
- QueryWrapper wrapper = new QueryWrapper(LifeCycleRule.class);
- if(rule.getId().equals(lifeCycleDTO.getId())){
- throw new VciBaseException("鐢熷懡鍛ㄦ湡缂栧彿涓嶈兘淇敼");
- }
+
+ String sql="select * from pl_omd_life_cycle_rule where lower(id)=? and oid != ?";
+ /*QueryWrapper wrapper = new QueryWrapper(LifeCycleRule.class);
wrapper.eq("lower(id)",lifeCycleDTO.getId().toLowerCase(Locale.ROOT));
wrapper.ne("oid",lifeCycleDTO.getOid());
if(baseMapper.selectCount(wrapper)>0){
+ throw new VciBaseException("鐢熷懡鍛ㄦ湡鐨勭紪鍙蜂笉鑳介噸澶�");
+ }*/
+ if(lifeCycleMapper.checkIdExist(lifeCycleDTO.getId().toLowerCase(Locale.ROOT),lifeCycleDTO.getOid())>0){
throw new VciBaseException("鐢熷懡鍛ㄦ湡鐨勭紪鍙蜂笉鑳介噸澶�");
}
editLifeCycle(lifeCycleDTO,rule);
return LifeCycleRuleWrapper.build().entityVO(getById(rule.getOid()));
}
+ public LifeCycleVO detail(LifeCycleDTO lifeCycleDTO){
+ QueryWrapper wrapper = Condition.getQueryWrapper(org.springblade.core.tool.utils.BeanUtil.copy(lifeCycleDTO, LifeCycleRule.class));
+ LifeCycleRule lifeCycleRule = baseMapper.selectOne(wrapper);
+ LifeCycleVO vo = LifeCycleRuleWrapper.build().entityVO(lifeCycleRule);
+ String lifeOid = lifeCycleRule.getOid();
+
+ QueryWrapper<LifeCycleNode> nodeWrapper = new QueryWrapper<>();
+ nodeWrapper.eq("life_cycle_oid",lifeOid.toLowerCase(Locale.ROOT));
+ List<LifeCycleNode> nodes = nodeMapper.selectList(nodeWrapper);
+ List<LifeCycleNodeVO> nodeVos = new ArrayList<>();
+ nodes.stream().forEach(doo->{
+ LifeCycleNodeVO vo1 = new LifeCycleNodeVO();
+ BeanUtil.convert(doo,vo1);
+ nodeVos.add(vo1);
+ });
+ vo.setNodes(nodeVos);
+
+ QueryWrapper<LifeCycleEdge> edgeWrapper = new QueryWrapper<>();
+ edgeWrapper.eq("life_cycle_oid",lifeOid.toLowerCase(Locale.ROOT));
+ List<LifeCycleEdge> edges = edgeMapper.selectList(edgeWrapper);
+ List<LifeCycleEdgeVO> edgeVos = new ArrayList<>();
+ edges.stream().forEach(doo->{
+ LifeCycleEdgeVO vo2 = new LifeCycleEdgeVO();
+ BeanUtil.convert(doo,vo2);
+ edgeVos.add(vo2);
+ });
+ vo.setEdges(edgeVos);
+
+ return vo;
+ }
/**
* 淇敼鐢熷懡鍛ㄦ湡
* @param lifeCycleDTO
--
Gitblit v1.9.3