tools.js 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. export default {
  2. /** 将平面树json转为带children的json
  3. * @param {Object} a
  4. * @param {Object} idStr
  5. * @param {Object} pidStr
  6. * @param {Object} childrenStr
  7. */
  8. transData(a, idStr, pidStr, childrenStr) {
  9. var r = [],
  10. hash = {},
  11. id = idStr,
  12. pid = pidStr,
  13. children = childrenStr,
  14. i = 0,
  15. j = 0,
  16. len = a.length;
  17. for (; i < len; i++) {
  18. hash[a[i][id]] = a[i];
  19. }
  20. for (; j < len; j++) {
  21. var aVal = a[j],
  22. hashVP = hash[aVal[pid]];
  23. if (hashVP) {
  24. !hashVP[children] && (hashVP[children] = []);
  25. hashVP[children].push(aVal);
  26. } else {
  27. r.push(aVal);
  28. }
  29. }
  30. return r;
  31. },
  32. /**从字典缓存中返回数组用于页面上作下拉,
  33. * @param {Object} k 字典名称
  34. * @param {Object} v value取哪个字典属性
  35. * @param {Object} t
  36. */
  37. arrByDic(k, v, t) {
  38. var map = uni.getStorageSync("dic");
  39. var arr = map[k];
  40. var r = [];
  41. arr.forEach(obj => {
  42. r.push({
  43. value: obj[v],
  44. text: obj[t]
  45. });
  46. })
  47. return r;
  48. },
  49. dateFmtyyyyMMddHHmmss(target) {
  50. let date = new Date(target);
  51. let y = date.getFullYear(); // 年
  52. let MM = date.getMonth() + 1; // 月
  53. MM = MM < 10 ? ('0' + MM) : MM;
  54. let d = date.getDate(); // 日
  55. d = d < 10 ? ('0' + d) : d;
  56. let h = date.getHours(); // 时
  57. h = h < 10 ? ('0' + h) : h;
  58. let m = date.getMinutes(); // 分
  59. m = m < 10 ? ('0' + m) : m;
  60. let s = date.getSeconds(); // 秒
  61. s = s < 10 ? ('0' + s) : s;
  62. return y + '-' + MM + '-' + d + ' ' + h + ':' + m + ':' + s;
  63. },
  64. // 比较时间大小
  65. compareDate(date1, date2) {
  66. var oDate1 = new Date(date1);
  67. var oDate2 = new Date(date2);
  68. if (oDate1.getTime() > oDate2.getTime()) {
  69. return true; //第一个大
  70. } else {
  71. return false; //第二个大
  72. }
  73. },
  74. uploadPreview(url, lists, name) {
  75. var ext = url.substring(url.lastIndexOf(".") + 1);
  76. ext = ext.toLowerCase();
  77. console.log(ext);
  78. if (ext == "pdf") {
  79. uni.navigateTo({
  80. url: "/pages/pdf/index?url=" + url
  81. })
  82. }
  83. }
  84. }