123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363 |
- export function getFileExtension(filename) {
- var tempArr = filename.split('.')
- var ext
- if (tempArr.length === 1 || (tempArr[0] === '' && tempArr.length === 2)) {
- ext = ''
- } else {
- ext = tempArr.pop().toLowerCase() // get the extension and make it lower-case
- }
- return ext
- }
-
- export function isCardNo(card) {
- // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
- var reg_18 = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/
- var reg_15 = /^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$/
-
- return reg_18.test(card) || reg_15.test(card)
- }
-
- export function jsGetAge(strBirthday, splitstr) {
- // debugger
- var returnAge
- var strBirthdayArr = strBirthday.split(splitstr)
-
- var birthYear = strBirthdayArr[0]
- var birthMonth = strBirthdayArr[1]
- var birthDay = strBirthdayArr[2]
-
- // console.log("birthYear",birthYear)
- // console.log("birthMonth",birthMonth)
- // console.log("birthDay",birthDay)
-
- var d = new Date()
- var nowYear = d.getFullYear()
- var nowMonth = d.getMonth() + 1
- var nowDay = d.getDate()
-
- // console.log("nowYear",nowYear)
- // console.log("nowMonth",nowMonth)
- // console.log("nowDay",nowDay)
-
- if (nowYear == birthYear) {
- returnAge = 0 // 同年 则为0岁
- } else {
- var ageDiff = nowYear - birthYear // 年之差
- if (ageDiff > 0) {
- if (nowMonth == birthMonth) {
- var dayDiff = nowDay - birthDay // 日之差
- if (dayDiff < 0) {
- returnAge = ageDiff - 1
- } else {
- returnAge = ageDiff
- }
- } else {
- var monthDiff = nowMonth - birthMonth // 月之差
- if (monthDiff < 0) {
- returnAge = ageDiff - 1
- } else {
- returnAge = ageDiff
- }
- }
- } else {
- returnAge = -1 // 返回-1 表示出生日期输入错误 晚于今天
- }
- }
-
- return returnAge // 返回周岁年龄
- }
-
-
- export function jsGetAgeOne(strBirthday,splitstr, nowYear,nowMonth,nowDay) {
-
- // debugger
- var returnAge
- var strBirthdayArr = strBirthday.split(splitstr)
- console.log("strBirthdayArr",strBirthdayArr)
- var birthYear = strBirthdayArr[0]
- var birthMonth = strBirthdayArr[1]
- var birthDay = strBirthdayArr[2]
- // var d = new Date()
- // var anowYear = d.getFullYear()
- // var anowMonth = d.getMonth() + 1
- // var anowDay = d.getDate()
-
- // console.log("anowYear",anowYear)
- // console.log("anowMonth",anowMonth)
- // console.log("anowDay",anowDay)
-
- // console.log("brityYear666",strBirthdayArr[0])
- // console.log("birthMonth5656",strBirthdayArr[1])
- // console.log("birthDay5656",strBirthdayArr[2])
-
- if (nowYear == birthYear) {
- returnAge = 0 // 同年 则为0岁
- } else {
- var ageDiff = nowYear - birthYear // 年之差
- if (ageDiff > 0) {
- if (nowMonth == birthMonth) {
- var dayDiff = nowDay - birthDay // 日之差
- if (dayDiff < 0) {
- returnAge = ageDiff - 1
- } else {
- returnAge = ageDiff
- }
- } else {
- var monthDiff = nowMonth - birthMonth // 月之差
- if (monthDiff < 0) {
- returnAge = ageDiff - 1
- } else {
- returnAge = ageDiff
- }
- }
- } else {
- returnAge = -1 // 返回-1 表示出生日期输入错误 晚于今天
- }
- }
-
- return returnAge // 返回周岁年龄
- }
-
- export function isPositiveInteger(s) {
- // 是否为正整数
- var re = /^[0-9]+$/
- return re.test(s)
- }
-
- export function isPositiveNumber(s) {
- var re = /^\d+(\.\d+)?$/
- return re.test(s)
- }
-
- export function dialysisAge(firstDialysisDate) {
- var dialysisAge
- var startDate = firstDialysisDate.split('-')
- var startYear = startDate[0]
- var startMonth = startDate[1]
- var startDay = startDate[2]
- var d = new Date()
- var nowYear = d.getFullYear()
- var nowMonth = d.getMonth() + 1
- var nowDay = d.getDate()
-
- var diffYear = nowYear - startYear
- var diffMonth = nowMonth - startMonth
- var diffDay = nowDay - startDay
- if (diffYear < 0) {
- dialysisAge = ''
- } else if (diffYear == 0) {
- if (diffMonth < 0) {
- dialysisAge = ''
- } else if (diffMonth == 0 && diffDay < 0) {
- dialysisAge = ''
- } else {
- if (diffDay < 0) {
- diffMonth -= 1
- }
- dialysisAge = diffMonth + '个月'
- }
- } else {
- if (diffDay < 0) {
- diffMonth -= 1
- }
- if (diffMonth < 0) {
- diffYear -= 1
- diffMonth += 12
- }
- if (diffYear > 0 && diffMonth > 0) {
- dialysisAge = diffYear + '年零' + diffMonth + '个月'
- } else if (diffYear > 0) {
- dialysisAge = diffYear + '年'
- } else {
- dialysisAge = diffMonth + '个月'
- }
- }
-
- return dialysisAge // 返回周岁年龄
- }
-
- export function uParseTime(time, cFormat) {
- if (time === 0) {
- return ''
- }
-
- if (arguments.length === 0) {
- return null
- }
- const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
- let date
- if (typeof time === 'object') {
- date = time
- } else {
- if (('' + time).length !== 13) time = parseInt(time) * 1000
- date = new Date(time)
- }
- const formatObj = {
- y: date.getFullYear(),
- m: date.getMonth() + 1,
- d: date.getDate(),
- h: date.getHours(),
- i: date.getMinutes(),
- s: date.getSeconds(),
- a: date.getDay()
- }
- const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
- let value = formatObj[key]
- if (key === 'a') {
- return ['一', '二', '三', '四', '五', '六', '日'][value - 1]
- }
- if (result.length > 0 && value < 10) {
- value = '0' + value
- }
- return value || 0
- })
- return time_str
- }
-
- export function replacementFlow(bloodflowvolume) {
- bloodflowvolume = parseFloat(bloodflowvolume)
- if (isNaN(bloodflowvolume)) {
- return 0
- }
- return bloodflowvolume * 0.25
- }
-
- export function calculateAnticoagulantZL(type, shouji, shichang, weichi, add_amount, reduce_amount) {
- console.log('t', type)
- var t = 0.5
- if (type == 1) {
- t = 0.5
- } else if (type == 2) {
- t = 1
- } else {
- return 0
- }
- shouji = parseFloat(shouji) ? parseFloat(shouji) : 0
- shichang = parseFloat(shichang) ? parseFloat(shichang) : 0
- weichi = parseFloat(weichi) ? parseFloat(weichi) : 0
- shouji = parseFloat(shouji) ? parseFloat(shouji) : 0
- add_amount = parseFloat(add_amount) ? parseFloat(add_amount) : 0
- reduce_amount = parseFloat(reduce_amount) ? parseFloat(reduce_amount) : 0
- if (isNaN(shouji) || isNaN(shichang) || isNaN(weichi)) {
- return 0
- }
- console.log((shouji + (shichang - t) * weichi).toFixed(1))
- return (shouji + (shichang - t) * weichi + add_amount - reduce_amount).toFixed(1)
- }
-
- export function formatDate(date, format) {
- if (/(y+)/.test(format)) {
- format = format.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
- }
- const o = {
- 'M+': date.getMonth() + 1,
- 'd+': date.getDate(),
- 'h+': date.getHours(),
- 'm+': date.getMinutes(),
- 's+': date.getSeconds()
- }
- for (const k in o) {
- if (new RegExp(`(${k})`).test(format)) {
- const str = o[k] + ''
- format = format.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str))
- }
- }
- return format
- }
-
- function padLeftZero(str) {
- return ('00' + str).substr(str.length)
- }
-
- // 数字金额转大写
- export const numToCny=(money)=>{
- // 汉字的数字
- var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆',
- '柒', '捌', '玖');
- // 基本单位
- var cnIntRadice = new Array('', '拾', '佰', '仟');
- // 对应整数部分扩展单位
- var cnIntUnits = new Array('', '万', '亿', '兆');
- // 对应小数部分单位
- var cnDecUnits = new Array('角', '分', '毫', '厘');
- // 整数金额时后面跟的字符
- var cnInteger = '整';
- // 整型完以后的单位
- var cnIntLast = '元';
- // 最大处理的数字
- var maxNum = 999999999999999.9999;
- // 金额整数部分
- var integerNum;
- // 金额小数部分
- var decimalNum;
- // 输出的中文金额字符串
- var chineseStr = '';
- // 分离金额后用的数组,预定义
- var parts;
- if (money == '') {
- return '';
- }
- money = parseFloat(money);
- if (money >= maxNum) {
- // 超出最大处理数字
- return '';
- }
- if (money == 0) {
- chineseStr = cnNums[0] + cnIntLast + cnInteger;
- return chineseStr;
- }
- // 转换为字符串
- money = money.toString();
- if (money.indexOf('.') == -1) {
- integerNum = money;
- decimalNum = '';
- } else {
- parts = money.split('.');
- integerNum = parts[0];
- decimalNum = parts[1].substr(0, 4);
- }
- // 获取整型部分转换
- if (parseInt(integerNum, 10) > 0) {
- var zeroCount = 0;
- var IntLen = integerNum.length;
- for (var i = 0; i < IntLen; i++) {
- var n = integerNum.substr(i, 1);
- var p = IntLen - i - 1;
- var q = p / 4;
- var m = p % 4;
- if (n == '0') {
- zeroCount++;
- } else {
- if (zeroCount > 0) {
- chineseStr += cnNums[0];
- }
- // 归零
- zeroCount = 0;
- chineseStr += cnNums[parseInt(n)]
- + cnIntRadice[m];
- }
- if (m == 0 && zeroCount < 4) {
- chineseStr += cnIntUnits[q];
- }
- }
- chineseStr += cnIntLast;
- }
- // 小数部分
- if (decimalNum != '') {
- var decLen = decimalNum.length;
- for (var i = 0; i < decLen; i++) {
- var n = decimalNum.substr(i, 1);
- if (n != '0') {
- chineseStr += cnNums[Number(n)] + cnDecUnits[i];
- }
- }
- }
- if (chineseStr == '') {
- chineseStr += cnNums[0] + cnIntLast + cnInteger;
- } else if (decimalNum == '') {
- chineseStr += cnInteger;
- }
- return chineseStr;
- }
-
|