From cf99945deda3cba4b0e634abb100847f5cc2529b Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 07 五月 2026 11:36:46 +0800
Subject: [PATCH] 优化共享客户以及列表查询

---
 src/main/java/com/ruoyi/lavorissue/controller/LavorIssueController.java |   56 +++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 41 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/ruoyi/lavorissue/controller/LavorIssueController.java b/src/main/java/com/ruoyi/lavorissue/controller/LavorIssueController.java
index 0c86dc8..9b4779e 100644
--- a/src/main/java/com/ruoyi/lavorissue/controller/LavorIssueController.java
+++ b/src/main/java/com/ruoyi/lavorissue/controller/LavorIssueController.java
@@ -18,46 +18,56 @@
 import com.ruoyi.lavorissue.service.LavorIssueService;
 import com.ruoyi.project.system.domain.SysDept;
 import com.ruoyi.project.system.mapper.SysDeptMapper;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.AllArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
 import org.springframework.web.bind.annotation.*;
 
-import javax.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpServletResponse;
+import java.io.UnsupportedEncodingException;
+import java.text.SimpleDateFormat;
 import java.time.LocalDate;
 import java.time.format.DateTimeFormatter;
+import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  * @author :yys
  * @date : 2025/8/13 11:19
  */
 @RestController
-@Api(tags = "鍔充繚鍙戞斁")
+@Tag(name = "鍔充繚鍙戞斁")
 @RequestMapping("/lavorIssue")
+@AllArgsConstructor
 public class LavorIssueController extends BaseController {
 
-    @Autowired
     private LavorIssueService laborIssueService;
-
-    @Autowired
     private LavorIssueMapper lavorIssueMapper;
-
-    @Autowired
     private SysDeptMapper sysDeptMapper;
 
     @GetMapping("/listPage")
     @Log(title = "鍔充繚鍙戞斁-鍒嗛〉鏌ヨ", businessType = BusinessType.OTHER)
-    @ApiOperation("鍔充繚鍙戞斁-鍒嗛〉鏌ヨ")
+    @Operation(summary = "鍔充繚鍙戞斁-鍒嗛〉鏌ヨ")
     public AjaxResult listPage(Page page, LaborIssue laborIssue){
         IPage<LaborIssue> listPage = laborIssueService.listPage(page, laborIssue);
         return AjaxResult.success(listPage);
     }
 
+    @GetMapping("/statisticsList")
+    @Log(title = "鍔充繚鍙戞斁-缁熻鏌ヨ", businessType = BusinessType.OTHER)
+    @Operation(summary = "鍔充繚鍙戞斁-缁熻鏌ヨ")
+    public AjaxResult statisticsList(LaborIssue laborIssue){
+        List<Map<String, Object>> listPage = laborIssueService.statisticsList(laborIssue);
+        return AjaxResult.success(listPage);
+    }
+
     @PostMapping("/add")
     @Log(title = "鍔充繚鍙戞斁-娣诲姞", businessType = BusinessType.INSERT)
-    @ApiOperation("鍔充繚鍙戞斁-娣诲姞")
+    @Operation(summary = "鍔充繚鍙戞斁-娣诲姞")
     @Transactional(rollbackFor = Exception.class)
     public AjaxResult add(@RequestBody LaborIssue laborIssue){
         String today = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"));
@@ -67,13 +77,19 @@
                 .lt(LaborIssue::getCreateTime, dateTime.getEndDate()));
         String formattedCount = String.format("%03d", approveId + 1);
         laborIssue.setOrderNo(today + formattedCount);
+        List<LaborIssue> laborIssues = lavorIssueMapper.selectList(new LambdaQueryWrapper<LaborIssue>()
+                .like(LaborIssue::getOrderNo, today));
+        if(!CollectionUtils.isEmpty(laborIssues)){
+            long l = Long.parseLong(laborIssues.get(laborIssues.size() - 1).getOrderNo());
+            laborIssue.setOrderNo(String.format("%03d", l + 1));
+        }
         boolean save = laborIssueService.save(laborIssue);
         return save ? AjaxResult.success() : AjaxResult.error();
     }
 
     @PostMapping("/update")
     @Log(title = "鍔充繚鍙戞斁-淇敼", businessType = BusinessType.UPDATE)
-    @ApiOperation("鍔充繚鍙戞斁-淇敼")
+    @Operation(summary = "鍔充繚鍙戞斁-淇敼")
     @Transactional(rollbackFor = Exception.class)
     public AjaxResult update(@RequestBody LaborIssue laborIssue){
         boolean update = laborIssueService.updateById(laborIssue);
@@ -82,7 +98,7 @@
 
     @DeleteMapping("/delete")
     @Log(title = "鍔充繚鍙戞斁-鍒犻櫎", businessType = BusinessType.DELETE)
-    @ApiOperation("鍔充繚鍙戞斁-鍒犻櫎")
+    @Operation(summary = "鍔充繚鍙戞斁-鍒犻櫎")
     @Transactional(rollbackFor = Exception.class)
     public AjaxResult delete(@RequestBody List<Long> ids){
         boolean delete = laborIssueService.removeBatchByIds(ids);
@@ -90,7 +106,7 @@
     }
 
     @GetMapping("/statistics")
-    @ApiOperation("鍔充繚鍙戞斁-缁熻")
+    @Operation(summary = "鍔充繚鍙戞斁-缁熻")
     public AjaxResult statistics(StatisticsLaborIssue req) throws Exception {
         StatisticsLaborIssue statisticsLaborIssue = laborIssueService.statistics(req);
         return AjaxResult.success(statisticsLaborIssue);
@@ -103,7 +119,7 @@
      */
     @Log(title = "鍔充繚鍙戞斁-瀵煎嚭", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
-    @ApiOperation("鍔充繚鍙戞斁-瀵煎嚭")
+    @Operation(summary = "鍔充繚鍙戞斁-瀵煎嚭")
     public void export(HttpServletResponse response) {
         Long tenantId = SecurityUtils.getLoginUser().getTenantId();
         ExcelUtil<LaborIssue> util = new ExcelUtil<LaborIssue>(LaborIssue.class);
@@ -118,4 +134,14 @@
         util.exportExcel(response, list , "鍔充繚鍙拌处");
     }
 
+    /**
+     * 鍔充繚鍙戞斁-瀵煎嚭
+     */
+    @Log(title = "鍔充繚鍙戞斁-瀵煎嚭", businessType = BusinessType.EXPORT)
+    @PostMapping("/exportCopy")
+    @Operation(summary = "鍔充繚鍙戞斁-瀵煎嚭")
+    public void exportCopy(HttpServletResponse response,LaborIssue laborIssue) throws UnsupportedEncodingException {
+        laborIssueService.exportCopy(response,laborIssue);
+    }
+
 }

--
Gitblit v1.9.3