feat(JavaScript): Updated architecture for TableBasePage object with static row ID attribute attached for adding ID against each row added to DOM

This commit is contained in:
2024-10-18 22:25:07 +01:00
parent 8fcfcf0ef4
commit 002551c0a9
112 changed files with 7280 additions and 3608 deletions

View File

@@ -1,6 +1,6 @@
{% with _is_blank_row = (is_blank_row or model.currencies | length == 0 or currency is none) %}
{% with _is_blank_row = (is_blank_row or model.currencies | length == 0 or currency is not defined or currency is none) %}
{% if not _is_blank_row %}
<div
class="{{ model.FLAG_CURRENCY }}"

View File

@@ -0,0 +1,13 @@
{% with _is_blank_row = (is_blank_row or address is not defined or address is none or is_blank_row is not defined) %}
{% if not _is_blank_row %}
{% set json_str = address.to_json_str() %}
<div
class="{{ model.FLAG_ADDRESS }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ json_str }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ json_str }}"
>{{ address.postcode }}</div>
{% else %}
<div class="{{ model.FLAG_ADDRESS }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></div>
{% endif %}
{% endwith %}

View File

@@ -0,0 +1,13 @@
{% with _is_blank_row = (is_blank_row or order_items is not defined or order_items is none or is_blank_row is not defined) %}
{% if not _is_blank_row %}
{% set str_items = order_items.to_preview_str() %}
<div
class="{{ model.FLAG_ITEMS }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ json_str_items }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ json_str_items }}"
>{{ str_items }}</div>
{% else %}
<div class="{{ model.FLAG_ITEMS }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></div>
{% endif %}
{% endwith %}

View File

@@ -0,0 +1,13 @@
{% with _is_blank_row = (is_blank_row or order_items is not defined or order_items is none or is_blank_row is not defined) %}
{% if not _is_blank_row %}
{% set str_items = order_items.to_preview_str() %}
<div
class="{{ model.FLAG_ITEMS }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ json_str_items }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ json_str_items }}"
>{{ str_items }}</div>
{% else %}
<div class="{{ model.FLAG_ITEMS }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></div>
{% endif %}
{% endwith %}

View File

@@ -1,13 +1,5 @@
{#
{% if variation_tree is not defined %}
{% set is_blank_row = True %}
{% endif %}
{% if is_blank_row is not defined %}
{% set is_blank_row = True %}
{% endif %}
#}
{% with _is_blank_row = (is_blank_row or variation_tree is not defined or variation_tree is none or is_blank_row is not defined or is_blank_row) %}
{% with _is_blank_row = (is_blank_row or variation_tree is not defined or variation_tree is none or is_blank_row is not defined) %}
{% if not _is_blank_row %}
{% set str_ids_variations = variation_tree.to_variation_id_pairs_str() %}
{% set str_variations = variation_tree.to_preview_str() %}

View File

@@ -0,0 +1,72 @@
{% if is_blank_row %}
<tr class="{{ model.FLAG_ROW_NEW }}" {{ model.ATTR_ID_MANUFACTURING_PURCHASE_ORDER }}>
<td class="{{ model.FLAG_CURRENCY }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}="">
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}">
<input type="number" min="0" step="0.001" class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}=""/>
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}">
<input type="number" min="0" step="0.001" class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}=""/>
</td>
<td class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_EXCL }}">
<input type="number" min="0" step="0.001" class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_EXCL }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}=""/>
</td>
<td class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_INCL }}">
<input type="number" min="0" step="0.001" class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_INCL }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}=""/>
</td>
<td class="{{ model.FLAG_ITEMS }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}="">
{% include 'components/store/_preview_order_items.html' %}
</td>
<td class="{{ model.FLAG_ACTIVE }}">
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" checked {{ model.ATTR_VALUE_CURRENT }}="{{ model.FLAG_BOOL_TRUE }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ model.FLAG_BOOL_TRUE }}">
</td>
</tr>
{% else %}
<tr {{ model.ATTR_ID_MANUFACTURING_PURCHASE_ORDER }}="{{ order.id_order }}">
{% set currency = order.currency %}
<td class="{{ model.FLAG_CURRENCY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ currency.id_currency }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ currency.id_currency }}">
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ order.cost_total_local_VAT_excl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ order.cost_total_local_VAT_excl }}"
/>
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ order.cost_total_local_VAT_incl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ order.cost_total_local_VAT_incl }}"
/>
</td>
<td class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_EXCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_EXCL }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ order.price_total_local_VAT_excl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ order.price_total_local_VAT_excl }}"
/>
</td>
<td class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_INCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_INCL }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ order.price_total_local_VAT_incl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ order.price_total_local_VAT_incl }}"
/>
</td>
{% set order_items = order.order_items %}
{% set json_str_items = jsonify(order_items.to_json_list()) %}
<td class="{{ model.FLAG_ITEMS }}" {{ model.ATTR_VALUE_CURRENT }}="{{ json_str_items }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ json_str_items }}">
{#
{% include 'components/store/_preview_manufacturing_purchase_order_items.html' %}
#}
{% include 'components/store/_preview_order_items.html' %}
</td>
<td class="{{ model.FLAG_ACTIVE }}">
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" {% if order.active %}checked{% endif %} {{ model.ATTR_VALUE_CURRENT }}="{{ order.active | lower }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ order.active | lower }}">
</td>
</tr>
{% endif %}

View File

