package com.ruoyi.production.service.impl;
|
|
import cn.hutool.core.bean.BeanUtil;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.ruoyi.production.bean.dto.ProductionOperationTaskDto;
|
import com.ruoyi.production.bean.vo.ProductionOperationTaskVo;
|
import com.ruoyi.production.mapper.ProductionOperationTaskMapper;
|
import com.ruoyi.production.pojo.ProductionOperationTask;
|
import com.ruoyi.production.service.ProductionOperationTaskService;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.stereotype.Service;
|
|
import java.util.List;
|
|
@Service
|
@RequiredArgsConstructor
|
public class ProductionOperationTaskServiceImpl extends ServiceImpl<ProductionOperationTaskMapper, ProductionOperationTask> implements ProductionOperationTaskService {
|
|
|
|
@Override
|
public IPage<ProductionOperationTaskVo> pageProductionOperationTask(Page<ProductionOperationTaskDto> page, ProductionOperationTaskDto dto) {
|
Page<ProductionOperationTaskVo> voPage = new Page<>(page.getCurrent(), page.getSize(), page.getTotal());
|
return baseMapper.pageProductionOperationTask(voPage, dto);
|
}
|
|
@Override
|
public List<ProductionOperationTaskVo> listProductionOperationTask(ProductionOperationTaskDto dto) {
|
return BeanUtil.copyToList(this.list(buildQueryWrapper(dto)), ProductionOperationTaskVo.class);
|
}
|
|
@Override
|
public ProductionOperationTaskVo getProductionOperationTaskInfo(Long id) {
|
ProductionOperationTask item = this.getById(id);
|
return item == null ? null : BeanUtil.copyProperties(item, ProductionOperationTaskVo.class);
|
}
|
|
@Override
|
public boolean saveProductionOperationTask(ProductionOperationTask productionOperationTask) {
|
return this.saveOrUpdate(productionOperationTask);
|
}
|
|
@Override
|
public boolean removeProductionOperationTask(List<Long> ids) {
|
return ids != null && !ids.isEmpty() && this.removeByIds(ids);
|
}
|
|
private LambdaQueryWrapper<ProductionOperationTask> buildQueryWrapper(ProductionOperationTaskDto dto) {
|
ProductionOperationTask query = dto == null ? new ProductionOperationTask() : dto;
|
return Wrappers.<ProductionOperationTask>lambdaQuery()
|
.eq(query.getId() != null, ProductionOperationTask::getId, query.getId())
|
.eq(query.getProductionOrderId() != null, ProductionOperationTask::getProductionOrderId, query.getProductionOrderId())
|
.eq(query.getProductionOrderRoutingOperationId() != null,
|
ProductionOperationTask::getProductionOrderRoutingOperationId, query.getProductionOrderRoutingOperationId())
|
.eq(query.getStatus() != null, ProductionOperationTask::getStatus, query.getStatus())
|
.like(query.getWorkOrderNo() != null && !query.getWorkOrderNo().trim().isEmpty(),
|
ProductionOperationTask::getWorkOrderNo, query.getWorkOrderNo())
|
.orderByDesc(ProductionOperationTask::getId);
|
}
|
|
@Override
|
public int updateProductWorkOrder(ProductionOperationTaskDto dto) {
|
return baseMapper.updateById(dto);
|
}
|
}
|