UNPKG

test-iki-mini-app

Version:

ứng dựng bán hàng trên mini app z a l o

91 lines (87 loc) 2.38 kB
import { create } from "zustand"; import { RepositoryRemote } from "../services"; export const useOrderStore = create((set) => ({ loading: false, loadingOrder: false, loadingCancel: false, isEmptyData: false, ordersList: {}, order: {}, recordsOder: [], changePaymentOrder: async ( data, order_code, onSuccess = () => {}, onFail = () => {} ) => { try { set({ loading: true }); const response = await RepositoryRemote.order.changePaymentOrder( data, order_code ); if (onSuccess) onSuccess(response); } catch (error) { if (onFail) onFail(error.response.data.msg); } set({ loading: false }); }, getOrdersList: async (params, onSuccess = () => {}, onFail = () => {}) => { try { set({ loadingOrder: true }); const response = await RepositoryRemote.order.getOrdersList(params); set({ ordersList: response.data.data, isEmptyData: response.data.data.data?.length > 0 ? false : true, }); if (onSuccess) onSuccess(response); } catch (error) { if (onFail) onFail(error.response.data.msg); } set({ loadingOrder: false }); }, getOrdersDetail: async ( orderCode, onSuccess = () => {}, onFail = () => {} ) => { try { set({ loading: true }); const response = await RepositoryRemote.order.getOrdersDetail(orderCode); set({ order: response.data.data, }); if (onSuccess) onSuccess(response); } catch (error) { if (onFail) onFail(error.response.data.msg); } set({ loading: false }); }, getRecordsOrder: async ( orderCode, onSuccess = () => {}, onFail = () => {} ) => { try { set({ loading: true }); const response = await RepositoryRemote.order.getRecordsOrder(orderCode); set({ recordsOder: response.data.data, }); if (onSuccess) onSuccess(response); } catch (error) { if (onFail) onFail(error.response.data.msg); } set({ loading: false }); }, cancelOrder: async (data, onSuccess = () => {}, onFail = () => {}) => { try { set({ loadingCancel: true }); await RepositoryRemote.order.cancelOrder(data); if (onSuccess) onSuccess(); } catch (error) { if (onFail) onFail(error.response.data.msg); } set({ loadingCancel: false }); }, }));