feat: 时间的相关处理(20%)

This commit is contained in:
zhangyu
2021-06-16 10:02:54 +08:00
parent bbd8eb2d40
commit ed9dff6365
7 changed files with 211 additions and 103 deletions

259
package-lock.json generated
View File

@@ -1,5 +1,5 @@
{ {
"name": "sn", "name": "cn",
"version": "0.1.0", "version": "0.1.0",
"lockfileVersion": 1, "lockfileVersion": 1,
"requires": true, "requires": true,
@@ -1344,6 +1344,74 @@
"postcss": "^7.0.0" "postcss": "^7.0.0"
} }
}, },
"@intlify/core-base": {
"version": "9.1.6",
"resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-9.1.6.tgz",
"integrity": "sha512-d5GDPpsQbqPkisSJA5b6nJFEkalY/IHAd7vOLNd/Sj4YaNRzXtInu2FoqKiOv8e/lQnXGTpurdCZg5Jxq1Gsxw==",
"requires": {
"@intlify/devtools-if": "9.1.6",
"@intlify/message-compiler": "9.1.6",
"@intlify/message-resolver": "9.1.6",
"@intlify/runtime": "9.1.6",
"@intlify/shared": "9.1.6",
"@intlify/vue-devtools": "9.1.6"
}
},
"@intlify/devtools-if": {
"version": "9.1.6",
"resolved": "https://registry.npmjs.org/@intlify/devtools-if/-/devtools-if-9.1.6.tgz",
"integrity": "sha512-m8Api+kh+BtFa2FZ/JjIdr1ibsGGqBjdKCzWo5BZecEUxBquIeOQZwpokPh/0K5j+/PZleFXkVAMC5mNt+9WdA==",
"requires": {
"@intlify/shared": "9.1.6"
}
},
"@intlify/message-compiler": {
"version": "9.1.6",
"resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-9.1.6.tgz",
"integrity": "sha512-DR8645VOrVK6x/8tkaCpHnckMAIcoOgeNS5j0wB12RfZoXYQp7vAXMaOP511KMll2mXCREgIB0ojpajiof7yzQ==",
"requires": {
"@intlify/message-resolver": "9.1.6",
"@intlify/shared": "9.1.6",
"source-map": "0.6.1"
},
"dependencies": {
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g=="
}
}
},
"@intlify/message-resolver": {
"version": "9.1.6",
"resolved": "https://registry.npmjs.org/@intlify/message-resolver/-/message-resolver-9.1.6.tgz",
"integrity": "sha512-UUnbawQa5U9sffd5wRIscqtyY1xWlwJbyfwCLPEWLvBhyAnCwPYlvaHGnnO0CSi0fzJTVwlV9DYzobh3agDeMA=="
},
"@intlify/runtime": {
"version": "9.1.6",
"resolved": "https://registry.npmjs.org/@intlify/runtime/-/runtime-9.1.6.tgz",
"integrity": "sha512-U1QZ+TPf3kQQvWo4BA2mj3cHAxMRHXNTBhu2u+deh6ubTqXdZ19XGBTMSasrXG6RE+zSio9oM+ndoLja7JGtPg==",
"requires": {
"@intlify/message-compiler": "9.1.6",
"@intlify/message-resolver": "9.1.6",
"@intlify/shared": "9.1.6"
}
},
"@intlify/shared": {
"version": "9.1.6",
"resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-9.1.6.tgz",
"integrity": "sha512-6MtsKulyfZxdD7OuxjaODjj8QWoHCnLFAk4wkWiHqBCa6UCTC0qXjtEeZ1MxpQihvFmmJZauBUu25EvtngW5qQ=="
},
"@intlify/vue-devtools": {
"version": "9.1.6",
"resolved": "https://registry.npmjs.org/@intlify/vue-devtools/-/vue-devtools-9.1.6.tgz",
"integrity": "sha512-UdNovg4OML9rIr1sOGZzTfNr1nUy4UQpDf5ni4dNC93T6FIkVJz0n1Np7Vp7e6gDjcmufRYcV99tEwjQSN9+5A==",
"requires": {
"@intlify/message-resolver": "9.1.6",
"@intlify/runtime": "9.1.6",
"@intlify/shared": "9.1.6"
}
},
"@mrmlnc/readdir-enhanced": { "@mrmlnc/readdir-enhanced": {
"version": "2.2.1", "version": "2.2.1",
"resolved": "https://registry.npm.taobao.org/@mrmlnc/readdir-enhanced/download/@mrmlnc/readdir-enhanced-2.2.1.tgz", "resolved": "https://registry.npm.taobao.org/@mrmlnc/readdir-enhanced/download/@mrmlnc/readdir-enhanced-2.2.1.tgz",
@@ -1957,6 +2025,63 @@
"integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=", "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
"dev": true "dev": true
}, },
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
"integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true,
"optional": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"optional": true
},
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz",
"integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"ssri": { "ssri": {
"version": "8.0.1", "version": "8.0.1",
"resolved": "https://registry.nlark.com/ssri/download/ssri-8.0.1.tgz?cache=0&sync_timestamp=1621364626710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fssri%2Fdownload%2Fssri-8.0.1.tgz", "resolved": "https://registry.nlark.com/ssri/download/ssri-8.0.1.tgz?cache=0&sync_timestamp=1621364626710&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fssri%2Fdownload%2Fssri-8.0.1.tgz",
@@ -1965,6 +2090,28 @@
"requires": { "requires": {
"minipass": "^3.1.1" "minipass": "^3.1.1"
} }
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
},
"vue-loader-v16": {
"version": "npm:vue-loader@16.2.0",
"resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.2.0.tgz",
"integrity": "sha512-TitGhqSQ61RJljMmhIGvfWzJ2zk9m1Qug049Ugml6QP3t0e95o0XJjk29roNEiPKJQBEi8Ord5hFuSuELzSp8Q==",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
}
} }
} }
}, },
@@ -4471,8 +4618,8 @@
}, },
"dayjs": { "dayjs": {
"version": "1.10.5", "version": "1.10.5",
"resolved": "https://registry.nlark.com/dayjs/download/dayjs-1.10.5.tgz?cache=0&sync_timestamp=1622012259636&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fdayjs%2Fdownload%2Fdayjs-1.10.5.tgz", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.10.5.tgz",
"integrity": "sha1-VgDfRUj8JFOz8WPrsqu+llzPuYY=" "integrity": "sha512-BUFis41ikLz+65iH6LHQCDm4YPMj5r1YFLdupPIyM4SGcXMmtiLQ7U37i+hGS8urIuqe7I/ou3IS1jVc4nbN4g=="
}, },
"debug": { "debug": {
"version": "4.3.1", "version": "4.3.1",
@@ -8561,6 +8708,19 @@
"minimist": "^1.2.5" "minimist": "^1.2.5"
} }
}, },
"moment": {
"version": "2.29.1",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
"integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ=="
},
"moment-timezone": {
"version": "0.5.33",
"resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.33.tgz",
"integrity": "sha512-PTc2vcT8K9J5/9rDEPe5czSIKgLoGsH8UNpA4qZTVw0Vd/Uz19geE9abbIOQKaAQFcnQ3v5YEXrbSc5BpshH+w==",
"requires": {
"moment": ">= 2.9.0"
}
},
"move-concurrently": { "move-concurrently": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz", "resolved": "https://registry.npm.taobao.org/move-concurrently/download/move-concurrently-1.0.1.tgz",
@@ -12976,9 +13136,15 @@
"dev": true "dev": true
}, },
"vue-i18n": { "vue-i18n": {
"version": "8.24.4", "version": "9.1.6",
"resolved": "https://registry.nlark.com/vue-i18n/download/vue-i18n-8.24.4.tgz", "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-9.1.6.tgz",
"integrity": "sha1-sVhhTB332xg9nK3du3Ph1UAmlJI=" "integrity": "sha512-FEC4HZkTH6QRIu/A0wlo0VS/GH3w/fuCC6xfvoC8IyhhtbG9A+go9NfW+HZ1ZXdAcO4EWcVQi04M+iSwuxgixw==",
"requires": {
"@intlify/core-base": "9.1.6",
"@intlify/shared": "9.1.6",
"@intlify/vue-devtools": "9.1.6",
"@vue/devtools-api": "^6.0.0-beta.7"
}
}, },
"vue-loader": { "vue-loader": {
"version": "15.9.7", "version": "15.9.7",
@@ -13001,87 +13167,6 @@
} }
} }
}, },
"vue-loader-v16": {
"version": "npm:vue-loader@16.2.0",
"resolved": "https://registry.nlark.com/vue-loader/download/vue-loader-16.2.0.tgz",
"integrity": "sha1-BGpTMI3Ufljv4g3ewe3sAnzjtG4=",
"dev": true,
"optional": true,
"requires": {
"chalk": "^4.1.0",
"hash-sum": "^2.0.0",
"loader-utils": "^2.0.0"
},
"dependencies": {
"ansi-styles": {
"version": "4.3.0",
"resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz?cache=0&sync_timestamp=1618995547052&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fansi-styles%2Fdownload%2Fansi-styles-4.3.0.tgz",
"integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
"dev": true,
"optional": true,
"requires": {
"color-convert": "^2.0.1"
}
},
"chalk": {
"version": "4.1.1",
"resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.1.tgz?cache=0&sync_timestamp=1618995355917&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.1.tgz",
"integrity": "sha1-yAs/qyi/Y3HmhjMl7uZ+YYt35q0=",
"dev": true,
"optional": true,
"requires": {
"ansi-styles": "^4.1.0",
"supports-color": "^7.1.0"
}
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
"integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
"dev": true,
"optional": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
"integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
"dev": true,
"optional": true
},
"has-flag": {
"version": "4.0.0",
"resolved": "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz?cache=0&sync_timestamp=1618847009337&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fhas-flag%2Fdownload%2Fhas-flag-4.0.0.tgz",
"integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
"dev": true,
"optional": true
},
"loader-utils": {
"version": "2.0.0",
"resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz",
"integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
"dev": true,
"optional": true,
"requires": {
"big.js": "^5.2.2",
"emojis-list": "^3.0.0",
"json5": "^2.1.2"
}
},
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1618847145907&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
"integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
"dev": true,
"optional": true,
"requires": {
"has-flag": "^4.0.0"
}
}
}
},
"vue-router": { "vue-router": {
"version": "4.0.8", "version": "4.0.8",
"resolved": "https://registry.nlark.com/vue-router/download/vue-router-4.0.8.tgz?cache=0&sync_timestamp=1620899536020&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvue-router%2Fdownload%2Fvue-router-4.0.8.tgz", "resolved": "https://registry.nlark.com/vue-router/download/vue-router-4.0.8.tgz?cache=0&sync_timestamp=1620899536020&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvue-router%2Fdownload%2Fvue-router-4.0.8.tgz",

View File

@@ -10,6 +10,7 @@
"dependencies": { "dependencies": {
"axios": "^0.21.1", "axios": "^0.21.1",
"core-js": "^3.6.5", "core-js": "^3.6.5",
"dayjs": "^1.10.5",
"echarts": "^5.1.1", "echarts": "^5.1.1",
"element-plus": "^1.0.2-beta.44", "element-plus": "^1.0.2-beta.44",
"lib-flexible": "^0.3.2", "lib-flexible": "^0.3.2",

View File

@@ -13,6 +13,14 @@ export default {
get(`${process.env.BASE_URL}config.json?Timestamp=${new Date().getTime()}`).then(config => { get(`${process.env.BASE_URL}config.json?Timestamp=${new Date().getTime()}`).then(config => {
axios.defaults.baseURL = config.baseUrl axios.defaults.baseURL = config.baseUrl
}) })
//处理刷新后 $dayJs的时区变为默认的问题
const timezone = localStorage.getItem('cn-sys-timezone') || ''
if (timezone){
$dayJs.tz.setDefault(timezone)
} else {
$dayJs.tz.setDefault()
} }
}
} }
</script> </script>

View File

@@ -7,11 +7,11 @@
.pagination-top .pagination { .pagination-top .pagination {
padding-top: 0; padding-top: 0;
} }
.pagination /deep/ .el-pagination { .pagination :deep(.el-pagination) {
max-height: 42px; max-height: 42px;
padding-right: 0; padding-right: 0;
} }
.pagination-size-select /deep/ .el-input--mini .el-input__inner{ .pagination-size-select :deep(.el-input--mini .el-input__inner){
height: 20px; height: 20px;
line-height: 20px; line-height: 20px;
margin: 5px 0 5px 5px; margin: 5px 0 5px 5px;
@@ -19,7 +19,7 @@
.pagination-size-select input{ .pagination-size-select input{
} }
/deep/ .el-pager li, /deep/ .el-pagination .btn-next,/deep/ .el-pagination .btn-prev { :deep(.el-pager li), :deep(.el-pagination .btn-next),:deep( .el-pagination .btn-prev ){
margin:5px 5px 0px 5px; margin:5px 5px 0px 5px;
padding: 0 4px; padding: 0 4px;
font-size: 13px; font-size: 13px;
@@ -33,13 +33,13 @@
border-radius: 2px; border-radius: 2px;
border-radius: 2px; border-radius: 2px;
} }
/deep/ .el-pagination .el-pager li.btn-quicknext, /deep/ .el-pager li.btn-quickprev { :deep(.el-pagination .el-pager li.btn-quicknext), :deep( .el-pager li.btn-quickprev) {
line-height: 20px; line-height: 20px;
} }
/deep/ .el-pagination .el-pager .more::before { :deep(.el-pagination .el-pager .more::before ){
line-height: 20px; line-height: 20px;
} }
/deep/ .el-pagination .el-pager .more { :deep( .el-pagination .el-pager .more) {
background-color: $content-right-background-color; background-color: $content-right-background-color;
} }
.btn-next, .btn-prev { .btn-next, .btn-prev {
@@ -48,35 +48,35 @@
.pagination input { .pagination input {
background-color: $content-right-background-color !important; background-color: $content-right-background-color !important;
} }
/deep/ .el-pager li.number{ :deep(.el-pager li.number){
font-family: NotoSansSC-Regular; font-family: NotoSansSC-Regular;
color: #666666; color: #666666;
letter-spacing: 0; letter-spacing: 0;
font-weight:normal; font-weight:normal;
background-color: $content-right-background-color; background-color: $content-right-background-color;
} }
/deep/ .el-pager li.number.active{ :deep( .el-pager li.number.active){
font-family: NotoSansSC-Regular; font-family: NotoSansSC-Regular;
color: #FFFFFF; color: #FFFFFF;
letter-spacing: 0; letter-spacing: 0;
} }
/deep/ .el-pagination .el-pager li.active { :deep( .el-pagination .el-pager li.active) {
background-color: $global-text-color-active; background-color: $global-text-color-active;
border-radius: 2px; border-radius: 2px;
border-radius: 2px; border-radius: 2px;
} }
/deep/ .el-pager li:hover, .el-pagination .btn-next:hover, .el-pagination .btn-prev:hover { :deep( .el-pager li:hover, .el-pagination .btn-next:hover, .el-pagination .btn-prev:hover) {
font-family: NotoSansSC-Regular; font-family: NotoSansSC-Regular;
color: #666666; color: #666666;
letter-spacing: 0; letter-spacing: 0;
font-weight:normal; font-weight:normal;
} }
/deep/ .el-pagination__sizes .el-input .el-input__inner,/deep/ .el-pagination__editor.el-input .el-input__inner{ :deep( .el-pagination__sizes .el-input .el-input__inner),:deep( .el-pagination__editor.el-input .el-input__inner){
height: 20px; height: 20px;
border-color: rgba(154,154,154,0.20); border-color: rgba(154,154,154,0.20);
} }
/deep/ .el-pagination__sizes .el-input .el-input__inner:hover{ :deep(.el-pagination__sizes .el-input .el-input__inner:hover){
border-color: rgba(154,154,154,0.20); border-color: rgba(154,154,154,0.20);
} }
</style> </style>

View File

@@ -1,6 +1,5 @@
import { createApp } from 'vue' import { createApp } from 'vue'
import _ from 'lodash' import _ from 'lodash'
import router from '@/router' import router from '@/router'
import store from '@/store' import store from '@/store'
import App from '@/App.vue' import App from '@/App.vue'
@@ -11,8 +10,19 @@ import i18n from '@/i18n'
import '@/assets/css/main.scss' // 样式入口 import '@/assets/css/main.scss' // 样式入口
import ElementPlus from 'element-plus' import ElementPlus from 'element-plus'
import dayjs from 'dayjs'
import utc from 'dayjs/plugin/utc' // dependent on utc plugin
import timezone from 'dayjs/plugin/timezone'
import advancedFormat from 'dayjs/plugin/advancedFormat'
import weekday from 'dayjs/plugin/weekday'
dayjs.extend(utc)
dayjs.extend(timezone)
dayjs.extend(advancedFormat)
dayjs.extend(weekday)
window.$dayJs = dayjs
const app = createApp(App) const app = createApp(App)
app.use(router) app.use(router)
app.use(store) app.use(store)
app.use(ElementPlus) app.use(ElementPlus)

View File

@@ -3,6 +3,7 @@ import { hasButton } from '@/permission'
export default { export default {
data () { data () {
return { return {
dayJs: $dayJs,
blockOperation: { blockOperation: {
save: false, save: false,
import: false, import: false,

View File

@@ -1,7 +1,9 @@
import { post } from '@/utils/http' import { post } from '@/utils/http'
import router from '@/router' import router from '@/router'
import { sortByOrderNum, getWelcomeMenu } from '@/permission' import { sortByOrderNum, getWelcomeMenu } from '@/permission'
import moment from 'moment-timezone' import dayjs from 'dayjs'
import utc from 'dayjs/plugin/utc' // dependent on utc plugin
dayjs.extend(utc)
import bus from '@/utils/bus' import bus from '@/utils/bus'
import { ElMessage } from 'element-plus' import { ElMessage } from 'element-plus'
@@ -42,14 +44,15 @@ const user = {
}, },
actions: { actions: {
loginSuccess (store, res) { loginSuccess (store, res) {
// res.data.timezone = 'America/New_York'
$dayJs.tz.setDefault(res.data.timezone)
sessionStorage.setItem('cn-token', res.data.token) sessionStorage.setItem('cn-token', res.data.token)
localStorage.setItem('cn-sys-name', res.data.systemName) localStorage.setItem('cn-sys-name', res.data.systemName)
if (res.systemLogo) { if (res.systemLogo) {
localStorage.setItem('cn-sys-logo', res.data.systemLogo) localStorage.setItem('cn-sys-logo', res.data.systemLogo)
} }
localStorage.setItem('cn-sys-timezone', res.data.timezone) localStorage.setItem('cn-sys-timezone', res.data.timezone)
localStorage.setItem('timezone-offset', moment.tz(res.data.timezone).format('Z')) localStorage.setItem('timezone-offset', dayjs.tz().utcOffset()/60)
post('/sys/user/permissions', { token: res.data.token }).then(res => { post('/sys/user/permissions', { token: res.data.token }).then(res => {
const menuList = sortByOrderNum(res.data.menus) const menuList = sortByOrderNum(res.data.menus)
store.commit('setMenuList', menuList) store.commit('setMenuList', menuList)