settlement.ts 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import { mountComponent, useUnmountComponent } from "@/utils/mount-component";
  2. import Settlement from "./settlement.vue";
  3. import { BranchModel } from "@/dataModel/myBranchList";
  4. import { ref } from "vue";
  5. import { Toast } from "vant";
  6. const branchModel = new BranchModel();
  7. export type UserInfo = {
  8. openid: string;
  9. nickName: string;
  10. headImage: string;
  11. achievement: number;
  12. achievementSettled: number;
  13. };
  14. export const showSettlement = (props: UserInfo) => {
  15. const { unmount } = mountComponent(Settlement, props);
  16. return {
  17. unmount,
  18. };
  19. };
  20. export const useSettlementIntegral = (props: { openid: string; settlePoints: number }) => {
  21. const { unmountComponent } = useUnmountComponent();
  22. const loading = ref(false);
  23. const settlementIntegral = async () => {
  24. loading.value = true;
  25. const data = await branchModel.integralSettlement(props);
  26. if (data.code === 200) {
  27. Toast.success("结算成功");
  28. unmountComponent();
  29. } else {
  30. Toast.fail(data.msg);
  31. }
  32. loading.value = false;
  33. };
  34. return {
  35. loading,
  36. settlementIntegral,
  37. };
  38. };