src/main/java/com/ruoyi/warehouse/controller/DocumentClassificationController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,49 @@ package com.ruoyi.warehouse.controller; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.controller.BaseController; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.warehouse.pojo.DocumentClassification; import com.ruoyi.warehouse.service.DocumentClassificationService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @Api(tags = "ææ¡£åç±»") @RequestMapping("/warehouse/documentClassification") public class DocumentClassificationController extends BaseController { @Autowired private DocumentClassificationService documentClassificationService; @GetMapping("/getList") @ApiOperation("ææ¡£åç±»-æ¥è¯¢") @Log(title = "ææ¡£åç±»-æ¥è¯¢", businessType = BusinessType.OTHER) public AjaxResult getList() { return AjaxResult.success(documentClassificationService.list()); } @PostMapping("/add") @ApiOperation("ææ¡£åç±»-æ·»å ") @Log(title = "ææ¡£åç±»-æ·»å ", businessType = BusinessType.INSERT) public AjaxResult add(@RequestBody DocumentClassification documentClassification) { return AjaxResult.success(documentClassificationService.save(documentClassification)); } @PostMapping("/update") @ApiOperation("ææ¡£åç±»-æ´æ°") @Log(title = "ææ¡£åç±»-æ´æ°", businessType = BusinessType.UPDATE) public AjaxResult update(@RequestBody DocumentClassification documentClassification) { return AjaxResult.success(documentClassificationService.updateById(documentClassification)); } @DeleteMapping("/delete") @ApiOperation("ææ¡£åç±»å é¤") @Log(title = "ææ¡£åç±»å é¤", businessType = BusinessType.DELETE) public AjaxResult delete(@RequestBody List<Long> ids) { if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("è¯·ä¼ å ¥è¦å é¤çID"); return AjaxResult.success(documentClassificationService.deleteByIds(ids)); } } src/main/java/com/ruoyi/warehouse/controller/DocumentationBorrowManagementController.java
@@ -1,12 +1,15 @@ package com.ruoyi.warehouse.controller; 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.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.controller.BaseController; import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.warehouse.mapper.DocumentationBorrowManagementMapper; import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement; import com.ruoyi.warehouse.pojo.Warehouse; import com.ruoyi.warehouse.service.DocumentationBorrowManagementService; @@ -26,6 +29,8 @@ public class DocumentationBorrowManagementController extends BaseController { @Autowired private DocumentationBorrowManagementService documentationBorrowManagementService; @Autowired private DocumentationBorrowManagementMapper documentationBorrowManagementMapper; @GetMapping("/listPage") @ApiOperation("ææ¡£åé 管ç-å页æ¥è¯¢") @Log(title = "ææ¡£åé 管ç-å页æ¥è¯¢", businessType = BusinessType.OTHER) @@ -37,27 +42,29 @@ @ApiOperation("ææ¡£åé 管ç-æ·»å ") @Log(title = "ææ¡£åé 管ç-æ·»å ", businessType = BusinessType.INSERT) public AjaxResult add(@RequestBody DocumentationBorrowManagement documentationBorrowManagement) { documentationBorrowManagementService.save(documentationBorrowManagement); return AjaxResult.success(); return AjaxResult.success(documentationBorrowManagementService.add(documentationBorrowManagement)); } @PostMapping("/update") @ApiOperation("ææ¡£åé 管ç-æ´æ°") @Log(title = "ææ¡£åé 管ç-æ´æ°", businessType = BusinessType.UPDATE) public AjaxResult update(@RequestBody DocumentationBorrowManagement documentationBorrowManagement) { documentationBorrowManagementService.updateById(documentationBorrowManagement); return AjaxResult.success(); // documentationBorrowManagementService.updateById(documentationBorrowManagement); return AjaxResult.success(documentationBorrowManagementService.updateById(documentationBorrowManagement)); } @PostMapping("/delete") @ApiOperation("ææ¡£åé 管ç-å é¤") @Log(title = "ææ¡£åé 管ç-å é¤", businessType = BusinessType.DELETE) public AjaxResult delete(@RequestBody List<Long> ids) { documentationBorrowManagementService.removeByIds(ids); return AjaxResult.success(); if(CollectionUtils.isEmpty(ids)) return AjaxResult.error("è¯·ä¼ å ¥è¦å é¤çID"); return AjaxResult.success(documentationBorrowManagementService.deleteByIds(ids)); } @PostMapping("/export") @ApiOperation("ææ¡£ä¿¡æ¯è¡¨-导åº") @Log(title = "ææ¡£ä¿¡æ¯è¡¨-导åº", businessType = BusinessType.EXPORT) public void export(HttpServletResponse response) { documentationBorrowManagementService.export(response); @ApiOperation("ææ¡£åé 管ç-导åº") @Log(title = "ææ¡£åé 管ç-导åº", businessType = BusinessType.EXPORT) public void export(HttpServletResponse response,DocumentationBorrowManagement documentationBorrowManagement) { String borrowStatus = documentationBorrowManagement.getBorrowStatus(); List<DocumentationBorrowManagement> documentationBorrowManagements = documentationBorrowManagementMapper.selectList(new LambdaQueryWrapper<DocumentationBorrowManagement>().eq(DocumentationBorrowManagement::getBorrowStatus, borrowStatus)); ExcelUtil<DocumentationBorrowManagement> util = new ExcelUtil<>(DocumentationBorrowManagement.class); util.exportExcel(response, documentationBorrowManagements, "ææ¡£åé -å½è¿è®°å½"); } } src/main/java/com/ruoyi/warehouse/controller/WarehouseController.java
@@ -28,10 +28,10 @@ @Autowired private WarehouseService warehouseService; @GetMapping("/listPage") @GetMapping("/list") @ApiOperation("ä»åº-æ¥è¯¢") @Log(title = "ä»åº-æ¥è¯¢", businessType = BusinessType.OTHER) public AjaxResult listPage( Warehouse warehouse) { public AjaxResult list(@RequestBody Warehouse warehouse) { return AjaxResult.success(warehouseService.listPage( warehouse)); } @PostMapping("/add") src/main/java/com/ruoyi/warehouse/mapper/DocumentClassificationMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,20 @@ package com.ruoyi.warehouse.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.warehouse.pojo.DocumentClassification; import org.apache.ibatis.annotations.Mapper; /** * @author 86151 * @description é对表ãdocument_classification(ææ¡£å类表)ãçæ°æ®åºæä½Mapper * @createDate 2025-08-15 10:44:23 * @Entity com.ruoyi.warehouse.pojo.DocumentClassification */ @Mapper public interface DocumentClassificationMapper extends BaseMapper<DocumentClassification> { } src/main/java/com/ruoyi/warehouse/mapper/DocumentationBorrowManagementMapper.java
@@ -1,8 +1,11 @@ package com.ruoyi.warehouse.mapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; /** * @author 86151 @@ -13,6 +16,7 @@ @Mapper public interface DocumentationBorrowManagementMapper extends BaseMapper<DocumentationBorrowManagement> { IPage<DocumentationBorrowManagement> listPage(Page page,@Param("documentationBorrowManagement") DocumentationBorrowManagement documentationBorrowManagement); } src/main/java/com/ruoyi/warehouse/mapper/WarehouseGoodsShelvesMapper.java
@@ -7,6 +7,9 @@ import com.ruoyi.warehouse.pojo.WarehouseGoodsShelves; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; /** * * @description é对表ãwarehouse_goods_shelves(ä»åºè´§æ¶è¡¨)ãçæ°æ®åºæä½Mapper @@ -16,6 +19,8 @@ @Mapper public interface WarehouseGoodsShelvesMapper extends BaseMapper<WarehouseGoodsShelves> { IPage<WarehouseGoodsShelves> listPage(Page page,@Param("warehouseGoodsShelves") WarehouseGoodsShelves warehouseGoodsShelves); List<WarehouseGoodsShelves> list(@Param("warehouseGoodsShelves") WarehouseGoodsShelves warehouseGoodsShelves); } src/main/java/com/ruoyi/warehouse/pojo/DocumentClassification.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,67 @@ package com.ruoyi.warehouse.pojo; import com.baomidou.mybatisplus.annotation.*; import java.io.Serializable; import java.time.LocalDateTime; import java.util.Date; import io.swagger.annotations.ApiModel; import lombok.Data; /** * ææ¡£å类表 * @TableName document_classification */ @TableName(value ="document_classification") @Data @ApiModel(value = "ææ¡£å类表") public class DocumentClassification implements Serializable { /** * */ @TableId(type = IdType.AUTO) private Long id; /** * ç±»å«åç§° */ private String category; /** * ç¶ç±»id */ private Long parentId; /** * å建æ¶é´ */ @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; /** * åå»ºç¨æ· */ @TableField(fill = FieldFill.INSERT) private Long createUser; /** * ä¿®æ¹æ¶é´ */ @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; /** * ä¿®æ¹ç¨æ· */ @TableField(fill = FieldFill.INSERT_UPDATE) private Long updateUser; /** * ç§æ·id */ @TableField(fill = FieldFill.INSERT) private Long tenantId; private static final long serialVersionUID = 1L; } src/main/java/com/ruoyi/warehouse/pojo/Documentation.java
@@ -28,11 +28,11 @@ private Long id; /** * ç±»å«åç§° * ç±»å«åç§°id */ @Excel(name = "ç±»å«åç§°") @ApiModelProperty(value = "ç±»å«åç§°") private String categoryName; @Excel(name = "ç±»å«åç§°id") @ApiModelProperty(value = "ç±»å«åç§°id") private Long documentClassificationId; /** * ææ¡£åç§° @@ -72,7 +72,8 @@ /** * ææ¡£æ¥æ */ @Excel(name = "ææ¡£æ¥æ") @Excel(name = "ææ¡£æ¥æ", dateFormat = "yyyy-MM-dd", width = 30) @ApiModelProperty(value = "ææ¡£æ¥æ") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime docDate; @@ -155,13 +156,13 @@ /** * ä¿®æ¹æ¶é´ */ @TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; /** * ä¿®æ¹ç¨æ· */ @TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE) private Long updateUser; /** src/main/java/com/ruoyi/warehouse/pojo/DocumentationBorrowManagement.java
@@ -6,7 +6,10 @@ import java.time.LocalDateTime; import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.framework.aspectj.lang.annotation.Excel; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -26,41 +29,60 @@ /** * ææ¡£id */ @Excel(name = "ææ¡£id") private Long documentationId; /** * åé 人id */ @Excel(name = "åé 人id") @ApiModelProperty(value = "åé 人id") private Long borrowerId; /** * åé ç®ç */ @Excel(name = "åé ç®ç") @ApiModelProperty(value = "åé ç®ç") private String borrowPurpose; /** * åé æ¥æ */ @ApiModelProperty(value = "åé æ¥æ") @Excel(name = "åé æ¥æ", dateFormat = "yyyy-MM-dd", width = 30) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime borrowDate; /** * åºå½è¿æ¥æ */ @ApiModelProperty(value = "åºå½è¿æ¥æ") @Excel(name = "åºå½è¿æ¥æ", dateFormat = "yyyy-MM-dd", width = 30) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime dueReturnDate; /** * å®é å½è¿æ¥æ */ @ApiModelProperty(value = "å®é å½è¿æ¥æ") @Excel(name = "å®é å½è¿æ¥æ", dateFormat = "yyyy-MM-dd", width = 30) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime returnDate; /** * åé ç¶æ */ @ApiModelProperty(value = "åé ç¶æ") @Excel(name = "åé ç¶æ") private String borrowStatus; /** * 夿³¨ */ @ApiModelProperty(value = "夿³¨") @Excel(name = "夿³¨") private String remark; /** @@ -78,13 +100,13 @@ /** * ä¿®æ¹æ¶é´ */ @TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; /** * ä¿®æ¹ç¨æ· */ @TableField(fill = FieldFill.UPDATE) @TableField(fill = FieldFill.INSERT_UPDATE) private Long updateUser; /** src/main/java/com/ruoyi/warehouse/service/DocumentClassificationService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,16 @@ package com.ruoyi.warehouse.service; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.warehouse.pojo.DocumentClassification; import java.util.List; /** * @author 86151 * @description é对表ãdocument_classification(ææ¡£å类表)ãçæ°æ®åºæä½Service * @createDate 2025-08-15 10:44:23 */ public interface DocumentClassificationService extends IService<DocumentClassification> { boolean deleteByIds(List<Long> ids); } src/main/java/com/ruoyi/warehouse/service/DocumentationBorrowManagementService.java
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import javax.servlet.http.HttpServletResponse; import java.util.List; /** * @author 86151 @@ -16,5 +17,9 @@ IPage<DocumentationBorrowManagement> listPage(Page page, DocumentationBorrowManagement documentationBorrowManagement); void export(HttpServletResponse response); boolean add(DocumentationBorrowManagement documentationBorrowManagement); boolean deleteByIds(List<Long> ids); } src/main/java/com/ruoyi/warehouse/service/WarehouseGoodsShelvesService.java
@@ -22,4 +22,7 @@ boolean updateRowcolById(WarehouseGoodsShelves warehouseGoodsShelves); boolean deleteByIds(List<Long> ids); List<WarehouseGoodsShelves> list(WarehouseGoodsShelves warehouseGoodsShelves); } src/main/java/com/ruoyi/warehouse/service/impl/DocumentClassificationServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,40 @@ package com.ruoyi.warehouse.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.warehouse.mapper.DocumentationMapper; import com.ruoyi.warehouse.pojo.DocumentClassification; import com.ruoyi.warehouse.pojo.Documentation; import com.ruoyi.warehouse.service.DocumentClassificationService; import com.ruoyi.warehouse.mapper.DocumentClassificationMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * @author 86151 * @description é对表ãdocument_classification(ææ¡£å类表)ãçæ°æ®åºæä½Serviceå®ç° * @createDate 2025-08-15 10:44:23 */ @Service public class DocumentClassificationServiceImpl extends ServiceImpl<DocumentClassificationMapper, DocumentClassification> implements DocumentClassificationService{ @Autowired private DocumentationMapper documentationMapper; @Override public boolean deleteByIds(List<Long> ids) { List<Documentation> documentations = documentationMapper.selectList(new LambdaQueryWrapper<Documentation>().in(Documentation::getDocumentClassificationId, ids)); if(!CollectionUtils.isEmpty(documentations)){ return false; } baseMapper.deleteBatchIds(ids); return true; } } src/main/java/com/ruoyi/warehouse/service/impl/DocumentationBorrowManagementServiceImpl.java
@@ -1,18 +1,24 @@ package com.ruoyi.warehouse.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 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.common.utils.poi.ExcelUtil; import com.ruoyi.procurementrecord.dto.ProcurementRecordOutPageDto; import com.ruoyi.warehouse.pojo.Documentation; import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement; import com.ruoyi.warehouse.service.DocumentationBorrowManagementService; import com.ruoyi.warehouse.mapper.DocumentationBorrowManagementMapper; import com.ruoyi.warehouse.service.DocumentationService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.stream.Collectors; /** * @author 86151 @@ -20,22 +26,91 @@ * @createDate 2025-08-14 15:55:45 */ @Service @Transactional(rollbackFor = Exception.class) public class DocumentationBorrowManagementServiceImpl extends ServiceImpl<DocumentationBorrowManagementMapper, DocumentationBorrowManagement> implements DocumentationBorrowManagementService{ @Autowired private DocumentationBorrowManagementMapper documentationBorrowManagementMapper; @Autowired private DocumentationService documentationService; @Override public IPage<DocumentationBorrowManagement> listPage(Page page, DocumentationBorrowManagement documentationBorrowManagement) { return null; IPage<DocumentationBorrowManagement> listPage = documentationBorrowManagementMapper.listPage(page, documentationBorrowManagement); return listPage; } @Override public void export(HttpServletResponse response) { // List<DocumentationBorrowManagement> list =documentationBorrowManagementMapper.list(); // ExcelUtil<DocumentationBorrowManagement> util = new ExcelUtil<>(DocumentationBorrowManagement.class); // util.exportExcel(response, list, "ææ¡£åé -å½è¿è®°å½"); public boolean add(DocumentationBorrowManagement documentationBorrowManagement) { Long documentationId = documentationBorrowManagement.getDocumentationId(); String borrowStatus = documentationBorrowManagement.getBorrowStatus(); Documentation documentation = documentationService.getById(documentationId); if (documentation==null){ System.out.println("ææ¡£ä¸åå¨"); return false; } if ("ååº".equals(documentation.getDocStatus())){ if ("å½è¿".equals(borrowStatus)){ documentation.setDocStatus("æ£å¸¸"); documentationService.updateById(documentation); documentationBorrowManagementMapper.insert(documentationBorrowManagement); return true; }else{ System.out.println("ææ¡£å·²ååºï¼ä¸è½éå¤ååº"); return false; } }else if("æ£å¸¸".equals(documentation.getDocStatus())){ if ("å½è¿".equals(borrowStatus)){ System.out.println("ææ¡£å·²å½è¿ï¼ä¸è½éå¤å½è¿"); return false; }else if("ååº".equals(borrowStatus)){ documentation.setDocStatus("ååº"); documentationService.updateById(documentation); documentationBorrowManagementMapper.insert(documentationBorrowManagement); return true; } }else{ System.out.println("ææ¡£ç¶æå¼å¸¸"); return false; } return false; } // @Override // public boolean updateDBMById(DocumentationBorrowManagement documentationBorrowManagement) { // Long id = documentationBorrowManagement.getId(); //// Long documentationId = documentationBorrowManagement.getDocumentationId(); // //æ¥è¯¢ææ¡£æ¯å¦å·²å½è¿ // DocumentationBorrowManagement dbm = documentationBorrowManagementMapper.selectById(id); //// Long documentationId = dbm.getDocumentationId(); // if ("å½è¿".equals(dbm.getBorrowStatus())){ // System.out.println("ææ¡£å·²å½è¿ï¼ä¸è½æ´æ°"); // return false; // } // //æ¥è¯¢ææ¡£ // Documentation documentation = documentationService.getById(dbm.getDocumentationId()); // String docStatus = documentation.getDocStatus(); // if ("æ£å¸¸".equals(docStatus)){ // System.out.println("ææ¡£å·²å½è¿ï¼ä¸è½æ´æ°"); // return false; // } // return false; // } @Override public boolean deleteByIds(List<Long> ids) { List<DocumentationBorrowManagement> list = documentationBorrowManagementMapper.selectList(new LambdaQueryWrapper<DocumentationBorrowManagement>().in(DocumentationBorrowManagement::getId, ids)); for (DocumentationBorrowManagement documentationBorrowManagement : list) { String borrowStatus = documentationBorrowManagement.getBorrowStatus(); if ("åé ".equals(borrowStatus)){ System.out.println("ææ¡£å·²ååºï¼ä¸è½å é¤"); return false; } } documentationBorrowManagementMapper.deleteBatchIds(ids); return true; } } src/main/java/com/ruoyi/warehouse/service/impl/WarehouseGoodsShelvesRowcolServiceImpl.java
@@ -45,15 +45,8 @@ Wrapper<Documentation> queryWrapper = new LambdaQueryWrapper<Documentation>() .in(Documentation::getWarehouseGoodsShelvesRowcolId, ids); List<Documentation> documentations = documentationMapper.selectList(queryWrapper); if (!documentations.isEmpty()) { log.error("è´§æ¶[ID:{}]ä¸åå¨ååï¼ç¦æ¢å é¤", ids); return false; } int i = warehouseGoodsShelvesRowcolMapper.deleteBatchIds(ids); if(i!=ids.size()){ log.error("å é¤å¤±è´¥"); return false; } if (!documentations.isEmpty()) return false; warehouseGoodsShelvesRowcolMapper.deleteBatchIds(ids); return true; } } src/main/java/com/ruoyi/warehouse/service/impl/WarehouseGoodsShelvesServiceImpl.java
@@ -36,6 +36,7 @@ */ @Service @Slf4j @Transactional(rollbackFor = Exception.class) public class WarehouseGoodsShelvesServiceImpl extends ServiceImpl<WarehouseGoodsShelvesMapper, WarehouseGoodsShelves> implements WarehouseGoodsShelvesService { @Autowired @@ -54,17 +55,12 @@ } @Override @Transactional(rollbackFor = Exception.class) public boolean add(WarehouseGoodsShelves warehouseGoodsShelves) { WarehouseGoodsShelves one = warehouseGoodsShelvesMapper.selectOne(new LambdaQueryWrapper<WarehouseGoodsShelves>().eq(WarehouseGoodsShelves::getId, warehouseGoodsShelves.getId())); // 1. æ£æ¥è´§æ¶åç§°æ¯å¦å·²åå¨ if (one == null) { log.error("è´§æ¶IDä¸åå¨"); int insert = warehouseGoodsShelvesMapper.insert(warehouseGoodsShelves); if (insert <= 0) { log.error("è´§æ¶ä¸»è®°å½æ·»å 失败"); return false; } if (insert <= 0) return false; } Long shelvesId = warehouseGoodsShelves.getId(); @@ -86,16 +82,10 @@ // ä½¿ç¨æ¹éæå ¥æ¹æ³æ¿ä»£å¾ªç¯åæ¡æå ¥ warehouseGoodsShelvesRowcolService.saveBatch(rowcolList); } catch (Exception e) { log.error("è´§æ¶[{}]çè¡åè®°å½æ¹éæ·»å 失败", shelvesId, e); // æåºå¼å¸¸è§¦åäºå¡åæ» throw e; } } log.info("è´§æ¶[{}]æ·»å æåï¼å±æ°:{}ï¼ææ°:{}", warehouseGoodsShelves.getGoodsShelvesName(), warehouseGoodsShelves.getStorey(), warehouseGoodsShelves.getArrange()); return true; } /** @@ -104,7 +94,6 @@ * @return æ¯å¦æ´æ°æå */ @Override @Transactional(rollbackFor = Exception.class) public boolean updateRowcolById(WarehouseGoodsShelves warehouseGoodsShelves) { Long shelvesId = warehouseGoodsShelves.getId(); @@ -120,25 +109,14 @@ Wrapper<Documentation> queryWrapper1 = new LambdaQueryWrapper<Documentation>() .in(Documentation::getWarehouseGoodsShelvesRowcolId, rowcolIds); List<Documentation> documentations = documentationMapper.selectList(queryWrapper1); if (!documentations.isEmpty()) { log.error("è´§æ¶[ID:{}]ä¸åå¨ååï¼ç¦æ¢æ´æ°", shelvesId); return false; } if (!documentations.isEmpty()) return false; // å æ´æ°è´§æ¶ä¸»ä¿¡æ¯ boolean isShelvesUpdated = updateById(warehouseGoodsShelves); if (!isShelvesUpdated) { log.warn("è´§æ¶[{}]ä¸»ä¿¡æ¯æ´æ°å¤±è´¥", shelvesId); return false; } updateById(warehouseGoodsShelves); // å 餿§çè¡åè®°å½ boolean isOldRowcolRemoved = warehouseGoodsShelvesRowcolService.removeByIds(rowcolIds); if (!isOldRowcolRemoved) { log.error("è´§æ¶[{}]çæ§è¡åè®°å½å é¤å¤±è´¥", shelvesId); return false; } warehouseGoodsShelvesRowcolService.removeByIds(rowcolIds); // æ·»å æ°çè¡åè®°å½ add(warehouseGoodsShelves); log.info("è´§æ¶[{}]çè¡åä¿¡æ¯æ´æ°æå", shelvesId); return true; } /** @@ -147,14 +125,9 @@ * @return æ¯å¦å 餿å */ @Override @Transactional(rollbackFor = Exception.class) public boolean deleteByIds(List<Long> ids) { // 1. å æ¥è¯¢ææè¦å é¤çè´§æ¶ä¿¡æ¯ List<WarehouseGoodsShelves> shelvesList = warehouseGoodsShelvesMapper.selectBatchIds(ids); if (CollectionUtils.isEmpty(shelvesList)) { log.info("æªæ¥è¯¢å°éå é¤çè´§æ¶ï¼IDå表ï¼{}", ids); return true; // æ æ°æ®å¯å ï¼è§ä¸ºæå } // 2. æ£æ¥ææè´§æ¶æ¯å¦åå¨ååï¼æåååä¸å 许å é¤ï¼ for (WarehouseGoodsShelves shelves : shelvesList) { @@ -175,20 +148,13 @@ Wrapper<Documentation> queryWrapper1 = new LambdaQueryWrapper<Documentation>() .in(Documentation::getWarehouseGoodsShelvesRowcolId, rowcolIds); List<Documentation> documentations = documentationMapper.selectList(queryWrapper1); if (!documentations.isEmpty()) { log.error("è´§æ¶[ID:{}]ä¸åå¨ååï¼ç¦æ¢å é¤", shelvesId); return false; // ä»»ä¸è´§æ¶æåååç»æ¢å é¤ } if (!documentations.isEmpty()) return false; // ä»»ä¸è´§æ¶æåååç»æ¢å é¤ } // 3. å å é¤è´§æ¶ä¸»è®°å½ boolean isShelvesDeleted = removeByIds(ids); if (!isShelvesDeleted) { log.error("è´§æ¶ä¸»è®°å½å é¤å¤±è´¥ï¼IDå表ï¼{}", ids); return false; } warehouseGoodsShelvesMapper.deleteBatchIds(ids); // 4. æ¹éå 餿æå ³èçè¡åè®°å½ // 4. æ¹éå 餿æè¡åè®°å½ List<Long> allShelvesIds = shelvesList.stream() .map(WarehouseGoodsShelves::getId) .collect(Collectors.toList()); @@ -196,17 +162,15 @@ // æå»ºæ¹éå 餿¡ä»¶ Wrapper<WarehouseGoodsShelvesRowcol> deleteWrapper = new LambdaQueryWrapper<WarehouseGoodsShelvesRowcol>() .in(WarehouseGoodsShelvesRowcol::getWarehouseGoodsShelvesId, allShelvesIds); boolean isRowcolDeleted = warehouseGoodsShelvesRowcolService.remove(deleteWrapper); if (!isRowcolDeleted) { log.warn("è´§æ¶å ³èçè¡åè®°å½å é¤å¤±è´¥ï¼è´§æ¶IDå表ï¼{}", allShelvesIds); // æ¤å¤å¯æ ¹æ®ä¸å¡éæ±å³å®æ¯å¦åæ»è´§æ¶å é¤æä½ } log.info("è´§æ¶æ¹éå 餿åï¼IDå表ï¼{}", ids); warehouseGoodsShelvesRowcolService.remove(deleteWrapper); return true; } @Override public List<WarehouseGoodsShelves> list(WarehouseGoodsShelves warehouseGoodsShelves) { return warehouseGoodsShelvesMapper.list(warehouseGoodsShelves); } } src/main/java/com/ruoyi/warehouse/service/impl/WarehouseServiceImpl.java
@@ -55,7 +55,6 @@ // return removeByIds(ids); // } @Override @Transactional(rollbackFor = Exception.class) public boolean deleteByIds(List<Long> ids) { // 1. æ£æ¥æ¯å¦æè´§æ¶ Wrapper<WarehouseGoodsShelves> queryWrapper = new LambdaQueryWrapper<WarehouseGoodsShelves>() src/main/resources/mapper/warehouse/DocumentClassificationMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.warehouse.mapper.DocumentClassificationMapper"> <resultMap id="BaseResultMap" type="com.ruoyi.warehouse.pojo.DocumentClassification"> <id property="id" column="id" jdbcType="BIGINT"/> <result property="category" column="category" jdbcType="VARCHAR"/> <result property="parentId" column="parent_id" jdbcType="BIGINT"/> <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> <result property="createUser" column="create_user" jdbcType="BIGINT"/> <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/> <result property="updateUser" column="update_user" jdbcType="BIGINT"/> <result property="tenantId" column="tenant_id" jdbcType="BIGINT"/> </resultMap> <sql id="Base_Column_List"> id,category,parent_id, create_time,create_user,update_time, update_user,tenant_id </sql> </mapper> src/main/resources/mapper/warehouse/DocumentationBorrowManagementMapper.xml
@@ -4,28 +4,50 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.warehouse.mapper.DocumentationBorrowManagementMapper"> <resultMap id="BaseResultMap" type="com.ruoyi.warehouse.pojo.DocumentationBorrowManagement"> <id property="id" column="id" jdbcType="BIGINT"/> <result property="documentationId" column="documentation_id" jdbcType="BIGINT"/> <result property="borrowerId" column="borrower_id" jdbcType="BIGINT"/> <result property="borrowPurpose" column="borrow_purpose" jdbcType="VARCHAR"/> <result property="borrowDate" column="borrow_date" jdbcType="TIMESTAMP"/> <result property="dueReturnDate" column="due_return_date" jdbcType="TIMESTAMP"/> <result property="returnDate" column="return_date" jdbcType="TIMESTAMP"/> <result property="borrowStatus" column="borrow_status" jdbcType="VARCHAR"/> <result property="remark" column="remark" jdbcType="VARCHAR"/> <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> <result property="createUser" column="create_user" jdbcType="BIGINT"/> <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/> <result property="updateUser" column="update_user" jdbcType="BIGINT"/> <result property="tenantId" column="tenant_id" jdbcType="BIGINT"/> </resultMap> <!-- <resultMap id="BaseResultMap" type="com.ruoyi.warehouse.pojo.DocumentationBorrowManagement">--> <!-- <id property="id" column="id" jdbcType="BIGINT"/>--> <!-- <result property="documentationId" column="documentation_id" jdbcType="BIGINT"/>--> <!-- <result property="borrowerId" column="borrower_id" jdbcType="BIGINT"/>--> <!-- <result property="borrowPurpose" column="borrow_purpose" jdbcType="VARCHAR"/>--> <!-- <result property="borrowDate" column="borrow_date" jdbcType="TIMESTAMP"/>--> <!-- <result property="dueReturnDate" column="due_return_date" jdbcType="TIMESTAMP"/>--> <!-- <result property="returnDate" column="return_date" jdbcType="TIMESTAMP"/>--> <!-- <result property="borrowStatus" column="borrow_status" jdbcType="VARCHAR"/>--> <!-- <result property="remark" column="remark" jdbcType="VARCHAR"/>--> <!-- <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>--> <!-- <result property="createUser" column="create_user" jdbcType="BIGINT"/>--> <!-- <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>--> <!-- <result property="updateUser" column="update_user" jdbcType="BIGINT"/>--> <!-- <result property="tenantId" column="tenant_id" jdbcType="BIGINT"/>--> <!-- </resultMap>--> <sql id="Base_Column_List"> id,documentation_id,borrower_id, borrow_purpose,borrow_date,due_return_date, return_date,borrow_status,remark, create_time,create_user,update_time, update_user,tenant_id </sql> <!-- <sql id="Base_Column_List">--> <!-- id,documentation_id,borrower_id,--> <!-- borrow_purpose,borrow_date,due_return_date,--> <!-- return_date,borrow_status,remark,--> <!-- create_time,create_user,update_time,--> <!-- update_user,tenant_id--> <!-- </sql>--> <select id="listPage" resultType="com.ruoyi.warehouse.pojo.DocumentationBorrowManagement"> select * from documentation_borrow_management where 1=1 <if test="documentationBorrowManagement.borrowStatus != null"> and borrow_status = #{documentationBorrowManagement.borrowStatus} </if> <if test="documentationBorrowManagement.documentationId != null"> and documentation_id = #{documentationBorrowManagement.documentationId} </if> <if test="documentationBorrowManagement.borrowerId != null"> and borrower_id = #{documentationBorrowManagement.borrowerId} </if> <if test="documentationBorrowManagement.borrowPurpose != null"> and borrow_purpose = #{documentationBorrowManagement.borrowPurpose} </if> <if test="documentationBorrowManagement.borrowDate != null"> and borrow_date = #{documentationBorrowManagement.borrowDate} </if> <if test="documentationBorrowManagement.dueReturnDate != null"> and due_return_date = #{documentationBorrowManagement.dueReturnDate} </if> </select> </mapper> src/main/resources/mapper/warehouse/DocumentationMapper.xml
@@ -6,7 +6,7 @@ <resultMap id="BaseResultMap" type="com.ruoyi.warehouse.pojo.Documentation"> <id property="id" column="id" jdbcType="BIGINT"/> <result property="categoryName" column="category_name" jdbcType="VARCHAR"/> <result property="documentClassificationId" column="document_classification_id"/> <result property="docName" column="doc_name" jdbcType="VARCHAR"/> <result property="docNumber" column="doc_number" jdbcType="BIGINT"/> <result property="year" column="year" jdbcType="BIGINT"/> @@ -42,17 +42,14 @@ <select id="listPage" resultType="com.ruoyi.warehouse.pojo.Documentation"> select * from documentation where 1=1 <if test="documentation.categoryName != null"> and category_name = #{documentation.categoryName} <if test="documentation.documentClassificationId != null"> and document_classification_id = #{documentation.documentClassificationId} </if> <if test="documentation.docName != null"> and doc_name = #{documentation.docName} </if> <if test="documentation.docNumber != null"> and doc_number = #{documentation.docNumber} </if> <if test="documentation.warehouse_goods_shelves_rowcol_id != null"> and warehouse_goods_shelves_rowcol_id = #{documentation.warehouseGoodsShelvesRowcolId} </if> </select> <select id="list" resultType="com.ruoyi.warehouse.pojo.Documentation"> src/main/resources/mapper/warehouse/WarehouseGoodsShelvesMapper.xml
@@ -16,4 +16,17 @@ </if> </where> </select> <select id="list" resultType="com.ruoyi.warehouse.pojo.WarehouseGoodsShelves"> select * from warehouse_goods_shelves <where> 1=1 <if test="warehouseGoodsShelves.goodsShelvesName != null and warehouseGoodsShelves.goodsShelvesName != ''"> and goods_shelves_name like concat('%',#{warehouseGoodsShelves.goodsShelvesName},'%') </if> <if test="warehouseGoodsShelves.warehouseId != null"> and warehouse_id = #{warehouseGoodsShelves.warehouseId} </if> </where> </select> </mapper>