@@ -15,11 +15,11 @@
<td class="{{ model.FLAG_CURRENCY_COST }}">
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_COST_LOCAL_VAT_EXCL }}">
<input class="{{ model.FLAG_COST_LOCAL_VAT_EXCL }}" type="number" min="0" value="" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}>
<td class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_EXCL }}">
<input class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_EXCL }}" type="number" min="0" value="" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}>
</td>
<td class="{{ model.FLAG_COST_LOCAL_VAT_INCL }}">
<input class="{{ model.FLAG_COST_LOCAL_VAT_INCL }}" type="number" min="0" value="" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}>
<td class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_INCL }}">
<input class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_INCL }}" type="number" min="0" value="" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}>
</td>
<td class="{{ model.FLAG_DATE_PURCHASED }}">
<input class="{{ model.FLAG_DATE_PURCHASED }}" type="datetime-local" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }} />
@@ -82,15 +82,15 @@
>
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_COST_LOCAL_VAT_EXCL }}">
<input class="{{ model.FLAG_COST_LOCAL_VAT_EXCL }}" type="number" step="0.001"
<td class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_EXCL }}">
<input class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_EXCL }}" type="number" step="0.001"
value="{{ stock_item.cost_local_VAT_excl }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ stock_item.cost_local_VAT_excl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ stock_item.cost_local_VAT_excl }}"
>
</td>
<td class="{{ model.FLAG_COST_LOCAL_VAT_INCL }}">
<input class="{{ model.FLAG_COST_LOCAL_VAT_INCL }}" type="number" step="0.001"
<td class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_INCL }}">
<input class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_INCL }}" type="number" step="0.001"
value="{{ stock_item.cost_local_VAT_incl }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ stock_item.cost_local_VAT_incl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ stock_item.cost_local_VAT_incl }}"

View File

@@ -0,0 +1,69 @@
{% if is_blank_row %}
<tr class="{{ model.FLAG_ROW_NEW }}" {{ model.ATTR_ID_SUPPLIER }}>
<td class="{{ model.FLAG_NAME_COMPANY }}">
<textarea class="{{ model.FLAG_NAME_COMPANY }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_NAME_CONTACT }}">
<textarea class="{{ model.FLAG_NAME_CONTACT }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_DEPARTMENT_CONTACT }}">
<textarea class="{{ model.FLAG_DEPARTMENT_CONTACT }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_ADDRESS }} {{ model.FLAG_COLLAPSED }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}="">
{% include 'components/store/_preview_address.html' %}
</td>
<td class="{{ model.FLAG_PHONE_NUMBER }}">
<textarea class="{{ model.FLAG_PHONE_NUMBER }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_FAX }}">
<textarea class="{{ model.FLAG_FAX }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_EMAIL }}">
<textarea class="{{ model.FLAG_EMAIL }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_WEBSITE }}">
<textarea class="{{ model.FLAG_WEBSITE }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_CURRENCY }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}="">
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_ACTIVE }}">
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" checked {{ model.ATTR_VALUE_CURRENT }}="{{ model.FLAG_BOOL_TRUE }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ model.FLAG_BOOL_TRUE }}">
</td>
</tr>
{% else %}
<tr {{ model.ATTR_ID_SUPPLIER }}="{{ supplier.id_supplier }}">
<td class="{{ model.FLAG_NAME_COMPANY }}">
<textarea class="{{ model.FLAG_NAME_COMPANY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.name_company }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.name_company }}">{{ supplier.name_company }}</textarea>
</td>
<td class="{{ model.FLAG_NAME_CONTACT }}">
<textarea class="{{ model.FLAG_NAME_CONTACT }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.name_contact }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.name_contact }}">{{ supplier.name_contact }}</textarea>
</td>
<td class="{{ model.FLAG_DEPARTMENT_CONTACT }}">
<textarea class="{{ model.FLAG_DEPARTMENT_CONTACT }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.department_contact }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.department_contact }}">{{ supplier.department_contact }}</textarea>
</td>
{% set address = supplier.get_address_active() %}
<td class="{{ model.FLAG_ADDRESS }} {{ model.FLAG_COLLAPSED }}" {{ model.ATTR_VALUE_CURRENT }}="{{ address.id_address }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ address.id_address }}">
{% include 'components/store/_preview_address.html' %}
</td>
<td class="{{ model.FLAG_PHONE_NUMBER }}">
<textarea class="{{ model.FLAG_PHONE_NUMBER }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.name_company }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.phone_number }}">{{ supplier.phone_number }}</textarea>
</td>
<td class="{{ model.FLAG_FAX }}">
<textarea class="{{ model.FLAG_FAX }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.name_company }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.fax }}">{{ supplier.fax }}</textarea>
</td>
<td class="{{ model.FLAG_EMAIL }}">
<textarea class="{{ model.FLAG_EMAIL }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.name_company }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.email }}">{{ supplier.email }}</textarea>
</td>
<td class="{{ model.FLAG_WEBSITE }}">
<textarea class="{{ model.FLAG_WEBSITE }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.website }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.website }}">{{ supplier.website }}</textarea>
</td>
{% set currency = supplier.currency %}
<td class="{{ model.FLAG_CURRENCY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ currency.id_currency }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ currency.id_currency }}">
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_ACTIVE }}">
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" checked {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.active | lower }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.active | lower }}">
</td>
</tr>
{% endif %}

View File

