石广澎
2024-08-30 c056f6f5442d3b0ec29b20f24deb1ad914d2d8f1
feat(支付): 去除无用代码、依赖
4个文件已删除
3个文件已修改
6367 ■■■■■ 已修改文件
common/bankName.js 209 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/config.js 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/jsencrypt.js 5371 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/jweixin-1.6.0.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/math.js 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/util.js 753 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
common/bankName.js
File was deleted
common/config.js
@@ -19,9 +19,9 @@
}
// 正式
const prod = {
    webURL: 'https://jmy.jinmingyuan.com',
    baseURL: 'https://yqzx.jinmingyuan.com',
    sftpURL: 'https://yqzx.jinmingyuan.com/file',
    webURL: 'https://sfzf.cpbtsoft.cn',
    baseURL: 'https://jyy.hepost.com:20773/prod-api',
    sftpURL: 'https://jyy.hepost.com:20773/prod-api',
    wx_appid: 'wx4c146dba764dcb05',
    ali_appid: '2021004149689887'
}
@@ -31,7 +31,7 @@
    '02': '信用卡'
}
module.exports = {
    config: process.env.NODE_ENV === 'development' ? dev : test,
    config: process.env.NODE_ENV === 'development' ? dev : prod,
    ACCESSTOKEN: "Authorization",
    /* 是否打印请求日志 */
    DEBUG: false,
common/jsencrypt.js
File was deleted
common/jweixin-1.6.0.js
File was deleted
common/math.js
File was deleted
common/util.js
@@ -1,118 +1,3 @@
import JSEncrypt from './jsencrypt';
import {
    ACCESSTOKEN,
    config
} from '@/common/config.js'
let publicKey =
    'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCTREknOkrusbeH7kBe3mSw4AwVT438IWmX/jKmcvYxaAWRrBJiMl7gk37L78HBG/ZstLLcdKBYYdj/5cvVWDQfv+uxbv/piZhOmQej98jWIXEA8aFEk724nFRJ7nfcEhHSWfzbTfgZw0KDO1mWdjWHnHIx/MtD0HIFFIyzg3aO7wIDAQAB';
//校验银行卡号
export function verifyBankCard(str) {
    //银行卡号长度在16到19之间
    if (str.length < 16 || str.length > 19) {
        return false;
    }
    var num = /^\d*$/;
    if (!num.exec(str)) {
        //银行卡号必须全为数字;
        return false;
    }
    //开头6位
    var strBin =
        "10,18,30,35,37,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,58,60,62,65,68,69,84,87,88,94,95,98,99";
    if (strBin.indexOf(str.substring(0, 2)) == -1) { //银行卡号开头6位不符合规范
        return false;
    }
    var lastNum = str.substr(str.length - 1, 1); //取出最后一位(与luhm进行比较)
    var first15Num = str.substr(0, str.length - 1); //前15或18位
    var newArr = new Array();
    for (var i = first15Num.length - 1; i > -1; i--) { //前15或18位倒序存进数组
        newArr.push(first15Num.substr(i, 1));
    }
    var arrJiShu = new Array(); //奇数位*2的积 <9
    var arrJiShu2 = new Array(); //奇数位*2的积 >9
    var arrOuShu = new Array(); //偶数位数组
    for (var j = 0; j < newArr.length; j++) {
        if ((j + 1) % 2 == 1) { //奇数位
            if (parseInt(newArr[j]) * 2 < 9)
                arrJiShu.push(parseInt(newArr[j]) * 2);
            else
                arrJiShu2.push(parseInt(newArr[j]) * 2);
        } else //偶数位
            arrOuShu.push(newArr[j]);
    }
    var jishu_child1 = new Array(); //奇数位*2 >9 的分割之后的数组个位数
    var jishu_child2 = new Array(); //奇数位*2 >9 的分割之后的数组十位数
    for (var h = 0; h < arrJiShu2.length; h++) {
        jishu_child1.push(parseInt(arrJiShu2[h]) % 10);
        jishu_child2.push(parseInt(arrJiShu2[h]) / 10);
    }
    var sumJiShu = 0; //奇数位*2 < 9 的数组之和
    var sumOuShu = 0; //偶数位数组之和
    var sumJiShuChild1 = 0; //奇数位*2 >9 的分割之后的数组个位数之和
    var sumJiShuChild2 = 0; //奇数位*2 >9 的分割之后的数组十位数之和
    var sumTotal = 0;
    for (var m = 0; m < arrJiShu.length; m++) {
        sumJiShu = sumJiShu + parseInt(arrJiShu[m]);
    }
    for (var n = 0; n < arrOuShu.length; n++) {
        sumOuShu = sumOuShu + parseInt(arrOuShu[n]);
    }
    for (var p = 0; p < jishu_child1.length; p++) {
        sumJiShuChild1 = sumJiShuChild1 + parseInt(jishu_child1[p]);
        sumJiShuChild2 = sumJiShuChild2 + parseInt(jishu_child2[p]);
    }
    //计算总和
    sumTotal = parseInt(sumJiShu) + parseInt(sumOuShu) + parseInt(sumJiShuChild1) + parseInt(sumJiShuChild2);
    //计算Luhm值
    var k = parseInt(sumTotal) % 10 == 0 ? 10 : parseInt(sumTotal) % 10;
    var luhm = 10 - k;
    if (lastNum == luhm) {
        return true;
    } else {
        return false;
    }
}
/**
 * 加密
 * @param {Object} pas
 */
export function RSAencrypt(pas) {
    //实例化jsEncrypt对象
    let jse = new JSEncrypt();
    //设置公钥
    jse.setPublicKey(publicKey);
    return jse.encrypt(pas);
}
/**
 * 拼接ftp图片路径
 * @param {Object} item
 * @param {Object} src
 */
export function getImgPath(item, src) {
    if (isBlank(item)) {
        return src
    }
    var ftp = config.sftpURL
    if (typeof item === 'string') {
        const arr = JSON.parse(item)
        return ftp + arr[0].path
    } else if (typeof item === 'object') {
        return ftp + item.path
    } else {
        return ftp + item
    }
}
/**
 * 判断字符串空
@@ -132,501 +17,6 @@
 */
export function isNotBlank(str) {
    return !isBlank(str)
}
/**
 * 判断两个数组的内容是否相同
 */
export function arrEquals(arr1, arr2) {
    // if the other arr2 is a falsy value, return
    if (!arr2)
        return false;
    // compare lengths - can save a lot of time
    if (arr1.length != arr2.length)
        return false;
    for (var i = 0, l = arr1.length; i < l; i++) {
        // Check if we have nested arr2s
        if (arr1[i] instanceof Array && arr2[i] instanceof Array) {
            // recurse into the nested arr2s
            if (!arr1[i].equals(arr2[i]))
                return false;
        } else if (arr1[i] != arr2[i]) {
            // Warning - two different object instances will never be equal: {x:20} != {x:20}
            return false;
        }
    }
    return true;
}
/**
 * 获取当前时间
 */
export function getDate(type) {
    const date = new Date();
    let year = date.getFullYear();
    let month = date.getMonth() + 1;
    let day = date.getDate();
    if (type === 'start') {
        year = year - 60;
    } else if (type === 'end') {
        year = year + 2;
    }
    month = month > 9 ? month : '0' + month;
    ;
    day = day > 9 ? day : '0' + day;
    return `${year}-${month}-${day}`;
}
/**
 * 判断是否为整数,为整数则拼接'.0'
 */
export function rateMark(num) {
    if (Number.isInteger(num)) {
        return num + '.0'
    } else {
        return num
    }
}
/**
 * 秒转分钟
 * @param {Object} value
 */
export function formatSeconds(value) {
    var secondTime = parseInt(value); // 秒
    var minuteTime = 0; // 分
    var hourTime = 0; // 小时
    if (secondTime > 60) { //如果秒数大于60,将秒数转换成整数
        //获取分钟,除以60取整数,得到整数分钟
        minuteTime = parseInt(secondTime / 60);
        //获取秒数,秒数取佘,得到整数秒数
        secondTime = parseInt(secondTime % 60);
        //如果分钟大于60,将分钟转换成小时
        if (minuteTime > 60) {
            //获取小时,获取分钟除以60,得到整数小时
            hourTime = parseInt(minuteTime / 60);
            //获取小时后取佘的分,获取分钟除以60取佘的分
            minuteTime = parseInt(minuteTime % 60);
        }
    }
    var result = "" + parseInt(secondTime) + "秒";
    if (minuteTime > 0) {
        result = "" + parseInt(minuteTime) + "分" + result;
    }
    if (hourTime > 0) {
        result = "" + parseInt(hourTime) + "小时" + result;
    }
    return result;
}
/**
 * 日期格式化
 * @param {Object} date
 * @param {Object} fmt
 */
export function dateFormat(date, fmt) {
    if (!date) {
        return
    }
    if (!fmt) {
        fmt = 'yyyy-MM-dd hh:mm'
    }
    if (!(date instanceof Date)) {
        date = new Date(date.replace(/-/g, '/'))
    }
    if (/(y+)/.test(fmt)) {
        fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length));
    }
    let o = {
        'M+': date.getMonth() + 1,
        'd+': date.getDate(),
        'h+': date.getHours(),
        'm+': date.getMinutes(),
        's+': date.getSeconds()
    };
    for (let k in o) {
        if (new RegExp(`(${k})`).test(fmt)) {
            let str = o[k] + '';
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : ('00' + str).substr(str.length));
        }
    }
    return fmt;
}
/**
 * 传入时间格式的时间,以当前时间为标准,返回距离当前时间之前
 */
