.DS_StoreBinary files differ
src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
@@ -11,9 +11,11 @@ import com.ruoyi.approve.bean.vo.ApproveProcessConfigNodeVo; import com.ruoyi.approve.bean.vo.ApproveProcessVO; import com.ruoyi.approve.mapper.ApproveNodeMapper; import com.ruoyi.approve.mapper.ApproveProcessConfigNodeMapper; import com.ruoyi.approve.mapper.ApproveProcessMapper; import com.ruoyi.approve.pojo.ApproveNode; import com.ruoyi.approve.pojo.ApproveProcess; import com.ruoyi.approve.pojo.ApproveProcessConfigNode; import com.ruoyi.approve.service.ApproveProcessConfigNodeService; import com.ruoyi.approve.service.IApproveNodeService; import com.ruoyi.approve.service.IApproveProcessService; @@ -68,6 +70,7 @@ private final ApproveNodeMapper approveNodeMapper; private final ApproveProcessConfigNodeService approveProcessConfigNodeService; private final FileUtil fileUtil; private final ApproveProcessConfigNodeMapper approveProcessConfigNodeMapper; @Override public void addApprove(ApproveProcessVO approveProcessVO) throws Exception { @@ -300,17 +303,20 @@ .eq(ApproveProcess::getApproveReason, approveGetAndUpdateVo.getApproveReason()) .last("limit 1"); ApproveProcess approveProcess = approveProcessMapper.selectOne(approveProcessLambdaQueryWrapper); if (approveProcess == null) throw new RuntimeException("â"); String[] split = approveGetAndUpdateVo.getApproveUserIds().split(","); if (split.length == 0) { throw new RuntimeException("è¯·éæ©å®¡æ¹äºº"); } List<SysUser> sysUsers = sysUserMapper.selectUserByIds(Arrays.asList(split).stream().map(Long::parseLong).collect(Collectors.toList())); if (approveProcess == null) throw new RuntimeException("è¯·éæ©å®¡æ¹äºº"); //æ¥è¯¢å®¡æ¹é ç½® List<ApproveProcessConfigNode> approveProcessConfig = approveProcessConfigNodeMapper.selectList(new LambdaQueryWrapper<ApproveProcessConfigNode>().eq(ApproveProcessConfigNode::getApproveType, approveGetAndUpdateVo.getApproveType())); List<Long> configNodeIds = approveProcessConfig.stream() .sorted(Comparator.comparing(ApproveProcessConfigNode::getNodeOrder)) .map(ApproveProcessConfigNode::getApproverId) .collect(Collectors.toList()); List<SysUser> sysUsers = sysUserMapper.selectUserByIds(configNodeIds); if (CollectionUtils.isEmpty(sysUsers)) throw new RuntimeException("è¯·éæ©å®¡æ¹äºº"); //å®¡æ ¸ä¸ä¸å¯ä»¥ç¼è¾å®¡æ ¸äºº if (approveProcess.getApproveStatus() != 1) { approveProcess.setApproveUserCurrentId(Long.parseLong(split[0])); approveProcess.setApproveUserCurrentName(sysUsers.stream().filter(user -> user.getUserId().equals(Long.parseLong(split[0]))).collect(Collectors.toList()).get(0).getNickName()); approveProcess.setApproveUserCurrentId(configNodeIds.get(0)); approveProcess.setApproveUserCurrentName(sysUsers.stream().filter(user -> user.getUserId().equals(configNodeIds.get(0))).collect(Collectors.toList()).get(0).getNickName()); } if (approveGetAndUpdateVo.getApproveStatus() != null) { approveProcess.setApproveStatus(approveGetAndUpdateVo.getApproveStatus()); @@ -322,21 +328,24 @@ LambdaQueryWrapper<ApproveNode> approveNodeLambdaQueryWrapper = new LambdaQueryWrapper<>(); approveNodeLambdaQueryWrapper.eq(ApproveNode::getApproveProcessId, approveProcess.getApproveId()) .eq(ApproveNode::getDeleteFlag, 0) // .eq(ApproveNode::getTenantId, SecurityUtils.getLoginUser().getTenantId()) .orderByAsc(ApproveNode::getApproveNodeOrder); approveNodeMapper.delete(approveNodeLambdaQueryWrapper); //æ¥è¯¢å®¡æ¹é ç½® approveGetAndUpdateVo.setApproveUserIds(configNodeIds.stream() .map(String::valueOf) .collect(Collectors.joining(","))); approveNodeService.initApproveNodes(approveGetAndUpdateVo.getApproveUserIds(), approveProcess.getApproveId(), approveProcess.getTenantId()); /*æ¶æ¯éç¥*/ String id = approveProcess.getApproveUserIds().split(",")[0]; Long id = configNodeIds.get(0); if (approveProcess.getApproveType()==8){ sysNoticeService.simpleNoticeByUser(approveProcessType(approveProcess.getApproveType()), approveProcess.getApproveId() + "æµç¨ç¼å·ç审æ¹éè¦æ¨å®¡æ ¸!!!!!", Arrays.asList(Long.valueOf(id)), Collections.singletonList(id), "/safeProduction/safeWorkApproval?approveType=" + approveProcess.getApproveType() + "&approveId=" + approveProcess.getApproveId()); }else { sysNoticeService.simpleNoticeByUser(approveProcessType(approveProcess.getApproveType()), approveProcess.getApproveId() + "æµç¨ç¼å·ç审æ¹éè¦æ¨å®¡æ ¸!!!!!", Arrays.asList(Long.valueOf(id)), Collections.singletonList(id), "/collaborativeApproval/approvalProcess?approveType=" + approveProcess.getApproveType() + "&approveId=" + approveProcess.getApproveId()); } } src/main/java/com/ruoyi/basic/controller/StorageAttachmentController.java
@@ -18,19 +18,18 @@ @RestController @AllArgsConstructor @RequestMapping("/basic/storage_attachment") @RequestMapping("/basic/storage_attachment") public class StorageAttachmentController { private StorageAttachmentService storageAttachmentService; /** * å页æ¥è¯¢éç¨æä»¶ä¸ä¼ çéä»¶ä¿¡æ¯ * @param page å页忰 * @param storageAttachmentDTO å ³èè®°å½ä¿¡æ¯ * @return åé¡µç»æ */ @GetMapping("/listPage") public R listPage(Page page, StorageAttachmentDTO storageAttachmentDTO) { return R.ok(storageAttachmentService.listPage(page, storageAttachmentDTO)); @GetMapping("/list") public R list(StorageAttachmentDTO storageAttachmentDTO) { return R.ok(storageAttachmentService.list(storageAttachmentDTO)); } /** src/main/java/com/ruoyi/basic/dto/StorageBlobVO.java
@@ -14,4 +14,6 @@ * ä¸è½½å°å */ private String downloadURL; private Long storageAttachmentId; } src/main/java/com/ruoyi/basic/service/StorageAttachmentService.java
@@ -6,6 +6,7 @@ import com.ruoyi.basic.dto.StorageAttachmentDTO; import com.ruoyi.basic.dto.StorageAttachmentVO; import com.ruoyi.basic.dto.StorageBlobDTO; import com.ruoyi.basic.dto.StorageBlobVO; import com.ruoyi.basic.enums.ApplicationTypeEnum; import com.ruoyi.basic.enums.RecordTypeEnum; import com.ruoyi.basic.pojo.StorageAttachment; @@ -31,11 +32,10 @@ /** * å页æ¥è¯¢éç¨æä»¶ä¸ä¼ çéä»¶ä¿¡æ¯ * @param page å页忰 * @param storageAttachmentDTO å ³èè®°å½ä¿¡æ¯ * @return åé¡µç»æ */ public IPage<StorageAttachmentVO> listPage(Page page, StorageAttachmentDTO storageAttachmentDTO); public List<StorageBlobVO> list(StorageAttachmentDTO storageAttachmentDTO); /** * å é¤éç¨æä»¶ä¸ä¼ çéä»¶ä¿¡æ¯ src/main/java/com/ruoyi/basic/service/impl/StorageAttachmentServiceImpl.java
@@ -1,12 +1,8 @@ package com.ruoyi.basic.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.ruoyi.basic.dto.StorageAttachmentDTO; import com.ruoyi.basic.dto.StorageAttachmentVO; import com.ruoyi.basic.dto.StorageBlobDTO; import com.ruoyi.basic.enums.ApplicationTypeEnum; import com.ruoyi.basic.dto.StorageBlobVO; import com.ruoyi.basic.enums.RecordTypeEnum; import com.ruoyi.basic.mapper.StorageAttachmentMapper; import com.ruoyi.basic.mapper.StorageBlobMapper; @@ -45,8 +41,8 @@ } @Override public IPage<StorageAttachmentVO> listPage(Page page, StorageAttachmentDTO storageAttachmentDTO) { return fileUtil.getStorageAttachmentVosPageListByApplicationAndRecordTypeAndRecordId(page, storageAttachmentDTO); public List<StorageBlobVO> list(StorageAttachmentDTO storageAttachmentDTO) { return fileUtil.getStorageBlobVOsByApplicationAndRecordTypeAndRecordId(storageAttachmentDTO); } @Override src/main/java/com/ruoyi/basic/utils/FileUtil.java
@@ -286,41 +286,20 @@ /** * éè¿è®°å½ç±»åè·åæä»¶ä¿¡æ¯ attachmentï¼åé¡µï¼ * * @param page å页忰 * @param storageAttachmentDTO å ³èè®°å½ä¿¡æ¯ */ public IPage<StorageAttachmentVO> getStorageAttachmentVosPageListByApplicationAndRecordTypeAndRecordId(Page page, StorageAttachmentDTO storageAttachmentDTO) { // å页æ¥è¯¢ç¬¦åæ¡ä»¶ç StorageAttachment è®°å½ public List<StorageBlobVO> getStorageBlobVOsByApplicationAndRecordTypeAndRecordId(StorageAttachmentDTO storageAttachmentDTO) { LambdaQueryWrapper<StorageAttachment> queryWrapper = new LambdaQueryWrapper<StorageAttachment>() .eq(StorageAttachment::getRecordType, storageAttachmentDTO.getRecordType()) .eq(StorageAttachment::getRecordId, storageAttachmentDTO.getRecordId()); if (storageAttachmentDTO.getApplication() != null) { queryWrapper.eq(StorageAttachment::getApplication, storageAttachmentDTO.getApplication()); } IPage<StorageAttachmentVO> storageAttachmentIPage = storageAttachmentMapper.selectPage(page, queryWrapper); // 转æ¢ä¸º StorageAttachmentVO å¹¶è·å对åºç StorageBlobVO List<StorageAttachmentVO> storageAttachmentVOS = new ArrayList<>(); if (CollectionUtils.isNotEmpty(storageAttachmentIPage.getRecords())) { for (StorageAttachment storageAttachment : storageAttachmentIPage.getRecords()) { StorageAttachmentVO storageAttachmentVO = new StorageAttachmentVO(); BeanUtils.copyProperties(storageAttachment, storageAttachmentVO); List<StorageBlobVO> storageBlobVOS = getStorageBlobVOsByStorageAttachmentIds(Collections.singletonList(storageAttachment.getId())); if (CollectionUtils.isEmpty(storageBlobVOS)) { storageAttachmentVO.setStorageBlobVOS(new ArrayList<>()); } else { storageAttachmentVO.setStorageBlobVOS(storageBlobVOS); } storageAttachmentVOS.add(storageAttachmentVO); } List<StorageAttachment> storageAttachments = storageAttachmentMapper.selectList(queryWrapper); if (CollectionUtils.isEmpty(storageAttachments)) { return null; } // æå»ºåé¡µç»æ IPage<StorageAttachmentVO> resultPage = new Page<>(); BeanUtils.copyProperties(storageAttachmentIPage, resultPage); resultPage.setRecords(storageAttachmentVOS); return resultPage; return getStorageBlobVOsByStorageAttachmentIds(storageAttachments.stream().map(StorageAttachment::getId).collect(Collectors.toList())); } /** @@ -355,6 +334,9 @@ if (CollectionUtils.isEmpty(storageAttachments)) { return null; } Map<Long, Long> blobIdToAttachmentIdMap = storageAttachments.stream() .collect(Collectors.toMap(StorageAttachment::getStorageBlobId, StorageAttachment::getId)); List<Long> storageBlobIds = storageAttachments.stream().map(StorageAttachment::getStorageBlobId).collect(Collectors.toList()); List<StorageBlob> storageBlobs = storageBlobMapper.selectByIds(storageBlobIds); List<StorageBlobVO> storageBlobDTOS = new ArrayList<>(); @@ -363,6 +345,7 @@ BeanUtils.copyProperties(storageBlob, storageBlobVO); storageBlobVO.setPreviewURL(buildSignedPreviewUrl(storageBlobVO)); storageBlobVO.setDownloadURL(buildSignedDownloadUrl(storageBlobVO)); storageBlobVO.setStorageAttachmentId(blobIdToAttachmentIdMap.get(storageBlob.getId())); storageBlobDTOS.add(storageBlobVO); } return storageBlobDTOS; @@ -398,6 +381,10 @@ if (CollectionUtils.isEmpty(storageAttachments)) { return null; } // æå»º storageBlobId -> storageAttachmentId çæ å° Map<Long, Long> blobIdToAttachmentIdMap = storageAttachments.stream() .collect(Collectors.toMap(StorageAttachment::getStorageBlobId, StorageAttachment::getId)); List<Long> storageBlobIds = storageAttachments.stream().map(StorageAttachment::getStorageBlobId).collect(Collectors.toList()); List<StorageBlob> storageBlobs = storageBlobMapper.selectByIds(storageBlobIds); List<StorageBlobVO> storageBlobDTOS = new ArrayList<>(); @@ -406,6 +393,7 @@ BeanUtils.copyProperties(storageBlob, storageBlobVO); storageBlobVO.setPreviewURL(buildSignedPreviewUrl(storageBlobVO)); storageBlobVO.setDownloadURL(buildSignedDownloadUrl(storageBlobVO)); storageBlobVO.setStorageAttachmentId(blobIdToAttachmentIdMap.get(storageBlob.getId())); storageBlobDTOS.add(storageBlobVO); } return storageBlobDTOS; @@ -448,6 +436,10 @@ if (CollectionUtils.isEmpty(storageAttachments)) { return null; } // æå»º storageBlobId -> storageAttachmentId çæ å° Map<Long, Long> blobIdToAttachmentIdMap = storageAttachments.stream() .collect(Collectors.toMap(StorageAttachment::getStorageBlobId, StorageAttachment::getId)); List<Long> storageBlobIds = storageAttachments.stream().map(StorageAttachment::getStorageBlobId).collect(Collectors.toList()); List<StorageBlob> storageBlobs = storageBlobMapper.selectByIds(storageBlobIds); List<StorageBlobVO> storageBlobDTOS = new ArrayList<>(); @@ -456,6 +448,7 @@ BeanUtils.copyProperties(storageBlob, storageBlobVO); storageBlobVO.setPreviewURL(buildSignedUrl(storageBlobVO, "/preview/", expired)); storageBlobVO.setDownloadURL(buildSignedUrl(storageBlobVO, "/download/", expired)); storageBlobVO.setStorageAttachmentId(blobIdToAttachmentIdMap.get(storageBlob.getId())); storageBlobDTOS.add(storageBlobVO); } return storageBlobDTOS; src/main/java/com/ruoyi/device/controller/DeviceMaintenanceController.java
@@ -34,7 +34,7 @@ @PostMapping() @Operation(summary = "æ·»å 设å¤ä¿å »") public AjaxResult add(@RequestBody DeviceMaintenance deviceMaintenance) { public AjaxResult add(@RequestBody DeviceMaintenanceDto deviceMaintenance) { DeviceLedger byId = deviceLedgerService.getById(deviceMaintenance.getDeviceLedgerId()); deviceMaintenance.setDeviceName(byId.getDeviceName()); deviceMaintenance.setDeviceModel(byId.getDeviceModel()); @@ -49,7 +49,7 @@ @PutMapping () @Operation(summary = "ä¿®æ¹è®¾å¤ä¿å »") public AjaxResult update(@RequestBody DeviceMaintenance deviceMaintenance) { public AjaxResult update(@RequestBody DeviceMaintenanceDto deviceMaintenance) { DeviceLedger byId = deviceLedgerService.getById(deviceMaintenance.getDeviceLedgerId()); deviceMaintenance.setDeviceName(byId.getDeviceName()); deviceMaintenance.setDeviceModel(byId.getDeviceModel()); @@ -58,7 +58,7 @@ @PostMapping ("maintenance") @Operation(summary = "ä¿®æ¹è®¾å¤ä¿å »") public AjaxResult maintenance(@RequestBody DeviceMaintenance deviceMaintenance) { public AjaxResult maintenance(@RequestBody DeviceMaintenanceDto deviceMaintenance) { return deviceMaintenanceService.updateDeviceDeviceMaintenance(deviceMaintenance); } src/main/java/com/ruoyi/device/controller/DeviceRepairController.java
@@ -30,27 +30,26 @@ @PostMapping() @Operation(summary = "æ·»å è®¾å¤æ¥ä¿®") public AjaxResult add( @RequestBody DeviceRepair deviceRepair) { return deviceRepairService.saveDeviceRepair(deviceRepair); public AjaxResult add( @RequestBody DeviceRepairDto deviceRepairDto) { return deviceRepairService.saveDeviceRepair(deviceRepairDto); } @Operation(summary = "æ ¹æ®idæ¥è¯¢è®¾å¤æ¥ä¿®") @GetMapping("/{id}") public AjaxResult detail(@PathVariable Long id) { DeviceRepairDto byId = deviceRepairService.detailById(id); return AjaxResult.success(byId); return AjaxResult.success(deviceRepairService.detailById(id)); } @PutMapping () @Operation(summary = "ä¿®æ¹è®¾å¤æ¥ä¿®") public AjaxResult update( @RequestBody DeviceRepair deviceRepair) { return deviceRepairService.updateDeviceRepair(deviceRepair); public AjaxResult update( @RequestBody DeviceRepairDto deviceRepairDto) { return deviceRepairService.updateDeviceRepair(deviceRepairDto); } @PostMapping ("repair") @Operation(summary = "设å¤ç»´ä¿®") public AjaxResult repair( @RequestBody DeviceRepair deviceRepair) { return deviceRepairService.updateDeviceRepair(deviceRepair); public AjaxResult repair( @RequestBody DeviceRepairDto deviceRepairDto) { return deviceRepairService.updateDeviceRepair(deviceRepairDto); } @DeleteMapping("/{ids}") src/main/java/com/ruoyi/device/dto/DeviceMaintenanceDto.java
@@ -2,11 +2,13 @@ import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; import com.ruoyi.basic.dto.StorageBlobDTO; import com.ruoyi.device.pojo.DeviceMaintenance; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.time.LocalDateTime; import java.util.List; @Data public class DeviceMaintenanceDto extends DeviceMaintenance { @@ -47,5 +49,9 @@ @Schema(description = "å建人åç§°") private String createUserName; @Schema(description = "ä¿å »å¾ç") private List<StorageBlobDTO> storageBlobDTOs; } src/main/java/com/ruoyi/device/dto/DeviceRepairDto.java
@@ -1,8 +1,11 @@ package com.ruoyi.device.dto; import com.ruoyi.basic.dto.StorageBlobDTO; import com.ruoyi.device.pojo.DeviceRepair; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.util.List; @Data public class DeviceRepairDto extends DeviceRepair { @@ -12,4 +15,6 @@ @Schema(description = "ç»´ä¿®æ¶é´å符串") private String maintenanceTimeStr; private List<StorageBlobDTO> storageBlobDTOs; } src/main/java/com/ruoyi/device/execl/DeviceMaintenanceExeclDto.java
@@ -21,6 +21,10 @@ @Schema(description = "è§æ ¼åå·") private String deviceModel; @Schema(description = "项ç®") @Excel(name = "项ç®") private String machineryCategory; @Excel(name = "计åä¿å »æ¥æ", dateFormat = "yyyy-MM-dd HH:mm:ss", width = 30) @Schema(description = "计åä¿å »æ¥æ") private Date maintenancePlanTime; src/main/java/com/ruoyi/device/execl/DeviceRepairExeclDto.java
@@ -19,6 +19,10 @@ @Excel(name = "设å¤åå·") private String deviceModel; @Schema(description = "项ç®") @Excel(name = "项ç®") private String machineryCategory; @Schema(description = "æ¥ä¿®æ¶é´") @Excel(name = "æ¥ä¿®æ¶é´", width = 30, dateFormat = "yyyy-MM-dd") private Date repairTime; src/main/java/com/ruoyi/device/mapper/DeviceMaintenanceMapper.java
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.device.dto.DeviceMaintenanceDto; import com.ruoyi.device.pojo.DeviceMaintenance; import com.ruoyi.device.vo.DeviceMaintenanceVo; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -16,7 +17,7 @@ IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto); DeviceMaintenanceDto detailById(Long id); DeviceMaintenanceVo detailById(Long id); @InterceptorIgnore(tenantLine = "true") List<DeviceMaintenance> list1(Long id); src/main/java/com/ruoyi/device/mapper/DeviceRepairMapper.java
@@ -5,12 +5,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.device.dto.DeviceRepairDto; import com.ruoyi.device.pojo.DeviceRepair; import com.ruoyi.device.vo.DeviceRepairVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @Mapper public interface DeviceRepairMapper extends BaseMapper<DeviceRepair> { IPage<DeviceRepairDto> queryPage(Page page, @Param("deviceRepairDto") DeviceRepairDto deviceRepairDto); IPage<DeviceRepairVo> queryPage(Page page, @Param("deviceRepairDto") DeviceRepairDto deviceRepairDto); DeviceRepairDto detailById(Long id); DeviceRepairVo detailById(Long id); } src/main/java/com/ruoyi/device/pojo/DeviceMaintenance.java
@@ -37,7 +37,7 @@ @Schema(description = "æåæ§è¡æ¶é´") private LocalDateTime lastExecutionTime; @Schema(description = "设å¤ç±»ç®") @Schema(description = "设å¤é¡¹ç®") private String machineryCategory; src/main/java/com/ruoyi/device/pojo/DeviceRepair.java
@@ -34,8 +34,8 @@ @Schema(description = "æ¥ä¿®å 容") private String remark; @Schema(description = "设å¤ç±»ç®") @Schema(description = "设å¤é¡¹ç®") private String machineryCategory; src/main/java/com/ruoyi/device/service/IDeviceMaintenanceService.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.device.dto.DeviceMaintenanceDto; import com.ruoyi.device.pojo.DeviceMaintenance; import com.ruoyi.device.vo.DeviceMaintenanceVo; import com.ruoyi.framework.web.domain.AjaxResult; import jakarta.servlet.http.HttpServletResponse; @@ -13,11 +14,11 @@ IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto); AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance); AjaxResult saveDeviceRepair(DeviceMaintenanceDto deviceMaintenance); AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance); AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenanceDto deviceMaintenance); void export(HttpServletResponse response, Long[] ids); DeviceMaintenanceDto detailById(Long id); DeviceMaintenanceVo detailById(Long id); } src/main/java/com/ruoyi/device/service/IDeviceRepairService.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.device.dto.DeviceRepairDto; import com.ruoyi.device.pojo.DeviceRepair; import com.ruoyi.device.vo.DeviceRepairVo; import com.ruoyi.framework.web.domain.AjaxResult; import jakarta.servlet.http.HttpServletResponse; @@ -12,13 +13,13 @@ public interface IDeviceRepairService extends IService<DeviceRepair> { IPage<DeviceRepairDto> queryPage(Page page, DeviceRepairDto deviceRepairDto); IPage<DeviceRepairVo> queryPage(Page page, DeviceRepairDto deviceRepairDto); AjaxResult saveDeviceRepair(DeviceRepair deviceRepair); AjaxResult saveDeviceRepair(DeviceRepairDto deviceRepairDto); AjaxResult updateDeviceRepair(DeviceRepair deviceRepair); AjaxResult updateDeviceRepair(DeviceRepairDto deviceRepairDto); void export(HttpServletResponse response, Long[] ids); DeviceRepairDto detailById(Long id); DeviceRepairVo detailById(Long id); } src/main/java/com/ruoyi/device/service/impl/DeviceMaintenanceServiceImpl.java
@@ -4,6 +4,8 @@ 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.ruoyi.basic.enums.RecordTypeEnum; import com.ruoyi.basic.utils.FileUtil; import com.ruoyi.common.utils.bean.BeanUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.device.dto.DeviceMaintenanceDto; @@ -11,6 +13,8 @@ import com.ruoyi.device.mapper.DeviceMaintenanceMapper; import com.ruoyi.device.pojo.DeviceMaintenance; import com.ruoyi.device.service.IDeviceMaintenanceService; import com.ruoyi.device.vo.DeviceMaintenanceVo; import com.ruoyi.device.vo.DeviceRepairVo; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.measuringinstrumentledger.mapper.SparePartsMapper; import com.ruoyi.measuringinstrumentledger.pojo.SpareParts; @@ -34,6 +38,7 @@ private final DeviceMaintenanceMapper deviceMaintenanceMapper; private final SparePartsMapper sparePartsMapper; private final SparePartsRequisitionRecordService sparePartsRequisitionRecordService; private final FileUtil fileUtil; @Override public IPage<DeviceMaintenanceDto> queryPage(Page page, DeviceMaintenanceDto deviceMaintenanceDto) { @@ -42,9 +47,12 @@ } @Override public AjaxResult saveDeviceRepair(DeviceMaintenance deviceMaintenance) { @Transactional(rollbackFor = Exception.class) public AjaxResult saveDeviceRepair(DeviceMaintenanceDto deviceMaintenance) { boolean save = this.save(deviceMaintenance); if (save){ // å¤çå¾çä¸ä¼ fileUtil.saveStorageAttachmentByRecordTypeAndRecordId("file", RecordTypeEnum.DEVICE_MAINTENANCE, deviceMaintenance.getId(), deviceMaintenance.getStorageBlobDTOs()); return AjaxResult.success(); } return AjaxResult.error(); @@ -52,7 +60,7 @@ @Override @Transactional(rollbackFor = Exception.class) public AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenance deviceMaintenance) { public AjaxResult updateDeviceDeviceMaintenance(DeviceMaintenanceDto deviceMaintenance) { DeviceMaintenance oldDeviceMaintenance = this.getById(deviceMaintenance.getId()); // å¤çå¤ä»¶ä½¿ç¨æ åµ if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(deviceMaintenance.getSparePartsUseList())) { @@ -88,6 +96,8 @@ } if (this.updateById(deviceMaintenance)) { // å¤çå¾çä¸ä¼ fileUtil.saveStorageAttachmentByRecordTypeAndRecordId("file", RecordTypeEnum.DEVICE_MAINTENANCE, deviceMaintenance.getId(), deviceMaintenance.getStorageBlobDTOs()); return AjaxResult.success(); } return AjaxResult.error(); @@ -109,8 +119,9 @@ } @Override public DeviceMaintenanceDto detailById(Long id) { return deviceMaintenanceMapper.detailById(id); public DeviceMaintenanceVo detailById(Long id) { DeviceMaintenanceVo vo = deviceMaintenanceMapper.detailById(id); vo.setStorageBlobVOs(fileUtil.getStorageBlobVOsByRecordTypeAndRecordId(RecordTypeEnum.DEVICE_MAINTENANCE, id)); return vo; } } src/main/java/com/ruoyi/device/service/impl/DeviceRepairServiceImpl.java
@@ -4,6 +4,9 @@ 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 com.ruoyi.basic.enums.ApplicationTypeEnum; import com.ruoyi.basic.enums.RecordTypeEnum; import com.ruoyi.basic.utils.FileUtil; import com.ruoyi.common.utils.bean.BeanUtils; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.device.dto.DeviceDefectRecordDto; @@ -15,6 +18,7 @@ import com.ruoyi.device.service.DeviceDefectRecordService; import com.ruoyi.device.service.IDeviceLedgerService; import com.ruoyi.device.service.IDeviceRepairService; import com.ruoyi.device.vo.DeviceRepairVo; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.measuringinstrumentledger.mapper.SparePartsMapper; import com.ruoyi.measuringinstrumentledger.pojo.SpareParts; @@ -42,33 +46,40 @@ private final IDeviceLedgerService deviceLedgerService; private final SparePartsMapper sparePartsMapper; private final SparePartsRequisitionRecordService sparePartsRequisitionRecordService; private final FileUtil fileUtil; @Override public IPage<DeviceRepairDto> queryPage(Page page, DeviceRepairDto deviceRepairDto) { return deviceRepairMapper.queryPage(page, deviceRepairDto); } @Override public AjaxResult saveDeviceRepair(DeviceRepair deviceRepair) { DeviceLedger byId = deviceLedgerService.getById(deviceRepair.getDeviceLedgerId()); deviceRepair.setDeviceName(byId.getDeviceName()); deviceRepair.setDeviceModel(byId.getDeviceModel()); boolean save = this.save(deviceRepair); if (save){ return AjaxResult.success(); public IPage<DeviceRepairVo> queryPage(Page page, DeviceRepairDto deviceRepairDto) { IPage<DeviceRepairVo> pageDto = deviceRepairMapper.queryPage(page, deviceRepairDto); for (DeviceRepairVo vo : pageDto.getRecords()) { vo.setStorageBlobVOs(fileUtil.getStorageBlobVOsByRecordTypeAndRecordId(RecordTypeEnum.DEVICE_REPAIR, vo.getId())); } return AjaxResult.error(); return pageDto; } @Override @Transactional(rollbackFor = Exception.class) public AjaxResult updateDeviceRepair(DeviceRepair deviceRepair) { DeviceRepair oldDeviceRepair = this.getById(deviceRepair.getId()); public AjaxResult saveDeviceRepair(DeviceRepairDto deviceRepairDto) { DeviceLedger byId = deviceLedgerService.getById(deviceRepairDto.getDeviceLedgerId()); deviceRepairDto.setDeviceName(byId.getDeviceName()); deviceRepairDto.setDeviceModel(byId.getDeviceModel()); boolean save = this.save(deviceRepairDto); if (save) { // å¤çå¾çä¸ä¼ fileUtil.saveStorageAttachmentByRecordTypeAndRecordId("file", RecordTypeEnum.DEVICE_REPAIR, deviceRepairDto.getId(), deviceRepairDto.getStorageBlobDTOs()); return AjaxResult.success(); } return AjaxResult.error("ä¿å失败"); } @Override @Transactional(rollbackFor = Exception.class) public AjaxResult updateDeviceRepair(DeviceRepairDto deviceRepairDto) { DeviceRepair oldDeviceRepair = this.getById(deviceRepairDto.getId()); // å¤çå¤ä»¶ä½¿ç¨æ åµ if (CollectionUtils.isNotEmpty(deviceRepair.getSparePartsUseList())) { if (CollectionUtils.isNotEmpty(deviceRepairDto.getSparePartsUseList())) { List<Long> sparePartIds = new ArrayList<>(); for (DeviceRepair.SparePartUse sparePartUse : deviceRepair.getSparePartsUseList()) { for (DeviceRepairDto.SparePartUse sparePartUse : deviceRepairDto.getSparePartsUseList()) { // è·åå¤ä»¶ä¿¡æ¯ SpareParts spareParts = sparePartsMapper.selectById(sparePartUse.getId()); if (spareParts != null) { @@ -82,7 +93,7 @@ // å建å¤ä»¶é¢ç¨è®°å½ SparePartsRequisitionRecord record = new SparePartsRequisitionRecord(); record.setSourceType(0); // 0 ç»´ä¿® record.setSourceId(deviceRepair.getId()); record.setSourceId(deviceRepairDto.getId()); record.setDeviceLedgerId(oldDeviceRepair.getDeviceLedgerId()); record.setSparePartsId(sparePartUse.getId()); record.setQuantity(sparePartUse.getQuantity()); @@ -94,12 +105,12 @@ } // æ´æ°å¤ä»¶IDsåæ®µ if (!sparePartIds.isEmpty()) { deviceRepair.setSparePartsIds(StringUtils.join(sparePartIds, ",")); deviceRepairDto.setSparePartsIds(StringUtils.join(sparePartIds, ",")); } } if (this.updateById(deviceRepair)) { Long id = deviceRepair.getId(); if (this.updateById(deviceRepairDto)) { Long id = deviceRepairDto.getId(); // DeviceDefectRecordDto deviceDefectRecordDto = new DeviceDefectRecordDto(); deviceDefectRecordDto.setDeviceLedgerId(id); @@ -111,6 +122,8 @@ deviceDefectRecordService.updateByDDR(deviceDefectRecord); }); } // å¤çå¾çä¸ä¼ fileUtil.saveStorageAttachmentByRecordTypeAndRecordId("file", RecordTypeEnum.DEVICE_REPAIR, id, deviceRepairDto.getStorageBlobDTOs()); return AjaxResult.success(); } return AjaxResult.error(); @@ -151,9 +164,10 @@ } @Override public DeviceRepairDto detailById(Long id) { return deviceRepairMapper.detailById(id); public DeviceRepairVo detailById(Long id) { DeviceRepairVo vo = deviceRepairMapper.detailById(id); vo.setStorageBlobVOs(fileUtil.getStorageBlobVOsByRecordTypeAndRecordId(RecordTypeEnum.DEVICE_REPAIR, id)); return vo; } } src/main/java/com/ruoyi/device/vo/DeviceMaintenanceVo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,51 @@ package com.ruoyi.device.vo; import com.ruoyi.basic.dto.StorageBlobVO; import com.ruoyi.device.pojo.DeviceMaintenance; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.time.LocalDateTime; import java.util.List; @Data public class DeviceMaintenanceVo extends DeviceMaintenance { @Schema(description = "设å¤ä¿å »id") private Long id; @Schema(description = "设å¤å°è´¦id") private Long deviceLedgerId; @Schema(description = "设å¤åç§°") private String deviceName; @Schema(description = "è§æ ¼åå·") private String deviceModel; @Schema(description = "å®é ä¿å »äºº") private String maintenanceActuallyName; @Schema(description = "ä¿å »ç»æ 0 ç»´ä¿® 1 å®å¥½") private String maintenanceResult; @Schema(description = "ç¶æ 0 å¾ ä¿å » 1 å®ç» 2 失败") private Integer status; @Schema(description = "å建æ¶é´") private LocalDateTime createTime; @Schema(description = "æ´æ°æ¶é´") private LocalDateTime updateTime; @Schema(description = "æ´æ°äºº") private String updateUserName; @Schema(description = "ç§æ·id") private Long tenantId; @Schema(description = "å建人åç§°") private String createUserName; @Schema(description = "ä¿å »å¾çå表") private List<StorageBlobVO> storageBlobVOs; } src/main/java/com/ruoyi/device/vo/DeviceRepairVo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,20 @@ package com.ruoyi.device.vo; import com.ruoyi.basic.dto.StorageBlobVO; import com.ruoyi.device.pojo.DeviceRepair; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.util.List; @Data public class DeviceRepairVo extends DeviceRepair { @Schema(description = "æ¥ä¿®æ¶é´å符串") private String repairTimeStr; @Schema(description = "ç»´ä¿®æ¶é´å符串") private String maintenanceTimeStr; private List<StorageBlobVO> storageBlobVOs; } src/main/resources/mapper/device/DeviceMaintenanceMapper.xml
@@ -51,7 +51,7 @@ </if> </where> </select> <select id="detailById" resultType="com.ruoyi.device.dto.DeviceMaintenanceDto"> <select id="detailById" resultType="com.ruoyi.device.vo.DeviceMaintenanceVo"> select dm.id, dm.device_ledger_id, dm.maintenance_plan_time, src/main/resources/mapper/device/DeviceRepairMapper.xml
@@ -5,7 +5,7 @@ <mapper namespace="com.ruoyi.device.mapper.DeviceRepairMapper"> <select id="queryPage" resultType="com.ruoyi.device.dto.DeviceRepairDto"> <select id="queryPage" resultType="com.ruoyi.device.vo.DeviceRepairVo"> select dr.id, dr.device_ledger_id, dr.repair_time, @@ -51,7 +51,7 @@ </if> </where> </select> <select id="detailById" resultType="com.ruoyi.device.dto.DeviceRepairDto"> <select id="detailById" resultType="com.ruoyi.device.vo.DeviceRepairVo"> select dr.id, dr.device_ledger_id, dr.repair_time, src/main/resources/mapper/sales/SalesQuotationMapper.xml
@@ -9,6 +9,7 @@ FROM sales_quotation t1 LEFT JOIN approve_process t2 ON t1.quotation_no = t2.approve_reason and t2.approve_type = 6 WHERE 1=1 and t2.approve_deleted = 0 <if test="salesQuotationDto.quotationNo != null and salesQuotationDto.quotationNo != '' "> AND t1.quotation_no LIKE CONCAT('%',#{salesQuotationDto.quotationNo},'%') </if>