| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import { toRefs, computed, reactive } from 'vue'
- import { queryQuoteGoodsList } from '@/services/api/swap'
- import { defineStore } from '../store'
- import { useUserStore } from './user'
- /**
- * 订单交易存储对象
- * @returns
- */
- export const useGoodsStore = defineStore(() => {
- const userStore = useUserStore()
- const state = reactive({
- loading: false,
- quoteGoodsList: <Model.QuoteGoodsListRsp[]>[],
- goodsId: 0,
- })
- // 当前选中的商品信息
- const goodsInfo = computed(() => {
- return {
- ...state.quoteGoodsList.find((e) => e.goodsid === state.goodsId)
- }
- })
- // 当前选中的商品代码
- const goodsCode = computed(() => {
- return goodsInfo.value.goodscode ?? ''
- })
- // 获取商品列表
- const getQuoteGoodsList = async () => {
- try {
- state.loading = true
- const res = await queryQuoteGoodsList({
- data: {
- usertype: userStore.userType ?? 0,
- marketids: '50101'
- }
- })
- const data = res.data
- state.quoteGoodsList = data
- // 查找当前选中的商品
- if (!data.every((e) => e.goodsid === state.goodsId)) {
- state.goodsId = data[0]?.goodsid ?? 0
- }
- } finally {
- state.loading = false
- }
- }
- return {
- ...toRefs(state),
- goodsInfo,
- goodsCode,
- getQuoteGoodsList,
- }
- })
|