西藏巴青项目

bookingService.js 1.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import request from '@/utils/request'
  2. /** 近 7 日日期条(含当天) */
  3. export function listBookingDates() {
  4. return request({
  5. url: '/app/bookingService/dates',
  6. method: 'GET'
  7. })
  8. }
  9. /** 可预约资源列表 */
  10. export function listBookingResources(params) {
  11. return request({
  12. url: '/app/bookingService/resource/list',
  13. method: 'GET',
  14. params
  15. })
  16. }
  17. /** 专家历史评价 */
  18. export function listExpertBookingReviews(expertResourceId, params) {
  19. return request({
  20. url: `/app/bookingService/expert/${expertResourceId}/reviews`,
  21. method: 'GET',
  22. params
  23. })
  24. }
  25. /** 提交预约 */
  26. export function submitBookingAppointment(data) {
  27. return request({
  28. url: '/app/bookingService/appointment',
  29. method: 'POST',
  30. header: { repeatSubmit: false },
  31. data
  32. })
  33. }
  34. /** 所选日期是否已有有效预约(当前登录用户) */
  35. export function checkAppointmentBooked(params) {
  36. return request({
  37. url: '/app/bookingService/appointment/booked',
  38. method: 'GET',
  39. params
  40. })
  41. }
  42. /** 服务方类型:1 兽医 / 2 机构 / 3 专家 */
  43. export const BOOKING_PROVIDER_TYPE = {
  44. VET: 1,
  45. ORG: 2,
  46. EXPERT: 3
  47. }
  48. export function bookingResourceCacheKey(resourceType, resourceId) {
  49. return `bs_resource_${resourceType}_${resourceId}`
  50. }
  51. export function saveBookingResourceCache(resourceType, resourceId, row) {
  52. if (!resourceType || !resourceId || !row) return
  53. try {
  54. uni.setStorageSync(bookingResourceCacheKey(resourceType, resourceId), JSON.stringify(row))
  55. } catch (e) {
  56. /* noop */
  57. }
  58. }
  59. export function loadBookingResourceCache(resourceType, resourceId) {
  60. if (!resourceType || !resourceId) return null
  61. try {
  62. const raw = uni.getStorageSync(bookingResourceCacheKey(resourceType, resourceId))
  63. if (!raw) return null
  64. return typeof raw === 'string' ? JSON.parse(raw) : raw
  65. } catch (e) {
  66. return null
  67. }
  68. }