Merge branch 'test' of https://git.will-way.cn/zgty/zt-qms into test

This commit is contained in:
2025-12-24 18:03:32 +08:00

View File

@@ -129,10 +129,9 @@ public class ReportDocumentDataServiceImpl implements ReportDocumentDataService
if(!"1".equals(verticalFlag)){ if(!"1".equals(verticalFlag)){
//处理空数据,填充/ //处理空数据,填充/
rowList = assembleEmpty(configJson, rowList); rowList = assembleEmpty(configJson, rowList);
//处理数据分页 //处理数据分页
if("1".equals(pageFlag)){ if("1".equals(pageFlag)){
JSONArray pageRowList = assemblePageRowList(rowList, configJson); JSONArray pageRowList = assemblePageRowList(rowList, configJson, mainData);
return CommonResult.success(pageRowList); return CommonResult.success(pageRowList);
} }
} }
@@ -147,14 +146,40 @@ public class ReportDocumentDataServiceImpl implements ReportDocumentDataService
t.put(colPrefix + "01", " "); t.put(colPrefix + "01", " ");
rowList.add(t.clone()); 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(); JSONArray pageRowList = new JSONArray();
Integer maxRowCount = 20; Integer maxRowCount = 20;
String maxRowCountStr = configJson.getString("maxRowCount"); //最大行数 String maxRowCountStr = configJson.getString("maxRowCount"); //最大行数
@@ -209,7 +234,42 @@ public class ReportDocumentDataServiceImpl implements ReportDocumentDataService
t.put(colPrefix + "01", emptyText); t.put(colPrefix + "01", emptyText);
pageRow.add(t.clone()); 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<pageRowList.size();i++){
JSONArray rows = pageRowList.getJSONArray(i);
JSONObject resultData = new JSONObject();
JSONObject headerData = new JSONObject();
JSONObject firstRow = rows.getJSONObject(0);
if(rowTypeTitle.equals(firstRow.getString(rowTypeKey))){
headerData = firstRow.clone();
rows.remove(0);
}
resultData.put("headerData", headerData);
resultData.put("tableList", rows);
resultData.put("formData", formDataJson);
resultData.put("signatureData", signatureDataJson);
result.add(resultData);
}
return result;
} }
private JSONArray assembleEmpty(JSONObject configJson, JSONArray rowList){ private JSONArray assembleEmpty(JSONObject configJson, JSONArray rowList){