From 55cb4daf506ad8f3c637f6e3d9bc7df41e538b2e Mon Sep 17 00:00:00 2001
From: liuxm <liuxm@fescotech.com>
Date: 星期二, 21 五月 2024 09:14:38 +0800
Subject: [PATCH] 产品和工站导出;不合格原因报废原因添加排序和与产品的关联;

---
 pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/product/ProductCtrl.java |   75 ++++++++++++++++++++++++++++++++++---
 1 files changed, 68 insertions(+), 7 deletions(-)

diff --git a/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/product/ProductCtrl.java b/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/product/ProductCtrl.java
index f2e651e..28c3c7e 100644
--- a/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/product/ProductCtrl.java
+++ b/pms-parent/pms-web-platform/src/main/java/com/dy/pmsPlatform/product/ProductCtrl.java
@@ -1,5 +1,6 @@
 package com.dy.pmsPlatform.product;
 
+import com.alibaba.excel.converters.Converter;
 import com.alibaba.fastjson2.JSON;
 import com.dy.common.aop.SsoPowerAop;
 import com.dy.common.webUtil.BaseResponse;
@@ -7,12 +8,17 @@
 import com.dy.common.webUtil.QueryResultVo;
 import com.dy.pmsGlobal.aop.Log;
 import com.dy.pmsGlobal.pojoPlt.PltProduct;
+import com.dy.pmsGlobal.util.QrCodeUtil;
+import com.google.zxing.WriterException;
+import jakarta.servlet.http.HttpServletResponse;
 import jakarta.validation.Valid;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.*;
 
+import java.io.IOException;
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
 
@@ -32,7 +38,8 @@
         this.proSv = proSv;
     }
 
-
+    private static final String fileName = "浜у搧淇℃伅" ;
+    private static final String sheetName = "浜у搧淇℃伅" ;
 
     /**
      * 淇濆瓨浜у搧淇℃伅
@@ -100,12 +107,18 @@
     @GetMapping(path="delete")
     @SsoPowerAop(power = "10300001")
     @Log("鍒犻櫎浜у搧淇℃伅")
-    public BaseResponse<PltProduct> delete(String id){
+    public BaseResponse<Boolean> delete(String id){
+        int count;
         try {
-            return BaseResponseUtils.buildSuccess(proSv.delete(Long.parseLong(id)));
+            count = proSv.delete(Long.parseLong(id));
         }catch (Exception e){
             log.error("鍒犻櫎浜у搧寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage());
+        }
+        if (count <= 0) {
+            return BaseResponseUtils.buildFail("鏁版嵁搴撳瓨鍌ㄥけ璐�");
+        } else {
+            return BaseResponseUtils.buildSuccess(true);
         }
     }
 
@@ -123,7 +136,7 @@
 
             return BaseResponseUtils.buildSuccess(JSON.toJSON(pro));
         }catch (Exception e){
-            log.error("鏌ヨ浜у搧寮傚父", e);
+            log.error("鏍规嵁ID鏌ヨ浜у搧寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage());
         }
     }
@@ -135,14 +148,62 @@
      */
     @PostMapping(path="some")
     @SsoPowerAop(power = "10300000")
-    @Log("鏌ヨ浜у搧淇℃伅")
+    @Log("鍒嗛〉鏌ヨ浜у搧淇℃伅")
     public BaseResponse<QueryResultVo<List<PltProduct>>> some(@RequestBody QueryVo vo){
         try {
-            QueryResultVo<List<PltProduct>> list = proSv.selectSome(vo) ;
+            QueryResultVo<List<PltProduct>> list = proSv.selectSome(vo);
             return BaseResponseUtils.buildSuccess(list);
         }catch (Exception e){
-            log.error("鏌ヨ浜у搧寮傚父", e);
+            log.error("鍒嗛〉鏌ヨ浜у搧寮傚父", e);
             return BaseResponseUtils.buildException(e.getMessage());
         }
     }
+
+    /**
+     * 鏌ヨ鎵�鏈変骇鍝�
+     * @return
+     */
+    @GetMapping(path="all")
+    @SsoPowerAop(power = "10300000")
+    @Log("鏌ヨ鎵�鏈変骇鍝�")
+    public BaseResponse<List<PltProduct>> all(){
+        try {
+            QueryVo vo = new QueryVo();
+            return BaseResponseUtils.buildSuccess(proSv.selectAll(vo));
+        }catch (Exception e){
+            log.error("鏌ヨ鎵�鏈変骇鍝佸紓甯�", e);
+            return BaseResponseUtils.buildException(e.getMessage());
+        }
+    }
+
+    @PostMapping(path="export")
+    @SsoPowerAop(power = "10300000")
+    @Log("瀵煎嚭浜у搧淇℃伅")
+    public void export(@RequestBody QueryVo queryVo, HttpServletResponse response){
+        try{
+            List<Converter> list = new ArrayList<>() ;
+
+            List<PltProduct> porList = proSv.selectAll(queryVo);
+            // 浣跨敤骞惰娴佹彁楂樻�ц兘
+            porList.parallelStream().forEach(pro -> {
+                ExcelVo vo = new ExcelVo();
+                vo.name = pro.name;
+                vo.type = pro.type;
+                vo.code = pro.code;
+                try {
+                    vo.qrCode = QrCodeUtil.genQrCode(pro.code);
+                } catch (IOException e) {
+                    e.printStackTrace();
+                } catch (WriterException e) {
+                    e.printStackTrace();
+                }
+                list.add(vo);
+            });
+            QrCodeUtil.downloadExcel(response, fileName,sheetName,list);
+        }catch (Exception e){
+            log.error("瀵煎嚭浜у搧淇℃伅寮傚父", e);
+        }
+    }
+
+
 }

--
Gitblit v1.8.0