diff --git a/.docker/docker-compose/docker-compose.local.yml b/.docker/docker-compose/docker-compose.local.yml index 581b318e7..63eb8965e 100644 --- a/.docker/docker-compose/docker-compose.local.yml +++ b/.docker/docker-compose/docker-compose.local.yml @@ -46,13 +46,13 @@ services: networks: - network restart: always - deploy: - resources: - reservations: - devices: - - driver: nvidia - count: 1 # alternatively, use `count: all` for all GPUs - capabilities: [gpu] +# deploy: +# resources: +# reservations: +# devices: +# - driver: nvidia +# count: 1 # alternatively, use `count: all` for all GPUs +# capabilities: [gpu] webhook: image: tarampampam/webhook-tester:2 restart: always diff --git a/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/Center.php b/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/Center.php index b7c81e8d8..0942e511e 100644 --- a/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/Center.php +++ b/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/Center.php @@ -4,6 +4,8 @@ namespace PSC\Shop\OrderBundle\Model\Order\Position\Upload; class Center implements IUploadTypeObject { + public array $uploads = []; + public function getCode(): string { return 'center'; @@ -18,4 +20,9 @@ class Center implements IUploadTypeObject { return false; } + + public function addUpload(array $upload): void + { + $this->uploads[] = $upload; + } } diff --git a/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/IUploadTypeObject.php b/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/IUploadTypeObject.php index 8a7af9f03..0ecc9fba8 100644 --- a/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/IUploadTypeObject.php +++ b/src/new/src/PSC/Shop/OrderBundle/Model/Order/Position/Upload/IUploadTypeObject.php @@ -8,6 +8,7 @@ use OpenApi\Attributes\Schema; #[Schema(properties: [ new Property(property: 'code', type: 'string'), new Property(property: 'name', type: 'string'), + new Property(property: 'preview', type: 'boolean'), ])] interface IUploadTypeObject { diff --git a/src/new/src/PSC/Shop/OrderBundle/Resources/views/backend/detail/show.html.twig b/src/new/src/PSC/Shop/OrderBundle/Resources/views/backend/detail/show.html.twig index c2dbf2653..aa033eaf3 100755 --- a/src/new/src/PSC/Shop/OrderBundle/Resources/views/backend/detail/show.html.twig +++ b/src/new/src/PSC/Shop/OrderBundle/Resources/views/backend/detail/show.html.twig @@ -1,617 +1,604 @@ -{% extends 'backend_base.html.twig' %} +{% extends 'backend_tailwind_base.html.twig' %} +{% form_theme formStatus 'tailwind_formtheme.html.twig' %} +{% form_theme formInvoice 'tailwind_formtheme.html.twig' %} +{% form_theme formDelivery 'tailwind_formtheme.html.twig' %} +{% form_theme formSender 'tailwind_formtheme.html.twig' %} {% trans_default_domain 'core_order_detail' %} -{% block body %} - -
-
-
-

- - {{'order'|trans}} > - {{'detail'|trans}} {{ order.alias }} -

-
- -
-
-
-
-
- {{'package'|trans}} - {% if shop.docOfferJasperXml != "" %} {{'offer'|trans}}{% endif %} - {% if shop.docOrderJasperXml != "" %} {{'order'|trans}}{% endif %} - {% if shop.docInvoiceJasperXml != "" %} {{'invoice'|trans}}{% endif %} - {% if shop.docDeliveryJasperXml != "" %} {{'deliverynote'|trans}}{% endif %} - {% if shop.docLabelJasperXml != "" %} {{'labels'|trans}}{% endif %} - {% if shop.docJobticketJasperXml != "" %} {{'jobticket'|trans}}{% endif %} - {% if shop.docStornoJasperXml != "" %} {{'cancel'|trans}}{% endif %} - {{'XRechnung'|trans}} -
-
- -
-
-
-
-

{{'order'|trans}} {{ order.alias }}

-
-
- {{ order.getPaymentType.getTitle() }} - {{'payment'|trans}}:{{ orderObj.paymentGateway }} ({{ orderObj.paymentRef }}) - {{ order.getShippingType.getTitle() }} - {{'sendDataToShipping'|trans}}:{% if orderObj.sendDataToShipping %}{{'yes'|trans}}{% else %}{{'no'|trans}}{% endif %} - {{ order.weight }} - {{ order.basketfield1 }} - {{ order.basketfield2 }} - {% if order.gutschein %}{% endif %} - {{ order.versandKosten|number_format(2, ',', '.') }}€ - {{ order.zahlKosten|number_format(2, ',', '.') }}€ - {{ order.netto|number_format(2, ',', '.') }}€ - {{ order.steuer|number_format(2, ',', '.') }}€ - {{ order.brutto|number_format(2, ',', '.') }}€ -
-
-
-
-
-
-

Status