@@ -0,0 +1,64 @@
{% if is_blank_row %}
<tr class="{{ model.FLAG_ROW_NEW }}" {{ model.ATTR_ID_SUPPLIER_PURCHASE_ORDER }}>
<td class="{{ model.FLAG_SUPPLIER }}">
<textarea class="{{ model.FLAG_SUPPLIER }}" {{ model.ATTR_VALUE_CURRENT }} {{ model.ATTR_VALUE_PREVIOUS }}></textarea>
</td>
<td class="{{ model.FLAG_CURRENCY }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}="">
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}"
{{ model.ATTR_VALUE_CURRENT }}=""
{{ model.ATTR_VALUE_PREVIOUS }}=""
/>
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}"
{{ model.ATTR_VALUE_CURRENT }}=""
{{ model.ATTR_VALUE_PREVIOUS }}=""
/>
</td>
<td class="{{ model.FLAG_ITEMS }}" {{ model.ATTR_VALUE_CURRENT }}="" {{ model.ATTR_VALUE_PREVIOUS }}="">
{% include 'components/store/_preview_order_items.html' %}
</td>
<td class="{{ model.FLAG_ACTIVE }}">
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" checked {{ model.ATTR_VALUE_CURRENT }}="{{ model.FLAG_BOOL_TRUE }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ model.FLAG_BOOL_TRUE }}">
</td>
</tr>
{% else %}
<tr {{ model.ATTR_ID_SUPPLIER_PURCHASE_ORDER }}="{{ order.id_order }}">
{% set supplier = order.supplier %}
<td class="{{ model.FLAG_SUPPLIER }}" {{ model.ATTR_VALUE_CURRENT }}="{{ supplier.id_supplier }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ supplier.id_supplier }}">
{% include 'components/store/_preview_DDL_supplier.html' %}
</td>
{% set currency = order.currency %}
<td class="{{ model.FLAG_CURRENCY }}" {{ model.ATTR_VALUE_CURRENT }}="{{ currency.id_currency }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ currency.id_currency }}">
{% include 'components/store/_preview_DDL_currency.html' %}
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ order.cost_total_local_VAT_excl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ order.cost_total_local_VAT_excl }}"
/>
</td>
<td class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}">
<input type="number" min="0" step="0.001"
class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}"
{{ model.ATTR_VALUE_CURRENT }}="{{ order.cost_total_local_VAT_incl }}"
{{ model.ATTR_VALUE_PREVIOUS }}="{{ order.cost_total_local_VAT_incl }}"
/>
</td>
{% set order_items = supplier_purchase_order.order_items %}
{% set json_str_items = jsonify(order_items.to_json_list()) %}
<td class="{{ model.FLAG_ITEMS }}" {{ model.ATTR_VALUE_CURRENT }}="{{ json_str_items }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ json_str_items }}">
{% include 'components/store/_preview_order_items.html' %}
</td>
<td class="{{ model.FLAG_ACTIVE }}">
<input class="{{ model.FLAG_ACTIVE }}" type="checkbox" checked {{ model.ATTR_VALUE_CURRENT }}="{{ order.active | lower }}" {{ model.ATTR_VALUE_PREVIOUS }}="{{ order.active | lower }}">
</td>
</tr>
{% endif %}

View File

