Advertisement
Guest User

Untitled

a guest
Sep 16th, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.16 KB | None | 0 0
  1. const convertOrdersToDeliveryTags = async (orders, address) => {
  2.  
  3. const deliveryTags = _.map(orders, (order) => {
  4. return {
  5. userName: order.get('user').get('name'),
  6. productName: order.get('product').get('name'),
  7. orderNumber: order.get('orderNumber'),
  8. isPicked: !_.isEmpty(order.get('pickedAt')),
  9. isDelivered: !_.isEmpty(order.get('deliveredAt')),
  10. isReturned: !_.isEmpty(order.get('returnedAt')),
  11. address: order.get('address').get('address'),
  12. mapsAddress: order.get('address').get('mapsAddress'),
  13. latitude: order.get('address').get('latlong').latitude,
  14. longitude: order.get('address').get('latlong').longitude,
  15. order: order,
  16. chefLat: address[0].get('address').get('latlong')._latitude,
  17. chefLong: address[0].get('address').get('latlong')._longitude,
  18. };
  19. });
  20.  
  21.  
  22. let destinations = deliveryTags.map(order => {
  23. return `${order.latitude},${order.longitude}`;
  24. });
  25. let origins = [`${deliveryTags[0].chefLat},${deliveryTags[0].chefLong}`];
  26. await googleMapsClient.distanceMatrix({'origins': origins, 'destinations': destinations}, function (err, res) {
  27.  
  28. const filteredArray = [];
  29. _.map(deliveryTags, (item) => {
  30. if (res.json.destination_addresses.indexOf(item.mapsAddress) !== -1) {
  31. filteredArray.push({...item});
  32. }
  33. });
  34. return filteredArray;
  35. });
  36. return "hello";
  37.  
  38. };
  39.  
  40.  
  41.  
  42.  
  43. const doGetTodayOrdersOfSellersByTags = (seller) => async dispatch => {
  44. dispatch(getTodayOrdersByTagsRequest());
  45. const orderQuery = new Parse.Query(Order);
  46. const today = moment().set('hour', 1).toDate();
  47. const tomorrow = moment().add(1, 'day').set('hour', 1).toDate();
  48. orderQuery.equalTo('seller', seller).greaterThanOrEqualTo('date', today).lessThanOrEqualTo('date', tomorrow).include('user', 'product', 'address').equalTo('orderStatus', 'paid');
  49. orderQuery.find().then((orders) => {
  50. dispatch(getTodayOrdersByTagsSuccess(sortOrdersByName(orders)));
  51. }).catch((err) => {
  52. dispatch(getTodayOrdersByTagsFailure(err));
  53. });
  54. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement