selectedOrders.js 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. const {fetchGraphql, dateTime} = require('../../../../utils/util.js');
  2. const {adminorderbyprops} = require('../../../../config/gql.js');
  3. Component({
  4. properties: {
  5. kind: {
  6. type: String,
  7. value: 'success',
  8. observer(newVal, oldVal, changedPath) {
  9. this.setData({
  10. loading: true,
  11. orders: '',
  12. status: newVal
  13. });
  14. if (newVal !== '') {
  15. let varObj = {orderStatus: newVal};
  16. if (newVal === 'all') varObj = {};
  17. fetchGraphql(adminorderbyprops,
  18. varObj,
  19. null,
  20. 'adminorderbyprops',
  21. null
  22. )
  23. .then(orders => {
  24. orders.forEach(order => {
  25. order.service_id.formatDate = dateTime(Number(order.service_id.startTime), true).date;
  26. order.service_id.formatStartTime = dateTime(Number(order.service_id.startTime), true).time;
  27. order.service_id.formatEndTime = dateTime(Number(order.service_id.startTime) + Number(order.service_id.lastTime), true).time;
  28. delete order.service_id.server_id.img;
  29. });
  30. this.setData({
  31. loading: false,
  32. orders
  33. });
  34. });
  35. }
  36. }
  37. }
  38. },
  39. lifetimes: {
  40. attached() {
  41. // 在组件实例进入页面节点树时执行
  42. fetchGraphql(adminorderbyprops,
  43. {
  44. orderStatus: this.data.status
  45. },
  46. null,
  47. 'adminorderbyprops',
  48. null
  49. )
  50. .then(orders => {
  51. orders.forEach(order => {
  52. order.service_id.formatDate = dateTime(Number(order.service_id.startTime), true).date;
  53. order.service_id.formatStartTime = dateTime(Number(order.service_id.startTime), true).time;
  54. order.service_id.formatEndTime = dateTime(Number(order.service_id.startTime) + Number(order.service_id.lastTime), true).time;
  55. delete order.service_id.server_id.img;
  56. });
  57. this.setData({
  58. loading: false,
  59. orders
  60. });
  61. });
  62. }
  63. },
  64. data: {
  65. loading: true,
  66. orders: '',
  67. status: 'success'
  68. },
  69. methods: {}
  70. });