-
-
-{{ order.created|date('d.m.Y H:i:s') }} - {{ form_start(formStatus, { 'attr': {'class': ''}}) }} - {{ form_errors(formStatus) }} -
- -
- {% if orderObj.packageExported %}{{'yes'|trans}} {{'Generateagain'|trans}}{% else %}{{'no'|trans}} {{'Generateagain'|trans}}{% endif %} - -
-
-
- -
- {{ form_widget(formStatus.package, {attr: {class:'form-control'}}) }} -
-
-
- -
- {{ form_widget(formStatus.status, {attr: {class:'form-control'}}) }} -
-
-
- -
- {{ form_widget(formStatus.notices, {attr: {class:'form-control'}}) }} -
-
-
-
- {{ form_widget(formStatus.save, {attr: {class: 'btn btn-primary btn-sm'}}) }} -
-
- {{ form_end(formStatus) }} -
-
-
-
-
-
-

Kunde

-
-
- - {{ order.contact.username }} - {{ order.contact.firstname }} {{ order.contact.lastname }} - {{ order.contact.account.title }} - {{'guest'|trans}}:{% if order.contact.virtual == 1 %}{{'yes'|trans}}{% else %}{{'no'|trans}}{% endif %} - -
-
-
-
- {{'generateNewAuftragQueue'|trans}} - - - -
-
-
-
- - {% for customSection in customSections %} - {% if customSection.getController %} - {{ render(controller( - customSection.getController, - {'order': order, 'orderDoc': orderObj} - )) }} - {% endif %} - {% endfor %} - -
-
-

{{'addresses'|trans}}

-
-
-
-
-
{{'billingaddress'|trans}}
- - {{ form_start(formInvoice, { 'attr': {'class': ''}}) }} - {{ form_errors(formInvoice) }} - -
- -
- {{ form_widget(formInvoice.company) }} -
- {{ form_errors(formInvoice.company) }} -
-
- -
- {{ form_widget(formInvoice.company2) }} -
- {{ form_errors(formInvoice.company2) }} -
- -
- -
- {{ form_widget(formInvoice.firstname) }} -
- {{ form_errors(formInvoice.firstname) }} -
- -
- -
- {{ form_widget(formInvoice.lastname) }} -
- {{ form_errors(formInvoice.lastname) }} -
- -
- -
- {{ form_widget(formInvoice.email) }} -
- {{ form_errors(formInvoice.email) }} -
- -
- -
- {{ form_widget(formInvoice.phone) }} -
- {{ form_errors(formInvoice.phone) }} -
- -
-
- {{'zip'|trans}}/{{'city'|trans}}/{{'country'|trans}} -
-
- {{ form_widget(formInvoice.zip) }} -
-
- {{ form_widget(formInvoice.city) }} -
-
- {{ form_widget(formInvoice.country) }} -
- -
- -
-
- {{'street'|trans}}/{{'houseNumber'|trans}} -
-
- {{ form_widget(formInvoice.street) }} -
- -
- {{ form_widget(formInvoice.houseNumber) }} -
- -
- -
-
- {{ form_widget(formInvoice.save, {attr: {class: 'btn btn-primary btn-sm'}}) }} -
-
- {{ form_end(formInvoice) }} -
-
-
{{'shippingaddress'|trans}}
- - {{ form_start(formDelivery, { 'attr': {'class': ''}}) }} - {{ form_errors(formDelivery) }} - -
- -
- {{ form_widget(formDelivery.company) }} -
- {{ form_errors(formDelivery.company) }} -
- -
- -
- {{ form_widget(formDelivery.company2) }} -
- {{ form_errors(formDelivery.company2) }} -
- -
- -
- {{ form_widget(formDelivery.firstname) }} -
- {{ form_errors(formDelivery.firstname) }} -
- -
- -
- {{ form_widget(formDelivery.lastname) }} -
- {{ form_errors(formDelivery.lastname) }} -
- -
- -
- {{ form_widget(formDelivery.email) }} -
- {{ form_errors(formDelivery.email) }} -
- -
- -
- {{ form_widget(formDelivery.phone) }} -
- {{ form_errors(formDelivery.phone) }} -
- -
-
- {{'zip'|trans}}/{{'city'|trans}}/{{'country'|trans}} -
-
- {{ form_widget(formDelivery.zip) }} -
-
- {{ form_widget(formDelivery.city) }} -
-
- {{ form_widget(formDelivery.country) }} -
- -
- -
-
- {{'street'|trans}}/{{'houseNumber'|trans}} -
-
- {{ form_widget(formDelivery.street) }} -
- -
- {{ form_widget(formDelivery.houseNumber) }} -
- -
- -
-
- {{ form_widget(formDelivery.save, {attr: {class: 'btn btn-primary btn-sm'}}) }} -
-
- {{ form_end(formDelivery) }} -
-
-
{{'senderaddress'|trans}}
- - {{ form_start(formSender, { 'attr': {'class': ''}}) }} - {{ form_errors(formSender) }} - -
- -
- {{ form_widget(formSender.company) }} -
- {{ form_errors(formSender.company) }} -
- -
- -
- {{ form_widget(formSender.company2) }} -
- {{ form_errors(formSender.company2) }} -
- -
- -
- {{ form_widget(formSender.firstname) }} -
- {{ form_errors(formSender.firstname) }} -
- -
- -
- {{ form_widget(formSender.lastname) }} -
- {{ form_errors(formSender.lastname) }} -
- -
- -
- {{ form_widget(formSender.email) }} -
- {{ form_errors(formSender.email) }} -
- -
- -
- {{ form_widget(formSender.phone) }} -
- {{ form_errors(formSender.phone) }} -
- -
-
- {{'zip'|trans}}/{{'city'|trans}}/{{'country'|trans}} -
-
- {{ form_widget(formSender.zip) }} -
-
- {{ form_widget(formSender.city) }} -
-
- {{ form_widget(formSender.country) }} -
- -
- -
-
- {{'street'|trans}}/{{'houseNumber'|trans}} -
-
- {{ form_widget(formSender.street) }} -
- -
- {{ form_widget(formSender.houseNumber) }} -
- -
- -
-
- {{ form_widget(formSender.save, {attr: {class: 'btn btn-primary btn-sm'}}) }} -
-
- {{ form_end(formSender) }} - -
- -
-
-
-
-
-

