提交 a17daa59 编写于 作者: tony001's avatar tony001

Merge branch 'dev'

...@@ -67,7 +67,7 @@ export default class ${srfclassname('${ctrl.codeName}')}Base extends Vue impleme ...@@ -67,7 +67,7 @@ export default class ${srfclassname('${ctrl.codeName}')}Base extends Vue impleme
* @type {*} * @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
@Prop() public context: any; @Prop() public context!: any;
/** /**
* 视图参数 * 视图参数
...@@ -75,7 +75,7 @@ export default class ${srfclassname('${ctrl.codeName}')}Base extends Vue impleme ...@@ -75,7 +75,7 @@ export default class ${srfclassname('${ctrl.codeName}')}Base extends Vue impleme
* @type {*} * @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
@Prop() public viewparams: any; @Prop() public viewparams!: any;
/** /**
* 视图状态事件 * 视图状态事件
......
...@@ -67,7 +67,7 @@ export default class <#if ctrl.getPSAppDataEntity()??>${srfclassname('${ctrl.get ...@@ -67,7 +67,7 @@ export default class <#if ctrl.getPSAppDataEntity()??>${srfclassname('${ctrl.get
* @type {*} * @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
@Prop() public context: any; @Prop() public context!: any;
/** /**
* 视图参数 * 视图参数
...@@ -75,7 +75,7 @@ export default class <#if ctrl.getPSAppDataEntity()??>${srfclassname('${ctrl.get ...@@ -75,7 +75,7 @@ export default class <#if ctrl.getPSAppDataEntity()??>${srfclassname('${ctrl.get
* @type {*} * @type {*}
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
@Prop() public viewparams: any; @Prop() public viewparams!: any;
/** /**
* 视图状态事件 * 视图状态事件
......
...@@ -35,8 +35,8 @@ ...@@ -35,8 +35,8 @@
</div> </div>
</template> </template>
</div> </div>
<div class="app-list-item-date"> <div v-if="item.srfdate" class="app-list-item-date">
<span class="date">{{ item.createdate }}</span> <span class="date">{{ item.srfdate }}</span>
</div> </div>
<div class="app-list-item-action"> <div class="app-list-item-action">
<template v-for="(action,index) in Object.keys(ActionModel)"> <template v-for="(action,index) in Object.keys(ActionModel)">
......
...@@ -10,6 +10,15 @@ ...@@ -10,6 +10,15 @@
color: #409eff; color: #409eff;
background-color: #ecf5ff; background-color: #ecf5ff;
} }
.el-collapse{
.el-collapse-item{
.el-collapse-item__wrap{
.el-collapse-item__content{
padding: 10px 0 10px 0;
}
}
}
}
.app-list-item { .app-list-item {
line-height: 34px; line-height: 34px;
padding: 12px 6px; padding: 12px 6px;
...@@ -19,6 +28,7 @@ ...@@ -19,6 +28,7 @@
align-items: center; align-items: center;
border-bottom: 1px solid #f0f0f0; border-bottom: 1px solid #f0f0f0;
.app-list-item-content { .app-list-item-content {
width: 70%;
display: flex; display: flex;
align-items: center; align-items: center;
.item-icon { .item-icon {
...@@ -45,7 +55,6 @@ ...@@ -45,7 +55,6 @@
} }
.app-list-item-date { .app-list-item-date {
position: relative; position: relative;
left: 28%;
color: #8c8c8c; color: #8c8c8c;
} }
} }
......
...@@ -21,7 +21,7 @@ ${item.render.code} ...@@ -21,7 +21,7 @@ ${item.render.code}
<#assign counter = uiaction.getPSAppCounter() /> <#assign counter = uiaction.getPSAppCounter() />
<Badge type="primary" v-show="${ModelsName}.${item.name}.visabled" :count="${counter.getCodeName()?lower_case}counterservice.counterData.<#if uiaction.getCounterId()??>${uiaction.getCounterId()}</#if>"> <Badge type="primary" v-show="${ModelsName}.${item.name}.visabled" :count="${counter.getCodeName()?lower_case}counterservice.counterData.<#if uiaction.getCounterId()??>${uiaction.getCounterId()}</#if>">
</#if> </#if>
<i-button v-show="${ModelsName}.${item.name}.visabled" :disabled="${ModelsName}.${item.name}.disabled" class='<#if item.getPSSysCss()??> ${item.getPSSysCss().getCssName()}</#if>' @click="${ctrl.name}_click({ tag: '${item.name}' }, $event)"> <i-button v-show="${ModelsName}.${item.name}.visabled" :disabled="${ModelsName}.${item.name}.disabled" class='<#if item.getPSSysCss()??> ${item.getPSSysCss().getCssName()}</#if>' v-loading:i-button @click="${ctrl.name}_click({ tag: '${item.name}' }, $event)">
<#if item.isShowIcon()><i class='<#if item.getPSSysImage()??><#assign img=item.getPSSysImage()><#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>${img.getCssClass()}</#if></#if>'></i></#if> <#if item.isShowIcon()><i class='<#if item.getPSSysImage()??><#assign img=item.getPSSysImage()><#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>${img.getCssClass()}</#if></#if>'></i></#if>
<#if item.isShowCaption()><span class='caption'>{{<#if langbase??>$t('${langbase}.${item.name}.caption')<#else>'${item.getCaption()}'</#if>}}</span></#if> <#if item.isShowCaption()><span class='caption'>{{<#if langbase??>$t('${langbase}.${item.name}.caption')<#else>'${item.getCaption()}'</#if>}}</span></#if>
</i-button> </i-button>
...@@ -40,7 +40,7 @@ ${item.render.code} ...@@ -40,7 +40,7 @@ ${item.render.code}
<#assign counter = uiaction.getPSAppCounter() /> <#assign counter = uiaction.getPSAppCounter() />
<Badge type="primary" v-show="${ModelsName}.${item.name}.visabled" :count="${counter.getCodeName()?lower_case}counterservice.counterData.<#if uiaction.getCounterId()??>${uiaction.getCounterId()}</#if>"> <Badge type="primary" v-show="${ModelsName}.${item.name}.visabled" :count="${counter.getCodeName()?lower_case}counterservice.counterData.<#if uiaction.getCounterId()??>${uiaction.getCounterId()}</#if>">
</#if> </#if>
<i-button v-show="${ModelsName}.${item.name}.visabled" :disabled="${ModelsName}.${item.name}.disabled" class='<#if item.getPSSysCss()??> ${item.getPSSysCss().getCssName()}</#if>' @click="${ctrl.name}_click({ tag: '${item.name}' }, $event)"> <i-button v-show="${ModelsName}.${item.name}.visabled" :disabled="${ModelsName}.${item.name}.disabled" class='<#if item.getPSSysCss()??> ${item.getPSSysCss().getCssName()}</#if>' v-loading:i-button @click="${ctrl.name}_click({ tag: '${item.name}' }, $event)">
<#if item.isShowIcon()><i class='<#if item.getPSSysImage()??><#assign img=item.getPSSysImage()><#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>${img.getCssClass()}</#if></#if>'></i></#if> <#if item.isShowIcon()><i class='<#if item.getPSSysImage()??><#assign img=item.getPSSysImage()><#if img.getCssClass()?? && (img.getCssClass()?length gt 0)>${img.getCssClass()}</#if></#if>'></i></#if>
<#if item.isShowCaption()><span class='caption'>{{<#if langbase??>$t('${langbase}.${item.name}.caption')<#else>'${item.getCaption()}'</#if>}}</span></#if> <#if item.isShowCaption()><span class='caption'>{{<#if langbase??>$t('${langbase}.${item.name}.caption')<#else>'${item.getCaption()}'</#if>}}</span></#if>
</i-button> </i-button>
......
...@@ -97,7 +97,7 @@ ...@@ -97,7 +97,7 @@
</i-col> </i-col>
</a> </a>
</div> </div>
<div v-else style="text-align: center;"> <div v-else class="item-nodata">
{{ $t('<#if langbase??>${langbase}.nodata</#if>') }} {{ $t('<#if langbase??>${langbase}.nodata</#if>') }}
</div> </div>
</el-collapse-item> </el-collapse-item>
...@@ -117,6 +117,7 @@ ...@@ -117,6 +117,7 @@
</div> </div>
<el-backtop target=".content-container .app-data-view"></el-backtop> <el-backtop target=".content-container .app-data-view"></el-backtop>
<#if ctrl.getBatchPSDEToolbar?? && ctrl.getBatchPSDEToolbar()??> <#if ctrl.getBatchPSDEToolbar?? && ctrl.getBatchPSDEToolbar()??>
<div class="drag-filed" @mousedown="down">
<row class='dataview-pagination'> <row class='dataview-pagination'>
<div v-show="flag" class="batch-toolbar"> <div v-show="flag" class="batch-toolbar">
<#assign batchToolbar = ctrl.getBatchPSDEToolbar()/> <#assign batchToolbar = ctrl.getBatchPSDEToolbar()/>
...@@ -128,6 +129,7 @@ ...@@ -128,6 +129,7 @@
<Icon type="md-code-working" @click="onClick"/> <Icon type="md-code-working" @click="onClick"/>
</div> </div>
</row> </row>
</div>
</#if> </#if>
</div> </div>
</#if> </#if>
...@@ -293,7 +295,46 @@ import CodeListService from "@/codelist/codelist-service"; ...@@ -293,7 +295,46 @@ import CodeListService from "@/codelist/codelist-service";
} }
} }
</#if> </#if>
/**
* 拖拽元素对象
*
* @type {boolean}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public dragEle:any;
/**
* 拖拽后位置left
*
* @type {boolean}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public leftP:any;
/**
* 拖拽后位置top
*
* @type {boolean}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public topP:any;
/**
* 拖拽标识
*
* @type {boolean}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public dragflag:boolean=false;
/**
* 为拖拽不是点击
*
* @type {boolean}
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public moveflag:boolean = false;
<#if ctrl.getGroupMode?? && ctrl.getGroupMode() == 'CODELIST'> <#if ctrl.getGroupMode?? && ctrl.getGroupMode() == 'CODELIST'>
/** /**
...@@ -566,7 +607,10 @@ import CodeListService from "@/codelist/codelist-service"; ...@@ -566,7 +607,10 @@ import CodeListService from "@/codelist/codelist-service";
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
public onClick($event: any){ public onClick($event: any){
this.flag = !this.flag; if(!this.moveflag){
this.flag = !this.flag;
}
this.moveflag = false;
} }
/** /**
...@@ -631,6 +675,8 @@ import CodeListService from "@/codelist/codelist-service"; ...@@ -631,6 +675,8 @@ import CodeListService from "@/codelist/codelist-service";
}) })
} }
/** /**
* Vue声明周期,组件创建完毕 * Vue声明周期,组件创建完毕
* *
...@@ -638,6 +684,9 @@ import CodeListService from "@/codelist/codelist-service"; ...@@ -638,6 +684,9 @@ import CodeListService from "@/codelist/codelist-service";
*/ */
public created() { public created() {
this.afterCreated(); this.afterCreated();
this.$nextTick(()=>{
this.mouseEvent();
})
} }
/** /**
...@@ -671,6 +720,37 @@ import CodeListService from "@/codelist/codelist-service"; ...@@ -671,6 +720,37 @@ import CodeListService from "@/codelist/codelist-service";
} }
} }
/**
* 鼠标移动+放下
*
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public mouseEvent(){
this.dragEle = document.getElementsByClassName('drag-filed')[0];
document.onmousemove=(e:any)=>{
if(this.dragflag){
this.dragEle.style.left = (e.clientX - this.leftP) + 'px';
this.dragEle.style.top = (e.clientY - this.topP) + 'px';
this.moveflag = true;
}
}
document.onmouseup=(e:any)=>{
this.dragflag = false;
}
}
/**
* mousedown事件
*
* @param $event
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public down(e:any){
this.leftP = e.clientX - this.dragEle.offsetLeft;
this.topP = e.clientY - this.dragEle.offsetTop;
this.dragflag = true;
}
/** /**
* 加载更多 * 加载更多
* *
......
...@@ -76,7 +76,13 @@ ...@@ -76,7 +76,13 @@
.el-collapse{ .el-collapse{
width: 100%; width: 100%;
.el-collapse-item__content{ .el-collapse-item__content{
padding: 10px 0px 0px 0px;
display: flex; display: flex;
.item-nodata {
padding-bottom: 10px;
width: 100%;
text-align: center;
}
} }
} }
.el-collapse-item__header.is-active{ .el-collapse-item__header.is-active{
...@@ -163,33 +169,35 @@ ...@@ -163,33 +169,35 @@
position: absolute; position: absolute;
} }
<#if ctrl.getBatchPSDEToolbar?? && ctrl.getBatchPSDEToolbar()??> <#if ctrl.getBatchPSDEToolbar?? && ctrl.getBatchPSDEToolbar()??>
.dataview-pagination { .drag-filed{
position: absolute; position: absolute;
height: 42px; height: 42px;
width: 100%; width: 100%;
top: 40px; top: 40px;
display: flex;
justify-content: flex-end;
align-items: center;
text-align: center;
font-size: 20px;
z-index: 5;
.dataview-pagination-icon{
width: 30px;
height: 30px;
display: flex; display: flex;
justify-content: flex-end;
align-items: center; align-items: center;
justify-content: center;
text-align: center; text-align: center;
border:1px solid #dcdee2; font-size: 20px;
border-radius: 50%; z-index: 5;
background-color: #FFF; .dataview-pagination-icon{
margin: 3px; width: 30px;
} height: 30px;
.dataview-pagination-icon:hover{ display: flex;
background-color: #409eff; align-items: center;
color: #fff; justify-content: center;
} text-align: center;
border:1px solid #dcdee2;
border-radius: 50%;
background-color: #FFF;
margin: 3px;
position: absolute;
right: 0;
}
.dataview-pagination-icon:hover{
background-color: #409eff;
color: #fff;
}
} }
</#if> </#if>
} }
......
...@@ -9,22 +9,6 @@ ...@@ -9,22 +9,6 @@
${ctrl.render.code} ${ctrl.render.code}
<#else> <#else>
<div :class='calendarClass<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>'> <div :class='calendarClass<#if ctrl.getPSSysCss?? && ctrl.getPSSysCss()??><#assign singleCss = ctrl.getPSSysCss()> ${singleCss.getCssName()}</#if>'>
<#if ctrl.getQuickPSDEToolbar?? && ctrl.getQuickPSDEToolbar()??>
<span class="quick-toolbar">
<#assign quickToolbar = ctrl.getQuickPSDEToolbar()/>
<@ibizindent blank=12>
${P.getCtrlCode(quickToolbar, 'CONTROL.html').code}
</@ibizindent>
</span>
</#if>
<#if ctrl.getBatchPSDEToolbar?? && ctrl.getBatchPSDEToolbar()??>
<span v-if="selections.length > 0" class="batch-toolbar">
<#assign batchToolbar = ctrl.getBatchPSDEToolbar()/>
<@ibizindent blank=12>
${P.getCtrlCode(batchToolbar, 'CONTROL.html').code}
</@ibizindent>
</span>
</#if>
<context-menu-container> <context-menu-container>
<#if ctrl.getCalendarStyle?? && ctrl.getCalendarStyle() == 'TIMELINE'> <#if ctrl.getCalendarStyle?? && ctrl.getCalendarStyle() == 'TIMELINE'>
<template v-if="events.length >0"> <template v-if="events.length >0">
...@@ -60,9 +44,17 @@ ${ctrl.render.code} ...@@ -60,9 +44,17 @@ ${ctrl.render.code}
</template> </template>
<template v-else> <template v-else>
<span class="app-data-empty">{{ $t('<#if langbase??>${langbase}.nodata</#if>') }}</span> <span class="app-data-empty">{{ $t('<#if langbase??>${langbase}.nodata</#if>') }}</span>
<#if ctrl.getQuickPSDEToolbar?? && ctrl.getQuickPSDEToolbar()??>
<span class="quick-toolbar">
<#assign quickToolbar = ctrl.getQuickPSDEToolbar()/>
<@ibizindent blank=12>
${P.getCtrlCode(quickToolbar, 'CONTROL.html').code}
</@ibizindent>
</span>
</#if>
</template> </template>
<#else> <#else>
<template v-if="events.length >0"> <template>
<div class="event-legends"> <div class="event-legends">
<#if ctrl.getPSSysCalendarItems()??> <#if ctrl.getPSSysCalendarItems()??>
<#list ctrl.getPSSysCalendarItems() as calendarItem> <#list ctrl.getPSSysCalendarItems() as calendarItem>
...@@ -96,11 +88,16 @@ ${ctrl.render.code} ...@@ -96,11 +88,16 @@ ${ctrl.render.code}
<el-date-picker style="width: 200px;" v-model="selectedGotoDate" type="date"></el-date-picker> <el-date-picker style="width: 200px;" v-model="selectedGotoDate" type="date"></el-date-picker>
</modal> </modal>
</template> </template>
<template v-else>
<span class="app-data-empty">{{ $t('<#if langbase??>${langbase}.nodata</#if>') }}</span>
</template>
</#if> </#if>
</context-menu-container> </context-menu-container>
<#if ctrl.getBatchPSDEToolbar?? && ctrl.getBatchPSDEToolbar()??>
<span v-if="selections.length > 0" class="batch-toolbar">
<#assign batchToolbar = ctrl.getBatchPSDEToolbar()/>
<@ibizindent blank=12>
${P.getCtrlCode(batchToolbar, 'CONTROL.html').code}
</@ibizindent>
</span>
</#if>
</div> </div>
</#if> </#if>
</template> </template>
...@@ -454,10 +451,12 @@ FullCalendar, ...@@ -454,10 +451,12 @@ FullCalendar,
if(fetchInfo && fetchInfo.query){ if(fetchInfo && fetchInfo.query){
Object.assign(arg,{query : fetchInfo.query}); Object.assign(arg,{query : fetchInfo.query});
} }
Object.assign(arg,{viewparams:this.viewparams});
const parentdata: any = {}; const parentdata: any = {};
this.$emit('beforeload', parentdata); this.$emit('beforeload', parentdata);
Object.assign(arg, parentdata); Object.assign(arg, parentdata);
let tempViewParams: any = parentdata.viewparams ? parentdata.viewparams : {};
Object.assign(tempViewParams, JSON.parse(JSON.stringify(this.viewparams)));
Object.assign(arg, { viewparams: tempViewParams });
// 处理events数据 // 处理events数据
let _this = this; let _this = this;
let handleEvents = ()=>{ let handleEvents = ()=>{
...@@ -604,6 +603,7 @@ FullCalendar, ...@@ -604,6 +603,7 @@ FullCalendar,
let _this = this; let _this = this;
let view: any = {}; let view: any = {};
let _context: any = Object.assign({},this.context); let _context: any = Object.assign({},this.context);
let _viewparams:any = Object.assign({start:event.start,end:event.end},this.viewparams);
switch(event.itemType) { switch(event.itemType) {
<#if ctrl.getPSSysCalendarItems()??> <#if ctrl.getPSSysCalendarItems()??>
<#list ctrl.getPSSysCalendarItems() as calendarItem> <#list ctrl.getPSSysCalendarItems() as calendarItem>
...@@ -627,16 +627,16 @@ FullCalendar, ...@@ -627,16 +627,16 @@ FullCalendar,
if(!view.viewname){ if(!view.viewname){
return; return;
} else if (Object.is(view.placement, 'INDEXVIEWTAB') || Object.is(view.placement, '')) { } else if (Object.is(view.placement, 'INDEXVIEWTAB') || Object.is(view.placement, '')) {
const routePath = this.$viewTool.buildUpRoutePath(this.$route, this.context, view.deResParameters, view.parameters, [JSON.parse(JSON.stringify(_context))] , JSON.parse(JSON.stringify(this.viewparams))); const routePath = this.$viewTool.buildUpRoutePath(this.$route, this.context, view.deResParameters, view.parameters, [JSON.parse(JSON.stringify(_context))] , _viewparams);
this.$router.push(routePath); this.$router.push(routePath);
} else { } else {
let container: Subject<any> = new Subject(); let container: Subject<any> = new Subject();
if (Object.is(view.placement, 'POPOVER')) { if (Object.is(view.placement, 'POPOVER')) {
container = this.$apppopover.openPop(isOriginData ? $event2 : $event.jsEvent, view,JSON.parse(JSON.stringify(_context)), JSON.parse(JSON.stringify(this.viewparams))); container = this.$apppopover.openPop(isOriginData ? $event2 : $event.jsEvent, view,JSON.parse(JSON.stringify(_context)), _viewparams);
} else if (Object.is(view.placement, 'POPUPMODAL')) { } else if (Object.is(view.placement, 'POPUPMODAL')) {
container = this.$appmodal.openModal(view, JSON.parse(JSON.stringify(_context)), JSON.parse(JSON.stringify(this.viewparams))); container = this.$appmodal.openModal(view, JSON.parse(JSON.stringify(_context)), _viewparams);
} else if (view.placement.startsWith('DRAWER')) { } else if (view.placement.startsWith('DRAWER')) {
container = this.$appdrawer.openDrawer(view, JSON.parse(JSON.stringify(_context)), JSON.parse(JSON.stringify(this.viewparams))); container = this.$appdrawer.openDrawer(view, JSON.parse(JSON.stringify(_context)), _viewparams);
} }
container.subscribe((result: any) => { container.subscribe((result: any) => {
if (!result || !Object.is(result.ret, 'OK')) { if (!result || !Object.is(result.ret, 'OK')) {
......
...@@ -9,6 +9,9 @@ ...@@ -9,6 +9,9 @@
.calendar{ .calendar{
height:100%; height:100%;
overflow: auto; overflow: auto;
.context-menu-container {
height: calc(100% - 70px);
}
.el-timeline{ .el-timeline{
padding-left: 2px; padding-left: 2px;
} }
...@@ -17,6 +20,7 @@ ...@@ -17,6 +20,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
height: 100%;
} }
.event-legends{ .event-legends{
width: 100%; width: 100%;
......
...@@ -145,7 +145,7 @@ import UIService from '@/uiservice/ui-service'; ...@@ -145,7 +145,7 @@ import UIService from '@/uiservice/ui-service';
* @type {string} * @type {string}
* @memberof ${srfclassname('${ctrl.codeName}')}Base * @memberof ${srfclassname('${ctrl.codeName}')}Base
*/ */
@Prop() public selectedData?: string; @Prop() public selectedData!: string;
/** /**
* 选中值变化 * 选中值变化
......
...@@ -2313,9 +2313,7 @@ ${gridColumn.getName()} ...@@ -2313,9 +2313,7 @@ ${gridColumn.getName()}
const data = response.data; const data = response.data;
this.createDefault(data); this.createDefault(data);
data.rowDataState = "create"; data.rowDataState = "create";
let tempItems: any[] = []; this.items.splice(0,0,data);
tempItems.push(data);
_this.items = tempItems.concat(_this.items);
_this.gridItemsModel.push(_this.getGridRowModel()); _this.gridItemsModel.push(_this.getGridRowModel());
}).catch((response: any) => { }).catch((response: any) => {
if (response && response.status === 401) { if (response && response.status === 401) {
...@@ -2365,6 +2363,7 @@ ${gridColumn.getName()} ...@@ -2365,6 +2363,7 @@ ${gridColumn.getName()}
} }
} }
this.curEditRowData = row; this.curEditRowData = row;
this.resetGridData(row, property, rowIndex);
this.validate(property,row,rowIndex); this.validate(property,row,rowIndex);
<#if ctrl.getPSDEGridEditItems()??> <#if ctrl.getPSDEGridEditItems()??>
<#list ctrl.getPSDEGridEditItems() as editItem> <#list ctrl.getPSDEGridEditItems() as editItem>
...@@ -2754,6 +2753,31 @@ ${gridColumn.getName()} ...@@ -2754,6 +2753,31 @@ ${gridColumn.getName()}
} }
} }
/**
* 重置表格项值
*
* @param {*} row 当前行
* @param {string} property 属性名
* @param {number} rowIndex 行下标
* @memberof ${srfclassname('${ctrl.codeName}')}Base
*/
public resetGridData(row: any, property: string, rowIndex: number) {
<#if ctrl.getPSDEGridColumns?? && ctrl.getPSDEGridColumns()??>
if(this.actualIsOpenEdit) {
<#list ctrl.getPSDEGridColumns() as column>
<#if column.getResetItemName?? && column.getResetItemName()??>
if(Object.is(property, '${column.getResetItemName()}')) {
this.onGridItemValueChange(row, {name: '${column.getName()}', value: null}, rowIndex);
<#if column.getValueItemName?? && column.getValueItemName()?? && column.getValueItemName() != ''>
this.onGridItemValueChange(row, {name: '${column.getValueItemName()}', value: null}, rowIndex);
</#if>
}
</#if>
</#list>
}
</#if>
}
<#ibizinclude> <#ibizinclude>
../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl ../@MACRO/CONTROL/CONTROL_BOTTOM-BASE.vue.ftl
</#ibizinclude> </#ibizinclude>
......
<app-color-picker
v-model="data.${editor.name}"
@enter="onEnter($event)"
:data="data"
:disabled="detailsModel.${editor.name}.disabled"
:formState="formState"
<#if item.getPlaceHolder()??>
placeholder="${item.getPlaceHolder()}"
</#if>
color="${item.getEditorParam("color","")}"
style="${editor.getEditorCssStyle()}"
@colorChange="(val) => {onFormItemValueChange(val)}">
</app-color-picker>
EDITORTYPE=TEXTBOX#COLORPICKER
\ No newline at end of file
<app-after-time
v-model="data.${item.getName()?lower_case}"
:formState="formState"
:data="data"
name="${item.getName()?lower_case}"
:context="context"
:viewparams="viewparams">
</app-after-time>
\ No newline at end of file
<app-after-time
name="${item.getName()?lower_case}"
v-model="row.${item.getName()?lower_case}"
:data="row"
:context="context"
:viewparams="viewparams">
</app-after-time>
\ No newline at end of file
<app-after-time
name="${item.getName()?lower_case}"
v-model="data.${item.getName()?lower_case}"
:data="data"
:context="context"
:viewparams="viewparams">
</app-after-time>
\ No newline at end of file
EDITORTYPE=SPAN#AFTERTIME
\ No newline at end of file
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<app-color-span
:value="data.${editor.name}"
:data="data"
name="${editor.name}"
<#if item.getPSCodeList?? && item.getPSCodeList()??>
<#assign codelist=item.getPSCodeList() />
tag="${codelist.codeName}"
codelistType="${codelist.getCodeListType()}"
<#if codelist.getOrMode?? && codelist.getOrMode()?has_content>
renderMode="${codelist.getOrMode()}" <#t>
</#if>
<#if codelist.valueSeparator?has_content>
valueSeparator="${codelist.valueSeparator}" <#t>
</#if>
<#if codelist.textSeparator?has_content>
textSeparator="${codelist.textSeparator}" <#t>
</#if>
</#if>
<#if editor.getEditorParam("color","")?? && editor.getEditorParam("color","") !="">
color="${editor.getEditorParam("color","")}"
</#if>
:context="context" <#t>
:viewparams="viewparams" <#t>
:localContext =<@getNavigateContext editor /> <#t>
:localParam =<@getNavigateParams editor /> <#t>
style="${editor.getEditorCssStyle()}"
>
</app-color-span>
\ No newline at end of file
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<app-color-span <#t>
name='${editor.name}' <#t>
:value="row[column.property]" <#t>
<#if item.getPSCodeList?? && item.getPSCodeList()??>
<#assign codelist=item.getPSCodeList() />
tag='${codelist.codeName}' <#t>
codelistType='${codelist.getCodeListType()}' <#t>
<#if codelist.getOrMode?? && codelist.getOrMode()?has_content>
renderMode="${codelist.getOrMode()}" <#t>
</#if>
<#if codelist.valueSeparator?has_content>
valueSeparator="${codelist.valueSeparator}" <#t>
</#if>
<#if codelist.textSeparator?has_content>
textSeparator="${codelist.textSeparator}" <#t>
</#if>
</#if>
<#if editor.getEditorParam("color","")?? && editor.getEditorParam("color","") !="">
color="${editor.getEditorParam("color","")}"
</#if>
:data="row" <#t>
:context="context" <#t>
:viewparams="viewparams" <#t>
:localContext =<@getNavigateContext editor /> <#t>
:localParam =<@getNavigateParams editor /> <#t>
style="${editor.getEditorCssStyle()}"><#t>
</app-color-span><#lt>
<#ibizinclude>../@MACRO/FUNC/PUBLIC.vue.ftl</#ibizinclude>
<app-color-span <#t>
:value="data.${editor.name?lower_case}" <#t>
name="${editor.name?lower_case}" <#t>
:data="data" <#t>
:context="context" <#t>
:viewparams="viewparams" <#t>
:localContext =<@getNavigateContext editor /> <#t>
:localParam =<@getNavigateParams editor /> <#t>
<#if item.getPSCodeList?? && item.getPSCodeList()??>
<#assign codelist=item.getPSCodeList() />
tag="${codelist.codeName}"
codelistType="${codelist.getCodeListType()}"
<#if codelist.getOrMode?? && codelist.getOrMode()?has_content>
renderMode="${codelist.getOrMode()}" <#t>
</#if>
<#if codelist.valueSeparator?has_content>
valueSeparator="${codelist.valueSeparator}" <#t>
</#if>
<#if codelist.textSeparator?has_content>
textSeparator="${codelist.textSeparator}" <#t>
</#if>
</#if>
<#if editor.getEditorParam("color","")?? && editor.getEditorParam("color","") !="">
color="${editor.getEditorParam("color","")}"
</#if>
style="${item.getEditorCssStyle()}"> <#t>
</app-color-span> <#lt>
EDITORTYPE=SPAN#COLORSPAN
\ No newline at end of file
...@@ -66,8 +66,8 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co ...@@ -66,8 +66,8 @@ import ${srfclassname('${appCounter.getCodeName()}')}CounterService from '@/co
*/ */
public onSearch($event: any): void { public onSearch($event: any): void {
const refs: any = this.$refs; const refs: any = this.$refs;
if (refs.dataview) { if (refs.kanban) {
refs.dataview.refresh({}); refs.kanban.refresh({});
} }
} }
......
...@@ -74,7 +74,7 @@ TARGET=PSSYSAPP ...@@ -74,7 +74,7 @@ TARGET=PSSYSAPP
"less-loader": "^5.0.0", "less-loader": "^5.0.0",
"mockjs": "^1.1.0", "mockjs": "^1.1.0",
"script-loader": "^0.7.2", "script-loader": "^0.7.2",
"typescript": "~3.5.3", "typescript": "^4.0.3",
<#if app.getAllPSAppPkgs?? && app.getAllPSAppPkgs()??> <#if app.getAllPSAppPkgs?? && app.getAllPSAppPkgs()??>
<#list app.getAllPSAppPkgs() as appPackage> <#list app.getAllPSAppPkgs() as appPackage>
<#if appPackage.getVerParam2()?? && appPackage.getVerParam2() !="">${appPackage.getVerParam2()},</#if> <#if appPackage.getVerParam2()?? && appPackage.getVerParam2() !="">${appPackage.getVerParam2()},</#if>
......
...@@ -64,9 +64,9 @@ import { Verify } from '@/utils/verify/verify'; ...@@ -64,9 +64,9 @@ import { Verify } from '@/utils/verify/verify';
<#-- 直接值 --> <#-- 直接值 -->
<#elseif logicparam.getSrcValueType() =="SRCVALUE"> <#elseif logicparam.getSrcValueType() =="SRCVALUE">
<#if dstParam.getParamPSAppDataEntity?? && dstParam.getParamPSAppDataEntity()?? && dstFieldParam == dstParam.getParamPSAppDataEntity().getKeyPSAppDEField().getCodeName()?lower_case> <#if dstParam.getParamPSAppDataEntity?? && dstParam.getParamPSAppDataEntity()?? && dstFieldParam == dstParam.getParamPSAppDataEntity().getKeyPSAppDEField().getCodeName()?lower_case>
Object.assign(tempDstParam${logicparam_index}Context,{${dstParam.getParamPSAppDataEntity().getCodeName()?lower_case}:${logicparam.getSrcValue()}}); Object.assign(tempDstParam${logicparam_index}Context,{${dstParam.getParamPSAppDataEntity().getCodeName()?lower_case}:<#if logicparam.getSrcValue()?? && logicparam.getSrcValue() !="">"${logicparam.getSrcValue()}"<#else>null</#if>});
</#if> </#if>
Object.assign(tempDstParam${logicparam_index}Data,{${dstFieldParam}:"${logicparam.getSrcValue()}"}); Object.assign(tempDstParam${logicparam_index}Data,{${dstFieldParam}:<#if logicparam.getSrcValue()?? && logicparam.getSrcValue() !="">"${logicparam.getSrcValue()}"<#else>null</#if>});
</#if> </#if>
this.paramsMap.set('${dstParam.getCodeName()}',{data:tempDstParam${logicparam_index}Data,context:tempDstParam${logicparam_index}Context}); this.paramsMap.set('${dstParam.getCodeName()}',{data:tempDstParam${logicparam_index}Data,context:tempDstParam${logicparam_index}Context});
</#if> </#if>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册