Abo Einmalprodukte: Review-Gate (VIP), Verbindlichkeit & Summen-Layout
- Live-Review-Gate: Einmalprodukte nur fuer VIP im Sales Center sichtbar, Portal ausgeblendet (AboHelper::isOneTimeFeatureVisible + Gates in Controllern) - Nur verbindlich bestaetigte Einmal-Artikel fliessen in die Lieferung; Service-Helfer confirmedItems/pendingItems/pendingGross - Footer-Layout der Einmalprodukt-Liste: bestaetigte Summe + Gesamtbetrag, Trennstrich, offener Betrag und neue Gesamtsumme (dunkelgruen) - Uebersetzungen DE/EN/ES/FR (onetime_new_total u.a.), Tests angepasst/ergaenzt Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
parent
2269ce031f
commit
8288ea59ac
16 changed files with 356 additions and 46 deletions
|
|
@ -73,7 +73,7 @@ class AboController extends Controller
|
|||
AboOrderCart::makeOrderYard($user_abo);
|
||||
$baseCompCount = Yard::instance(AboOrderCart::INSTANCE)->getNumComp();
|
||||
|
||||
$oneTimeWindowOpen = AboHelper::isOneTimeWindowOpen($user_abo);
|
||||
$oneTimeWindowOpen = AboHelper::isOneTimeFeatureVisible($user_abo);
|
||||
if ($oneTimeWindowOpen) {
|
||||
AboOrderCart::addOneTimeItemsToYard($user_abo);
|
||||
AboOrderCart::checkNumOfCompProducts($user_abo);
|
||||
|
|
@ -211,7 +211,7 @@ class AboController extends Controller
|
|||
AboOrderCart::initYard($user_abo);
|
||||
AboOrderCart::makeOrderYard($user_abo);
|
||||
$baseCompCount = Yard::instance(AboOrderCart::INSTANCE)->getNumComp();
|
||||
if (AboHelper::isOneTimeWindowOpen($user_abo)) {
|
||||
if (AboHelper::isOneTimeFeatureVisible($user_abo)) {
|
||||
AboOrderCart::addOneTimeItemsToYard($user_abo->fresh());
|
||||
}
|
||||
AboOrderCart::checkNumOfCompProducts($user_abo);
|
||||
|
|
@ -221,7 +221,7 @@ class AboController extends Controller
|
|||
$html_cart = view('admin.abo._order_abo_show', [
|
||||
'user_abo' => $user_abo,
|
||||
'error_message' => $error_message,
|
||||
'split_mode' => AboHelper::isOneTimeWindowOpen($user_abo),
|
||||
'split_mode' => AboHelper::isOneTimeFeatureVisible($user_abo),
|
||||
'summary' => $summary,
|
||||
'add_only_mode' => $isAddOnlyMode,
|
||||
])->render();
|
||||
|
|
@ -325,6 +325,7 @@ class AboController extends Controller
|
|||
if ($data['action'] === 'abo-add-onetime') {
|
||||
$user_abo = UserAbo::find($data['id']);
|
||||
$this->checkPortalPermission($user_abo);
|
||||
abort_unless(AboHelper::isOneTimeFeatureVisible($user_abo), 403);
|
||||
$ret = view('user.abo.modal_abo_onetime_products', compact('data', 'user_abo'))->render();
|
||||
}
|
||||
if ($data['action'] === 'abo_update_settings') {
|
||||
|
|
@ -352,7 +353,7 @@ class AboController extends Controller
|
|||
$this->checkPortalPermission($user_abo);
|
||||
$isAddOnlyMode = AboHelper::isAddOnlyMode($user_abo, $view);
|
||||
|
||||
if (! AboHelper::isOneTimeWindowOpen($user_abo)) {
|
||||
if (! AboHelper::isOneTimeFeatureVisible($user_abo)) {
|
||||
return response()->json([
|
||||
'response' => false,
|
||||
'message' => __('abo.onetime_window_closed'),
|
||||
|
|
@ -404,6 +405,8 @@ class AboController extends Controller
|
|||
$user_abo = UserAbo::findOrFail($user_abo_id);
|
||||
$this->checkPortalPermission($user_abo);
|
||||
|
||||
abort_unless(AboHelper::isOneTimeFeatureVisible($user_abo), 403);
|
||||
|
||||
AboOrderCart::initYard($user_abo);
|
||||
|
||||
$query = Product::select('products.*')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue