Commit 7cfb5054 authored by 杨柠瑞's avatar 杨柠瑞

issues26、30

parent 544dd777
......@@ -8,9 +8,43 @@
style="width: 200px;"
class="filter-item"
:placeholder="filter.placeholder"
v-if="filter.isShow"
v-if="filter.isShow && isShowFilter(filter)"
v-model="listQuery.filters[schema['modelUnderscore']][getFilterColumn(filter)][getFilterOper(filter)]">
</el-input>
<el-input @keyup.enter.native="handleFilter"
style="width: 200px;"
class="filter-item"
:placeholder="filter.placeholder[0]"
v-if="filter.isShow && !isShowFilter(filter) && !isDatetimeFilter(filter)"
v-model="listQuery.filters[schema['modelUnderscore']][getFilterColumn(filter)][getFilterOper(filter)]">
</el-input>
<el-input @keyup.enter.native="handleFilter"
style="width: 200px;"
class="filter-item"
:placeholder="filter.placeholder[1]"
v-if="filter.isShow && !isShowFilter(filter) && !isDatetimeFilter(filter)"
v-model="listQuery.filters[schema['modelUnderscore']][getFilterColumn(filter)][getFilterOperTwin(filter)]">
</el-input>
<el-date-picker @keyup.enter.native="handleFilter"
v-if="filter.isShow && !isShowFilter(filter) && isDatetimeFilter(filter)"
v-model="listQuery.filters[schema['modelUnderscore']][getFilterColumn(filter)][getFilterOper(filter)]"
type="datetime"
align="right"
class="filter-item"
value-format="yyyy-MM-dd HH:mm:ss"
:picker-options="pickerOptions">
</el-date-picker>
<el-date-picker @keyup.enter.native="handleFilter"
v-if="filter.isShow && !isShowFilter(filter) && isDatetimeFilter(filter)"
v-model="listQuery.filters[schema['modelUnderscore']][getFilterColumn(filter)][getFilterOperTwin(filter)]"
type="datetime"
align="right"
class="filter-item"
value-format="yyyy-MM-dd HH:mm:ss"
:picker-options="pickerOptions">
</el-date-picker>
</span>
<!-- end 过滤条件 -->
......@@ -286,7 +320,33 @@
isShowRefresh: false,
buttonGroup: false,
operationWidth: 0, // 操作栏的宽度
isShowDetail: false // 是否显示详情按钮
isShowDetail: false, // 是否显示详情按钮
pickerOptions: { // 日期选项配置
disabledDate(time) {
return time.getTime() > Date.now()
},
shortcuts: [{
text: '今天',
onClick(picker) {
picker.$emit('pick', new Date())
}
}, {
text: '昨天',
onClick(picker) {
const date = new Date()
date.setTime(date.getTime() - 3600 * 1000 * 24)
picker.$emit('pick', date)
}
}, {
text: '一周前',
onClick(picker) {
const date = new Date()
date.setTime(date.getTime() - 3600 * 1000 * 24 * 7)
picker.$emit('pick', date)
}
}]
}
}
},
computed: {
......@@ -435,7 +495,7 @@
if (self.options.changeValue) {
resp.data = self.changeValue(resp.data)
}
if (resp.data[0].superior !== undefined && resp.data[0].includes !== undefined &&
if (resp.data.length !== 0 && resp.data[0].superior !== undefined && resp.data[0].includes !== undefined &&
resp.data[0].refers !== undefined && resp.data[0].relates !== undefined) {
self.list = []
_.each(resp.data, function(item, index) {
......@@ -465,6 +525,19 @@
})
return data
},
isShowFilter(filter) {
return Array.prototype.isPrototypeOf(filter.placeholder) === false
},
isDatetimeFilter(filter) {
const self = this
let BooleanValue = false
_.each(self.schema.columns, function(date) {
if (date.code === self.getFilterColumn(filter) && date.dataType === 'datetime') {
BooleanValue = true
}
})
return BooleanValue
},
// 添加一条数据
openDialog(type, data) {
const self = this
......@@ -517,7 +590,7 @@
_.forEach(newFilters, function(columns, columnsKey) {
_.forEach(newFilters[columnsKey], function(column, columnKey) {
if (columns[columnKey][Object.keys(column)] === '%%' || columns[columnKey][Object.keys(column)] === '' ||
columns[columnKey][Object.keys(column)] === null) {
columns[columnKey][Object.keys(column)] === null || (columns[columnKey][Object.keys(column)[0]] === '' && columns[columnKey][Object.keys(column)[1]]) === '') {
delete (columns[columnKey])
}
})
......@@ -657,6 +730,9 @@
getFilterOper(filter) {
return Object.keys(filter[this.getFilterColumn(filter)])[0]
},
getFilterOperTwin(filter) {
return Object.keys(filter[this.getFilterColumn(filter)])[1]
}
}
}
......
......@@ -12,7 +12,6 @@
<script>
import HmComplexTable from './HmComplexTable.vue'
import schema from '../../schemas/hm_org_schema'
import _ from 'lodash'
export default {
name: 'HmComplexTableIndex',
......@@ -24,10 +23,11 @@
},
data() {
return {
showUserColumns: ['mobile', 'loginid', 'username', 'email'],
showUserColumns: ['mobile', 'loginid', 'username', 'email', 'createTime'],
userFilters: [
{ placeholder: '过滤手机号', 'mobile': { 'like': '' }, isShow: true },
{ placeholder: '过滤用户名', 'username': { 'equalTo': '' }, isShow: true }
{ placeholder: '过滤用户名', 'username': { 'equalTo': '' }, isShow: true },
{ placeholder: ['安全级别大于', '安全级别小于'], 'create_time': { 'greaterThanOrEqualTo': '', 'lessThanOrEqualTo': '' }, isShow: true }
],
userIncludes: {
'hm_user': {
......@@ -80,19 +80,8 @@
showDetail: {
isShow: true,
showColumns: ['mobile', 'loginid', 'username', 'email']
},
dataProcessing(value) {
let list = []
if (value[0].superior !== undefined && value[0].includes !== undefined &&
value[0].refers !== undefined && value[0].relates !== undefined) {
_.each(value, function(item, index) {
list.push(item.superior)
})
} else {
list = value
}
return list
}
// dataProcessing(value) {}
}
},
methods: {}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment