package com.vci.web.dao.impl;
|
|
import com.vci.constant.FrameWorkBusLangCodeConstant;
|
import com.vci.starter.web.exception.VciBaseException;
|
import com.vci.starter.web.util.VciBaseUtil;
|
import com.vci.starter.web.wrapper.VciQueryWrapperForDO;
|
import com.vci.web.dao.WFWorkflowNodeFavDaoI;
|
import com.vci.model.WFWorkflowNodeFavDO;
|
import com.vci.pagemodel.BatchCBO;
|
import com.vci.web.service.OsLifeCycleServiceI;
|
import com.vci.web.service.WebBoServiceI;
|
import com.vci.web.util.PlatformClientUtil;
|
import org.apache.commons.lang3.StringUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Repository;
|
|
import java.util.Collection;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* 流程负责人收藏数据操作层实现类
|
*
|
* @author: KangDong
|
* @date: Created on 2022/4/29
|
*/
|
@Repository
|
public class WFWorkflowNodeFavDaoImpl implements WFWorkflowNodeFavDaoI {
|
|
/**
|
* 业务类型操作的服务
|
*/
|
@Autowired
|
private WebBoServiceI boService;
|
|
/**
|
* 生命周期的服务
|
*/
|
@Autowired
|
private OsLifeCycleServiceI lifeCycleService;
|
|
/**
|
* 平台的客户端
|
*/
|
@Autowired
|
private PlatformClientUtil platformClientUtil;
|
|
|
/**
|
* 使用主键删除
|
* @param oid 数据主键
|
* @return 执行结果
|
*/
|
@Override
|
public BatchCBO deleteByPrimaryKey(String oid) {
|
VciBaseUtil.alertNotNull(oid,"主键");
|
WFWorkflowNodeFavDO wfWorkflowNodeFavDO = selectByPrimaryKey(oid);
|
return boService.delete(wfWorkflowNodeFavDO);
|
}
|
|
/**
|
* 添加数据
|
* @param record 流程负责人收藏数据对象
|
* @return 执行结果
|
*/
|
@Override
|
public BatchCBO insert(WFWorkflowNodeFavDO record) {
|
VciBaseUtil.alertNotNull(record,"要添加的数据");
|
return boService.addSave(record);
|
}
|
|
/**
|
* 批量添加数据
|
* @param records 流程负责人收藏数据对象集合
|
* @return 执行结果数
|
*/
|
@Override
|
public BatchCBO batchInsert(List<WFWorkflowNodeFavDO> records) {
|
VciBaseUtil.alertNotNull(records,"要添加的数据");
|
BatchCBO batchCBO = boService.batchAddSave(records);
|
return batchCBO;
|
}
|
|
/**
|
* 根据主键查询
|
* @param oid 数据主键
|
* @return 数据对象
|
*/
|
@Override
|
public WFWorkflowNodeFavDO selectByPrimaryKey(String oid) {
|
VciBaseUtil.alertNotNull(oid,"主键");
|
WFWorkflowNodeFavDO record = boService.selectByOid(oid, WFWorkflowNodeFavDO.class);
|
if (record == null || StringUtils.isBlank(record.getOid())){
|
throw new VciBaseException(FrameWorkBusLangCodeConstant.DATA_OID_NOT_EXIST);
|
}
|
return record;
|
}
|
|
/**
|
* 根据主键批量获取对象
|
* @param oids 主键,包含单引号,但是不能超过1000
|
* @return 数据对象列表
|
*/
|
@Override
|
public List<WFWorkflowNodeFavDO> selectByPrimaryKeys(String oids) {
|
VciBaseUtil.alertNotNull(oids,"主键集合");
|
return boService.selectByOidCollection(VciBaseUtil.str2List(oids),WFWorkflowNodeFavDO.class);
|
}
|
|
/**
|
* 根据主键批量查询对象
|
* @param oids 对象主键,使用逗号分隔,但是不能超过1000
|
* @return 业务对象
|
*/
|
@Override
|
public List<WFWorkflowNodeFavDO> selectByPrimaryKeyCollection(Collection<String> oids) {
|
VciBaseUtil.alertNotNull(oids,"主键集合");
|
return boService.selectByOidCollection(oids,WFWorkflowNodeFavDO.class);
|
}
|
|
/**
|
* 查询所有分类
|
* @return 查询结果
|
*/
|
@Override
|
public List<WFWorkflowNodeFavDO> selectAll() {
|
return boService.queryObject(WFWorkflowNodeFavDO.class,null);
|
}
|
|
/**
|
* 更新对象
|
* @param record 流程负责人收藏数据对象
|
* @return 执行结果
|
*/
|
@Override
|
public BatchCBO updateByPrimaryKey(WFWorkflowNodeFavDO record) {
|
VciBaseUtil.alertNotNull(record,"要修改的对象",record.getOid(),"主键");
|
return boService.editSave(record);
|
}
|
|
/**
|
* 批量更新
|
* @param records 流程负责人收藏数据对象集合
|
* @return 执行结果行数
|
*/
|
@Override
|
public BatchCBO batchUpdate(List<WFWorkflowNodeFavDO> records) {
|
VciBaseUtil.alertNotNull(records,"要修改的对象");
|
BatchCBO batchCBO = boService.batchEditSave(records);
|
return batchCBO;
|
}
|
|
/**
|
* 根据查询条件查询数据
|
* @param wrapper 查询条件,包括分页,排序
|
* @return 数据对象列表
|
*/
|
@Override
|
public List<WFWorkflowNodeFavDO> selectByWrapper(VciQueryWrapperForDO wrapper) {
|
return boService.selectByQueryWrapper(wrapper,WFWorkflowNodeFavDO.class);
|
}
|
|
/**
|
* 根据查询条件来查询总数
|
* @param wrapper 查询条件
|
* @return 总数
|
*/
|
@Override
|
public Long countByWrapper(VciQueryWrapperForDO wrapper) {
|
return VciBaseUtil.getLong(String.valueOf(boService.countByQueryWrapper(wrapper,WFWorkflowNodeFavDO.class)));
|
}
|
|
/**
|
* 根据主键获取名称
|
* @param oid 主键
|
* @return 中文名称
|
*/
|
@Override
|
public String selectNameByOid(String oid) {
|
return selectByPrimaryKey(oid).getName();
|
}
|
|
/**
|
* 批量删除对象
|
* @param oids 对象的主键集合
|
* @return 受影响的行数
|
*/
|
@Override
|
public BatchCBO batchDeleteByOids(Collection<String> oids) {
|
VciBaseUtil.alertNotNull(oids,"主键");
|
List<WFWorkflowNodeFavDO> dos = boService.selectByOidCollection(oids, WFWorkflowNodeFavDO.class);
|
BatchCBO batchCBO = boService.batchDelete(dos);
|
return batchCBO;
|
}
|
|
/**
|
* 使用名称查询
|
* @param name 方案的名称
|
* @param userId 用户名
|
* @param templateRev 模板的版本
|
* @param id 模板的主键
|
* @return 数据对象
|
*/
|
@Override
|
public WFWorkflowNodeFavDO selectByName(String name, String userId, String id, String templateRev) {
|
VciBaseUtil.alertNotNull(name,"方案名称",userId,"用户名");
|
Map<String,String> conditionMap = new HashMap<>();
|
conditionMap.put("name",name);
|
conditionMap.put("userid",userId);
|
if (StringUtils.isNotBlank(id)){
|
conditionMap.put("id",id);
|
}
|
if (StringUtils.isNotBlank(templateRev)) {
|
conditionMap.put("wfTemplateRev", templateRev);
|
}
|
List<WFWorkflowNodeFavDO> dos = boService.queryObject(WFWorkflowNodeFavDO.class, conditionMap);
|
if (dos.size() == 0){
|
return null;
|
}
|
return dos.get(0);
|
}
|
}
|