export function timeago(date) { //dateTimeStamp是一个时间毫秒,注意时间戳是秒的形式,在这个毫秒的基础上除以1000,就是十位数的时间戳。13位数的都是时间毫秒。
    if (!date) {
        return
    }
    if (!(date instanceof Date)) {
        date = new Date(date.replace(/-/g, '/'))
    }
    var dateTimeStamp = date.getTime()
    var minute = 1000 * 60; //把分,时,天,周,半个月,一个月用毫秒表示
    var hour = minute * 60;
    var day = hour * 24;
    var week = day * 7;
    var halfamonth = day * 15;
    var month = day * 30;
    var now = new Date().getTime(); //获取当前时间毫秒
    var diffValue = now - dateTimeStamp; //时间差
    if (diffValue < 0) {
        return;
    }
    var minC = diffValue / minute; //计算时间差的分,时,天,周,月
    var hourC = diffValue / hour;
    var dayC = diffValue / day;
    var weekC = diffValue / week;
    var monthC = diffValue / month;
    var result = '';
    if (monthC >= 1 && monthC <= 3) {
        result = " " + parseInt(monthC) + "月前"
    } else if (weekC >= 1 && weekC <= 3) {
        result = " " + parseInt(weekC) + "周前"
    } else if (dayC >= 1 && dayC <= 6) {
        result = " " + parseInt(dayC) + "天前"
    } else if (hourC >= 1 && hourC <= 23) {
        result = " " + parseInt(hourC) + "小时前"
    } else if (minC >= 1 && minC <= 59) {
        result = " " + parseInt(minC) + "分钟前"
    } else if (diffValue >= 0 && diffValue <= minute) {
        result = "刚刚"
    } else {
        var datetime = new Date();
        datetime.setTime(dateTimeStamp);
        var Nyear = datetime.getFullYear();
        var Nmonth = datetime.getMonth() + 1 < 10 ? "0" + (datetime.getMonth() + 1) : datetime.getMonth() + 1;
        var Ndate = datetime.getDate() < 10 ? "0" + datetime.getDate() : datetime.getDate();
        var Nhour = datetime.getHours() < 10 ? "0" + datetime.getHours() : datetime.getHours();
        var Nminute = datetime.getMinutes() < 10 ? "0" + datetime.getMinutes() : datetime.getMinutes();
        var Nsecond = datetime.getSeconds() < 10 ? "0" + datetime.getSeconds() : datetime.getSeconds();
        result = Nyear + "-" + Nmonth + "-" + Ndate
    }
    return result;
}
/**
 * 数组截取
 * @param {Object} data
 * @param {Object} index
 * @param {Object} num
 */
