diff --git a/app/Enums/InsuranceType.php b/app/Enums/InsuranceType.php index f17f0e8..cc39100 100644 --- a/app/Enums/InsuranceType.php +++ b/app/Enums/InsuranceType.php @@ -13,7 +13,7 @@ use BenSampo\Enum\Enum; */ final class InsuranceType extends Enum { - const None = '0'; + const Keine = '0'; const QBase = '1'; const OneStar = '2'; const ThreeStar = '3'; diff --git a/app/Http/Controllers/ContractController.php b/app/Http/Controllers/ContractController.php index 4b2b19e..b802132 100644 --- a/app/Http/Controllers/ContractController.php +++ b/app/Http/Controllers/ContractController.php @@ -33,7 +33,6 @@ class ContractController extends Controller ->map(function ($contract) { return [ 'date' => $contract->date_formatted, - 'price' => $contract->price->format(), 'car' => $contract->car->name_with_year, 'contact' => $contract->contact->title, 'link' => route('contracts.show', $contract), @@ -46,7 +45,6 @@ class ContractController extends Controller ->map(function ($contract) { return [ 'date' => $contract->date_formatted, - 'price' => $contract->price->format(), 'car' => $contract->car->name_with_year, 'contact' => $contract->contact->title, 'link' => route('contracts.show', $contract), diff --git a/app/Models/Car.php b/app/Models/Car.php index 317d0c6..769b87f 100644 --- a/app/Models/Car.php +++ b/app/Models/Car.php @@ -101,7 +101,7 @@ class Car extends Model public function isSold() { - return $this->buyContracts()->count() <= $this->sellContracts()->count(); + return $this->buyContracts()->count() <= $this->sellContracts()->count() && $this->sellContracts()->count() > 0; } public function contracts() @@ -133,12 +133,12 @@ class Car extends Model public function scopeUnsoldOnly($query) { - return $query->withContractCount()->havingRaw('buy_contracts_count > sell_contracts_count'); + return $query->withContractCount()->havingRaw('buy_contracts_count > sell_contracts_count OR sell_contracts_count = 0'); } public function scopeSoldOnly($query) { - return $query->withContractCount()->having('sell_contracts_count', '>', 0)->havingRaw('buy_contracts_count = sell_contracts_count'); + return $query->withContractCount()->having('sell_contracts_count', '>', 0)->havingRaw('buy_contracts_count <= sell_contracts_count'); } public function scopeFilter($query, array $filters) diff --git a/app/Providers/RouteServiceProvider.php b/app/Providers/RouteServiceProvider.php index 8cc1366..8fbd222 100644 --- a/app/Providers/RouteServiceProvider.php +++ b/app/Providers/RouteServiceProvider.php @@ -56,7 +56,7 @@ class RouteServiceProvider extends ServiceProvider }); Route::bind('contract', function ($value) { - if (in_array(Route::currentRouteName(), ['contracts.show', 'contracts.restore'])) { + if (in_array(Route::currentRouteName(), ['contracts.show', 'contracts.restore', 'payments.destroy'])) { return Contract::withTrashed()->find($value); } return Contract::find($value); diff --git a/database/migrations/2021_05_10_144041_create_contracts_table.php b/database/migrations/2021_05_10_144041_create_contracts_table.php index 80dcb49..42c7ecc 100644 --- a/database/migrations/2021_05_10_144041_create_contracts_table.php +++ b/database/migrations/2021_05_10_144041_create_contracts_table.php @@ -30,7 +30,7 @@ class CreateContractsTable extends Migration ->onDelete('cascade') ->constrained('cars'); $table->enum('insurance_type', InsuranceType::getValues()) - ->default(InsuranceType::None); + ->default(InsuranceType::Keine); $table->enum('type', ContractType::getValues()) ->default(ContractType::SellContract); $table->timestamps(); diff --git a/public/js/app.js b/public/js/app.js index f0e269c..bca1510 100644 --- a/public/js/app.js +++ b/public/js/app.js @@ -21550,7 +21550,7 @@ __webpack_require__.r(__webpack_exports__); price: null, notes: null, type: this.type, - insurance_type: '1', + insurance_type: '0', car_id: (_this$car$id = (_this$car = this.car) === null || _this$car === void 0 ? void 0 : _this$car.id) !== null && _this$car$id !== void 0 ? _this$car$id : null, contact_id: (_this$contact$id = (_this$contact = this.contact) === null || _this$contact === void 0 ? void 0 : _this$contact.id) !== null && _this$contact$id !== void 0 ? _this$contact$id : null, amount: null, @@ -23327,7 +23327,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) { "onUpdate:modelValue": _cache[1] || (_cache[1] = function ($event) { return $data.contact = $event; }), - label: "name", + label: "title", "track-by": "id", options: $data.contactsChoice, "class": "2xl:col-span-4 sm:col-span-6 col-span-12", @@ -24254,7 +24254,7 @@ var _hoisted_11 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNo var _hoisted_12 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(" Alle Autos "); -var _hoisted_13 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(" Meine Autos "); +var _hoisted_13 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(" Autos im Lager "); var _hoisted_14 = /*#__PURE__*/(0,vue__WEBPACK_IMPORTED_MODULE_0__.createTextVNode)(" Verkaufte Autos "); @@ -24335,6 +24335,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) { }, 8 /* PROPS */ , ["href", "active"])]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)("div", _hoisted_5, [_hoisted_6, (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_jet_nav_link, { + "class": "text-xl", href: _ctx.route('contracts.create', { type: 0 }), @@ -24355,6 +24356,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) { }, 8 /* PROPS */ , ["href", "active"]), (0,vue__WEBPACK_IMPORTED_MODULE_0__.createVNode)(_component_jet_nav_link, { + "class": "text-xl", href: _ctx.route('contracts.create', { type: 1 }), diff --git a/resources/js/Components/Contacts/CreateOrSelect.vue b/resources/js/Components/Contacts/CreateOrSelect.vue index 6686941..5c5b824 100644 --- a/resources/js/Components/Contacts/CreateOrSelect.vue +++ b/resources/js/Components/Contacts/CreateOrSelect.vue @@ -13,7 +13,7 @@
- +
oder