@@ -1,6 +1,10 @@
var attrFormType = "{{ model.ATTR_FORM_TYPE }}";
var attrIdCustomer = "{{ model.ATTR_ID_CUSTOMER }}";
var attrIdCustomerAddress = "{{ model.ATTR_ID_CUSTOMER_ADDRESS }}";
var attrIdCustomerSalesOrder = "{{ model.ATTR_ID_CUSTOMER_SALES_ORDER }}";
var attrIdDiscount = "{{ model.ATTR_ID_DISCOUNT }}";
var attrIdManufacturingPurchaseOrder = "{{ model.ATTR_ID_MANUFACTURING_PURCHASE_ORDER }}";
var attrIdPlant = "{{ model.ATTR_ID_PLANT }}";
var attrIdProduct = "{{ model.ATTR_ID_PRODUCT }}";
var attrIdProductCategory = "{{ model.ATTR_ID_PRODUCT_CATEGORY }}";
@@ -10,15 +14,27 @@ var attrIdProductVariation = "{{ model.ATTR_ID_PRODUCT_VARIATION }}";
var attrIdProductVariationType = "{{ model.ATTR_ID_PRODUCT_VARIATION_TYPE }}";
var attrIdStockItem = "{{ model.ATTR_ID_STOCK_ITEM }}";
var attrIdStorageLocation = "{{ model.ATTR_ID_STORAGE_LOCATION }}";
var attrIdSupplier = "{{ model.ATTR_ID_SUPPLIER }}";
var attrIdSupplierAddress = "{{ model.ATTR_ID_SUPPLIER_ADDRESS }}";
var attrIdSupplierPurchaseOrder = "{{ model.ATTR_ID_SUPPLIER_PURCHASE_ORDER }}";
var flagButtonBasketAdd = "{{ model.FLAG_BUTTON_BASKET_ADD }}";
var flagButtonBuyNow = "{{ model.FLAG_BUTTON_BUY_NOW }}";
{#
var flagCostLocal = "{{ model.FLAG_COST_LOCAL }}";
var flagCostLocalVatExcl = "{{ model.FLAG_COST_LOCAL_VAT_EXCL }}";
var flagCostLocalVatIncl = "{{ model.FLAG_COST_LOCAL_VAT_INCL }}";
#}
var flagCostTotalLocalVatExcl = "{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}";
var flagCostTotalLocalVatIncl = "{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}";
var flagCostUnitLocalVatExcl = "{{ model.FLAG_COST_UNIT_LOCAL_VAT_EXCL }}";
var flagCostUnitLocalVatIncl = "{{ model.FLAG_COST_UNIT_LOCAL_VAT_INCL }}";
var flagCountUnitMeasurementIntervalExpirationUnsealed = "{{ model.FLAG_COUNT_UNIT_MEASUREMENT_INTERVAL_EXPIRATION_UNSEALED }}";
var flagCountUnitMeasurementIntervalRecurrence = "{{ model.FLAG_COUNT_UNIT_MEASUREMENT_INTERVAL_RECURRENCE }}";
var flagCountUnitMeasurementPerQuantityStep = "{{ model.FLAG_COUNT_UNIT_MEASUREMENT_PER_QUANTITY_STEP }}";
var flagCurrencyCost = "{{ model.FLAG_CURRENCY_COST }}";
var flagCustomer = "{{ model.FLAG_CUSTOMER }}";
var flagCustomerAddress = "{{ model.FLAG_CUSTOMER_ADDRESS }}";
var flagCustomerSalesOrder = "{{ model.FLAG_CUSTOMER_SALES_ORDER }}";
var flagDateConsumed = "{{ model.FLAG_DATE_CONSUMED }}";
var flagDateExpiration = "{{ model.FLAG_DATE_EXPIRATION }}";
var flagDatePurchased = "{{ model.FLAG_DATE_PURCHASED }}";
@@ -33,7 +49,9 @@ var flagIsNotEmpty = "{{ model.FLAG_IS_NOT_EMPTY }}";
var flagIsOutOfStock = "{{ model.FLAG_IS_OUT_OF_STOCK }}";
var flagIsSealed = "{{ model.FLAG_IS_SEALED }}";
var flagIsSubscription = "{{ model.FLAG_IS_SUBSCRIPTION }}";
var flagLatencyDeliveryDays = "{{ model.FLAG_LATENCY_DELIVERY_DAYS }}";
var flagLatencyManufactureDays = "{{ model.FLAG_LATENCY_MANUFACTURE_DAYS }}";
var flagManufacturingPurchaseOrder = "{{ model.FLAG_MANUFACTURING_PURCHASE_ORDER }}";
var flagNamePluralUnitMeasurementIntervalExpirationUnsealed = "{{ model.FLAG_NAME_PLURAL_UNIT_MEASUREMENT_INTERVAL_EXPIRATION_UNSEALED }}";
var flagNamePluralUnitMeasurementIntervalRecurrence = "{{ model.FLAG_NAME_PLURAL_UNIT_MEASUREMENT_INTERVAL_RECURRENCE }}";
var flagNamePluralUnitMeasurementQuantity = "{{ model.FLAG_NAME_PLURAL_UNIT_MEASUREMENT_QUANTITY }}";
@@ -41,6 +59,14 @@ var flagNameSingularUnitMeasurementIntervalExpirationUnsealed = "{{ model.FLAG_N
var flagNameSingularUnitMeasurementIntervalRecurrence = "{{ model.FLAG_NAME_SINGULAR_UNIT_MEASUREMENT_INTERVAL_RECURRENCE }}";
var flagNameSingularUnitMeasurementQuantity = "{{ model.FLAG_NAME_SINGULAR_UNIT_MEASUREMENT_QUANTITY }}";
var flagPlant = "{{ model.FLAG_PLANT }}";
{#
var flagPriceLocalVatExcl = "{{ model.FLAG_PRICE_LOCAL_VAT_EXCL }}";
var flagPriceLocalVatIncl = "{{ model.FLAG_PRICE_LOCAL_VAT_INCL }}";
#}
var flagPriceTotalLocalVatExcl = "{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_EXCL }}";
var flagPriceTotalLocalVatIncl = "{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_INCL }}";
var flagPriceUnitLocalVatExcl = "{{ model.FLAG_PRICE_UNIT_LOCAL_VAT_EXCL }}";
var flagPriceUnitLocalVatIncl = "{{ model.FLAG_PRICE_UNIT_LOCAL_VAT_INCL }}";
var flagProduct = "{{ model.FLAG_PRODUCT }}";
var flagProductCategory = "{{ model.FLAG_PRODUCT_CATEGORY }}";
var flagProductPermutation = "{{ model.FLAG_PRODUCT_PERMUTATION }}";
@@ -56,6 +82,9 @@ var flagQuantityStock = "{{ model.FLAG_QUANTITY_STOCK }}";
var flagRegion = "{{ model.FLAG_REGION }}";
var flagStockItem = "{{ model.FLAG_STOCK_ITEM }}";
var flagStorageLocation = "{{ model.FLAG_STORAGE_LOCATION }}";
var flagSupplier = "{{ model.FLAG_SUPPLIER }}";
var flagSupplierAddress = "{{ model.FLAG_SUPPLIER_ADDRESS }}";
var flagSupplierPurchaseOrder = "{{ model.FLAG_SUPPLIER_PURCHASE_ORDER }}";
var flagSymbolCurrencyCost = "{{ model.FLAG_SYMBOL_CURRENCY_COST }}";
var flagSymbolIsSuffixNotPrefixUnitMeasurementIntervalExpirationUnsealed = "{{ model.FLAG_SYMBOL_IS_SUFFIX_NOT_PREFIX_UNIT_MEASUREMENT_INTERVAL_EXPIRATION_UNSEALED }}";
var flagSymbolIsSuffixNotPrefixUnitMeasurementIntervalRecurrence = "{{ model.FLAG_SYMBOL_IS_SUFFIX_NOT_PREFIX_UNIT_MEASUREMENT_INTERVAL_RECURRENCE }}";
@@ -66,14 +95,22 @@ var flagSymbolUnitMeasurementQuantity = "{{ model.FLAG_SYMBOL_UNIT_MEASUREMENT_Q
var flagUnitMeasurementIntervalExpirationUnsealed = "{{ model.FLAG_UNIT_MEASUREMENT_INTERVAL_EXPIRATION_UNSEALED }}";
var flagUnitMeasurementIntervalRecurrence = "{{ model.FLAG_UNIT_MEASUREMENT_INTERVAL_RECURRENCE }}";
var flagUnitMeasurementQuantity = "{{ model.FLAG_UNIT_MEASUREMENT_QUANTITY }}";
var hashGetStoreCustomerSalesOrder = "{{ model.HASH_GET_STORE_CUSTOMER_SALES_ORDER }}";
var hashGetStoreManufacturingPurchaseOrder = "{{ model.HASH_GET_STORE_MANUFACTURING_PURCHASE_ORDER }}";
var hashGetStoreProduct = "{{ model.HASH_GET_STORE_PRODUCT }}";
var hashGetStoreProductCategory = "{{ model.HASH_GET_STORE_PRODUCT_CATEGORY }}";
var hashGetStoreProductPermutation = "{{ model.HASH_GET_STORE_PRODUCT_PERMUTATION }}";
var hashGetStoreStockItem = "{{ model.HASH_GET_STORE_STOCK_ITEM }}";
var hashGetStoreSupplier = "{{ model.HASH_GET_STORE_SUPPLIER }}";
var hashGetStoreSupplierPurchaseOrder = "{{ model.HASH_GET_STORE_SUPPLIER_PURCHASE_ORDER }}";
var hashSaveStoreCustomerSalesOrder = "{{ model.HASH_SAVE_STORE_CUSTOMER_SALES_ORDER }}";
var hashSaveStoreManufacturingPurchaseOrder = "{{ model.HASH_SAVE_STORE_MANUFACTURING_PURCHASE_ORDER }}";
var hashSaveStoreProduct = "{{ model.HASH_SAVE_STORE_PRODUCT }}";
var hashSaveStoreProductCategory = "{{ model.HASH_SAVE_STORE_PRODUCT_CATEGORY }}";
var hashSaveStoreProductPermutation = "{{ model.HASH_SAVE_STORE_PRODUCT_PERMUTATION }}";
var hashSaveStoreStockItem = "{{ model.HASH_SAVE_STORE_STOCK_ITEM }}";
var hashSaveStoreSupplier = "{{ model.HASH_SAVE_STORE_SUPPLIER }}";
var hashSaveStoreSupplierPurchaseOrder = "{{ model.HASH_SAVE_STORE_SUPPLIER_PURCHASE_ORDER }}";
var hashStoreBasketAdd = "{{ model.HASH_STORE_BASKET_ADD }}";
var hashStoreBasketDelete = "{{ model.HASH_STORE_BASKET_DELETE }}";
var hashStoreBasketEdit = "{{ model.HASH_STORE_BASKET_EDIT }}";

View File

@@ -61,9 +61,13 @@
var flagAccessLevelRequired = "{{ model.FLAG_ACCESS_LEVEL_REQUIRED }}";
var flagActive = "{{ model.FLAG_ACTIVE }}";
var flagAdd = "{{ model.FLAG_ADD }}";
var flagAddress = "{{ model.FLAG_ADDRESS }}";
var flagAddressLine1 = "{{ model.FLAG_ADDRESS_LINE_1 }}";
var flagAddressLine2 = "{{ model.FLAG_ADDRESS_LINE_2 }}";
var flagCallback = "{{ model.FLAG_CALLBACK }}";
var flagCancel = "{{ model.FLAG_CANCEL }}";
var flagCard = "{{ model.FLAG_CARD }}";
var flagCity = "{{ model.FLAG_CITY }}";
var flagCloseTemporaryElement = "{{ model.FLAG_CLOSE_TEMPORARY_ELEMENT }}";
var flagCode = "{{ model.FLAG_CODE }}";
var flagCollapsed = "{{ model.FLAG_COLLAPSED }}";
@@ -73,6 +77,7 @@
// var flagContactUs = "{{ model.FLAG_CONTACT_US }}";
var flagContainer = "{{ model.FLAG_CONTAINER }}";
var flagContainerInput = "{{ model.FLAG_CONTAINER_INPUT }}";
var flagCounty = "{{ model.FLAG_COUNTY }}";
var flagCurrency = "{{ model.FLAG_CURRENCY }}";
var flagDelete = "{{ model.FLAG_DELETE }}";
var flagDescription = "{{ model.FLAG_DESCRIPTION }}";
@@ -82,14 +87,18 @@
var flagDisplayOrder = "{{ model.FLAG_DISPLAY_ORDER }}";
var flagDragging = "dragging";
var flagDragOver = "drag-over";
var flagEdit = "{{ model.FLAG_EDIT }}";
var flagEmail = "{{ model.FLAG_EMAIL }}";
var flagError = "{{ model.FLAG_ERROR }}";
var flagExpanded = "{{ model.FLAG_EXPANDED }}";
var flagFailure = "{{ model.FLAG_FAILURE }}";
var flagFax = "{{ model.FLAG_FAX }}";
var flagFilter = "{{ model.FLAG_FILTER }}";
var flagForm = "{{ model.FLAG_FORM }}";
var flagFormFilters = "{{ model.FLAG_FORM_FILTERS }}";
var flagImageLogo = "{{ model.FLAG_IMAGE_LOGO }}";
var flagInitialised = "{{ model.FLAG_INITIALISED }}";
var flagItems = "{{ model.FLAG_ITEMS }}";
// var flagKeyPrimary = "{{ model.FLAG_KEY_PRIMARY }}";
var flagMessage = "{{ model.FLAG_MESSAGE }}";
var flagModal = "{{ model.FLAG_MODAL }}";
@@ -104,12 +113,15 @@
var flagNavHome = "{{ model.FLAG_NAV_HOME }}";
var flagNavServices = "{{ model.FLAG_NAV_SERVICES }}";
var flagNavStoreHome = "{{ model.FLAG_NAV_STORE_HOME }}";
var flagNavStoreManufacturingPurchaseOrders = "{{ model.FLAG_NAV_STORE_MANUFACTURING_PURCHASE_ORDERS }}";
var flagNavStoreProducts = "{{ model.FLAG_NAV_STORE_PRODUCTS }}";
var flagNavStoreProductCategories = "{{ model.FLAG_NAV_STORE_PRODUCT_CATEGORIES }}";
var flagNavStoreProductPermutations = "{{ model.FLAG_NAV_STORE_PRODUCT_PERMUTATIONS }}";
var flagNavStoreProductPrices = "{{ model.FLAG_NAV_STORE_PRODUCT_PRICES }}";
var flagNavStoreProductVariations = "{{ model.FLAG_NAV_STORE_PRODUCT_VARIATIONS }}";
var flagNavStoreStockItems = "{{ model.FLAG_NAV_STORE_STOCK_ITEMS }}";
var flagNavStoreSuppliers = "{{ model.FLAG_NAV_STORE_SUPPLIERS }}";
var flagNavStoreSupplierPurchaseOrders = "{{ model.FLAG_NAV_STORE_SUPPLIER_PURCHASE_ORDERS }}";
var flagNavUserAccount = "{{ model.FLAG_NAV_USER_ACCOUNT }}";
var flagNavUserAdmin = "{{ model.FLAG_NAV_USER_ADMIN }}";
var flagNavUserLogin = "{{ model.FLAG_NAV_USER_LOGIN }}";
@@ -117,6 +129,8 @@
var flagOverlay = "{{ model.FLAG_OVERLAY }}";
var flagOverlayClose = "{{ model.FLAG_OVERLAY_CLOSE }}";
var flagPageBody = "{{ model.FLAG_PAGE_BODY }}";
var flagPhoneNumber = "{{ model.FLAG_PHONE_NUMBER }}";
var flagPostcode = "{{ model.FLAG_POSTCODE }}";
var flagRow = "{{ model.FLAG_ROW }}";
var flagRowNew = "{{ model.FLAG_ROW_NEW }}";
var flagRows = "{{ model.FLAG_ROWS }}";
@@ -128,6 +142,8 @@
var flagSubmitted = "{{ model.FLAG_SUBMITTED }}";
var flagSuccess = "{{ model.FLAG_SUCCESS }}";
var flagTemporaryElement = "{{ model.FLAG_TEMPORARY_ELEMENT }}";
var flagUser = "{{ model.FLAG_USER }}";
var flagWebsite = "{{ model.FLAG_WEBSITE }}";
var hashApplyFiltersStoreProductPermutation = "{{ model.HASH_APPLY_FILTERS_STORE_PRODUCT_PERMUTATION }}";
var hashPageAccessibilityReport = "{{ model.HASH_PAGE_ACCESSIBILITY_REPORT }}";
var hashPageAccessibilityStatement = "{{ model.HASH_PAGE_ACCESSIBILITY_STATEMENT }}";
@@ -145,14 +161,17 @@
var hashPageStoreAdminStripeProducts = "{{ model.HASH_PAGE_STORE_ADMIN_STRIPE_PRODUCTS }}";
#}
var hashPageStoreBasket = "{{ model.HASH_PAGE_STORE_BASKET }}";
var hashPageStoreCustomerSalesOrders = "{{ model.HASH_PAGE_STORE_CUSTOMER_SALES_ORDERS }}";
var hashPageStoreHome = "{{ model.HASH_PAGE_STORE_HOME }}";
var hashPageStoreManufacturingPurchaseOrders = "{{ model.HASH_PAGE_STORE_MANUFACTURING_PURCHASE_ORDERS }}";
var hashPageStoreProductCategories = "{{ model.HASH_PAGE_STORE_PRODUCT_CATEGORIES }}";
var hashPageStoreProducts = "{{ model.HASH_PAGE_STORE_PRODUCTS }}";
var hashPageStoreProductPermutations = "{{ model.HASH_PAGE_STORE_PRODUCT_PERMUTATIONS }}";
var hashPageStoreProductPrices = "{{ model.HASH_PAGE_STORE_PRODUCT_PRICES }}";
var hashPageStoreProductVariations = "{{ model.HASH_PAGE_STORE_PRODUCT_VARIATIONS }}";
var hashPageStoreStockItems = "{{ model.HASH_PAGE_STORE_STOCK_ITEMS }}";
var hashPageSuppliers = "{{ model.HASH_PAGE_SUPPLIERS }}";
var hashPageStoreSuppliers = "{{ model.HASH_PAGE_STORE_SUPPLIERS }}";
var hashPageStoreSupplierPurchaseOrders = "{{ model.HASH_PAGE_STORE_SUPPLIER_PURCHASE_ORDERS }}";
var hashPageUserAccount = "{{ model.HASH_PAGE_USER_ACCOUNT }}";
var hashPageUserAdmin = "{{ model.HASH_PAGE_USER_ADMIN }}";
var hashPageUserLogin = "{{ model.HASH_PAGE_USER_LOGIN }}";

View File

@@ -37,6 +37,16 @@
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
<button class="{{ model.FLAG_NAV_ADMIN_STORE_STRIPE_PRICES }}">Add new Stripe prices</button>
</div>
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
<button class="{{ model.FLAG_NAV_STORE_MANUFACTURING_PURCHASE_ORDERS }}">Manufacturing Purchase Orders</button>
</div>
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
<button class="{{ model.FLAG_NAV_STORE_SUPPLIERS }}">Suppliers</button>
</div>
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_ROW }}">
<button class="{{ model.FLAG_NAV_STORE_SUPPLIER_PURCHASE_ORDERS }}">Supplier Purchase Orders</button>
</div>
</div>
</div>
<!-- Include JavaScript