export function subArray(data, index, num) {
    return data.slice(index * num, (index * num) + num)
}
// 根据索引替换字符串中的元素,常用语字符串加密
export function stringReplace(content, start, num, str) {
    var content = content.split("");
    content.splice(start, num, str)
    return content.join("");
}
export function getByteLength(str) {
    //先把中文替换成两个字节的英文,在计算长度
    var aa = str.replace(/[\u0391-\uFFE5]/g, "@@")
    return aa.length;
}
export function getDiffDay(date_1, date_2) {
    // 计算两个日期之间的差值
    let totalDays, diffDate
    let myDate_1 = new Date(date_1.replace(/-/g, '/'))
    let myDate_2 = new Date(date_2.replace(/-/g, '/'))
    // 将两个日期都转换为毫秒格式,然后做差
    diffDate = Math.abs(myDate_1 - myDate_2) // 取相差毫秒数的绝对值
    totalDays = Math.floor(diffDate / (1000 * 3600 * 24)) // 向下取整
    // console.log(totalDays)
    return totalDays // 相差的天数
}
/**
 * 获取两个日期相差的月日时分
 * @param {Object} start
 * @param {Object} end
 * @param {Object} cha
 * @param {Object} flag
 */
export function timeFn(start, end, cha, flag) {
    if (!!!cha) {
        cha = 0
    }
    if (!(start instanceof Date)) {
        start = new Date(start.replace(/-/g, '/'))
    }
    start.setSeconds(start.getSeconds() - 1)
    if (!(end instanceof Date)) {
        end = new Date(end.replace(/-/g, '/'))
    }
    var dateDiff = end.getTime() - start + cha; //时间差的毫秒数
    if (dateDiff == 0) {
        return null
    }
    var dayDiff = Math.floor(dateDiff / (24 * 3600 * 1000)); //计算出相差天数
    var leave1 = dateDiff % (24 * 3600 * 1000) //计算天数后剩余的毫秒数
    var hours = Math.floor(leave1 / (3600 * 1000)) //计算出小时数
    //计算相差分钟数
    var leave2 = leave1 % (3600 * 1000) //计算小时数后剩余的毫秒数
    var minutes = Math.floor(leave2 / (60 * 1000)) //计算相差分钟数
    //计算相差秒数
    var leave3 = leave2 % (60 * 1000) //计算分钟数后剩余的毫秒数
    var seconds = Math.round(leave3 / 1000)
    var leave4 = leave3 % (60 * 1000) //计算分钟数后剩余的毫秒数
    var minseconds = Math.round(leave4 / 1000)
    if (seconds * 1 < 10) {
        seconds = '0' + seconds
    }
    if (minutes * 1 < 10) {
        minutes = '0' + minutes
    }
    if (hours * 1 < 10) {
        hours = '0' + hours
    }
    if (flag) {
        var timeFn = (dayDiff ? dayDiff + "天" : '') + hours + "时" + minutes + "分" + seconds + "秒";
        return timeFn;
    }
    var timeFn = (dayDiff ? dayDiff + "天" : '') + hours + ":" + minutes + ":" + seconds;
    return timeFn;
}
/**
 * 简单的uuid
 */
