From 439dd3583f2ea745aa5e70ce26f3489d75c90912 Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期四, 25 一月 2024 15:07:28 +0800
Subject: [PATCH] pla增加库位导入功能 货主档案增加导入导出功能 pla表头固定

---
 src/main/java/com/zy/asrs/controller/LocOwnerController.java |   40 ++++++++++++++++++++++++++++++++++++++++
 1 files changed, 40 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/LocOwnerController.java b/src/main/java/com/zy/asrs/controller/LocOwnerController.java
index f9e9513..70390d1 100644
--- a/src/main/java/com/zy/asrs/controller/LocOwnerController.java
+++ b/src/main/java/com/zy/asrs/controller/LocOwnerController.java
@@ -1,5 +1,7 @@
 package com.zy.asrs.controller;
 
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
@@ -9,12 +11,20 @@
 import com.core.common.Cools;
 import com.core.common.DateUtils;
 import com.core.common.R;
+import com.core.exception.CoolException;
 import com.zy.asrs.entity.LocOwner;
 import com.zy.asrs.service.LocOwnerService;
+import com.zy.asrs.utils.LocOwnerExcelListener;
+import com.zy.common.entity.LocOwnerExcel;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
@@ -139,4 +149,34 @@
         return R.ok();
     }
 
+    /**
+     * excel瀵煎叆妯℃澘涓嬭浇
+     */
+    @RequestMapping(value = "/locOwner/excel/import/mould")
+    public void plaExcelImportMould(HttpServletResponse response) throws IOException {
+        List<LocOwnerExcel> excels = new ArrayList<>();
+        response.setContentType("application/vnd.ms-excel");
+        response.setCharacterEncoding("utf-8");
+        String fileName = URLEncoder.encode("璐т富妗f瀵煎叆妯℃澘", "UTF-8");
+        response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
+        EasyExcel.write(response.getOutputStream(), LocOwnerExcel.class)
+                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
+                .sheet("sheet1")
+                .doWrite(excels);
+    }
+
+    // excel瀵煎叆
+    @PostMapping(value = "/locOwner/excel/import/auth")
+    @ManagerAuth(memo = "璐т富妗f鏁版嵁瀵煎叆")
+    @Transactional
+    public R matExcelImport(MultipartFile file) throws IOException {
+        LocOwnerExcelListener listener = new LocOwnerExcelListener(getUserId());
+        try {
+            EasyExcel.read(file.getInputStream(), LocOwnerExcel.class, listener).sheet().doRead();
+        }catch (Exception e){
+            throw new CoolException("瀵煎叆鐨勬暟鎹牸寮忛敊璇紝鍘熷洜锛�" + e.getMessage());
+        }
+        return R.ok("鎴愬姛鍚屾"+listener.getTotal()+"鏉la鐗╂枡鏁版嵁");
+    }
+
 }

--
Gitblit v1.9.1