|
|
|
@ -475,6 +475,8 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
hsCodeData.setHsCode(hsCode); |
|
|
|
hsCodeData.setCreateBy(data.getUsername()); |
|
|
|
hsCodeData.setUnit(partData.getUmid()); |
|
|
|
// 根据BU赋值不同的codeNo |
|
|
|
hsCodeData.setCodeNo("02-Hardtag".equals(data.getBuNo())?"HT001":"04-MHM".equals(data.getBuNo())?"MHM001":""); |
|
|
|
coDelMapper.insertHsCodeData(hsCodeData); |
|
|
|
} |
|
|
|
} |
|
|
|
@ -842,7 +844,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
public void downloadDeclarationElements(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
|
try { |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource("templates/TX/declaration-elements-template.xlsx").getInputStream()); |
|
|
|
extractedElements(data, template); |
|
|
|
extractedElements(data, new TxExcelTemplateAdapter(template)); |
|
|
|
try (XSSFWorkbook workbook = template.render(0)) { |
|
|
|
workbook.write(response.getOutputStream()); |
|
|
|
} |
|
|
|
@ -862,7 +864,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
public void downloadDeclaration(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
|
try { |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource("templates/TX/declaration-template.xlsx").getInputStream()); |
|
|
|
extractedDeclaration(data, template); |
|
|
|
extractedDeclaration(data, new TxExcelTemplateAdapter(template)); |
|
|
|
try (XSSFWorkbook workbook = template.render(0)) { |
|
|
|
workbook.write(response.getOutputStream()); |
|
|
|
} |
|
|
|
@ -883,6 +885,159 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
return inString; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 统一封装 TX/YB 模版的通用能力,避免业务方法拆成两套实现。 |
|
|
|
*/ |
|
|
|
private interface ExcelTemplateAdapter { |
|
|
|
void clearAll(); |
|
|
|
|
|
|
|
void setMoveSeal(boolean moveSeal); |
|
|
|
|
|
|
|
void setDelRight(boolean delRight); |
|
|
|
|
|
|
|
void setMoveShape(boolean moveShape); |
|
|
|
|
|
|
|
void setCellStyle(boolean cellStyle); |
|
|
|
|
|
|
|
void setRangeStyle(boolean rangeStyle); |
|
|
|
|
|
|
|
void setPriceRight(boolean priceRight); |
|
|
|
|
|
|
|
void setInvoiceLie(boolean invoiceLie); |
|
|
|
|
|
|
|
void addVar(String key, Object value); |
|
|
|
|
|
|
|
void addListVarAll(Collection rows); |
|
|
|
|
|
|
|
void setRowHeight(int startListIndex, int endListIndex, int height); |
|
|
|
} |
|
|
|
|
|
|
|
private static class TxExcelTemplateAdapter implements ExcelTemplateAdapter { |
|
|
|
private final ExcelTemplateTX delegate; |
|
|
|
|
|
|
|
private TxExcelTemplateAdapter(ExcelTemplateTX delegate) { |
|
|
|
this.delegate = delegate; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void clearAll() { |
|
|
|
delegate.clearAll(); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setMoveSeal(boolean moveSeal) { |
|
|
|
delegate.setMoveSeal(moveSeal); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setDelRight(boolean delRight) { |
|
|
|
delegate.setDelRight(delRight); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setMoveShape(boolean moveShape) { |
|
|
|
delegate.setMoveShape(moveShape); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setCellStyle(boolean cellStyle) { |
|
|
|
delegate.setCellStyle(cellStyle); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setRangeStyle(boolean rangeStyle) { |
|
|
|
delegate.setRangeStyle(rangeStyle); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setPriceRight(boolean priceRight) { |
|
|
|
delegate.setPriceRight(priceRight); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setInvoiceLie(boolean invoiceLie) { |
|
|
|
delegate.setInvoiceLie(invoiceLie); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void addVar(String key, Object value) { |
|
|
|
delegate.addVar(key, value); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void addListVarAll(Collection rows) { |
|
|
|
delegate.addListVarAll(rows); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setRowHeight(int startListIndex, int endListIndex, int height) { |
|
|
|
delegate.setRowHeight(startListIndex, endListIndex, height); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private static class YbExcelTemplateAdapter implements ExcelTemplateAdapter { |
|
|
|
private final ExcelTemplateYB delegate; |
|
|
|
|
|
|
|
private YbExcelTemplateAdapter(ExcelTemplateYB delegate) { |
|
|
|
this.delegate = delegate; |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void clearAll() { |
|
|
|
delegate.clearAll(); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setMoveSeal(boolean moveSeal) { |
|
|
|
delegate.setMoveSeal(moveSeal); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setDelRight(boolean delRight) { |
|
|
|
delegate.setDelRight(delRight); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setMoveShape(boolean moveShape) { |
|
|
|
delegate.setMoveShape(moveShape); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setCellStyle(boolean cellStyle) { |
|
|
|
delegate.setCellStyle(cellStyle); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setRangeStyle(boolean rangeStyle) { |
|
|
|
delegate.setRangeStyle(rangeStyle); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setPriceRight(boolean priceRight) { |
|
|
|
delegate.setPriceRight(priceRight); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setInvoiceLie(boolean invoiceLie) { |
|
|
|
delegate.setInvoiceLie(invoiceLie); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void addVar(String key, Object value) { |
|
|
|
delegate.addVar(key, value); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void addListVarAll(Collection rows) { |
|
|
|
delegate.addListVarAll(rows); |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public void setRowHeight(int startListIndex, int endListIndex, int height) { |
|
|
|
delegate.setRowHeight(startListIndex, endListIndex, height); |
|
|
|
} |
|
|
|
} |
|
|
|
/** |
|
|
|
* 导出发票 |
|
|
|
*/ |
|
|
|
@ -893,7 +1048,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
// 硬标天线需要po(declaration-invoice2-template.xlsx),且要长 |
|
|
|
String xlsx = "templates/TX/declaration-invoice2-template.xlsx"; |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource(xlsx).getInputStream()); |
|
|
|
extractedInvoice(data, template, notifyHeader); |
|
|
|
extractedInvoice(data, new TxExcelTemplateAdapter(template), notifyHeader); |
|
|
|
try (XSSFWorkbook workbook = template.render(0)) { |
|
|
|
workbook.write(response.getOutputStream()); |
|
|
|
} |
|
|
|
@ -1010,7 +1165,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
public void downloadExportGoods(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
|
try { |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource("templates/TX/export-goods-template.xlsx").getInputStream()); |
|
|
|
extractedExportGoods(data, template); |
|
|
|
extractedExportGoods(data, new TxExcelTemplateAdapter(template)); |
|
|
|
try (XSSFWorkbook workbook = template.render(0)) { |
|
|
|
workbook.write(response.getOutputStream()); |
|
|
|
} |
|
|
|
@ -1031,7 +1186,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
public void downloadContract(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
|
try { |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource("templates/TX/declaration-contract-template.xlsx").getInputStream()); |
|
|
|
extractedContract(data, template); |
|
|
|
extractedContract(data, new TxExcelTemplateAdapter(template)); |
|
|
|
try (XSSFWorkbook workbook = template.render(0)) { |
|
|
|
workbook.write(response.getOutputStream()); |
|
|
|
} |
|
|
|
@ -1048,40 +1203,72 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
@Override |
|
|
|
public void downloadAll(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
|
EcssCoDelNotifyHeaderData notifyHeader = coDelMapper.getEcssCoDelNotifyHeader(data.getSite(), data.getDelNo()); |
|
|
|
// RFID和RF和硬标天线使用的模版不一样 |
|
|
|
// RFID和RF如果勾选了合同,导出需要带公章(declaration-all-seal-template.xlsx) |
|
|
|
String xlsx = "templates/TX/declaration-all-template.xlsx"; |
|
|
|
XSSFWorkbook workbook = null; |
|
|
|
try { |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource(xlsx).getInputStream()); |
|
|
|
boolean isMhm = notifyHeader != null && "04-MHM".equalsIgnoreCase(notifyHeader.getBuNo()); |
|
|
|
if (isMhm) { |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource("templates/TX/declaration-all-template.xlsx").getInputStream()); |
|
|
|
ExcelTemplateAdapter templateAdapter = new TxExcelTemplateAdapter(template); |
|
|
|
|
|
|
|
// 第一个sheet - 出口货物委托书 |
|
|
|
extractedExportGoods(data, templateAdapter); |
|
|
|
workbook = template.render(0); |
|
|
|
|
|
|
|
// 第二个sheet - 发票 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedInvoice(data, templateAdapter, notifyHeader); |
|
|
|
template.render(1); |
|
|
|
|
|
|
|
// 第三个sheet - 箱单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
exportPackingList(data, template, notifyHeader, 0); |
|
|
|
template.render(2); |
|
|
|
|
|
|
|
// 第四个sheet - 报关单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedDeclaration(data, templateAdapter); |
|
|
|
template.render(3); |
|
|
|
|
|
|
|
// 第五个sheet - 申报要素 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedElements(data, templateAdapter); |
|
|
|
template.render(4); |
|
|
|
// 第六个sheet - 合同 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedContract(data, templateAdapter); |
|
|
|
template.render(5); |
|
|
|
} else { |
|
|
|
ExcelTemplateYB template = ExcelTemplateYB.load(new ClassPathResource("templates/YB/declaration-all-template.xlsx").getInputStream()); |
|
|
|
ExcelTemplateAdapter templateAdapter = new YbExcelTemplateAdapter(template); |
|
|
|
|
|
|
|
// 第一个sheet - 出口货物委托书 |
|
|
|
extractedExportGoods(data, templateAdapter); |
|
|
|
workbook = template.render(0); |
|
|
|
|
|
|
|
// 第一个sheet - 出口货物委托书 |
|
|
|
extractedExportGoods(data, template); |
|
|
|
workbook = template.render(0); |
|
|
|
|
|
|
|
// 第二个sheet - 发票 |
|
|
|
template.clearAll(); |
|
|
|
extractedInvoice(data, template, notifyHeader); |
|
|
|
template.render(1); |
|
|
|
|
|
|
|
// 第三个sheet - 箱单 |
|
|
|
template.clearAll(); |
|
|
|
exportPackingList(data, template, notifyHeader, 0); |
|
|
|
template.render(2); |
|
|
|
|
|
|
|
// 第四个sheet - 报关单 |
|
|
|
template.clearAll(); |
|
|
|
extractedDeclaration(data, template); |
|
|
|
template.render(3); |
|
|
|
|
|
|
|
// 第五个sheet - 申报要素 |
|
|
|
template.clearAll(); |
|
|
|
extractedElements(data, template); |
|
|
|
template.render(4); |
|
|
|
// 第六个sheet - 合同 |
|
|
|
template.clearAll(); |
|
|
|
extractedContract(data, template); |
|
|
|
template.render(5); |
|
|
|
// 第二个sheet - 发票 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedInvoice(data, templateAdapter, notifyHeader); |
|
|
|
template.render(1); |
|
|
|
|
|
|
|
// 第三个sheet - 箱单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
exportPackingListYB(data, template, notifyHeader, 0); |
|
|
|
template.render(2); |
|
|
|
|
|
|
|
// 第四个sheet - 报关单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedDeclaration(data, templateAdapter); |
|
|
|
template.render(3); |
|
|
|
|
|
|
|
// 第五个sheet - 申报要素 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedElements(data, templateAdapter); |
|
|
|
template.render(4); |
|
|
|
// 第六个sheet - 合同 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedContract(data, templateAdapter); |
|
|
|
template.render(5); |
|
|
|
} |
|
|
|
|
|
|
|
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); |
|
|
|
response.setHeader("Content-Disposition", "attachment; filename=\"danzheng.xlsx\""); |
|
|
|
@ -1109,37 +1296,66 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
@Override |
|
|
|
public void downloadAllPdf(HttpServletResponse response, EcssDeclarationHeaderData data) { |
|
|
|
EcssCoDelNotifyHeaderData notifyHeader = coDelMapper.getEcssCoDelNotifyHeader(data.getSite(), data.getDelNo()); |
|
|
|
// RFID和RF和硬标天线使用的模版不一样 |
|
|
|
// RFID和RF如果勾选了合同,导出需要带公章(declaration-all-seal-template.xlsx) |
|
|
|
String xlsx = "templates/TX/declaration-all-template-pdf.xlsx"; |
|
|
|
XSSFWorkbook excelWorkbook = null; |
|
|
|
try { |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource(xlsx).getInputStream()); |
|
|
|
boolean isMhm = notifyHeader != null && "04-MHM".equalsIgnoreCase(notifyHeader.getBuNo()); |
|
|
|
if (isMhm) { |
|
|
|
String xlsx = "templates/TX/declaration-all-template-pdf.xlsx"; |
|
|
|
ExcelTemplateTX template = ExcelTemplateTX.load(new ClassPathResource(xlsx).getInputStream()); |
|
|
|
ExcelTemplateAdapter templateAdapter = new TxExcelTemplateAdapter(template); |
|
|
|
|
|
|
|
// 第一个sheet - 发票(PDF导出时跳过出口货物委托书) |
|
|
|
extractedInvoice(data, templateAdapter, notifyHeader); |
|
|
|
excelWorkbook = template.render(0); |
|
|
|
|
|
|
|
// 第一个sheet - 发票(PDF导出时跳过出口货物委托书) |
|
|
|
extractedInvoice(data, template, notifyHeader); |
|
|
|
excelWorkbook = template.render(0); |
|
|
|
// 第二个sheet - 箱单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
exportPackingList(data, template, notifyHeader, 0); |
|
|
|
template.render(1); |
|
|
|
|
|
|
|
// 第三个sheet - 报关单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedDeclaration(data, templateAdapter); |
|
|
|
template.render(2); |
|
|
|
|
|
|
|
// 第四个sheet - 申报要素 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedElements(data, templateAdapter); |
|
|
|
template.render(3); |
|
|
|
|
|
|
|
// 第五个sheet - 合同 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedContract(data, templateAdapter); |
|
|
|
template.render(4); |
|
|
|
} else { |
|
|
|
String xlsx = "templates/YB/declaration-all-template-pdf.xlsx"; |
|
|
|
ExcelTemplateYB template = ExcelTemplateYB.load(new ClassPathResource(xlsx).getInputStream()); |
|
|
|
ExcelTemplateAdapter templateAdapter = new YbExcelTemplateAdapter(template); |
|
|
|
|
|
|
|
// 第二个sheet - 箱单 |
|
|
|
template.clearAll(); |
|
|
|
exportPackingList(data, template, notifyHeader, 0); |
|
|
|
template.render(1); |
|
|
|
// 第一个sheet - 发票(PDF导出时跳过出口货物委托书) |
|
|
|
extractedInvoice(data, templateAdapter, notifyHeader); |
|
|
|
excelWorkbook = template.render(0); |
|
|
|
|
|
|
|
// 第三个sheet - 报关单 |
|
|
|
template.clearAll(); |
|
|
|
extractedDeclaration(data, template); |
|
|
|
template.render(2); |
|
|
|
// 第二个sheet - 箱单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
exportPackingListYB(data, template, notifyHeader, 0); |
|
|
|
template.render(1); |
|
|
|
|
|
|
|
// 第四个sheet - 申报要素 |
|
|
|
template.clearAll(); |
|
|
|
extractedElements(data, template); |
|
|
|
template.render(3); |
|
|
|
// 第三个sheet - 报关单 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedDeclaration(data, templateAdapter); |
|
|
|
template.render(2); |
|
|
|
|
|
|
|
// 第四个sheet - 申报要素 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedElements(data, templateAdapter); |
|
|
|
template.render(3); |
|
|
|
|
|
|
|
// 第五个sheet - 合同 |
|
|
|
template.clearAll(); |
|
|
|
extractedContract(data, template); |
|
|
|
template.render(4); |
|
|
|
// 第五个sheet - 合同 |
|
|
|
templateAdapter.clearAll(); |
|
|
|
extractedContract(data, templateAdapter); |
|
|
|
template.render(4); |
|
|
|
} |
|
|
|
|
|
|
|
// 将Excel转换为PDF |
|
|
|
byte[] pdfBytes = convertExcelToPdf(excelWorkbook); |
|
|
|
@ -1221,7 +1437,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
return pdfBytes; |
|
|
|
} |
|
|
|
|
|
|
|
private void extractedDeclaration(EcssDeclarationHeaderData data, ExcelTemplateTX template) { |
|
|
|
private void extractedDeclaration(EcssDeclarationHeaderData data, ExcelTemplateAdapter template) { |
|
|
|
template.setMoveSeal(true); |
|
|
|
template.setDelRight(true); |
|
|
|
EcssDeclarationHeaderData ecHeader = coDelMapper.getDeclarationHeader(data); |
|
|
|
@ -1288,7 +1504,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
ecHeader.getRoyaltyPaymentsConfirm().equals("Y") ? "是" : "否"); |
|
|
|
template.addVar("remark", stringInput(ecHeader.getRemark())); |
|
|
|
|
|
|
|
List<Map> detailList = coDelMapper.exportDeclarationDetail(data); |
|
|
|
List<Map> detailList = coDelMapper.exportDeclarationDetailTX(data); |
|
|
|
for (int i = 0; i < detailList.size(); i++) { |
|
|
|
Map eorder = detailList.get(i); |
|
|
|
eorder.put("row_num", i + 1); |
|
|
|
@ -1311,7 +1527,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
template.addListVarAll(detailList); |
|
|
|
} |
|
|
|
|
|
|
|
private void extractedElements(EcssDeclarationHeaderData data, ExcelTemplateTX template) { |
|
|
|
private void extractedElements(EcssDeclarationHeaderData data, ExcelTemplateAdapter template) { |
|
|
|
template.addVar("brandType", data.getBrandType()); |
|
|
|
Map<String, String> propertiesMap = new HashMap<>(); |
|
|
|
if (data.getPropertiesList()!=null && !data.getPropertiesList().isEmpty()) { |
|
|
|
@ -1422,7 +1638,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
return result.toString(); |
|
|
|
} |
|
|
|
|
|
|
|
private void extractedInvoice(EcssDeclarationHeaderData data, ExcelTemplateTX template, |
|
|
|
private void extractedInvoice(EcssDeclarationHeaderData data, ExcelTemplateAdapter template, |
|
|
|
EcssCoDelNotifyHeaderData notifyHeader) { |
|
|
|
List<EcssCoDelNotifyDetailData> notifyDetailList = data.getNotifyPartDetailList(); |
|
|
|
for (EcssCoDelNotifyDetailData nData:notifyDetailList){ |
|
|
|
@ -1777,6 +1993,14 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
template.addListVarAll(exportList); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* YB装箱单导出,逻辑与TX基本一致,区别在于YB的装箱单模板与TX不同,部分字段需要特殊处理 |
|
|
|
* 第一列展示托号(pallet_no) |
|
|
|
* @param data |
|
|
|
* @param template |
|
|
|
* @param notifyHeader |
|
|
|
* @param type |
|
|
|
*/ |
|
|
|
private void exportPackingListYB(EcssDeclarationHeaderData data, ExcelTemplateYB template, |
|
|
|
EcssCoDelNotifyHeaderData notifyHeader,int type) { |
|
|
|
List<EcssCoDelNotifyDetailData> notifyDetailList; |
|
|
|
@ -2018,7 +2242,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
template.addListVarAll(exportList); |
|
|
|
} |
|
|
|
|
|
|
|
private void extractedExportGoods(EcssDeclarationHeaderData data, ExcelTemplateTX template) { |
|
|
|
private void extractedExportGoods(EcssDeclarationHeaderData data, ExcelTemplateAdapter template) { |
|
|
|
EcssDeclarationHeaderData ecHeader = coDelMapper.getDeclarationHeaderByDelNo(data); |
|
|
|
// 发货通知单 |
|
|
|
EcssCoDelNotifyHeaderData notifyHeader = coDelMapper.getEcssCoDelNotifyHeader(data.getSite(), data.getDelNo()); |
|
|
|
@ -2146,7 +2370,7 @@ public class CoDelExcelTXServiceImpl implements CoDelExcelTXService { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
private void extractedContract(EcssDeclarationHeaderData data, ExcelTemplateTX template) { |
|
|
|
private void extractedContract(EcssDeclarationHeaderData data, ExcelTemplateAdapter template) { |
|
|
|
// 发货通知单 |
|
|
|
EcssCoDelNotifyHeaderData notifyHeader = coDelMapper.getEcssCoDelNotifyHeader(data.getSite(), data.getDelNo()); |
|
|
|
template.addVar("cmcInvoice", notifyHeader.getCmcInvoice()); |
|
|
|
|