|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189 |
- //获取本日
- function getDate(dates) {
- var dd = new Date();
- var n = dates || 0;
- dd.setDate(dd.getDate() + n);
- var y = dd.getFullYear();
- var m = dd.getMonth() + 1;
- var d = dd.getDate();
- m = m < 10 ? "0" + m : m;
- d = d < 10 ? "0" + d : d;
- var day = y + "-" + m + "-" + d;
- return day;
- }
- // 获取本周日期
- function getMonday(type, dates) {
- var now = new Date();
- var nowTime = now.getTime();
-
- var day = now.getDay();
-
- var longTime = 24 * 60 * 60 * 1000;
-
- var n = longTime * 7 * (dates || 0);
-
- if (type == "s") {
- var dd = nowTime - (day - 1) * longTime + n;
- };
- if (type == "e") {
- var dd = nowTime + (7 - day) * longTime + n;
- };
- dd = new Date(dd);
- var y = dd.getFullYear();
- var m = dd.getMonth() + 1;
- var d = dd.getDate();
- m = m < 10 ? "0" + m : m;
- d = d < 10 ? "0" + d : d;
- var day = y + "-" + m + "-" + d;
- return day;
- }
- // 获取本月日期
- function getMonth(type, months) {
- var d = new Date();
- var year = d.getFullYear();
- var month = d.getMonth() + 1;
-
- if (Math.abs(months) > 12) {
- months = months % 12;
- };
- // console.log(months)
- if (months != 0) {
- if (month + months > 12) {
- year++;
- month = (month + months) % 12;
- } else if (month + months < 1) {
- year--;
- month = 12 + month + months;
- } else {
- month = month + months;
- };
- };
-
- month = month < 10 ? "0" + month : month;
-
- var date = d.getDate();
- var firstday = year + "-" + month + "-" + "01";
- var lastday = "";
- if (month == "01" || month == "03" || month == "05" || month == "07" || month == "08" || month == "10" ||
- month == "12") {
- lastday = year + "-" + month + "-" + 31;
- } else if (month == "02") {
- if ((year % 4 == 0 && year % 100 != 0) || (year % 100 == 0 && year % 400 == 0)) {
- lastday = year + "-" + month + "-" + 29;
- } else {
- lastday = year + "-" + month + "-" + 28;
- };
- } else {
- lastday = year + "-" + month + "-" + 30;
- };
- var day = "";
- if (type == "s") {
- day = firstday;
- } else {
- day = lastday;
- };
- return day;
- }
- // 获取本年日期
- function getYear(type, dates) {
- var dd = new Date();
- var n = dates || 0;
- var year = dd.getFullYear() + Number(n);
- if (type == "s") {
- var day = year + "-01-01";
- };
- if (type == "e") {
- var day = year + "-12-31";
- };
- if (!type) {
- var day = year + "-01-01/" + year + "-12-31";
- };
- return day;
- }
-
-
- function num(str, num) {
- var res = parseFloat(Number(str))
- var x = String(str).indexOf(".") + 1; //判断是不是小数
- if (x > 0) {
- var len = str.toString().split(".")[1].length
- res = parseFloat(res.toFixed(num))
- }
- return res;
- }
-
- function formatLocation(longitude, latitude) {
- if (typeof longitude === 'string' && typeof latitude === 'string') {
- longitude = parseFloat(longitude)
- latitude = parseFloat(latitude)
- }
-
- longitude = longitude.toFixed(2)
- latitude = latitude.toFixed(2)
-
- return {
- longitude: longitude.toString().split('.'),
- latitude: latitude.toString().split('.')
- }
- }
- // 组装请求参数 接收接口的参数名
- function reparam(e){
- var eid = uni.getStorageSync('userinfo').eid
- var param = {
- class:"business_requ",
- eid:eid,
- data:{
- verno:"1.0",
- eid:eid,
- ...e
- }
- }
- return param
- }
-
- // 经纬度转换成三角函数中度分表形式。
- function rad(d) {
- return d * Math.PI / 180.0;
- }
- // 根据经纬度计算距离,参数分别为第一点的纬度,经度;第二点的纬度,经度
- function getDistance(lat1, lng1, lat2, lng2) {
-
- var radLat1 = rad(lat1);
- var radLat2 = rad(lat2);
- var a = radLat1 - radLat2;
- var b = rad(lng1) - rad(lng2);
- var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) +
- Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(Math.sin(b / 2), 2)));
- s = s * 6378.137; // EARTH_RADIUS;
- s = Math.round(s * 10000) / 10000; //输出为公里
-
- var distance = s;
- var distance_str = "";
-
- if (parseInt(distance) >= 1) {
- distance_str = distance.toFixed(1) + "公里";
- } else {
- distance_str = distance * 1000 + "米";
- }
- // s=s.toFixed(4);
- var mi = s * 1000
- var res = {}
- res.m = distance_str
- res.k = mi.toFixed();
- // console.info('lyj 距离是', s);//千米
- // console.info('lyj 距离是', distance_str);
-
- return res;
- }
-
-
- module.exports = {
- getDate: getDate,
- getMonday: getMonday,
- getMonth: getMonth,
- getYear: getYear,
- num: num,
- formatLocation: formatLocation,
- reparam: reparam,
- getDistance:getDistance,
- }
|