feat:本地重构element-ui的时间选择器
This commit is contained in:
@@ -8,5 +8,32 @@
|
||||
}],
|
||||
"stage-2"
|
||||
],
|
||||
"plugins": ["transform-vue-jsx", "transform-runtime"]
|
||||
"plugins": ["transform-vue-jsx", "transform-runtime"],
|
||||
"env": {
|
||||
"utils": {
|
||||
"presets": [
|
||||
[
|
||||
"env",
|
||||
{
|
||||
"loose": true,
|
||||
"modules": "commonjs",
|
||||
"targets": {
|
||||
"browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
|
||||
}
|
||||
}
|
||||
],
|
||||
],
|
||||
"plugins": [
|
||||
["module-resolver", {
|
||||
"root": ["element-ui"],
|
||||
"alias": {
|
||||
"element-ui/src": "element-ui/lib"
|
||||
}
|
||||
}]
|
||||
]
|
||||
},
|
||||
"test": {
|
||||
"plugins": ["istanbul"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,8 +8,6 @@ function resolve (dir) {
|
||||
return path.join(__dirname, '..', dir)
|
||||
}
|
||||
|
||||
|
||||
|
||||
module.exports = {
|
||||
context: path.resolve(__dirname, '../'),
|
||||
entry: {
|
||||
@@ -25,8 +23,8 @@ module.exports = {
|
||||
resolve: {
|
||||
extensions: ['.js', '.vue', '.json'],
|
||||
alias: {
|
||||
'vue$': 'vue/dist/vue.esm.js',
|
||||
'@': resolve('src'),
|
||||
vue$: 'vue/dist/vue.esm.js',
|
||||
'@': resolve('src')
|
||||
}
|
||||
},
|
||||
module: {
|
||||
@@ -37,9 +35,22 @@ module.exports = {
|
||||
options: vueLoaderConfig
|
||||
},
|
||||
{
|
||||
test: /\.js$/,
|
||||
test: /\.(js)$/,
|
||||
loader: 'babel-loader',
|
||||
include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
|
||||
include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client'), resolve('node_modules/element-ui/packages/scrollbar')],
|
||||
exclude: '/node_modules/',
|
||||
options: {
|
||||
presets: [
|
||||
['env', {
|
||||
modules: false,
|
||||
targets: {
|
||||
browsers: ['> 1%', 'last 2 versions', 'not ie <= 8']
|
||||
}
|
||||
}],
|
||||
'stage-2'
|
||||
],
|
||||
plugins: ['transform-vue-jsx', 'transform-runtime']
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"autoprefixer": "^7.1.2",
|
||||
"babel-core": "^6.22.1",
|
||||
"babel-core": "^6.26.0",
|
||||
"babel-helper-vue-jsx-merge-props": "^2.0.3",
|
||||
"babel-loader": "^7.1.1",
|
||||
"babel-plugin-syntax-jsx": "^6.18.0",
|
||||
|
||||
@@ -85,3 +85,26 @@
|
||||
.orange-bg {
|
||||
background-color: var(--theme-color) !important;
|
||||
}
|
||||
.timezone-area{
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: auto;
|
||||
font-size: 14px;
|
||||
float: left;
|
||||
margin-left: 10px;
|
||||
font-family: PingFangSC-Regular;
|
||||
color: #333333;
|
||||
line-height: 20px;
|
||||
font-weight: 400;
|
||||
}
|
||||
.timezone-offset{
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
width: auto;
|
||||
font-size: 14px;
|
||||
margin-right: 10px;
|
||||
font-family: PingFangSC-Regular;
|
||||
color: #333333;
|
||||
line-height: 20px;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
@@ -674,7 +674,7 @@ export default {
|
||||
}
|
||||
if (!param.query) delete param.query
|
||||
// 根据panelId获得panel下的所有图表
|
||||
this.$get('visual/panel/chart?panelId=' + params.panelId + '&groupId=0').then(response => {
|
||||
this.$get('visual/panel/chart?panelId=' + params.panelId + '&pageSize=-1').then(response => {
|
||||
if (response.code === 200) {
|
||||
response.data.list.forEach((item, index) => {
|
||||
item.isLoaded = false
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
<!-- <time-picker ref="calendarPanel" class="nz-dashboard-picker" style="margin-top: -12px;" @change="dateChange" v-if="chart.type !='text'"></time-picker>-->
|
||||
<pick-time :refresh-data-func="dateChange" v-model="searchTime" :use-chart-unit="false" ref="pickTime" style="height: 28px;" id="chart-preview"></pick-time>
|
||||
<!--
|
||||
<el-date-picker ref="calendar" prefix-icon=" " size="mini" class="nz-preview-picker"
|
||||
<my-date-picker ref="calendar" prefix-icon=" " size="mini" class="nz-preview-picker"
|
||||
format="yyyy/MM/dd HH:mm"
|
||||
@change="dateChange"
|
||||
v-model="searchTime"
|
||||
@@ -70,7 +70,7 @@
|
||||
:start-placeholder="$t('dashboard.panel.startTime')"
|
||||
:end-placeholder="$t('dashboard.panel.endTime')"
|
||||
align="right">
|
||||
</el-date-picker>-->
|
||||
</my-date-picker>-->
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
</el-input>
|
||||
</div>
|
||||
<div class="margin-r-20 nz-btn-group nz-btn-group-size-small nz-btn-group-light">
|
||||
<button @click="changeTime(-10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-prepend" id="endpoint-query-changetime"><i class="el-icon-d-arrow-left"></i></button><el-date-picker
|
||||
<button @click="changeTime(-10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-prepend" id="endpoint-query-changetime"><i class="el-icon-d-arrow-left"></i></button><my-date-picker
|
||||
v-model="formatTime"
|
||||
type="datetime"
|
||||
size="mini"
|
||||
@@ -29,7 +29,7 @@
|
||||
placeholder="Moment"
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
>
|
||||
</el-date-picker><button @click="changeTime(10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-append"><i class="el-icon-d-arrow-right"></i></button>
|
||||
</my-date-picker><button @click="changeTime(10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-append"><i class="el-icon-d-arrow-right"></i></button>
|
||||
</div>
|
||||
<div class="nz-btn-group nz-btn-group-size-normal nz-btn-group-light" style="height: 24px;">
|
||||
<button class="nz-btn nz-btn-size-normal nz-btn-style-light" @click="viewGraph">
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
</el-input>
|
||||
</div>
|
||||
<div class="margin-r-20 nz-btn-group nz-btn-group-size-small nz-btn-group-light">
|
||||
<button @click="changeTime(-10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-prepend" id="endpoint-query-changetime"><i class="el-icon-d-arrow-left"></i></button><el-date-picker
|
||||
<button @click="changeTime(-10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-prepend" id="endpoint-query-changetime"><i class="el-icon-d-arrow-left"></i></button><my-date-picker
|
||||
v-model="formatTime"
|
||||
type="datetime"
|
||||
size="mini"
|
||||
@@ -43,7 +43,7 @@
|
||||
value-format="yyyy-MM-dd HH:mm:ss"
|
||||
@change="pickTime"
|
||||
>
|
||||
</el-date-picker><button @click="changeTime(10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-append"><i class="el-icon-d-arrow-right"></i></button>
|
||||
</my-date-picker><button @click="changeTime(10)" class="nz-btn nz-btn-size-normal nz-btn-style-light change-time-height nz-input-group-append"><i class="el-icon-d-arrow-right"></i></button>
|
||||
</div>
|
||||
<div class="nz-btn-group nz-btn-group-size-normal nz-btn-group-light" style="height: 24px;">
|
||||
<button class="nz-btn nz-btn-size-normal nz-btn-style-light" @click="viewGraph">
|
||||
|
||||
@@ -50,6 +50,7 @@
|
||||
|
||||
<script>
|
||||
import { mapActions } from 'vuex'
|
||||
import moment from 'moment-timezone'
|
||||
export default {
|
||||
name: 'login',
|
||||
data () {
|
||||
|
||||
@@ -116,11 +116,11 @@
|
||||
<!-- name="multiple-time-datepicker"-->
|
||||
<transition>
|
||||
<div v-show="showDropdown" id="panel-calender" class="calendar">
|
||||
<el-date-picker prefix-icon=" " size="mini" ref="calendar"
|
||||
<my-date-picker prefix-icon=" " size="mini" ref="calendar"
|
||||
format="yyyy/MM/dd HH:mm:ss" class="panel-time-picker-hidden" @change="dateChange" v-model="startTime" type="datetime"
|
||||
popper-class="panel-time-picker-popper"
|
||||
align="right">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
<!--
|
||||
<button type="button" style="border-radius: 1px 1px 1px 1px" @click="right()" v-show="isCustom"
|
||||
class="nz-btn nz-btn-size-normal nz-btn-style-light time-picker-button time-picker-right-button" >
|
||||
@@ -373,6 +373,7 @@ export default {
|
||||
} else {
|
||||
this.isCustom = true
|
||||
this.$refs.calendar.focus()
|
||||
this.$refs.calendar.pickerVisible = true
|
||||
}
|
||||
} else {
|
||||
this.isCustom = false
|
||||
|
||||
@@ -1,7 +1,14 @@
|
||||
import DatePicker from './src/picker/date-picker'
|
||||
|
||||
import localeEn from 'element-ui/lib/locale/lang/en'
|
||||
import localeCn from 'element-ui/lib/locale/lang/zh-CN'
|
||||
import { use } from 'element-ui/src/locale/'
|
||||
/* istanbul ignore next */
|
||||
DatePicker.install = function install (Vue) {
|
||||
if (localStorage.getItem('nz-language') === 'cn') {
|
||||
use(localeCn)
|
||||
} else {
|
||||
use(localeEn)
|
||||
}
|
||||
Vue.component(DatePicker.name, DatePicker)
|
||||
}
|
||||
|
||||
|
||||
@@ -54,11 +54,15 @@ const removeFromArray = function (arr, pred) {
|
||||
const idx = typeof pred === 'function' ? arrayFindIndex(arr, pred) : arr.indexOf(pred)
|
||||
return idx >= 0 ? [...arr.slice(0, idx), ...arr.slice(idx + 1)] : arr
|
||||
}
|
||||
|
||||
import moment from 'moment-timezone'
|
||||
export default {
|
||||
mixins: [Locale],
|
||||
|
||||
props: {
|
||||
timezone: {
|
||||
type: String,
|
||||
default: moment.tz.guess() // 没有传则使用本地的时区
|
||||
},
|
||||
firstDayOfWeek: {
|
||||
default: 7,
|
||||
type: Number,
|
||||
@@ -144,7 +148,7 @@ export default {
|
||||
const disabledDate = this.disabledDate
|
||||
const cellClassName = this.cellClassName
|
||||
const selectedDate = this.selectionMode === 'dates' ? coerceTruthyValueToArray(this.value) : []
|
||||
const now = getDateTimestamp(new Date())
|
||||
const now = getDateTimestamp(new Date( moment().tz(this.timezone).format('YYYY/MM/DD HH:mm:ss')))
|
||||
|
||||
for (let i = 0; i < 6; i++) {
|
||||
const row = rows[i]
|
||||
|
||||
@@ -111,6 +111,7 @@
|
||||
<div>{{ leftLabel }}</div>
|
||||
</div>
|
||||
<date-table
|
||||
:timezone="timezone"
|
||||
selection-mode="range"
|
||||
:date="leftDate"
|
||||
:default-value="defaultValue"
|
||||
@@ -151,6 +152,7 @@
|
||||
<div>{{ rightLabel }}</div>
|
||||
</div>
|
||||
<date-table
|
||||
:timezone="timezone"
|
||||
selection-mode="range"
|
||||
:date="rightDate"
|
||||
:default-value="defaultValue"
|
||||
@@ -167,13 +169,15 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="el-picker-panel__footer" v-if="showTime">
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
class="el-picker-panel__link-btn"
|
||||
@click="handleClear">
|
||||
{{ t('el.datepicker.clear') }}
|
||||
</el-button>
|
||||
<span class="timezone-area">{{timezone}}</span>
|
||||
<span class="timezone-offset">{{timezoneOffset}}</span>
|
||||
<!-- <el-button-->
|
||||
<!-- size="mini"-->
|
||||
<!-- type="text"-->
|
||||
<!-- class="el-picker-panel__link-btn"-->
|
||||
<!-- @click="handleClear">-->
|
||||
<!-- {{ t('el.datepicker.clear') }}-->
|
||||
<!-- </el-button>-->
|
||||
<el-button
|
||||
plain
|
||||
size="mini"
|
||||
|
||||
@@ -89,6 +89,7 @@
|
||||
|
||||
<div class="el-picker-panel__content">
|
||||
<date-table
|
||||
:timezone="timezone"
|
||||
v-show="currentView === 'date'"
|
||||
@pick="handleDatePick"
|
||||
:selection-mode="selectionMode"
|
||||
@@ -122,6 +123,8 @@
|
||||
<div
|
||||
class="el-picker-panel__footer"
|
||||
v-show="footerVisible && currentView === 'date'">
|
||||
<span class="timezone-area">{{timezone}}</span>
|
||||
<span class="timezone-offset">{{timezoneOffset}}</span>
|
||||
<el-button
|
||||
size="mini"
|
||||
type="text"
|
||||
|
||||
@@ -72,6 +72,10 @@
|
||||
</month-table>
|
||||
</div>
|
||||
</div>
|
||||
<div class="el-picker-panel__footer" v-if="showTime">
|
||||
<span class="timezone-area">{{timezone}}</span>
|
||||
<span class="timezone-offset">{{timezoneOffset}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</transition>
|
||||
|
||||
@@ -41,6 +41,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="el-time-panel__footer">
|
||||
<span class="timezone-area">{{timezone}}</span>
|
||||
<span class="timezone-offset">{{timezoneOffset}}</span>
|
||||
<button
|
||||
type="button"
|
||||
class="el-time-panel__btn cancel"
|
||||
|
||||
@@ -16,6 +16,8 @@
|
||||
</time-spinner>
|
||||
</div>
|
||||
<div class="el-time-panel__footer">
|
||||
<!-- <span class="timezone-area">{{timezone}}</span>-->
|
||||
<!-- <span class="timezone-offset">{{timezoneOffset}}</span>-->
|
||||
<button
|
||||
type="button"
|
||||
class="el-time-panel__btn cancel"
|
||||
|
||||
@@ -91,7 +91,7 @@ import Popper from 'element-ui/src/utils/vue-popper'
|
||||
import Emitter from 'element-ui/src/mixins/emitter'
|
||||
import ElInput from 'element-ui/packages/input'
|
||||
import merge from 'element-ui/src/utils/merge'
|
||||
|
||||
import moment from 'moment-timezone'
|
||||
const NewPopper = {
|
||||
props: {
|
||||
appendToBody: Popper.props.appendToBody,
|
||||
@@ -343,6 +343,10 @@ export default {
|
||||
},
|
||||
|
||||
props: {
|
||||
timezone: {
|
||||
type: String,
|
||||
default: localStorage.getItem('nz-sys-timezone') // 没有传则使用本地的时区
|
||||
},
|
||||
size: String,
|
||||
format: String,
|
||||
valueFormat: String,
|
||||
@@ -821,6 +825,12 @@ export default {
|
||||
},
|
||||
|
||||
mountPicker () {
|
||||
let tempFun = this.panel.data
|
||||
this.panel.data = () => {return {
|
||||
timezone: this.timezone, // add timezone to panel component
|
||||
timezoneOffset: moment.tz(this.timezone).format('Z'),
|
||||
...tempFun()
|
||||
}}
|
||||
this.picker = new Vue(this.panel).$mount()
|
||||
this.picker.defaultValue = this.defaultValue
|
||||
this.picker.defaultTime = this.defaultTime
|
||||
|
||||
@@ -15,7 +15,7 @@ const getPanel = function (type) {
|
||||
export default {
|
||||
mixins: [Picker],
|
||||
|
||||
name: 'ElDatePicker',
|
||||
name: 'myDatePicker',
|
||||
|
||||
props: {
|
||||
type: {
|
||||
|
||||
@@ -1692,7 +1692,6 @@ export default {
|
||||
responseType: 'arraybuffer'
|
||||
})
|
||||
.then(res => {
|
||||
console.log(res.data)
|
||||
return ('data:image/jpeg;base64,' + btoa(new Uint8Array(res.data).reduce((data, byte) => data + String.fromCharCode(byte), '')))
|
||||
})
|
||||
.then(data => {
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
<div class="datepicker">
|
||||
<div class="datepicker-box">
|
||||
<span class="datepicker-title">start time</span>
|
||||
<el-date-picker prefix-icon=" " class="panel-time-picker-hidden " size="mini" ref="calendar"
|
||||
<my-date-picker prefix-icon=" " class="panel-time-picker-hidden " size="mini" ref="calendar"
|
||||
format="yyyy/MM/dd HH:mm:ss" @change="(val)=>{dateChange(val,'startAt')}" v-model="editAlertSilence.startAt"
|
||||
:picker-options="optionsStartAt"
|
||||
type="datetime"
|
||||
@@ -44,11 +44,11 @@
|
||||
:placeholder="$t('dashboard.panel.startTime')"
|
||||
align="right"
|
||||
>
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</div>
|
||||
<div class="datepicker-box">
|
||||
<span class="datepicker-title">end time</span>
|
||||
<el-date-picker prefix-icon=" " class="panel-time-picker-hidden " size="mini" ref="calendar"
|
||||
<my-date-picker prefix-icon=" " class="panel-time-picker-hidden " size="mini" ref="calendar"
|
||||
format="yyyy/MM/dd HH:mm:ss" @change="(val)=>{dateChange(val,'endAt')}" v-model="editAlertSilence.endAt"
|
||||
:picker-options="optionsEndAt"
|
||||
type="datetime"
|
||||
@@ -57,7 +57,7 @@
|
||||
:placeholder="$t('dashboard.panel.startTime')"
|
||||
align="right"
|
||||
>
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</div>
|
||||
<!--( :range-separator="")-->
|
||||
</div>
|
||||
|
||||
@@ -125,17 +125,17 @@
|
||||
</template>
|
||||
<template v-else>
|
||||
<template v-if="label.interval">
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
id="asset-box-input-purchase-date"
|
||||
v-model="label.value[0]"
|
||||
:type="JSON.parse(label.param).subType === assetConstants.labelSubTypeData.date ? 'dateRange' : 'datetimerange'"
|
||||
placeholder=""
|
||||
size="small"
|
||||
style="width: 100%">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</template>
|
||||
<template v-else>
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
id="asset-box-input-parchase-date"
|
||||
v-model="label.value[0]"
|
||||
:type="JSON.parse(label.param).subType"
|
||||
@@ -143,7 +143,7 @@
|
||||
size="small"
|
||||
style="width: 100%"
|
||||
value-format="yyyy-MM-dd">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</template>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
@@ -62,7 +62,7 @@
|
||||
<el-input v-else v-model="lockLocationInputValue" disabled size="small"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('asset.purchaseDate')" prop="purchaseDate">
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
id="asset-box-input-parchase-date"
|
||||
v-model="editAsset.purchaseDate"
|
||||
placeholder=""
|
||||
@@ -70,7 +70,7 @@
|
||||
style="width: 100%"
|
||||
type="date"
|
||||
value-format="yyyy-MM-dd">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</el-form-item>
|
||||
<!-- labels -->
|
||||
<div class="form__sub-title">{{$t('overall.labels')}}</div>
|
||||
@@ -128,17 +128,17 @@
|
||||
</template>
|
||||
<template v-else>
|
||||
<template v-if="label.interval">
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
id="asset-box-input-purchase-date"
|
||||
v-model="label.value[0]"
|
||||
:type="JSON.parse(label.param).subType === assetConstants.labelSubTypeData.date ? 'dateRange' : 'datetimerange'"
|
||||
placeholder=""
|
||||
size="small"
|
||||
style="width: 100%">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</template>
|
||||
<template v-else>
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
id="asset-box-input-parchase-date"
|
||||
v-model="label.value[0]"
|
||||
:type="JSON.parse(label.param).subType"
|
||||
@@ -146,7 +146,7 @@
|
||||
size="small"
|
||||
style="width: 100%"
|
||||
value-format="yyyy-MM-dd">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</template>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('asset.purchaseDate')">
|
||||
<div class="select-style">
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
id="asset-box-input-parchase-date"
|
||||
size="small"
|
||||
v-model="editAsset.purchaseDate"
|
||||
@@ -74,7 +74,7 @@
|
||||
type="date"
|
||||
style="width: 100%"
|
||||
placeholder="">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('asset.location')" class="required-marker" prop="locationInfo" :rules="[{validator:locationValidator, trigger:'blur'}]">
|
||||
|
||||
@@ -162,7 +162,7 @@
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
v-model="timeFrame"
|
||||
type="datetimerange"
|
||||
range-separator="To"
|
||||
@@ -172,7 +172,7 @@
|
||||
:class="dataBackG?'':'dataBackG'"
|
||||
v-if="ind==sreach_num&&val.id==7"
|
||||
>
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</li>
|
||||
<!-- 最开始的input框-->
|
||||
<li class="select_input" v-if="change_sreach_show">
|
||||
|
||||
@@ -88,13 +88,13 @@
|
||||
</style>
|
||||
<template>
|
||||
<div id="panel-calender" :class="{'calendar--small': size === 'small'}" class="calendar">
|
||||
<el-date-picker prefix-icon=" " class="panel-time-picker-hidden " size="mini" ref="calendar"
|
||||
<my-date-picker prefix-icon=" " class="panel-time-picker-hidden " size="mini" ref="calendar"
|
||||
format="yyyy/MM/dd HH:mm:ss" @change="dateChange" v-model="searchTime" type="datetimerange"
|
||||
popper-class="panel-time-picker-popper"
|
||||
:range-separator="$t('dashboard.panel.to')"
|
||||
:start-placeholder="$t('dashboard.panel.startTime')"
|
||||
:end-placeholder="$t('dashboard.panel.endTime')" align="right">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
<!--
|
||||
<button type="button" style="border-radius: 1px 1px 1px 1px" @click="right()" v-show="isCustom"
|
||||
class="nz-btn nz-btn-size-normal nz-btn-style-light time-picker-button time-picker-right-button" >
|
||||
@@ -335,6 +335,8 @@ export default {
|
||||
} else {
|
||||
this.isCustom = true
|
||||
this.$refs.calendar.focus()
|
||||
this.$refs.calendar.pickerVisible = true
|
||||
console.log(this.$refs.calendar)
|
||||
}
|
||||
} else {
|
||||
this.isCustom = false
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
</div>
|
||||
<div v-else-if="type==='datetime'">
|
||||
<div v-if="param.subType==='date'">
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
size="small"
|
||||
:type="param.interval?'daterange':'date'"
|
||||
:range-separator="$t('dashboard.panel.to')"
|
||||
@@ -54,7 +54,7 @@
|
||||
:start-placeholder="$t('dashboard.panel.startTime')"
|
||||
:end-placeholder="$t('dashboard.panel.endTime')"
|
||||
>
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</div>
|
||||
<div v-if="param.subType==='time'">
|
||||
<el-time-picker
|
||||
@@ -68,14 +68,14 @@
|
||||
</el-time-picker>
|
||||
</div>
|
||||
<div v-if="param.subType==='datetime'">
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
size="small"
|
||||
:type="param.interval?'datetimerange':'datetime'"
|
||||
:range-separator="$t('dashboard.panel.to')"
|
||||
:placeholder="$t('alert.silence.selectTime')"
|
||||
:start-placeholder="$t('dashboard.panel.startTime')"
|
||||
:end-placeholder="$t('dashboard.panel.endTime')">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</div>
|
||||
</div>
|
||||
<div v-else-if="type==='email'" :class="emailError?'emailError':''">
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
</template>
|
||||
<template v-if="item.prop == 'expireAt'">
|
||||
<!-- <el-popover :content="rules.expireAt.message" placement="top" trigger="manual" v-model="rules.expireAt.switch" popper-class="small-pop warn-pop" @after-enter="popShow(rules.expireAt)">-->
|
||||
<el-date-picker
|
||||
<my-date-picker
|
||||
slot="reference"
|
||||
style="width: 100%;"
|
||||
v-model="scope.row[item.prop]"
|
||||
@@ -60,7 +60,7 @@
|
||||
type="datetime"
|
||||
:picker-options="pickerOptions"
|
||||
:placeholder="$t('el.datepicker.selectTime')">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
<!-- </el-popover>-->
|
||||
</template>
|
||||
</template>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
<!--<div class="top-tools">
|
||||
<div class="float-right mr-10">
|
||||
<el-date-picker size="mini" ref="calendar"
|
||||
<my-date-picker size="mini" ref="calendar"
|
||||
format="yyyy/MM/dd HH:mm"
|
||||
@change="dateChange"
|
||||
v-model="searchTime"
|
||||
@@ -27,7 +27,7 @@
|
||||
:start-placeholder="$t('dashboard.panel.startTime')"
|
||||
:end-placeholder="$t('dashboard.panel.endTime')"
|
||||
align="right">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
</div>
|
||||
</div>-->
|
||||
<div class="table-list" >
|
||||
@@ -38,7 +38,7 @@
|
||||
</el-col>
|
||||
<el-col :span="0.5" ><div> </div></el-col>
|
||||
<el-col :span="13" class="chart-preview-area" >
|
||||
<el-date-picker size="mini" ref="calendar"
|
||||
<my-date-picker size="mini" ref="calendar"
|
||||
format="yyyy/MM/dd HH:mm"
|
||||
@change="dateChange"
|
||||
v-model="searchTime"
|
||||
@@ -49,7 +49,7 @@
|
||||
:end-placeholder="$t('dashboard.panel.endTime')"
|
||||
style="position:absolute; right: 10px"
|
||||
align="right">
|
||||
</el-date-picker>
|
||||
</my-date-picker>
|
||||
<el-row class="border-area" v-show="chartCount === 'single'" style="margin-top: 40px;">
|
||||
<div class="chartBox">
|
||||
<line-chart-block
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
</template>
|
||||
<template v-slot:after>
|
||||
<el-dropdown-item v-has="'panel_chart_add'">
|
||||
<div id="chart-temp-add" @click="addChartByTemp"><i class="nz-icon nz-icon-download1"></i>Add template</div>
|
||||
<div id="chart-temp-add" @click="addChartByTemp"><i class="nz-icon nz-icon-download1"></i>Add by template</div>
|
||||
</el-dropdown-item>
|
||||
</template>
|
||||
</top-tool-more-options>
|
||||
|
||||
@@ -31,15 +31,16 @@ import loading from '@/components/common/loading'
|
||||
import pickTime from '@/components/common/pickTime'
|
||||
import bus from '@/libs/bus'
|
||||
import theme from '@/assets/css/theme.scss'
|
||||
|
||||
import myDatePicker from '@/components/common/myDatePicker'
|
||||
import vSelectPage from 'v-selectpage'
|
||||
Vue.use(vSelectPage)
|
||||
|
||||
Vue.use(myDatePicker)
|
||||
Vue.component('Pagination', Pagination)
|
||||
Vue.component('searchInput', searchInput)
|
||||
Vue.component('element-set', elementSet)
|
||||
Vue.component('loading', loading)
|
||||
Vue.component('pick-time', pickTime)
|
||||
Vue.component('myDatePicker', myDatePicker)
|
||||
|
||||
Vue.prototype.$axios = axios
|
||||
Vue.prototype.$post = post
|
||||
|
||||
@@ -2,6 +2,7 @@ import { post } from '../http'
|
||||
import router from '../router'
|
||||
import bus from '../libs/bus'
|
||||
import { sortByOrderNum } from '../permission'
|
||||
import moment from 'moment-timezone'
|
||||
|
||||
const user = {
|
||||
state: {
|
||||
@@ -44,6 +45,7 @@ const user = {
|
||||
localStorage.setItem('nz-sys-logo', res.data.systemLogo)
|
||||
}
|
||||
localStorage.setItem('nz-sys-timezone', res.data.timezone)
|
||||
localStorage.setItem('timezoneOffset', moment.tz(res.data.timezone).format('Z'))
|
||||
localStorage.setItem('nz-sys-default-cabinet-usize', res.data.defaultCabinetUsize)
|
||||
localStorage.setItem('nz-sys-max-terminal-num', res.data.maxTerminalNum)
|
||||
localStorage.setItem('nz-sys-asset-ping-switch', res.data.assetPingSwitch)
|
||||
|
||||
Reference in New Issue
Block a user