package com.billion.main.om.service.impl; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.billion.common.core.domain.entity.SysUser; import com.billion.common.core.domain.model.LoginUser; import com.billion.common.exception.ServiceException; import com.billion.common.utils.SecurityUtils; import com.billion.main.common.BaseEntity; import com.billion.main.om.domain.OmProductionOrderInfo; import com.billion.main.om.mapper.OmProductionOrderInfoMapper; import com.billion.main.om.service.IOmProductionOrderInfoService; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.Date; import java.util.List; /** * 生产工单Service业务层处理 * * @author Billion * @date 2024-11-20 */ @Service public class OmProductionOrderInfoServiceImpl extends ServiceImpl implements IOmProductionOrderInfoService { @Resource private OmProductionOrderInfoMapper OmProductionOrderInfoMapper; /** * 查询生产工单 * * @param id 生产工单主键 * @return 生产工单 */ @Override public OmProductionOrderInfo selectOmProductionOrderInfoById(Long id) { return OmProductionOrderInfoMapper.selectOmProductionOrderInfoById(id); } /** * 查询生产工单列表 * * @param OmProductionOrderInfo 生产工单 * @return 生产工单 */ @Override public List selectOmProductionOrderInfoList(OmProductionOrderInfo OmProductionOrderInfo) { return OmProductionOrderInfoMapper.selectOmProductionOrderInfoList(OmProductionOrderInfo); } /** * 新增生产工单 * * @param omProductionOrderInfo 生产工单 */ @Override public void insertOmProductionOrderInfo(OmProductionOrderInfo omProductionOrderInfo) { List checkList = this.list(new LambdaQueryWrapper().eq(OmProductionOrderInfo::getWorkOrderNo, omProductionOrderInfo.getWorkOrderNo())); if (CollUtil.isNotEmpty(checkList)){ throw new ServiceException("已存在工单编号为"+omProductionOrderInfo.getWorkOrderNo()+"的数据"); } this.save(omProductionOrderInfo); // LoginUser loginUser = SecurityUtils.getLoginUser(); // SysUser user = loginUser.getUser(); // OmProductionOrderInfo.setCreateTime(new Date()); // OmProductionOrderInfo.setUpdateTime(new Date()); // OmProductionOrderInfo.setCreateBy(user.getUserName()); // OmProductionOrderInfo.setUpdateBy(user.getUserName()); // OmProductionOrderInfo.setOrderStatus(Constant.ORDER_STATUS_NOT_START); // return OmProductionOrderInfoMapper.insertOmProductionOrderInfo(OmProductionOrderInfo); } /** * 修改生产工单 * * @param omProductionOrderInfo 生产工单 * @return 结果 */ @Override public int updateOmProductionOrderInfo(OmProductionOrderInfo omProductionOrderInfo) { List checkList = this.list(new LambdaQueryWrapper() .eq(OmProductionOrderInfo::getWorkOrderNo, omProductionOrderInfo.getWorkOrderNo()) .notIn(BaseEntity::getId,omProductionOrderInfo.getId())); // .stream().filter(x -> !x.getId().equals(omProductionOrderInfo.getId())) // .collect(Collectors.toList()); if (CollUtil.isNotEmpty(checkList)){ throw new ServiceException("已存在工单编号为"+omProductionOrderInfo.getWorkOrderNo()+"的数据"); } LoginUser loginUser = SecurityUtils.getLoginUser(); SysUser user = loginUser.getUser(); omProductionOrderInfo.setUpdateTime(new Date()); omProductionOrderInfo.setUpdateBy(user.getUserName()); return OmProductionOrderInfoMapper.updateOmProductionOrderInfo(omProductionOrderInfo); } /** * 批量删除生产工单 * * @param ids 需要删除的生产工单主键 * @return 结果 */ @Override public int deleteOmProductionOrderInfoByIds(Long[] ids) { return OmProductionOrderInfoMapper.deleteOmProductionOrderInfoByIds(ids); } /** * 删除生产工单信息 * * @param id 生产工单主键 * @return 结果 */ @Override public int deleteOmProductionOrderInfoById(Long id) { return OmProductionOrderInfoMapper.deleteOmProductionOrderInfoById(id); } }