Work on wiaas orders

This commit is contained in:
Almira Krdzic
2018-08-08 12:21:26 +02:00
parent c1834f679a
commit b8653ad18b
25 changed files with 644 additions and 81 deletions

View File

@@ -56,14 +56,14 @@ export const receiveCustomerDetails = (json) => ({
export const fetchCartCount = () => {
return dispatch => {
dispatch(requestShopCartCount());
return client.fetch({url: `${API_SERVER}/cart/api/getCartCount`}).then(response => {
dispatch(receiveShopCartCount(0));
/*return client.fetch({url: `${API_SERVER}/cart/api/getCartCount`}).then(response => {
if (typeof response.data !== 'undefined' && 'cartItemsCount' in response.data) {
dispatch(receiveShopCartCount(response.data.cartItemsCount));
}
}).catch(error => {
client.onError(error, dispatch);
});
});*/
}
}

View File

@@ -12,16 +12,7 @@ const recieveGadgets = (json) => ({
export const fetchGadgets = () => {
return dispatch => {
dispatch(requestGadgets());
return htmlClient.fetch({
url: `${API_SERVER}/dashboards/api/getMyDashboard`
})
.then(response => {
if(response.data && response.data.gadgets){
dispatch(recieveGadgets(response.data.gadgets))
}
})
.catch(error => {
htmlClient.onError(error, dispatch);
});
const data = {"info":{"idDashboard":"23","name":"Customer Basic Dashboard","isOwner":"0"},"gadgets":[{"idGadget":"3","name":"Customer Order Central","module":"gadget-order-central","position":"1"},{"idGadget":"5","name":"Customer Next Actions","module":"gadget-next-actions","position":"2"}]};
dispatch(recieveGadgets(data.gadgets))
}
}

View File

@@ -18,7 +18,7 @@ export const fetchNextActions = () => {
return dispatch => {
dispatch(requestNextActions());
return client.fetch({
url: `${API_SERVER}/dashboards/api/getNextActionsInfo`
url: `${API_SERVER}/wp-json/wiaas/next-delivery-steps`
})
.then(response => dispatch(recieveNextActions(response.data)))
.catch(error => {

View File

@@ -19,8 +19,8 @@ export const recieveOrders = (json) => ({
export const fetchOrders = (viewAllOrders) => {
return dispatch => {
dispatch(requestOrders());
return htmlClient.fetch({
dispatch(recieveOrders([]));
/*return htmlClient.fetch({
url: `${API_SERVER}/dashboards/api/getOrderCentralInfo`,
method: 'post',
data: {
@@ -30,6 +30,6 @@ export const fetchOrders = (viewAllOrders) => {
.then(response => dispatch(recieveOrders(response.data)))
.catch(error => {
htmlClient.onError(error, dispatch);
});
});*/
}
}

View File

@@ -160,8 +160,68 @@ const validateRefreshToken = () => {
export const getModules = () => {
return dispatch => {
const data = {
"modules": {
"modules": [
{
"id": "14",
"name": "ProfileSettings",
"menuName": "ProfileSettings",
"url": "profileSettings",
"isInMenu": "0"
},
{
"id": "23",
"name": "OrderProjects",
"menuName": "OrderProjects",
"url": "orderProjects",
"isInMenu": "0"
},
{
"id": "15",
"name": "Terms",
"menuName": "Terms",
"url": "terms",
"isInMenu": "0"
},
{
"id": "19",
"name": "Cart",
"menuName": "Cart",
"url": "cart",
"isInMenu": "0"
},
{
"id": "1",
"name": "Dashboards",
"menuName": "Overview",
"url": "dashboards",
"isInMenu": "1"
},
{
"id": "18",
"name": "CoMarket",
"menuName": "Co-Market",
"url": "co-market",
"isInMenu": "1"
}
],
"subModules": {
"co-market": [
{
"moduleUrl": "co-market",
"menuName": "Orders",
"name": "Orders",
"url": "orders"
}
]
}
}
};
dispatch(recieveModules(data));
dispatch(requestModules());
return htmlClient.fetch({
/**return htmlClient.fetch({
url: `${API_SERVER}/login/api/getModules`,
})
.then(response => {
@@ -169,7 +229,7 @@ export const getModules = () => {
})
.catch(error => {
htmlClient.onError(error, dispatch);
});
});**/
}
}

View File

@@ -23,12 +23,10 @@ export const getActiveOrders = () => {
return dispatch => {
dispatch(requestActiveOrders());
return htmlClient.fetch({
url: `${API_SERVER}/orders/api/getActiveOrders`
url: `${API_SERVER}/wp-json/wc/v2/orders?status=processing`
})
.then(response => {
if (typeof response.data !== 'undefined' && 'orders' in response.data) {
dispatch(recieveActiveOrders(response.data.orders));
}
dispatch(recieveActiveOrders(response.data));
})
.catch(error => {
htmlClient.onError(error, dispatch);
@@ -50,12 +48,10 @@ export const getHistoryOrders = () => {
return dispatch => {
dispatch(requestHistoryOrders());
return htmlClient.fetch({
url: `${API_SERVER}/orders/api/getHistoryOrders`
url: `${API_SERVER}/wp-json/wc/v2/orders?status=completed`
})
.then(response => {
if (typeof response.data !== 'undefined' && 'orders' in response.data) {
dispatch(recieveHistoryOrders(response.data.orders));
}
dispatch(recieveHistoryOrders(response.data));
})
.catch(error => {
htmlClient.onError(error, dispatch);

View File

@@ -186,10 +186,10 @@ export const orderTexts = {
},
statuses: {
open: 'Open',
'in-progress': 'In Progress',
production: 'Completed',
'processing': 'Processing',
completed: 'Completed',
'end-of-life': 'Completed',
canceled: 'Canceled',
cancelled: 'Cancelled',
'not-accepted': 'Not Accepted',
invalid: 'Invalid',
pending: 'Pending'

View File

@@ -15,7 +15,7 @@ class OrdersDataContainer extends Component {
checkIfOrdersExistForUser(orders) {
return orders.every((order) => {
return 'isMyOrder' in order && !order.isMyOrder;
return true;//'isMyOrder' in order && !order.isMyOrder;
})
}
@@ -38,7 +38,7 @@ class OrdersDataContainer extends Component {
<OrderList orders={orders} type={type}/>
}
{
((orders && orders.length === 0 && !isLoading) || (orders && this.checkIfOrdersExistForUser(orders))) &&
((orders && orders.length === 0 && !isLoading) || (orders && !this.checkIfOrdersExistForUser(orders))) &&
<Alert color="info">{orderTexts.labels.NO_RECORDS}</Alert>
}
</WiaasBox>

View File

@@ -37,28 +37,28 @@ class ActiveOrderItem extends Component {
{!this.state.showPackages && <i className={this.getIconClass('down')} aria-hidden="true" onClick={this.toggle}></i>}
{this.state.showPackages && <i className={this.getIconClass('up')} aria-hidden="true" onClick={this.toggle}></i>}
<i className="fa fa-list-alt package-photo" aria-hidden="true" />
<div className="order-number">{order.orderNumber}</div>
<div className="order-number">{order.number}</div>
</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.REFERENCE}>{order.reference ? order.reference : '-'}</WiaasTableCol>
{isViewAllOrdersChecked['active'] && <WiaasTableCol header={orderTexts.labels.PLACED_BY}>{order.customerName ? order.customerName : ''}</WiaasTableCol>}
<WiaasTableCol header={orderTexts.labels.ORDER_DATE}>{order.orderDate ? order.orderDate : '-'}</WiaasTableCol>
{isViewAllOrdersChecked['active'] && <WiaasTableCol header={orderTexts.labels.PLACED_BY}>{order.customer ? order.customer.name : ''}</WiaasTableCol>}
<WiaasTableCol header={orderTexts.labels.ORDER_DATE}>{order.date_created ? order.date_created : '-'}</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.EST_DELIVERY}>{order.estimatedDeliveryDate ? order.estimatedDeliveryDate : '-'}</WiaasTableCol>
<WiaasTableCol header="Catalogue">
<div className="order-item-cl">
<img className="cl-photo" src="static/img/man-icon.png" alt="Catalogue" />
<div className="cl-details">
<div className="cl-contact-name">{order.clContactName}</div>
<div className="cl-name">{order.clName}</div>
<div className="cl-contact-name">{order.commercial_lead ? order.commercial_lead.contact_name : ''}</div>
<div className="cl-name">{order.commercial_lead ? order.commercial_lead.name : ''}</div>
</div>
</div>
</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.AMOUNT}>
{order.orderCurrency && order.orderCurrency.currency
? order.orderTotalPrice.toLocaleString() + ' ' + order.orderCurrency.currency
: parseFloat(order.orderTotalPrice).toLocaleString()}
{order.currency
? order.total.toLocaleString() + ' ' + order.currency
: parseFloat(order.total).toLocaleString()}
</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.STATUS}>
<div className={'status-icon ' + order.status}></div>{order.status}
<div className={'status-icon ' + order.status}></div>{orderTexts.statuses[order.status]}
</WiaasTableCol>
<WiaasTableCol header="Buttons details">
<Link to={'/orders/' + order.id} className="actions-link">

View File

@@ -42,7 +42,7 @@ class HistoryOrdersButtons extends Component {
],
header: orderTexts.labels.SUPPORT_MESSAGE_HEADER,
TagName: SupportMail,
params: {orderInfo: this.props.order, orderPackages: this.props.order.packages}
params: {orderInfo: this.props.order, orderPackages: this.props.order.line_items}
};
this.props.dispatch(setDialogOpenFlag(true));

View File

@@ -37,30 +37,30 @@ class HistoryOrdersItem extends Component {
{!this.state.showPackages && <i className={this.getIconClass('down')} aria-hidden="true" onClick={this.toggle}></i>}
{this.state.showPackages && <i className={this.getIconClass('up')} aria-hidden="true" onClick={this.toggle}></i>}
<i className="fa fa-list-alt package-photo" aria-hidden="true" />
<div className="order-number">{order.orderNumber}</div>
<div className="order-number">{order.number}</div>
</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.REFERENCE}>{order.reference ? order.reference : '-'}</WiaasTableCol>
{isViewAllOrdersChecked['history'] && <WiaasTableCol header={orderTexts.labels.PLACED_BY}>{order.customerName ? order.customerName : ''}</WiaasTableCol>}
<WiaasTableCol header={orderTexts.labels.ORDER_DATE}>{order.orderDate ? order.orderDate : '-'}</WiaasTableCol>
{isViewAllOrdersChecked['history'] && <WiaasTableCol header={orderTexts.labels.PLACED_BY}>{order.customer ? order.customer.name : ''}</WiaasTableCol>}
<WiaasTableCol header={orderTexts.labels.ORDER_DATE}>{order.date_created ? order.date_created : '-'}</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.DELIVERY_DATE}>{order.deliveryDate}</WiaasTableCol>
<WiaasTableCol header="Catalogue">
<div className="order-item-cl">
<img className="cl-photo" src="static/img/man-icon.png" alt="Catalogue" />
<div className="cl-details">
<div className="cl-contact-name">{order.clContactName}</div>
<div className="cl-name">{order.clName}</div>
<div className="cl-contact-name">{order.commercial_lead ? order.commercial_lead.contact_name : ''}</div>
<div className="cl-name">{order.commercial_lead ? order.commercial_lead.name : ''}</div>
</div>
</div>
</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.AMOUNT}>
{order.orderCurrency && order.orderCurrency.currency
? order.orderTotalPrice.toLocaleString() + ' ' + order.orderCurrency.currency
: parseFloat(order.orderTotalPrice).toLocaleString()}
{order.currency
? order.total.toLocaleString() + ' ' + order.currency
: parseFloat(order.total).toLocaleString()}
</WiaasTableCol>
<WiaasTableCol header={orderTexts.labels.STATUS}>
<div className={'status-icon ' + order.status}></div>{orderTexts.statuses[order.status]}
</WiaasTableCol>
<WiaasTableCol header="End of life">{order.endOfLife}</WiaasTableCol>
<WiaasTableCol header="End of life">{order.date_completed}</WiaasTableCol>
<WiaasTableCol header="Buttons details">
<HistoryOrderButtons order={order}/>
</WiaasTableCol>

View File

@@ -57,8 +57,8 @@ class OrderList extends Component {
{
orders &&
orders.map((order, index) =>
(('isMyOrder' in order && order.isMyOrder) || (isCompanyAdmin && isViewAllOrdersChecked[type])) &&
<TagName key={order.orderNumber} order={order} />
((true) || (isCompanyAdmin && isViewAllOrdersChecked[type])) &&
<TagName key={order.id} order={order} />
)
}
</WiaasTableBody>
@@ -69,7 +69,7 @@ class OrderList extends Component {
}
const mapStateToProps = (state) => ({
isCompanyAdmin: state.auth.isCompanyAdmin,
isCompanyAdmin: true, //state.auth.isCompanyAdmin,
isViewAllOrdersChecked: state.ordersReducer.isViewAllOrdersChecked
});
export default connect(mapStateToProps)(OrderList);

View File

@@ -51,6 +51,6 @@ class OrderListHeader extends Component {
}
const mapStateToProps = (state) => ({
isCompanyAdmin: state.auth.isCompanyAdmin
isCompanyAdmin: true//state.auth.isCompanyAdmin
});
export default connect(mapStateToProps)(OrderListHeader);

View File

@@ -32,23 +32,23 @@ class OrderPackage extends Component {
<div className="order-details-container">
<WiaasTableRow id={'delivery-address-' + order.id}>
<Col lg="4" sm="4" xs="4">{orderTexts.labels.DELIVERY_ADDRESS}:</Col>
<Col lg="8" sm="8" xs="8">{order.deliveryAddress}</Col>
<Col lg="8" sm="8" xs="8">{order.shipping.address_1}, {order.shipping.city}, {order.shipping.country}, {order.shipping.postcode}</Col>
</WiaasTableRow>
<WiaasTableRow id={'phone-' + order.id}>
<Col lg="4" sm="4" xs="4">{orderTexts.labels.PHONE_NUMBER}:</Col>
<Col lg="8" sm="8" xs="8">{order.phone}</Col>
<Col lg="8" sm="8" xs="8">{order.customer.phone}</Col>
</WiaasTableRow>
<WiaasTableRow id={'mail-' + order.id}>
<Col lg="4" sm="4" xs="4">{orderTexts.labels.MAIL}:</Col>
<Col lg="8" sm="8" xs="8">{order.mail}</Col>
<Col lg="8" sm="8" xs="8">{order.customer.email}</Col>
</WiaasTableRow>
<WiaasTableRow id={'commercial-lead-phone-' + order.id}>
<Col lg="4" sm="4" xs="4">{order.clName} {orderTexts.labels.PHONE_NUMBER}:</Col>
<Col lg="8" sm="8" xs="8">{order.commercialLeadPhone}</Col>
<Col lg="4" sm="4" xs="4">{order.commercial_lead ? order.commercial_lead.name : ''} {orderTexts.labels.PHONE_NUMBER}:</Col>
<Col lg="8" sm="8" xs="8">{order.commercial_lead ? order.commercial_lead.phone : ''}</Col>
</WiaasTableRow>
<WiaasTableRow id={'mail-' + order.id}>
<Col lg="4" sm="4" xs="4">{order.clName} {orderTexts.labels.MAIL}:</Col>
<Col lg="8" sm="8" xs="8">{order.commercialLeadMail}</Col>
<Col lg="4" sm="4" xs="4">{order.commercial_lead ? order.commercial_lead.name : ''} {orderTexts.labels.MAIL}:</Col>
<Col lg="8" sm="8" xs="8">{order.commercial_lead ? order.commercial_lead.email : ''}</Col>
</WiaasTableRow>
</div>
</WiaasBox>
@@ -58,24 +58,24 @@ class OrderPackage extends Component {
<WiaasTable>
<WiaasTableHeader headers={this.getHeadersByType(type)}/>
<WiaasTableBody>
{order.packages.map((orderPackage, index) =>
<WiaasTableRow className="order-central-row" key={orderPackage.idOrder + '-' + orderPackage.idPackage}>
{order.line_items.map((orderPackage, index) =>
<WiaasTableRow className="order-central-row" key={orderPackage.id + '-' + orderPackage.product_id}>
<WiaasTableCol header="Package" className="package-info-col">
<div className="package-name">{orderPackage.units} x {orderPackage.packageName}</div>
<div className="package-name">{orderPackage.quantity} x {orderPackage.name}</div>
</WiaasTableCol>
<WiaasTableCol header="Price">
{this.calculateQuantityPrice(orderPackage.units, orderPackage.packageFixedPrice).toLocaleString()} {orderPackage.packageCurrency && orderPackage.packageCurrency.currency} {' '}
({orderPackage.paymentType})
{this.calculateQuantityPrice(orderPackage.quantity, orderPackage.price).toLocaleString()} {orderPackage.packageCurrency && orderPackage.packageCurrency.currency} {' '}
({orderPackage.payment_type})
</WiaasTableCol>
<WiaasTableCol header="Services and support">
{this.calculateQuantityPrice(orderPackage.units, orderPackage.packageServicePrice, orderPackage.packageRecuringPrice).toLocaleString() + ' / ' + orderPackage.periodUnit + ' '}
{orderTexts.labels.EXTEND} {orderPackage.periodUnit} (Max {orderPackage.maxContractPeriod})
{this.calculateQuantityPrice(orderPackage.quantity, orderPackage.service_price, orderPackage.recurring_price).toLocaleString() + ' / ' + orderPackage.period_unit + ' '}
{orderTexts.labels.EXTEND} {orderPackage.period_unit} (Max {orderPackage.max_contract_period})
</WiaasTableCol>
<WiaasTableCol>
{
type === 'active'
? orderPackage.shortDesc ? orderPackage.shortDesc : '-'
: orderPackage.endOfLife ? orderPackage.endOfLife : '-'
? orderPackage.short_desc || '-'
: orderPackage.date_completed || '-'
}
</WiaasTableCol>
</WiaasTableRow>

View File

@@ -48,7 +48,7 @@ class SupportMail extends Component {
<span className="subtitle">{orderTexts.labels.ORDER_NUMBER}:</span>
</Col>
<Col xl="8">
<span>{orderInfo.orderNumber}</span>
<span>{orderInfo.number}</span>
</Col>
</Row>
<Row>
@@ -71,17 +71,17 @@ class SupportMail extends Component {
<Row>
<Col>
<span className="fa fa-shopping-cart subtitle"></span>
<span className="package-name"> {orderPackage.units} x {orderPackage.packageName}</span>
<span className="package-name"> {orderPackage.quantity} x {orderPackage.name}</span>
</Col>
</Row>
{orderPackage.endOfLife &&
{orderInfo.date_modified &&
<Row>
<Col>
<span className="subtitle">{orderTexts.labels.END_OF_LIFE}:</span>
</Col>
<Col xl="8">
<span>{orderPackage.endOfLife}</span>
<span>{orderPackage.date_completed}</span>
</Col>
</Row>
}

View File

@@ -14,7 +14,7 @@ $borderWidth: 3px;
border-left: $borderWidth $open-status-color solid;
}
.order-border-in-progress {
.order-border-processing {
border-left: $borderWidth $in-progress-status-color solid;
}
@@ -72,11 +72,11 @@ $borderWidth: 3px;
background: $open-status-color;
}
.in-progress {
.processing {
background: $in-progress-status-color;
}
.production {
.completed {
background: $production-status-color;
}