diff --git a/frontend/src/containers/orders/ProcessContainer.jsx b/frontend/src/containers/orders/ProcessContainer.jsx index a809ae6..4c04de0 100644 --- a/frontend/src/containers/orders/ProcessContainer.jsx +++ b/frontend/src/containers/orders/ProcessContainer.jsx @@ -52,7 +52,7 @@ class ProcessContainer extends Component { if(this.props.orderInfo) { this.props.orderInfo.packages.forEach(orderPackage => { - orderPackagePairs.push(orderPackage.idOrder + '-' + orderPackage.idPackage); + orderPackagePairs.push(this.props.orderInfo.id + '-' + orderPackage.id); }); } this.setState({ @@ -71,11 +71,11 @@ class ProcessContainer extends Component { if(installCompanies && isComponentDisabled && earliestInstallDate) { if(nextProps.orderInfo) { + const idOrder = nextProps.orderInfo.id; nextProps.orderInfo.packages.forEach(orderPackage => { - const idOrder = orderPackage && orderPackage.idOrder; - const idOrderPackagePair = orderPackage ? idOrder + '-' + orderPackage.idPackage : ''; + const idOrderPackagePair = orderPackage ? idOrder + '-' + orderPackage.id : ''; orderPackage.idOrderPackagePair = idOrderPackagePair; - areComponentsDisabled[idOrder] = this.checkIfComponentIsDisabled(orderPackage.idOrder, isComponentDisabled, earliestInstallDate); + areComponentsDisabled[idOrder] = this.checkIfComponentIsDisabled(idOrder, isComponentDisabled, earliestInstallDate); const availableCompanies = {}; const selectedCompanies = {}; @@ -101,7 +101,7 @@ class ProcessContainer extends Component { }); const isSchedulingDisabled = Object.assign({}, this.state.isSchedulingDisabled); - isSchedulingDisabled[nextProps.orderInfo.info.id] = allPackagesScheduleInstallDisabled.every(isDisabled => {return isDisabled === true;}); + isSchedulingDisabled[nextProps.orderInfo.id] = allPackagesScheduleInstallDisabled.every(isDisabled => {return isDisabled === true;}); this.setState({ isSchedulingDisabled, areComponentsDisabled, @@ -126,16 +126,16 @@ class ProcessContainer extends Component { return true; } - calculatetTotalPrice(packages) { - let fixedPrice = priceHelper.sumPrices(packages.map(pkg => { return pkg.units * pkg.packageFixedPrice})); - let recurrentPrice = priceHelper.sumPrices(packages.map(pkg => { return pkg.units * pkg.packageRecuringPrice})); - let servicesPrice = priceHelper.sumPrices(packages.map(pkg => { return pkg.units * pkg.packageServicePrice})); + calculatetTotalPrice(packages, currency) { + let fixedPrice = priceHelper.sumPrices(packages.map(pkg => { return pkg.quantity * pkg.price})); + let recurrentPrice = priceHelper.sumPrices(packages.map(pkg => { return pkg.quantity * pkg.recurringPrice})); + let servicesPrice = priceHelper.sumPrices(packages.map(pkg => { return pkg.quantity * pkg.servicePrice})); return { fixedPrice, recurrentPrice: priceHelper.sumPrices([recurrentPrice, servicesPrice]), periodUnit: packages[0].periodUnit, - currency: packages[0].packageCurrency.currency + currency: currency } } @@ -158,15 +158,10 @@ class ProcessContainer extends Component { if(this.state.packageNameFilter === 'all') { return true; }else{ - return orderPackage.packageName === this.state.packageNameFilter; + return orderPackage.name === this.state.packageNameFilter; } } - getProcess(process){ - const processKeys = Object.keys(process) || []; - return processKeys.length > 0 ? process[processKeys[0]] : {}; - } - getButtonClass() { if(this.props.orderInfo) { return this.state.isSchedulingDisabled[this.props.orderInfo.id] ? 'schedule-inactive' : 'schedule-active'; @@ -198,7 +193,7 @@ class ProcessContainer extends Component { getActiveView: this.getActiveView, installationData: this.state }}> - + { this.state.activeView !== 'info' && @@ -221,9 +216,10 @@ class ProcessContainer extends Component { > { orderInfo.packages.filter(this.filterPackages).map(orderPackage => - ) } @@ -231,18 +227,18 @@ class ProcessContainer extends Component { } { this.state.activeView === 'comments' && - + } { this.state.activeView === 'documents' && - + } } { - (orderInfo && !orderInfo.info && !isLoading) && + (!orderInfo && !isLoading) &&
{orderTexts.labels.NOT_AVAILABLE}!
diff --git a/frontend/src/containers/orders/components/OrderDocuments.jsx b/frontend/src/containers/orders/components/OrderDocuments.jsx index 555d86e..1b42f47 100644 --- a/frontend/src/containers/orders/components/OrderDocuments.jsx +++ b/frontend/src/containers/orders/components/OrderDocuments.jsx @@ -10,10 +10,10 @@ class OrderDocuments extends Component { return (
{ - orderInfo.packages.map(orderPackage => ) + orderInfo.packages.map(orderPackage => ) } { - orderInfo.orderDocuments && + orderInfo.orderDocuments && }
); diff --git a/frontend/src/containers/orders/components/OrderDocumentsGroup.jsx b/frontend/src/containers/orders/components/OrderDocumentsGroup.jsx index 5f15380..cd11fb0 100644 --- a/frontend/src/containers/orders/components/OrderDocumentsGroup.jsx +++ b/frontend/src/containers/orders/components/OrderDocumentsGroup.jsx @@ -57,6 +57,7 @@ class OrderDocumentsGroup extends Component { return (
{ + documentsGroup.documents && documentsGroup.documents.length > 0 && { diff --git a/frontend/src/containers/orders/components/OrderInfo.jsx b/frontend/src/containers/orders/components/OrderInfo.jsx index fd69b6f..5ba0603 100644 --- a/frontend/src/containers/orders/components/OrderInfo.jsx +++ b/frontend/src/containers/orders/components/OrderInfo.jsx @@ -27,7 +27,7 @@ class OrderInfo extends Component { setInstallationData(props) { const acceptedDate = {}; const proposedDate = {}; - const idOrder = props.orderDetails.info.id; + const idOrder = props.orderDetails.id; const {isInstallationInPackage} = props.installationData; const {confirmationDates, areAllShippingDatesConfirmed} = props; const isPreliminaryInstallationDate = areAllShippingDatesConfirmed && idOrder in areAllShippingDatesConfirmed ? !areAllShippingDatesConfirmed[idOrder] : true; @@ -53,27 +53,27 @@ class OrderInfo extends Component { const {acceptedDate, proposedDate, isPreliminaryInstallationDate, isInstallationInOrder} = this.state; const orderPackages = installationData.packages; const isInstallationInPackage = installationData.isInstallationInPackage; - const orderInfo = this.props.orderInfo.info; + const orderInfo = this.props.orderInfo; return (
{orderTexts.labels.ORDER_DATE}:
- {orderInfo.orderDate} + {orderInfo.dateCreated}
{orderTexts.labels.SOLD_BY}:
- {orderInfo.commercialLead} + {orderInfo.commercialLead.name}
{orderTexts.labels.BILLING_FIRST_NAME}:
- {orderInfo.billingFirstName || '-'} + {orderInfo.billing.firstName || '-'}
{orderTexts.labels.BILLING_LAST_NAME}:
- {orderInfo.billingLastName || '-'} + {orderInfo.billing.lastName || '-'}
{orderTexts.labels.BILLING_MAIL}:
- {orderInfo.billingMail || '-'} + {orderInfo.billing.email || '-'}
{orderTexts.labels.BILLING_ADDRESS}:
- {orderInfo.billingAddress || '-'} + {orderInfo.billing.address || '-'}
diff --git a/frontend/src/containers/orders/components/PackagesNav.jsx b/frontend/src/containers/orders/components/PackagesNav.jsx index 51207fe..a2eb098 100644 --- a/frontend/src/containers/orders/components/PackagesNav.jsx +++ b/frontend/src/containers/orders/components/PackagesNav.jsx @@ -21,9 +21,9 @@ class PackageNav extends Component {
{onPackageFilter('all')}}>{orderTexts.buttons.ALL}
{ packages.length > 0 && - packages.map((orderPackage) =>
{onPackageFilter(orderPackage.packageName)}} - className={this.getClass(orderPackage.packageName)}>{orderPackage.packageName}
) + packages.map((orderPackage) =>
{onPackageFilter(orderPackage.name)}} + className={this.getClass(orderPackage.name)}>{orderPackage.name}
) } diff --git a/frontend/src/containers/orders/components/packages/PackageInfo.jsx b/frontend/src/containers/orders/components/packages/PackageInfo.jsx index 27040ad..66d086e 100644 --- a/frontend/src/containers/orders/components/packages/PackageInfo.jsx +++ b/frontend/src/containers/orders/components/packages/PackageInfo.jsx @@ -29,8 +29,8 @@ class PackageInfo extends Component { } render() { - const {orderPackage, onViewChange} = this.props; - const shouldShowPriceInfo = orderPackage.packageRecuringPrice > 0 || orderPackage.packageServicePrice > 0; + const {orderPackage, currency, onViewChange} = this.props; + const shouldShowPriceInfo = orderPackage.recurringPrice > 0 || orderPackage.servicePrice > 0; return ( @@ -41,7 +41,7 @@ class PackageInfo extends Component { {orderTexts.labels.PACKAGE_PRICE}: {' '} { shouldShowPriceInfo && } @@ -49,43 +49,43 @@ class PackageInfo extends Component {
{orderTexts.labels.TOTAL_DELVIERY_PRICE}: {' '} - {(orderPackage.units * orderPackage.packageFixedPrice).toLocaleString() + ' ' + orderPackage.packageCurrency.currency} + {(orderPackage.quantity * orderPackage.price).toLocaleString() + ' ' + currency}
{ shouldShowPriceInfo &&
{orderTexts.labels.TOTAL_RECURRENT_PRICE}:{' '} - {(orderPackage.units * (orderPackage.packageRecuringPrice + orderPackage.packageServicePrice)).toLocaleString()} {orderPackage.packageCurrency.currency} + {(orderPackage.quantity * (orderPackage.recurringPrice + orderPackage.servicePrice)).toLocaleString()} {currency}
} { shouldShowPriceInfo && {orderPackage.paymentType}
- { orderPackage.packageRecuringPrice > 0 && + { orderPackage.recurringPrice > 0 &&
{orderTexts.labels.RECURRENT_PRICE}: - {(orderPackage.units * orderPackage.packageRecuringPrice).toLocaleString()} {orderPackage.packageCurrency.currency} / {orderPackage.periodUnit} + {(orderPackage.quantity * orderPackage.recurringPrice).toLocaleString()} {currency} / {orderPackage.periodUnit} { orderPackage.packagePayPeriod > 0 && - for {orderPackage.packagePayPeriod} {orderPackage.periodUnit} + for {orderPackage.payPeriod} {orderPackage.periodUnit} }
} - { orderPackage.packageServicePrice > 0 && + { orderPackage.servicePrice > 0 &&
{orderTexts.labels.SERVICES_PRICE}: - {(orderPackage.units * orderPackage.packageServicePrice).toLocaleString()} {orderPackage.packageCurrency.currency} / {orderPackage.periodUnit} + {(orderPackage.quantity * orderPackage.servicePrice).toLocaleString()} {currency} / {orderPackage.periodUnit} { orderPackage.servicesContractPeriod > 0 && @@ -101,7 +101,7 @@ class PackageInfo extends Component { } { - orderPackage.options.length > 0 && + orderPackage.options && orderPackage.options.length > 0 &&
{orderTexts.labels.OPTIONS}:
{ @@ -112,7 +112,7 @@ class PackageInfo extends Component { } { - orderPackage.additionalPackages.length > 0 && + orderPackage.additionalPackages && orderPackage.additionalPackages.length > 0 &&
{orderTexts.labels.ADDITIONAL_PACKAGES}:
{ diff --git a/frontend/src/containers/orders/components/packages/PackageName.jsx b/frontend/src/containers/orders/components/packages/PackageName.jsx index 79f8d28..3a665e0 100644 --- a/frontend/src/containers/orders/components/packages/PackageName.jsx +++ b/frontend/src/containers/orders/components/packages/PackageName.jsx @@ -7,7 +7,7 @@ class PackageName extends Component { return (
- {orderPackage.units + ' x ' + orderPackage.packageName} + {orderPackage.quantity + ' x ' + orderPackage.name}
); } diff --git a/frontend/src/containers/orders/components/packages/ProcessPackage.jsx b/frontend/src/containers/orders/components/packages/ProcessPackage.jsx index f1c9743..d08e742 100644 --- a/frontend/src/containers/orders/components/packages/ProcessPackage.jsx +++ b/frontend/src/containers/orders/components/packages/ProcessPackage.jsx @@ -6,13 +6,13 @@ import PackageName from './PackageName.jsx'; class ProcessPackage extends Component { render() { - const {orderPackage, idCommercialLead} = this.props; + const {orderPackage, currency, idCommercialLead} = this.props; return ( - +