From 8f4db901aa772a808c243f8a4e39522f6f09d5da Mon Sep 17 00:00:00 2001 From: yaowanxin <3588231647@qq.com> Date: 星期四, 21 八月 2025 13:10:22 +0800 Subject: [PATCH] 修改完善3 --- src/main/java/com/ruoyi/warehouse/controller/DocumentationController.java | 27 ++ src/main/java/com/ruoyi/warehouse/mapper/DocumentationMapper.java | 17 + src/main/java/com/ruoyi/warehouse/pojo/DocumentationReturnManagement.java | 130 ++++++++++++++ src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java | 58 ++++++ src/main/java/com/ruoyi/warehouse/pojo/DocumentationBorrowManagement.java | 2 src/main/java/com/ruoyi/warehouse/service/DocumentationService.java | 14 + src/main/resources/mapper/warehouse/DocumentationReturnManagementMapper.xml | 57 ++++++ src/main/java/com/ruoyi/warehouse/service/impl/DocumentationBorrowManagementServiceImpl.java | 62 +++++- src/main/resources/mapper/warehouse/WarehouseGoodsShelvesRowcolMapper.xml | 15 + src/main/java/com/ruoyi/warehouse/dto/DocumentationReturnManagementDto.java | 12 + src/main/java/com/ruoyi/warehouse/service/DocumentationBorrowManagementService.java | 8 src/main/java/com/ruoyi/warehouse/controller/DocumentationBorrowManagementController.java | 33 ++ src/main/resources/mapper/warehouse/DocumentationBorrowManagementMapper.xml | 23 -- src/main/java/com/ruoyi/warehouse/mapper/DocumentationReturnManagementMapper.java | 33 +++ src/main/java/com/ruoyi/warehouse/mapper/DocumentationBorrowManagementMapper.java | 4 15 files changed, 437 insertions(+), 58 deletions(-) diff --git a/src/main/java/com/ruoyi/warehouse/controller/DocumentationBorrowManagementController.java b/src/main/java/com/ruoyi/warehouse/controller/DocumentationBorrowManagementController.java index 0575729..d4b44ad 100644 --- a/src/main/java/com/ruoyi/warehouse/controller/DocumentationBorrowManagementController.java +++ b/src/main/java/com/ruoyi/warehouse/controller/DocumentationBorrowManagementController.java @@ -10,7 +10,9 @@ import com.ruoyi.framework.web.domain.AjaxResult; import com.ruoyi.warehouse.mapper.DocumentationBorrowManagementMapper; +import com.ruoyi.warehouse.mapper.DocumentationReturnManagementMapper; import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement; +import com.ruoyi.warehouse.pojo.DocumentationReturnManagement; import com.ruoyi.warehouse.pojo.Warehouse; import com.ruoyi.warehouse.service.DocumentationBorrowManagementService; import com.ruoyi.warehouse.service.WarehouseService; @@ -32,11 +34,25 @@ private DocumentationBorrowManagementService documentationBorrowManagementService; @Autowired private DocumentationBorrowManagementMapper documentationBorrowManagementMapper; + @Autowired + private DocumentationReturnManagementMapper documentationReturnManagementMapper; @GetMapping("/listPage") @ApiOperation("鏂囨。鍊熼槄绠$悊-鍊熼槄鍒嗛〉鏌ヨ") @Log(title = "鏂囨。鍊熼槄绠$悊-鍊熼槄鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER) public AjaxResult listPage(Page page, DocumentationBorrowManagement documentationBorrowManagement) { return AjaxResult.success(documentationBorrowManagementService.listPage(page, documentationBorrowManagement)); + } + @GetMapping("/list") + @ApiOperation("鏂囨。鍊熼槄绠$悊-鍊熼槄鏌ヨ") + @Log(title = "鏂囨。鍊熼槄绠$悊-鍊熼槄鏌ヨ", businessType = BusinessType.OTHER) + public AjaxResult list() { + return AjaxResult.success(documentationBorrowManagementService.listAll()); + } + @GetMapping("/listPageReturn") + @ApiOperation("鏂囨。鍊熼槄绠$悊-褰掕繕鍒嗛〉鏌ヨ") + @Log(title = "鏂囨。鍊熼槄绠$悊-褰掕繕鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER) + public AjaxResult listPageReturn(Page page, DocumentationReturnManagement documentationReturnManagement) { + return AjaxResult.success(documentationReturnManagementMapper.listPage(page, documentationReturnManagement)); } @PostMapping("/add") @ApiOperation("鏂囨。鍊熼槄绠$悊-鍊熼槄") @@ -47,14 +63,20 @@ @PutMapping("/revent") @ApiOperation("鏂囨。鍊熼槄绠$悊-褰掕繕") @Log(title = "鏂囨。鍊熼槄绠$悊-褰掕繕", businessType = BusinessType.UPDATE) - public AjaxResult reventdbm(@RequestBody DocumentationBorrowManagement documentationBorrowManagement) { - return AjaxResult.success(documentationBorrowManagementService.reventdbm(documentationBorrowManagement)); + public AjaxResult revent(@RequestBody DocumentationReturnManagement documentationReturnManagement) { + return AjaxResult.success(documentationBorrowManagementService.reventdbm(documentationReturnManagement)); } @PutMapping("/update") @ApiOperation("鏂囨。鍊熼槄绠$悊-鏇存柊") @Log(title = "鏂囨。鍊熼槄绠$悊-鏇存柊", businessType = BusinessType.UPDATE) public AjaxResult update(@RequestBody DocumentationBorrowManagement documentationBorrowManagement) { return AjaxResult.success(documentationBorrowManagementService.updateById(documentationBorrowManagement)); + } + @PutMapping("/reventUpdate") + @ApiOperation("鏂囨。鍊熼槄绠$悊-褰掕繕鏇存柊") + @Log(title = "鏂囨。鍊熼槄绠$悊-褰掕繕鏇存柊", businessType = BusinessType.UPDATE) + public AjaxResult reventupdate(@RequestBody DocumentationReturnManagement documentationReturnManagement) { + return AjaxResult.success(documentationReturnManagementMapper.updateById(documentationReturnManagement)); } @DeleteMapping ("/delete") @ApiOperation("鏂囨。鍊熼槄绠$悊-鍊熼槄鍒犻櫎") @@ -79,10 +101,7 @@ @PostMapping("/exportrevent") @ApiOperation("鏂囨。鍊熼槄绠$悊-褰掕繕瀵煎嚭") @Log(title = "鏂囨。鍊熼槄绠$悊-褰掕繕瀵煎嚭", businessType = BusinessType.EXPORT) - public void exportrevent(HttpServletResponse response,DocumentationBorrowManagement documentationBorrowManagement) { - documentationBorrowManagementService.exportrevent(response,documentationBorrowManagement); -// List<DocumentationBorrowManagement> documentationBorrowManagements = documentationBorrowManagementMapper.selectList(new LambdaQueryWrapper<DocumentationBorrowManagement>().eq(DocumentationBorrowManagement::getBorrowStatus, "褰掕繕")); -// ExcelUtil<DocumentationBorrowManagement> util = new ExcelUtil<>(DocumentationBorrowManagement.class); -// util.exportExcel(response, documentationBorrowManagements, "鏂囨。鍊熼槄-褰掕繕璁板綍"); + public void exportrevent(HttpServletResponse response, DocumentationReturnManagement documentationReturnManagement) { + documentationBorrowManagementService.exportrevent(response,documentationReturnManagement); } } diff --git a/src/main/java/com/ruoyi/warehouse/controller/DocumentationController.java b/src/main/java/com/ruoyi/warehouse/controller/DocumentationController.java index 2af0875..586c330 100644 --- a/src/main/java/com/ruoyi/warehouse/controller/DocumentationController.java +++ b/src/main/java/com/ruoyi/warehouse/controller/DocumentationController.java @@ -18,7 +18,9 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; +import java.util.HashMap; import java.util.List; +import java.util.Map; @RestController @RequestMapping("/documentation") @@ -66,9 +68,24 @@ public void export(HttpServletResponse response,Documentation documentation ) { documentationService.export(response,documentation); } - //闄勪欢璇︽儏 -// @GetMapping("/getDocumentation") -// public Documentation getDocumentation(Documentation documentation) { -// return documentationService.getById(id); -// } + @ApiOperation("鏂囨。淇℃伅琛�-缁熻") + @GetMapping("/overview") + public AjaxResult getOverviewStatistics() { + Map<String, Object> result = new HashMap<>(); + result.put("totalDocsCount", documentationService.getTotalDocsCount()); + result.put("categoryNumCount", documentationService.getCategoryNumCount()); + result.put("borrowedDocsCount", documentationService.getBorrowedDocsCount()); + result.put("monthlyAddedDocsCount", documentationService.getMonthlyAddedDocsCount()); + return AjaxResult.success(result); + } + @ApiOperation("鏂囨。淇℃伅琛�-鍒嗙被缁熻") + @GetMapping("/category") + public AjaxResult getCategoryDistribution() { + return AjaxResult.success(documentationService.getCategoryDistribution()); + } + @ApiOperation("鏂囨。淇℃伅琛�-鐘舵�佺粺璁�") + @GetMapping("/status") + public AjaxResult getStatusDistribution() { + return AjaxResult.success(documentationService.getStatusDistribution()); + } } diff --git a/src/main/java/com/ruoyi/warehouse/dto/DocumentationReturnManagementDto.java b/src/main/java/com/ruoyi/warehouse/dto/DocumentationReturnManagementDto.java new file mode 100644 index 0000000..a65e1e0 --- /dev/null +++ b/src/main/java/com/ruoyi/warehouse/dto/DocumentationReturnManagementDto.java @@ -0,0 +1,12 @@ +package com.ruoyi.warehouse.dto; + +import com.ruoyi.warehouse.pojo.DocumentationReturnManagement; +import lombok.Data; + +@Data +public class DocumentationReturnManagementDto extends DocumentationReturnManagement { + /** + * 鏂囨。鍚嶇О + */ + private String docName; +} diff --git a/src/main/java/com/ruoyi/warehouse/mapper/DocumentationBorrowManagementMapper.java b/src/main/java/com/ruoyi/warehouse/mapper/DocumentationBorrowManagementMapper.java index cad07e2..6af2ceb 100644 --- a/src/main/java/com/ruoyi/warehouse/mapper/DocumentationBorrowManagementMapper.java +++ b/src/main/java/com/ruoyi/warehouse/mapper/DocumentationBorrowManagementMapper.java @@ -1,5 +1,7 @@ package com.ruoyi.warehouse.mapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +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.warehouse.dto.DocumentationBorrowManagementDto; @@ -25,7 +27,7 @@ List<DocumentationBorrowManagementDto> export(@Param("documentationBorrowManagement") DocumentationBorrowManagement documentationBorrowManagement); - List<ReturnExportDto> exportrevent(DocumentationBorrowManagement documentationBorrowManagement); + List<DocumentationBorrowManagementDto> list(@Param("ew") Wrapper<DocumentationBorrowManagementDto> queryWrapper); } diff --git a/src/main/java/com/ruoyi/warehouse/mapper/DocumentationMapper.java b/src/main/java/com/ruoyi/warehouse/mapper/DocumentationMapper.java index d8f0178..33278bf 100644 --- a/src/main/java/com/ruoyi/warehouse/mapper/DocumentationMapper.java +++ b/src/main/java/com/ruoyi/warehouse/mapper/DocumentationMapper.java @@ -8,8 +8,10 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; import java.util.List; +import java.util.Map; /** * @author 86151 @@ -24,6 +26,21 @@ List<DocumentationDto> list(); List<DocumentationDto> listByDocumentClassificationId(@Param("documentClassificationId") Long documentClassificationId); List<DocumentationDto> listBywarehouseGoodsShelvesRowcolId(@Param("warehouseGoodsShelvesRowcolId") Long warehouseGoodsShelvesRowcolId); + @Select("select count(*) from documentation") + Integer countTotalDocs(); + @Select("select count(distinct document_classification_id) from documentation") + Integer countCategoryNum(); + @Select("select count(*) from documentation where doc_status = '鍊熷嚭'") + Integer countBorrowedDocs(); + @Select("select count(*) from documentation where create_time >= date_format(now(), '%Y-%m-01') and create_time < date_format(now(), '%Y-%m-%d')") + Integer countMonthlyAddedDocs(); + + @Select("select dc.category, count(*) as count from documentation doc left join document_classification dc on doc.document_classification_id = dc.id group by dc.category") + List<Map<String, Object>> countCategoryDistribution(); + + @Select("select doc_status as docStatus, count(*) as count from documentation group by doc_status") + List<Map<String, Object>> countStatusDistribution(); + } diff --git a/src/main/java/com/ruoyi/warehouse/mapper/DocumentationReturnManagementMapper.java b/src/main/java/com/ruoyi/warehouse/mapper/DocumentationReturnManagementMapper.java new file mode 100644 index 0000000..d9de592 --- /dev/null +++ b/src/main/java/com/ruoyi/warehouse/mapper/DocumentationReturnManagementMapper.java @@ -0,0 +1,33 @@ +package com.ruoyi.warehouse.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.warehouse.dto.DocumentationBorrowManagementDto; +import com.ruoyi.warehouse.dto.ReturnExportDto; +import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement; +import com.ruoyi.warehouse.pojo.DocumentationReturnManagement; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** +* @author 86151 +* @description 閽堝琛ㄣ�恉ocumentation_borrow_management(鏂囨。鍊熼槄-褰掕繕琛�)銆戠殑鏁版嵁搴撴搷浣淢apper +* @createDate 2025-08-14 15:55:45 +* @Entity com.ruoyi.warehouse.pojo.DocumentationBorrowManagement +*/ +@Mapper +public interface DocumentationReturnManagementMapper extends BaseMapper<DocumentationReturnManagement> { + + IPage<DocumentationReturnManagement> listPage(Page page, @Param("documentationReturnManagement") DocumentationReturnManagement documentationReturnManagement); +// +// List<DocumentationReturnManagementDto> export(@Param("documentationReturnManagement") DocumentationReturnManagement documentationReturnManagement); +// + List<ReturnExportDto> exportrevent(@Param("documentationReturnManagement") DocumentationReturnManagement documentationReturnManagement); +} + + + + diff --git a/src/main/java/com/ruoyi/warehouse/pojo/DocumentationBorrowManagement.java b/src/main/java/com/ruoyi/warehouse/pojo/DocumentationBorrowManagement.java index 6039b20..a6c560f 100644 --- a/src/main/java/com/ruoyi/warehouse/pojo/DocumentationBorrowManagement.java +++ b/src/main/java/com/ruoyi/warehouse/pojo/DocumentationBorrowManagement.java @@ -21,7 +21,7 @@ */ @TableName(value ="documentation_borrow_management") @Data -@ApiModel(value = "鏂囨。鍊熼槄-褰掕繕琛�") +@ApiModel(value = "鏂囨。鍊熼槄琛�") public class DocumentationBorrowManagement extends DateQueryDto implements Serializable { private static final long serialVersionUID = 1L; diff --git a/src/main/java/com/ruoyi/warehouse/pojo/DocumentationReturnManagement.java b/src/main/java/com/ruoyi/warehouse/pojo/DocumentationReturnManagement.java new file mode 100644 index 0000000..5573923 --- /dev/null +++ b/src/main/java/com/ruoyi/warehouse/pojo/DocumentationReturnManagement.java @@ -0,0 +1,130 @@ +package com.ruoyi.warehouse.pojo; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.dto.DateQueryDto; +import com.ruoyi.framework.aspectj.lang.annotation.Excel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * 鏂囨。鍊熼槄-褰掕繕琛� + * @TableName documentation_return_management + */ +@TableName(value ="documentation_return_management") +@Data +@ApiModel(value = "鏂囨。褰掕繕琛�") +public class DocumentationReturnManagement extends DateQueryDto implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 涓婚敭 + */ + @TableId(type = IdType.AUTO) + private Long id; + + /** + * 鏂囨。id + */ + @ApiModelProperty(value = "鏂囨。id") + private Long documentationId; + /** + * 鍊熼槄id + */ + private Long borrowId; + /** + * 鍊熼槄浜� + */ + @ApiModelProperty(value = "鍊熼槄浜�") + @Excel(name = "鍊熼槄浜�") + private String borrower; + /** + * 褰掕繕浜� + */ + @ApiModelProperty(value = "褰掕繕浜�") + @Excel(name = "褰掕繕浜�") + private String returner; + + /** + * 鍊熼槄鐩殑 + */ + @Excel(name = "鍊熼槄鐩殑") + @ApiModelProperty(value = "鍊熼槄鐩殑") + private String borrowPurpose; + + /** + * 鍊熼槄鏃ユ湡 + */ + + @ApiModelProperty(value = "鍊熼槄鏃ユ湡") + @Excel(name = "鍊熼槄鏃ユ湡", dateFormat = "yyyy-MM-dd", width = 30) + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate borrowDate; + + /** + * 搴斿綊杩樻棩鏈� + */ + @ApiModelProperty(value = "搴斿綊杩樻棩鏈�") + @Excel(name = "搴斿綊杩樻棩鏈�", dateFormat = "yyyy-MM-dd", width = 30) + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private LocalDate dueReturnDate; + + /** + * 瀹為檯褰掕繕鏃ユ湡 + */ + @ApiModelProperty(value = "瀹為檯褰掕繕鏃ユ湡") + @Excel(name = "瀹為檯褰掕繕鏃ユ湡", dateFormat = "yyyy-MM-dd", width = 30) + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private LocalDate returnDate; + + /** + * 鍊熼槄鐘舵�� + */ + @ApiModelProperty(value = "鍊熼槄鐘舵��") + @Excel(name = "鍊熼槄鐘舵��") + private String borrowStatus; + + /** + * 澶囨敞 + */ + @ApiModelProperty(value = "澶囨敞") + @Excel(name = "澶囨敞") + private String remark; + + /** + * 鍒涘缓鏃堕棿 + */ + @TableField(fill = FieldFill.INSERT) + private LocalDateTime createTime; + + /** + * 鍒涘缓鐢ㄦ埛 + */ + @TableField(fill = FieldFill.INSERT) + private Integer createUser; + + /** + * 淇敼鏃堕棿 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private LocalDateTime updateTime; + + /** + * 淇敼鐢ㄦ埛 + */ + @TableField(fill = FieldFill.INSERT_UPDATE) + private Integer updateUser; + + /** + * 绉熸埛id + */ + @TableField(fill = FieldFill.INSERT) + private Long tenantId; +} \ No newline at end of file diff --git a/src/main/java/com/ruoyi/warehouse/service/DocumentationBorrowManagementService.java b/src/main/java/com/ruoyi/warehouse/service/DocumentationBorrowManagementService.java index 91265e3..2a162d2 100644 --- a/src/main/java/com/ruoyi/warehouse/service/DocumentationBorrowManagementService.java +++ b/src/main/java/com/ruoyi/warehouse/service/DocumentationBorrowManagementService.java @@ -2,8 +2,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.warehouse.dto.DocumentationBorrowManagementDto; import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement; import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.warehouse.pojo.DocumentationReturnManagement; import javax.servlet.http.HttpServletResponse; import java.util.List; @@ -22,11 +24,13 @@ boolean deleteByIds(List<Long> ids); - boolean reventdbm(DocumentationBorrowManagement documentationBorrowManagement); + boolean reventdbm(DocumentationReturnManagement documentationReturnManagement); boolean reventDeleteByIds(List<Long> ids); void export(HttpServletResponse response, DocumentationBorrowManagement documentationBorrowManagement); - void exportrevent(HttpServletResponse response, DocumentationBorrowManagement documentationBorrowManagement); + void exportrevent(HttpServletResponse response, DocumentationReturnManagement documentationReturnManagement); + + List<DocumentationBorrowManagementDto> listAll(); } diff --git a/src/main/java/com/ruoyi/warehouse/service/DocumentationService.java b/src/main/java/com/ruoyi/warehouse/service/DocumentationService.java index ca6c3ec..32910ce 100644 --- a/src/main/java/com/ruoyi/warehouse/service/DocumentationService.java +++ b/src/main/java/com/ruoyi/warehouse/service/DocumentationService.java @@ -8,6 +8,7 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +import java.util.Map; /** * @author 86151 @@ -23,4 +24,17 @@ boolean deleteByIds(List<Long> ids); List<DocumentationDto> listAll(); + Integer getTotalDocsCount(); + + Integer getCategoryNumCount(); + + Integer getBorrowedDocsCount(); + + Integer getMonthlyAddedDocsCount(); + + + List<Map<String, Object>> getCategoryDistribution(); + + + List<Map<String, Object>> getStatusDistribution(); } diff --git a/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationBorrowManagementServiceImpl.java b/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationBorrowManagementServiceImpl.java index 1e8f2a6..38b8d5a 100644 --- a/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationBorrowManagementServiceImpl.java +++ b/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationBorrowManagementServiceImpl.java @@ -8,8 +8,10 @@ import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.warehouse.dto.DocumentationBorrowManagementDto; import com.ruoyi.warehouse.dto.ReturnExportDto; +import com.ruoyi.warehouse.mapper.DocumentationReturnManagementMapper; import com.ruoyi.warehouse.pojo.Documentation; import com.ruoyi.warehouse.pojo.DocumentationBorrowManagement; +import com.ruoyi.warehouse.pojo.DocumentationReturnManagement; import com.ruoyi.warehouse.service.DocumentationBorrowManagementService; import com.ruoyi.warehouse.mapper.DocumentationBorrowManagementMapper; import com.ruoyi.warehouse.service.DocumentationService; @@ -35,6 +37,8 @@ @Autowired private DocumentationBorrowManagementMapper documentationBorrowManagementMapper; @Autowired + private DocumentationReturnManagementMapper documentationReturnManagementMapper; + @Autowired private DocumentationService documentationService; @Override public IPage<DocumentationBorrowManagement> listPage(Page page, DocumentationBorrowManagement documentationBorrowManagement) { @@ -45,6 +49,7 @@ @Override public boolean add(DocumentationBorrowManagement documentationBorrowManagement) { + documentationBorrowManagement.setBorrowStatus("鍊熼槄"); documentationBorrowManagementMapper.insert(documentationBorrowManagement); Documentation documentation = documentationService.getById(documentationBorrowManagement.getDocumentationId()); documentation.setDocStatus("鍊熷嚭"); @@ -52,15 +57,29 @@ return true; } @Override - public boolean reventdbm(DocumentationBorrowManagement documentationBorrowManagement) { + public boolean reventdbm(DocumentationReturnManagement documentationReturnManagement) { // 鏇存柊鍊熼槄璁板綍鐘舵�佷负褰掕繕 - DocumentationBorrowManagement documentationBorrowManagement1 = documentationBorrowManagementMapper.selectById(documentationBorrowManagement.getId()); - documentationBorrowManagement1.setReturner(documentationBorrowManagement.getReturner()); + DocumentationBorrowManagement documentationBorrowManagement1 = documentationBorrowManagementMapper.selectById(documentationReturnManagement.getBorrowId()); + + DocumentationReturnManagement returnManagement = new DocumentationReturnManagement(); + returnManagement.setDocumentationId(documentationBorrowManagement1.getDocumentationId()); + returnManagement.setBorrower(documentationBorrowManagement1.getBorrower()); + returnManagement.setBorrowPurpose(documentationBorrowManagement1.getBorrowPurpose()); + returnManagement.setBorrowDate(documentationBorrowManagement1.getBorrowDate()); + returnManagement.setDueReturnDate(documentationBorrowManagement1.getDueReturnDate()); + returnManagement.setBorrowStatus("褰掕繕"); + returnManagement.setBorrowId(documentationReturnManagement.getBorrowId()); + returnManagement.setReturner(documentationReturnManagement.getReturner()); + returnManagement.setReturnDate(LocalDate.now()); + returnManagement.setRemark(documentationReturnManagement.getRemark()); + + documentationReturnManagementMapper.insert(returnManagement); documentationBorrowManagement1.setBorrowStatus("褰掕繕"); + documentationBorrowManagement1.setReturner(documentationReturnManagement.getReturner()); documentationBorrowManagement1.setReturnDate(LocalDate.now()); documentationBorrowManagementMapper.updateById(documentationBorrowManagement1); // 鏇存柊鏂囨。鐘舵�佷负姝e父 - Documentation documentation = documentationService.getById(documentationBorrowManagement.getDocumentationId()); + Documentation documentation = documentationService.getById(documentationBorrowManagement1.getDocumentationId()); documentation.setDocStatus("姝e父"); documentationService.updateById(documentation); return true; @@ -68,25 +87,29 @@ @Override public boolean reventDeleteByIds(List<Long> ids) { - QueryWrapper<DocumentationBorrowManagement> queryWrapper = new QueryWrapper<>(); + QueryWrapper<DocumentationReturnManagement> queryWrapper = new QueryWrapper<>(); queryWrapper.in("id", ids); - queryWrapper.eq("borrow_status", "褰掕繕"); - List<DocumentationBorrowManagement> list = documentationBorrowManagementMapper.selectList(queryWrapper); - for (DocumentationBorrowManagement documentationBorrowManagement : list) { +// queryWrapper.eq("borrow_status", "褰掕繕"); + List<DocumentationReturnManagement> list = documentationReturnManagementMapper.selectList(queryWrapper); + + for (DocumentationReturnManagement documentationReturnManagement : list) { + try { + documentationReturnManagementMapper.deleteById(documentationReturnManagement); + DocumentationBorrowManagement documentationBorrowManagement = documentationBorrowManagementMapper.selectById(documentationReturnManagement.getBorrowId()); documentationBorrowManagement.setBorrowStatus("鍊熼槄"); + documentationBorrowManagement.setReturner(null); documentationBorrowManagement.setReturnDate(null); documentationBorrowManagementMapper.updateById(documentationBorrowManagement); - Documentation documentation = documentationService.getById(documentationBorrowManagement.getDocumentationId()); - if (documentation != null) { - documentation.setDocStatus("鍊熷嚭"); - documentationService.updateById(documentation); - } + Documentation documentation = documentationService.getById(documentationReturnManagement.getDocumentationId()); + documentation.setDocStatus("鍊熷嚭"); + documentationService.updateById(documentation); } catch (Exception e) { - throw new RuntimeException("鏇存柊鍊熼槄璁板綍鍜屾枃妗g姸鎬佹椂鍑洪敊", e); + throw new RuntimeException("鍒犻櫎褰掕繕璁板綍鍜屾枃妗g姸鎬佹椂鍑洪敊", e); } } +// documentationReturnManagementMapper.deleteBatchIds(ids); return true; } @@ -98,10 +121,15 @@ } @Override - public void exportrevent(HttpServletResponse response, DocumentationBorrowManagement documentationBorrowManagement) { - List<ReturnExportDto> documentationBorrowManagements = documentationBorrowManagementMapper.exportrevent(documentationBorrowManagement); + public void exportrevent(HttpServletResponse response, DocumentationReturnManagement documentationReturnManagement) { + List<ReturnExportDto> documentationReturnManagements = documentationReturnManagementMapper.exportrevent(documentationReturnManagement); ExcelUtil<ReturnExportDto> util = new ExcelUtil<>(ReturnExportDto.class); - util.exportExcel(response, documentationBorrowManagements, "鏂囨。鍊熼槄-褰掕繕璁板綍"); + util.exportExcel(response, documentationReturnManagements, "鏂囨。鍊熼槄-褰掕繕璁板綍"); + } + + @Override + public List<DocumentationBorrowManagementDto> listAll() { + return documentationBorrowManagementMapper.list(new LambdaQueryWrapper<DocumentationBorrowManagementDto>().eq(DocumentationBorrowManagementDto::getBorrowStatus, "鍊熼槄")); } @Override diff --git a/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java b/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java index 210401e..5a7cf30 100644 --- a/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java +++ b/src/main/java/com/ruoyi/warehouse/service/impl/DocumentationServiceImpl.java @@ -15,6 +15,8 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; /** * @author 86151 @@ -50,10 +52,62 @@ } return true; } - + /** + * 鍒楄〃鎵�鏈夋枃妗� + * @return + */ @Override public List<DocumentationDto> listAll() { - return documentationMapper.list(); + List<DocumentationDto> list = documentationMapper.list().stream().filter(documentationDto -> "姝e父".equals(documentationDto.getDocStatus())).collect(Collectors.toList()); + return list; + } + /** + * 鑾峰彇鏂囨。鎬绘暟 + * @return + */ + @Override + public Integer getTotalDocsCount() { + return documentationMapper.countTotalDocs(); + } + /** + * 鑾峰彇鏂囨。鍒嗙被鎬绘暟 + * @return + */ + @Override + public Integer getCategoryNumCount() { + return documentationMapper.countCategoryNum(); + } + /** + * 鑾峰彇宸插�熷嚭鏂囨。鎬绘暟 + * @return + */ + @Override + public Integer getBorrowedDocsCount() { + return documentationMapper.countBorrowedDocs(); + } + /** + * 鑾峰彇姣忔湀鏂板鏂囨。鎬绘暟 + * @return + */ + @Override + public Integer getMonthlyAddedDocsCount() { + return documentationMapper.countMonthlyAddedDocs(); + } + /** + * 鑾峰彇鏂囨。鍒嗙被鍒嗗竷 + * @return + */ + @Override + public List<Map<String, Object>> getCategoryDistribution() { + return documentationMapper.countCategoryDistribution(); + } + /** + * 鑾峰彇鏂囨。鐘舵�佸垎甯� + * @return + */ + @Override + public List<Map<String, Object>> getStatusDistribution() { + return documentationMapper.countStatusDistribution(); } } diff --git a/src/main/resources/mapper/warehouse/DocumentationBorrowManagementMapper.xml b/src/main/resources/mapper/warehouse/DocumentationBorrowManagementMapper.xml index d29d24a..18b2082 100644 --- a/src/main/resources/mapper/warehouse/DocumentationBorrowManagementMapper.xml +++ b/src/main/resources/mapper/warehouse/DocumentationBorrowManagementMapper.xml @@ -76,28 +76,13 @@ and borrow_date <= DATE_FORMAT(#{documentationBorrowManagement.entryDateEnd},'%Y-%m-%d') </if> </select> - <select id="exportrevent" resultType="com.ruoyi.warehouse.dto.ReturnExportDto"> + <select id="list" resultType="com.ruoyi.warehouse.dto.DocumentationBorrowManagementDto"> select dbm.*,doc.doc_name from documentation_borrow_management dbm LEFT JOIN documentation doc on doc.id = dbm.documentation_id - where dbm.returner IS NOT NULL - <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.borrower != null"> - and borrower like concat('%',#{documentationBorrowManagement.borrower},'%') - </if> - <if test="documentationBorrowManagement.returner != null"> - and returner like concat('%',#{documentationBorrowManagement.returner},'%') - </if> - <if test="documentationBorrowManagement.entryDateStart != null and documentationBorrowManagement.entryDateStart != ''"> - and borrow_date >= DATE_FORMAT(#{documentationBorrowManagement.entryDateStart},'%Y-%m-%d') - </if> - <if test="documentationBorrowManagement.entryDateEnd != null and documentationBorrowManagement.entryDateEnd != ''"> - and borrow_date <= DATE_FORMAT(#{documentationBorrowManagement.entryDateEnd},'%Y-%m-%d') + <if test="ew != null"> + ${ew.customSqlSegment} </if> </select> + </mapper> diff --git a/src/main/resources/mapper/warehouse/DocumentationReturnManagementMapper.xml b/src/main/resources/mapper/warehouse/DocumentationReturnManagementMapper.xml new file mode 100644 index 0000000..dabc4f0 --- /dev/null +++ b/src/main/resources/mapper/warehouse/DocumentationReturnManagementMapper.xml @@ -0,0 +1,57 @@ +<?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.DocumentationReturnManagementMapper"> + + + <select id="listPage" resultType="com.ruoyi.warehouse.dto.DocumentationReturnManagementDto"> + select dbm.*,doc.doc_name + from documentation_return_management dbm + LEFT JOIN documentation doc on doc.id = dbm.documentation_id + where 1=1 + <if test="documentationReturnManagement.borrowStatus != null"> + and borrow_status = #{documentationReturnManagement.borrowStatus} + </if> + <if test="documentationReturnManagement.documentationId != null"> + and documentation_id = #{documentationReturnManagement.documentationId} + </if> + <if test="documentationReturnManagement.borrower != null"> + and borrower like concat('%',#{documentationReturnManagement.borrower},'%') + </if> + <if test="documentationReturnManagement.returner != null"> + and returner like concat('%',#{documentationReturnManagement.returner},'%') + </if> + <if test="documentationReturnManagement.entryDateStart != null and documentationReturnManagement.entryDateStart != ''"> + and return_date >= DATE_FORMAT(#{documentationReturnManagement.entryDateStart},'%Y-%m-%d') + </if> + <if test="documentationReturnManagement.entryDateEnd != null and documentationReturnManagement.entryDateEnd != ''"> + and return_date <= DATE_FORMAT(#{documentationReturnManagement.entryDateEnd},'%Y-%m-%d') + </if> + </select> + + <select id="exportrevent" resultType="com.ruoyi.warehouse.dto.ReturnExportDto"> + select dbm.*,doc.doc_name + from documentation_return_management dbm + LEFT JOIN documentation doc on doc.id = dbm.documentation_id + where dbm.returner IS NOT NULL + <if test="documentationReturnManagement.returnStatus != null"> + and return_status = #{documentationReturnManagement.returnStatus} + </if> + <if test="documentationReturnManagement.documentationId != null"> + and documentation_id = #{documentationReturnManagement.documentationId} + </if> + <if test="documentationReturnManagement.borrower != null"> + and borrower like concat('%',#{documentationReturnManagement.borrower},'%') + </if> + <if test="documentationReturnManagement.returner != null"> + and returner like concat('%',#{documentationReturnManagement.returner},'%') + </if> + <if test="documentationReturnManagement.entryDateStart != null and documentationReturnManagement.entryDateStart != ''"> + and return_date >= DATE_FORMAT(#{documentationReturnManagement.entryDateStart},'%Y-%m-%d') + </if> + <if test="documentationReturnManagement.entryDateEnd != null and documentationReturnManagement.entryDateEnd != ''"> + and return_date <= DATE_FORMAT(#{documentationReturnManagement.entryDateEnd},'%Y-%m-%d') + </if> + </select> +</mapper> diff --git a/src/main/resources/mapper/warehouse/WarehouseGoodsShelvesRowcolMapper.xml b/src/main/resources/mapper/warehouse/WarehouseGoodsShelvesRowcolMapper.xml index aa2a16a..87dfa32 100644 --- a/src/main/resources/mapper/warehouse/WarehouseGoodsShelvesRowcolMapper.xml +++ b/src/main/resources/mapper/warehouse/WarehouseGoodsShelvesRowcolMapper.xml @@ -4,16 +4,23 @@ "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ruoyi.warehouse.mapper.WarehouseGoodsShelvesRowcolMapper"> <select id="findList" resultType="com.ruoyi.warehouse.dto.WarehouseGoodsShelvesRowcolDto"> +-- SELECT +-- wgsr.*, +-- w.warehouse_name, +-- wgs.name, +-- dc.category +-- FROM warehouse_goods_shelves_rowcol wgsr +-- LEFT JOIN documentation doc ON doc.warehouse_goods_shelves_rowcol_id = wgsr.id +-- LEFT JOIN warehouse_goods_shelves wgs ON wgs.id = wgsr.warehouse_goods_shelves_id +-- LEFT JOIN warehouse w ON w.id = wgs.warehouse_id +-- LEFT JOIN document_classification dc ON doc.document_classification_id = dc.id SELECT wgsr.*, w.warehouse_name, - wgs.name, - dc.category + wgs.name FROM warehouse_goods_shelves_rowcol wgsr - LEFT JOIN documentation doc ON doc.warehouse_goods_shelves_rowcol_id = wgsr.id LEFT JOIN warehouse_goods_shelves wgs ON wgs.id = wgsr.warehouse_goods_shelves_id LEFT JOIN warehouse w ON w.id = wgs.warehouse_id - LEFT JOIN document_classification dc ON doc.document_classification_id = dc.id <where> 1=1 <if test="warehouseGoodsShelvesRowcol.row != null"> -- Gitblit v1.9.3