This commit is contained in:
2022-11-24 23:49:39 +08:00
parent 3f47e186c2
commit 5821b61e3b

View File

@@ -2138,6 +2138,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
JSONObject jsonCust = custTab.query("cust_code = '" + cust_code + "'").uniqueResult(0); JSONObject jsonCust = custTab.query("cust_code = '" + cust_code + "'").uniqueResult(0);
int j = Integer.parseInt((String) whereJson.get("j"));
//1.根据出入库主表中 收货单位 查询客户表中的模板路径 //1.根据出入库主表中 收货单位 查询客户表中的模板路径
String code_template = jsonCust.getString("shd_print_no"); String code_template = jsonCust.getString("shd_print_no");
// 2.获取输出流 // 2.获取输出流
@@ -2146,13 +2147,31 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
ExcelWriter workBook = EasyExcel.write(outputStream, null).withTemplate(code_template).build(); ExcelWriter workBook = EasyExcel.write(outputStream, null).withTemplate(code_template).build();
// 4.获取第一个sheet // 4.获取第一个sheet
// WriteSheet sheet = EasyExcel.writerSheet().build(); // WriteSheet sheet = EasyExcel.writerSheet().build();
// 5.组填充 // 5.组填充
HashMap<String, Object> oneMap = new HashMap<>();
oneMap.put("vbeln", "");
oneMap.put("consignee", jsonMst.getString("consignee"));
oneMap.put("receiver", jsonMst.getString("receiver"));
oneMap.put("receiptaddress", jsonMst.getString("receiptaddress"));
oneMap.put("receiptphone", jsonMst.getString("receiptphone"));
oneMap.put("logisticscompany", jsonMst.getString("logisticscompany"));
oneMap.put("drivername", jsonMst.getString("drivername"));
oneMap.put("carno", jsonMst.getString("carno"));
oneMap.put("driverphone", jsonMst.getString("driverphone"));
oneMap.put("contractno", jsonMst.getString("contractno"));
oneMap.put("all_box", "");
oneMap.put("all_qty", "");
oneMap.put("deliveryaddress", jsonMst.getString("deliveryaddress"));
oneMap.put("deliveryname", jsonMst.getString("deliveryname"));
oneMap.put("deliveryphone", jsonMst.getString("deliveryphone"));
// 6.多组填充
JSONArray dtlArr = WQL.getWO("ST_OUTIVT02").addParam("flag", "3").addParam("iostorinv_id", MapUtil.getStr(whereJson, "iostorinv_id")).process().getResultJSONArray(0); JSONArray dtlArr = WQL.getWO("ST_OUTIVT02").addParam("flag", "3").addParam("iostorinv_id", MapUtil.getStr(whereJson, "iostorinv_id")).process().getResultJSONArray(0);
int shd_dtl_num = jsonCust.getIntValue("shd_dtl_num"); // 送货单明细数 int shd_dtl_num = jsonCust.getIntValue("shd_dtl_num"); // 送货单明细数
ArrayList<HashMap<String,Object>> flData = new ArrayList<>();
if (shd_dtl_num > dtlArr.size()) { if (shd_dtl_num > dtlArr.size()) {
ArrayList<HashMap<String, Object>> flData = new ArrayList<>();
WriteSheet sheet = EasyExcel.writerSheet().build(); WriteSheet sheet = EasyExcel.writerSheet().build();
for (int i = 0; i < dtlArr.size(); i++) { for (int i = 0; i < dtlArr.size(); i++) {
JSONObject json = dtlArr.getJSONObject(i); JSONObject json = dtlArr.getJSONObject(i);
@@ -2166,6 +2185,7 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
mapFL.put("remark", json.getString("remark")); mapFL.put("remark", json.getString("remark"));
flData.add(mapFL); flData.add(mapFL);
} }
workBook.fill(oneMap, sheet);
workBook.fill(new FillWrapper("data", flData), sheet); workBook.fill(new FillWrapper("data", flData), sheet);
workBook.finish(); workBook.finish();
} else { } else {
@@ -2174,9 +2194,8 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
Integer integer = Integer.valueOf(String.valueOf(NumberUtil.round(ceil, 0))); Integer integer = Integer.valueOf(String.valueOf(NumberUtil.round(ceil, 0)));
for (int j = 0; j < integer; j++) {
HashMap<String, Object> mapFL = new HashMap<>(); HashMap<String, Object> mapFL = new HashMap<>();
ArrayList<HashMap<String, Object>> flData = new ArrayList<>();
for (int i = j * shd_dtl_num; i < (j + 1) * shd_dtl_num; i++) { for (int i = j * shd_dtl_num; i < (j + 1) * shd_dtl_num; i++) {
if (i == dtlArr.size()) { if (i == dtlArr.size()) {
break; break;
@@ -2191,13 +2210,13 @@ public class CheckOutBillServiceImpl implements CheckOutBillService {
flData.add(mapFL); flData.add(mapFL);
} }
WriteSheet sheet = EasyExcel.writerSheet(j+1).build();
WriteSheet sheet = EasyExcel.writerSheet(0).build();
workBook.fill(oneMap, sheet);
workBook.fill(new FillWrapper("data", flData), sheet); workBook.fill(new FillWrapper("data", flData), sheet);
}
workBook.finish(); workBook.finish();
}
}
// workBook.fill(oneMap, sheet); // workBook.fill(oneMap, sheet);
// workBook.fill(ylData, sheet); // workBook.fill(ylData, sheet);
} }