This commit is contained in:
DESKTOP-GMUNQ1B\k 2024-03-22 16:15:10 +08:00
parent 30ed1fcdc0
commit 6c7a7ccd46
4 changed files with 170 additions and 137 deletions

View File

@ -96,7 +96,7 @@
action: 'payClose' action: 'payClose'
}); });
}, },
goPay: function(number, paytype) { goPay: async function(number, paytype) {
if (this.isCall) { if (this.isCall) {
return this.$emit('onChangeFun', { return this.$emit('onChangeFun', {
action: 'payCheck', action: 'payCheck',
@ -137,6 +137,17 @@
this.type = type; this.type = type;
if (paytype == 'balance' || paytype == 'merBalance') { if (paytype == 'balance' || paytype == 'merBalance') {
//
const result = await this.$util.checkPassword();
if (result.data.code == 101) { //
return this.$util.Tips({
title: "您暂未设置支付密码,请前往设置!"
}, () => {
uni.navigateTo({
url: "/pages/users/user_modify_pwd/index?type=payPwd"
});
})
}
this.$refs.popups.handleOpen(); this.$refs.popups.handleOpen();
} else { } else {
uni.showLoading({ uni.showLoading({
@ -147,26 +158,18 @@
}, },
// //
handleConfirm(e) { async handleConfirm(e) {
// const result = await this.$util.checkPassword(e);
verifyPwd({ //
withdrawal_pwd: e if (result.data.code == 100) {
}).then(res => {
//
const code = res.data.code;
if (code == 100) { //
uni.showLoading({ uni.showLoading({
title: '订单支付中', title: '订单支付中',
mask: true mask: true
}); });
this.trueOrderPay(); this.trueOrderPay(e);
} else { } else {
this.$refs.payPwd.handleOpen(code); this.$refs.payPwd.handleOpen(result.data.code);
} }
}).catch(err => {
console.log(err)
})
}, },
handleClear() {}, handleClear() {},
@ -190,12 +193,13 @@
} }
}, },
trueOrderPay() { trueOrderPay(e) {
let that = this; let that = this;
let orderApi = that.order_type === 1 ? presellOrderPay : that.order_type === 2 ? integralOrderPay : let orderApi = that.order_type === 1 ? presellOrderPay : that.order_type === 2 ? integralOrderPay :
orderPay orderPay
orderApi(that.order_id, { orderApi(that.order_id, {
type: that.type, type: that.type,
withdrawal_pwd: e,
// #ifdef H5 // #ifdef H5
return_url: that.returnUrl !== '' ? 'http://' + window.location.host + that.returnUrl : return_url: that.returnUrl !== '' ? 'http://' + window.location.host + that.returnUrl :
'http://' + window.location.host + '/pages/users/order_list/index', 'http://' + window.location.host + '/pages/users/order_list/index',

View File

@ -580,7 +580,7 @@
}); });
}, },
SubOrder: function() { SubOrder: async function() {
let that = this, let that = this,
data = {}; data = {};
if (!that.payType) return that.$util.Tips({ if (!that.payType) return that.$util.Tips({
@ -596,6 +596,19 @@
// //
if (that.payType == 'balance' || that.payType == 'merBalance') { if (that.payType == 'balance' || that.payType == 'merBalance') {
//
const result = await this.$util.checkPassword();
if (result.data.code == 101) { //
return this.$util.Tips({
title: "您暂未设置支付密码,请前往设置!"
}, () => {
uni.navigateTo({
url: "/pages/users/user_modify_pwd/index?type=payPwd"
});
})
}
this.$refs.popups.handleOpen(); this.$refs.popups.handleOpen();
} else { } else {
uni.showLoading({ uni.showLoading({
@ -606,29 +619,20 @@
} }
}, },
// //
handleConfirm(e) { async handleConfirm(e) {
// const result = await this.$util.checkPassword(e);
verifyPwd({ //
withdrawal_pwd: e if (result.data.code == 100) {
}).then(res => {
//
const code = res.data.code;
this.$set(this.payForm, 'withdrawal_pwd', e); this.$set(this.payForm, 'withdrawal_pwd', e);
if (code == 100) { //
uni.showLoading({ uni.showLoading({
title: '订单支付中', title: '订单支付中',
mask: true mask: true
}); });
this.truePayOrder(this.payForm); this.truePayOrder(this.payForm);
} else { } else {
this.$refs.payPwd.handleOpen(code); this.$refs.payPwd.handleOpen(result.data.code);
} }
}).catch(err => {
console.log(err)
})
}, },
// 101 102 // 101 102

View File

@ -773,7 +773,7 @@
mounted: function() {}, mounted: function() {},
onLoad: function(options) { onLoad: function(options) {
this.seckillId = options.seckillId this.seckillId = options.seckillId
if(options.sale_type) this.sale_type = options.sale_type; if (options.sale_type) this.sale_type = options.sale_type;
// #ifdef H5 // #ifdef H5
this.from = this.$wechat.isWeixin() ? 'weixin' : 'h5' this.from = this.$wechat.isWeixin() ? 'weixin' : 'h5'
// #endif // #endif
@ -1413,7 +1413,8 @@
orderId = res.data.result.order_id, orderId = res.data.result.order_id,
callback_key = res.data.result.pay_key, callback_key = res.data.result.pay_key,
jsConfig = res.data.result.config, jsConfig = res.data.result.config,
goPages = '/pages/order_pay_status/index?order_id=' + orderId + '&msg=' + res.message + '&sale_type=' + that.sale_type; goPages = '/pages/order_pay_status/index?order_id=' + orderId + '&msg=' + res.message +
'&sale_type=' + that.sale_type;
that.orderPay = true; that.orderPay = true;
uni.hideLoading(); uni.hideLoading();
switch (status) { switch (status) {
@ -1678,7 +1679,7 @@
this.virtualIndex = index; this.virtualIndex = index;
}, },
SubOrder: function(e) { SubOrder: async function(e) {
let that = this, let that = this,
data = {}; data = {};
if (!that.payType) return that.$util.Tips({ if (!that.payType) return that.$util.Tips({
@ -1828,23 +1829,31 @@
// //
if (data.pay_type == 'balance' || data.pay_type == 'merBalance') { if (data.pay_type == 'balance' || data.pay_type == 'merBalance') {
this.orderData = data; this.orderData = data;
//
const result = await this.$util.checkPassword();
if (result.data.code == 101) { //
return this.$util.Tips({
title: "您暂未设置支付密码,请前往设置!"
}, () => {
uni.navigateTo({
url: "/pages/users/user_modify_pwd/index?type=payPwd"
});
})
}
//
this.$refs.popups.handleOpen(); this.$refs.popups.handleOpen();
} else { } else { //
this.truePayOrder(data); this.truePayOrder(data);
} }
}, },
// //
handleConfirm(e) { async handleConfirm(e) {
// const result = await this.$util.checkPassword(e);
verifyPwd({ //
withdrawal_pwd: e if (result.data.code == 100) {
}).then(res => {
//
const code = res.data.code;
if (code == 100) { //
this.$set(this.orderData, 'withdrawal_pwd', e); this.$set(this.orderData, 'withdrawal_pwd', e);
uni.showLoading({ uni.showLoading({
title: '订单支付中', title: '订单支付中',
@ -1852,15 +1861,12 @@
}); });
this.truePayOrder(this.orderData); this.truePayOrder(this.orderData);
} else { } else {
this.$refs.payPwd.handleOpen(code); this.$refs.payPwd.handleOpen(result.data.code);
} }
}).catch(err => {
console.log(err)
})
}, },
// 101 102 // 101 102
handleLeft(code) { handleLeft() {
uni.navigateTo({ uni.navigateTo({
url: "/pages/users/user_modify_pwd/index?type=payPwd" url: "/pages/users/user_modify_pwd/index?type=payPwd"
}); });

View File

@ -12,6 +12,10 @@ import {
HTTP_REQUEST_URL HTTP_REQUEST_URL
} from '../config/app.js'; } from '../config/app.js';
import store from '../store'; import store from '../store';
import {
verifyPwd
} from '@/api/order.js';
import { import {
pathToBase64 pathToBase64
} from '@/plugin/image-tools/index.js'; } from '@/plugin/image-tools/index.js';
@ -19,6 +23,15 @@ import {
import permision from "./permission.js" import permision from "./permission.js"
// #endif // #endif
export default { export default {
// 是否设置密码
checkPassword: async function(e) {
e = e ? e : '';
return await verifyPwd({
withdrawal_pwd: e
});
},
/** /**
* 字符串截取 * 字符串截取
* @obj 传入的数据 * @obj 传入的数据
@ -182,7 +195,7 @@ export default {
arr.push(text.slice(str, text.length)); arr.push(text.slice(str, text.length));
return [strLength, arr, rows] // [处理文字的总字节长度,每行显示内容的数组,行数] return [strLength, arr, rows] // [处理文字的总字节长度,每行显示内容的数组,行数]
}, },
/** /**
* 获取分享海报 * 获取分享海报
* @param array arr2 海报素材 * @param array arr2 海报素材
* @param string store_name 素材文字 * @param string store_name 素材文字
@ -217,7 +230,8 @@ export default {
ctx.drawImage(arr2[2], cx, cy, d, d); ctx.drawImage(arr2[2], cx, cy, d, d);
ctx.restore(); ctx.restore();
const CONTENT_ROW_LENGTH = 40; const CONTENT_ROW_LENGTH = 40;
let [contentLeng, contentArray, contentRows] = that.textByteLength(store_name, CONTENT_ROW_LENGTH); let [contentLeng, contentArray, contentRows] = that.textByteLength(store_name,
CONTENT_ROW_LENGTH);
if (contentRows > 2) { if (contentRows > 2) {
contentRows = 2; contentRows = 2;
let textArray = contentArray.slice(0, 2); let textArray = contentArray.slice(0, 2);
@ -283,7 +297,7 @@ export default {
console.log(res, 'getImageInfo') console.log(res, 'getImageInfo')
const WIDTH = res.width; const WIDTH = res.width;
const HEIGHT = res.height; const HEIGHT = res.height;
ctx.drawImage(arr2[0], 0, 0, WIDTH, HEIGHT+50); ctx.drawImage(arr2[0], 0, 0, WIDTH, HEIGHT + 50);
ctx.save(); ctx.save();
let r = 90; let r = 90;
let d = r * 2; let d = r * 2;
@ -296,7 +310,7 @@ export default {
ctx.clip(); ctx.clip();
ctx.drawImage(arr2[3], 30, 30, 50, 50); ctx.drawImage(arr2[3], 30, 30, 50, 50);
ctx.restore(); ctx.restore();
ctx.drawImage(arr2[2], cx, cy-30, d-30, d-30); ctx.drawImage(arr2[2], cx, cy - 30, d - 30, d - 30);
ctx.save(); ctx.save();
ctx.restore(); ctx.restore();
ctx.setTextAlign('left'); ctx.setTextAlign('left');
@ -304,11 +318,13 @@ export default {
ctx.setFillStyle('#282828'); ctx.setFillStyle('#282828');
ctx.fillText(site_name, r, 62); ctx.fillText(site_name, r, 62);
const CONTENT_ROW_LENGTH = 26; const CONTENT_ROW_LENGTH = 26;
let [contentLeng, contentArray, contentRows] = that.textByteLength(store_name, CONTENT_ROW_LENGTH); let [contentLeng, contentArray, contentRows] = that.textByteLength(store_name,
CONTENT_ROW_LENGTH);
if (contentRows > 2) { if (contentRows > 2) {
contentRows = 2; contentRows = 2;
let textArray = contentArray.slice(0, 2); let textArray = contentArray.slice(0, 2);
textArray[textArray.length - 1] = textArray[textArray.length - 1].slice(0,textArray[textArray.length - 1].length-1) textArray[textArray.length - 1] = textArray[textArray.length - 1].slice(0,
textArray[textArray.length - 1].length - 1)
textArray[textArray.length - 1] += '…'; textArray[textArray.length - 1] += '…';
contentArray = textArray; contentArray = textArray;
} }
@ -323,18 +339,18 @@ export default {
ctx.setFontSize(26); ctx.setFontSize(26);
ctx.setFillStyle('#999999'); ctx.setFillStyle('#999999');
ctx.beginPath(); ctx.beginPath();
const textWidth = ctx.measureText(ot_price+'¥').width + 16; //检查字体的宽度 const textWidth = ctx.measureText(ot_price + '¥').width + 16; //检查字体的宽度
//绘制数字中间的矩形 //绘制数字中间的矩形
ctx.setFillStyle('#999999'); ctx.setFillStyle('#999999');
ctx.rect(35, 1062,textWidth-10, 1); ctx.rect(35, 1062, textWidth - 10, 1);
ctx.fill(); ctx.fill();
ctx.closePath(); ctx.closePath();
ctx.fillText('¥' + ot_price, 35, 1030 + contentHh); ctx.fillText('¥' + ot_price, 35, 1030 + contentHh);
// ctx.clip(); // ctx.clip();
// ctx.restore(); // ctx.restore();
that.handleBorderRect(ctx, 30, 108, WIDTH-60, WIDTH-20, 12); that.handleBorderRect(ctx, 30, 108, WIDTH - 60, WIDTH - 20, 12);
ctx.clip(); ctx.clip();
ctx.drawImage(arr2[1], 30, 108, WIDTH-60, WIDTH-20); ctx.drawImage(arr2[1], 30, 108, WIDTH - 60, WIDTH - 20);
ctx.draw(true, function() { ctx.draw(true, function() {
uni.canvasToTempFilePath({ uni.canvasToTempFilePath({
canvasId: 'myCanvas', canvasId: 'myCanvas',
@ -390,25 +406,26 @@ export default {
let ux = 50; let ux = 50;
let uy = 700; let uy = 700;
ctx.drawImage(arr2[0], 0, 0, WIDTH, HEIGHT); ctx.drawImage(arr2[0], 0, 0, WIDTH, HEIGHT);
ctx.drawImage(arr2[1], 32, 32, WIDTH-64, WIDTH-64); ctx.drawImage(arr2[1], 32, 32, WIDTH - 64, WIDTH - 64);
ctx.strokeStyle = "#ffffff"; ctx.strokeStyle = "#ffffff";
ctx.save(); ctx.save();
ctx.arc(cx + r, cy + r, r, 0, 2 * Math.PI); ctx.arc(cx + r, cy + r, r, 0, 2 * Math.PI);
ctx.drawImage(arr2[2], 530, 760, d, d); ctx.drawImage(arr2[2], 530, 760, d, d);
that.handleBorderRect(ctx, ux, uy, r, r, 45); that.handleBorderRect(ctx, ux, uy, r, r, 45);
ctx.clip(); ctx.clip();
ctx.stockStyle ="#ffffff"; ctx.stockStyle = "#ffffff";
ctx.drawImage(arr2[3], ux, uy, r, r); ctx.drawImage(arr2[3], ux, uy, r, r);
ctx.restore(); ctx.restore();
ctx.setTextAlign('left') ctx.setTextAlign('left')
ctx.setFontSize(28); ctx.setFontSize(28);
ctx.setFillStyle('#282828'); ctx.setFillStyle('#282828');
ctx.fillText(nickname, r+60, 760); ctx.fillText(nickname, r + 60, 760);
ctx.setTextAlign('left') ctx.setTextAlign('left')
ctx.setFontSize(28); ctx.setFontSize(28);
ctx.setFillStyle('#282828'); ctx.setFillStyle('#282828');
const CONTENT_ROW_LENGTH = 25; const CONTENT_ROW_LENGTH = 25;
let [contentLeng, contentArray, contentRows] = that.textByteLength(content, CONTENT_ROW_LENGTH); let [contentLeng, contentArray, contentRows] = that.textByteLength(content,
CONTENT_ROW_LENGTH);
if (contentRows > 2) { if (contentRows > 2) {
contentRows = 2; contentRows = 2;
let textArray = contentArray.slice(0, 2); let textArray = contentArray.slice(0, 2);
@ -527,7 +544,8 @@ export default {
ctx.setFontSize(10); ctx.setFontSize(10);
} }
const CONTENT_ROW_LENGTH = 28; const CONTENT_ROW_LENGTH = 28;
let [contentLeng, contentArray, contentRows] = that.textByteLength(sitename, CONTENT_ROW_LENGTH); let [contentLeng, contentArray, contentRows] = that.textByteLength(sitename,
CONTENT_ROW_LENGTH);
if (contentRows > 2) { if (contentRows > 2) {
contentRows = 2; contentRows = 2;
let textArray = contentArray.slice(0, 2); let textArray = contentArray.slice(0, 2);
@ -542,7 +560,7 @@ export default {
} }
// ctx.fillText(sitename, w * markx, h * marky); // ctx.fillText(sitename, w * markx, h * marky);
ctx.save(); ctx.save();
ctx.draw(false,setTimeout(()=>{ ctx.draw(false, setTimeout(() => {
uni.canvasToTempFilePath({ uni.canvasToTempFilePath({
canvasId: 'myCanvas' + index, canvasId: 'myCanvas' + index,
fileType: 'png', fileType: 'png',
@ -557,7 +575,7 @@ export default {
} }
}) })
},1000)) }, 1000))
}, },
fail: function(err) { fail: function(err) {
@ -592,7 +610,7 @@ export default {
count: count, //最多可以选择的图片总数 count: count, //最多可以选择的图片总数
sizeType: sizeType, // 可以指定是原图还是压缩图,默认二者都有 sizeType: sizeType, // 可以指定是原图还是压缩图,默认二者都有
sourceType: sourceType, // 可以指定来源是相册还是相机,默认二者都有 sourceType: sourceType, // 可以指定来源是相册还是相机,默认二者都有
success: async (res)=> { success: async (res) => {
let image = []; let image = [];
let filesLen = res.tempFiles.length; let filesLen = res.tempFiles.length;
let exceeded_list = []; let exceeded_list = [];
@ -674,7 +692,7 @@ export default {
}) })
}) })
}, },
/** /**
* 小程序头像获取上传 * 小程序头像获取上传
* @param uploadUrl 上传接口地址 * @param uploadUrl 上传接口地址
* @param filePath 上传文件路径 * @param filePath 上传文件路径
@ -982,9 +1000,9 @@ export default {
if (arr.length > 1) { if (arr.length > 1) {
//#ifdef MP //#ifdef MP
let pathArr = arr[1].split('?') let pathArr = arr[1].split('?')
if(pathArr.length > 1){} if (pathArr.length > 1) {}
uni.navigateToMiniProgram({ uni.navigateToMiniProgram({
appId: pathArr.length > 1 ? pathArr[0] : arr[arr.length-1], // 此为生活缴费appid appId: pathArr.length > 1 ? pathArr[0] : arr[arr.length - 1], // 此为生活缴费appid
path: arr[0], // 此为生活缴费首页路径 path: arr[0], // 此为生活缴费首页路径
envVersion: "release", envVersion: "release",
success: res => { success: res => {
@ -1004,7 +1022,8 @@ export default {
url: `/pages/annex/web_view/index?url=${url}` url: `/pages/annex/web_view/index?url=${url}`
}); });
} else { } else {
if (['/pages/goods_cate/goods_cate','/pages/plant_grass/index','/pages/order_addcart/order_addcart','/pages/user/index' if (['/pages/goods_cate/goods_cate', '/pages/plant_grass/index',
'/pages/order_addcart/order_addcart', '/pages/user/index'
] ]
.indexOf(url) == -1) { .indexOf(url) == -1) {
uni.navigateTo({ uni.navigateTo({