Global.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451
  1. // 网站基本信息
  2. companyInfo = {
  3. url: 'http://det.shandongewall.com/',
  4. main: 'alloutlong',
  5. year: new Date().getFullYear(),
  6. };
  7. // headapi = process.env.NODE_ENV === 'development' ? '/api/' : '../';
  8. // headapi = 'http://192.168.0.110:8080/';//从郑伟那里获得数据源
  9. headapi = 'http://192.168.0.74:8080/';//从郑伟那里获得数据源
  10. // 七牛云imgsrc
  11. imgUrl = "http://qjzpcd34v.hb-bkt.clouddn.com";
  12. // 常用选项
  13. globalQuipState = function () {
  14. let option = [
  15. {
  16. value: '',
  17. label: '全部'
  18. }, {
  19. value: '0',
  20. label: '新入库'
  21. }, {
  22. value: '1',
  23. label: '未售'
  24. },
  25. ];
  26. return option
  27. };
  28. // 开始时间
  29. globalBt = function () {
  30. const et = new Date();
  31. const bt = new Date("2019-01-01 00:00:01");
  32. return [bt, et];
  33. };
  34. globalBt2 = function (days) {
  35. const et = new Date();
  36. const bt = new Date();
  37. days = days ? days : 0;
  38. bt.setTime(bt.getTime() - 3600 * 1000 * 24 * days);
  39. return [bt, et];
  40. };
  41. // 格式化时间
  42. globalfmtDate = function (datetime, length) {
  43. if ((datetime == '') || (datetime == undefined))
  44. return '';
  45. if ((datetime == '1900-01-01') || (datetime == '1900-01-01 00:00:00.000'))
  46. return '';
  47. length = !length ? 10 : length;//缺省参数
  48. return (datetime != null) ? datetime.substr(0, length) : '';
  49. };
  50. getHoursAndMin = function (datetime) {
  51. let date = new Date(datetime);
  52. h = date.getHours() < 10 ? '0' + date.getHours() + ':' : date.getHours() + ':';
  53. m = date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes();
  54. return h + m;
  55. }
  56. getHoursAndMinAndSec = function () {
  57. let date = new Date();
  58. h = date.getHours() < 10 ? '0' + date.getHours() + ':' : date.getHours() + ':';
  59. m = date.getMinutes() < 10 ? '0' + date.getMinutes() + ':' : date.getMinutes() + ':';
  60. s = date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds();
  61. return h + m + s;
  62. }
  63. // 格式化时间去掉T
  64. nonTfmtDate = function (datetime, length) {
  65. if ((datetime == '') || (datetime == undefined))
  66. return '';
  67. if ((datetime == '1900-01-01') || (datetime == '1900-01-01 00:00:00.000'))
  68. return '';
  69. length = !length ? 10 : length;//缺省参数
  70. datetime = new Date(+new Date(datetime) + 8 * 3600 * 1000).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '');
  71. return datetime
  72. };
  73. // 格式化时间去掉T
  74. nonTfmtDatetoLength = function (datetime, length) {
  75. if ((datetime == '') || (datetime == undefined))
  76. return '';
  77. if ((datetime == '1900-01-01') || (datetime == '1900-01-01 00:00:00.000'))
  78. return '';
  79. length = !length ? 10 : length;//缺省参数
  80. datetime = new Date(+new Date(datetime) + 8 * 3600 * 1000).toISOString().replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '').substr(0, length);
  81. return datetime
  82. };
  83. // 获取当前时间
  84. globalcurrent = function () {
  85. let date = new Date();
  86. let seperator1 = "-";
  87. let year = date.getFullYear();
  88. let month = date.getMonth() + 1;
  89. let strDate = date.getDate();
  90. if (month >= 1 && month <= 9) {
  91. month = "0" + month;
  92. }
  93. if (strDate >= 0 && strDate <= 9) {
  94. strDate = "0" + strDate;
  95. }
  96. let thisdata = year + seperator1 + month + seperator1 + strDate;
  97. return thisdata;
  98. };
  99. // 校验内容长度
  100. globalValid = function (data, mins, maxs, text, that) {
  101. let thisVal = data;
  102. let thisLeng = thisVal.length;
  103. let min = parseInt(mins);
  104. let max = parseInt(maxs);
  105. let dispalyMin = min + 1;
  106. let title = '警告';
  107. if (thisVal == '') {
  108. that.$message({
  109. message: text + '不能为空!',
  110. type: 'warning'
  111. });
  112. return false
  113. } else if (thisLeng <= min) {
  114. that.$message({
  115. message: text + '最少' + dispalyMin + '字符!',
  116. type: 'warning'
  117. });
  118. return false
  119. } else if (thisLeng > max) {
  120. that.$message({
  121. message: text + '超出限制数量!',
  122. type: 'warning'
  123. });
  124. return false
  125. } else {
  126. return true
  127. }
  128. };
  129. // 手机号码格式
  130. globalCheckPhone = function (val) {
  131. let re = /^1[3|4|5|6|7|8|9][0-9]\d{8}$/;
  132. val = val.toString();
  133. if (val.search(re) == -1) {
  134. return false;
  135. } else {
  136. return true;
  137. }
  138. };
  139. getNowDate = function () {
  140. let date = new Date();
  141. let y = date.getFullYear();
  142. let m = date.getMonth() + 1;
  143. let d = date.getDate();
  144. let H = date.getHours();
  145. let mm = date.getMinutes();
  146. let s = date.getSeconds()
  147. m = m < 10 ? "0" + m : m;
  148. d = d < 10 ? "0" + d : d;
  149. // H = H < 10 ? "0" + H : H;
  150. return y + "年" + m + "月" + d + "日";
  151. }
  152. globalcurrentWeek = function () {
  153. let weeks = new Date().getDay();
  154. let d = new Date().getDate();
  155. return getNowDate() + ' ' + numberToWeekdays(weeks) + ' 第' + getWeekOfYear() + '周';
  156. }
  157. getWeekOfYear = function () {
  158. var today = new Date();
  159. var firstDay = new Date(today.getFullYear(), 0, 1);
  160. var dayOfWeek = firstDay.getDay();
  161. var spendDay = 1;
  162. if (dayOfWeek != 0) {
  163. spendDay = 7 - dayOfWeek + 1;
  164. }
  165. firstDay = new Date(today.getFullYear(), 0, 1 + spendDay);
  166. var d = Math.ceil((today.valueOf() - firstDay.valueOf()) / 86400000);
  167. var result = Math.ceil(d / 7);
  168. return result + 1;
  169. };
  170. // table配置项目
  171. // 每页选项
  172. pageOptions = function () {
  173. let option = [
  174. {
  175. value: 10,
  176. label: '10'
  177. }, {
  178. value: 25,
  179. label: '25'
  180. }, {
  181. value: 50,
  182. label: '50'
  183. }, {
  184. value: 100,
  185. label: '100'
  186. }, {
  187. value: 2000,
  188. label: '2000'
  189. },
  190. ];
  191. return option
  192. };
  193. // 到期日
  194. endTypeOptions = function () {
  195. let option = [
  196. {
  197. value: '',
  198. label: '全部'
  199. }, {
  200. value: 1,
  201. label: '当天'
  202. }, {
  203. value: 7,
  204. label: '一周'
  205. }, {
  206. value: 30,
  207. label: '一个月'
  208. }, {
  209. value: 90,
  210. label: '一季度'
  211. }, {
  212. value: 180,
  213. label: '半年'
  214. },
  215. ];
  216. return option
  217. }
  218. //会员类型
  219. vipOptions = function (i) {
  220. let option = [];
  221. if (i == 0) {
  222. option = [
  223. {
  224. value: '',
  225. label: '全部'
  226. }, {
  227. value: 1,
  228. label: '年费会员'
  229. }, {
  230. value: 2,
  231. label: '充值会员'
  232. },
  233. ];
  234. } else {
  235. option = [
  236. {
  237. value: 1,
  238. label: '年费会员'
  239. }, {
  240. value: 2,
  241. label: '充值会员'
  242. },
  243. ];
  244. }
  245. return option
  246. }
  247. turnResToOption = function (data) {
  248. if (!data) return false
  249. let ids = data.map(item => {
  250. return {
  251. label: item.UserInfo.Name + ' ' + item.UserInfo.Phone,
  252. key: parseInt(item.UserInfo.Id),
  253. value: parseInt(item.UserInfo.Id),
  254. }
  255. })
  256. return ids
  257. }
  258. turnResToOptionByViper = function (data) {
  259. if (!data) return false;
  260. let ids = data.map(item => {
  261. return {
  262. label: item.Name + ' ' + item.Phone,
  263. key: parseInt(item.Id),
  264. value: parseInt(item.Id),
  265. }
  266. });
  267. return ids
  268. };
  269. turnResToOptionBySimViper = function (data) {
  270. if (!data) return false;
  271. let ids = data.map(item => {
  272. return {
  273. label: item.Name + ' ' + item.Usercode,
  274. key: parseInt(item.Id),
  275. value: parseInt(item.Id),
  276. RemainHour: parseInt(item.RemainHour),
  277. }
  278. });
  279. return ids
  280. };
  281. turnResToOptionByCoach = function (data) {
  282. if (!data) return false;
  283. let ids = data.map(item => {
  284. return {
  285. label: item.Name + ' ' + item.Phone,
  286. key: parseInt(item.TeacherId),
  287. value: parseInt(item.TeacherId),
  288. }
  289. });
  290. return ids
  291. };
  292. turnResToOptionByUsers = function (data) {
  293. if (!data) return false;
  294. let ids = data.map(item => {
  295. return {
  296. label: item.Name + ' ' + item.Phone,
  297. key: parseInt(item.Id),
  298. value: parseInt(item.Id),
  299. }
  300. });
  301. return ids
  302. };
  303. turnClassResToOption = function (data) {
  304. if (data == null) return false;
  305. if (!data) return false;
  306. let ids = data.map(item => {
  307. return {
  308. label: item.ClassSelf.ClassName,
  309. key: parseInt(item.ClassSelf.ClassId),
  310. value: parseInt(item.ClassSelf.ClassId),
  311. ClassColor: item.ClassSelf.ClassColor,
  312. }
  313. });
  314. return ids
  315. };
  316. turnShopResToOption = function (data) {
  317. if (!data) return false
  318. let ids = data.map(item => {
  319. return {
  320. label: item.ShopName,
  321. key: parseInt(item.ShopID),
  322. value: parseInt(item.ShopID)
  323. }
  324. });
  325. return ids
  326. };
  327. turnStdToOption = function (data) {
  328. if (!data) return false;
  329. let ids = data.map(item => {
  330. return {
  331. label: item.ClassName + '(' + item.BeginStr + '-' + item.EndStr + ')',
  332. key: parseInt(item.StdId),
  333. value: parseInt(item.StdId),
  334. classId: parseInt(item.ClassId),
  335. }
  336. });
  337. return ids
  338. };
  339. numberToWeekdays = function (val) {
  340. switch (parseInt(val)) {
  341. case 1:
  342. return '星期一';
  343. break;
  344. case 2:
  345. return '星期二';
  346. break;
  347. case 3:
  348. return '星期三';
  349. break;
  350. case 4:
  351. return '星期四';
  352. break;
  353. case 5:
  354. return '星期五';
  355. break;
  356. case 6:
  357. return '星期六';
  358. break;
  359. case 0:
  360. return '星期天';
  361. break;
  362. }
  363. };
  364. // 随机背景
  365. RandomBg = function () {
  366. let bgClassNum = parseInt(Math.random() * 7) + 1;
  367. return 'bgStyle' + bgClassNum + ' pages';
  368. };
  369. // 运动强度
  370. sportLevel = function (val) {
  371. let colorClass = '';
  372. let per = parseInt(val);
  373. switch (true) {
  374. case per >= 90:
  375. colorClass = 'red';
  376. break;
  377. case per <= 89 && per > 79:
  378. colorClass = 'brown';
  379. break;
  380. case per <= 79 && per > 70:
  381. colorClass = 'yellow';
  382. break;
  383. case per <= 70 && per > 54:
  384. colorClass = 'green';
  385. break;
  386. case per <= 54 && per > 39:
  387. colorClass = 'violet';
  388. break;
  389. case per <= 39:
  390. colorClass = 'blue';
  391. break
  392. }
  393. return colorClass
  394. };
  395. // 假数据生成器
  396. fakeNews = function (num, team) {
  397. let item = [];
  398. let nums = Math.random() * 100 + 1;
  399. let teamNum = team == 3 ? 3 : 2;
  400. for (var i = 0; i < num; i++) {
  401. item.push(
  402. {
  403. "SvId": 1,
  404. "UserId": 1,
  405. "Cle": parseInt(Math.random() * 100 + 50),
  406. "realHr1": parseInt(Math.random() * 100 + 50),
  407. "realHr": parseInt(Math.random() * 100 + 50),
  408. "activePercent": parseInt(Math.random() * 100 + 50),
  409. "heartRate": parseInt(Math.random() * 100 + 50),
  410. "PureCalorieNoVo2": parseInt(Math.random() * 100 + 50),
  411. "Name": "测试人",
  412. "name": "测试人",
  413. "updateTime": 1604568915582,
  414. "Ck": (nums + i + 1) * 2.2,
  415. "formatCk":parseInt(Math.random() * 100 + 50),
  416. "Head": "http://192.168.0.2/gc.png",
  417. "GroupNo": i % teamNum + 1
  418. }
  419. )
  420. }
  421. return item;
  422. };