{{'positions'|trans}}

-
-
- - - - - - - - - - - - - - - - - {% for pos in positions %} -{% set posModel = orderModel.getPositionByUuid(pos.obj.uuid) %} - - - - - - - - - - - - - - - - - - - - - - - - - - - {% endfor %} - -
{{'Pos'|trans}}{{'name'|trans}}{{'wkpos1'|trans}}{{'wkpos2'|trans}}{{'properties'|trans}}{{'status'|trans}}{{'netto'|trans}}{{'vat'|trans}}{{'brutto'|trans}}
{{ pos.obj.pos }}{{ pos.obj.product.title }}
ArtNr intern: {{ pos.obj.product.nrIntern }}
{{ 'weight'|trans }}: {{pos.obj.weight }}
{{ pos.obj.basketfield1 }}{{ pos.obj.basketfield2 }}
- - -
{{ pos.obj.priceAllNetto|number_format(2, ',', '.') }}€{{ pos.obj.priceAllSteuer|number_format(2, ',', '.') }}€{{ pos.obj.priceAllBrutto|number_format(2, ',', '.') }}€ - {% if pos.obj.layouterMode == 4 and pos.objDoc %} Layouter öffnen{% endif %} -
- {% if pos.objDoc.setConfig|length > 0 %} -

Set bestehend aus:

-
    - {% for item in pos.objDoc.setConfig %} - {% if (item.article_id|product) %}
  • {{ (item.article_id|product).title }} ({% if item.count == 0 %}{{ pos.count }}{% else %}{{ pos.count * item.count }}{% endif %})
  • {% endif %} - {% endfor %} -
- {% endif %} -
    - {% if pos.objCalc %} - {% for opt in pos.objCalc.getOptions %} - {% if opt is not instanceof('\\PSC\\Library\\Calc\\Option\\Type\\Hidden') and opt.isValid() %} -
  • {{ opt.name }}: {{ opt.value }}
  • - {% endif %} - {% endfor %} - {% endif %} -
- {% for customSection in customPositionDetailSections %} - {% if customSection.getController %} - {{ render(controller( - customSection.getController, - {'order': orderModel, 'position': posModel} - )) }} - {% endif %} - {% endfor %} - -
{{ form_start(pos.formProd) }}{{ form_widget(pos.formProd.printPartnerEmail) }}{{ form_rest(pos.formProd) }}
{{ form_end(pos.formProd) }}

{{ form_start(pos.formProdinfo) }}{{ form_widget(pos.formProdinfo.customerInfo) }}{{ form_rest(pos.formProdinfo) }}
{{ form_end(pos.formProdinfo) }}{% if posModel.reOrder %}{% set reOrderModel = orderService.getOrderByUuid(posModel.reOrderOrder, true) %}

Ist eine Nachbestellung vom Auftrag:
{{ reOrderModel.alias }} vom: {{ reOrderModel.created|date("d.m.Y") }}

{% endif %}
- {% if shop.docOfferPosition != "" %} {{'offer'|trans}}{% endif %} - {% if shop.docOrderPosition != "" %} {{'order'|trans}}{% endif %} - {% if shop.docInvoicePosition != "" %} {{'invoice'|trans}}{% endif %} - {% if shop.docDeliveryPosition != "" %} {{'deliverynote'|trans}}{% endif %} - {% if shop.docLabelPosition != "" %} {{'labels'|trans}}{% endif %} - {% if shop.docJobticketPosition != "" %} {{'jobticket'|trans}}{% endif %} - {% if shop.docStornoPosition != "" %} {{'cancel'|trans}}{% endif %} -
-
-
- -
- - - - -