View File

@@ -0,0 +1,73 @@
{% extends 'layouts/layout.html' %}
{% block page_body %}
<link rel="stylesheet" href="{{ url_for('static', filename='dist/css/store_manufacturing_purchase_orders.bundle.css') }}">
<form id="{{ model.ID_FORM_FILTERS }}" class="{{ model.FLAG_FILTER }} {{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('routes_store_manufacturing_purchase_order.filter_manufacturing_purchase_order') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
{{ model.form_filters.hidden_tag() }}
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }} {{ model.FLAG_FILTER }} {{ model.FLAG_ACTIVE }}">
{{ model.form_filters.active.label }}
{{ model.form_filters.active() }}
{% for error in model.form_filters.active.errors %}
<p class="error">{{ error }}</p>
{% endfor %}
</div>
</div>
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }} {{ model.FLAG_FILTER }} {{ model.FLAG_DATE_FROM }}">
{{ model.form_filters.date_from.label }}
{{ model.form_filters.date_from() }}
{% for error in model.form_filters.date_from.errors %}
<p class="error">{{ error }}</p>
{% endfor %}
</div>
</div>
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }} {{ model.FLAG_FILTER }} {{ model.FLAG_DATE_TO }}">
{{ model.form_filters.date_to.label }}
{{ model.form_filters.date_to() }}
{% for error in model.form_filters.date_to.errors %}
<p class="error">{{ error }}</p>
{% endfor %}
</div>
</div>
{% set block_id = 'buttons_table_default' %}
{% include 'components/common/buttons/_buttons_save_cancel.html' %}
</form>
<table id="{{ model.ID_TABLE_MAIN }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
<thead>
<tr class="{{ model.FLAG_MANUFACTURING_PURCHASE_ORDER }}">
<th class="{{ model.FLAG_CURRENCY }}">Currency</th>
<th class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}">Cost Total VAT Excl.</th>
<th class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}">Cost Total VAT Incl.</th>
<th class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_EXCL }}">Price Total VAT Excl.</th>
<th class="{{ model.FLAG_PRICE_TOTAL_LOCAL_VAT_INCL }}">Price Total VAT Incl.</th>
<th class="{{ model.FLAG_ITEMS }}">Items</th>
<th class="{{ model.FLAG_ACTIVE}}">Active</th>
</tr>
</thead>
<tbody>
{% set is_blank_row = False %}
{% for manufacturing_purchase_order in model.manufacturing_purchase_orders %}
{% include 'components/store/_row_manufacturing_purchase_order.html' %}
{% endfor %}
{% set is_blank_row = True %}
{% include 'components/store/_row_manufacturing_purchase_order.html' %}
</tbody>
</table>
{% include 'components/common/temporary/_overlay_confirm.html' %}
{% include 'components/common/temporary/_overlay_error.html' %}
<script src="{{ url_for('routes_store.scripts_section_store') }}"></script>
<script>
var currencies = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.currencies) | tojson | safe }};
var manufacturing_purchase_orders = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.manufacturing_purchase_orders) | tojson | safe }};
</script>
{% endblock %}