export function guid() {
    return 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
        var r = Math.random() * 16 | 0,
            v = c == 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
    });
}
/**
 * 获取long型数据
 */
export function glong() {
    return 'xxxxxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
        var r = Math.floor((Math.random() * 10)) | 0,
            v = c == 'x' ? r : (r & 0x3);
        return v.toString();
    });
}
/**
 * 页面跳转
 * @param {Object} url
 * @param {Object} param
 */
export function go(url, param) {
    var pm = '';
    if (param != undefined) {
        if (typeof param === 'string') {
            param = JSON.parse(param)
        }
        for (var p in param) {
            //遍历json对象的每个key/value对,p为key
            pm += '&' + p + '=' + param[p];
        }
    }
    pm = pm.substr(1);
    uni.navigateTo({
        url: url + '?' + pm
    });
}
/**
 * 页面跳转
 * @param {Object} url
 * @param {Object} param
 */
export function redirect(url, param) {
    var pm = '';
    if (param != undefined) {
        if (typeof param === 'string') {
            param = JSON.parse(param)
        }
        for (var p in param) {
            //遍历json对象的每个key/value对,p为key
            pm += '&' + p + '=' + param[p];
        }
    }
    pm = pm.substr(1);
    uni.redirectTo({
        url: url + '?' + pm
    });
}
/**
 * 跳转首页
 */
