From 4d4394311a96e15ea204e2cae03dda00750d0fdd Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期五, 11 四月 2025 17:37:39 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/src/main/java/com/doumee/api/business/WorkorderController.java |   86 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 83 insertions(+), 3 deletions(-)

diff --git a/server/src/main/java/com/doumee/api/business/WorkorderController.java b/server/src/main/java/com/doumee/api/business/WorkorderController.java
index a3c17a1..bd3dd0d 100644
--- a/server/src/main/java/com/doumee/api/business/WorkorderController.java
+++ b/server/src/main/java/com/doumee/api/business/WorkorderController.java
@@ -3,19 +3,30 @@
 import com.doumee.api.BaseController;
 import com.doumee.core.annotation.excel.ExcelExporter;
 import com.doumee.core.annotation.pr.PreventRepeat;
+import com.doumee.core.constants.Constants;
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.ApiResponse;
 import com.doumee.core.model.PageWrap;
 import com.doumee.core.model.PageData;
+import com.doumee.core.utils.DateUtil;
 import com.doumee.dao.business.model.Workorder;
+import com.doumee.dao.business.vo.WorkorderDbhDto;
+import com.doumee.dao.business.vo.WorkorderDcaChildDto;
+import com.doumee.dao.business.vo.WorkorderDcaDto;
+import com.doumee.dao.business.vo.WorkorderSheDto;
 import com.doumee.service.business.WorkorderService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.apache.shiro.authz.annotation.RequiresPermissions;    
+import org.apache.commons.lang3.StringUtils;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.util.ObjectUtils;
 import org.springframework.web.bind.annotation.*;
 import javax.servlet.http.HttpServletResponse;
-
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -73,7 +84,76 @@
     @PostMapping("/exportExcel")
     @RequiresPermissions("business:workorder:exportExcel")
     public void exportExcel (@RequestBody PageWrap<Workorder> pageWrap, HttpServletResponse response) {
-        ExcelExporter.build(Workorder.class).exportData(workorderService.findPage(pageWrap).getRecords(), "宸ュ崟淇℃伅琛�", response);
+        //0SHE浜嬩欢 1DCA浜嬩欢鎻愪氦璁板綍 2DCA宸ュ崟 3璺岀粖婊戜簨浠�
+        long index = 1;
+        if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.ZERO)){
+            List<Workorder> records = workorderService.findPage(pageWrap).getRecords();
+            List<WorkorderSheDto> list = new ArrayList<>();
+            if(records!=null){
+                for(Workorder model : records){
+                    WorkorderSheDto t = new WorkorderSheDto();
+                    t.setIndex(index++);
+                    BeanUtils.copyProperties(model,t);
+                    if(Constants.equalsInteger(model.getOutJiuyi(),Constants.ONE)){
+                        t.setJiuyiInfo("澶栭儴灏卞尰");
+                    }else{
+                        t.setJiuyiInfo("闈炲閮ㄥ氨鍖�");
+                        if(Constants.equalsInteger(model.getIsYiwushi(),Constants.ONE)){
+                            t.setJiuyiInfo(t.getJiuyiInfo() + "-鍖诲姟瀹�");
+                        }else{
+                            t.setJiuyiInfo(t.getJiuyiInfo() + "-闈炲尰鍔″");
+                            if(Constants.equalsInteger(model.getIsHurted(),Constants.ONE)){
+                                t.setJiuyiInfo(t.getJiuyiInfo() + "-鍙椾激");
+                            }else{
+                                t.setJiuyiInfo(t.getJiuyiInfo() + "-鏈彈浼�");
+                            }
+                        }
+                    }
+                    t.setMemberNames("鏈汉");
+                    t.setMemberNames(t.getMemberNames()+"-"+StringUtils.defaultString(model.getMemberNames(),""));
+                    list.add(t);
+                }
+            }
+            ExcelExporter.build(WorkorderSheDto.class).export(list, "SHE浜嬩欢宸ュ崟鎶ヨ〃_"+ DateUtil.formatDate(new Date(),"yyyyMMddHHmmss"), response);
+        }else if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.ONE)){
+            List<Workorder> records = workorderService.findPage(pageWrap).getRecords();
+            List<WorkorderDcaDto> list = new ArrayList<>();
+            if(records!=null){
+                for(Workorder model : records){
+                    WorkorderDcaDto t = new WorkorderDcaDto();
+                    t.setIndex(index++);
+                    BeanUtils.copyProperties(model,t);
+                    list.add(t);
+                }
+            }
+            ExcelExporter.build(WorkorderDcaDto.class).export(list, "DCA浜嬩欢宸ュ崟鎻愪氦璁板綍鎶ヨ〃_"+ DateUtil.formatDate(new Date(),"yyyyMMddHHmmss"), response);
+          }else if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.TWO)){
+            List<Workorder> records = workorderService.findPage(pageWrap).getRecords();
+            List<WorkorderDcaChildDto> list = new ArrayList<>();
+            if(records!=null){
+                for(Workorder model : records){
+                    WorkorderDcaChildDto t = new WorkorderDcaChildDto();
+                    t.setIndex(index++);
+                    BeanUtils.copyProperties(model,t);
+                    list.add(t);
+                }
+            }
+            ExcelExporter.build(WorkorderDcaChildDto.class).export(list, "DCA浜嬩欢宸ュ崟鎶ヨ〃_"+ DateUtil.formatDate(new Date(),"yyyyMMddHHmmss"), response);
+        }else if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.THREE)){
+            List<Workorder> records = workorderService.findPage(pageWrap).getRecords();
+            List<WorkorderDbhDto> list = new ArrayList<>();
+            if(records!=null){
+                for(Workorder model : records){
+                    WorkorderDbhDto t = new WorkorderDbhDto();
+                    t.setIndex(index++);
+                    BeanUtils.copyProperties(model,t);
+                    list.add(t);
+                }
+            }
+            ExcelExporter.build(WorkorderDbhDto.class).export(list, "璺岀粖婊戜簨浠跺伐鍗曟姤琛╛"+ DateUtil.formatDate(new Date(),"yyyyMMddHHmmss"), response);
+        }else{
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
     }
 
     @ApiOperation("鏍规嵁ID鏌ヨ")

--
Gitblit v1.9.3