View File

@@ -56,19 +56,8 @@
{% endfor %}
</div>
</div>
<!--
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }} {{ model.FLAG_CONTAINER_INPUT }}">
{ { model.form_filters.submit() }}
</div>
-->
{% set block_id = 'buttons_table_default' %}
{% include 'components/common/buttons/_buttons_save_cancel.html' %}
<!--
<div class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
</div>
</div>
-->
</form>
<table id="{{ model.ID_TABLE_MAIN }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
<thead>
@@ -77,8 +66,8 @@
<th class="{{ model.FLAG_PRODUCT }}">Product</th>
<th class="{{ model.FLAG_PRODUCT_VARIATIONS }} {{ model.FLAG_COLLAPSED }}">Variations</th>
<th class="{{ model.FLAG_CURRENCY_COST }}">Currency</th>
<th class="{{ model.FLAG_COST_LOCAL_VAT_EXCL }}">Cost Local (VAT excl.)</th>
<th class="{{ model.FLAG_COST_LOCAL_VAT_INCL }}">Cost Local (VAT incl.)</th>
<th class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_EXCL }}">Cost Local (VAT excl.)</th>
<th class="{{ model.FLAG_COST_UNIT_LOCAL_VAT_INCL }}">Cost Local (VAT incl.)</th>
<th class="{{ model.FLAG_DATE_PURCHASED}}">Date Purchased</th>
<th class="{{ model.FLAG_DATE_RECEIVED }}">Date Received</th>
<th class="{{ model.FLAG_STORAGE_LOCATION }}">Storage Location</th>

