| | |
| | | package doumeemes.service.business.impl; |
| | | |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import doumeemes.core.constants.ResponseStatus; |
| | | import doumeemes.core.exception.BusinessException; |
| | | import doumeemes.core.model.LoginUserInfo; |
| | | import doumeemes.core.model.PageData; |
| | | import doumeemes.core.model.PageWrap; |
| | | import doumeemes.core.utils.Constants; |
| | | import doumeemes.core.utils.Utils; |
| | | import doumeemes.dao.business.UnqualifiedRecordMapper; |
| | | import doumeemes.dao.business.model.UnqualifiedRecord; |
| | | import doumeemes.dao.business.model.*; |
| | | import doumeemes.dao.ext.dto.QueryUnQualifiedRecordDTO; |
| | | import doumeemes.dao.system.dto.QuerySystemLoginLogDTO; |
| | | import doumeemes.dao.ext.join.UnQualifiedRecordJoinMapper; |
| | | import doumeemes.dao.system.model.SystemLoginLog; |
| | | import doumeemes.dao.system.model.SystemUser; |
| | | import doumeemes.service.business.UnqualifiedRecordService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.apache.shiro.SecurityUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * 工单类-报工不良记录类型表Service实现 |
| | |
| | | |
| | | @Autowired |
| | | private UnqualifiedRecordMapper unqualifiedRecordMapper; |
| | | |
| | | @Autowired |
| | | private UnQualifiedRecordJoinMapper unQualifiedRecordJoinMapper; |
| | | |
| | | |
| | | @Override |
| | | public Integer create(UnqualifiedRecord unqualifiedRecord) { |
| | |
| | | QueryWrapper<UnqualifiedRecord> wrapper = new QueryWrapper<>(unqualifiedRecord); |
| | | return unqualifiedRecordMapper.selectList(wrapper); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public PageData<UnqualifiedRecord> findPage(PageWrap<UnqualifiedRecord> pageWrap) { |
| | | IPage<UnqualifiedRecord> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | |
| | | QueryWrapper<UnqualifiedRecord> wrapper = new QueryWrapper<>(unqualifiedRecord); |
| | | return unqualifiedRecordMapper.selectCount(wrapper); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public PageData<UnqualifiedRecord> findJoinPage(PageWrap<QueryUnQualifiedRecordDTO> pageWrap) { |
| | | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | if(!Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对不起,您无权限进行该操作!"); |
| | | } |
| | | |
| | | IPage<UnqualifiedRecord> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | MPJLambdaWrapper<UnqualifiedRecord> mpjLambdaWrapper = new MPJLambdaWrapper<>(); |
| | | mpjLambdaWrapper.selectAll(UnqualifiedRecord.class); |
| | | mpjLambdaWrapper.selectAs(Workorder::getCode, UnqualifiedRecord::getWorkOrderCode); |
| | | mpjLambdaWrapper.selectAs(Material::getName, UnqualifiedRecord::getMaterialName); |
| | | mpjLambdaWrapper.selectAs(Material::getCode, UnqualifiedRecord::getMaterialCode); |
| | | mpjLambdaWrapper.selectAs(Procedures::getName, UnqualifiedRecord::getProceduresName); |
| | | mpjLambdaWrapper.selectAs(Category::getName, UnqualifiedRecord::getCategoryName); |
| | | mpjLambdaWrapper.selectAs(SystemUser::getRealname, UnqualifiedRecord::getCreateUserName); |
| | | |
| | | mpjLambdaWrapper.leftJoin(Workorder.class,Workorder::getId,UnqualifiedRecord::getWorkorderId); |
| | | mpjLambdaWrapper.leftJoin(MaterialDistribute.class,MaterialDistribute::getId,Workorder::getMaterialId); |
| | | mpjLambdaWrapper.leftJoin(Material.class,Material::getId,MaterialDistribute::getMaterialId); |
| | | mpjLambdaWrapper.leftJoin(Procedures.class,Procedures::getId,Workorder::getProcedureId); |
| | | mpjLambdaWrapper.leftJoin(Category.class,Category::getId,UnqualifiedRecord::getCategoryId); |
| | | mpjLambdaWrapper.leftJoin(SystemUser.class,SystemUser::getId,UnqualifiedRecord::getCreateUser); |
| | | //只能查看当前根组织的数据 |
| | | mpjLambdaWrapper.eq(Workorder::getRootDepartId,user.getRootDepartment().getId()); |
| | | //如果当前选择的公司级组织非根组织信息,只能查看当前选择公司级组织数据 |
| | | mpjLambdaWrapper.eq(Workorder::getDepartId,user.getCurComDepartment().getId()); |
| | | mpjLambdaWrapper.eq(UnqualifiedRecord::getDeleted,Constants.ZERO); |
| | | // 不良分类分类 |
| | | if ( pageWrap.getModel().getCategoryId() !=null) { |
| | | mpjLambdaWrapper.eq(UnqualifiedRecord::getCategoryId, pageWrap.getModel().getCategoryId()); |
| | | } |
| | | // 工单编码 |
| | | if (StringUtils.isNotBlank(pageWrap.getModel().getCode())) { |
| | | mpjLambdaWrapper.like(Workorder::getCode, pageWrap.getModel().getCode()); |
| | | } |
| | | return PageData.from(unQualifiedRecordJoinMapper.selectJoinPage(page, UnqualifiedRecord.class,mpjLambdaWrapper)); |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public List<UnqualifiedRecord> findJoinList(Integer recordId) { |
| | | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); |
| | | if(!Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对不起,您无权限进行该操作!"); |
| | | } |
| | | |
| | | MPJLambdaWrapper<UnqualifiedRecord> mpjLambdaWrapper = new MPJLambdaWrapper<>(); |
| | | mpjLambdaWrapper.selectAll(UnqualifiedRecord.class); |
| | | mpjLambdaWrapper.selectAs(Workorder::getCode, UnqualifiedRecord::getWorkOrderCode); |
| | | mpjLambdaWrapper.selectAs(Material::getName, UnqualifiedRecord::getMaterialName); |
| | | mpjLambdaWrapper.selectAs(Material::getCode, UnqualifiedRecord::getMaterialCode); |
| | | mpjLambdaWrapper.selectAs(Procedures::getName, UnqualifiedRecord::getProceduresName); |
| | | mpjLambdaWrapper.selectAs(Category::getName, UnqualifiedRecord::getCategoryName); |
| | | mpjLambdaWrapper.selectAs(SystemUser::getRealname, UnqualifiedRecord::getCreateUserName); |
| | | |
| | | mpjLambdaWrapper.leftJoin(Workorder.class,Workorder::getId,UnqualifiedRecord::getWorkorderId); |
| | | mpjLambdaWrapper.leftJoin(MaterialDistribute.class,MaterialDistribute::getId,Workorder::getMaterialId); |
| | | mpjLambdaWrapper.leftJoin(Material.class,Material::getId,MaterialDistribute::getMaterialId); |
| | | mpjLambdaWrapper.leftJoin(Procedures.class,Procedures::getId,Workorder::getProcedureId); |
| | | mpjLambdaWrapper.leftJoin(Category.class,Category::getId,UnqualifiedRecord::getCategoryId); |
| | | mpjLambdaWrapper.leftJoin(SystemUser.class,SystemUser::getId,UnqualifiedRecord::getCreateUser); |
| | | //只能查看当前根组织的数据 |
| | | mpjLambdaWrapper.eq(Workorder::getRootDepartId,user.getRootDepartment().getId()); |
| | | //如果当前选择的公司级组织非根组织信息,只能查看当前选择公司级组织数据 |
| | | mpjLambdaWrapper.eq(Workorder::getDepartId,user.getCurComDepartment().getId()); |
| | | mpjLambdaWrapper.eq(UnqualifiedRecord::getDeleted,Constants.ZERO); |
| | | mpjLambdaWrapper.eq(UnqualifiedRecord::getRecordId, recordId); |
| | | List<UnqualifiedRecord> unqualifiedRecordList = unQualifiedRecordJoinMapper.selectJoinList(UnqualifiedRecord.class,mpjLambdaWrapper); |
| | | return unqualifiedRecordList; |
| | | } |
| | | |
| | | |
| | | } |