| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- import { defineStore } from 'pinia'
- import {
- getCouponListApi,
- receiveCouponApi,
- getCoupon2idApi,
- getCoupon2ListApi,
- } from '@/service/coupon1'
- import { getCoupon2ViewmListApi } from '@/service/coupon2'
- import { until } from '@vueuse/core'
- export const useCouponStore = defineStore(
- 'coupon',
- () => {
- // 获取优惠券列表
- const getCouponList = async (couponproductids: string) => {
- const { data: couponList, loading } = useRequest(
- () => getCouponListApi({ couponproductids }, { pageindex: 1, rows: 999 }),
- {
- immediate: true,
- },
- )
- await until(loading).toBe(false)
- return couponList.value.Data
- }
- // 领取优惠券
- const receiveCoupon = async ({ couponid, coupon2phone, coupon2productids }) => {
- const { data: couponList, loading } = useRequest(
- () => receiveCouponApi({ couponid, coupon2phone, coupon2productids }),
- {
- immediate: true,
- },
- )
- await until(loading).toBe(false)
- return couponList.value
- }
- // 获取该用户下,已领取的优惠劵id,用于判断是否可以领取
- const getCoupon2id = async (params) => {
- const { data: couponList, loading } = useRequest(() => getCoupon2idApi(params), {
- immediate: true,
- })
- await until(loading).toBe(false)
- return couponList.value
- }
- // 通过优惠券id获取产品信息(视图)
- const getCoupon2ViewmList = async (params: { coupon2code: string }) => {
- const { data: couponList, loading } = useRequest(
- () => getCoupon2ViewmListApi(params, { pageindex: 1, rows: 999 }),
- {
- immediate: true,
- },
- )
- await until(loading).toBe(false)
- return couponList.value
- }
- // 获取已关联到当前用户的优惠券列表
- const getCoupon2List = async (params: { coupon2userid: string }) => {
- const { data: couponList, loading } = useRequest(
- () => getCoupon2ListApi(params, { pageindex: 1, rows: 999 }),
- {
- immediate: true,
- },
- )
- await until(loading).toBe(false)
- return couponList.value
- }
- return {
- getCouponList,
- receiveCoupon,
- getCoupon2id,
- getCoupon2ViewmList,
- getCoupon2List,
- }
- },
- {
- persist: true,
- },
- )
|