View File

@@ -0,0 +1,73 @@
{% extends 'layouts/layout.html' %}
{% block page_body %}
<link rel="stylesheet" href="{{ url_for('static', filename='dist/css/store_supplier_purchase_orders.bundle.css') }}">
<form id="{{ model.ID_FORM_FILTERS }}" class="{{ model.FLAG_FILTER }} {{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('routes_store_supplier_purchase_order.filter_supplier_purchase_order') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
{{ model.form_filters.hidden_tag() }}
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }} {{ model.FLAG_FILTER }} {{ model.FLAG_ACTIVE }}">
{{ model.form_filters.active.label }}
{{ model.form_filters.active() }}
{% for error in model.form_filters.active.errors %}
<p class="error">{{ error }}</p>
{% endfor %}
</div>
</div>
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }} {{ model.FLAG_FILTER }} {{ model.FLAG_DATE_FROM }}">
{{ model.form_filters.date_from.label }}
{{ model.form_filters.date_from() }}
{% for error in model.form_filters.date_from.errors %}
<p class="error">{{ error }}</p>
{% endfor %}
</div>
</div>
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }} {{ model.FLAG_FILTER }} {{ model.FLAG_DATE_TO }}">
{{ model.form_filters.date_to.label }}
{{ model.form_filters.date_to() }}
{% for error in model.form_filters.date_to.errors %}
<p class="error">{{ error }}</p>
{% endfor %}
</div>
</div>
{% set block_id = 'buttons_table_default' %}
{% include 'components/common/buttons/_buttons_save_cancel.html' %}
</form>
<table id="{{ model.ID_TABLE_MAIN }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
<thead>
<tr class="{{ model.FLAG_SUPPLIER_PURCHASE_ORDER }}">
<th class="{{ model.FLAG_SUPPLIER }}">Supplier</th>
<th class="{{ model.FLAG_CURRENCY }}">Currency</th>
<th class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_EXCL }}">Cost Total VAT Excl.</th>
<th class="{{ model.FLAG_COST_TOTAL_LOCAL_VAT_INCL }}">Cost Total VAT Incl.</th>
<th class="{{ model.FLAG_ITEMS }}">Items</th>
<th class="{{ model.FLAG_ACTIVE}}">Active</th>
</tr>
</thead>
<tbody>
{% set is_blank_row = False %}
{% for order in model.supplier_purchase_orders %}
{% include 'components/store/_row_supplier_purchase_order.html' %}
{% endfor %}
{% set is_blank_row = True %}
{% include 'components/store/_row_supplier_purchase_order.html' %}
</tbody>
</table>
{% include 'components/common/temporary/_overlay_confirm.html' %}
{% include 'components/common/temporary/_overlay_error.html' %}
<script src="{{ url_for('routes_store.scripts_section_store') }}"></script>
<script>
var currencies = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.currencies) | tojson | safe }};
var supplier_purchase_orders = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.supplier_purchase_orders) | tojson | safe }};
var suppliers = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.suppliers) | tojson | safe }};
</script>
{% endblock %}

