Commit e4cbf561 authored by 王康's avatar 王康

Merge branch 'master' of 115.28.80.125:softwarefactory/vueelementtemplate

parents 4dc29959 076db7c6
...@@ -228,6 +228,9 @@ ...@@ -228,6 +228,9 @@
* date:12212220000,//日期时间戳 * date:12212220000,//日期时间戳
* title:'xxxxxx',//行程标题 * title:'xxxxxx',//行程标题
* //更多其他字段,随意,事件发生时将全部回传。 * //更多其他字段,随意,事件发生时将全部回传。
* event:[{
*
* }]
* }, * },
* { * {
* date:12242220000,//日期时间戳 * date:12242220000,//日期时间戳
...@@ -240,7 +243,9 @@ ...@@ -240,7 +243,9 @@
*dateChange事件:用户点击一个带有日程安排的日期时触发(重复点击同一日期仅触发一次),将返回该日程数据; *dateChange事件:用户点击一个带有日程安排的日期时触发(重复点击同一日期仅触发一次),将返回该日程数据;
*monthChange事件,切换月份时触发,刷新日历显示,并传回当前月份的数组,包含该月第一天的0:0:0 和 该月最后一天的23:59:59 的时间戳,例如,7月,返回 [1498838400000,1501516799000] ,对应:Sat Jul 01 2017 00:00:00 GMT+0800 (中国标准时间) 和 Mon Jul 31 2017 23:59:59 GMT+0800 (中国标准时间) *monthChange事件,切换月份时触发,刷新日历显示,并传回当前月份的数组,包含该月第一天的0:0:0 和 该月最后一天的23:59:59 的时间戳,例如,7月,返回 [1498838400000,1501516799000] ,对应:Sat Jul 01 2017 00:00:00 GMT+0800 (中国标准时间) 和 Mon Jul 31 2017 23:59:59 GMT+0800 (中国标准时间)
*/ */
// import request from '@/utils/request' import request from '@/utils/request'
import _ from 'lodash'
import moment from 'moment'
export default{ export default{
data() { data() {
return { return {
...@@ -250,7 +255,8 @@ ...@@ -250,7 +255,8 @@
dialogTableVisible: false, dialogTableVisible: false,
show: false, show: false,
currentDate: '', currentDate: '',
event: '' event: '',
schedules: []
} }
}, },
props: { props: {
...@@ -265,8 +271,13 @@ ...@@ -265,8 +271,13 @@
initTime: { initTime: {
required: false required: false
}, },
schedules: { title: {
type: Array, required: false
},
events: {
required: false
},
date: {
required: false required: false
} }
}, },
...@@ -386,7 +397,7 @@ ...@@ -386,7 +397,7 @@
}, },
dateChange(dateItem) { dateChange(dateItem) {
this.show = true this.show = true
// console.log(dateItem) console.log(dateItem, '-=-=-=-=-=-=-=-=-')
var dateObj = new Date(this.showTimeData) var dateObj = new Date(this.showTimeData)
var year = dateObj.getFullYear() var year = dateObj.getFullYear()
var month = dateObj.getMonth() var month = dateObj.getMonth()
...@@ -398,10 +409,10 @@ ...@@ -398,10 +409,10 @@
schedule: dateItem.schedule schedule: dateItem.schedule
} }
if (!dateItem.schedule) { // 点击没有行程的,不作反应 if (!dateItem.schedule) { // 点击没有行程的,不作反应
console.log(result) // console.log(result,'-=-=-=-=')
if (result.schedule) { if (result.schedule) {
const currentTime = this.timestampToTime(result.schedule.date) const currentTime = this.timestampToTime(result.schedule.date)
console.log(currentTime) // console.log(currentTime)
this.currentDate = currentTime this.currentDate = currentTime
this.event = result.schedule.title this.event = result.schedule.title
} }
...@@ -435,12 +446,12 @@ ...@@ -435,12 +446,12 @@
dateItem.active = !dateItem.active dateItem.active = !dateItem.active
} }
// 向上发送本次点击的行程数据 // 向上发送本次点击的行程数据
console.log(result) console.log(result, '--------------------')
if (result.schedule) { if (result.schedule) {
const currentTime = this.timestampToTime(result.schedule.date) const currentTime = this.timestampToTime(result.schedule.date)
console.log(currentTime) console.log(currentTime)
this.currentDate = currentTime this.currentDate = currentTime
this.event = result.schedule.title this.event = result.schedule.event
} }
// this.$emit('dateChange', result) // this.$emit('dateChange', result)
} else { // 已激活行程提示的,不作反应 } else { // 已激活行程提示的,不作反应
...@@ -473,7 +484,29 @@ ...@@ -473,7 +484,29 @@
}, },
getDailyEvent() { getDailyEvent() {
const self = this const self = this
console.log(self.schema) var saveTime = ''
request(self.schema.modelUnderscorePlural, {
params: { 'sortItem': 'create_time', 'pageSize': 10000 }
}).then(resp => {
console.log(resp.data, '=========')
_.each(resp.data, function(item) {
item.time = moment(item[self.date]).format('YYYY-MM-DD')
item.date = moment(item[self.date]).format('X') * 1000
item.title = item[self.title]
item.allEvents = item[self.events]
if (saveTime === item.time) {
self.schedules[self.schedules.length - 1].allEvents.push(item.allEvents)
} else {
saveTime = item.time
self.schedules.push({
date: item.date,
title: item.title,
allEvents: [item.allEvents]
})
}
})
})
console.log(self.schedules, '+++++最终+++++++++')
} }
}, },
created() { created() {
......
...@@ -2,8 +2,10 @@ ...@@ -2,8 +2,10 @@
<div class="app-container calendar-list-container"> <div class="app-container calendar-list-container">
<hm-full-calendar <hm-full-calendar
:width="width" :width="width"
:schedules="schedules"
:schema="schema['HmUser']" :schema="schema['HmUser']"
:title="title"
:events="events"
:date="date"
@dateChange="datechange" @dateChange="datechange"
@monthChange="monthchange" @monthChange="monthchange"
></hm-full-calendar> ></hm-full-calendar>
...@@ -25,7 +27,10 @@ ...@@ -25,7 +27,10 @@
return { return {
show: false, show: false,
width: '300px', width: '300px',
schedules: [{ date: 1524043625000, title: '个梵蒂是的舞蹈服可接受的看似简单计算的话束带结发会计师对海口市记得回复是框架的看就好山东矿机会计师发送的甲方是看得见看见的说法开始冈地方' }, { date: 1523955299000, title: '个梵蒂冈地方' }] // title为需要传入的事件名所对应的的字段名,date为时间所对应的字段,events为事件所对应的字段,都不是必传
title: 'loginid',
date: 'createTime',
events: 'email'
} }
}, },
filters: { filters: {
......
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
<el-button v-if="operate.type == 'button'" :style="operate.style" class="filter-item" type="primary" v-waves :icon="operate.icon" @click="operate.func">{{operate.label}}</el-button> <el-button v-if="operate.type == 'button'" :style="operate.style" class="filter-item" type="primary" v-waves :icon="operate.icon" @click="operate.func">{{operate.label}}</el-button>
<!--自定义下拉选择--> <!--自定义下拉选择-->
<el-form-item v-if="operate.type == 'select'" :label="operate.label"> <el-form-item v-if="operate.type == 'select'" :label="operate.label">
<el-select v-model="operate.value" :placeholder="operate.placeholder" clearable> <el-select v-model="operate.value" :placeholder="operate.placeholder" @change="selectChange(operate.func, operate.value)" clearable>
<el-option v-for="o in operate.options" :label="o.label" :value="o.code"></el-option> <el-option v-for="o in operate.options" :label="o.label" :value="o.code"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -272,7 +272,7 @@ ...@@ -272,7 +272,7 @@
console.warn(`传入的columns不符合要求,必须是数组`) console.warn(`传入的columns不符合要求,必须是数组`)
return false return false
} }
return true return true
} }
}, },
...@@ -399,12 +399,12 @@ ...@@ -399,12 +399,12 @@
}, },
showOverflowTooltip: false, // 设置当内容过长被隐藏时显示 tooltip showOverflowTooltip: false, // 设置当内容过长被隐藏时显示 tooltip
HmFullCalendar: {}, // HmFullCalendar: {}, //
isShowRefresh: false, isShowRefresh: false,
buttonGroup: false, buttonGroup: false,
operationWidth: 0, // 操作栏的宽度 operationWidth: 0, // 操作栏的宽度
isShowDetail: false, // 是否显示详情按钮 isShowDetail: false, // 是否显示详情按钮
definedOperate: [], // 自定义操作 definedOperate: [], // 自定义操作
definedOperation: [] definedOperation: []
} }
...@@ -416,18 +416,18 @@ ...@@ -416,18 +416,18 @@
if (!ret) { if (!ret) {
return ret return ret
} }
if (!ret[self.schema['modelUnderscore']]) { if (!ret[self.schema['modelUnderscore']]) {
return ret return ret
} }
_.each(Object.keys(ret[self.schema['modelUnderscore']]), function(column) { _.each(Object.keys(ret[self.schema['modelUnderscore']]), function(column) {
const operValue = ret[self.schema['modelUnderscore']][column] const operValue = ret[self.schema['modelUnderscore']][column]
if (Object.keys(operValue)[0] === 'like') { if (Object.keys(operValue)[0] === 'like') {
ret[self.schema['modelUnderscore']][column]['like'] = '%' + ret[self.schema['modelUnderscore']][column]['like'] + '%' ret[self.schema['modelUnderscore']][column]['like'] = '%' + ret[self.schema['modelUnderscore']][column]['like'] + '%'
} }
}) })
return ret return ret
} }
}, },
...@@ -457,7 +457,7 @@ ...@@ -457,7 +457,7 @@
if (!item) { if (!item) {
return 0 return 0
} }
if (typeof item !== 'string' && typeof item !== 'object') { if (typeof item !== 'string' && typeof item !== 'object') {
console.error(`传入的columns不符合要求,数组元素必须是字符串或对象`) console.error(`传入的columns不符合要求,数组元素必须是字符串或对象`)
} }
...@@ -469,7 +469,7 @@ ...@@ -469,7 +469,7 @@
} }
}) })
}, },
init() { init() {
const self = this const self = this
self.operationWidth = 0 self.operationWidth = 0
...@@ -498,7 +498,7 @@ ...@@ -498,7 +498,7 @@
item.isSort = item.isSort === undefined ? false : item.isSort === true ? 'custom' : false item.isSort = item.isSort === undefined ? false : item.isSort === true ? 'custom' : false
}) })
} }
// 处理过滤条件 // 处理过滤条件
if (self.filters) { if (self.filters) {
const tableName = self.schema['modelUnderscore'] const tableName = self.schema['modelUnderscore']
...@@ -523,7 +523,7 @@ ...@@ -523,7 +523,7 @@
if (self.userDefined) { if (self.userDefined) {
self.setDefinedOperate() self.setDefinedOperate()
} }
console.log(request.defaults) console.log(request.defaults)
console.log(`request.defaults.baseURL: ${request.defaults.baseURL}`) console.log(`request.defaults.baseURL: ${request.defaults.baseURL}`)
}, },
...@@ -538,6 +538,12 @@ ...@@ -538,6 +538,12 @@
self.definedOperation = self.userDefined.definedOperation self.definedOperation = self.userDefined.definedOperation
} }
}, },
// 自定义下拉选择执行函数
selectChange(func, value) {
if (typeof (func) === 'function') {
return func(value)
}
},
// 排序 // 排序
sortChange(row) { sortChange(row) {
this.listQuery.sortItem = row.prop.replace(/([A-Z])/g, '_$1').toLowerCase() this.listQuery.sortItem = row.prop.replace(/([A-Z])/g, '_$1').toLowerCase()
...@@ -547,23 +553,23 @@ ...@@ -547,23 +553,23 @@
getList() { getList() {
const self = this const self = this
self.listLoading = true self.listLoading = true
// 处理过滤条件 // 处理过滤条件
let params = JSON.parse(JSON.stringify(self.listQuery)) let params = JSON.parse(JSON.stringify(self.listQuery))
params.filters = self.filterParams params.filters = self.filterParams
params.filters = this.deleteFilter(params.filters) params.filters = this.deleteFilter(params.filters)
if (self.includes) { if (self.includes) {
params.includes = self.includes params.includes = self.includes
} }
if (self.refers) { if (self.refers) {
params.refers = self.refers params.refers = self.refers
} }
if (self.userDefined && self.userDefined.definedParams) { if (self.userDefined && self.userDefined.definedParams) {
params = self.userDefined.definedParams(params, self.definedOperate) params = self.userDefined.definedParams(params, self.definedOperate)
} }
request(self.schema.modelUnderscorePlural, { request(self.schema.modelUnderscorePlural, {
params: params params: params
}).then(resp => { }).then(resp => {
...@@ -695,7 +701,7 @@ ...@@ -695,7 +701,7 @@
} }
if (type === 'detail') { if (type === 'detail') {
self.dialogName = '详情' self.dialogName = '详情'
if (self.options.showDetail.showUserButtons) { if (self.options.showDetail.showUserButtons) {
self.HmComplexForm.showUserButtons = self.options.showDetail.showUserButtons self.HmComplexForm.showUserButtons = self.options.showDetail.showUserButtons
} }
...@@ -710,7 +716,7 @@ ...@@ -710,7 +716,7 @@
self.options.showDetail.formRelates ? self.HmComplexForm.formRelates = self.options.showDetail.formRelates : '' self.options.showDetail.formRelates ? self.HmComplexForm.formRelates = self.options.showDetail.formRelates : ''
self.HmComplexForm.tableId = data.id self.HmComplexForm.tableId = data.id
} }
self.dialogFormVisible = true self.dialogFormVisible = true
}, },
statusFunc(row, operation) { statusFunc(row, operation) {
...@@ -758,7 +764,7 @@ ...@@ -758,7 +764,7 @@
filters: {} filters: {}
} }
this.init() this.init()
this.getList() this.getList()
}, },
// 批量删除 // 批量删除
...@@ -906,7 +912,7 @@ ...@@ -906,7 +912,7 @@
} }
})) }))
}, },
getFilterColumn(filter) { getFilterColumn(filter) {
const keys = Object.keys(filter) const keys = Object.keys(filter)
let column = null let column = null
......
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