Guest User

Untitled

a guest
Mar 20th, 2018
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1. bookingDetails: function(params, callback) {
  2. async.waterfall([
  3. function(cb) {
  4.  
  5. var criteria = {
  6. user_id: params.user_id,
  7. };
  8. if (params.filter == 1) {
  9. criteria.status = "Upcoming"
  10. }
  11. if (params.filter == 2) {
  12. criteria.status = "Ongoing"
  13. }
  14. if (params.filter == 3) {
  15. criteria.status = "Completed"
  16. }
  17. if (params.filter == 4) {
  18. criteria.status = "Cancelled"
  19. }
  20.  
  21. var projection = {
  22. package_id: 1,
  23. start_date: 1,
  24. end_date: 1,
  25. guests: 1,
  26. packageDetail:1
  27. }
  28. var populate = [
  29. {
  30. path: "package_id",
  31. model: "package",
  32. select: "average_rating user_id",
  33. populate:{
  34. path: 'user_id',
  35. model: 'user',
  36. select: 'first_name last_name image',
  37. options: { lean: true }
  38. }
  39. }
  40. ];
  41. Models.Booking.find(criteria, projection).populate(populate).lean().exec(function(err, res) {
  42. if (err) {
  43. Utils.logger.errorLogger('+++++++++++++++ Error in get all package ++++++++++++++', err);
  44. cb(Utils.responses.systemError);
  45. } else {
  46. cb(null,res);
  47. }
  48. });
  49. }, function(data, cb) {
  50. var finalData = []
  51. async.eachSeries(data, function(item, Incb) { //Get all package reviews count
  52. item.reviewCount = 0
  53. reviewModel.Review.count({ package_id: item.package_id._id }, function(err, res) {
  54. if (err) {
  55. Utils.logger.errorLogger('+++++++++++++++ Error in get all package ++++++++++++++', err);
  56. Incb(Utils.responses.systemError);
  57. } else {
  58. item.reviewCount = res
  59. }
  60. })
  61. finalData.push(item);
  62. Incb()
  63. });
  64. cb(null, { count: data.length, data: finalData })
  65.  
  66.  
  67. }
  68. ],
  69. function(err, result) {
  70. if (err) {
  71. callback(err)
  72. } else {
  73. callback(null, result)
  74. }
  75. });
  76. },
Add Comment
Please, Sign In to add comment