public static InvoiceWS getWS(InvoiceDTO i) { if (i == null) { return null; } InvoiceWS retValue = new InvoiceWS(); retValue.setId(i.getId()); retValue.setCreateDateTime(i.getCreateDatetime()); retValue.setCreateTimeStamp(i.getCreateTimestamp()); retValue.setLastReminder(i.getLastReminder()); retValue.setDueDate(i.getDueDate()); retValue.setTotal(i.getTotal()); retValue.setToProcess(i.getToProcess()); retValue.setStatusId(i.getInvoiceStatus().getId()); retValue.setBalance(i.getBalance()); retValue.setCarriedBalance(i.getCarriedBalance()); retValue.setInProcessPayment(i.getInProcessPayment()); retValue.setDeleted(i.getDeleted()); retValue.setPaymentAttempts(i.getPaymentAttempts()); retValue.setIsReview(i.getIsReview()); retValue.setCurrencyId(i.getCurrency().getId()); retValue.setCustomerNotes(i.getCustomerNotes()); retValue.setNumber(i.getPublicNumber()); retValue.setOverdueStep(i.getOverdueStep()); retValue.setUserId(i.getBaseUser().getId()); Integer delegatedInvoiceId = i.getInvoice() == null ? null : i.getInvoice().getId(); Integer userId = i.getBaseUser().getId(); Integer payments[] = new Integer[i.getPaymentMap().size()]; com.sapienter.jbilling.server.entity.InvoiceLineDTO invoiceLines[] = new com.sapienter.jbilling.server.entity.InvoiceLineDTO[i.getInvoiceLines().size()]; Integer orders[] = new Integer[i.getOrderProcesses().size()]; int f; f = 0; for (PaymentInvoiceMapDTO p : i.getPaymentMap()) { payments[f++] = p.getPayment().getId(); } f = 0; for (OrderProcessDTO orderP : i.getOrderProcesses()) { orders[f++] = orderP.getPurchaseOrder().getId(); } f = 0; for (InvoiceLineDTO line : i.getInvoiceLines()) { invoiceLines[f++] = new com.sapienter.jbilling.server.entity.InvoiceLineDTO( line.getId(), line.getDescription(), line.getAmount(), line.getPrice(), line.getQuantity(), line.getDeleted(), line.getItem() == null ? null : line.getItem().getId(), line.getSourceUserId(), line.getIsPercentage()); } retValue.setDelegatedInvoiceId(delegatedInvoiceId); retValue.setUserId(userId); retValue.setPayments(payments); retValue.setInvoiceLines(invoiceLines); retValue.setOrders(orders); retValue.setMetaFields(MetaFieldBL.convertMetaFieldsToWS(new UserBL().getEntityId(userId), i)); return retValue; }