Homparty v1.0
This commit is contained in:
parent
ac0d5b781e
commit
c73299e52e
40 changed files with 1234 additions and 908 deletions
1
.env
1
.env
|
|
@ -20,6 +20,7 @@ APP_DEFAULT_MAIL=kevin.adametz@me.com
|
||||||
APP_CHECKOUT_TEST_MAIL=kevin.adametz@me.com
|
APP_CHECKOUT_TEST_MAIL=kevin.adametz@me.com
|
||||||
APP_INFO_TEST_MAIL=kevin.adametz@me.com
|
APP_INFO_TEST_MAIL=kevin.adametz@me.com
|
||||||
|
|
||||||
|
APP_MAIN_TAX = 1.19
|
||||||
|
|
||||||
LOG_CHANNEL=stack
|
LOG_CHANNEL=stack
|
||||||
|
|
||||||
|
|
|
||||||
74
.idea/workspace.xml
generated
74
.idea/workspace.xml
generated
|
|
@ -5,60 +5,45 @@
|
||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="2fbaac5f-25ba-4502-a970-cc14728d7d55" name="Default Changelist" comment="">
|
<list default="true" id="2fbaac5f-25ba-4502-a970-cc14728d7d55" name="Default Changelist" comment="">
|
||||||
<change afterPath="$PROJECT_DIR$/app/Http/Controllers/IngredientController.php" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/resources/views/admin/sales/_detail_homparty.blade.php" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/app/Services/HomepartyCart.php" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/resources/views/admin/sales/_detail_homparty_total.blade.php" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/app/Services/HomepartyUserCart.php" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/resources/views/emails/homeparty_detail.blade.php" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/public/js/iq-homeparty-cart.js" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/resources/views/emails/homeparty_detail_total.blade.php" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/public/js/summernote-cleaner.js" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/admin/ingredient/edit.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/admin/ingredient/form.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/admin/ingredient/index.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/user/homeparty/_address.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/user/homeparty/modal_show_products.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/user/homeparty/order.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/user/homeparty/show_bonus.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/user/homeparty/show_calc_bonus_host.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/user/homeparty/show_products_order.blade.php" afterDir="false" />
|
|
||||||
<change afterPath="$PROJECT_DIR$/resources/views/user/homeparty/show_total_order.blade.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/.env" beforeDir="false" afterPath="$PROJECT_DIR$/.env" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.env" beforeDir="false" afterPath="$PROJECT_DIR$/.env" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/.phpstorm.meta.php" beforeDir="false" afterPath="$PROJECT_DIR$/.phpstorm.meta.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/SalesController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/SalesController.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/_ide_helper.php" beforeDir="false" afterPath="$PROJECT_DIR$/_ide_helper.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/_ide_helper_models.php" beforeDir="false" afterPath="$PROJECT_DIR$/_ide_helper_models.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/ModalController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/ModalController.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/ProductController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/ProductController.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Sys/AdminToolsController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Sys/AdminToolsController.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/User/HomepartyController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/User/HomepartyController.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/User/HomepartyController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/User/HomepartyController.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Web/ContactController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Web/ContactController.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/User/OrderController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/User/OrderController.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Web/HomepartyController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Web/HomepartyController.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Http/Controllers/Web/CheckoutController.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Http/Controllers/Web/CheckoutController.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Models/Homeparty.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Homeparty.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Models/Homeparty.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Homeparty.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Models/HomepartyUser.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/HomepartyUser.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Models/HomepartyUser.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/HomepartyUser.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Models/Product.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Product.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Models/Product.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/Product.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Repositories/ContractPDFRepository.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Repositories/ContractPDFRepository.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Models/ShoppingInstance.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/ShoppingInstance.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Repositories/ProductRepository.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Repositories/ProductRepository.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Models/ShoppingOrder.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/ShoppingOrder.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/app/Services/HTMLHelper.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Services/HTMLHelper.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/app/Models/ShoppingOrderItem.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/ShoppingOrderItem.php" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/app/Models/ShoppingUser.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/ShoppingUser.php" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/app/Models/UserHistory.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Models/UserHistory.php" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/app/Services/HomepartyCart.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Services/HomepartyCart.php" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/app/Services/HomepartyUserCart.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Services/HomepartyUserCart.php" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/app/Services/Payment.php" beforeDir="false" afterPath="$PROJECT_DIR$/app/Services/Payment.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/config/app.php" beforeDir="false" afterPath="$PROJECT_DIR$/config/app.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/config/app.php" beforeDir="false" afterPath="$PROJECT_DIR$/config/app.php" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/database/migrations/2019_02_23_161530_create_shopping_users_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_02_23_161530_create_shopping_users_table.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/database/migrations/2019_02_23_163527_create_shopping_orders_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_02_23_163527_create_shopping_orders_table.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/database/migrations/2019_02_23_163527_create_shopping_orders_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_02_23_163527_create_shopping_orders_table.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/database/migrations/2019_02_23_163724_create_shopping_order_items_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_02_23_163724_create_shopping_order_items_table.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/database/migrations/2019_02_23_163724_create_shopping_order_items_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2019_02_23_163724_create_shopping_order_items_table.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/database/migrations/2020_10_15_151059_create_homeparties_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2020_10_15_151059_create_homeparties_table.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/database/migrations/2020_10_15_151059_create_homeparties_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2020_10_15_151059_create_homeparties_table.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/database/migrations/2020_10_15_151136_create_homeparty_users_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2020_10_15_151136_create_homeparty_users_table.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/database/migrations/2020_10_15_151136_create_homeparty_users_table.php" beforeDir="false" afterPath="$PROJECT_DIR$/database/migrations/2020_10_15_151136_create_homeparty_users_table.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/lang/de/navigation.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/lang/de/navigation.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/public/js/iq-homeparty-cart.js" beforeDir="false" afterPath="$PROJECT_DIR$/public/js/iq-homeparty-cart.js" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/admin/category/images.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/category/images.blade.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/admin/product/form.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/product/form.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/admin/product/form.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/product/form.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/admin/site/images.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/site/images.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/admin/sales/_detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/admin/sales/_detail.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/layouts/application.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/layouts/application.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/emails/checkout.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/emails/checkout.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/layouts/includes/layout-sidenav.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/layouts/includes/layout-sidenav.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/emails/checkout_status.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/emails/checkout_status.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/sys/admin/customers.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/sys/admin/customers.blade.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/detail.blade.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/guest_detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/guest_detail.blade.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/guests.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/guests.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/guests.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/guests.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/index.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/index.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/index.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/self_guest_detail.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/self_guest_detail.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/order.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/order.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/user/order/list.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/order/list.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/show_calc_bonus_host.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/show_calc_bonus_host.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/user/order/yard_view_form.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/order/yard_view_form.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/show_products_order.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/show_products_order.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/web/start.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/start.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/user/homeparty/show_total_order.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/user/homeparty/show_total_order.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/kontakt.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/kontakt.blade.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/checkout.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/checkout.blade.php" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/resources/views/web/templates/produkte.blade.php" beforeDir="false" afterPath="$PROJECT_DIR$/resources/views/web/templates/produkte.blade.php" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/routes/web.php" beforeDir="false" afterPath="$PROJECT_DIR$/routes/web.php" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/routes/web.php" beforeDir="false" afterPath="$PROJECT_DIR$/routes/web.php" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
|
|
@ -298,7 +283,7 @@
|
||||||
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
|
||||||
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
||||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/resources/views/user/homeparty" />
|
<property name="last_opened_file_path" value="$PROJECT_DIR$/resources/views/emails" />
|
||||||
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
||||||
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
||||||
<property name="nodejs_package_manager_path" value="npm" />
|
<property name="nodejs_package_manager_path" value="npm" />
|
||||||
|
|
@ -307,11 +292,11 @@
|
||||||
</component>
|
</component>
|
||||||
<component name="RecentsManager">
|
<component name="RecentsManager">
|
||||||
<key name="CopyFile.RECENT_KEYS">
|
<key name="CopyFile.RECENT_KEYS">
|
||||||
|
<recent name="$PROJECT_DIR$/resources/views/emails" />
|
||||||
|
<recent name="$PROJECT_DIR$/resources/views/admin/sales" />
|
||||||
<recent name="$PROJECT_DIR$/resources/views/user/homeparty" />
|
<recent name="$PROJECT_DIR$/resources/views/user/homeparty" />
|
||||||
<recent name="$PROJECT_DIR$/app/Services" />
|
<recent name="$PROJECT_DIR$/app/Services" />
|
||||||
<recent name="$PROJECT_DIR$/public/js" />
|
<recent name="$PROJECT_DIR$/public/js" />
|
||||||
<recent name="$PROJECT_DIR$/resources/views/admin/ingredient" />
|
|
||||||
<recent name="$PROJECT_DIR$/app/Http/Controllers" />
|
|
||||||
</key>
|
</key>
|
||||||
<key name="MoveFile.RECENT_KEYS">
|
<key name="MoveFile.RECENT_KEYS">
|
||||||
<recent name="$PROJECT_DIR$/resources/views/user/order" />
|
<recent name="$PROJECT_DIR$/resources/views/user/order" />
|
||||||
|
|
@ -600,7 +585,8 @@
|
||||||
<workItem from="1605201129884" duration="22000" />
|
<workItem from="1605201129884" duration="22000" />
|
||||||
<workItem from="1605201310540" duration="157000" />
|
<workItem from="1605201310540" duration="157000" />
|
||||||
<workItem from="1605599347354" duration="281000" />
|
<workItem from="1605599347354" duration="281000" />
|
||||||
<workItem from="1608113166691" duration="26240000" />
|
<workItem from="1608113166691" duration="26421000" />
|
||||||
|
<workItem from="1608198795441" duration="30640000" />
|
||||||
</task>
|
</task>
|
||||||
<servers />
|
<servers />
|
||||||
</component>
|
</component>
|
||||||
|
|
|
||||||
|
|
@ -79,6 +79,9 @@ class SalesController extends Controller
|
||||||
if($ShoppingOrder->shopping_user->is_for === 'ot'){
|
if($ShoppingOrder->shopping_user->is_for === 'ot'){
|
||||||
return '<span class="badge badge-pill badge-info">Kundenbestellung</span>';
|
return '<span class="badge badge-pill badge-info">Kundenbestellung</span>';
|
||||||
}
|
}
|
||||||
|
if($ShoppingOrder->shopping_user->is_for === 'hp'){
|
||||||
|
return '<span class="badge badge-pill badge-dark">Homepartybestellung</span>';
|
||||||
|
}
|
||||||
return '-';
|
return '-';
|
||||||
})
|
})
|
||||||
->addColumn('reference', function (ShoppingOrder $ShoppingOrder) {
|
->addColumn('reference', function (ShoppingOrder $ShoppingOrder) {
|
||||||
|
|
@ -221,6 +224,9 @@ class SalesController extends Controller
|
||||||
if($ShoppingOrder->shopping_user->is_for === 'ot'){
|
if($ShoppingOrder->shopping_user->is_for === 'ot'){
|
||||||
return '<span class="badge badge-pill badge-info">Kundenbestellung</span>';
|
return '<span class="badge badge-pill badge-info">Kundenbestellung</span>';
|
||||||
}
|
}
|
||||||
|
if($ShoppingOrder->shopping_user->is_for === 'hp'){
|
||||||
|
return '<span class="badge badge-pill badge-dark">Homepartybestellung</span>';
|
||||||
|
}
|
||||||
return '-';
|
return '-';
|
||||||
})
|
})
|
||||||
->addColumn('reference', function (ShoppingOrder $ShoppingOrder) {
|
->addColumn('reference', function (ShoppingOrder $ShoppingOrder) {
|
||||||
|
|
|
||||||
|
|
@ -54,6 +54,11 @@ class HomepartyController extends Controller
|
||||||
$homeparty_user = new HomepartyUser();
|
$homeparty_user = new HomepartyUser();
|
||||||
$homeparty_user->is_host = true;
|
$homeparty_user->is_host = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($homeparty->completed){
|
||||||
|
abort(404);
|
||||||
|
}
|
||||||
|
|
||||||
$data = [
|
$data = [
|
||||||
'homeparty' => $homeparty,
|
'homeparty' => $homeparty,
|
||||||
'homeparty_user' => $homeparty_user,
|
'homeparty_user' => $homeparty_user,
|
||||||
|
|
@ -155,6 +160,9 @@ class HomepartyController extends Controller
|
||||||
abort(404);
|
abort(404);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if($homeparty->completed){
|
||||||
|
abort(404);
|
||||||
|
}
|
||||||
$data = [
|
$data = [
|
||||||
'homeparty' => $homeparty,
|
'homeparty' => $homeparty,
|
||||||
'homeparty_user' => $homeparty_user,
|
'homeparty_user' => $homeparty_user,
|
||||||
|
|
@ -213,18 +221,25 @@ class HomepartyController extends Controller
|
||||||
|
|
||||||
public function order($id = null)
|
public function order($id = null)
|
||||||
{
|
{
|
||||||
|
$user = User::find(Auth::user()->id);
|
||||||
|
|
||||||
$homeparty = $this->getHomparty($id);
|
$homeparty = $this->getHomparty($id);
|
||||||
HomepartyCart::calculateHomeparty($homeparty);
|
HomepartyCart::calculateHomeparty($homeparty);
|
||||||
|
$userHistoryPaymentOrder = UserHistory::whereUserId($user->id)->whereAction('payment_homeparty')->where('referenz', $homeparty->id)->get()->last();
|
||||||
$data = [
|
$data = [
|
||||||
'homeparty' => $homeparty,
|
'homeparty' => $homeparty,
|
||||||
|
'userHistoryPaymentOrder' => $userHistoryPaymentOrder,
|
||||||
];
|
];
|
||||||
return view('user.homeparty.order', $data);
|
return view('user.homeparty.order', $data);
|
||||||
}
|
}
|
||||||
//perform Request
|
//perform Request
|
||||||
public function orderStore($id = null)
|
public function orderStore($id = null)
|
||||||
{
|
{
|
||||||
|
|
||||||
$homeparty = $this->getHomparty($id);
|
$homeparty = $this->getHomparty($id);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if(Request::ajax()) {
|
if(Request::ajax()) {
|
||||||
$data = Request::all();
|
$data = Request::all();
|
||||||
|
|
||||||
|
|
@ -265,7 +280,7 @@ class HomepartyController extends Controller
|
||||||
}
|
}
|
||||||
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
||||||
HomepartyCart::calculateHomeparty($homeparty);
|
HomepartyCart::calculateHomeparty($homeparty);
|
||||||
$html_user_cart = view("user.homeparty.show_products_order", ['homeparty_guest' => $homeparty_user])->render();
|
$html_user_cart = view("user.homeparty.show_products_order", ['homeparty' => $homeparty, 'homeparty_guest' => $homeparty_user])->render();
|
||||||
$html_bonus = view("user.homeparty.show_bonus", ['homeparty' => $homeparty])->render();
|
$html_bonus = view("user.homeparty.show_bonus", ['homeparty' => $homeparty])->render();
|
||||||
$html_host_bonus = view("user.homeparty.show_calc_bonus_host")->render();
|
$html_host_bonus = view("user.homeparty.show_calc_bonus_host")->render();
|
||||||
$html_total = view("user.homeparty.show_total_order", ['homeparty' => $homeparty])->render();
|
$html_total = view("user.homeparty.show_total_order", ['homeparty' => $homeparty])->render();
|
||||||
|
|
@ -292,7 +307,7 @@ class HomepartyController extends Controller
|
||||||
}
|
}
|
||||||
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
||||||
HomepartyCart::calculateHomeparty($homeparty);
|
HomepartyCart::calculateHomeparty($homeparty);
|
||||||
$html_user_cart = view("user.homeparty.show_products_order", ['homeparty_guest' => $homeparty_user])->render();
|
$html_user_cart = view("user.homeparty.show_products_order", ['homeparty' => $homeparty, 'homeparty_guest' => $homeparty_user])->render();
|
||||||
$html_bonus = view("user.homeparty.show_bonus", ['homeparty' => $homeparty])->render();
|
$html_bonus = view("user.homeparty.show_bonus", ['homeparty' => $homeparty])->render();
|
||||||
$html_host_bonus = view("user.homeparty.show_calc_bonus_host")->render();
|
$html_host_bonus = view("user.homeparty.show_calc_bonus_host")->render();
|
||||||
$html_total = view("user.homeparty.show_total_order", ['homeparty' => $homeparty])->render();
|
$html_total = view("user.homeparty.show_total_order", ['homeparty' => $homeparty])->render();
|
||||||
|
|
@ -313,20 +328,81 @@ class HomepartyController extends Controller
|
||||||
}
|
}
|
||||||
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
||||||
HomepartyCart::calculateHomeparty($homeparty);
|
HomepartyCart::calculateHomeparty($homeparty);
|
||||||
$html_user_cart = view("user.homeparty.show_products_order", ['homeparty_guest' => $homeparty_user])->render();
|
$html_user_cart = view("user.homeparty.show_products_order", ['homeparty' => $homeparty, 'homeparty_guest' => $homeparty_user])->render();
|
||||||
$html_bonus = view("user.homeparty.show_bonus", ['homeparty' => $homeparty])->render();
|
$html_bonus = view("user.homeparty.show_bonus", ['homeparty' => $homeparty])->render();
|
||||||
$html_host_bonus = view("user.homeparty.show_calc_bonus_host")->render();
|
$html_host_bonus = view("user.homeparty.show_calc_bonus_host")->render();
|
||||||
$html_total = view("user.homeparty.show_total_order", ['homeparty' => $homeparty])->render();
|
$html_total = view("user.homeparty.show_total_order", ['homeparty' => $homeparty])->render();
|
||||||
return response()->json(['response' => true, 'data'=>$data, 'html_user_cart'=>$html_user_cart, 'html_bonus'=>$html_bonus, 'html_host_bonus'=>$html_host_bonus, 'html_total'=>$html_total]);
|
return response()->json(['response' => true, 'data'=>$data, 'html_user_cart'=>$html_user_cart, 'html_bonus'=>$html_bonus, 'html_host_bonus'=>$html_host_bonus, 'html_total'=>$html_total]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if($data['action'] === 'updateDeliveryOption') {
|
||||||
|
if($data['homeparty_id'] == $homeparty->id){
|
||||||
|
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
||||||
|
if($homeparty_user->homeparty_id !== $homeparty->id){
|
||||||
|
abort(404);
|
||||||
|
}
|
||||||
|
if(isset($data['delivery'])){
|
||||||
|
$homeparty_user->delivery = $data['delivery'];
|
||||||
|
$homeparty_user->save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$homeparty_user = HomepartyUser::findOrFail($data['homeparty_user_id']);
|
||||||
|
HomepartyCart::calculateHomeparty($homeparty);
|
||||||
|
$html_user_cart = view("user.homeparty.show_products_order", ['homeparty' => $homeparty, 'homeparty_guest' => $homeparty_user])->render();
|
||||||
|
$html_bonus = view("user.homeparty.show_bonus", ['homeparty' => $homeparty])->render();
|
||||||
|
$html_host_bonus = view("user.homeparty.show_calc_bonus_host")->render();
|
||||||
|
$html_total = view("user.homeparty.show_total_order", ['homeparty' => $homeparty])->render();
|
||||||
|
return response()->json(['response' => true, 'data'=>$data, 'html_user_cart'=>$html_user_cart, 'html_bonus'=>$html_bonus, 'html_host_bonus'=>$html_host_bonus, 'html_total'=>$html_total]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
return response()->json(['response' => false, 'data'=>$data]);
|
return response()->json(['response' => false, 'data'=>$data]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* $data = [
|
HomepartyCart::calculateHomeparty($homeparty);
|
||||||
'homeparty' => $homeparty,
|
if(\App\Services\HomepartyCart::$price === 0){
|
||||||
];
|
\Session()->flash('alert-error', 'Dein Warenkorb ist leer, bitte füge erst Produkte hinzu.');
|
||||||
return view('user.homeparty.order', $data);*/
|
return redirect(route('user_homeparty_order', [$homeparty->id]));
|
||||||
|
}
|
||||||
|
|
||||||
|
//save the calucalte card!
|
||||||
|
$time = time();
|
||||||
|
$date = date('d.m.Y H:i:s', $time);
|
||||||
|
$user = User::find(Auth::user()->id);
|
||||||
|
Yard::instance('shopping')->destroy();
|
||||||
|
Yard::instance('shopping')->add($homeparty->id, 'Bestellung Homeparty '.$date, 1, \App\Services\HomepartyCart::$price, ['image' => "", 'slug' => $time, 'weight' => 0]);
|
||||||
|
do {
|
||||||
|
$identifier = Util::getToken();
|
||||||
|
} while( ShoppingInstance::where('identifier', $identifier)->count() );
|
||||||
|
|
||||||
|
HomepartyCart::store($identifier, $date);
|
||||||
|
|
||||||
|
$data = [];
|
||||||
|
$data['is_from'] = 'homeparty';
|
||||||
|
$data['shop_price_net'] = HomepartyCart::getFormattedPriceNet();
|
||||||
|
$data['shop_price_tax'] = HomepartyCart::getFormattedPriceTax();
|
||||||
|
$data['homeparty_id'] = $homeparty->id;
|
||||||
|
$data['is_for'] = 'hp';
|
||||||
|
|
||||||
|
ShoppingInstance::create([
|
||||||
|
'identifier' => $identifier,
|
||||||
|
'user_shop_id' => 1, //is first faker shop for nuy intern
|
||||||
|
'auth_user_id' => Auth::user()->id,
|
||||||
|
'payment' => 5, //Berater Membership
|
||||||
|
'subdomain' => url('/'),
|
||||||
|
'country_id' => Yard::instance('shopping')->getShippingCountryId(),
|
||||||
|
'shopping_data' => $data,
|
||||||
|
'back' => url()->previous(),
|
||||||
|
|
||||||
|
]);
|
||||||
|
|
||||||
|
HomepartyCart::store($identifier, $date);
|
||||||
|
Yard::instance('shopping')->store($identifier);
|
||||||
|
|
||||||
|
$path = route('checkout.checkout_card', ['identifier'=>$identifier]);
|
||||||
|
UserHistory::create(['user_id' => $user->id, 'action'=>'payment_homeparty', 'status'=>1, 'referenz'=>$homeparty->id, 'identifier'=>$identifier]);
|
||||||
|
//$path = str_replace('http', 'https', $path);
|
||||||
|
return redirect()->secure($path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -84,6 +84,9 @@ class OrderController extends Controller
|
||||||
if($ShoppingOrder->shopping_user->is_for === 'ot'){
|
if($ShoppingOrder->shopping_user->is_for === 'ot'){
|
||||||
return '<span class="badge badge-pill badge-info">Kundenbestellung</span>';
|
return '<span class="badge badge-pill badge-info">Kundenbestellung</span>';
|
||||||
}
|
}
|
||||||
|
if($ShoppingOrder->shopping_user->is_for === 'hp'){
|
||||||
|
return '<span class="badge badge-pill badge-dark">Homepartybestellung</span>';
|
||||||
|
}
|
||||||
return '-';
|
return '-';
|
||||||
})
|
})
|
||||||
->addColumn('reference', function (ShoppingOrder $ShoppingOrder) {
|
->addColumn('reference', function (ShoppingOrder $ShoppingOrder) {
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ namespace App\Http\Controllers\Web;
|
||||||
|
|
||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Http\Controllers\Pay\PayoneController;
|
use App\Http\Controllers\Pay\PayoneController;
|
||||||
|
use App\Models\Homeparty;
|
||||||
use App\Models\PaymentMethod;
|
use App\Models\PaymentMethod;
|
||||||
use App\Models\PaymentTransaction;
|
use App\Models\PaymentTransaction;
|
||||||
use App\Models\ShippingCountry;
|
use App\Models\ShippingCountry;
|
||||||
|
|
@ -48,6 +49,7 @@ class CheckoutController extends Controller
|
||||||
|
|
||||||
$is_from = isset($shopping_data['is_from']) ? $shopping_data['is_from'] : 'shopping';
|
$is_from = isset($shopping_data['is_from']) ? $shopping_data['is_from'] : 'shopping';
|
||||||
$is_for = isset($shopping_data['is_for']) ? $shopping_data['is_for'] : false;
|
$is_for = isset($shopping_data['is_for']) ? $shopping_data['is_for'] : false;
|
||||||
|
$homeparty_id = isset($shopping_data['homeparty_id']) ? $shopping_data['homeparty_id'] : null;
|
||||||
$shopping_user = null;
|
$shopping_user = null;
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -76,6 +78,7 @@ class CheckoutController extends Controller
|
||||||
$shopping_user = new ShoppingUser();
|
$shopping_user = new ShoppingUser();
|
||||||
$shopping_user->is_for = $is_for;
|
$shopping_user->is_for = $is_for;
|
||||||
$shopping_user->is_from = $is_from;
|
$shopping_user->is_from = $is_from;
|
||||||
|
$shopping_user->homeparty_id = $homeparty_id;
|
||||||
$shopping_user->mode = 'prev';
|
$shopping_user->mode = 'prev';
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
|
|
@ -117,6 +120,7 @@ class CheckoutController extends Controller
|
||||||
$data = [
|
$data = [
|
||||||
'is_from' => $is_from,
|
'is_from' => $is_from,
|
||||||
'is_for' => $is_for,
|
'is_for' => $is_for,
|
||||||
|
'shopping_data' => $shopping_data,
|
||||||
'user_shop' => Util::getUserShop(),
|
'user_shop' => Util::getUserShop(),
|
||||||
'shopping_user' => $shopping_user,
|
'shopping_user' => $shopping_user,
|
||||||
'shopping_mode' => Util::getUserShoppingMode(),
|
'shopping_mode' => Util::getUserShoppingMode(),
|
||||||
|
|
@ -151,6 +155,8 @@ class CheckoutController extends Controller
|
||||||
$shopping_user->accepted_data_checkbox = 1;
|
$shopping_user->accepted_data_checkbox = 1;
|
||||||
$shopping_user->is_for = $is_for;
|
$shopping_user->is_for = $is_for;
|
||||||
$shopping_user->is_from = $is_from;
|
$shopping_user->is_from = $is_from;
|
||||||
|
$shopping_user->homeparty_id = isset($data['homeparty_id']) ? $data['homeparty_id'] : null;
|
||||||
|
|
||||||
//Lieferadresse
|
//Lieferadresse
|
||||||
if($is_from === 'user_order'){
|
if($is_from === 'user_order'){
|
||||||
if(isset($data['shopping_user_id']) && $data['is_for'] === 'ot'){
|
if(isset($data['shopping_user_id']) && $data['is_for'] === 'ot'){
|
||||||
|
|
@ -456,30 +462,50 @@ class CheckoutController extends Controller
|
||||||
|
|
||||||
$user_shop = Util::getUserShop();
|
$user_shop = Util::getUserShop();
|
||||||
|
|
||||||
$data = [
|
if($shopping_user->is_from === 'homeparty'){
|
||||||
'shopping_user_id' => $shopping_user->id,
|
//get data
|
||||||
'auth_user_id' => $shopping_user->auth_user_id,
|
$homeparty = Homeparty::find($shopping_user->homeparty_id);
|
||||||
'country_id' => Yard::instance('shopping')->getShippingCountryId(),
|
//set Data!
|
||||||
'user_shop_id' => $user_shop->id,
|
$data = [
|
||||||
'payment_for' => Util::getUserPaymentFor(),
|
'shopping_user_id' => $shopping_user->id,
|
||||||
|
'auth_user_id' => $shopping_user->auth_user_id,
|
||||||
|
'country_id' => Yard::instance('shopping')->getShippingCountryId(),
|
||||||
|
'user_shop_id' => $user_shop->id,
|
||||||
|
'payment_for' => Util::getUserPaymentFor(),
|
||||||
|
'homeparty_id' => $shopping_user->homeparty_id,
|
||||||
|
'total' => Yard::instance('shopping')->total(2, '.', ''),
|
||||||
|
'subtotal' => $homeparty->order['price_net'],
|
||||||
|
'shipping' => $homeparty->order['shipping_price'],
|
||||||
|
'shipping_net' => $homeparty->order['shipping_price_net'],
|
||||||
|
'subtotal_ws' => 0,
|
||||||
|
'tax' => 0,
|
||||||
|
'total_shipping' => Yard::instance('shopping')->totalWithShipping(2, '.', ''),
|
||||||
|
'points' => $homeparty->order['points'],
|
||||||
|
'weight' => 0,
|
||||||
|
'txaction' => 'prev',
|
||||||
|
'mode' => Util::getUserShoppingMode(),
|
||||||
|
];
|
||||||
|
}else{
|
||||||
|
$data = [
|
||||||
|
'shopping_user_id' => $shopping_user->id,
|
||||||
|
'auth_user_id' => $shopping_user->auth_user_id,
|
||||||
|
'country_id' => Yard::instance('shopping')->getShippingCountryId(),
|
||||||
|
'user_shop_id' => $user_shop->id,
|
||||||
|
'payment_for' => Util::getUserPaymentFor(),
|
||||||
|
'total' => Yard::instance('shopping')->total(2, '.', ''),
|
||||||
|
'subtotal' => Yard::instance('shopping')->subtotal(2, '.', ''),
|
||||||
|
'shipping' => Yard::instance('shopping')->shipping(2, '.', ','),
|
||||||
|
'shipping_net' => Yard::instance('shopping')->shippingNet(2, '.', ''),
|
||||||
|
'subtotal_ws' => Yard::instance('shopping')->subtotalWithShipping(2, '.', ''),
|
||||||
|
'tax' => Yard::instance('shopping')->taxWithShipping(2, '.', ''),
|
||||||
|
'total_shipping' => Yard::instance('shopping')->totalWithShipping(2, '.', ''),
|
||||||
|
'points' => Yard::instance('shopping')->points(),
|
||||||
|
'weight' => Yard::instance('shopping')->weight(),
|
||||||
|
'txaction' => 'prev',
|
||||||
|
'mode' => Util::getUserShoppingMode(),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
'total' => Yard::instance('shopping')->total(2, '.', ''),
|
|
||||||
'subtotal' => Yard::instance('shopping')->subtotal(2, '.', ''),
|
|
||||||
|
|
||||||
'shipping' => Yard::instance('shopping')->shipping(2, '.', ','),
|
|
||||||
'shipping_net' => Yard::instance('shopping')->shippingNet(2, '.', ''),
|
|
||||||
'subtotal_ws' => Yard::instance('shopping')->subtotalWithShipping(2, '.', ''),
|
|
||||||
|
|
||||||
'tax' => Yard::instance('shopping')->taxWithShipping(2, '.', ''),
|
|
||||||
'total_shipping' => Yard::instance('shopping')->totalWithShipping(2, '.', ''),
|
|
||||||
|
|
||||||
'points' => Yard::instance('shopping')->points(),
|
|
||||||
|
|
||||||
'weight' => Yard::instance('shopping')->weight(),
|
|
||||||
'txaction' => 'prev',
|
|
||||||
'mode' => Util::getUserShoppingMode(),
|
|
||||||
];
|
|
||||||
$shopping_order= false;
|
$shopping_order= false;
|
||||||
if($this->getPayments('shopping_order_id')){
|
if($this->getPayments('shopping_order_id')){
|
||||||
$shopping_order = ShoppingOrder::find($this->getPayments('shopping_order_id'));
|
$shopping_order = ShoppingOrder::find($this->getPayments('shopping_order_id'));
|
||||||
|
|
@ -493,13 +519,11 @@ class CheckoutController extends Controller
|
||||||
}
|
}
|
||||||
$this->putPayments('shopping_order_id', $shopping_order->id);
|
$this->putPayments('shopping_order_id', $shopping_order->id);
|
||||||
|
|
||||||
|
$items = Yard::instance('shopping')->getContentByOrder();
|
||||||
$items = Yard::instance('shopping')->getContentByOrder();
|
$shopping_order->shopping_order_items()->each(function($model) use ($items, $shopping_order, $shopping_user) {
|
||||||
|
foreach ($items as $item) {
|
||||||
$shopping_order->shopping_order_items()->each(function($model) use ($items, $shopping_order) {
|
|
||||||
foreach ($items as $item) {
|
|
||||||
if ($model->row_id === $item->rowId) {
|
if ($model->row_id === $item->rowId) {
|
||||||
$model->fill([
|
$data = [
|
||||||
'shopping_order_id' => $shopping_order->id,
|
'shopping_order_id' => $shopping_order->id,
|
||||||
'row_id' => $item->rowId,
|
'row_id' => $item->rowId,
|
||||||
'product_id' => $item->id,
|
'product_id' => $item->id,
|
||||||
|
|
@ -509,27 +533,43 @@ class CheckoutController extends Controller
|
||||||
'price_net' => Yard::instance('shopping')->rowPriceNet($item, 3, '.', ''),
|
'price_net' => Yard::instance('shopping')->rowPriceNet($item, 3, '.', ''),
|
||||||
'tax_rate' => $item->taxRate,
|
'tax_rate' => $item->taxRate,
|
||||||
'slug' => $item->options->slug,
|
'slug' => $item->options->slug,
|
||||||
])->save();
|
];
|
||||||
|
if($shopping_user->is_from === 'homeparty'){
|
||||||
|
$data['homeparty_id'] = (int) $shopping_user->homeparty_id;
|
||||||
|
$data['product_id'] = null;
|
||||||
|
}
|
||||||
|
$model->fill($data)->save();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $model->delete();
|
return $model->delete();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
foreach ($items as $item) {
|
foreach ($items as $item) {
|
||||||
if (!ShoppingOrderItem::where('shopping_order_id', $shopping_order->id)->where('row_id', $item->rowId)->count())
|
if (!ShoppingOrderItem::where('shopping_order_id', $shopping_order->id)->where('row_id', $item->rowId)->count()){
|
||||||
ShoppingOrderItem::create([
|
$data = [
|
||||||
'shopping_order_id' => $shopping_order->id,
|
'shopping_order_id' => $shopping_order->id,
|
||||||
'row_id' => $item->rowId,
|
'row_id' => $item->rowId,
|
||||||
'product_id' => $item->id,
|
'product_id' => 70,
|
||||||
'comp' => $item->options->comp,
|
'comp' => $item->options->comp,
|
||||||
'qty' => $item->qty,
|
'qty' => $item->qty,
|
||||||
'price' => $item->price,
|
'price' => $item->price,
|
||||||
'price_net' => Yard::instance('shopping')->rowPriceNet($item, 3, '.', ''),
|
'price_net' => Yard::instance('shopping')->rowPriceNet($item, 3, '.', ''),
|
||||||
'tax_rate' => $item->taxRate,
|
'tax_rate' => $item->taxRate,
|
||||||
'slug' => $item->options->slug
|
'slug' => $item->options->slug
|
||||||
]);
|
];
|
||||||
};
|
|
||||||
|
if($shopping_user->is_from === 'homeparty'){
|
||||||
|
$data['homeparty_id'] = (int) $shopping_user->homeparty_id;
|
||||||
|
$data['product_id'] = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
$shopping_order_item = ShoppingOrderItem::create($data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
return $shopping_order;
|
return $shopping_order;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,9 @@ class Homeparty extends Model
|
||||||
'order_to' => 'bool',
|
'order_to' => 'bool',
|
||||||
'active' => 'bool',
|
'active' => 'bool',
|
||||||
'default' => 'bool',
|
'default' => 'bool',
|
||||||
'token_active' => 'bool'
|
'token_active' => 'bool',
|
||||||
|
'settings' => 'array',
|
||||||
|
'order' => 'array'
|
||||||
];
|
];
|
||||||
|
|
||||||
protected $dates = [
|
protected $dates = [
|
||||||
|
|
@ -94,6 +96,8 @@ class Homeparty extends Model
|
||||||
'default',
|
'default',
|
||||||
'token',
|
'token',
|
||||||
'token_active',
|
'token_active',
|
||||||
|
'settings',
|
||||||
|
'order'
|
||||||
];
|
];
|
||||||
|
|
||||||
public function auth_user()
|
public function auth_user()
|
||||||
|
|
|
||||||
|
|
@ -123,7 +123,9 @@ class HomepartyUser extends Model
|
||||||
'shipping_country_id' => 'int',
|
'shipping_country_id' => 'int',
|
||||||
'has_buyed' => 'bool',
|
'has_buyed' => 'bool',
|
||||||
'subscribed' => 'bool',
|
'subscribed' => 'bool',
|
||||||
];
|
'settings' => 'array',
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
protected $dates = [
|
protected $dates = [
|
||||||
'user_deleted_at'
|
'user_deleted_at'
|
||||||
|
|
@ -161,7 +163,9 @@ class HomepartyUser extends Model
|
||||||
'subscribed',
|
'subscribed',
|
||||||
'notice',
|
'notice',
|
||||||
'mode',
|
'mode',
|
||||||
'user_deleted_at'
|
'settings',
|
||||||
|
'delivery',
|
||||||
|
'user_deleted_at'
|
||||||
];
|
];
|
||||||
|
|
||||||
public function homeparty()
|
public function homeparty()
|
||||||
|
|
@ -190,9 +194,27 @@ class HomepartyUser extends Model
|
||||||
}
|
}
|
||||||
|
|
||||||
public function isAddress(){
|
public function isAddress(){
|
||||||
if($this->billing_firstname !== null){
|
if($this->billing_firstname !== null && $this->billing_country_id !== null){
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getDelivery(){
|
||||||
|
return $this->delivery === 'direct' ? 'direct' : 'host';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public function getShipping(){
|
||||||
|
if($this->same_as_billing){
|
||||||
|
$country_id = $this->billing_country_id != null ? $this->billing_country_id : 1;
|
||||||
|
}else{
|
||||||
|
$country_id = $this->shipping_country_id != null ? $this->shipping_country_id : 1;
|
||||||
|
}
|
||||||
|
$shippingCountry = ShippingCountry::whereCountryId($country_id)->first();
|
||||||
|
if(!$shippingCountry){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return $shippingCountry->shipping;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -174,6 +174,8 @@ class Product extends Model
|
||||||
'show_order' => 'Wird immer als Option angezeigt',
|
'show_order' => 'Wird immer als Option angezeigt',
|
||||||
'upgrade' => 'Produktupgrade zur Produkt ID',
|
'upgrade' => 'Produktupgrade zur Produkt ID',
|
||||||
'upgrade_member' => 'Beraterupgrade zur Karriere ID',
|
'upgrade_member' => 'Beraterupgrade zur Karriere ID',
|
||||||
|
'proportional_voucher' => 'Anteiliger Gutschein Berater',
|
||||||
|
|
||||||
|
|
||||||
];
|
];
|
||||||
public $unitTypes = [
|
public $unitTypes = [
|
||||||
|
|
@ -192,6 +194,7 @@ class Product extends Model
|
||||||
4 => 'Nur Mitgliedschaft Berater',
|
4 => 'Nur Mitgliedschaft Berater',
|
||||||
5 => 'Onboarding Berater',
|
5 => 'Onboarding Berater',
|
||||||
6 => 'Onboarding Berater + Berater Shop',
|
6 => 'Onboarding Berater + Berater Shop',
|
||||||
|
7 => 'zur internen Berechnung',
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,7 @@ class ShoppingInstance extends Model
|
||||||
2 => 'Berater Shop',
|
2 => 'Berater Shop',
|
||||||
3 => 'Berater Membership',
|
3 => 'Berater Membership',
|
||||||
4 => 'Berater Wizard',
|
4 => 'Berater Wizard',
|
||||||
|
5 => 'Berater Homeparty',
|
||||||
];
|
];
|
||||||
|
|
||||||
protected $table = 'shopping_instances';
|
protected $table = 'shopping_instances';
|
||||||
|
|
|
||||||
|
|
@ -92,6 +92,7 @@ class ShoppingOrder extends Model
|
||||||
'shopping_user_id',
|
'shopping_user_id',
|
||||||
'auth_user_id',
|
'auth_user_id',
|
||||||
'member_id',
|
'member_id',
|
||||||
|
'homeparty_id',
|
||||||
'country_id',
|
'country_id',
|
||||||
'user_shop_id',
|
'user_shop_id',
|
||||||
'total',
|
'total',
|
||||||
|
|
@ -143,6 +144,11 @@ class ShoppingOrder extends Model
|
||||||
return $this->belongsTo('App\Models\ShippingCountry','country_id');
|
return $this->belongsTo('App\Models\ShippingCountry','country_id');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function homeparty()
|
||||||
|
{
|
||||||
|
return $this->belongsTo('App\Models\Homeparty','homeparty_id');
|
||||||
|
}
|
||||||
|
|
||||||
public function user_shop()
|
public function user_shop()
|
||||||
{
|
{
|
||||||
return $this->belongsTo('App\Models\UserShop','user_shop_id');
|
return $this->belongsTo('App\Models\UserShop','user_shop_id');
|
||||||
|
|
|
||||||
|
|
@ -57,6 +57,7 @@ class ShoppingOrderItem extends Model
|
||||||
'shopping_order_id',
|
'shopping_order_id',
|
||||||
'row_id',
|
'row_id',
|
||||||
'product_id',
|
'product_id',
|
||||||
|
'homeparty_id',
|
||||||
'comp',
|
'comp',
|
||||||
'qty',
|
'qty',
|
||||||
'price',
|
'price',
|
||||||
|
|
@ -76,6 +77,11 @@ class ShoppingOrderItem extends Model
|
||||||
return $this->belongsTo('App\Models\Product','product_id');
|
return $this->belongsTo('App\Models\Product','product_id');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function homeparty()
|
||||||
|
{
|
||||||
|
return $this->belongsTo('App\Models\Homeparty','homeparty_id');
|
||||||
|
}
|
||||||
|
|
||||||
public function getFormattedPrice()
|
public function getFormattedPrice()
|
||||||
{
|
{
|
||||||
return formatNumber($this->attributes['price']);
|
return formatNumber($this->attributes['price']);
|
||||||
|
|
|
||||||
|
|
@ -160,6 +160,7 @@ class ShoppingUser extends Model
|
||||||
'is_for',
|
'is_for',
|
||||||
'is_from',
|
'is_from',
|
||||||
'shopping_user_id',
|
'shopping_user_id',
|
||||||
|
'homeparty_id',
|
||||||
'wp_order_number',
|
'wp_order_number',
|
||||||
'wp_order_date',
|
'wp_order_date',
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -79,11 +79,11 @@ class UserHistory extends Model
|
||||||
2 => 'warning',
|
2 => 'warning',
|
||||||
3 => 'danger',
|
3 => 'danger',
|
||||||
4 => 'warning',
|
4 => 'warning',
|
||||||
5 => 'success',
|
5 => 'warning',
|
||||||
6 => 'danger',
|
6 => 'danger',
|
||||||
7 => 'warning',
|
7 => 'warning',
|
||||||
8 => 'success',
|
8 => 'success',
|
||||||
9 => 'success',
|
9 => 'secondary',
|
||||||
10 => 'success',
|
10 => 'success',
|
||||||
21 => 'danger',
|
21 => 'danger',
|
||||||
22 => 'danger',
|
22 => 'danger',
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,8 @@ namespace App\Services;
|
||||||
|
|
||||||
|
|
||||||
use App\Models\Homeparty;
|
use App\Models\Homeparty;
|
||||||
|
use App\Models\Product;
|
||||||
|
use App\Models\ShippingCountry;
|
||||||
|
|
||||||
class HomepartyCart
|
class HomepartyCart
|
||||||
{
|
{
|
||||||
|
|
@ -26,6 +28,9 @@ class HomepartyCart
|
||||||
public static $ek_price = 0;
|
public static $ek_price = 0;
|
||||||
public static $income_price = 0;
|
public static $income_price = 0;
|
||||||
|
|
||||||
|
private static $shipping_total = 0;
|
||||||
|
private static $shipping_net_total = 0;
|
||||||
|
|
||||||
private static $homeparty;
|
private static $homeparty;
|
||||||
private static $userCarts = [];
|
private static $userCarts = [];
|
||||||
|
|
||||||
|
|
@ -34,10 +39,14 @@ class HomepartyCart
|
||||||
public static $is_bonus = false;
|
public static $is_bonus = false;
|
||||||
public static $is_bonus_coupon = false;
|
public static $is_bonus_coupon = false;
|
||||||
|
|
||||||
|
|
||||||
private static $bonus_coupon = 0;
|
private static $bonus_coupon = 0;
|
||||||
private static $bonus_value = 30;
|
private static $bonus_value = 30;
|
||||||
|
|
||||||
private static $bonus_price = 0;
|
private static $voucher_price = 0;
|
||||||
|
public static $voucher_name = "";
|
||||||
|
|
||||||
|
|
||||||
private static $bonus_diff = 0;
|
private static $bonus_diff = 0;
|
||||||
private static $bonus_points_diff = 0;
|
private static $bonus_points_diff = 0;
|
||||||
private static $bonus_coupon_fault = 0;
|
private static $bonus_coupon_fault = 0;
|
||||||
|
|
@ -51,7 +60,6 @@ class HomepartyCart
|
||||||
500 => 35,
|
500 => 35,
|
||||||
600 => 40,
|
600 => 40,
|
||||||
700 => 50,
|
700 => 50,
|
||||||
|
|
||||||
];
|
];
|
||||||
public static function calculateHomeparty(Homeparty $homeparty){
|
public static function calculateHomeparty(Homeparty $homeparty){
|
||||||
|
|
||||||
|
|
@ -62,7 +70,9 @@ class HomepartyCart
|
||||||
}
|
}
|
||||||
self::$userCarts[$homeparty_user->id] = new HomepartyUserCart($homeparty_user);
|
self::$userCarts[$homeparty_user->id] = new HomepartyUserCart($homeparty_user);
|
||||||
self::addCart(self::$userCarts[$homeparty_user->id]);
|
self::addCart(self::$userCarts[$homeparty_user->id]);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
self::caluclateShipping();
|
||||||
self::caluclateBonus();
|
self::caluclateBonus();
|
||||||
self::calculateBonusHost();
|
self::calculateBonusHost();
|
||||||
}
|
}
|
||||||
|
|
@ -80,15 +90,16 @@ class HomepartyCart
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static function caluclateBonus(){
|
private static function caluclateBonus(){
|
||||||
|
|
||||||
if(self::$price >= 200){
|
if(self::$price >= 200){
|
||||||
self::$is_bonus = true;
|
self::$is_bonus = true;
|
||||||
|
$proportional_voucher = Product::whereIdentifier('proportional_voucher')->first();
|
||||||
|
self::$voucher_price = $proportional_voucher->price;
|
||||||
|
self::$voucher_name = $proportional_voucher->getLang('name');
|
||||||
|
|
||||||
//TODO get from PRODUCT
|
self::$price += self::$voucher_price;
|
||||||
self::$bonus_price = 11.90;
|
self::$price_net += $proportional_voucher->getPriceWith(true, false);
|
||||||
self::$price += self::$bonus_price;
|
|
||||||
self::$price_net += 10;
|
|
||||||
|
|
||||||
$bonus_tmp = self::$price - self::$bonus_value;
|
$bonus_tmp = self::$price - self::$bonus_value;
|
||||||
|
|
||||||
|
|
@ -118,7 +129,7 @@ class HomepartyCart
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function calculateBonusHost(){
|
private static function calculateBonusHost(){
|
||||||
if(self::$is_bonus){
|
if(self::$is_bonus){
|
||||||
$bonus_total = self::$bonus_value + self::$bonus_coupon;
|
$bonus_total = self::$bonus_value + self::$bonus_coupon;
|
||||||
$user_cart = self::getUserCart(self::$user_host_id);
|
$user_cart = self::getUserCart(self::$user_host_id);
|
||||||
|
|
@ -133,11 +144,140 @@ class HomepartyCart
|
||||||
$bonus_percent = (100/$user_cart->price*$bonus_total);
|
$bonus_percent = (100/$user_cart->price*$bonus_total);
|
||||||
self::$bonus_points_diff = round($user_cart->points/100*$bonus_percent);
|
self::$bonus_points_diff = round($user_cart->points/100*$bonus_percent);
|
||||||
$user_cart->points -= self::$bonus_points_diff;
|
$user_cart->points -= self::$bonus_points_diff;
|
||||||
$user_cart->price -= $bonus_total;
|
|
||||||
|
$user_cart->price -= $bonus_total;
|
||||||
|
$user_cart->price_net -= ($bonus_total / config('app.main_tax'));
|
||||||
|
self::$price -= $bonus_total;
|
||||||
|
self::$price_net -= ($bonus_total / config('app.main_tax'));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static function caluclateShipping(){
|
||||||
|
|
||||||
|
//weight to the orders
|
||||||
|
//first host
|
||||||
|
$host_user_cart = self::getUserCart(self::$user_host_id);
|
||||||
|
$host_user_cart->shipping_weight = $host_user_cart->weight;
|
||||||
|
|
||||||
|
foreach (self::$homeparty->homeparty_users as $homeparty_user){
|
||||||
|
if(!$homeparty_user->is_host){
|
||||||
|
$user_cart = self::$userCarts[$homeparty_user->id];
|
||||||
|
if($homeparty_user->getDelivery() === 'direct'){
|
||||||
|
$user_cart->shipping_weight += $user_cart->weight;
|
||||||
|
}else{
|
||||||
|
$host_user_cart->shipping_weight += $user_cart->weight;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
self::calculateShippingPrice();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function calculateShippingPrice(){
|
||||||
|
|
||||||
|
foreach (self::$homeparty->homeparty_users as $homeparty_user) {
|
||||||
|
$shipping = $homeparty_user->getShipping();
|
||||||
|
$user_cart = self::$userCarts[$homeparty_user->id];
|
||||||
|
if(!$shipping){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if($user_cart->shipping_weight === 0){
|
||||||
|
$shipping_price = $shipping->shipping_prices->first();
|
||||||
|
$shipping_price->price = 0;
|
||||||
|
$shipping_price->shipping_price_net = 0;
|
||||||
|
}else{
|
||||||
|
//sec by weight
|
||||||
|
$shipping_price = self::shippingPriceByWeight($shipping->shipping_prices, $user_cart->shipping_weight);
|
||||||
|
|
||||||
|
//default
|
||||||
|
if(!$shipping_price){
|
||||||
|
$shipping_price = $shipping->shipping_prices->first();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if($shipping_price){
|
||||||
|
$price = $shipping_price->price;
|
||||||
|
$user_cart->shipping_price = $price;
|
||||||
|
$user_cart->shipping_tax_rate = $shipping_price->tax_rate;
|
||||||
|
$user_cart->shipping_price_net = round($price / ((100+$shipping_price->tax_rate) / 100), 2);
|
||||||
|
$user_cart->shipping_tax = round($price / (100+$shipping_price->tax_rate) * 100, 2);
|
||||||
|
}
|
||||||
|
|
||||||
|
//on the end, add prices for porto
|
||||||
|
$user_cart->price += $user_cart->shipping_price;
|
||||||
|
$user_cart->price_net += $user_cart->shipping_price_net;
|
||||||
|
self::$price += $user_cart->shipping_price;
|
||||||
|
self::$price_net += $user_cart->shipping_price_net;
|
||||||
|
|
||||||
|
self::$shipping_total += $user_cart->shipping_price;
|
||||||
|
self::$shipping_net_total += $user_cart->shipping_price_net;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function shippingPriceByWeight($prices, $weight){
|
||||||
|
foreach ($prices as $price){
|
||||||
|
if($price->weight_from > 0 && $price->weight_to > 0){
|
||||||
|
if($weight >= $price->weight_from && $weight <= $price->weight_to){
|
||||||
|
return $price;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static function store($identifier, $date){
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'date' => $date,
|
||||||
|
'identifier' => $identifier,
|
||||||
|
'points' => self::$points,
|
||||||
|
'price' => round(self::$price, 2),
|
||||||
|
'price_net' => round(self::$price_net, 2),
|
||||||
|
'ek_price' => round(self::$ek_price, 2),
|
||||||
|
'income_price' => round(self::$income_price, 2),
|
||||||
|
'user_host_id' => self::$user_host_id,
|
||||||
|
'is_bonus' => self::$is_bonus,
|
||||||
|
'is_bonus_coupon' => self::$is_bonus_coupon,
|
||||||
|
'bonus_value' => self::$bonus_value,
|
||||||
|
'bonus_coupon' => self::$bonus_coupon,
|
||||||
|
'bonus_total' => self::$bonus_value + self::$bonus_coupon,
|
||||||
|
'shipping_price' => self::$shipping_total,
|
||||||
|
'shipping_price_net' => self::$shipping_net_total,
|
||||||
|
'bonus_points_diff' => self::$bonus_points_diff,
|
||||||
|
'voucher_price' => self::$voucher_price,
|
||||||
|
'voucher_name' => self::$voucher_name,
|
||||||
|
];
|
||||||
|
$user_data = [];
|
||||||
|
foreach (self::$homeparty->homeparty_users as $homeparty_user){
|
||||||
|
|
||||||
|
$user_cart = self::$userCarts[$homeparty_user->id];
|
||||||
|
$user_data[$homeparty_user->id] = [
|
||||||
|
'is_host' => $homeparty_user->is_host,
|
||||||
|
'points' => $user_cart->points,
|
||||||
|
'price' => round($user_cart->price, 2),
|
||||||
|
'price_net' => round($user_cart->price_net, 2),
|
||||||
|
'ek_price' => round($user_cart->ek_price, 2),
|
||||||
|
'income_price' => round($user_cart->income_price, 2),
|
||||||
|
'weight' => $user_cart->weight,
|
||||||
|
'shipping_weight' => $user_cart->shipping_weight,
|
||||||
|
'shipping_price' => round($user_cart->shipping_price, 2),
|
||||||
|
'shipping_tax_rate' => round($user_cart->shipping_tax_rate, 2),
|
||||||
|
'shipping_price_net' => round($user_cart->shipping_price_net, 2),
|
||||||
|
'shipping_tax' => $user_cart->shipping_tax,
|
||||||
|
];
|
||||||
|
}
|
||||||
|
$data['user_carts'] = $user_data;
|
||||||
|
self::$homeparty->order = $data;
|
||||||
|
self::$homeparty->save();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public static function getUserCartHost(){
|
public static function getUserCartHost(){
|
||||||
return self::getUserCart(self::$user_host_id);
|
return self::getUserCart(self::$user_host_id);
|
||||||
}
|
}
|
||||||
|
|
@ -172,7 +312,7 @@ class HomepartyCart
|
||||||
}
|
}
|
||||||
public static function getFormattedBonusPrice()
|
public static function getFormattedBonusPrice()
|
||||||
{
|
{
|
||||||
return formatNumber(self::$bonus_price);
|
return formatNumber(self::$voucher_price);
|
||||||
}
|
}
|
||||||
public static function getFormattedBonusStart(){
|
public static function getFormattedBonusStart(){
|
||||||
return formatNumber(self::$bonus_start);
|
return formatNumber(self::$bonus_start);
|
||||||
|
|
@ -211,330 +351,7 @@ class HomepartyCart
|
||||||
return formatNumber( self::$bonus_points_diff, 0 );
|
return formatNumber( self::$bonus_points_diff, 0 );
|
||||||
|
|
||||||
}
|
}
|
||||||
/* public static function getTaxRate()
|
|
||||||
{
|
|
||||||
return config('cart.tax');
|
|
||||||
}
|
|
||||||
|
|
||||||
public function putYardExtra($key, $value){
|
|
||||||
|
|
||||||
$content = $this->getYContent();
|
|
||||||
$content->put($key, $value);
|
|
||||||
$this->ysession->put($this->yinstance, $content);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getYardExtra($key){
|
|
||||||
$content = $this->getYContent();
|
|
||||||
if ($content->has($key)){
|
|
||||||
return $content->get($key);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getShippingCountryName(){
|
|
||||||
|
|
||||||
$shippingCountry = ShippingCountry::find($this->shipping_country_id);
|
|
||||||
if($shippingCountry && $shippingCountry->country){
|
|
||||||
return $shippingCountry->country->getLocated();
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
public function getShippingCountryCountryId()
|
|
||||||
{
|
|
||||||
$shippingCountry = ShippingCountry::find($this->shipping_country_id);
|
|
||||||
if($shippingCountry && $shippingCountry->country){
|
|
||||||
return $shippingCountry->country->id;
|
|
||||||
}
|
|
||||||
return 1; //default DE
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getShippingCountryId()
|
|
||||||
{
|
|
||||||
return $this->shipping_country_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function getYContent()
|
|
||||||
{
|
|
||||||
if (is_null($this->ysession->get($this->yinstance))) {
|
|
||||||
return new Collection([]);
|
|
||||||
}
|
|
||||||
return $this->ysession->get($this->yinstance);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function reCalculateShippingPrice(){
|
|
||||||
$this->calculateShippingPrice();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setShippingCountryWithPrice($shipping_country_id, $shipping_is_for = 'ot')
|
|
||||||
{
|
|
||||||
$this->shipping_country_id = $shipping_country_id;
|
|
||||||
$this->putYardExtra('shipping_country_id', $shipping_country_id);
|
|
||||||
|
|
||||||
$this->shipping_is_for = $shipping_is_for;
|
|
||||||
$this->putYardExtra('shipping_is_for', $shipping_is_for);
|
|
||||||
|
|
||||||
$this->calculateShippingPrice();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private function calculateShippingPrice(){
|
|
||||||
|
|
||||||
$shippingCountry = ShippingCountry::find($this->shipping_country_id);
|
|
||||||
if(!$shippingCountry){
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$shipping = $shippingCountry->shipping;
|
|
||||||
|
|
||||||
if($this->weight() == 0){
|
|
||||||
$shipping_price = $shipping->shipping_prices->first();
|
|
||||||
$shipping_price->price = 0;
|
|
||||||
$shipping_price->price_comp = 0;
|
|
||||||
}else{
|
|
||||||
//first by price
|
|
||||||
$shipping_price = $this->shippingPriceByTotal($shipping->shipping_prices, $this->total(2, '.', ''));
|
|
||||||
//sec by weight
|
|
||||||
if(!$shipping_price){
|
|
||||||
$shipping_price = $this->shippingPriceByWeight($shipping->shipping_prices, $this->weight());
|
|
||||||
}
|
|
||||||
//default
|
|
||||||
if(!$shipping_price){
|
|
||||||
$shipping_price = $shipping->shipping_prices->first();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if($shipping_price){
|
|
||||||
$price = $shipping_price->price;
|
|
||||||
$this->num_comp = 0;
|
|
||||||
if($this->shipping_is_for === 'me'){
|
|
||||||
$price = $shipping_price->price_comp;
|
|
||||||
$this->num_comp = $shipping_price->num_comp;
|
|
||||||
|
|
||||||
}
|
|
||||||
$this->shipping_price = $price;
|
|
||||||
$this->shipping_tax_rate = $shipping_price->tax_rate;
|
|
||||||
$this->shipping_price_net = round($price / ((100+$shipping_price->tax_rate) / 100), 2);
|
|
||||||
$this->shipping_tax = round($price / (100+$shipping_price->tax_rate) * 100, 2);
|
|
||||||
|
|
||||||
$this->putYardExtra('num_comp', $this->num_comp);
|
|
||||||
$this->putYardExtra('shipping_price', $this->shipping_price);
|
|
||||||
$this->putYardExtra('shipping_tax_rate', $this->shipping_tax_rate);
|
|
||||||
$this->putYardExtra('shipping_tax', $this->shipping_tax);
|
|
||||||
$this->putYardExtra('shipping_price_net', $this->shipping_price_net);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private function shippingPriceByTotal($prices, $total){
|
|
||||||
foreach ($prices as $price){
|
|
||||||
if($price->total_from > 0 && $price->total_to > 0){
|
|
||||||
if($total >= $price->total_from && $total <= $price->total_to){
|
|
||||||
return $price;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
private function shippingPriceByWeight($prices, $weight){
|
|
||||||
foreach ($prices as $price){
|
|
||||||
if($price->weight_from > 0 && $price->weight_to > 0){
|
|
||||||
if($weight >= $price->weight_from && $weight <= $price->weight_to){
|
|
||||||
return $price;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function shipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
return $this->numberFormat($this->shipping_price, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function shippingNet($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
return $this->numberFormat($this->shipping_price_net, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
//
|
|
||||||
private function shippingTax($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
return $this->numberFormat($this->shipping_tax, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//netto
|
|
||||||
public function subtotalWithShipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$subtotal = (float) $this->shipping_price_net + $this->subtotal(2, '.', '');
|
|
||||||
return $this->numberFormat($subtotal, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function taxWithShipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$total = $this->totalWithShipping(2, '.', '');
|
|
||||||
// $totalTax = (float) $this->tax(2, '.', '') + $this->shipping_tax;
|
|
||||||
$totalTax = $this->subtotalWithShipping(2, '.', '');
|
|
||||||
return $this->numberFormat(($total - $totalTax), $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function totalWithShipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$total = (float) ($this->total(2, '.', '')) + $this->shipping_price;
|
|
||||||
return $this->numberFormat($total, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function weight($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
$total = $content->reduce(function ($total, CartItem $cartItem) {
|
|
||||||
return $total + ($cartItem->options->weight ? ($cartItem->options->weight*$cartItem->qty) : 0);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $total;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function points()
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
$total = $content->reduce(function ($total, CartItem $cartItem) {
|
|
||||||
return $total + ($cartItem->options->points ? ($cartItem->options->points * $cartItem->qty) : 0);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $total;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function compCount()
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
$count = parent::count();
|
|
||||||
$comp_count = $content->reduce(function ($comp_count, CartItem $cartItem) {
|
|
||||||
return $cartItem->options->comp ? $comp_count + 1 : $comp_count;
|
|
||||||
}, 0);
|
|
||||||
return $count-$comp_count;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function total($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
$total = $content->reduce(function ($total, CartItem $cartItem) {
|
|
||||||
return $total + ($cartItem->qty * $cartItem->price);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $this->numberFormat($total, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function tax($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
$tax = $content->reduce(function ($tax, CartItem $cartItem) {
|
|
||||||
$priceTax = $cartItem->price / (100 + $cartItem->taxRate) * $cartItem->taxRate;
|
|
||||||
return $tax + ($cartItem->qty * $priceTax);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $this->numberFormat($tax, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function subtotal($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
$subTotal = $content->reduce(function ($subTotal, CartItem $cartItem) {
|
|
||||||
$price_net = $cartItem->price / ((100 + $cartItem->taxRate) / 100);
|
|
||||||
return $subTotal + ($cartItem->qty * $price_net);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $this->numberFormat($subTotal, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function getCartItemByProduct($product_id, $set_price='with'){
|
|
||||||
if($product = Product::find($product_id)) {
|
|
||||||
$image = "";
|
|
||||||
if ($product->images->count()) {
|
|
||||||
$image = $product->images->first()->slug;
|
|
||||||
}
|
|
||||||
$price = $product->price;
|
|
||||||
if($set_price === 'with'){
|
|
||||||
$price = $product->getPriceWith(false, true);
|
|
||||||
}
|
|
||||||
$cartItem = $this->getCartItem($product->id, $product->getLang('name'), 1, $price, ['image' => $image, 'slug' => $product->slug, 'weight' => $product->weight, 'points' => $product->points]);
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
if ($content->has($cartItem->rowId)){
|
|
||||||
return $content->get($cartItem->rowId);
|
|
||||||
}
|
|
||||||
return $cartItem;
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function getCartItem($id, $name = null, $qty = null, $price = null, array $options = []){
|
|
||||||
if ($id instanceof Buyable) {
|
|
||||||
$cartItem = CartItem::fromBuyable($id, $qty ?: []);
|
|
||||||
} elseif (is_array($id)) {
|
|
||||||
$cartItem = CartItem::fromArray($id);
|
|
||||||
} else {
|
|
||||||
$cartItem = CartItem::fromAttributes($id, $name, $price, $options);
|
|
||||||
}
|
|
||||||
return $cartItem;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function destroy()
|
|
||||||
{
|
|
||||||
$this->ysession->remove($this->yinstance);
|
|
||||||
parent::destroy();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public function rowPriceNet(CartItem $row, $decimals = null, $decimalPoint = null, $thousandSeperator = null){
|
|
||||||
$price = round($row->price / ((100 + $row->taxRate) /100), 4);
|
|
||||||
return $this->numberFormat($price, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function rowSubtotalNet(CartItem $row, $decimals = null, $decimalPoint = null, $thousandSeperator = null){
|
|
||||||
$price = round($row->price / ((100 + $row->taxRate) /100), 4);
|
|
||||||
return $this->numberFormat(($price * $row->qty), $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getNumComp(){
|
|
||||||
return $this->num_comp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getCompProductBy($comp, $product_id=false){
|
|
||||||
foreach ($this->content() as $row) {
|
|
||||||
if($row->options->comp == $comp) {
|
|
||||||
return $row->options->product_id;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getContentByOrder(){
|
|
||||||
$ret = [];
|
|
||||||
$comp = [];
|
|
||||||
foreach ($this->content() as $row) {
|
|
||||||
if($row->options->comp){
|
|
||||||
$comp[100+$row->options->comp] = $row;
|
|
||||||
}else{
|
|
||||||
$ret[] = $row;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ksort($comp);
|
|
||||||
$ret = array_merge($ret, $comp);
|
|
||||||
return $ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
*/
|
|
||||||
protected function numberFormat($value, $decimals, $decimalPoint, $thousandSeperator)
|
protected function numberFormat($value, $decimals, $decimalPoint, $thousandSeperator)
|
||||||
{
|
{
|
||||||
if(is_null($decimals)){
|
if(is_null($decimals)){
|
||||||
|
|
|
||||||
|
|
@ -32,17 +32,34 @@ class HomepartyUserCart
|
||||||
public $ek_price;
|
public $ek_price;
|
||||||
public $income_price;
|
public $income_price;
|
||||||
|
|
||||||
|
public $weight;
|
||||||
|
public $shipping_weight;
|
||||||
|
|
||||||
|
|
||||||
|
public $shipping_price;
|
||||||
|
public $shipping_tax_rate;
|
||||||
|
public $shipping_price_net;
|
||||||
|
public $shipping_tax;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private $homepartyUser;
|
private $homepartyUser;
|
||||||
|
|
||||||
public function __construct(HomepartyUser $homepartyUser)
|
public function __construct(HomepartyUser $homepartyUser)
|
||||||
{
|
{
|
||||||
$this->homepartyUser = $homepartyUser;
|
$this->homepartyUser = $homepartyUser;
|
||||||
|
//is all total
|
||||||
$this->points = 0;
|
$this->points = 0;
|
||||||
$this->price = 0;
|
$this->price = 0;
|
||||||
$this->price_net = 0;
|
$this->price_net = 0;
|
||||||
$this->ek_price = 0;
|
$this->ek_price = 0;
|
||||||
$this->income_price = 0;
|
$this->income_price = 0;
|
||||||
|
$this->weight = 0;
|
||||||
|
$this->shipping_weight = 0;
|
||||||
|
$this->shipping_price = 0;
|
||||||
|
$this->shipping_tax_rate = 0;
|
||||||
|
$this->shipping_price_net = 0;
|
||||||
|
$this->shipping_tax = 0;
|
||||||
$this->calculateUserCart();
|
$this->calculateUserCart();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -54,6 +71,7 @@ class HomepartyUserCart
|
||||||
$this->price_net += $order_item->geTotalPriceNet();
|
$this->price_net += $order_item->geTotalPriceNet();
|
||||||
$this->ek_price += $order_item->geTotalEKPrice();
|
$this->ek_price += $order_item->geTotalEKPrice();
|
||||||
$this->income_price += $order_item->geTotalIncomePrice();
|
$this->income_price += $order_item->geTotalIncomePrice();
|
||||||
|
$this->weight += ($order_item->product->weight * $order_item->qty);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -82,330 +100,12 @@ class HomepartyUserCart
|
||||||
{
|
{
|
||||||
return formatNumber($this->income_price);
|
return formatNumber($this->income_price);
|
||||||
}
|
}
|
||||||
/* public static function getTaxRate()
|
|
||||||
|
public function getFormattedShippingPrice()
|
||||||
{
|
{
|
||||||
return config('cart.tax');
|
return formatNumber($this->shipping_price);
|
||||||
}
|
|
||||||
|
|
||||||
public function putYardExtra($key, $value){
|
|
||||||
|
|
||||||
$content = $this->getYContent();
|
|
||||||
$content->put($key, $value);
|
|
||||||
$this->ysession->put($this->yinstance, $content);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getYardExtra($key){
|
|
||||||
$content = $this->getYContent();
|
|
||||||
if ($content->has($key)){
|
|
||||||
return $content->get($key);
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getShippingCountryName(){
|
|
||||||
|
|
||||||
$shippingCountry = ShippingCountry::find($this->shipping_country_id);
|
|
||||||
if($shippingCountry && $shippingCountry->country){
|
|
||||||
return $shippingCountry->country->getLocated();
|
|
||||||
}
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
public function getShippingCountryCountryId()
|
|
||||||
{
|
|
||||||
$shippingCountry = ShippingCountry::find($this->shipping_country_id);
|
|
||||||
if($shippingCountry && $shippingCountry->country){
|
|
||||||
return $shippingCountry->country->id;
|
|
||||||
}
|
|
||||||
return 1; //default DE
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getShippingCountryId()
|
|
||||||
{
|
|
||||||
return $this->shipping_country_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function getYContent()
|
|
||||||
{
|
|
||||||
if (is_null($this->ysession->get($this->yinstance))) {
|
|
||||||
return new Collection([]);
|
|
||||||
}
|
|
||||||
return $this->ysession->get($this->yinstance);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function reCalculateShippingPrice(){
|
|
||||||
$this->calculateShippingPrice();
|
|
||||||
}
|
|
||||||
|
|
||||||
public function setShippingCountryWithPrice($shipping_country_id, $shipping_is_for = 'ot')
|
|
||||||
{
|
|
||||||
$this->shipping_country_id = $shipping_country_id;
|
|
||||||
$this->putYardExtra('shipping_country_id', $shipping_country_id);
|
|
||||||
|
|
||||||
$this->shipping_is_for = $shipping_is_for;
|
|
||||||
$this->putYardExtra('shipping_is_for', $shipping_is_for);
|
|
||||||
|
|
||||||
$this->calculateShippingPrice();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private function calculateShippingPrice(){
|
|
||||||
|
|
||||||
$shippingCountry = ShippingCountry::find($this->shipping_country_id);
|
|
||||||
if(!$shippingCountry){
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
$shipping = $shippingCountry->shipping;
|
|
||||||
|
|
||||||
if($this->weight() == 0){
|
|
||||||
$shipping_price = $shipping->shipping_prices->first();
|
|
||||||
$shipping_price->price = 0;
|
|
||||||
$shipping_price->price_comp = 0;
|
|
||||||
}else{
|
|
||||||
//first by price
|
|
||||||
$shipping_price = $this->shippingPriceByTotal($shipping->shipping_prices, $this->total(2, '.', ''));
|
|
||||||
//sec by weight
|
|
||||||
if(!$shipping_price){
|
|
||||||
$shipping_price = $this->shippingPriceByWeight($shipping->shipping_prices, $this->weight());
|
|
||||||
}
|
|
||||||
//default
|
|
||||||
if(!$shipping_price){
|
|
||||||
$shipping_price = $shipping->shipping_prices->first();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if($shipping_price){
|
|
||||||
$price = $shipping_price->price;
|
|
||||||
$this->num_comp = 0;
|
|
||||||
if($this->shipping_is_for === 'me'){
|
|
||||||
$price = $shipping_price->price_comp;
|
|
||||||
$this->num_comp = $shipping_price->num_comp;
|
|
||||||
|
|
||||||
}
|
|
||||||
$this->shipping_price = $price;
|
|
||||||
$this->shipping_tax_rate = $shipping_price->tax_rate;
|
|
||||||
$this->shipping_price_net = round($price / ((100+$shipping_price->tax_rate) / 100), 2);
|
|
||||||
$this->shipping_tax = round($price / (100+$shipping_price->tax_rate) * 100, 2);
|
|
||||||
|
|
||||||
$this->putYardExtra('num_comp', $this->num_comp);
|
|
||||||
$this->putYardExtra('shipping_price', $this->shipping_price);
|
|
||||||
$this->putYardExtra('shipping_tax_rate', $this->shipping_tax_rate);
|
|
||||||
$this->putYardExtra('shipping_tax', $this->shipping_tax);
|
|
||||||
$this->putYardExtra('shipping_price_net', $this->shipping_price_net);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private function shippingPriceByTotal($prices, $total){
|
|
||||||
foreach ($prices as $price){
|
|
||||||
if($price->total_from > 0 && $price->total_to > 0){
|
|
||||||
if($total >= $price->total_from && $total <= $price->total_to){
|
|
||||||
return $price;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
private function shippingPriceByWeight($prices, $weight){
|
|
||||||
foreach ($prices as $price){
|
|
||||||
if($price->weight_from > 0 && $price->weight_to > 0){
|
|
||||||
if($weight >= $price->weight_from && $weight <= $price->weight_to){
|
|
||||||
return $price;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function shipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
return $this->numberFormat($this->shipping_price, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function shippingNet($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
return $this->numberFormat($this->shipping_price_net, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
//
|
|
||||||
private function shippingTax($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
return $this->numberFormat($this->shipping_tax, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//netto
|
|
||||||
public function subtotalWithShipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$subtotal = (float) $this->shipping_price_net + $this->subtotal(2, '.', '');
|
|
||||||
return $this->numberFormat($subtotal, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function taxWithShipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$total = $this->totalWithShipping(2, '.', '');
|
|
||||||
// $totalTax = (float) $this->tax(2, '.', '') + $this->shipping_tax;
|
|
||||||
$totalTax = $this->subtotalWithShipping(2, '.', '');
|
|
||||||
return $this->numberFormat(($total - $totalTax), $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function totalWithShipping($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$total = (float) ($this->total(2, '.', '')) + $this->shipping_price;
|
|
||||||
return $this->numberFormat($total, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function weight($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
$total = $content->reduce(function ($total, CartItem $cartItem) {
|
|
||||||
return $total + ($cartItem->options->weight ? ($cartItem->options->weight*$cartItem->qty) : 0);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $total;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function points()
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
$total = $content->reduce(function ($total, CartItem $cartItem) {
|
|
||||||
return $total + ($cartItem->options->points ? ($cartItem->options->points * $cartItem->qty) : 0);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $total;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function compCount()
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
$count = parent::count();
|
|
||||||
$comp_count = $content->reduce(function ($comp_count, CartItem $cartItem) {
|
|
||||||
return $cartItem->options->comp ? $comp_count + 1 : $comp_count;
|
|
||||||
}, 0);
|
|
||||||
return $count-$comp_count;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function total($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
$total = $content->reduce(function ($total, CartItem $cartItem) {
|
|
||||||
return $total + ($cartItem->qty * $cartItem->price);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $this->numberFormat($total, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function tax($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
$tax = $content->reduce(function ($tax, CartItem $cartItem) {
|
|
||||||
$priceTax = $cartItem->price / (100 + $cartItem->taxRate) * $cartItem->taxRate;
|
|
||||||
return $tax + ($cartItem->qty * $priceTax);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $this->numberFormat($tax, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function subtotal($decimals = null, $decimalPoint = null, $thousandSeperator = null)
|
|
||||||
{
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
$subTotal = $content->reduce(function ($subTotal, CartItem $cartItem) {
|
|
||||||
$price_net = $cartItem->price / ((100 + $cartItem->taxRate) / 100);
|
|
||||||
return $subTotal + ($cartItem->qty * $price_net);
|
|
||||||
}, 0);
|
|
||||||
|
|
||||||
return $this->numberFormat($subTotal, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function getCartItemByProduct($product_id, $set_price='with'){
|
|
||||||
if($product = Product::find($product_id)) {
|
|
||||||
$image = "";
|
|
||||||
if ($product->images->count()) {
|
|
||||||
$image = $product->images->first()->slug;
|
|
||||||
}
|
|
||||||
$price = $product->price;
|
|
||||||
if($set_price === 'with'){
|
|
||||||
$price = $product->getPriceWith(false, true);
|
|
||||||
}
|
|
||||||
$cartItem = $this->getCartItem($product->id, $product->getLang('name'), 1, $price, ['image' => $image, 'slug' => $product->slug, 'weight' => $product->weight, 'points' => $product->points]);
|
|
||||||
$content = $this->getContent();
|
|
||||||
|
|
||||||
if ($content->has($cartItem->rowId)){
|
|
||||||
return $content->get($cartItem->rowId);
|
|
||||||
}
|
|
||||||
return $cartItem;
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public function getCartItem($id, $name = null, $qty = null, $price = null, array $options = []){
|
|
||||||
if ($id instanceof Buyable) {
|
|
||||||
$cartItem = CartItem::fromBuyable($id, $qty ?: []);
|
|
||||||
} elseif (is_array($id)) {
|
|
||||||
$cartItem = CartItem::fromArray($id);
|
|
||||||
} else {
|
|
||||||
$cartItem = CartItem::fromAttributes($id, $name, $price, $options);
|
|
||||||
}
|
|
||||||
return $cartItem;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function destroy()
|
|
||||||
{
|
|
||||||
$this->ysession->remove($this->yinstance);
|
|
||||||
parent::destroy();
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public function rowPriceNet(CartItem $row, $decimals = null, $decimalPoint = null, $thousandSeperator = null){
|
|
||||||
$price = round($row->price / ((100 + $row->taxRate) /100), 4);
|
|
||||||
return $this->numberFormat($price, $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function rowSubtotalNet(CartItem $row, $decimals = null, $decimalPoint = null, $thousandSeperator = null){
|
|
||||||
$price = round($row->price / ((100 + $row->taxRate) /100), 4);
|
|
||||||
return $this->numberFormat(($price * $row->qty), $decimals, $decimalPoint, $thousandSeperator);
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getNumComp(){
|
|
||||||
return $this->num_comp;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getCompProductBy($comp, $product_id=false){
|
|
||||||
foreach ($this->content() as $row) {
|
|
||||||
if($row->options->comp == $comp) {
|
|
||||||
return $row->options->product_id;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function getContentByOrder(){
|
|
||||||
$ret = [];
|
|
||||||
$comp = [];
|
|
||||||
foreach ($this->content() as $row) {
|
|
||||||
if($row->options->comp){
|
|
||||||
$comp[100+$row->options->comp] = $row;
|
|
||||||
}else{
|
|
||||||
$ret[] = $row;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ksort($comp);
|
|
||||||
$ret = array_merge($ret, $comp);
|
|
||||||
return $ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
*/
|
|
||||||
protected function numberFormat($value, $decimals, $decimalPoint, $thousandSeperator)
|
protected function numberFormat($value, $decimals, $decimalPoint, $thousandSeperator)
|
||||||
{
|
{
|
||||||
if(is_null($decimals)){
|
if(is_null($decimals)){
|
||||||
|
|
|
||||||
|
|
@ -120,8 +120,14 @@ class Payment
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if($shopping_order->homeparty){
|
||||||
|
$shopping_order->setUserHistoryValue(['status' => 9]);
|
||||||
|
$shopping_order->homeparty->completed = 1;
|
||||||
|
$shopping_order->homeparty->save();
|
||||||
|
}
|
||||||
return $send_link;
|
return $send_link;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ return [
|
||||||
'default_mail' => env('APP_DEFAULT_MAIL', 'info@mivita.care'),
|
'default_mail' => env('APP_DEFAULT_MAIL', 'info@mivita.care'),
|
||||||
'info_test_mail' => env('APP_INFO_TEST_MAIL', 'devtest@mivita.care'),
|
'info_test_mail' => env('APP_INFO_TEST_MAIL', 'devtest@mivita.care'),
|
||||||
|
|
||||||
|
'main_tax' => env('APP_MAIN_TAX', 1.19),
|
||||||
/* 'url_backend' => env('APP_URL', 'http://mivita.local/'),
|
/* 'url_backend' => env('APP_URL', 'http://mivita.local/'),
|
||||||
'url_backend' => env('APP_URL', 'http://mivita.local/'),
|
'url_backend' => env('APP_URL', 'http://mivita.local/'),
|
||||||
'url_backend' => env('APP_URL', 'http://mivita.local/'),
|
'url_backend' => env('APP_URL', 'http://mivita.local/'),
|
||||||
|
|
|
||||||
|
|
@ -58,6 +58,7 @@ class CreateShoppingUsersTable extends Migration
|
||||||
$table->boolean('subscribed')->default(false);
|
$table->boolean('subscribed')->default(false);
|
||||||
|
|
||||||
$table->text('notice')->default(false);
|
$table->text('notice')->default(false);
|
||||||
|
$table->unsignedInteger('homeparty_id')->nullable();
|
||||||
|
|
||||||
$table->char('mode', 4)->nullable();
|
$table->char('mode', 4)->nullable();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@ class CreateShoppingOrdersTable extends Migration
|
||||||
$table->unsignedInteger('user_shop_id');
|
$table->unsignedInteger('user_shop_id');
|
||||||
|
|
||||||
$table->unsignedInteger('member_id')->nullable();
|
$table->unsignedInteger('member_id')->nullable();
|
||||||
|
$table->unsignedInteger('homeparty_id')->nullable();
|
||||||
|
|
||||||
$table->unsignedTinyInteger('payment_for')->nullable();
|
$table->unsignedTinyInteger('payment_for')->nullable();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,7 @@ class CreateShoppingOrderItemsTable extends Migration
|
||||||
$table->unsignedInteger('shopping_order_id');
|
$table->unsignedInteger('shopping_order_id');
|
||||||
$table->string('row_id', 40)->nullable();
|
$table->string('row_id', 40)->nullable();
|
||||||
$table->unsignedInteger('product_id');
|
$table->unsignedInteger('product_id');
|
||||||
|
$table->unsignedInteger('homeparty_id')->nullable();
|
||||||
|
|
||||||
$table->unsignedTinyInteger('comp')->nullable();
|
$table->unsignedTinyInteger('comp')->nullable();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -31,6 +31,9 @@ class CreateHomepartiesTable extends Migration
|
||||||
$table->string('token')->nullable();
|
$table->string('token')->nullable();
|
||||||
$table->boolean('token_active')->default(true);
|
$table->boolean('token_active')->default(true);
|
||||||
|
|
||||||
|
$table->text('settings')->nullable();
|
||||||
|
$table->text('order')->nullable();
|
||||||
|
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -54,6 +54,10 @@ class CreateHomepartyUsersTable extends Migration
|
||||||
$table->text('notice')->nullable();
|
$table->text('notice')->nullable();
|
||||||
|
|
||||||
$table->char('mode', 4)->nullable();
|
$table->char('mode', 4)->nullable();
|
||||||
|
$table->char('delivery', 6)->nullable();
|
||||||
|
|
||||||
|
$table->text('settings')->nullable();
|
||||||
|
|
||||||
|
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
$table->softDeletes();
|
$table->softDeletes();
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ var IqHomepartyCart = {
|
||||||
insert_show_total_order: '#insert_show_total_order',
|
insert_show_total_order: '#insert_show_total_order',
|
||||||
insert_show_bonus: '#insert_show_bonus',
|
insert_show_bonus: '#insert_show_bonus',
|
||||||
insert_show_bonus_host: '#insert_show_bonus_host',
|
insert_show_bonus_host: '#insert_show_bonus_host',
|
||||||
|
select_delivery_option: '.select_delivery_option',
|
||||||
/*
|
/*
|
||||||
comp_holder: '#holder_html_view_comp_product',
|
comp_holder: '#holder_html_view_comp_product',
|
||||||
is_for: null,
|
is_for: null,
|
||||||
|
|
@ -32,7 +33,6 @@ var IqHomepartyCart = {
|
||||||
init: function () {
|
init: function () {
|
||||||
var _self = this;
|
var _self = this;
|
||||||
_self.url = $(_self.form).attr('action');
|
_self.url = $(_self.form).attr('action');
|
||||||
_self._log(_self.url);
|
|
||||||
|
|
||||||
|
|
||||||
$(_self.cart_holders).each(function (key, obj){
|
$(_self.cart_holders).each(function (key, obj){
|
||||||
|
|
@ -48,7 +48,6 @@ var IqHomepartyCart = {
|
||||||
},
|
},
|
||||||
setDatabase: function (oTable){
|
setDatabase: function (oTable){
|
||||||
var _self = this;
|
var _self = this;
|
||||||
_self._log($(oTable));
|
|
||||||
_self.oTable = oTable;
|
_self.oTable = oTable;
|
||||||
},
|
},
|
||||||
reInitModal: function (){
|
reInitModal: function (){
|
||||||
|
|
@ -78,7 +77,6 @@ var IqHomepartyCart = {
|
||||||
_self.remove_product($(this), _obj)
|
_self.remove_product($(this), _obj)
|
||||||
});
|
});
|
||||||
obj.find(_self.table_input).off('change').on('change', function(){
|
obj.find(_self.table_input).off('change').on('change', function(){
|
||||||
_self._log($(this));
|
|
||||||
_self.update_input_table($(this), _obj);
|
_self.update_input_table($(this), _obj);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
@ -86,7 +84,9 @@ var IqHomepartyCart = {
|
||||||
_self.remove_from_cart($(this), _obj);
|
_self.remove_from_cart($(this), _obj);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
obj.find(_self.select_delivery_option).off('change').on('change', function(){
|
||||||
|
_self.update_delivery_option($(this), _obj);
|
||||||
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
add_product: function (_obj, _holder){
|
add_product: function (_obj, _holder){
|
||||||
|
|
@ -133,6 +133,16 @@ var IqHomepartyCart = {
|
||||||
action: 'removeFromCart'
|
action: 'removeFromCart'
|
||||||
}).done(_self.refreshView);
|
}).done(_self.refreshView);
|
||||||
},
|
},
|
||||||
|
update_delivery_option: function (_obj, _holder){
|
||||||
|
var _self = this;
|
||||||
|
_self.performRequest({
|
||||||
|
delivery: _obj.val(),
|
||||||
|
homeparty_id: _holder.data('homeparty-id'),
|
||||||
|
homeparty_user_id: _holder.data('homeparty-user-id'),
|
||||||
|
action: 'updateDeliveryOption'
|
||||||
|
}).done(_self.refreshView);
|
||||||
|
},
|
||||||
|
|
||||||
refreshView: function (data) {
|
refreshView: function (data) {
|
||||||
var _self = IqHomepartyCart;
|
var _self = IqHomepartyCart;
|
||||||
var obj = $(_self.cart_holder+data.data.homeparty_user_id)
|
var obj = $(_self.cart_holder+data.data.homeparty_user_id)
|
||||||
|
|
@ -187,98 +197,5 @@ var IqHomepartyCart = {
|
||||||
return 100;
|
return 100;
|
||||||
}
|
}
|
||||||
return number;
|
return number;
|
||||||
},
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
|
|
||||||
showInit: function (){
|
|
||||||
var _self = this;
|
|
||||||
$(_self.btn_clear).on('click', function (){
|
|
||||||
_self.performRequest({action: 'clearCart'})
|
|
||||||
.done(_self.refreshDatabaseRefreshAndView)
|
|
||||||
});
|
|
||||||
$(_self.cart_input).on('change', function(){
|
|
||||||
_self.update_input_cart($(this));
|
|
||||||
});
|
|
||||||
$(_self.remove_item).on('click', function(event){
|
|
||||||
event.preventDefault();
|
|
||||||
_self.update_cart_database($(this).data('product-id'), 0);
|
|
||||||
});
|
|
||||||
if(_self.is_for === 'me'){
|
|
||||||
$('input[name^="'+_self.comp_products+'"]').on('change', function(){
|
|
||||||
_self.update_comp_product($(this));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
update_shipping_state : function (_obj){
|
|
||||||
var _self = this;
|
|
||||||
var id = parseInt(_obj.val());
|
|
||||||
var is_for = _obj.data('is-for');
|
|
||||||
_self.performRequest({shipping_country_id: id, shipping_is_for: is_for, action: 'updateShippingCountry'})
|
|
||||||
.done(_self.refreshItemsAndView);
|
|
||||||
},
|
|
||||||
update_input_table: function (_obj){
|
|
||||||
var _self = this;
|
|
||||||
var qty = parseInt(_obj.val());
|
|
||||||
qty = _self.checkNumber(qty);
|
|
||||||
_obj.val(qty);
|
|
||||||
_self.update_cart(_obj.data('product-id'), qty);
|
|
||||||
},
|
|
||||||
update_input_cart: function (_obj){
|
|
||||||
var _self = this;
|
|
||||||
var qty = parseInt(_obj.val());
|
|
||||||
qty = _self.checkNumber(qty);
|
|
||||||
_obj.val(qty);
|
|
||||||
_self.update_cart_database(_obj.data('product-id'), qty);
|
|
||||||
},
|
|
||||||
update_comp_product: function (_obj){
|
|
||||||
var _self = this;
|
|
||||||
_self.performRequest({comp_product_id: _obj.val(), comp_num: _obj.data('comp_num'), count_comp_products: $('input[name="'+_self.count_comp_products+'"]').val(), action: 'updateCompProduct'})
|
|
||||||
.done(_self.refreshItemsAndView);
|
|
||||||
},
|
|
||||||
|
|
||||||
update_cart_database: function (product_id, qty){
|
|
||||||
var _self = this;
|
|
||||||
_self.performRequest({product_id: product_id, qty: qty, action: 'updateCart'})
|
|
||||||
.done(_self.refreshDatabaseAndView);
|
|
||||||
},
|
|
||||||
update_cart: function (product_id, qty){
|
|
||||||
var _self = this;
|
|
||||||
_self.performRequest({product_id: product_id, qty: qty, action: 'updateCart'})
|
|
||||||
.done(_self.refreshItemsAndView);
|
|
||||||
},
|
|
||||||
refreshItemsAndView: function (data){
|
|
||||||
var _self = IqShoppingCart;
|
|
||||||
$(_self.cart_holder).html(data.html_cart);
|
|
||||||
$(_self.comp_holder).html(data.html_comp);
|
|
||||||
_self.showInit();
|
|
||||||
|
|
||||||
},
|
|
||||||
refreshDatabaseAndView: function (data) {
|
|
||||||
var _self = IqShoppingCart;
|
|
||||||
$(_self.cart_holder).html(data.html_cart);
|
|
||||||
$(_self.comp_holder).html(data.html_comp);
|
|
||||||
|
|
||||||
var input = $(_self.table).find('input[name="product_qty_'+data.data.product_id+'"]');
|
|
||||||
input.val(data.data.qty);
|
|
||||||
_self.showInit();
|
|
||||||
},
|
|
||||||
refreshDatabaseRefreshAndView : function (data){
|
|
||||||
var _self = IqShoppingCart;
|
|
||||||
$(_self.cart_holder).html(data.html_cart);
|
|
||||||
$(_self.comp_holder).html(data.html_comp);
|
|
||||||
|
|
||||||
_self.showInit();
|
|
||||||
_self.oTable.draw();
|
|
||||||
},
|
|
||||||
checkNumber : function(number){
|
|
||||||
if(number < 0 || isNaN(number)){
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
if(number >= 100){
|
|
||||||
return 100;
|
|
||||||
}
|
|
||||||
return number;
|
|
||||||
},
|
|
||||||
*/
|
|
||||||
};
|
};
|
||||||
|
|
@ -26,9 +26,9 @@
|
||||||
|
|
||||||
<div class="form-row">
|
<div class="form-row">
|
||||||
<div class="form-group col-sm-5">
|
<div class="form-group col-sm-5">
|
||||||
<label class="form-label" for="title">{{ __('Kategorie (Mehrfachauswahl)') }}</label>
|
<label class="form-label" for="title">{{ __('Kategorie (Mehrfachauswahl)') }}*</label>
|
||||||
<select class="selectpicker" name="categories[]" id="categories" data-style="btn-light" data-live-search="false" multiple>
|
<select class="selectpicker" name="categories[]" id="categories" data-style="btn-light" data-live-search="false" multiple required>
|
||||||
{!! HTMLHelper::getCategoriesOptions($product->categories()->pluck('category_id')->toArray()) !!}
|
{!! HTMLHelper::getCategoriesOptions($product->categories()->pluck('category_id')->toArray(), false) !!}
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group col-sm-5">
|
<div class="form-group col-sm-5">
|
||||||
|
|
|
||||||
|
|
@ -177,11 +177,13 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<hr class="m-0">
|
|
||||||
<!-- / Billing -->
|
<!-- / Billing -->
|
||||||
|
|
||||||
<!-- Shipping -->
|
<!-- Shipping -->
|
||||||
<div class="card-body">
|
@if(!$shopping_order->shopping_user->is_from === 'homeparty')
|
||||||
|
<hr class="m-0">
|
||||||
|
|
||||||
|
<div class="card-body">
|
||||||
<h6 class="small font-weight-semibold">
|
<h6 class="small font-weight-semibold">
|
||||||
@if($shopping_order->shopping_user->is_from === 'user_order')
|
@if($shopping_order->shopping_user->is_from === 'user_order')
|
||||||
@if($shopping_order->shopping_user->is_for === 'me')
|
@if($shopping_order->shopping_user->is_for === 'me')
|
||||||
|
|
@ -256,6 +258,7 @@
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
<hr class="m-0">
|
<hr class="m-0">
|
||||||
<!-- / Shipping -->
|
<!-- / Shipping -->
|
||||||
|
|
||||||
|
|
@ -278,6 +281,10 @@
|
||||||
@if($shopping_order->shopping_user->is_from === 'shopping')
|
@if($shopping_order->shopping_user->is_from === 'shopping')
|
||||||
<strong>Kundenbestellung über Shop</strong>
|
<strong>Kundenbestellung über Shop</strong>
|
||||||
@endif
|
@endif
|
||||||
|
@if($shopping_order->shopping_user->is_from === 'homeparty')
|
||||||
|
<h5>Beraterbestellung für eine Homeparty</h5>
|
||||||
|
<hr>
|
||||||
|
@endif
|
||||||
</h6>
|
</h6>
|
||||||
<style>
|
<style>
|
||||||
table.table-product, table.table-product tr td, table.table-product tr th {
|
table.table-product, table.table-product tr td, table.table-product tr th {
|
||||||
|
|
@ -291,7 +298,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
<div class="table-responsive">
|
@if(!$shopping_order->shopping_user->is_from === 'homeparty')
|
||||||
|
<div class="table-responsive">
|
||||||
<table class="table table-product m-0" style="">
|
<table class="table table-product m-0" style="">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr class="border-bottom">
|
<tr class="border-bottom">
|
||||||
|
|
@ -393,6 +401,105 @@
|
||||||
</tfoot>
|
</tfoot>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
@else
|
||||||
|
@if($shopping_order->homeparty)
|
||||||
|
<style>
|
||||||
|
.table-small {
|
||||||
|
font-size: 0.9em;
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table-small td {
|
||||||
|
padding: 0.225rem 1rem 0.225rem 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-md-extra {
|
||||||
|
padding: 0.3rem 0.6rem;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
line-height: 1.5;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
}
|
||||||
|
.md-btn-extra {
|
||||||
|
width: calc(1.7rem + 2px) !important;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
}
|
||||||
|
.form-control.input-extra {
|
||||||
|
padding: 0.28rem 0.6rem;
|
||||||
|
font-size: 0.8rem;
|
||||||
|
font-weight: 500;
|
||||||
|
min-height: calc(1.8rem + 2px);
|
||||||
|
height: calc(1.8rem + 2px);
|
||||||
|
width: 44px;
|
||||||
|
}
|
||||||
|
.input-group-min-w {
|
||||||
|
min-width: 102px;
|
||||||
|
}
|
||||||
|
.img-extra {
|
||||||
|
min-width:55px;
|
||||||
|
max-height: 120px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table td.border-top {
|
||||||
|
border: none;
|
||||||
|
border-top: 1px solid #ccccdb;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table td {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table th {
|
||||||
|
border: none;
|
||||||
|
border-bottom: 1px solid #c3c3d2;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 767px) {
|
||||||
|
.default-style:not([dir=rtl]) div.card-datatable table.dataTable thead th:first-child,
|
||||||
|
.default-style:not([dir=rtl]) div.card-datatable table.dataTable tbody td:first-child,
|
||||||
|
.default-style:not([dir=rtl]) div.card-datatable table.dataTable tfoot th:first-child {
|
||||||
|
padding-left: 0.6rem !important;
|
||||||
|
|
||||||
|
}
|
||||||
|
.img-extra {
|
||||||
|
min-width:35px;
|
||||||
|
max-height: 160px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.table .foot-small td {
|
||||||
|
padding: 0.225rem 0.625rem;
|
||||||
|
}
|
||||||
|
.table .text-body {
|
||||||
|
font-size: 0.9em;
|
||||||
|
}
|
||||||
|
.table .options a.auto-delete-product {
|
||||||
|
font-size: 0.7em;
|
||||||
|
font-weight: bold;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
.table .min-width-80 {
|
||||||
|
min-width: 160px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
@php($homeparty = $shopping_order->homeparty)
|
||||||
|
@if($homeparty->homeparty_host)
|
||||||
|
<p><strong>Bestellung Gastgeber/in {{$homeparty->homeparty_host->billing_firstname}} {{$homeparty->homeparty_host->billing_lastname}}</strong></p>
|
||||||
|
@include('admin.sales._detail_homparty', ['homeparty'=>$shopping_order->homeparty, 'homeparty_guest' => $homeparty->homeparty_host])
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if($homeparty->homeparty_guests)
|
||||||
|
@php($g_count = 1)
|
||||||
|
@foreach($homeparty->homeparty_guests as $homeparty_guest)
|
||||||
|
<hr>
|
||||||
|
<p><strong>Bestellung {!! $g_count++ !!}. Gast {{$homeparty_guest->billing_firstname}} {{$homeparty_guest->billing_lastname}}</strong></p>
|
||||||
|
@include('admin.sales._detail_homparty', ['homeparty'=>$shopping_order->homeparty, 'homeparty_guest' => $homeparty_guest])
|
||||||
|
@endforeach
|
||||||
|
@endif
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
@include('admin.sales._detail_homparty_total', ['homeparty' => $homeparty])
|
||||||
|
|
||||||
|
@endif
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
<hr class="m-0">
|
<hr class="m-0">
|
||||||
|
|
||||||
|
|
|
||||||
246
resources/views/admin/sales/_detail_homparty.blade.php
Normal file
246
resources/views/admin/sales/_detail_homparty.blade.php
Normal file
|
|
@ -0,0 +1,246 @@
|
||||||
|
@if($homeparty_guest && $homeparty_guest->homeparty_user_order_items->count() || $homeparty_guest->is_host)
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>{{__('Bild')}}</th>
|
||||||
|
<th>{{__('Produkt')}}</th>
|
||||||
|
<th>{{__('Anzahl')}}</th>
|
||||||
|
<th>{{__('Marge')}}</th>
|
||||||
|
<th class="text-right">{{__('EK-Preis')}}</th>
|
||||||
|
<th class="text-right">{{__('Points')}}</th>
|
||||||
|
<th class="text-right">{{__('Verdienst')}}</th>
|
||||||
|
<th class="text-right">{{__('VK-Preis')}}</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
@foreach($homeparty_guest->homeparty_user_order_items as $value)
|
||||||
|
<tr>
|
||||||
|
<td>
|
||||||
|
@if(count($value->product->images))
|
||||||
|
<img class="img-fluid img-extra" alt="" src="{{ route('product_image', [$value->product->images->first()->slug]) }}">
|
||||||
|
@endif
|
||||||
|
</td>
|
||||||
|
<td class="min-width-80">
|
||||||
|
<strong>{{ $value->product->name }}</strong>
|
||||||
|
<div class="text-body">
|
||||||
|
<div>Inhalt: {{ $value->product->contents }}</div>
|
||||||
|
<div>Art.-Nr.: {{ $value->product->number }}</div>
|
||||||
|
</div>
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
{{$value->qty}}
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
{{ $value->margin }}%
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
{{ $value->getFormattedTotalEKPrice() }} €
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
{{ $value->getFormattedTotalPoints() }}
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
{{ $value->getFormattedTotalIncomePrice() }} €
|
||||||
|
</td>
|
||||||
|
<td class="text-right">
|
||||||
|
{{ $value->getFormattedTotalPrice() }} €
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
<tfoot id="insert_show_bonus_host">
|
||||||
|
@php($user_cart = $homeparty->order['user_carts'][$homeparty_guest->id])
|
||||||
|
@php($hp_order = $homeparty->order)
|
||||||
|
|
||||||
|
@if(!$homeparty_guest->is_host)
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="8" class="text-left">
|
||||||
|
@if($homeparty_guest->getDelivery() === 'host')
|
||||||
|
Lieferung an Gastgeber
|
||||||
|
@endif
|
||||||
|
@if($homeparty_guest->getDelivery() === 'direct')
|
||||||
|
Lieferung direkt an den Gast
|
||||||
|
@endif
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@if($homeparty_guest->getDelivery() === 'direct')
|
||||||
|
<tr>
|
||||||
|
<td colspan="5" class="text-left">Versandkosten</td>
|
||||||
|
<td> </td>
|
||||||
|
<td class="text-right"> </td>
|
||||||
|
<td class="text-right">{{ Util::formatNumber($user_cart['shipping_price'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td colspan="4" class="border-top"><strong>Gesamt:</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{Util::formatNumber($user_cart['ek_price'])}} €</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{$user_cart['points']}}</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{Util::formatNumber($user_cart['income_price'])}} €</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{Util::formatNumber($user_cart['price'])}} €</strong></td>
|
||||||
|
</tr>
|
||||||
|
@else
|
||||||
|
@if($hp_order['is_bonus'])
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="5" class="text-left">Gutschrift Homeparty Gutschein</td>
|
||||||
|
<td> </td>
|
||||||
|
<td> </td>
|
||||||
|
<td class="text-right">- {{ Util::formatNumber($hp_order['bonus_value']) }} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
@if($hp_order['is_bonus_coupon'])
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="5" class="text-left">Gutschrift Bonus</td>
|
||||||
|
<td> </td>
|
||||||
|
<td> </td>
|
||||||
|
<td class="text-right">- {{ Util::formatNumber($hp_order['bonus_coupon']) }} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
@if($hp_order['is_bonus'])
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="5" class="text-left">Abzug Points durch Gutschein</td>
|
||||||
|
<td class="text-right">- {{ $hp_order['bonus_points_diff'] }} </td>
|
||||||
|
<td> </td>
|
||||||
|
<td> </td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="5" class="text-left">Versandkosten:</td>
|
||||||
|
<td> </td>
|
||||||
|
<td class="text-right"> </td>
|
||||||
|
<td class="text-right">{{Util::formatNumber($user_cart['shipping_price'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="4" class="border-top"><strong>Summen:</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{Util::formatNumber($user_cart['ek_price'])}} €</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{$user_cart['points']}}</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{Util::formatNumber($user_cart['income_price'])}} €</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{Util::formatNumber($user_cart['price'])}} €</strong></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
@endif
|
||||||
|
</tfoot>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
@if($homeparty_guest->is_host || $homeparty_guest->getDelivery() === 'direct')
|
||||||
|
|
||||||
|
<hr class="m-0">
|
||||||
|
|
||||||
|
<div class="card-body" style="background-color: #E5E9EF">
|
||||||
|
<h6 class="small font-weight-semibold">
|
||||||
|
Lieferadresse
|
||||||
|
</h6>
|
||||||
|
@if($homeparty_guest->same_as_billing)
|
||||||
|
<div class="row">
|
||||||
|
@if($homeparty_guest->billing_company)
|
||||||
|
<div class="col-md-12 mb-3">
|
||||||
|
<div class="text-muted small">Firma</div>
|
||||||
|
{{ $homeparty_guest->billing_company }}
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Anrede</div>
|
||||||
|
{{ \App\Services\HTMLHelper::getSalutationLang($homeparty_guest->billing_salutation) }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Vorname</div>
|
||||||
|
{{ $homeparty_guest->billing_firstname }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Nachname</div>
|
||||||
|
{{ $homeparty_guest->billing_lastname }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Straße</div>
|
||||||
|
{{ $homeparty_guest->billing_address }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Zusatz</div>
|
||||||
|
{{ $homeparty_guest->billing_address_2 }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">PLZ</div>
|
||||||
|
{{ $homeparty_guest->billing_zipcode }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Stadt</div>
|
||||||
|
{{ $homeparty_guest->billing_city }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">E-Mail</div>
|
||||||
|
{{ $homeparty_guest->billing_email }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Telefon</div>
|
||||||
|
{{ $homeparty_guest->billing_phone }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Land</div>
|
||||||
|
{{ $homeparty_guest->billing_country->getLocated() }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@else
|
||||||
|
<div class="row">
|
||||||
|
@if($homeparty_guest->shipping_company)
|
||||||
|
<div class="col-md-12 mb-3">
|
||||||
|
<div class="text-muted small">Firma</div>
|
||||||
|
{{ $homeparty_guest->shipping_company }}
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Anrede</div>
|
||||||
|
{{ \App\Services\HTMLHelper::getSalutationLang($homeparty_guest->shipping_salutation) }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Vorname</div>
|
||||||
|
{{ $homeparty_guest->shipping_firstname }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Nachname</div>
|
||||||
|
{{ $homeparty_guest->shipping_lastname }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Straße</div>
|
||||||
|
{{ $homeparty_guest->shipping_address }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Zusatz</div>
|
||||||
|
{{ $homeparty_guest->shipping_address_2 }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">PLZ</div>
|
||||||
|
{{ $homeparty_guest->shipping_zipcode }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Stadt</div>
|
||||||
|
{{ $homeparty_guest->shipping_city }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">E-Mail</div>
|
||||||
|
{{ $homeparty_guest->shipping_email }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Telefon</div>
|
||||||
|
{{ $homeparty_guest->shipping_phone }}
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3 mb-3">
|
||||||
|
<div class="text-muted small">Land</div>
|
||||||
|
{{ $homeparty_guest->shipping_country->getLocated() }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@else
|
||||||
|
<p>Keine Bestellung</p>
|
||||||
|
@endif
|
||||||
58
resources/views/admin/sales/_detail_homparty_total.blade.php
Normal file
58
resources/views/admin/sales/_detail_homparty_total.blade.php
Normal file
|
|
@ -0,0 +1,58 @@
|
||||||
|
<div class="table-responsive">
|
||||||
|
<table class="table table-striped">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Gesamt</th>
|
||||||
|
<th class="text-right">{{__('EK-Preis')}}</th>
|
||||||
|
<th class="text-right">{{__('Points')}}</th>
|
||||||
|
<th class="text-right">{{__('Verdienst')}}</th>
|
||||||
|
<th class="text-right">{{__('VK-Preis')}}</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
|
||||||
|
|
||||||
|
</tbody>
|
||||||
|
<tfoot>
|
||||||
|
@php($hp_order = $homeparty->order)
|
||||||
|
|
||||||
|
@if($hp_order['is_bonus'])
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="4" class="border-top">
|
||||||
|
{{ $hp_order['voucher_name'] }}
|
||||||
|
</td>
|
||||||
|
<td class="border-top text-right">{{ Util::formatNumber($hp_order['voucher_price'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="1" class="border-top">
|
||||||
|
<strong>Gesamtsummen:</strong>
|
||||||
|
</td>
|
||||||
|
<td class="border-top text-right"><strong>{{ Util::formatNumber($hp_order['ek_price'])}} €</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{ $hp_order['points']}}</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{ Util::formatNumber($hp_order['income_price'])}} €</strong></td>
|
||||||
|
<td class="border-top text-right"><strong>{{ Util::formatNumber($hp_order['price'])}} €</strong></td>
|
||||||
|
</tr>
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="1" class="text-muted">
|
||||||
|
Summe ohne MwSt:
|
||||||
|
</td>
|
||||||
|
<td class=""> </td>
|
||||||
|
|
||||||
|
<td class=""> </td>
|
||||||
|
<td class=""> </td>
|
||||||
|
<td class="text-muted text-right">{{ Util::formatNumber($hp_order['price_net'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="1" class="text-muted">
|
||||||
|
Enthaltene MwSt:
|
||||||
|
</td>
|
||||||
|
<td class=""> </td>
|
||||||
|
|
||||||
|
<td class=""> </td>
|
||||||
|
<td class=""> </td>
|
||||||
|
<td class="text-muted text-right">{{ Util::formatNumber($hp_order['price']-$hp_order['price_net'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
@ -165,10 +165,35 @@
|
||||||
@if($shopping_order->shopping_user->is_from === 'shopping')
|
@if($shopping_order->shopping_user->is_from === 'shopping')
|
||||||
<b>{{__('email.checkout_mail_hl1')}}</b>
|
<b>{{__('email.checkout_mail_hl1')}}</b>
|
||||||
@endif
|
@endif
|
||||||
|
@if($shopping_order->shopping_user->is_from === 'homeparty')
|
||||||
|
<b>{{ __('navigation.my_homeparty') }} / {{ $shopping_order->homeparty->name }} - {{ $shopping_order->homeparty->date }}</b><br>
|
||||||
|
<b>{{__('email.checkout_mail_hl1')}}</b>
|
||||||
|
@endif
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
|
@if($shopping_order->shopping_user->is_from === 'homeparty')
|
||||||
|
|
||||||
|
|
||||||
|
@php($homeparty = $shopping_order->homeparty)
|
||||||
|
@if($homeparty->homeparty_host)
|
||||||
|
<p><strong>Bestellung Gastgeber/in {{$homeparty->homeparty_host->billing_firstname}} {{$homeparty->homeparty_host->billing_lastname}}</strong></p>
|
||||||
|
@include('emails.homeparty_detail', ['homeparty'=>$shopping_order->homeparty, 'homeparty_guest' => $homeparty->homeparty_host])
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if($homeparty->homeparty_guests)
|
||||||
|
@php($g_count = 1)
|
||||||
|
@foreach($homeparty->homeparty_guests as $homeparty_guest)
|
||||||
|
<hr>
|
||||||
|
<p><strong>Bestellung {!! $g_count++ !!}. Gast {{$homeparty_guest->billing_firstname}} {{$homeparty_guest->billing_lastname}}</strong></p>
|
||||||
|
@include('emails.homeparty_detail', ['homeparty'=>$shopping_order->homeparty, 'homeparty_guest' => $homeparty_guest])
|
||||||
|
@endforeach
|
||||||
|
@endif
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
@include('emails.homeparty_detail_total', ['homeparty' => $homeparty])
|
||||||
|
@else
|
||||||
<table style="padding: 20px; border:1px solid #eee; background-color: #f6fdf5;line-height:1.6em;" cellpadding="2" cellspacing="0" width="100%">
|
<table style="padding: 20px; border:1px solid #eee; background-color: #f6fdf5;line-height:1.6em;" cellpadding="2" cellspacing="0" width="100%">
|
||||||
<tr>
|
<tr>
|
||||||
<th style="color:#43413f; text-align: left; vertical-align: top;line-height:1.2em;">Produkt</th>
|
<th style="color:#43413f; text-align: left; vertical-align: top;line-height:1.2em;">Produkt</th>
|
||||||
|
|
@ -256,6 +281,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@endif
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -211,10 +211,35 @@
|
||||||
@if($shopping_order->shopping_user->is_from === 'shopping')
|
@if($shopping_order->shopping_user->is_from === 'shopping')
|
||||||
<b>{{__('email.checkout_mail_hl1')}}</b>
|
<b>{{__('email.checkout_mail_hl1')}}</b>
|
||||||
@endif
|
@endif
|
||||||
|
@if($shopping_order->shopping_user->is_from === 'homeparty')
|
||||||
|
<b>{{ __('navigation.my_homeparty') }} / {{ $shopping_order->homeparty->name }} - {{ $shopping_order->homeparty->date }}</b><br>
|
||||||
|
<b>{{__('email.checkout_mail_hl1')}}</b>
|
||||||
|
@endif
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
|
@if($shopping_order->shopping_user->is_from === 'homeparty')
|
||||||
|
|
||||||
|
|
||||||
|
@php($homeparty = $shopping_order->homeparty)
|
||||||
|
@if($homeparty->homeparty_host)
|
||||||
|
<p><strong>Bestellung Gastgeber/in {{$homeparty->homeparty_host->billing_firstname}} {{$homeparty->homeparty_host->billing_lastname}}</strong></p>
|
||||||
|
@include('emails.homeparty_detail', ['homeparty'=>$shopping_order->homeparty, 'homeparty_guest' => $homeparty->homeparty_host])
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if($homeparty->homeparty_guests)
|
||||||
|
@php($g_count = 1)
|
||||||
|
@foreach($homeparty->homeparty_guests as $homeparty_guest)
|
||||||
|
<hr>
|
||||||
|
<p><strong>Bestellung {!! $g_count++ !!}. Gast {{$homeparty_guest->billing_firstname}} {{$homeparty_guest->billing_lastname}}</strong></p>
|
||||||
|
@include('emails.homeparty_detail', ['homeparty'=>$shopping_order->homeparty, 'homeparty_guest' => $homeparty_guest])
|
||||||
|
@endforeach
|
||||||
|
@endif
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
@include('emails.homeparty_detail_total', ['homeparty' => $homeparty])
|
||||||
|
@else
|
||||||
<table style="padding: 20px; border:1px solid #eee; background-color: #f6fdf5;line-height:1.6em;" cellpadding="2" cellspacing="0" width="100%">
|
<table style="padding: 20px; border:1px solid #eee; background-color: #f6fdf5;line-height:1.6em;" cellpadding="2" cellspacing="0" width="100%">
|
||||||
<tr>
|
<tr>
|
||||||
<th style="color:#43413f; text-align: left; vertical-align: top;line-height:1.2em;">Produkt</th>
|
<th style="color:#43413f; text-align: left; vertical-align: top;line-height:1.2em;">Produkt</th>
|
||||||
|
|
@ -302,6 +327,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@endif
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
|
|
||||||
142
resources/views/emails/homeparty_detail.blade.php
Normal file
142
resources/views/emails/homeparty_detail.blade.php
Normal file
|
|
@ -0,0 +1,142 @@
|
||||||
|
@if($homeparty_guest && $homeparty_guest->homeparty_user_order_items->count() || $homeparty_guest->is_host)
|
||||||
|
|
||||||
|
<table style="padding: 20px; border:1px solid #eee; background-color: #f6fdf5;line-height:1.6em;" cellpadding="2" cellspacing="0" width="100%">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th>{{__('Produkt')}}</th>
|
||||||
|
<th style="color:#37302d; text-align: right;">{{__('Anzahl')}}</th>
|
||||||
|
<th style="color:#37302d; text-align: right;">{{__('VK-Preis')}}</th>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
@foreach($homeparty_guest->homeparty_user_order_items as $value)
|
||||||
|
<tr>
|
||||||
|
|
||||||
|
<td style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">
|
||||||
|
<strong>{{ $value->product->name }}</strong><br>
|
||||||
|
Art.-Nr.: {{ $value->product->number }}
|
||||||
|
</td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">
|
||||||
|
{{$value->qty}}
|
||||||
|
</td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">
|
||||||
|
{{ $value->getFormattedTotalPrice() }} €
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@endforeach
|
||||||
|
|
||||||
|
@php($user_cart = $homeparty->order['user_carts'][$homeparty_guest->id])
|
||||||
|
@php($hp_order = $homeparty->order)
|
||||||
|
|
||||||
|
@if(!$homeparty_guest->is_host)
|
||||||
|
<tr>
|
||||||
|
<td colspan="3" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">
|
||||||
|
@if($homeparty_guest->getDelivery() === 'host')
|
||||||
|
Lieferung an Gastgeber
|
||||||
|
@endif
|
||||||
|
@if($homeparty_guest->getDelivery() === 'direct')
|
||||||
|
Lieferung direkt an den Gast
|
||||||
|
@endif
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
@if($homeparty_guest->getDelivery() === 'direct')
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">Versandkosten</td>
|
||||||
|
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">{{ Util::formatNumber($user_cart['shipping_price'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;"><strong>Gesamt:</strong></td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;"><strong>{{Util::formatNumber($user_cart['price'])}} €</strong></td>
|
||||||
|
</tr>
|
||||||
|
@else
|
||||||
|
@if($hp_order['is_bonus'])
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">Gutschrift Homeparty Gutschein</td>
|
||||||
|
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">- {{ Util::formatNumber($hp_order['bonus_value']) }} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
@if($hp_order['is_bonus_coupon'])
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">Gutschrift Bonus</td>
|
||||||
|
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">- {{ Util::formatNumber($hp_order['bonus_coupon']) }} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
@if($hp_order['is_bonus'])
|
||||||
|
|
||||||
|
@endif
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">Versandkosten:</td>
|
||||||
|
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">{{Util::formatNumber($user_cart['shipping_price'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;"><strong>Summen:</strong></td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;"><strong>{{Util::formatNumber($user_cart['price'])}} €</strong></td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
</table>
|
||||||
|
|
||||||
|
@if($homeparty_guest->is_host || $homeparty_guest->getDelivery() === 'direct')
|
||||||
|
<table style="padding: 0px; border:1px solid #eee; background-color: #f6fdf5;line-height:1.6em;" cellpadding="2" cellspacing="0" width="100%">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td style="color:#37302d; ">
|
||||||
|
<table style="padding: 20px; border:1px solid #eee; background-color: #f6fdf5" cellpadding="0" cellspacing="0" width="100%">
|
||||||
|
<tr>
|
||||||
|
<td style="color:#37302d;line-height:1.6em;">
|
||||||
|
@if($homeparty_guest->same_as_billing)
|
||||||
|
@if($homeparty_guest->billing_company)
|
||||||
|
{{ $homeparty_guest->billing_company }}<br>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
{{ $homeparty_guest->billing_firstname }}
|
||||||
|
{{ $homeparty_guest->billing_lastname }} <br>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
{{ $homeparty_guest->billing_address }} <br>
|
||||||
|
@if($homeparty_guest->billing_address_2)
|
||||||
|
{{ $homeparty_guest->billing_address_2 }}<br>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
{{ $homeparty_guest->billing_zipcode }}
|
||||||
|
{{ $homeparty_guest->billing_city }} <br>
|
||||||
|
{{ $homeparty_guest->billing_country->getLocated() }} <br>
|
||||||
|
|
||||||
|
@if($homeparty_guest->billing_phone)
|
||||||
|
<br><br> {{ $homeparty_guest->billing_phone }}<br>
|
||||||
|
@endif
|
||||||
|
@else
|
||||||
|
@if($homeparty_guest->shipping_company)
|
||||||
|
{{ $homeparty_guest->shipping_company }}<br>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
{{ $homeparty_guest->shipping_firstname }}
|
||||||
|
{{ $homeparty_guest->shipping_lastname }} <br>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
{{ $homeparty_guest->shipping_address }} <br>
|
||||||
|
@if($homeparty_guest->shipping_address_2)
|
||||||
|
{{ $homeparty_guest->shipping_address_2 }}<br>
|
||||||
|
@endif
|
||||||
|
|
||||||
|
{{ $homeparty_guest->shipping_zipcode }}
|
||||||
|
{{ $homeparty_guest->shipping_city }} <br>
|
||||||
|
{{ $homeparty_guest->shipping_country->getLocated() }} <br>
|
||||||
|
|
||||||
|
@if($homeparty_guest->shipping_phone)
|
||||||
|
<br><br> {{ $homeparty_guest->shipping_phone }}<br>
|
||||||
|
@endif
|
||||||
|
@endif
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
@endif
|
||||||
|
@endif
|
||||||
38
resources/views/emails/homeparty_detail_total.blade.php
Normal file
38
resources/views/emails/homeparty_detail_total.blade.php
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
|
||||||
|
@php($hp_order = $homeparty->order)
|
||||||
|
<table style="padding: 20px; border:1px solid #eee; background-color: #f6fdf5;line-height:1.6em;" cellpadding="2" cellspacing="0" width="100%">
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<th>Gesamt</th>
|
||||||
|
<th style="color:#37302d; text-align: right;">{{__('VK-Preis')}}</th>
|
||||||
|
</tr>
|
||||||
|
@if($hp_order['is_bonus'])
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">
|
||||||
|
{{ $hp_order['voucher_name'] }}
|
||||||
|
</td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">{{ Util::formatNumber($hp_order['voucher_price'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
@endif
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">
|
||||||
|
<strong>Gesamtsummen:</strong>
|
||||||
|
</td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;"><strong>{{ Util::formatNumber($hp_order['price'])}} €</strong></td>
|
||||||
|
</tr>
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">
|
||||||
|
Summe ohne MwSt:
|
||||||
|
</td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">{{ Util::formatNumber($hp_order['price_net'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="foot-small">
|
||||||
|
<td colspan="2" style="color:#37302d; text-align: left; vertical-align: top;line-height:1.6em;">
|
||||||
|
Enthaltene MwSt:
|
||||||
|
</td>
|
||||||
|
<td style="color:#37302d; text-align: right; vertical-align: top;line-height:1.6em;">{{ Util::formatNumber($hp_order['price']-$hp_order['price_net'])}} €</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
</table>
|
||||||
|
|
||||||
|
|
@ -3,7 +3,9 @@
|
||||||
@section('content')
|
@section('content')
|
||||||
<h4 class="font-weight-bold py-2 mb-2 d-flex justify-content-between align-items-center w-100 ">
|
<h4 class="font-weight-bold py-2 mb-2 d-flex justify-content-between align-items-center w-100 ">
|
||||||
<div>{{ __('navigation.my_homeparty') }} / {{ $homeparty->name }} - {{ $homeparty->date }}</div>
|
<div>{{ __('navigation.my_homeparty') }} / {{ $homeparty->name }} - {{ $homeparty->date }}</div>
|
||||||
<a href="{{route('user_homeparty_guest_detail', [$homeparty->id, 'new'])}}" class="btn btn-sm btn-secondary rounded-pill d-block float-right"><span class="ion ion-md-add"></span> Neue Gast anlegen</a>
|
@if(!$homeparty->completed)
|
||||||
|
<a href="{{route('user_homeparty_guest_detail', [$homeparty->id, 'new'])}}" class="btn btn-sm btn-secondary rounded-pill d-block float-right"><span class="ion ion-md-add"></span> Neue Gast anlegen</a>
|
||||||
|
@endif
|
||||||
</h4>
|
</h4>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
@ -24,6 +26,8 @@
|
||||||
</a>
|
</a>
|
||||||
{{-- <span class="badge badge-success align-text-bottom ml-1">offen ...</span> --}}
|
{{-- <span class="badge badge-success align-text-bottom ml-1">offen ...</span> --}}
|
||||||
</div>
|
</div>
|
||||||
|
@if(!$homeparty->completed)
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<a href="{{route('user_homeparty_guest_detail', [$homeparty->id, $homeparty_user->id])}}" class="btn btn-sm btn-secondary mr-2"><i class="fa fa-edit"></i> bearbeiten</a>
|
<a href="{{route('user_homeparty_guest_detail', [$homeparty->id, $homeparty_user->id])}}" class="btn btn-sm btn-secondary mr-2"><i class="fa fa-edit"></i> bearbeiten</a>
|
||||||
<div class="btn-group project-actions">
|
<div class="btn-group project-actions">
|
||||||
|
|
@ -46,6 +50,7 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
<div class="progress rounded-0" style="height: 2px;">
|
<div class="progress rounded-0" style="height: 2px;">
|
||||||
<div class="progress-bar" style="width: 100%;"></div>
|
<div class="progress-bar" style="width: 100%;"></div>
|
||||||
|
|
@ -79,7 +84,10 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-left mt-1">
|
<div class="text-left mt-1">
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-2"><i class="ion ion-ios-cog"></i> Homparty verwalten</a>
|
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-2"><i class="ion ion-ios-cog"></i> Homparty verwalten</a>
|
||||||
|
@endif
|
||||||
|
<a href="{{route('user_homeparty_order', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-2"><i class="ion ion-md-basket"></i> Bestellung</a>
|
||||||
<a href="{{route('user_homepartys')}}" class="btn btn-sm btn-default mb-2">zurück zur Übersicht</a>
|
<a href="{{route('user_homepartys')}}" class="btn btn-sm btn-default mb-2">zurück zur Übersicht</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,8 +14,12 @@
|
||||||
<div class="card-body d-flex justify-content-between align-items-start pb-2">
|
<div class="card-body d-flex justify-content-between align-items-start pb-2">
|
||||||
<div>
|
<div>
|
||||||
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="text-body text-big font-weight-semibold">{{$homeparty->name}}</a>
|
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="text-body text-big font-weight-semibold">{{$homeparty->name}}</a>
|
||||||
{{-- <span class="badge badge-success align-text-bottom ml-1">offen ...</span> --}}
|
@if($homeparty->completed)
|
||||||
|
<span class="badge badge-secondary align-text-bottom ml-1">abgeschlossen</span>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
|
@if(!$homeparty->completed)
|
||||||
|
|
||||||
<div class="btn-group project-actions">
|
<div class="btn-group project-actions">
|
||||||
<button type="button" class="btn btn-sm btn-default icon-btn borderless rounded-pill md-btn-flat dropdown-toggle hide-arrow" data-toggle="dropdown">
|
<button type="button" class="btn btn-sm btn-default icon-btn borderless rounded-pill md-btn-flat dropdown-toggle hide-arrow" data-toggle="dropdown">
|
||||||
<i class="ion ion-ios-more"></i>
|
<i class="ion ion-ios-more"></i>
|
||||||
|
|
@ -27,6 +31,7 @@
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
<div class="progress rounded-0" style="height: 2px;">
|
<div class="progress rounded-0" style="height: 2px;">
|
||||||
<div class="progress-bar" style="width: 100%;"></div>
|
<div class="progress-bar" style="width: 100%;"></div>
|
||||||
|
|
@ -50,14 +55,15 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="text-muted small">Umsatz</div>
|
<div class="text-muted small">Umsatz</div>
|
||||||
<div class="font-weight-bold">0</div>
|
<div class="font-weight-bold">@if(isset($homeparty->order['price'])){{Util::formatNumber($homeparty->order['price'])}}@endif</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="text-muted small">Points</div>
|
<div class="text-muted small">Points</div>
|
||||||
<div class="font-weight-bold">0</div>
|
<div class="font-weight-bold">@if(isset($homeparty->order['points'])){{$homeparty->order['points']}}@endif</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<hr class="m-0">
|
<hr class="m-0">
|
||||||
<div class="card-body py-3">
|
<div class="card-body py-3">
|
||||||
<div class="form-group mb-0">
|
<div class="form-group mb-0">
|
||||||
|
|
@ -69,12 +75,21 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
<hr class="m-0">
|
<hr class="m-0">
|
||||||
<div class="card-body py-3">
|
<div class="card-body py-3">
|
||||||
<div class="d-flex flex-wrap">
|
<div class="d-flex flex-wrap">
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-ios-cog"></i> Verwalten</a>
|
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-ios-cog"></i> Verwalten</a>
|
||||||
<a href="{{route('user_homeparty_guests', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-md-person-add"></i> Gäste anlegen</a>
|
<a href="{{route('user_homeparty_guests', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-md-person-add"></i> Gäste anlegen</a>
|
||||||
<a href="{{route('user_homeparty_order', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-md-basket"></i> Bestellung</a>
|
<a href="{{route('user_homeparty_order', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-md-basket"></i> Bestellung</a>
|
||||||
|
|
||||||
|
@else
|
||||||
|
<a href="{{route('user_homeparty_guests', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-md-person"></i> Gäste ansehen</a>
|
||||||
|
<a href="{{route('user_homeparty_order', [$homeparty->id])}}" class="btn btn-secondary mr-2 mb-2"><i class="ion ion-md-basket"></i> Bestellung ansehen</a>
|
||||||
|
|
||||||
|
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -84,6 +84,10 @@
|
||||||
<a href="{{route('user_homepartys')}}" class="btn btn-sm btn-default float-right">zurück</a>
|
<a href="{{route('user_homepartys')}}" class="btn btn-sm btn-default float-right">zurück</a>
|
||||||
</h4>
|
</h4>
|
||||||
|
|
||||||
|
@if($userHistoryPaymentOrder && $userHistoryPaymentOrder->status > 2)
|
||||||
|
<h6 class="alert badge-{{$userHistoryPaymentOrder->getStatusColor()}}">Eine Zahlung wurde ausgeführt. Status: {{ trans('payment.status.'.$userHistoryPaymentOrder->getStatusType())}}</h6>
|
||||||
|
@endif
|
||||||
|
|
||||||
{!! Form::open(['url' => route('user_homeparty_order', [$homeparty->id]), 'class' => 'form-horizontal', 'id'=>'homeparty-order-form']) !!}
|
{!! Form::open(['url' => route('user_homeparty_order', [$homeparty->id]), 'class' => 'form-horizontal', 'id'=>'homeparty-order-form']) !!}
|
||||||
|
|
||||||
<div class="card mb-4">
|
<div class="card mb-4">
|
||||||
|
|
@ -92,10 +96,12 @@
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<div class="d-flex justify-content-between align-items-center w-100">
|
<div class="d-flex justify-content-between align-items-center w-100">
|
||||||
<div>Bestellung anlegen</div>
|
<div>Bestellung anlegen</div>
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-1"><i class="ion ion-ios-cog"></i> Verwalten</a>
|
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-1"><i class="ion ion-ios-cog"></i> Verwalten</a>
|
||||||
<a href="{{route('user_homeparty_guests', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-1"><i class="ion ion-md-person-add"></i> Gäste anlegen</a>
|
<a href="{{route('user_homeparty_guests', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-1"><i class="ion ion-md-person-add"></i> Gäste anlegen</a>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -103,7 +109,11 @@
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-md-6">
|
<div class="col-md-6">
|
||||||
<h6>Lieferadresse Gastgeber/in <a href="{{route('user_homeparty_guest_detail', [$homeparty->id, $homeparty->homeparty_host->id])}}"><i class="fa fa-edit"></i> </a></h6>
|
<h6>Lieferadresse Gastgeber/in
|
||||||
|
@if(!$homeparty->completed)
|
||||||
|
<a href="{{route('user_homeparty_guest_detail', [$homeparty->id, $homeparty->homeparty_host->id])}}"><i class="fa fa-edit"></i> </a>
|
||||||
|
@endif
|
||||||
|
</h6>
|
||||||
@include('user.homeparty._address', ['homeparty_user' => $homeparty->homeparty_host])
|
@include('user.homeparty._address', ['homeparty_user' => $homeparty->homeparty_host])
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
@ -128,6 +138,7 @@
|
||||||
<div>Bestellung Gastgeber/in {{$homeparty->homeparty_host->billing_firstname}} {{$homeparty->homeparty_host->billing_lastname}}</div>
|
<div>Bestellung Gastgeber/in {{$homeparty->homeparty_host->billing_firstname}} {{$homeparty->homeparty_host->billing_lastname}}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<button type="button" class="btn btn-sm btn-secondary btn-block mt-2" data-toggle="modal" data-target="#modals-load-content"
|
<button type="button" class="btn btn-sm btn-secondary btn-block mt-2" data-toggle="modal" data-target="#modals-load-content"
|
||||||
data-id="{{ $homeparty->id }}"
|
data-id="{{ $homeparty->id }}"
|
||||||
|
|
@ -135,6 +146,7 @@
|
||||||
data-user_id="{{$homeparty->homeparty_host->id}}"
|
data-user_id="{{$homeparty->homeparty_host->id}}"
|
||||||
data-route="{{ route('modal_load') }}"><i class="fa fa-plus-circle"></i> Produkt hinzufügen</button>
|
data-route="{{ route('modal_load') }}"><i class="fa fa-plus-circle"></i> Produkt hinzufügen</button>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</h5>
|
</h5>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
|
@ -156,6 +168,7 @@
|
||||||
<div>Bestellung {!! $g_count++ !!}. Gast {{$homeparty_guest->billing_firstname}} {{$homeparty_guest->billing_lastname}}</div>
|
<div>Bestellung {!! $g_count++ !!}. Gast {{$homeparty_guest->billing_firstname}} {{$homeparty_guest->billing_lastname}}</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<button type="button" class="btn btn-sm btn-secondary btn-block mt-2" data-toggle="modal" data-target="#modals-load-content"
|
<button type="button" class="btn btn-sm btn-secondary btn-block mt-2" data-toggle="modal" data-target="#modals-load-content"
|
||||||
data-id="{{ $homeparty->id }}"
|
data-id="{{ $homeparty->id }}"
|
||||||
|
|
@ -163,6 +176,7 @@
|
||||||
data-user_id="{{$homeparty_guest->id}}"
|
data-user_id="{{$homeparty_guest->id}}"
|
||||||
data-route="{{ route('modal_load') }}"><i class="fa fa-plus-circle"></i> Produkt hinzufügen</button>
|
data-route="{{ route('modal_load') }}"><i class="fa fa-plus-circle"></i> Produkt hinzufügen</button>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</h5>
|
</h5>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
|
|
@ -186,31 +200,32 @@
|
||||||
</div>
|
</div>
|
||||||
</h5>
|
</h5>
|
||||||
|
|
||||||
{{-- TODO Berechnung des WK --}}
|
|
||||||
|
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<div id="insert_show_total_order">
|
<div id="insert_show_total_order">
|
||||||
@include('user.homeparty.show_total_order', ['homeparty' => $homeparty])
|
@include('user.homeparty.show_total_order', ['homeparty' => $homeparty])
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
@if(!$homeparty->completed)
|
||||||
|
<hr>
|
||||||
@if($homeparty->homeparty_host && $homeparty->homeparty_host->isAddress())
|
@if($homeparty->homeparty_host && $homeparty->homeparty_host->isAddress())
|
||||||
<div class="float-right">
|
<div class="float-right">
|
||||||
<button type="submit" class="btn btn-secondary"><i class="ion ion-ios-redo"></i> bestätigen und weiter zur Kasse</button>
|
<button type="submit" class="btn btn-secondary"><i class="ion ion-ios-redo"></i> bestätigen und weiter zur Kasse</button>
|
||||||
</div>
|
|
||||||
<br><br>
|
|
||||||
<em class="small text-center"> <i class="fa fa-lock"></i> Du wirst auf unseren checkout Server weitergeletet, die Verbindung ist SSL verschlüsselt.</em>
|
|
||||||
@else
|
|
||||||
<div class="alert alert-warning">
|
|
||||||
Die Bestellung kann erst abgesendet werden, wenn die Lieferadresse Gastgeber/in angelegt ist. <a href="{{route('user_homeparty_guest_detail', [$homeparty->id, $homeparty->homeparty_host->id])}}"><i class="fa fa-edit"></i> </a></h6>
|
|
||||||
</div>
|
</div>
|
||||||
|
<br><br>
|
||||||
|
<em class="small text-center"> <i class="fa fa-lock"></i> Du wirst auf unseren checkout Server weitergeletet, die Verbindung ist SSL verschlüsselt.</em>
|
||||||
|
@else
|
||||||
|
<div class="alert alert-warning">
|
||||||
|
Die Bestellung kann erst abgesendet werden, wenn die Lieferadresse Gastgeber/in angelegt ist. <a href="{{route('user_homeparty_guest_detail', [$homeparty->id, $homeparty->homeparty_host->id])}}"><i class="fa fa-edit"></i> </a></h6>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
@endif
|
||||||
@endif
|
@endif
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="text-left mt-3">
|
<div class="text-left mt-3">
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-2"><i class="ion ion-ios-cog"></i> Homparty verwalten</a>
|
<a href="{{route('user_homeparty_detail', [$homeparty->id])}}" class="btn btn-sm btn-secondary mr-2 mb-2"><i class="ion ion-ios-cog"></i> Homparty verwalten</a>
|
||||||
|
@endif
|
||||||
<a href="{{route('user_homepartys')}}" class="btn btn-sm btn-default mb-2">zurück zur Übersicht</a>
|
<a href="{{route('user_homepartys')}}" class="btn btn-sm btn-default mb-2">zurück zur Übersicht</a>
|
||||||
</div>
|
</div>
|
||||||
{!! Form::close() !!}
|
{!! Form::close() !!}
|
||||||
|
|
|
||||||
|
|
@ -27,8 +27,8 @@
|
||||||
<tr class="foot-small">
|
<tr class="foot-small">
|
||||||
<td colspan="5" class="text-left">Versandkosten:</td>
|
<td colspan="5" class="text-left">Versandkosten:</td>
|
||||||
<td> </td>
|
<td> </td>
|
||||||
<td> </td>
|
<td class="text-right"> </td>
|
||||||
<td class="text-right">0 €</td>
|
<td class="text-right">{{$user_cart->getFormattedShippingPrice()}} €</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="4" class="border-top"><strong>Gesamt:</strong></td>
|
<td colspan="4" class="border-top"><strong>Gesamt:</strong></td>
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
@if($homeparty_guest && $homeparty_guest->homeparty_user_order_items->count())
|
@if($homeparty_guest && $homeparty_guest->homeparty_user_order_items->count() || $homeparty_guest->is_host)
|
||||||
<div class="table-responsive">
|
<div class="table-responsive">
|
||||||
<table class="table table-striped">
|
<table class="table table-striped">
|
||||||
<thead>
|
<thead>
|
||||||
|
|
@ -27,11 +27,14 @@
|
||||||
<div>Inhalt: {{ $value->product->contents }}</div>
|
<div>Inhalt: {{ $value->product->contents }}</div>
|
||||||
<div>Art.-Nr.: {{ $value->product->number }}</div>
|
<div>Art.-Nr.: {{ $value->product->number }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="options">
|
@if(!$homeparty->completed)
|
||||||
|
<div class="options">
|
||||||
<a href="#" class="auto-delete-product remove_item_form_cart product-tooltip" data-order-item-id="{{$value->id}}" data-product-id="{{ $value->product->id }}"><i class="fa fa-times"></i> Artikel entfernen</a>
|
<a href="#" class="auto-delete-product remove_item_form_cart product-tooltip" data-order-item-id="{{$value->id}}" data-product-id="{{ $value->product->id }}"><i class="fa fa-times"></i> Artikel entfernen</a>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
|
@if(!$homeparty->completed)
|
||||||
<div class="no-line-break input-group-min-w">
|
<div class="no-line-break input-group-min-w">
|
||||||
<div class="input-group d-inline-flex w-auto">
|
<div class="input-group d-inline-flex w-auto">
|
||||||
<span class="input-group-prepend">
|
<span class="input-group-prepend">
|
||||||
|
|
@ -43,6 +46,9 @@
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@else
|
||||||
|
{{$value->qty}}
|
||||||
|
@endif
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
{{ $value->margin }}%
|
{{ $value->margin }}%
|
||||||
|
|
@ -67,21 +73,36 @@
|
||||||
@php($user_cart = \App\Services\HomepartyCart::getUserCart($homeparty_guest->id))
|
@php($user_cart = \App\Services\HomepartyCart::getUserCart($homeparty_guest->id))
|
||||||
@if(!$homeparty_guest->is_host)
|
@if(!$homeparty_guest->is_host)
|
||||||
<tr class="foot-small">
|
<tr class="foot-small">
|
||||||
|
|
||||||
|
@if(!$homeparty_guest->isAddress())
|
||||||
|
<td colspan="3" class="border-top">
|
||||||
|
<p>Keine Lieferadresse angelegt <a href="{{route('user_homeparty_guest_detail', [$homeparty_guest->homeparty->id, $homeparty_guest->id])}}"><i class="fa fa-edit"></i> </a></p>
|
||||||
|
<td colspan="5" class="border-top"> </td>
|
||||||
|
@else
|
||||||
<td colspan="3" class="border-top">
|
<td colspan="3" class="border-top">
|
||||||
<select class="custom-select" name="filter_member_id" id="filter_member_id">
|
@if(!$homeparty->completed)
|
||||||
<option value="">Lieferung an Gastgeber</option>
|
|
||||||
<option value="">Lieferung direkt an den Gast</option>
|
<select class="custom-select select_delivery_option" name="select_delivery_option">
|
||||||
|
<option value="host" @if($homeparty_guest->getDelivery() === 'host') selected @endif>Lieferung an Gastgeber</option>
|
||||||
|
<option value="direct" @if($homeparty_guest->getDelivery() === 'direct') selected @endif>Lieferung direkt an den Gast</option>
|
||||||
</select>
|
</select>
|
||||||
|
@else
|
||||||
|
@if($homeparty_guest->getDelivery() === 'host') Lieferung an Gastgeber @endif
|
||||||
|
@if($homeparty_guest->getDelivery() === 'direct') Lieferung direkt an den Gast @endif
|
||||||
|
@endif
|
||||||
</td>
|
</td>
|
||||||
<td colspan="5" class="border-top"> </td>
|
<td colspan="5" class="border-top"> </td>
|
||||||
|
@endif
|
||||||
</tr>
|
</tr>
|
||||||
{{-- <tr>
|
@if($homeparty_guest->getDelivery() === 'direct')
|
||||||
|
<tr>
|
||||||
<td colspan="5" class="text-left">Versandkosten</td>
|
<td colspan="5" class="text-left">Versandkosten</td>
|
||||||
<td>12</td>
|
|
||||||
<td> </td>
|
<td> </td>
|
||||||
<td>25,00 €</td>
|
<td class="text-right"> </td>
|
||||||
|
<td class="text-right">{{$user_cart->getFormattedShippingPrice()}} €</td>
|
||||||
</tr>
|
</tr>
|
||||||
--}}
|
@endif
|
||||||
|
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="4" class="border-top"><strong>Gesamt:</strong></td>
|
<td colspan="4" class="border-top"><strong>Gesamt:</strong></td>
|
||||||
<td class="border-top text-right"><strong>{{$user_cart->getFormattedEkPrice()}} €</strong></td>
|
<td class="border-top text-right"><strong>{{$user_cart->getFormattedEkPrice()}} €</strong></td>
|
||||||
|
|
|
||||||
|
|
@ -57,13 +57,12 @@
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</tbody>
|
</tbody>
|
||||||
<tfoot>
|
<tfoot>
|
||||||
@if(\App\Services\HomepartyCart::$is_bonus)
|
@if(\App\Services\HomepartyCart::$is_bonus)
|
||||||
<tr class="foot-small">
|
<tr class="foot-small">
|
||||||
<td colspan="4" class="border-top">
|
<td colspan="4" class="border-top">
|
||||||
zzgl. anteiliger Bonusgutschein:
|
{{ \App\Services\HomepartyCart::$voucher_name }}
|
||||||
</td>
|
</td>
|
||||||
<td class="border-top text-right">{{ App\Services\HomepartyCart::getFormattedBonusPrice() }}€</td>
|
<td class="border-top text-right">{{ App\Services\HomepartyCart::getFormattedBonusPrice() }}€</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
@ -73,7 +72,7 @@
|
||||||
<td colspan="1" class="border-top">
|
<td colspan="1" class="border-top">
|
||||||
<strong>Gesamtsummen:</strong>
|
<strong>Gesamtsummen:</strong>
|
||||||
</td>
|
</td>
|
||||||
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedEkPrice()}}</strong></td>
|
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedEkPrice()}} €</strong></td>
|
||||||
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedPoints()}}</strong></td>
|
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedPoints()}}</strong></td>
|
||||||
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedIncomePrice()}} €</strong></td>
|
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedIncomePrice()}} €</strong></td>
|
||||||
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedPrice()}} €</strong></td>
|
<td class="border-top text-right"><strong>{{\App\Services\HomepartyCart::getFormattedPrice()}} €</strong></td>
|
||||||
|
|
|
||||||
|
|
@ -146,13 +146,16 @@
|
||||||
|
|
||||||
|
|
||||||
<div class="m-checkout">
|
<div class="m-checkout">
|
||||||
|
|
||||||
{!! Form::open(['url' => route('checkout.checkout_card_final'), 'class' => 'row clearfix', 'id'=>'checkout_card_final']) !!}
|
{!! Form::open(['url' => route('checkout.checkout_card_final'), 'class' => 'row clearfix', 'id'=>'checkout_card_final']) !!}
|
||||||
|
|
||||||
{!! Form::hidden('selected_country', '') !!}
|
{!! Form::hidden('selected_country', '') !!}
|
||||||
{!! Form::hidden('is_for', $shopping_user->is_for) !!}
|
{!! Form::hidden('is_for', $shopping_user->is_for) !!}
|
||||||
{!! Form::hidden('is_from', $shopping_user->is_from) !!}
|
{!! Form::hidden('is_from', $shopping_user->is_from) !!}
|
||||||
|
{!! Form::hidden('homeparty_id', $shopping_user->homeparty_id) !!}
|
||||||
|
|
||||||
@if (\Session::has('elv-managemandate'))
|
|
||||||
|
@if (\Session::has('elv-managemandate'))
|
||||||
|
|
||||||
<div class="col-sm-12">
|
<div class="col-sm-12">
|
||||||
<fieldset class="mb-20 box-border-shadow p-20">
|
<fieldset class="mb-20 box-border-shadow p-20">
|
||||||
|
|
@ -626,7 +629,7 @@
|
||||||
<label class="mt-4 fs-14 fw-400 radio pull-left" style="width: 100%">
|
<label class="mt-4 fs-14 fw-400 radio pull-left" style="width: 100%">
|
||||||
{!! Form::radio('payment_method', 'fnc#MIV', '') !!}
|
{!! Form::radio('payment_method', 'fnc#MIV', '') !!}
|
||||||
<i></i> <span class="weight-400"><span class="fa fa-check text-primary"></span> Rechnungskauf</span>
|
<i></i> <span class="weight-400"><span class="fa fa-check text-primary"></span> Rechnungskauf</span>
|
||||||
<img class="float-right" width="90" src="{{asset('images/payments-assets/fnc.png')}}" alt="Vorkasse">
|
<img class="float-right" width="90" src="{{asset('images/payments-assets/fnc.png')}}" alt="Rechnungskauf">
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
@endif
|
@endif
|
||||||
|
|
@ -798,31 +801,48 @@
|
||||||
<strong class="pull-left">Zwischensumme:</strong>
|
<strong class="pull-left">Zwischensumme:</strong>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
@if($shopping_user->is_from !== 'homeparty')
|
||||||
|
|
||||||
<hr class="mt-4 mb-4">
|
<hr class="mt-4 mb-4">
|
||||||
|
|
||||||
<div class="clearfix mb-2">
|
<div class="clearfix mb-2">
|
||||||
<span class="pull-right small">{{ Yard::instance('shopping')->shipping() }} € </span>
|
<span class="pull-right small">{{ Yard::instance('shopping')->shipping() }} € </span>
|
||||||
<span class="pull-left small">Versandkosten:</span>
|
<span class="pull-left small">Versandkosten:</span>
|
||||||
</div>
|
</div>
|
||||||
|
@endif
|
||||||
@endif
|
@endif
|
||||||
|
|
||||||
|
@if($shopping_user->is_from !== 'homeparty')
|
||||||
<div class="clearfix mb-2">
|
<div class="clearfix mb-2">
|
||||||
<span class="pull-right small">{{ Yard::instance('shopping')->getShippingCountryName() }}</span>
|
<span class="pull-right small">{{ Yard::instance('shopping')->getShippingCountryName() }}</span>
|
||||||
<span class="pull-left small">Lieferland:</span>
|
<span class="pull-left small">Lieferland:</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<hr class="mt-4 mb-4">
|
|
||||||
|
|
||||||
<div class="clearfix mb-2" style="font-size: 90%">
|
<hr class="mt-4 mb-4">
|
||||||
<span class="pull-right small">{{ Yard::instance('shopping')->subtotalWithShipping() }} €</span>
|
|
||||||
<span class="pull-left small">Summe ohne MwSt:</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="clearfix mb-2" style="font-size: 90%">
|
<div class="clearfix mb-2" style="font-size: 90%">
|
||||||
<span class="pull-right small">{{ Yard::instance('shopping')->taxWithShipping() }} €</span>
|
<span class="pull-right small">{{ Yard::instance('shopping')->subtotalWithShipping() }} €</span>
|
||||||
<span class="pull-left small"> zzgl. {{-- Yard::getTaxRate() --}} MwSt:</span>
|
<span class="pull-left small">Summe ohne MwSt:</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="clearfix mb-2" style="font-size: 90%">
|
||||||
|
<span class="pull-right small">{{ Yard::instance('shopping')->taxWithShipping() }} €</span>
|
||||||
|
<span class="pull-left small"> zzgl. {{-- Yard::getTaxRate() --}} MwSt:</span>
|
||||||
|
</div>
|
||||||
|
@else
|
||||||
|
<hr class="mt-4 mb-4">
|
||||||
|
|
||||||
|
<div class="clearfix mb-2" style="font-size: 90%">
|
||||||
|
<span class="pull-right small">{!! $shopping_data['shop_price_net'] !!} €</span>
|
||||||
|
<span class="pull-left small">Summe ohne MwSt:</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="clearfix mb-2" style="font-size: 90%">
|
||||||
|
<span class="pull-right small">{!! $shopping_data['shop_price_tax'] !!} €</span>
|
||||||
|
<span class="pull-left small"> zzgl. {{-- Yard::getTaxRate() --}} MwSt:</span>
|
||||||
|
</div>
|
||||||
|
@endif
|
||||||
<hr />
|
<hr />
|
||||||
|
|
||||||
<div class="clearfix">
|
<div class="clearfix">
|
||||||
|
|
|
||||||
|
|
@ -266,16 +266,16 @@ Route::domain(config('app.pre_url_crm').config('app.domain').config('app.tld_car
|
||||||
|
|
||||||
//user homeparty
|
//user homeparty
|
||||||
|
|
||||||
Route::get('/user/homepartys', 'User\HomePartyController@index')->name('user_homepartys');
|
Route::get('/user/homepartys', 'User\HomepartyController@index')->name('user_homepartys');
|
||||||
Route::get('/user/homeparty/detail/{id?}', 'User\HomePartyController@detail')->name('user_homeparty_detail');
|
Route::get('/user/homeparty/detail/{id?}', 'User\HomepartyController@detail')->name('user_homeparty_detail');
|
||||||
Route::post('/user/homeparty/detail/{id?}', 'User\HomePartyController@store')->name('user_homeparty_detail');
|
Route::post('/user/homeparty/detail/{id?}', 'User\HomepartyController@store')->name('user_homeparty_detail');
|
||||||
Route::get('/user/homeparty/guests/{id?}', 'User\HomePartyController@guests')->name('user_homeparty_guests');
|
Route::get('/user/homeparty/guests/{id?}', 'User\HomepartyController@guests')->name('user_homeparty_guests');
|
||||||
Route::get('/user/homeparty/guest/detail/{id?}/{gid?}', 'User\HomePartyController@guestDetail')->name('user_homeparty_guest_detail');
|
Route::get('/user/homeparty/guest/detail/{id?}/{gid?}', 'User\HomepartyController@guestDetail')->name('user_homeparty_guest_detail');
|
||||||
Route::post('/user/homeparty/guest/detail/{id?}/{gid?}', 'User\HomePartyController@guestStore')->name('user_homeparty_guest_detail');
|
Route::post('/user/homeparty/guest/detail/{id?}/{gid?}', 'User\HomepartyController@guestStore')->name('user_homeparty_guest_detail');
|
||||||
Route::get('/user/homeparty/order/{id?}', 'User\HomePartyController@order')->name('user_homeparty_order');
|
Route::get('/user/homeparty/order/{id?}', 'User\HomepartyController@order')->name('user_homeparty_order');
|
||||||
Route::post('/user/homeparty/order/{id?}', 'User\HomePartyController@orderStore')->name('user_homeparty_order');
|
Route::post('/user/homeparty/order/{id?}', 'User\HomepartyController@orderStore')->name('user_homeparty_order');
|
||||||
Route::get('/user/homeparty/delete/{do}/{id?}/{gid?}', 'User\HomePartyController@delete')->name('user_homeparty_delete');
|
Route::get('/user/homeparty/delete/{do}/{id?}/{gid?}', 'User\HomepartyController@delete')->name('user_homeparty_delete');
|
||||||
Route::get('/user/homeparty/datatable', 'User\HomePartyController@datatable')->name('user_homeparty_datatable');
|
Route::get('/user/homeparty/datatable', 'User\HomepartyController@datatable')->name('user_homeparty_datatable');
|
||||||
|
|
||||||
//products images
|
//products images
|
||||||
Route::post('/user/shop_on_site/upload/image', 'UserShopController@uploadOnSiteImage')->name('user_shop_on_site_upload_image');
|
Route::post('/user/shop_on_site/upload/image', 'UserShopController@uploadOnSiteImage')->name('user_shop_on_site_upload_image');
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue