package com.project.approval.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import cn.hutool.core.convert.Convert; import com.project.common.utils.StringUtils; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import org.springframework.transaction.annotation.Transactional; import com.project.approval.domain.vo.ApprovalNodeLinkVo; import com.project.approval.domain.bo.editBo.ApprovalNodeLinkBo; import com.project.approval.domain.bo.queryBo.ApprovalNodeLinkQueryBo; import com.project.approval.domain.ApprovalNodeLink; import com.project.approval.mapper.ApprovalNodeLinkMapper; import com.project.approval.service.IApprovalNodeLinkService; import java.util.Collection; import java.util.List; /** * 流程节点线性Service业务层处理 * * @author manton */ @Service @RequiredArgsConstructor(onConstructor_ = @Autowired) public class ApprovalNodeLinkServiceImpl extends ServiceImpl implements IApprovalNodeLinkService { @Override//列表查询 public List queryList(ApprovalNodeLinkQueryBo bo) { QueryWrapper qw = getQw(bo); List list = this.list(qw); return Convert.toList(ApprovalNodeLinkVo.class , list); } @Override//id查询 public ApprovalNodeLinkVo queryById(Long flowId) { ApprovalNodeLink db = this.baseMapper.selectById(flowId); return Convert.convert(ApprovalNodeLinkVo.class , db); } @Override//添加 @Transactional public Boolean insertByBo(ApprovalNodeLinkBo bo) { ApprovalNodeLink add = Convert.convert(ApprovalNodeLink.class, bo); validEntityBeforeSave(add); return this.save(add); } @Override//修改 @Transactional public Boolean updateByBo(ApprovalNodeLinkBo bo) { ApprovalNodeLink update = Convert.convert(ApprovalNodeLink.class, bo); validEntityBeforeSave(update); return this.updateById(update); } @Override//删除 @Transactional public Boolean deleteByIds(Collection ids) { //做一些业务上的校验,判断是否需要校验 return this.removeByIds(ids); } //------------------------------------------------------------------------------------- //保存前校验 private void validEntityBeforeSave(ApprovalNodeLink entity) { //做一些数据校验,如唯一约束 } //获取查询参数 private QueryWrapper getQw(ApprovalNodeLinkQueryBo bo) { QueryWrapper qw = Wrappers.query(); qw.eq(StringUtils.isNotEmpty(bo.getNodeIds()), "node_ids", bo.getNodeIds()); if (StringUtils.isNotEmpty(bo.getIsAsc()) && StringUtils.isNotEmpty(bo.getOrderByColumn())){ if ("acs".equals(bo.getIsAsc())) { qw.orderByAsc(bo.getOrderByColumn()); } else if ("desc".equals(bo.getIsAsc())) { qw.orderByDesc(bo.getOrderByColumn()); } } return qw; } }