export function goIndex() {
    uni.reLaunch({
        url: '/pages/index/index'
    });
}
/**
 * 跳转登录页
 */
export function goLogin(callbackUrl) {
    if (callbackUrl) {
        uni.redirectTo({
            url: `/pages/user/login/index?callbackUrl=/${callbackUrl}`
        });
    } else {
        uni.redirectTo({
            url: `/pages/user/login/index`
        });
    }
}
/**
 * 返回
 */
export function goBack() {
    uni.navigateBack()
}
/**
 * 颜色16进制转RGB方法
 * @param {Object} c
 */
export function colorRgb(c) {
    var sColor = c.toLowerCase();
    //十六进制颜色值的正则表达式
    var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
    // 如果是16进制颜色
    if (sColor && reg.test(sColor)) {
        if (sColor.length === 4) {
            var sColorNew = "#";
            for (var i = 1; i < 4; i += 1) {
                sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));
            }
            sColor = sColorNew;
        }
        //处理六位的颜色值
        var sColorChange = [];
        for (var i = 1; i < 7; i += 2) {
            sColorChange.push(parseInt("0x" + sColor.slice(i, i + 2)));
        }
        return "(" + sColorChange.join(",") + ",.08)";
    }
    return sColor;
};
/**
 * 验证手机号
 * @param {Object} mobile
 */
export function checkMobile(mobile) {
    return /^1[3456789]\d{9}$/.test(mobile);
}
/**
 * 验证身份证号
 * @param {Object} cardNo
 */
export function checkCardNo(cardNo) {
    return /^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/
        .test(cardNo);
}
/**
 * 验证邮箱
 * @param {Object} email
 */
export function checkEmail(email) {
    return /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/.test(email);
}
/**
 * 阿拉伯数字转中文数字
 * @param {Object} num
 */
export function NoToChinese(num) {
    var AA = new Array("零", "一", "二", "三", "四", "五", "六", "七", "八", "九");
    var BB = new Array("", "十", "百", "千", "万", "亿", "点", "");
    var a = ("" + num).replace(/(^0*)/g, "").split("."),
        k = 0,
        re = "";
    for (var i = a[0].length - 1; i >= 0; i--) {
        switch (k) {
            case 0:
                re = BB[7] + re;
                break;
            case 4:
                if (!new RegExp("0{4}\\d{" + (a[0].length - i - 1) + "}$").test(a[0]))
                    re = BB[4] + re;
                break;
            case 8:
                re = BB[5] + re;
                BB[7] = BB[5];
                k = 0;
                break;
        }
        if (k % 4 == 2 && a[0].charAt(i + 2) != 0 && a[0].charAt(i + 1) == 0) re = AA[0] + re;
        if (a[0].charAt(i) != 0) re = AA[a[0].charAt(i)] + BB[k % 4] + re;
        k++;
    }
    if (a.length > 1) //加上小数部分(如果有小数部分)
    {
        re += BB[6];
        for (var i = 0; i < a[1].length; i++) re += AA[a[1].charAt(i)];
    }
    return re;
};
/**
 * 合并对象相同属性
 * chenlong
 * @param obj1 目标对象
 * @param obj2 源对象
 */
export function mergeObj(obj1, obj2) {
    const res = {}
    Object.keys(obj2).map(key => {
        if (key in obj1) {
            res[key] = obj2[key]
        }
    })
    return res
}
/**
 * 获取返回值
 * @param {Object} res
 * @param {Object} fun
 */
export function getContent(res, fun) {
    if (res.code === 10000) {
        fun(res.data)
    } else {
        uni.showToast({
            title: res.msg,
            duration: 1500,
            icon: 'none'
        });
    }
}
/* 正整数 */
@@ -679,149 +69,6 @@
        return val
    }
    return parseFloat(val) / 100
}
/**
 * 提示错误信息
 */
export function showErrorMsg(msg) {
    uni.showToast({
        title: msg,
        icon: 'none'
    });
    return false;
}
/**
 * 提示成功信息
 */
