forget.js 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225
  1. var content = {
  2. 'cn':{
  3. item1:'订单',
  4. btn:'订单确定',
  5. btn1:'订单取消',
  6. serial:'订单号:',
  7. merchantSerial:'商户流水号:',
  8. amount:'金额:',
  9. cny:"人民币:",
  10. UserName: "户名:",
  11. BankName: "银行名称:",
  12. BankCardNum: "银行卡号:",
  13. bankBranchName: "开户支行名称:",
  14. BankAddr: "支行地址:",
  15. SwiftCode: "Swift Code:",
  16. BankCode: "银行Code:",
  17. expireTime: "过期时间:",
  18. success:'成功',
  19. },
  20. 'en':{
  21. item1:'Order',
  22. btn:'Order Confirmation',
  23. btn1:'Order Cancellation',
  24. serial:'Serial:',
  25. merchantSerial:'Merchant Serial:',
  26. amount:'Amount:',
  27. cny:"CNY:",
  28. UserName: "User Name:",
  29. BankName: "Bank Name:",
  30. BankCardNum: "Bank Card Number:",
  31. bankBranchName: "Bank Branch Name:",
  32. BankAddr: "Bank Addr:",
  33. SwiftCode: "Swift Code:",
  34. BankCode: "Bank Code:",
  35. expireTime: "ExpireTime:",
  36. success:'success',
  37. }
  38. };
  39. let config = {
  40. Pattern: {
  41. Password: /^(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])(?!.*([~!@&%$^\\(\\)#_]).*\\1.*\\1.*\\1)[A-Za-z0-9~!@&%$^\\(\\)#_]{8,16}$/,
  42. }
  43. };
  44. let vm = new Vue({
  45. el: "#forget",
  46. data(){
  47. return{
  48. ho:'',
  49. //多语言
  50. langList: {
  51. en: "ENGLISH",
  52. cn: "中文简体"
  53. },
  54. language: "cn",
  55. lang:{},
  56. flag:false,
  57. serial:'',
  58. pictLoading:false,
  59. params: {
  60. amount: "",
  61. bankAddr:'',
  62. bankBranchName:'',
  63. bankCardNum:'',
  64. bankCode:'',
  65. bankName:'',
  66. bankUname:'',
  67. cny:'',
  68. expireTime:'',
  69. merchantSerial:'',
  70. pickupUrl:'',
  71. serial:'',
  72. swiftCode:'',
  73. payType:'ALIPAY',
  74. alipayUrl:'',
  75. payMsg:'',
  76. },
  77. time:'',
  78. timer:null,
  79. timeStatus:1,
  80. rules: {
  81. }
  82. }
  83. },
  84. computed: {
  85. },
  86. methods: {
  87. // 语言切换函数
  88. chooseLang (key) {
  89. this.lang = content[key];
  90. this.language = key;
  91. },
  92. // 复制分享链接
  93. CopyShareLink (val) {
  94. // 模拟 输入框
  95. var cInput = document.createElement("input");
  96. cInput.value = val;
  97. document.body.appendChild(cInput);
  98. cInput.select(); // 选取文本框内容
  99. // 执行浏览器复制命令
  100. // 复制命令会将当前选中的内容复制到剪切板中(这里就是创建的input标签)
  101. // Input要在正常的编辑状态下原生复制方法才会生效
  102. document.execCommand("copy");
  103. this.$message({
  104. type: "success",
  105. message: "复制成功"
  106. });
  107. // 复制成功后再将构造的标签 移除
  108. document.body.removeChild(cInput);
  109. },
  110. // 发送
  111. send: async function () {
  112. this.pictLoading = true;
  113. axios.get(this.ho + '/pay/order/get?serial=' + this.serial, {
  114. //参数
  115. }).then(res => {//请求成功后的处理函数
  116. if (res.data.code == 200) {
  117. this.$message({
  118. message: this.lang.success,
  119. type: 'success'
  120. });
  121. this.params = res.data.data;
  122. } else {
  123. this.$message.error(res.data.msg);
  124. }
  125. this.timer = setInterval(() => {this.getDate()}, 1000);
  126. }).catch(err => { //请求失败后的处理函数
  127. })
  128. setTimeout(() => {
  129. this.pictLoading = false;
  130. }, 1000);
  131. },
  132. confirm: async function (val) {
  133. if (this.flag) {
  134. return
  135. } else {
  136. this.flag = true;
  137. }
  138. axios.post(this.ho + '/pay/order/submit', {
  139. serial:this.params.serial,
  140. customStatus:val,
  141. //参数
  142. }).then(res => {//请求成功后的处理函数
  143. if (res.data.code == 200) {
  144. this.$message({
  145. message: this.lang.success,
  146. type: 'success'
  147. });
  148. setTimeout(() => {
  149. window.location.href = this.params.pickupUrl
  150. }, 2000);
  151. } else {
  152. this.$message.error(res.data.msg);
  153. }
  154. this.flag = false;
  155. }).catch(err => { //请求失败后的处理函数
  156. })
  157. },
  158. //时间
  159. getDate () {
  160. var newyear=new Date(this.params.expireTime.replace(/-/g,"/"));
  161. var date1=new Date();
  162. var now=newyear-date1;
  163. let mm = 0, ss = 0;
  164. if( now > 0 ) {
  165. mm = Math.floor( now/1000/60%60 );
  166. ss = Math.floor( now/1000%60 );
  167. this.timeStatus = 1;
  168. } else {
  169. this.timeStatus = 2;
  170. clearInterval(this.timer)
  171. }
  172. let clock;
  173. if (mm < 10) {
  174. mm = "0" + mm;
  175. }
  176. if (ss < 10) {
  177. ss = "0" + ss;
  178. }
  179. clock = mm + ":" + ss;
  180. this.time = clock;
  181. },
  182. },
  183. mounted() {
  184. // this.ho ='http://192.168.0.21:15233';
  185. this.ho = window.location.origin;
  186. // this.params.token = window.location.search.split('?token=')[1];
  187. this.serial = window.location.search.split('?serial=')[1];
  188. this.lang = content['cn'];
  189. this.send();
  190. },
  191. destroyed() {
  192. clearInterval(this.timer)
  193. }
  194. });