JeecgBoot低代码平台 3.0版本发布—新里程牌开始,迎接VUE3版本到来!!

This commit is contained in:
zhangdaiscott
2021-10-27 10:26:33 +08:00
parent 75be8dd5b1
commit 9760185bf6
31 changed files with 449 additions and 568 deletions

View File

@ -16,6 +16,8 @@
:multi="multi"
:rootOpened="rootOpened"
:depart-id="departIds"
:store="storeField()"
:text="textField()"
@ok="handleOK"
@initComp="initComp"/>
<span style="display: inline-block;height:100%;padding-left:14px" v-if="departIds" >
@ -68,7 +70,7 @@
}
},
multi(){
if(this.cellProps.multi==false){
if(this.cellProps.multi==false || this.originColumn.multi===false){
return false
}else{
return true
@ -101,15 +103,17 @@
handleEmpty(){
this.handleOK('')
},
handleOK(rows, idstr) {
handleOK(rows) {
let value = ''
if (!rows && rows.length <= 0) {
this.departNames = ''
this.departIds = ''
} else {
value = rows.map(row => row[this.customReturnField]).join(',')
this.departNames = rows.map(row => row['departName']).join(',')
this.departIds = idstr
let storeField = this.storeField();
let textField = this.textField();
value = rows.map(row => row[storeField]).join(',')
this.departNames = rows.map(row => row[textField]).join(',')
this.departIds = value
}
this.handleChangeCommon(this.departIds)
},
@ -118,6 +122,34 @@
},
handleChange(value) {
this.handleChangeCommon(value)
},
storeField(){
if(this.originColumn){
const str = this.originColumn.fieldExtendJson
if(str){
let json = JSON.parse(str)
if(json && json.store){
return json.store
}
}else if(this.originColumn.store){
return this.originColumn.store
}
}
return 'id'
},
textField(){
if(this.originColumn){
const str = this.originColumn.fieldExtendJson
if(str){
let json = JSON.parse(str)
if(json && json.text){
return json.text
}
}else if(this.originColumn.text){
return this.originColumn.text
}
}
return 'departName'
}
},
enhanced: {

View File

@ -94,7 +94,6 @@
methods: {
handleChange(value) {
debugger
// 处理下级联动
let linkage = this.renderOptions.linkage
if (linkage) {

View File

@ -0,0 +1,57 @@
<template>
<a-time-picker
ref="timePicker"
:value="innerDateValue"
allowClear
dropdownClassName="j-vxe-date-picker"
style="min-width: 0;"
v-bind="cellProps"
@change="handleChange"
/>
</template>
<script>
import moment from 'moment'
import JVxeCellMixins, { dispatchEvent } from '@/components/jeecg/JVxeTable/mixins/JVxeCellMixins'
export default {
name: 'JVxeTimeCell',
mixins: [JVxeCellMixins],
props: {},
data() {
return {
innerDateValue: null,
dateFormat: 'HH:mm:ss'
}
},
watch: {
innerValue: {
immediate: true,
handler(val) {
if (val == null || val === '') {
this.innerDateValue = null
} else {
this.innerDateValue = moment(val, this.dateFormat)
}
}
}
},
methods: {
handleChange(mom, dateStr) {
this.handleChangeCommon(dateStr)
}
},
// 【组件增强】注释详见JVxeCellMixins.js
enhanced: {
aopEvents: {
editActived(event) {
dispatchEvent.call(this, event, 'ant-calendar-picker', el => el.children[0].dispatchEvent(event.$event))
},
},
}
}
</script>
<style scoped>
</style>

View File

@ -16,6 +16,8 @@
:multi="multi"
:user-ids="userIds"
@ok="selectOK"
:store="storeField"
:text="textField"
@initComp="initComp"/>
<span style="display: inline-block;height:100%;padding-left:14px" v-if="userIds" >
<span @click="openSelect" style="display: inline-block;vertical-align: middle">{{ userNames }}</span>
@ -77,6 +79,30 @@
}else{
return true
}
},
storeField(){
if(this.originColumn){
const str = this.originColumn.fieldExtendJson
if(str){
let json = JSON.parse(str)
if(json && json.store){
return json.store
}
}
}
return 'username'
},
textField(){
if(this.originColumn){
const str = this.originColumn.fieldExtendJson
if(str){
let json = JSON.parse(str)
if(json && json.text){
return json.text
}
}
}
return 'realname'
}
},
watch: {
@ -102,12 +128,8 @@
this.userNames = ''
this.userIds = ''
} else {
let temp = ''
for (let item of rows) {
temp += ',' + item.realname
}
this.userNames = temp.substring(1)
this.userIds = idstr
this.userIds = rows.map(row => row[this.storeField]).join(',')
this.userNames = rows.map(row => row[this.textField]).join(',')
}
this.handleChangeCommon(this.userIds)
},

View File

@ -6,6 +6,7 @@ import JVxeSlotCell from './components/cells/JVxeSlotCell'
import JVxeNormalCell from './components/cells/JVxeNormalCell'
import JVxeInputCell from './components/cells/JVxeInputCell'
import JVxeDateCell from './components/cells/JVxeDateCell'
import JVxeTimeCell from './components/cells/JVxeTimeCell'
import JVxeSelectCell from './components/cells/JVxeSelectCell'
import JVxeCheckboxCell from './components/cells/JVxeCheckboxCell'
import JVxeUploadCell from './components/cells/JVxeUploadCell'
@ -32,6 +33,7 @@ export const AllCells = {
...mapCell(JVXETypes.selectMultiple, JVxeSelectCell), // 下拉多选
...mapCell(JVXETypes.date, JVxeDateCell),
...mapCell(JVXETypes.datetime, JVxeDateCell),
...mapCell(JVXETypes.time, JVxeTimeCell),
...mapCell(JVXETypes.upload, JVxeUploadCell),
...mapCell(JVXETypes.textarea, JVxeTextareaCell),

View File

@ -22,6 +22,7 @@ export const JVXETypes = {
select: 'select',
date: 'date',
datetime: 'datetime',
time: 'time',
checkbox: 'checkbox',
upload: 'upload',
// 下拉搜索

View File

@ -73,6 +73,16 @@ export default {
props['disabled'] = true
}
// update-begin-author:taoyan date:20211011 for: online表单附表用户选择器{"multiSelect":false}不生效,单表可以生效 #3036
let jsonStr = col['fieldExtendJson']
if(jsonStr){
let fieldExtendJson = JSON.parse(jsonStr)
if(fieldExtendJson && fieldExtendJson['multiSelect']==false){
props['multi'] = false
}
}
// update-end-author:taoyan date:20211011 for: online表单附表用户选择器{"multiSelect":false}不生效,单表可以生效 #3036
return props
},
},