export function showSuccessMsg(msg) {
    uni.showToast({
        title: msg,
        icon: 'none'
    });
}
/**
 * 计算时间差
 */
export function timeDiff(startTime, endTime) {
    // 计算相差的时间
    const timeDiff = endTime.getTime() - startTime.getTime();
    if (timeDiff <= 0) return false;
    const totalSeconds = Math.floor(timeDiff / 1000);
    const hours = Math.floor(totalSeconds / 60 / 60);
    const minutes = Math.floor((totalSeconds - hours * 60 * 60) / 60);
    const seconds = Math.floor(totalSeconds - hours * 60 * 60 - minutes * 60);
    const timeDiffArray = [hours, minutes, seconds].map(e => {
        return e < 10 ? '0' + e : e;
    });
    return timeDiffArray;
}
/**
 * 两数相加 arg1 + arg2
 * @param arg1
 * @param arg2
 * @returns {number}
 */
export function add(arg1, arg2) {
    var t = 0
    arg1 = arg1 ? arg1.toString() : '0'
    arg2 = arg2 ? arg2.toString() : '0'
    if (arg1.includes('.')) {
        t = arg1.split('.')[1].length
    }
    if (arg2.includes('.')) {
        t = Math.max(arg2.split('.')[1].length, t)
    }
    var m = Math.pow(10, t)
    return Number(((this.mul(arg1, m) + this.mul(arg2, m)) / m))
}
/**
 * 两数相减 arg1 - arg2
 * @param arg1
 * @param arg2
 * @returns {number}
 */
export function sub(arg1, arg2) {
    var t = 0
    arg1 = arg1 ? arg1.toString() : '0'
    arg2 = arg2 ? arg2.toString() : '0'
    if (arg1.includes('.')) {
        t = arg1.split('.')[1].length
    }
    if (arg2.includes('.')) {
        t = Math.max(arg2.split('.')[1].length, t)
    }
    var m = Math.pow(10, t)
    return Number(((this.mul(arg1, m) - this.mul(arg2, m)) / m))
}
/**
 * 两数相乘 arg1 * arg2
 * @param arg1
 * @param arg2
 * @returns {number}
 */
export function mul(arg1, arg2) {
    var t = 0
    arg1 = arg1 ? arg1.toString() : '0'
    arg2 = arg2 ? arg2.toString() : '0'
    if (arg1.includes('.')) {
        t += arg1.split('.')[1].length
    }
    if (arg2.includes('.')) {
        t += arg2.split('.')[1].length
    }
    var r1 = Number(arg1.replace('.', ''))
    var r2 = Number(arg2.replace('.', ''))
    return (r1 * r2) / Math.pow(10, t)
}
/**
 * 两数相除 arg1 / arg2
 * @param arg1
 * @param arg2
 * @returns {number}
 */
export function abs(arg1, arg2) {
    var t = 0
    arg1 = arg1 ? arg1.toString() : '0'
    arg2 = arg2 ? arg2.toString() : '0'
    if (arg2.includes('.')) {
        t = arg2.split('.')[1].length
    }
    if (arg1.includes('.')) {
        t -= arg1.split('.')[1].length
    }
    var r1 = Number(arg1.replace('.', ''))
    var r2 = Number(arg2.replace('.', ''))
    return this.mul((r1 / r2), Math.pow(10, t))
}
/**
 * arg1*100/(arg1+arg2)
 * @param {Object} arg2
 * @param {Object} arg1
 */
export function percentage(arg1, arg2) {
    var add = this.add(arg1, arg2)
    return this.mul(this.abs(arg1, add), 100)
}
// 保留三位小数 末尾超过向上进1
export function getDiscountPrice(price, discount) {
    let newPrice = ""
    let a = Number(price) * Number(discount) / 100
    let b = a.toFixed(4)
    let c = b[b.length - 1]
    newPrice = c != 0 ? Number(b) + 0.01 : b.slice(0, -1)
    return newPrice
}
// 判断微信、支付宝  2微信 5支付宝 3其他
package.json
@@ -9,7 +9,6 @@
  "author": "",
  "license": "ISC",
  "dependencies": {
    "mathjs": "^11.5.0",
    "vconsole": "^3.14.7",
    "weixin-js-sdk": "^1.6.0"
  },