You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

myWeeks.js 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. /* eslint-disable no-restricted-syntax */
  2. /* eslint-disable guard-for-in */
  3. import axios from 'axios';
  4. export default {
  5. namespaced: true,
  6. state: {
  7. items: [],
  8. },
  9. mutations: {
  10. setItems(state, list) {
  11. state.items = list;
  12. },
  13. setItem(state, item) {
  14. state.week = item;
  15. },
  16. updateItem(state, item) {
  17. var index
  18. var count = 0
  19. state.items.forEach((el) => {
  20. if (el.id === item.id) {
  21. index = count
  22. }
  23. count++
  24. })
  25. Object.assign(state.items[index], item)
  26. },
  27. },
  28. getters: {
  29. getNeedsVerify(state) {
  30. return _.filter(state.items, x => x.status && x.status.code === 'A1');
  31. },
  32. // removeListing(state, id) {
  33. // state.myWeeks.pop(state.myWeeks.find(w => w.id === id));
  34. // },
  35. },
  36. actions: {
  37. getItems({
  38. commit,
  39. }, id) {
  40. axios.get(`/api/timeshareweek/getMyWeek/${id}`).then(r => commit('setItems', r.data)).catch(
  41. console
  42. .error,
  43. );
  44. },
  45. verifyWeek({
  46. commit,
  47. }, id) {
  48. try {
  49. axios.post(`/api/timeshareweek/verifyweek/${id}`).catch(console.error);
  50. } catch (err) {
  51. console.log(err);
  52. }
  53. },
  54. publishWeek(id) {
  55. axios.post(`/api/timeshareweek/publishweek/${id}`).catch(console.error);
  56. },
  57. // deleteListing({ commit }, id) {
  58. // axios
  59. // .delete(`/api/myweeks/${id}`)
  60. // .then(result => commit('removeListing', id))
  61. // .catch(console.error);
  62. // }
  63. getWeek({ commit }, id) {
  64. axios
  65. .get(`/api/timeshareweek/${id}`)
  66. .then(r => {
  67. console.log(JSON.stringify(r));
  68. commit('setItem', r.data);
  69. })
  70. .catch(console.error);
  71. },
  72. editSave({ commit }, week) {
  73. axios
  74. .put(`/api/timeshareweek`, week)
  75. .then(r => {
  76. commit('updateItem', r.data);
  77. })
  78. .catch(console.error);
  79. }
  80. },
  81. };