| | |
| | | package com.vci.ubcs.omd.service.impl; |
| | | |
| | | import com.alibaba.cloud.commons.lang.StringUtils; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.vci.ubcs.omd.entity.Status; |
| | | import com.vci.ubcs.omd.mapper.StatusMapper; |
| | | import com.vci.ubcs.omd.constant.BtmTypeConstant; |
| | | import com.vci.ubcs.omd.entity.*; |
| | | import com.vci.ubcs.omd.mapper.*; |
| | | import com.vci.ubcs.omd.service.IStatusService; |
| | | import com.vci.ubcs.omd.vo.BtmTypeVO; |
| | | import com.vci.ubcs.omd.vo.StatusVO; |
| | | import com.vci.ubcs.omd.wrapper.BtmTypeWrapper; |
| | | import com.vci.ubcs.omd.wrapper.LifeCycleRuleWrapper; |
| | | import com.vci.ubcs.omd.wrapper.StatusWrapper; |
| | | import com.vci.ubcs.starter.exception.VciBaseException; |
| | | import com.vci.ubcs.starter.web.pagemodel.PageHelper; |
| | | import com.vci.ubcs.starter.web.util.BeanUtil; |
| | | import com.vci.ubcs.starter.web.util.VciBaseUtil; |
| | | import org.springblade.core.mp.support.Condition; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | | import java.util.regex.Pattern; |
| | | import java.util.stream.Collectors; |
| | |
| | | public class StatusServiceImpl extends ServiceImpl<StatusMapper, Status> implements IStatusService { |
| | | |
| | | private final String REGEXP = "^[A-Za-z]+$"; |
| | | |
| | | @Resource |
| | | private BtmTypeMapper btmTypeMapper; |
| | | @Resource |
| | | private LifeCycleNodeMapper lifeCycleNodeMapper; |
| | | /** |
| | | * 获取状态列表 |
| | | * |
| | |
| | | * @throws VciBaseException 查询出错时会抛出异常 |
| | | */ |
| | | @Override |
| | | public IPage<StatusVO> listStatus(Map<String, String> conditionMap, PageHelper pageHelper) throws VciBaseException { |
| | | Query query = new Query(); |
| | | query.setCurrent(pageHelper.getPage()); |
| | | query.setSize(pageHelper.getLimit()); |
| | | query.setAscs("id"); |
| | | Status queryVO = new Status(); |
| | | BeanMap.create(queryVO).putAll(conditionMap); |
| | | return StatusWrapper.build().pageVO(baseMapper.selectPage(Condition.getPage(query), Condition.getQueryWrapper(queryVO).lambda().orderByAsc(Status::getId))); |
| | | public IPage<StatusVO> listStatus(Map<String, Object> conditionMap, Query pageHelper) throws VciBaseException { |
| | | return StatusWrapper.build().pageVO(baseMapper.selectPage(Condition.getPage(pageHelper), Condition.getQueryWrapper(conditionMap,Status.class).lambda().orderByAsc(Status::getId))); |
| | | } |
| | | |
| | | /** |
| | |
| | | Collection<Collection<String>> idCollections = VciBaseUtil.switchCollectionForOracleIn(idCollection); |
| | | if(!CollectionUtils.isEmpty(idCollections)) { |
| | | idCollections.forEach(s -> { |
| | | List<Status> queryResult = baseMapper.selectList(Wrappers.<Status>query().lambda().in(Status::getId,s)); |
| | | QueryWrapper<Status> wrapper = new QueryWrapper<>(); |
| | | wrapper.in("id",s); |
| | | List<Status> queryResult = baseMapper.selectList(wrapper); |
| | | |
| | | if(!CollectionUtils.isEmpty(queryResult)){ |
| | | statusDOList.addAll(queryResult); |
| | | } |
| | |
| | | Set<String> idSet = new HashSet<>(); |
| | | String creator = AuthUtil.getUserAccount(); |
| | | Date now = new Date(); |
| | | String btmName = "status"; |
| | | Pattern pattern = Pattern.compile(REGEXP); |
| | | statusVOList.forEach(s -> { |
| | | if (!pattern.matcher(s.getId()).matches()){ |
| | |
| | | if(StringUtils.isBlank(s.getOid())){ |
| | | s.setOid(VciBaseUtil.getPk()); |
| | | } |
| | | s.setBtmName(btmName); |
| | | s.setBtmName(BtmTypeConstant.STATUS); |
| | | s.setOwner(creator); |
| | | s.setCreator(creator); |
| | | s.setCreateTime(now); |
| | |
| | | public boolean checkStatusUsed(String pkStatus) throws VciBaseException { |
| | | return false; |
| | | } |
| | | |
| | | /** |
| | | * 查看应用范围 |
| | | * |
| | | * @param id id |
| | | * @return 执行结果 |
| | | */ |
| | | @Override |
| | | public List<BtmTypeVO> getApplyRange(String id) { |
| | | VciBaseUtil.alertNotNull(id,"状态英文名称"); |
| | | List<LifeCycleNode> selectList = lifeCycleNodeMapper.selectList(Wrappers.<LifeCycleNode>query().lambda().eq(LifeCycleNode::getId,id)); |
| | | List<String>lifeCycleOidList = new ArrayList<>(); |
| | | if(!CollectionUtils.isEmpty(selectList)){ |
| | | lifeCycleOidList = selectList.stream().map(LifeCycleNode::getLifeCycleOid).collect(Collectors.toList()); |
| | | } |
| | | return BtmTypeWrapper.build().listEntityVO(btmTypeMapper.selectList(Wrappers.<BtmType>query().lambda().in(BtmType::getOid,lifeCycleOidList))); |
| | | } |
| | | } |