index.vue 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <template>
  2. <div>{{ msg }}</div>
  3. </template>
  4. <script setup lang="ts">
  5. import Phone from "@/utils/phone";
  6. import axios from "axios";
  7. import {ref} from 'vue'
  8. type iosOrderUserInfo = {
  9. id: string;
  10. nickName: string;
  11. pxkm: string;
  12. loginCode: string;
  13. apsw: string;
  14. apt: string;
  15. };
  16. const baseUrl =
  17. import.meta.env.MODE === "production"
  18. ? "https://jsjp-admin.zzxcx.net/jsjp-admin/"
  19. : "https://jsjp-admin1.zzxcx.net/jsjp-admin/";
  20. const myPhone = new Phone();
  21. const request = axios.create();
  22. const msg = ref('未调用的初始状态')
  23. //@ts-ignore
  24. window.iosOrder = (goodsId: string, userInfoStr: string,goodsType:string) => {
  25. let userInfoObj: iosOrderUserInfo = JSON.parse(userInfoStr);
  26. //这是没审核的时候
  27. if (Number(userInfoObj.apsw) == 0) {
  28. let apt = Number(userInfoObj.apt);
  29. switch (apt) {
  30. case 1:
  31. window.setTimeout(() => {
  32. myPhone.ipyCallgo();
  33. }, 2500);
  34. break;
  35. case 2:
  36. request({
  37. url: baseUrl + "open-api/wxjs/getPrepareGoodsOrder",
  38. method: "post",
  39. data: {
  40. goodsId: goodsId,
  41. goodsType: 2,
  42. userId: userInfoObj.id,
  43. phoneType: myPhone.isIos() ? 1 : 2,
  44. goodsType:goodsType
  45. },
  46. }).then((res: any) => {
  47. if (res.data.code == 200) {
  48. myPhone.spyCallgo(
  49. `weixin://app/wx606fa102dbc4b8ab/pay/?nonceStr=${
  50. res.data.data.nonceStr
  51. }&package=${window.encodeURIComponent(
  52. res.data.data.packageValue
  53. )}&partnerId=${res.data.data.partnerId}&prepayId=${
  54. res.data.data.prepayId
  55. }&timeStamp=${res.data.data.timeStamp}&sign=${window.encodeURIComponent(
  56. res.data.data.sign
  57. )}&signType=SHA1&_wechat_sdk_support_url_params=1`
  58. );
  59. } else {
  60. msg.value = JSON.stringify( res.data)
  61. myPhone.errCallgo(res.data.code + "");
  62. }
  63. });
  64. break;
  65. case 3:
  66. request({
  67. url: baseUrl + "open-api/wxjs/getH5PrepareGoodsOrder",
  68. method: "POST",
  69. data: {
  70. goodsId: goodsId,
  71. goodsType: 2,
  72. phoneType: myPhone.isIos() ? 1 : 2,
  73. userId: userInfoObj.id,
  74. goodsType:goodsType
  75. },
  76. }).then((res: any) => {
  77. if (res.data.code == 200) {
  78. if (res.data.data.h5_url) {
  79. msg.value = JSON.stringify( res.data)
  80. window.location.href = res.data.data.h5_url;
  81. } else {
  82. msg.value = JSON.stringify( res.data)
  83. console.log(res.data);
  84. }
  85. } else {
  86. console.log("下单错误");
  87. msg.value = JSON.stringify( res.data)
  88. //数字转字符串
  89. myPhone.errCallgo(res.data.code + "");
  90. }
  91. });
  92. break;
  93. default:
  94. break;
  95. }
  96. } else if (Number(userInfoObj.apsw) == 1) {
  97. window.setTimeout(() => {
  98. myPhone.ipyCallgo();
  99. }, 2500);
  100. }
  101. //open-api/wxjs/prepareOrder
  102. // alert('调用了iosOrder')
  103. };
  104. myPhone.ladCallgo()
  105. </script>
  106. <style scoped></style>