diff --git a/app/Classes/Modules/Companies/ControllersLogic/UpdateCompanyCreditTermStatusLogic.php b/app/Classes/Modules/Companies/ControllersLogic/UpdateCompanyCreditTermStatusLogic.php
new file mode 100644
index 00000000..a37d66ce
--- /dev/null
+++ b/app/Classes/Modules/Companies/ControllersLogic/UpdateCompanyCreditTermStatusLogic.php
@@ -0,0 +1,71 @@
+ 'Update Company Credit Term Status',
+ 'message' => 'You have successfully updated Company Credit Term Status'
+ ];
+ }
+
+ /** @var FetchesCompany */
+ private $fetchesCompany;
+
+ /** @var UpdatesCompanyModuleIsCreditTerm */
+ private $updatesCompanyModuleIsCreditTerm;
+
+
+ /**
+ * UpdateCompanyCreditTermStatusLogic constructor.
+ * @param FetchesCompany $fetchesCompany
+ * @param UpdatesCompanyModuleIsCreditTerm $updatesCompanyModuleIsCreditTerm
+ */
+ public function __construct(FetchesCompany $fetchesCompany, UpdatesCompanyModuleIsCreditTerm $updatesCompanyModuleIsCreditTerm)
+ {
+ $this->fetchesCompany = $fetchesCompany;
+ $this->updatesCompanyModuleIsCreditTerm = $updatesCompanyModuleIsCreditTerm;
+ }
+
+ /**
+ * @param Request $request
+ * @return JsonResponse
+ * @throws \App\Classes\Exceptions\AccessForbiddenException
+ * @throws \App\Classes\Exceptions\MalformedRequestException
+ * @throws \App\Classes\Exceptions\RequestValidationException
+ */
+ public function logic(Request $request) : JsonResponse
+ {
+
+ $company = $this->fetchesCompany->execute(['id' => $request->route('id')]);
+
+ $isCreditTerm = $company->companyModules()->first()->connections()->first()->is_credit_term;
+
+ if ($isCreditTerm == 1) {
+ $isCreditTerm = 0;
+ } else {
+ $isCreditTerm = 1;
+ }
+
+ $this->updatesCompanyModuleIsCreditTerm->execute($company->companyModules()->first()->connections()->first(), $isCreditTerm);
+ Log::info(Auth::user()->email." updated credit term status for customer with id: " .$request->route('id'). " to status " . $isCreditTerm);
+
+ $result = ['is_credit_term' => $isCreditTerm];
+ return $this->response(['data' => $result]);
+ }
+}
diff --git a/app/Classes/Modules/Companies/Services/UpdatesCompanyModuleIsCreditTerm.php b/app/Classes/Modules/Companies/Services/UpdatesCompanyModuleIsCreditTerm.php
new file mode 100644
index 00000000..2a0b24fb
--- /dev/null
+++ b/app/Classes/Modules/Companies/Services/UpdatesCompanyModuleIsCreditTerm.php
@@ -0,0 +1,23 @@
+is_credit_term = $isCreditTerm;
+
+ return $this->handler($model);
+ }
+}
diff --git a/app/Classes/Modules/Transactions/ControllersLogic/ListTransactionsLogic.php b/app/Classes/Modules/Transactions/ControllersLogic/ListTransactionsLogic.php
index 5b362147..ae638bae 100644
--- a/app/Classes/Modules/Transactions/ControllersLogic/ListTransactionsLogic.php
+++ b/app/Classes/Modules/Transactions/ControllersLogic/ListTransactionsLogic.php
@@ -6,6 +6,7 @@ namespace App\Classes\Modules\Transactions\ControllersLogic;
use App\Classes\General\Abstracts\AbstractControllerLogic;
use App\Classes\Modules\Transactions\Services\ListsTransactions;
use App\Http\Resources\TransactionWithStorageResource;
+use App\Http\Resources\TransactionResource;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
@@ -49,8 +50,10 @@ class ListTransactionsLogic extends AbstractControllerLogic
});
$item['storages'] = $filteredStorages;
}
+ return $this->collectionResponse(TransactionWithStorageResource::collection($query));
+ }
+ else{
+ return $this->collectionResponse(TransactionResource::collection($query));
}
-
- return $this->collectionResponse(TransactionWithStorageResource::collection($query));
}
}
diff --git a/app/Http/Controllers/Companies/UpdateCompanyCreditTermStatusController.php b/app/Http/Controllers/Companies/UpdateCompanyCreditTermStatusController.php
new file mode 100644
index 00000000..d41ca64a
--- /dev/null
+++ b/app/Http/Controllers/Companies/UpdateCompanyCreditTermStatusController.php
@@ -0,0 +1,20 @@
+execute($request);
+ }
+
+}
diff --git a/app/Http/Resources/CompanyResource.php b/app/Http/Resources/CompanyResource.php
index 4590f46b..d969ac0d 100644
--- a/app/Http/Resources/CompanyResource.php
+++ b/app/Http/Resources/CompanyResource.php
@@ -21,7 +21,7 @@ class CompanyResource extends JsonResource
{
$companyModule = $this->companyModules()->first();
$companyTypeArray = CompanyType::COMPANY_TYPE_ID;
-
+
return [
'id' => $this->id,
'hash_id' => Crypt::encryptString($this->id),
@@ -33,6 +33,7 @@ class CompanyResource extends JsonResource
'business_type' => (int) $this->business_type,
'status' => (int) $this->status,
'segments' => SegmentResource::collection($companyModule->connections()->first()->segments),
+ 'is_credit_term' => $companyModule->connections()->first()->is_credit_term,
'contact' => new ContactResource ($this->when($this->has('contacts'), $this->contacts->first())),
'employee' => new UserResource($companyModule->employees()->first()),
'company_module' => new CompanyModuleResource($companyModule),
diff --git a/resources/assets/vue/components/companies/elements/CustomerProfileComponent.vue b/resources/assets/vue/components/companies/elements/CustomerProfileComponent.vue
index 69625c6a..3c8aae23 100644
--- a/resources/assets/vue/components/companies/elements/CustomerProfileComponent.vue
+++ b/resources/assets/vue/components/companies/elements/CustomerProfileComponent.vue
@@ -17,7 +17,7 @@