選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

resort.js 3.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  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. resort: {},
  8. images: [],
  9. layout: '',
  10. description: '',
  11. },
  12. mutations: {
  13. setResort(state, resort) {
  14. state.resort = resort;
  15. },
  16. setDescription(state, description) {
  17. state.description = description;
  18. },
  19. addImage(state, image) {
  20. state.images.push(`data:image/jpeg;base64,${image}`);
  21. },
  22. clear(state) {
  23. state.resort = {};
  24. state.images = [];
  25. state.layout = '';
  26. },
  27. setLayout(state, image) {
  28. state.layout = `data:image/jpeg;base64,${image}`;
  29. },
  30. },
  31. getters: {},
  32. actions: {
  33. initResort({
  34. commit,
  35. dispatch,
  36. }, resortCode) {
  37. commit('clear');
  38. dispatch('getResort', resortCode);
  39. dispatch('getDescription', resortCode);
  40. dispatch('getImage1', resortCode);
  41. dispatch('getImage2', resortCode);
  42. dispatch('getImage3', resortCode);
  43. dispatch('getImage4', resortCode);
  44. dispatch('getLayout', resortCode);
  45. },
  46. getDescription({
  47. commit,
  48. }, resortCode) {
  49. axios
  50. .get(
  51. `https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/${resortCode}/dsc`,
  52. )
  53. .then((result) => {
  54. commit('setDescription', result.data);
  55. })
  56. .catch(console.error);
  57. },
  58. getResort({
  59. commit,
  60. }, resortCode) {
  61. axios
  62. .get(
  63. `https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/TRESORT/${resortCode}`,
  64. )
  65. .then((result) => {
  66. commit('setResort', result.data);
  67. })
  68. .catch(console.error);
  69. },
  70. getImage1({
  71. commit,
  72. }, resortCode) {
  73. axios
  74. .get(
  75. `https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/${resortCode}/image/1`,
  76. )
  77. .then(result => commit('addImage', result.data))
  78. .catch(console.error);
  79. },
  80. getImage2({
  81. commit,
  82. }, resortCode) {
  83. axios
  84. .get(
  85. `https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/${resortCode}/image/2`,
  86. )
  87. .then(result => commit('addImage', result.data))
  88. .catch(console.error);
  89. },
  90. getImage3({
  91. commit,
  92. }, resortCode) {
  93. axios
  94. .get(
  95. `https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/${resortCode}/image/3`,
  96. )
  97. .then(result => commit('addImage', result.data))
  98. .catch(console.error);
  99. },
  100. getImage4({
  101. commit,
  102. }, resortCode) {
  103. axios
  104. .get(
  105. `https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/${resortCode}/image/4`,
  106. )
  107. .then((result) => {
  108. if (result.data && result.data.length > 0) {
  109. commit('addImage', result.data);
  110. }
  111. })
  112. .catch(console.error);
  113. },
  114. getLayout({
  115. commit,
  116. }, resortCode) {
  117. axios
  118. .get(
  119. `https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/${resortCode}/layout`,
  120. )
  121. .then(result => commit('setLayout', result.data))
  122. .catch(console.error);
  123. },
  124. },
  125. };