use of com.axelor.meta.MetaFiles in project axelor-open-suite by axelor.
the class PrintServiceImpl method attachMetaFiles.
@Override
public void attachMetaFiles(Print print, Set<MetaFile> metaFiles) {
Preconditions.checkNotNull(print.getId());
if (metaFiles == null || metaFiles.isEmpty()) {
return;
}
LOG.debug("Add metafiles to object {} : {}", Print.class.getName(), print.getId());
for (MetaFile metaFile : metaFiles) {
Beans.get(MetaFiles.class).attach(metaFile, metaFile.getFileName(), print);
}
}
use of com.axelor.meta.MetaFiles in project axelor-open-suite by axelor.
the class BatchEmploymentContractExport method employmentContractExportSilae.
@Transactional(rollbackOn = { Exception.class })
public MetaFile employmentContractExportSilae(List<EmploymentContract> employmentContractList) throws IOException {
List<String[]> list = new ArrayList<>();
for (EmploymentContract employmentContract : employmentContractList) {
Beans.get(EmploymentContractService.class).employmentContractExportSilae(employmentContract, list);
total++;
incrementDone();
}
File tempFile = MetaFiles.createTempFile(Beans.get(EmploymentContractService.class).employmentContractExportName(), ".csv").toFile();
String[] headers = Beans.get(EmploymentContractService.class).employmentContractExportHeaders();
CsvTool.csvWriter(tempFile.getParent(), tempFile.getName(), ';', headers, list);
MetaFiles metaFiles = Beans.get(MetaFiles.class);
MetaFile metaFile = metaFiles.upload(tempFile);
tempFile.delete();
return metaFile;
}
use of com.axelor.meta.MetaFiles in project axelor-open-suite by axelor.
the class BankOrderServiceImpl method generateFile.
@Override
public File generateFile(BankOrder bankOrder) throws JAXBException, IOException, AxelorException, DatatypeConfigurationException {
if (bankOrder.getBankOrderLineList() == null || bankOrder.getBankOrderLineList().isEmpty()) {
return null;
}
bankOrder.setFileGenerationDateTime(LocalDateTime.now());
BankOrderFileFormat bankOrderFileFormat = bankOrder.getBankOrderFileFormat();
File file = null;
switch(bankOrderFileFormat.getOrderFileFormatSelect()) {
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_001_001_02_SCT:
file = new BankOrderFile00100102Service(bankOrder).generateFile();
break;
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_001_001_03_SCT:
file = new BankOrderFile00100103Service(bankOrder).generateFile();
break;
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_XXX_CFONB320_XCT:
file = new BankOrderFileAFB320XCTService(bankOrder).generateFile();
break;
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_XXX_CFONB160_ICT:
file = new BankOrderFileAFB160ICTService(bankOrder).generateFile();
break;
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_008_001_01_SDD:
file = new BankOrderFile00800101Service(bankOrder, BankOrderFile008Service.SEPA_TYPE_CORE).generateFile();
break;
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_008_001_01_SBB:
file = new BankOrderFile00800101Service(bankOrder, BankOrderFile008Service.SEPA_TYPE_SBB).generateFile();
break;
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_008_001_02_SDD:
file = new BankOrderFile00800102Service(bankOrder, BankOrderFile008Service.SEPA_TYPE_CORE).generateFile();
break;
case BankOrderFileFormatRepository.FILE_FORMAT_PAIN_008_001_02_SBB:
file = new BankOrderFile00800102Service(bankOrder, BankOrderFile008Service.SEPA_TYPE_SBB).generateFile();
break;
default:
throw new AxelorException(bankOrder, TraceBackRepository.CATEGORY_INCONSISTENCY, I18n.get(IExceptionMessage.BANK_ORDER_FILE_UNKNOWN_FORMAT));
}
if (file == null) {
throw new AxelorException(bankOrder, TraceBackRepository.CATEGORY_INCONSISTENCY, I18n.get(IExceptionMessage.BANK_ORDER_ISSUE_DURING_FILE_GENERATION), bankOrder.getBankOrderSeq());
}
MetaFiles metaFiles = Beans.get(MetaFiles.class);
try (InputStream is = new FileInputStream(file)) {
metaFiles.attach(is, file.getName(), bankOrder);
bankOrder.setGeneratedMetaFile(metaFiles.upload(file));
}
return file;
}
use of com.axelor.meta.MetaFiles in project axelor-open-suite by axelor.
the class InvoicingProjectService method generateAnnex.
public void generateAnnex(InvoicingProject invoicingProject) throws AxelorException, IOException {
String title = I18n.get("InvoicingProjectAnnex") + "-" + Beans.get(AppBaseService.class).getTodayDateTime().format(DateTimeFormatter.ofPattern(DATE_FORMAT_YYYYMMDDHHMM));
ReportSettings reportSettings = ReportFactory.createReport(IReport.INVOICING_PROJECT_ANNEX, title).addParam("InvProjectId", invoicingProject.getId()).addParam("Timezone", getTimezone(invoicingProject)).addParam("Locale", ReportSettings.getPrintingLocale(null));
if (invoicingProject.getAttachAnnexToInvoice()) {
List<File> fileList = new ArrayList<>();
MetaFiles metaFiles = Beans.get(MetaFiles.class);
Invoice invoice = invoicingProject.getInvoice();
fileList.add(Beans.get(InvoicePrintServiceImpl.class).print(invoice, null, ReportSettings.FORMAT_PDF, null));
fileList.add(reportSettings.generate().getFile());
MetaFile metaFile = metaFiles.upload(PdfTool.mergePdf(fileList));
metaFile.setFileName(title + ".pdf");
metaFiles.attach(metaFile, null, invoicingProject);
return;
}
reportSettings.toAttach(invoicingProject).generate();
}
use of com.axelor.meta.MetaFiles in project axelor-open-suite by axelor.
the class MessageServiceImpl method attachMetaFiles.
@Override
@Transactional
public void attachMetaFiles(Message message, Set<MetaFile> metaFiles) {
Preconditions.checkNotNull(message.getId());
if (metaFiles == null || metaFiles.isEmpty()) {
return;
}
log.debug("Add metafiles to object {}:{}", Message.class.getName(), message.getId());
for (MetaFile metaFile : metaFiles) {
Beans.get(MetaFiles.class).attach(metaFile, metaFile.getFileName(), message);
}
}
Aggregations