From dc23a86c2900035cb42b48a93231385a98ead762 Mon Sep 17 00:00:00 2001 From: FCL Date: Wed, 24 Dec 2025 15:23:16 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E6=8A=A5=E5=91=8A=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=BB=84=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReportDocumentDataServiceImpl.java | 70 +++++++++++++++++-- 1 file changed, 65 insertions(+), 5 deletions(-) diff --git a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/reportdoc/service/ReportDocumentDataServiceImpl.java b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/reportdoc/service/ReportDocumentDataServiceImpl.java index d8d785e..b1a9a13 100644 --- a/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/reportdoc/service/ReportDocumentDataServiceImpl.java +++ b/zt-module-qms/zt-module-qms-server/src/main/java/com/zt/plat/module/qms/business/reportdoc/service/ReportDocumentDataServiceImpl.java @@ -129,10 +129,9 @@ public class ReportDocumentDataServiceImpl implements ReportDocumentDataService if(!"1".equals(verticalFlag)){ //处理空数据,填充/ rowList = assembleEmpty(configJson, rowList); - //处理数据分页 if("1".equals(pageFlag)){ - JSONArray pageRowList = assemblePageRowList(rowList, configJson); + JSONArray pageRowList = assemblePageRowList(rowList, configJson, mainData); return CommonResult.success(pageRowList); } } @@ -147,14 +146,40 @@ public class ReportDocumentDataServiceImpl implements ReportDocumentDataService t.put(colPrefix + "01", " "); rowList.add(t.clone()); } - return CommonResult.success(rowList); + /* + * 修改数据结构 + [ + { + "headerData": {}, + "tableList": [{},] + }, + ] + * */ + JSONArray result = new JSONArray(); + JSONObject resultData = new JSONObject(); + JSONObject headerData = new JSONObject(); + JSONObject firstRow = rowList.getJSONObject(0); + if(rowTypeTitle.equals(firstRow.getString(rowTypeKey))){ + headerData = firstRow.clone(); + rowList.remove(0); + } + resultData.put("headerData", headerData); + resultData.put("tableList", rowList); + String formData = mainData.getFormData(); + String signatureData = mainData.getDocumentSignature(); + if(!ObjectUtils.isEmpty(formData)) + resultData.put("formData", JSONObject.parseObject(formData)); + if(!ObjectUtils.isEmpty(signatureData)) + resultData.put("signatureData", JSONObject.parseObject(signatureData)); + result.add(resultData); + return CommonResult.success(result); } /* * 处理分页 * * */ - private JSONArray assemblePageRowList(JSONArray rowList, JSONObject configJson){ + private JSONArray assemblePageRowList(JSONArray rowList, JSONObject configJson, ReportDocumentMainDO mainData){ JSONArray pageRowList = new JSONArray(); Integer maxRowCount = 20; String maxRowCountStr = configJson.getString("maxRowCount"); //最大行数 @@ -209,7 +234,42 @@ public class ReportDocumentDataServiceImpl implements ReportDocumentDataService t.put(colPrefix + "01", emptyText); pageRow.add(t.clone()); } - return pageRowList; + + /* + * 修改数据结构 + [ + { + "headerData": {}, + "tableList": [{},] + }, + ] + * */ + JSONArray result = new JSONArray(); + String formData = mainData.getFormData(); + String signatureData = mainData.getDocumentSignature(); + JSONObject formDataJson = new JSONObject(); + JSONObject signatureDataJson = new JSONObject(); + if(!ObjectUtils.isEmpty(formData)) + formDataJson = JSONObject.parseObject(formData); + if(!ObjectUtils.isEmpty(signatureData)) + signatureDataJson = JSONObject.parseObject(signatureData); + for(int i=0;i