{% macro getInvoiceAdminCode(invoice, admin) %} {% set invoiceAdminCode = null %} {% set prefixName = "" %} {% set typeGetterName = 'get' ~ prefixName ~ 'Type' %} {% set outgoingBundleNumberGetterName = 'get' ~ prefixName ~ 'OutgoingBundleNumber' %} {% set creditNoteGetterName = 'get' ~ prefixName ~ 'CreditNote' %} {% set callbackQueryObjectPrefix = admin.getCallbackQueryObjectPrefix() %} {% if callbackQueryObjectPrefix is not null %} {% set prefixName = callbackQueryObjectPrefix[:1]|upper ~ callbackQueryObjectPrefix[1:] %} {% set typeGetterName = 'get' ~ prefixName ~ 'Type' %} {% set outgoingBundleNumberGetterName = 'get' ~ prefixName ~ 'OutgoingBundleNumber' %} {% set creditNoteGetterName = 'get' ~ prefixName ~ 'CreditNote' %} {% endif %} {% set invoiceType = attribute(invoice, typeGetterName) is defined ? attribute(invoice, typeGetterName) : invoice.getType() %} {% set invoiceOutgoingBundleNumber = attribute(invoice, outgoingBundleNumberGetterName) is defined ? attribute(invoice, outgoingBundleNumberGetterName) : invoice.getBundle() %} {% set invoiceCreditNote = attribute(invoice, creditNoteGetterName) is defined ? attribute(invoice, creditNoteGetterName) : invoice.getCreditNote() %} {% set isCreditNote = invoiceCreditNote == true %} {% set isSingleVehicleInvoice = invoiceType == constant("AppBundle\\Entity\\Administrative\\Invoice\\InvoiceBase::INVOICE_TYPE_VEHICLE") and invoiceOutgoingBundleNumber is null %} {% set isPackagedVehicleInvoice = invoiceType == constant("AppBundle\\Entity\\Administrative\\Invoice\\InvoiceBase::INVOICE_TYPE_VEHICLE") and invoiceOutgoingBundleNumber is not null %} {% set isServiceInvoice = invoiceType == constant("AppBundle\\Entity\\Administrative\\Invoice\\InvoiceBase::INVOICE_TYPE_SERVICE") %} {% set isRepairOrderInvoice = invoiceType == constant("AppBundle\\Entity\\Administrative\\Invoice\\InvoiceBase::INVOICE_TYPE_REPAIR_ORDER") %} {% set isRentalInvoice = invoiceType == constant("AppBundle\\Entity\\Administrative\\Invoice\\InvoiceBase::INVOICE_TYPE_RENTAL") %} {% if isCreditNote == true %} {% set invoiceAdminCode = 'app_bundle.admin.credit_note' %} {% elseif isSingleVehicleInvoice == true %} {% set invoiceAdminCode = 'app_bundle.admin.invoice_selling_vehicle' %} {% elseif isPackagedVehicleInvoice == true %} {% set invoiceAdminCode = 'app_bundle.admin.invoice_selling_vehicle_bundle' %} {% elseif isServiceInvoice == true %} {% set invoiceAdminCode = 'app_bundle.admin.invoice_selling_service_base' %} {% elseif isRepairOrderInvoice == true %} {% set invoiceAdminCode = 'app_bundle.admin.invoice_workshop_repair_order' %} {% elseif isRentalInvoice == true %} {% set invoiceAdminCode = 'app_bundle.admin.invoice_rental' %} {% endif %} {{- invoiceAdminCode -}} {% endmacro %} {% macro getAdministrativeSellingAdminCode(administrativeSelling, admin) %} {% set sellingAdminCode = null %} {% set prefixName = "" %} {% set typeGetterName = 'get' ~ prefixName ~ 'Type' %} {% set outgoingBundleNumberGetterName = 'get' ~ prefixName ~ 'OutgoingBundleNumber' %} {% set callbackQueryObjectPrefix = admin.getCallbackQueryObjectPrefix() %} {% if callbackQueryObjectPrefix is not null %} {% set prefixName = callbackQueryObjectPrefix[:1]|upper ~ callbackQueryObjectPrefix[1:] %} {% set typeGetterName = 'get' ~ prefixName ~ 'Type' %} {% set outgoingBundleNumberGetterName = 'get' ~ prefixName ~ 'OutgoingBundleNumber' %} {% endif %} {% set type = attribute(administrativeSelling, typeGetterName) is defined ? attribute(administrativeSelling, typeGetterName) : administrativeSelling.getType() %} {% set sellingOutgoingBundleNumber = attribute(administrativeSelling, outgoingBundleNumberGetterName) is defined ? attribute(administrativeSelling, outgoingBundleNumberGetterName) : administrativeSelling.getBundle() %} {% set isCommercialProposition = type == constant("AppBundle\\Entity\\Administrative\\Selling\\AdministrativeSellingBase::ADMINISTRATIVE_SELLING_TYPE_COMMERCIAL_PROPOSITION") %} {% set isOrderForm = type == constant("AppBundle\\Entity\\Administrative\\Selling\\AdministrativeSellingBase::ADMINISTRATIVE_SELLING_TYPE_ORDER_FORM") %} {% set isEstimate = type == constant("AppBundle\\Entity\\Administrative\\Selling\\AdministrativeSellingBase::ADMINISTRATIVE_SELLING_TYPE_ESTIMATE") %} {% set isSingleCommercialProposition = (isCommercialProposition == true and sellingOutgoingBundleNumber is null) or type == constant("AppBundle\\Entity\\Administrative\\Selling\\AdministrativeSellingBase::ADMINISTRATIVE_SELLING_TYPE_SINGLE_COMMERCIAL_PROPOSITION") %} {% set isPackagedCommercialProposition = (isCommercialProposition == true and sellingOutgoingBundleNumber is not null) or type == constant("AppBundle\\Entity\\Administrative\\Selling\\AdministrativeSellingBase::ADMINISTRATIVE_SELLING_TYPE_PACKAGED_COMMERCIAL_PROPOSITION") %} {% set isSingleOrderForm = (isOrderForm == true and sellingOutgoingBundleNumber is null) or type == constant("AppBundle\\Entity\\Administrative\\Selling\\AdministrativeSellingBase::ADMINISTRATIVE_SELLING_TYPE_SINGLE_ORDER_FORM") %} {% set isPackagedOrderForm = (isOrderForm == true and sellingOutgoingBundleNumber is not null) or type == constant("AppBundle\\Entity\\Administrative\\Selling\\AdministrativeSellingBase::ADMINISTRATIVE_SELLING_TYPE_PACKAGED_ORDER_FORM") %} {% if isSingleCommercialProposition == true %} {% set sellingAdminCode = 'app_bundle.admin.commercial_proposition_selling' %} {% elseif isPackagedCommercialProposition == true %} {% set sellingAdminCode = 'app_bundle.admin.commercial_proposition_selling_bundle' %} {% elseif isSingleOrderForm == true %} {% set sellingAdminCode = 'app_bundle.admin.order_form_selling' %} {% elseif isPackagedOrderForm == true %} {% set sellingAdminCode = 'app_bundle.admin.order_form_selling_bundle' %} {% elseif isEstimate == true %} {% set sellingAdminCode = 'app_bundle.admin.estimate' %} {% endif %} {{- sellingAdminCode -}} {% endmacro %} {% macro getVehicleAdminCode(vehicle) %} {% set vehicleAdminCode = 'app_bundle.admin.vehicle' %} {% if vehicle.getState() == constant('AppBundle\\Entity\\Vehicle\\Vehicle::VEHICLE_STATE_WORKSHOP') %} {% set vehicleAdminCode = 'app_bundle.admin.workshop_vehicle' %} {% endif %} {{- vehicleAdminCode -}} {% endmacro %} {% macro getInvoiceUri(invoice, admin) %} {% set invoiceAdminCode = _self.getInvoiceAdminCode(invoice, admin)|spaceless %} {% if invoiceAdminCode is not empty %} {% set invoiceAdmin = admin.getAdminByCode(invoiceAdminCode) %} {% endif %} {% spaceless %} {% if invoiceAdmin is not null %} {{ invoiceAdmin.generateObjectUrl( constant('AppBundle\\Admin\\Administrative\\Invoice\\InvoiceBaseAdmin::ROUTE_CUSTOMER'), invoice ) }} {% endif %} {% endspaceless %} {% endmacro %} {% macro getAdministrativeSellingUri(administrativeSelling, admin) %} {% set sellingAdminCode = _self.getAdministrativeSellingAdminCode(administrativeSelling, admin)|spaceless %} {% if sellingAdminCode is not empty %} {% set sellingAdmin = admin.getAdminByCode(sellingAdminCode) %} {% endif %} {% spaceless %} {% if sellingAdmin is not null %} {{ sellingAdmin.generateObjectUrl( constant('AppBundle\\Admin\\AbstractAdministrativeBaseAdmin::ROUTE_CUSTOMER'), administrativeSelling ) }} {% endif %} {% endspaceless %} {% endmacro %} {% macro getVehicleUri(vehicle, admin, customVehicleAdmin = null) %} {% if customVehicleAdmin is null %} {% set vehicleAdminCode = _self.getVehicleAdminCode(vehicle)|spaceless %} {% if vehicleAdminCode is not empty %} {% set customVehicleAdmin = admin.getAdminByCode(vehicleAdminCode) %} {% endif %} {% endif %} {% spaceless %} {% if customVehicleAdmin is not null %} {{ customVehicleAdmin.generateObjectUrl( constant('AppBundle\\Admin\\Vehicle\\AbstractVehicleBaseAdmin::ROUTE_SUMMARY'), vehicle ) }} {% endif %} {% endspaceless %} {% endmacro %}