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.ApprovalNodeClassVo; import com.project.approval.domain.bo.editBo.ApprovalNodeClassBo; import com.project.approval.domain.bo.queryBo.ApprovalNodeClassQueryBo; import com.project.approval.domain.ApprovalNodeClass; import com.project.approval.mapper.ApprovalNodeClassMapper; import com.project.approval.service.IApprovalNodeClassService; import java.util.Collection; import java.util.List; /** * 流程节点分类Service业务层处理 * * @author manton */ @Service @RequiredArgsConstructor(onConstructor_ = @Autowired) public class ApprovalNodeClassServiceImpl extends ServiceImpl implements IApprovalNodeClassService { @Override//列表查询 public List queryList(ApprovalNodeClassQueryBo bo) { QueryWrapper qw = getQw(bo); List list = this.list(qw); return Convert.toList(ApprovalNodeClassVo.class , list); } @Override//id查询 public ApprovalNodeClassVo queryById(Long nodeClassId) { ApprovalNodeClass db = this.baseMapper.selectById(nodeClassId); return Convert.convert(ApprovalNodeClassVo.class , db); } @Override//添加 @Transactional public Boolean insertByBo(ApprovalNodeClassBo bo) { ApprovalNodeClass add = Convert.convert(ApprovalNodeClass.class, bo); validEntityBeforeSave(add); return this.save(add); } @Override//修改 @Transactional public Boolean updateByBo(ApprovalNodeClassBo bo) { ApprovalNodeClass update = Convert.convert(ApprovalNodeClass.class, bo); validEntityBeforeSave(update); return this.updateById(update); } @Override//删除 @Transactional public Boolean deleteByIds(Collection ids) { //做一些业务上的校验,判断是否需要校验 return this.removeByIds(ids); } //------------------------------------------------------------------------------------- //保存前校验 private void validEntityBeforeSave(ApprovalNodeClass entity) { //做一些数据校验,如唯一约束 } //获取查询参数 private QueryWrapper getQw(ApprovalNodeClassQueryBo bo) { QueryWrapper qw = Wrappers.query(); qw.like(StringUtils.isNotEmpty(bo.getNodeClassName()), "node_class_name", bo.getNodeClassName()); qw.eq(StringUtils.isNotEmpty(bo.getNodeClassPym()), "node_class_pym", bo.getNodeClassPym()); qw.eq(bo.getParentId() != null, "parent_id", bo.getParentId()); qw.eq(bo.getSortNum() != null, "sort_num", bo.getSortNum()); 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; } }