package com.gk.hotwork.Service.ServiceImpl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gk.hotwork.Domain.MajorEquipment; import com.gk.hotwork.Domain.Exception.BusinessException; import com.gk.hotwork.Domain.MajorEquipmentAlarm; import com.gk.hotwork.Domain.MajorEquipmentData; import com.gk.hotwork.Domain.UserInfo; import com.gk.hotwork.Domain.Utils.StringUtils; import com.gk.hotwork.Mapper.MajorEquipmentAlarmMapper; import com.gk.hotwork.Mapper.MajorEquipmentDataMapper; import com.gk.hotwork.Mapper.MajorEquipmentMapper; import com.gk.hotwork.Service.MajorEquipmentService; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.List; import java.util.Map; @Service("MajorEquipmentService") @Transactional public class MajorEquipmentImpl extends ServiceImpl implements MajorEquipmentService { @Autowired private MajorEquipmentMapper majorEquipmentMapper; @Autowired private MajorEquipmentAlarmMapper majorEquipmentAlarmMapper; @Autowired private MajorEquipmentDataMapper majorEquipmentDataMapper; /** * @Description: 分页 */ @Override public IPage selectPage(Page page, Map filter, UserInfo user) { return majorEquipmentMapper.selectPages(page,filter); } /** * @Description: 新增 */ @Override public void addOne(MajorEquipment param, UserInfo user) { requiredVerification(param); List list = majorEquipmentMapper.getBySerialNumber(param); if (CollectionUtils.isEmpty(list)){ param.setValidFlag(Boolean.TRUE); param.setUpdateBy(user.getRealname()); param.setCreateBy(user.getRealname()); param.setUpdateTime(new Date()); param.setCreateTime(new Date()); this.save(param); } else{ throw new BusinessException("该设备编号已存在对应的设备!"); } } /** * @Description: 修改 */ @Override public void modOne(MajorEquipment param, UserInfo user) { selectVerification(param.getId()); requiredVerification(param); List list = majorEquipmentMapper.getBySerialNumber(param); if (CollectionUtils.isEmpty(list)){ param.setUpdateTime(new Date()); param.setUpdateBy(user.getRealname()); this.updateById(param); } else{ throw new BusinessException("该设备编号已存在对应的设备!"); } } /** * @Description: 删除 * 删除数据表 * 删除报警信息表 */ @Override public void delOne(Long id, UserInfo user) { selectVerification(id); MajorEquipment delOne = new MajorEquipment(); delOne.setId(id); delOne.setUpdateTime(new Date()); delOne.setUpdateBy(user.getRealname()); delOne.setValidFlag(Boolean.FALSE); this.updateById(delOne); // majorEquipmentAlarmMapper.deleteByEquipmentId(id,user.getRealname(),new Date()); // majorEquipmentDataMapper.deleteByEquipmentId(id,user.getRealname(),new Date()); } @Override public List getMajorEquipment() { return majorEquipmentMapper.getMajorEquipment(); } /** * 查询验证 * 验证对象存在 */ public void selectVerification(Long id){ if (id == null) throw new BusinessException("id传参不能为空"); MajorEquipment MajorEquipment = this.getById(id); if (MajorEquipment == null) throw new BusinessException("找不到对应实体"); } /** * 操作验证 * 验证必填项 * */ public void requiredVerification(MajorEquipment param){ if(StringUtils.isBlank(param.getName())) throw new BusinessException("请填写要素名称"); if(StringUtils.isBlank(param.getSerialNumber())) throw new BusinessException("请填写设备编号"); if (param.getStatus() == null) throw new BusinessException("请选择设备状态"); if (param.getVolume() == null) throw new BusinessException("请填写设备容积"); if (param.getUserId() == null) throw new BusinessException("请选择设备负责人"); } }