6.30 版本提交

This commit is contained in:
尚政杰
2025-06-30 19:02:44 +08:00
commit c4267a0e27
338 changed files with 27942 additions and 0 deletions

255
utils/util.js Normal file
View File

@@ -0,0 +1,255 @@
import {getBaseURL} from '@/request/http.js'
export function uploadImg(path)
{
return new Promise ((resolve,reject)=>
{
uni.uploadFile({
url: getBaseURL()+'/api/v1/ajax/upload_system',
filePath: path,
name: 'file',
success: (res) => {
console.log(res)
var result = JSON.parse(res.data);//返回的结果,可能不同项目结果不一样
resolve(result.result)
},
fail: (error) => {
console.log('上传失败'+error.errMsg)
reject()
}
});
})
}
export async function uploadImgs(paths, success)
{
for (let path of paths) {
try {
const uploadData = await uploadImg(path)
success(uploadData)
} catch (e) {
//TODO handle the exception
console.log(e)
uni.showToast({
title: e || '上传失败',
icon: 'error'
})
break
}
}
}
function accDiv(arg1,arg2){
var t1=0,t2=0,r1,r2;
try{t1=arg1.toString().split(".")[1].length}catch(e){}
try{t2=arg2.toString().split(".")[1].length}catch(e){}
r1=Number(arg1.toString().replace(".",""))
r2=Number(arg2.toString().replace(".",""))
return accMul((r1/r2),Math.pow(10,t2-t1));
}
//乘法
export function accMul(arg1,arg2)
{
var m=0,s1=arg1.toString(),s2=arg2.toString();
try{m+=s1.split(".")[1].length}catch(e){}
try{m+=s2.split(".")[1].length}catch(e){}
return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m)
}
//加法
export function accAdd(arg1,arg2){
var r1,r2,m;
try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0}
try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0}
m=Math.pow(10,Math.max(r1,r2))
return (arg1*m+arg2*m)/m
}
//减法
export function accSub(arg1,arg2){
var r1,r2,m,n;
try{r1=arg1.toString().split(".")[1].length}catch(e){r1=0}
try{r2=arg2.toString().split(".")[1].length}catch(e){r2=0}
m=Math.pow(10,Math.max(r1,r2));
n=(r1>=r2)?r1:r2;
return ((arg1*m-arg2*m)/m).toFixed(n);
}
function isEmptyStr(str)
{
return (!str || 0 === str.length);
}
function isNotaNumber(str)
{
// return isNaN(str);
return true
}
export function maskPhoneNumber(phoneNumber) {
return phoneNumber.replace(/(\d{3})\d*(\d{4})/, '$1****$2');
}
function getCurrentTimeStr()
{
let date = new Date()
let month = date.getMonth()+1
let day = date.getDate()
let hour = date.getHours()
let minute = date.getMinutes()
return month+'月'+day+'日'+hour+':'+(minute<10?('0'+minute):minute)
}
function getChineseTimeStrBySecond(s)
{
if (s<0) {
s = 0-s
}
let day = parseInt(s/(24*60*60))
let hour = parseInt(s%(24*60*60)/(60*60))
let minute = parseInt(s/60)%60
let second = s%60
return (day>0?(day+'天'):'')+(hour>0?(hour+'小时'):'')+minute+'分'+second+'秒'
}
function getTimeStrBySecond(s)
{
if (s<0) {
s = 0-s
}
let hour = parseInt(s/(60*60))
let minute = parseInt(s/60)%60
let second = s%60
return (hour<10?('0'+hour):hour)+':'+(minute<10?('0'+minute):minute)+':'+(second<10?('0'+second):second)
}
function getChineseTimeStrByHour(h)
{
if (!h) return
if (h<0) {
h = 0-h
}
let day = parseInt(h/24)
let hour = parseInt(h%24)
console.log(day,hour)
return (day>0?(day+'天'):'')+(hour>0?(hour+'小时'):'')
}
/**
* 获取涨幅字符串
* @param {Object} r
*/
export function getRateStr(r)
{
if (!r) return
r = String(r)
if(r.indexOf('-')>-1)
{
r = r.substr(1,r.length-1)
return (parseFloat(r)*100).toFixed(2)
}else
{
if(parseFloat(r)==0)
{
return 0.00
}else
return (parseFloat(r)*100).toFixed(2)
}
}
export function getLocaleTime (time)
{
let date = new Date(time)
let year = date.getFullYear()
let month = date.getMonth()+1
let day = date.getDate()
let hour = date.getHours()
let minute = date.getMinutes()
return year+'-'+(month<10?('0'+month):month)+'-'+(day<10?('0'+day):day)+' '+(hour<10?('0'+hour):hour)+':'+(minute<10?('0'+minute):minute)
}
/**
* 获取涨幅字符串是涨还是跌 true为跌false为涨
* @param {Object} r
*/
export function getRateUpOrDown(r)
{
if (!r) return
return String(r).indexOf('-')>-1
}
/**
* 身份证号校验
*/
export function checkIdCard (cardNum)
{
cardNum = cardNum.replace(/(^\s*)|(\s*$)/g,"")
if (cardNum.length==15) {
return isValidateBirthBy15IdCard(cardNum)
}else if(cardNum.length==18)
{
var idCard = cardNum.split("")
if (isValidateBirthBy18IdCard(cardNum)&&isValidateCodeBy18IdCard(idCard)) {
return true
}else
return false
}else
return false
}
function isValidateCodeBy18IdCard(cardNum)
{
var wi = [7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1] //加权因子
var valideCode = [1,0,10,9,8,7,6,5,4,3,2]
var sum = 0
if (cardNum[17].toLowerCase() == 'x') {
cardNum[17] = 10 //将最后位的x替换成10
}
for (let i = 0; i < 17; i++) {
sum+= wi[i] * cardNum[i]
}
var valCodePosition = sum%11
if (cardNum[17] == valideCode[valCodePosition]) {
return true
}else
return false
}
/**
* 验证18位身份证号中的生日是否为有效生日
* @param {*} cardNum
*/
function isValidateBirthBy18IdCard (cardNum)
{
var year = cardNum.substring(6,10)
var month = cardNum.substring(10,12)
var day = cardNum.substring(12,14)
var tempDate = new Date(year,parseFloat(month)-1,parseFloat(day))
//这里用getFullYear获取年份
if (tempDate.getFullYear()!=parseFloat(year)||
tempDate.getMonth()!=(parseFloat(month)-1)||
tempDate.getDate()!=parseFloat(day)) {
return false
}else
return true
}
/**
* 验证15位身份证号中的生日是否为有效生日
* @param {*} cardNum
*/
function isValidateBirthBy15IdCard (cardNum)
{
var year = cardNum.substring(6,8)
var month = cardNum.substring(8,10)
var day = cardNum.substring(10,12)
var tempDate = new Date(year,parseFloat(month)-1,parseFloat(day))
//这里用getFullYear获取年份
if (tempDate.getFullYear()!=parseFloat(year)||
tempDate.getMonth()!=(parseFloat(month)-1)||
tempDate.getDate()!=parseFloat(day)) {
return false
}else
return true
}