package org.jeecg.modules.eam.service.impl; 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.github.xiaoymin.knife4j.core.util.CollectionUtils; import org.jeecg.common.system.api.ISysBaseAPI; import org.jeecg.common.system.base.entity.SysUpload; import org.jeecg.common.system.base.entity.SysUploadRela; import org.jeecg.modules.eam.entity.EquipmentReportRepair; import org.jeecg.modules.eam.mapper.EquipmentReportRepairMapper; import org.jeecg.modules.eam.service.IEquipmentReportRepairService; //import org.jeecg.modules.system.entity.SysUpload; //import org.jeecg.modules.system.entity.SysUploadRela; //import org.jeecg.modules.system.service.IUploadRelaService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; /** * @Description: equipment_report_repair * @Author: jeecg-boot * @Date: 2023-04-17 * @Version: V1.0 */ @Service public class EquipmentReportRepairServiceImpl extends ServiceImpl implements IEquipmentReportRepairService { // @Autowired // private IUploadRelaService uploadRelaService; @Autowired private ISysBaseAPI sysBaseApi; /** * 故障报修添加 * * @param equipmentReportRepair */ @Override public void addEquipmentReportRepair(EquipmentReportRepair equipmentReportRepair) { baseMapper.insert(faultTimeVerify(equipmentReportRepair)); establishRelations(equipmentReportRepair.getSysUploadList(), equipmentReportRepair.getId()); } /** * 根据修改故障报修 * * @param equipmentReportRepair */ @Override public void updateEquipmentReportRepairById(EquipmentReportRepair equipmentReportRepair) { String id = equipmentReportRepair.getId(); // 修改前 EquipmentReportRepair equipmentReportRepair1 = baseMapper.selectById(id); baseMapper.updateById(faultTimeVerify(equipmentReportRepair)); // 验证修改前修改后是否一致 if (!equipmentReportRepair.getPhoto().equals(equipmentReportRepair1.getPhoto())) { // uploadRelaService.delSysUploadRelaByBusIdAndBusType(id, "equipment_management_failure_photo"); sysBaseApi.delSysUploadRelaByBusIdAndBusType(id, "equipment_management_failure_photo"); establishRelations(equipmentReportRepair.getSysUploadList(), id); } } public EquipmentReportRepair faultTimeVerify(EquipmentReportRepair equipmentReportRepair) { if (equipmentReportRepair.getFaultTime() != null) { DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Date date = equipmentReportRepair.getFaultTime(); equipmentReportRepair.setFaultTime(date); } return equipmentReportRepair; } private void establishRelations(List sysUploadList, String id) { // 附件上传列表是否为空 if (sysUploadList != null) { if (CollectionUtils.isNotEmpty(sysUploadList)) { List sysUploadRelaList = new ArrayList<>(); sysUploadList.forEach(sul -> { SysUploadRela sysUploadRela = new SysUploadRela(); sysUploadRela.setBusId(id); sysUploadRela.setBusType("equipment_management_failure_photo"); sysUploadRela.setUploadId(sul.getId()); sysUploadRelaList.add(sysUploadRela); }); // 上传文件与业务数据关系 // uploadRelaService.saveBatch(sysUploadRelaList); sysBaseApi.saveOrUpdateBatchUploadRela(sysUploadRelaList); } } } @Override public IPage> getReportRepairList(Integer pageNo, Integer pageSize, Map params) { IPage pageData = new Page(pageNo, pageSize); return super.getBaseMapper().getReportRepairList(pageData, params) ; } }