View File

@@ -0,0 +1,66 @@
{% extends 'layouts/layout.html' %}
{% block page_body %}
<link rel="stylesheet" href="{{ url_for('static', filename='dist/css/store_suppliers.bundle.css') }}">
<form id="{{ model.ID_FORM_FILTERS }}" class="{{ model.FLAG_FILTER }} {{ model.FLAG_ROW }} {{ model.FLAG_CARD }}" action="{{ url_for('routes_store_supplier.filter_supplier') }}" method="POST"> <!-- {{ model.FLAG_CONTAINER }} -->
{{ model.form_filters.hidden_tag() }}
<div class="{{ model.FLAG_CONTAINER }} {{ model.FLAG_COLUMN }}">
<div class="{{ model.FLAG_CONTAINER_INPUT }} {{ model.FLAG_ROW }} {{ model.FLAG_FILTER }} {{ model.FLAG_ACTIVE }}">
{{ model.form_filters.active.label }}
{{ model.form_filters.active() }}
{% for error in model.form_filters.active.errors %}
<p class="error">{{ error }}</p>
{% endfor %}
</div>
</div>
{% set block_id = 'buttons_table_default' %}
{% include 'components/common/buttons/_buttons_save_cancel.html' %}
</form>
<table id="{{ model.ID_TABLE_MAIN }}" class="{{ model.FLAG_ROW }} {{ model.FLAG_CARD }}">
<thead>
<tr class="{{ model.FLAG_SUPPLIER }}">
<th class="{{ model.FLAG_NAME_COMPANY }}">Company</th>
<th class="{{ model.FLAG_NAME_CONTACT }}">Contact Name</th>
<th class="{{ model.FLAG_DEPARTMENT_CONTACT }}">Contact Department</th>
<th class="{{ model.FLAG_ADDRESS }} {{ model.FLAG_COLLAPSED }}">Address</th>
<th class="{{ model.FLAG_PHONE_NUMBER }}">Phone Number</th>
<th class="{{ model.FLAG_FAX }}">Fax Number</th>
<th class="{{ model.FLAG_EMAIL }}">Email</th>
<th class="{{ model.FLAG_WEBSITE }}">Website</th>
<th class="{{ model.FLAG_CURRENCY }}">Currency</th>
<th class="{{ model.FLAG_ACTIVE}}">Active</th>
</tr>
</thead>
<tbody>
{% set is_blank_row = False %}
{% for supplier in model.suppliers %}
{% include 'components/store/_row_supplier.html' %}
{% endfor %}
{% set is_blank_row = True %}
{% include 'components/store/_row_supplier.html' %}
</tbody>
</table>
{% include 'components/common/temporary/_overlay_confirm.html' %}
{% include 'components/common/temporary/_overlay_error.html' %}
<script src="{{ url_for('routes_store.scripts_section_store') }}"></script>
<script>
{#
var addresses = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.addresses) | tojson | safe }};
#}
var currencies = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.currencies) | tojson | safe }};
var flagDepartmentContact = "{{ model.FLAG_DEPARTMENT_CONTACT }}";
var flagNameCompany = "{{ model.FLAG_NAME_COMPANY }}";
var flagNameContact = "{{ model.FLAG_NAME_CONTACT }}";
var regions = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.regions) | tojson | safe }};
var supplierAddresses = {{ model.supplier_addresses | tojson | safe }};
var suppliers = {{ model.convert_list_objects_to_dict_json_by_attribute_key_default(model.suppliers) | tojson | safe }};
</script>
{% endblock %}