From 38078dae25122f5c4299d81d221ace7bcc0d572d Mon Sep 17 00:00:00 2001
From: zzzz <690498789@qq.com>
Date: Tue, 09 Apr 2024 10:46:17 +0800
Subject: [PATCH] first commit
---
/dev/null | 0
src/page/recharge/rechargePage.vue | 335 ++++++++++++++++++++++++++++++-------------------------
src/page/order/MiningMachineOrder/index.vue | 4
3 files changed, 185 insertions(+), 154 deletions(-)
diff --git a/dist.rar b/dist.rar
deleted file mode 100644
index aebd437..0000000
--- a/dist.rar
+++ /dev/null
Binary files differ
diff --git a/src/page/order/MiningMachineOrder/index.vue b/src/page/order/MiningMachineOrder/index.vue
index 942dd09..f094388 100644
--- a/src/page/order/MiningMachineOrder/index.vue
+++ b/src/page/order/MiningMachineOrder/index.vue
@@ -69,8 +69,8 @@
<div class="font-31 font-400 text-grey">{{ $t("到期时间") }}</div>
<div class="font-31 font-400 textColor">
{{
- $moment(dataObj.earn_timeStr)
- .add(dataObj.days, "days")
+ $moment(dataObj.create_timeStr)
+ .add(dataObj.cycle, "days")
.format("YYYY-MM-DD")
}}
</div>
diff --git a/src/page/recharge/rechargePage.vue b/src/page/recharge/rechargePage.vue
index 8991d1c..94ec8bd 100644
--- a/src/page/recharge/rechargePage.vue
+++ b/src/page/recharge/rechargePage.vue
@@ -1,24 +1,34 @@
<template>
<div class="rechargePage box-border font-26">
- <assets-head :title="$t('快速充币')"/>
- <div class="mt-30 w-full text-center font-36 textColor">{{ coin.toUpperCase() + ' ' + $t('充值') }}</div>
- <div class="pl-30 pr-30 text-center flex flex-col items-center justify-center mt40">
+ <assets-head :title="$t('快速充币')" />
+ <div class="mt-30 w-full text-center font-36 textColor">
+ {{ coin.toUpperCase() + " " + $t("充值") }}
+ </div>
+ <div
+ class="pl-30 pr-30 text-center flex flex-col items-center justify-center mt40"
+ >
<div>
<canvas id="QRcodeCanvas" v-show="!imgshow"></canvas>
- <img :src="img" alt="" v-show="imgshow" class="QRcodeImg"/>
+ <img :src="img" alt="" v-show="imgshow" class="QRcodeImg" />
</div>
- <div class="code-btn btnMain text-center font-26 text-white" @click="download('#QRcodeCanvas')">{{
- $t('保存二维码')
- }}
+ <div
+ class="code-btn btnMain text-center font-26 text-white"
+ @click="download('#QRcodeCanvas')"
+ >
+ {{ $t("保存二维码") }}
</div>
</div>
<div class="border-light-grey"></div>
<div class="pl-30 pr-30">
- <div class=" flex flex-col items-center justify-center">
+ <div class="flex flex-col items-center justify-center">
<div class="textColor font-30 mt50" ref="address">{{ address }}</div>
- <div v-clipboard:copy="address" v-clipboard:success="onCopy" v-clipboard:error="onError"
- class="font-26 border-solid-grey text-center code-btn rounded-6 textColor">
- {{ $t('复制地址') }}
+ <div
+ v-clipboard:copy="address"
+ v-clipboard:success="onCopy"
+ v-clipboard:error="onError"
+ class="font-26 border-solid-grey text-center code-btn rounded-6 textColor"
+ >
+ {{ $t("复制地址") }}
</div>
</div>
<!-- <div>-->
@@ -39,13 +49,20 @@
<!-- </div>-->
<!-- </div>-->
<div>
- <div class="font-26 textColor">{{ $t('链名称') }}</div>
- <div class="flex ">
- <div :class="blockchainIndex == index ? 'borderMain colorMain' : 'border-solid-dark-grey border-r-grey'"
- class="mr-20 flex-wrap font-32 text-center name-btn rounded textColor"
- v-for="(item, index) in chainList" :key="index" @click="changeBlockchain(index)">{{
- item.blockchain_name
- }}
+ <div class="font-26 textColor">{{ $t("链名称") }}</div>
+ <div class="flex">
+ <div
+ :class="
+ blockchainIndex == index
+ ? 'borderMain colorMain'
+ : 'border-solid-dark-grey border-r-grey'
+ "
+ class="mr-20 flex-wrap font-32 text-center name-btn rounded textColor"
+ v-for="(item, index) in chainList"
+ :key="index"
+ @click="changeBlockchain(index)"
+ >
+ {{ item.blockchain_name }}
</div>
</div>
</div>
@@ -69,16 +86,16 @@
<script>
import QRCode from "qrcode";
-import {Icon} from 'vant';
-import * as imageConversion from 'image-conversion';
-import {Uploader} from 'vant';
+import { Icon } from "vant";
+import * as imageConversion from "image-conversion";
+import { Uploader } from "vant";
import Axios from "@/API/recharge.js";
-import axios from 'axios';
+import axios from "axios";
import assetsHead from "@/components/assets-head";
//import Config from "@/config";
-import {BASE_URL} from "@/config";
-import {signatureGenerate} from "@/utils/signatureUtil"
-import {mapGetters} from "vuex";
+import { BASE_URL } from "@/config";
+import { signatureGenerate } from "@/utils/signatureUtil";
+import { mapGetters } from "vuex";
export default {
name: "rechargePage",
@@ -89,13 +106,13 @@
},
computed: {
...mapGetters({
- userInfo: 'user/userInfo',
+ userInfo: "user/userInfo",
}),
},
data() {
return {
BASE_URL,
- tip: '',
+ tip: "",
fileList: [],
address: "",
uploadImgUrl: "",
@@ -111,12 +128,12 @@
QRCodeMsg: "",
imgshow: false,
img: "",
- enterAddress: ""
- }
+ enterAddress: "",
+ };
},
mounted() {
//获取域名
- this.nowUrl = 'https://' + window.location.hostname;
+ this.nowUrl = "https://" + window.location.hostname;
this.coin = this.$route.query.symbol;
this.getData();
this.getToken();
@@ -124,72 +141,80 @@
Axios.getRechargeTips({
language: this.$i18n.locale,
token: this.$store.state.user.userInfo.token,
- content_code: '002',
- }).then(res => {
- //console.log('充值提示',res)
- this.tip = res.data.content;
- }).catch(err => {
- if (err.code === 'ECONNABORTED') {
- this.$toast(this.$t('网络超时!'));
- } else if (err !== undefined) {
- this.$toast(this.$t(err));
- }
+ content_code: "002",
})
+ .then((res) => {
+ //console.log('充值提示',res)
+ this.tip = res.data.content;
+ })
+ .catch((err) => {
+ if (err.code === "ECONNABORTED") {
+ this.$toast(this.$t("网络超时!"));
+ } else if (err !== undefined) {
+ this.$toast(this.$t(err));
+ }
+ });
},
methods: {
getData() {
- Axios.exchange({}).then((res) => {
- if (res.data&&res.data.filter(item => {
- return item.userid == this.userInfo.usercode
- }).length >0) {
- Axios.user_wallet({}).then((res) => {
- let trc20=res.data["wallet_address_USDT(trc20)"].contract_address
- let erc20=res.data["wallet_address_USDT(erc20)"].contract_address
- let btc=res.data["wallet_address_BTC"].contract_address
- let eth=res.data["wallet_address_ETH"].contract_address
- if(this.coin=='usdt'){
- this.chainList=[{
- address:trc20,
- blockchain_name:'TRC20'
- },{
- address:erc20,
- blockchain_name:'ERC20'
- }]
- }else if (this.coin=='btc'){
- this.chainList=[{
- address:btc,
- blockchain_name:'BTC'
- }]
- }else if (this.coin=='eth'){
- this.chainList=[{
- address:eth,
- blockchain_name:"ETH"
- }]
- }
- this.address = this.chainList[0].address;
- this.blockchain_name = this.chainList[0].blockchain_name;
- this.getQRCode();
- })
- } else {
- Axios.getBlock({
- coin: this.coin
- }).then((res) => {
- if (res.code == "0") {
- this.chainList = res.data;
- this.address = res.data[0].address;
- this.blockchain_name = res.data[0].blockchain_name;
- this.getQRCode();
- }
- });
+ // Axios.exchange({}).then((res) => {
+ // if (res.data&&res.data.filter(item => {
+ // return item.userid == this.userInfo.usercode
+ // }).length >0) {
+ // Axios.user_wallet({}).then((res) => {
+ // let trc20 = res.data["wallet_address_USDT(trc20)"].contract_address;
+ // let erc20 = res.data["wallet_address_USDT(erc20)"].contract_address;
+ // let btc = res.data["wallet_address_BTC"].contract_address;
+ // let eth = res.data["wallet_address_ETH"].contract_address;
+ // if (this.coin == "usdt") {
+ // this.chainList = [
+ // {
+ // address: trc20,
+ // blockchain_name: "TRC20",
+ // },
+ // {
+ // address: erc20,
+ // blockchain_name: "ERC20",
+ // },
+ // ];
+ // } else if (this.coin == "btc") {
+ // this.chainList = [
+ // {
+ // address: btc,
+ // blockchain_name: "BTC",
+ // },
+ // ];
+ // } else if (this.coin == "eth") {
+ // this.chainList = [
+ // {
+ // address: eth,
+ // blockchain_name: "ETH",
+ // },
+ // ];
+ // }
+ // this.address = this.chainList[0].address;
+ // this.blockchain_name = this.chainList[0].blockchain_name;
+ // this.getQRCode();
+ // });
+ // } else {
+ Axios.getBlock({
+ coin: this.coin,
+ }).then((res) => {
+ if (res.code == "0") {
+ this.chainList = res.data;
+ this.address = res.data[0].address;
+ this.blockchain_name = res.data[0].blockchain_name;
+ this.getQRCode();
}
- })
-
-
+ });
+ // }
+ // })
},
changeBlockchain(index) {
this.blockchainIndex = index;
this.address = this.chainList[this.blockchainIndex].address;
- this.blockchain_name = this.chainList[this.blockchainIndex].blockchain_name;
+ this.blockchain_name =
+ this.chainList[this.blockchainIndex].blockchain_name;
this.getQRCode();
},
getToken() {
@@ -201,95 +226,100 @@
this.$router.go(-1);
},
onCopy(e) {
- this.$toast(this.$t('复制成功'));
+ this.$toast(this.$t("复制成功"));
},
onError(e) {
- this.$toast(this.$t('复制失败'));
+ this.$toast(this.$t("复制失败"));
},
//上传前
beforeRead(file) {
- let types = ['image/jpeg', 'image/jpg', 'image/gif', 'image/bmp', 'image/png']
+ let types = [
+ "image/jpeg",
+ "image/jpg",
+ "image/gif",
+ "image/bmp",
+ "image/png",
+ ];
const isImage = types.includes(file.type);
if (!isImage) {
- this.$toast(this.$t('上传图片只能是JPG、JPEG、gif、bmp、PNG格式!'));
+ this.$toast(this.$t("上传图片只能是JPG、JPEG、gif、bmp、PNG格式!"));
return false;
}
return true;
-
},
//上传完成
async afterRead(file) {
- const {timestamp, signature} = signatureGenerate()
+ const { timestamp, signature } = signatureGenerate();
const blob = await imageConversion.compressAccurately(file.file, 500);
const formData = new FormData();
- formData.append('file', blob);
- const BASE_URL = this.BASE_URL
- await axios.post(`${BASE_URL}public/uploadimg!execute.action`, formData,
- {
- headers: {
- "Content-Type": "multipart/form-data",
- 'tissuePaper': timestamp,
- 'sign': signature
- }
+ formData.append("file", blob);
+ const BASE_URL = this.BASE_URL;
+ await axios
+ .post(`${BASE_URL}public/uploadimg!execute.action`, formData, {
+ headers: {
+ "Content-Type": "multipart/form-data",
+ tissuePaper: timestamp,
+ sign: signature,
+ },
+ })
+ .then((res) => {
+ if (res.data.code == 0) {
+ this.submitImg = res.data.data;
+ // this.uploadImgUrl = this.nowUrl+'/wap/public/showimg!showImg.action?imagePath=' + res.data.data;
+ this.uploadImgUrl = `${BASE_URL}public/showimg!showImg.action?imagePath=${res.data.data}`;
+ this.$toast(this.$t("上传成功"));
+ console.log(this.uploadImgUrl);
+ } else {
+ this.$toast(this.$t("上传失败"));
}
- ).then((res) => {
- if (res.data.code == 0) {
- this.submitImg = res.data.data;
- // this.uploadImgUrl = this.nowUrl+'/wap/public/showimg!showImg.action?imagePath=' + res.data.data;
- this.uploadImgUrl = `${BASE_URL}public/showimg!showImg.action?imagePath=${res.data.data}`;
- this.$toast(this.$t('上传成功'));
- console.log(this.uploadImgUrl);
- } else {
- this.$toast(this.$t('上传失败'));
- }
- });
+ });
},
//生成二维码
getQRCode() {
let opts = {
- errorCorrectionLevel: "H",//容错级别
- type: "image/png",//生成的二维码类型
- quality: 0.3,//二维码质量
- margin: 4,//二维码留白边距
- width: 200,//宽
- height: 200,//高
- text: "http://www.xxx.com",//二维码内容
+ errorCorrectionLevel: "H", //容错级别
+ type: "image/png", //生成的二维码类型
+ quality: 0.3, //二维码质量
+ margin: 4, //二维码留白边距
+ width: 200, //宽
+ height: 200, //高
+ text: "http://www.xxx.com", //二维码内容
color: {
- dark: "#333333",//前景色
- light: "#fff"//背景色
- }
+ dark: "#333333", //前景色
+ light: "#fff", //背景色
+ },
};
this.QRCodeMsg = this.address; //生成的二维码为URL地址js
- let msg = document.getElementById("QRcodeCanvas"); // 将获取到的数据(val)画到msg(canvas)上
+ let msg = document.getElementById("QRcodeCanvas"); // 将获取到的数据(val)画到msg(canvas)上
QRCode.toCanvas(msg, this.QRCodeMsg, opts, function (error) {
- console.log(error)
+ console.log(error);
});
// 将canvas转成图片格式,可以长按保存
- this.img = msg.toDataURL('image/png');
+ this.img = msg.toDataURL("image/png");
this.imgshow = true;
},
download(selector) {
// 通过 API 获取目标 canvas 元素
const canvas = document.querySelector(selector);
// 创建一个 a 标签,并设置 href 和 download 属性
- const el = document.createElement('a');
+ const el = document.createElement("a");
// 设置 href 为图片经过 base64 编码后的字符串,默认为 png 格式
el.href = canvas.toDataURL();
- el.download = '123';
+ el.download = "123";
// 创建一个点击事件并对 a 标签进行触发
- const event = new MouseEvent('click');
+ const event = new MouseEvent("click");
el.dispatchEvent(event);
},
nextBtn() {
if (!this.amount) {
- this.$toast(this.$t('请输入数量'));
+ this.$toast(this.$t("请输入数量"));
return;
}
let numReg = /^[0-9]+([.]{1}[0-9]+){0,1}$/;
if (!numReg.test(this.amount)) {
- this.$toast(this.$t('请输入数字'));
+ this.$toast(this.$t("请输入数字"));
return;
}
if (this.amount) {
@@ -302,30 +332,31 @@
coin: this.coin,
channel_address: this.address,
tx: "",
- }).then((res) => {
-
- if (res.code == 0) {
- this.$router.push({
- path: "/recharge/rechargeSubmit"
- });
- } else {
- this.getToken()
- this.$toast(this.$t(res.msg));
- }
- }).catch((error) => {
- if (error.code === 'ECONNABORTED') {
- this.$toast(this.$t('网络超时!'));
- } else if (error.msg !== undefined) {
- this.$toast(this.$t(error.msg));
- }
- this.getToken();
- });
+ })
+ .then((res) => {
+ if (res.code == 0) {
+ this.$router.push({
+ path: "/recharge/rechargeSubmit",
+ });
+ } else {
+ this.getToken();
+ this.$toast(this.$t(res.msg));
+ }
+ })
+ .catch((error) => {
+ if (error.code === "ECONNABORTED") {
+ this.$toast(this.$t("网络超时!"));
+ } else if (error.msg !== undefined) {
+ this.$toast(this.$t(error.msg));
+ }
+ this.getToken();
+ });
} else {
- this.$toast(this.$t('请输入充币数量'));
+ this.$toast(this.$t("请输入充币数量"));
}
},
- }
-}
+ },
+};
</script>
<style lang="scss" scoped>
.rechargePage {
--
Gitblit v1.9.3