Merge branch 'develop' of github.com:invoiceninja/invoiceninja into develop

This commit is contained in:
Hillel Coren 2017-06-26 17:24:34 +03:00
commit 01a24e03de

View File

@ -183,45 +183,58 @@ class ImportService
if ($transformer->hasProduct($jsonProduct['product_key'])) {
continue;
}
if (EntityModel::validate($jsonProduct, ENTITY_PRODUCT) === true) {
$productValidate = EntityModel::validate($jsonProduct, ENTITY_PRODUCT);
if ($productValidate === true) {
$product = $this->productRepo->save($jsonProduct);
$this->addProductToMaps($product);
$this->addSuccess($product);
} else {
$jsonProduct['type'] = ENTITY_PRODUCT;
$jsonProduct['error'] = $productValidate;
$this->addFailure(ENTITY_PRODUCT, $jsonProduct);
continue;
}
}
foreach ($json['clients'] as $jsonClient) {
if (EntityModel::validate($jsonClient, ENTITY_CLIENT) === true) {
$clientValidate = EntityModel::validate($jsonClient, ENTITY_CLIENT);
if ($clientValidate === true) {
$client = $this->clientRepo->save($jsonClient);
$this->addClientToMaps($client);
$this->addSuccess($client);
} else {
$jsonClient['type'] = ENTITY_CLIENT;
$jsonClient['error'] = $clientValidate;
$this->addFailure(ENTITY_CLIENT, $jsonClient);
continue;
}
foreach ($jsonClient['invoices'] as $jsonInvoice) {
$jsonInvoice['client_id'] = $client->id;
if (EntityModel::validate($jsonInvoice, ENTITY_INVOICE) === true) {
$invoiceValidate = EntityModel::validate($jsonInvoice, ENTITY_INVOICE);
if ($invoiceValidate === true) {
$invoice = $this->invoiceRepo->save($jsonInvoice);
$this->addInvoiceToMaps($invoice);
$this->addSuccess($invoice);
} else {
$jsonInvoice['type'] = ENTITY_INVOICE;
$jsonInvoice['error'] = $invoiceValidate;
$this->addFailure(ENTITY_INVOICE, $jsonInvoice);
continue;
}
foreach ($jsonInvoice['payments'] as $jsonPayment) {
$jsonPayment['invoice_id'] = $invoice->public_id;
if (EntityModel::validate($jsonPayment, ENTITY_PAYMENT) === true) {
$paymentValidate = EntityModel::validate($jsonPayment, ENTITY_PAYMENT);
if ($paymentValidate === true) {
$jsonPayment['client_id'] = $client->id;
$jsonPayment['invoice_id'] = $invoice->id;
$payment = $this->paymentRepo->save($jsonPayment);
$this->addSuccess($payment);
} else {
$jsonPayment['type'] = ENTITY_PAYMENT;
$jsonPayment['error'] = $paymentValidate;
$this->addFailure(ENTITY_PAYMENT, $jsonPayment);
continue;
}