提交 ed79749d 编写于 作者: WodahsOrez's avatar WodahsOrez

update:修复写法错误

上级 84a53d55
......@@ -18,16 +18,16 @@
},
{{/if}}
appEntityName: '{{page.appEntity.codeName}}',
isLoadDefault: true,
isLoadDefault: {{#if (or page.loadDefault (eq page.loadDefault false))}}{{page.loadDefault}}{{else}}true{{/if}},
keyPSDEField: '{{lowerCase page.appEntity.codeName}}',
{{!-- viewMsgGroup: '{{page.psAppViewMsgGroup}}', --}}
{{!-- viewUIActions: '{{page.psAppViewUIActions}}', --}}
viewSysCss: '{{page.psSysCss}}',
viewSysCss: '{{page.psSysCss.cssName}}',
{{!-- viewSysImage: '{{page.psSysImage}}', --}}
subCaption: '{{page.subCaption}}',
viewType: '{{page.viewType}}',
viewStyle: '{{page.viewStyle}}',
showCaptionBar: '{{page.viewStyle}}',
showCaptionBar: {{page.showCaptionBar}},
xDataControlName:'{{page.xDataControlName}}',
openDataViewName: 'ExampleEditorEditView',
appViewNavContexts:{{> @macro/front-end/common/navparam.hbs appNavParams=page.psAppViewNavContexts}},
......
......@@ -16,6 +16,12 @@ export const AppViewConfig:IParam = {
"parameters": [
{ "pathName": "views", "parameterName": "{{lowerCase appView.codeName}}" }
],
{{#if (gt appView.height 0)}}
"height": {{appView.height}},
{{/if}}
{{#if (gt appView.width 0)}}
"width": {{appView.width}},
{{/if}}
{{#if appView.capPSLanguageRes}}
"captionTag": "{{appView.capPSLanguageRes.lanResTag}}",
{{/if}}
......
import { DataTypes, dateFormat, deepCopy, FormControlProps, FormControlState, IActionParam, IParam, MainControl, UIUtil, verifyValue } from '@core';
import {
DataTypes,
dateFormat,
deepCopy,
FormControlProps,
FormControlState,
IActionParam,
IParam,
MainControl,
UIUtil,
verifyValue,
} from '@core';
/**
* @description 表单部件
......@@ -28,12 +39,12 @@ export class FormControl extends MainControl {
if (logic.groupOP == 'AND') {
const falseItem = logic.logics.find((childLogic: IParam) => {
return !this.verifyGroupLogic(data, childLogic);
})
});
result = falseItem ? false : true;
} else if (logic.groupOP == 'OR') {
const trueItem = logic.logics.find((childLogic: IParam) => {
return this.verifyGroupLogic(data, childLogic);
})
});
result = trueItem ? true : false;
}
// 是否取反
......@@ -62,7 +73,7 @@ export class FormControl extends MainControl {
this.formItemUpdate(name);
this.formDynamicLogic(name);
if (enableAutoSave) {
this.useSave().save();
this.save();
}
}
......@@ -80,7 +91,7 @@ export class FormControl extends MainControl {
this.handleFormDataChange(item.valueItemName, null);
}
}
})
});
}
/**
......@@ -110,7 +121,7 @@ export class FormControl extends MainControl {
if (data.value.hasOwnProperty(detailsName)) {
data.value[detailsName] = response.data[detailsName];
}
})
});
this.afterFormAction('formItemUpdate');
}
}
......@@ -284,12 +295,14 @@ export class FormControl extends MainControl {
data.value[detail.codeName] = controlService.getRemoteCopyData()?.[detail.codeName] || null;
break;
default:
data.value[detail.codeName] = DataTypes.isNumber(detail.dataType) ? Number(detail?.createDV) : detail?.createDV;
data.value[detail.codeName] = DataTypes.isNumber(detail.dataType)
? Number(detail?.createDV)
: detail?.createDV;
break;
}
}
}
})
});
}
/**
......@@ -325,14 +338,24 @@ export class FormControl extends MainControl {
data.value[detail.codeName] = controlService.getRemoteCopyData()?.[detail.codeName] || null;
break;
default:
data.value[detail.codeName] = DataTypes.isNumber(detail.dataType) ? Number(detail.updateDV) : detail.updateDV;
data.value[detail.codeName] = DataTypes.isNumber(detail.dataType)
? Number(detail.updateDV)
: detail.updateDV;
break;
}
}
}
})
});
}
/**
* 加载草稿行为
*
* @protected
* @param [opt={}]
*/
protected async loadDraft(opt: any = {}) {}
/**
* @description 使用加载草稿功能模块
* @param {FormControlProps} props 传入的props
......@@ -371,6 +394,10 @@ export class FormControl extends MainControl {
console.log(error);
}
};
// 在类里绑定能力方法
this.loadDraft = loadDraft;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
......@@ -378,14 +405,23 @@ export class FormControl extends MainControl {
loadDraft(data);
}
});
// 部件卸载时退订viewSubject
onUnmounted(() => {
subscription.unsubscribe();
});
}
return { loadDraft };
return loadDraft;
}
/**
* 加载行为
*
* @protected
* @param [opt={}]
*/
protected async load(opt: any = {}) {}
/**
* @description 使用加载功能模块
* @return {*}
......@@ -427,6 +463,9 @@ export class FormControl extends MainControl {
}
};
// 在类里绑定能力方法
this.load = load;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
......@@ -441,11 +480,17 @@ export class FormControl extends MainControl {
});
}
return {
load: load,
};
return load;
}
/**
* 保存行为
*
* @protected
* @param [opt={}]
*/
protected async save(opt: any = {}) {}
/**
* @description 使用加载功能模块
* @return {*}
......@@ -482,19 +527,14 @@ export class FormControl extends MainControl {
Object.assign(arg, data.getDo());
Object.assign(arg, { viewParams: _viewParams });
// TODO 关系界面保存通知处理,做成异步。
// TODO 拷贝相关。
// 发起请求处理与解析请求
const response = await controlService[saveFunName](
_context,
arg,
{
const response = await controlService[saveFunName](_context, arg, {
action: saveAction,
isLoading: showBusyIndicator,
},
);
});
if (!response.status || response.status !== 200) {
// TODO 统一Error格式
return;
......@@ -510,6 +550,9 @@ export class FormControl extends MainControl {
}
};
// 在类里绑定能力方法
this.save = save;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
......@@ -523,11 +566,17 @@ export class FormControl extends MainControl {
});
}
return {
save: save,
};
return save;
}
/**
* 删除行为
*
* @protected
* @param [opt={}]
*/
protected async remove(opt: any = {}) {}
/**
* @description 使用加载功能模块
* @param {FormControlProps} props 传入的props
......@@ -558,17 +607,13 @@ export class FormControl extends MainControl {
let _context = deepCopy(context);
let _viewParams = deepCopy(viewParams);
const arg: any = opt[0];
Object.assign(arg, { viewParams: _viewParams },);
Object.assign(arg, { viewParams: _viewParams });
// 发起请求处理与解析请求
const response = await controlService.remove(
_context,
arg,
{
const response = await controlService.remove(_context, arg, {
action: removeAction,
isLoading: showBusyIndicator
},
);
isLoading: showBusyIndicator,
});
if (!response.status || response.status !== 200) {
return;
}
......@@ -581,6 +626,9 @@ export class FormControl extends MainControl {
}
};
// 在类里绑定能力方法
this.remove = remove;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
......@@ -595,9 +643,7 @@ export class FormControl extends MainControl {
});
}
return {
remove: remove,
};
return remove;
}
/**
......@@ -639,7 +685,7 @@ export class FormControl extends MainControl {
* @memberof FormControl
*/
public handleFormGroupAction(tag: string, data: any) {
console.log(tag, data)
console.log(tag, data);
}
/**
......
......@@ -97,7 +97,7 @@ export class GridControl extends MDControl {
// 处理表格变化(分页,过滤,排序)
const onGridChange = (pagination: IParam, filters: IParam, sorter: IParam, data: IParam) => {
if (pagination) {
this.useLoad().load();
this.load();
}
}
return {
......
......@@ -7,7 +7,6 @@ import { MDControlState, MainControl, deepCopy, IActionParam, IParam } from '@co
* @extends {MainControl}
*/
export class MDControl extends MainControl {
/**
* @description 多数据部件状态
* @type {MDControlState}
......@@ -22,13 +21,21 @@ export class MDControl extends MainControl {
public setState() {
super.setState();
// 交联输入Props
this.state.isMultiple = toRef(this.props, "isMultiple") as any;
this.state.rowEditState = toRef(this.props, "rowEditState") as any;
this.state.rowActiveMode = toRef(this.props, "rowActiveMode") as any;
this.state.selectedData = toRef(this.props, "selectedData") as any;
this.state.isSelectDefault = toRef(this.props, "isSelectDefault") as any;
this.state.isMultiple = toRef(this.props, 'isMultiple') as any;
this.state.rowEditState = toRef(this.props, 'rowEditState') as any;
this.state.rowActiveMode = toRef(this.props, 'rowActiveMode') as any;
this.state.selectedData = toRef(this.props, 'selectedData') as any;
this.state.isSelectDefault = toRef(this.props, 'isSelectDefault') as any;
}
/**
* 加载行为
*
* @protected
* @param [opt={}]
*/
protected async load(opt: any = {}) {}
/**
* @description 使用加载功能模块
* @return {*}
......@@ -36,34 +43,35 @@ export class MDControl extends MainControl {
*/
public useLoad() {
const { viewSubject, controlName } = this.state;
const load = async (opt: any = {}) => {
try {
let {
controlService, context, viewParams, showBusyIndicator, controlAction, mdCtrlSort, mdCtrlPaging
} = this.state;
let { controlService, context, viewParams, showBusyIndicator, controlAction, mdCtrlSort, mdCtrlPaging } =
this.state;
if (!controlAction.fetchAction) {
return;
}
// 组装查询参数
const arg: any = { ...opt };
let tempContext = deepCopy(context ? context : {});
let tempViewParams = deepCopy(viewParams ? viewParams : {});
const { noSort, minorSortDir, minorSortPSDEF } = mdCtrlSort;
let { enablePagingBar, current, pageSize } = mdCtrlPaging;
if (noSort && minorSortDir && minorSortPSDEF) {
if (!noSort && minorSortDir && minorSortPSDEF) {
Object.assign(tempViewParams, { sort: `${minorSortPSDEF},${minorSortDir}` });
}
if (enablePagingBar) {
Object.assign(tempViewParams, { page: current - 1, size: pageSize });
}
Object.assign(arg, tempViewParams);
// 组装视图其他查询参数
this.emit('ctrlevent', { tag: controlName.toLowerCase(), action: 'beforeload', data: arg });
const response = await controlService.search(
tempContext,
arg,
{ action: controlAction.fetchAction, isLoading: showBusyIndicator }
);
const response = await controlService.search(tempContext, arg, {
action: controlAction.fetchAction,
isLoading: showBusyIndicator,
});
if (response.status || response.status == 200) {
this.state.items = response.data;
this.emit('ctrlevent', { tag: controlName.toLowerCase(), action: 'load', data: response.data });
......@@ -76,22 +84,35 @@ export class MDControl extends MainControl {
// todo 错误异常处理
console.log(error);
}
}
};
// 在类里绑定能力方法
this.load = load;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
if (Object.is(controlName, tag) && Object.is("load", action)) {
if (Object.is(controlName, tag) && Object.is('load', action)) {
load(data);
}
})
});
// 部件卸载时退订viewSubject
onUnmounted(() => {
subscription.unsubscribe();
})
});
}
return { load };
return load;
}
/**
* 保存行为
*
* @protected
* @param [opt={}]
*/
protected async save(opt: any = {}) {}
/**
* @description 使用保存功能模块
* @return {*}
......@@ -105,7 +126,8 @@ export class MDControl extends MainControl {
// TODO 值规则校验处理
for (const item of items) {
const { updateAction, createAction } = controlAction;
const saveAction: any = item.rowDataState == "update" ? updateAction : item.rowDataState == "create" ? createAction : "";
const saveAction: any =
item.rowDataState == 'update' ? updateAction : item.rowDataState == 'create' ? createAction : '';
if (!saveAction) {
return;
}
......@@ -114,13 +136,11 @@ export class MDControl extends MainControl {
let _viewParams = deepCopy(viewParams);
Object.assign(arg, item.getDo());
Object.assign(arg, { viewParams: _viewParams });
const response = await controlService[saveAction](
_context,
arg,
{ action: saveAction, isLoading: showBusyIndicator },
);
const response = await controlService[saveAction](_context, arg, {
action: saveAction,
isLoading: showBusyIndicator,
});
if (response.status || response.status == 200) {
}
}
} catch (error) {
......@@ -128,21 +148,34 @@ export class MDControl extends MainControl {
console.log(error);
}
};
// 在类里绑定能力方法
this.save = save;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
if (Object.is(controlName, tag) && Object.is("save", action)) {
if (Object.is(controlName, tag) && Object.is('save', action)) {
save(data);
}
});
// 部件卸载时退订viewSubject
onUnmounted(() => {
subscription.unsubscribe();
});
}
return { save };
return save;
}
/**
* 删除行为
*
* @protected
* @param [opt={}]
*/
protected async remove(opt: any = {}) {}
/**
* @description 使用删除功能模块
* @return {*}
......@@ -159,7 +192,7 @@ export class MDControl extends MainControl {
}
const _data: IParam[] = [];
opt.forEach((item: IParam, index: number) => {
if (Object.is(item.srfuf, "0")) {
if (Object.is(item.srfuf, '0')) {
items.value.some((val: any, num: number) => {
if (JSON.stringify(val) == JSON.stringify(item)) {
items.value.splice(num, 1);
......@@ -175,7 +208,7 @@ export class MDControl extends MainControl {
_data.forEach((item: IParam) => {
keys.push(item.srfkey);
});
const _removeAction = keys.length > 1 ? "removeBatch" : controlAction.removeAction;
const _removeAction = keys.length > 1 ? 'removeBatch' : controlAction.removeAction;
let _context = deepCopy(context);
Object.assign(_context, { [appDeCodeName]: keys });
let _viewParams = deepCopy(viewParams);
......@@ -183,13 +216,11 @@ export class MDControl extends MainControl {
[appDeCodeName]: keys,
};
Object.assign(arg, { viewParams: _viewParams });
const response = await controlService.remove(
_context,
arg,
{ action: _removeAction, isLoading: showBusyIndicator },
);
const response = await controlService.remove(_context, arg, {
action: _removeAction,
isLoading: showBusyIndicator,
});
if (response.status || response.status == 200) {
}
}
} catch (error) {
......@@ -197,21 +228,34 @@ export class MDControl extends MainControl {
console.log(error);
}
};
// 在类里绑定能力方法
this.remove = remove;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
if (Object.is(controlName, tag) && Object.is("remove", action)) {
if (Object.is(controlName, tag) && Object.is('remove', action)) {
remove(data);
}
});
// 部件卸载时退订viewSubject
onUnmounted(() => {
subscription.unsubscribe();
});
}
return { remove };
return remove;
}
/**
* 新建行行为(新增一条数据)
*
* @protected
* @param [opt={}]
*/
protected async newRow(opt: any = {}) {}
/**
* @description 使用新建功能模块
* @return {*}
......@@ -230,11 +274,10 @@ export class MDControl extends MainControl {
let _viewParams = deepCopy(viewParams);
const arg: any = { ...opt };
Object.assign(arg, { viewParams: _viewParams });
const response = await controlService.loadDraft(
_context,
arg,
{ action: controlAction.loadDraftAction, isLoading: showBusyIndicator },
);
const response = await controlService.loadDraft(_context, arg, {
action: controlAction.loadDraftAction,
isLoading: showBusyIndicator,
});
if (response.status || response.status == 200) {
items.value = [...items.value, [response.data]];
}
......@@ -244,10 +287,13 @@ export class MDControl extends MainControl {
}
};
// 在类里绑定能力方法
this.newRow = newRow;
// 订阅viewSubject,监听load行为
if (viewSubject) {
let subscription = viewSubject.subscribe(({ tag, action, data }: IActionParam) => {
if (Object.is(controlName, tag) && Object.is("newRow", action)) {
if (Object.is(controlName, tag) && Object.is('newRow', action)) {
newRow(data);
}
});
......@@ -257,9 +303,7 @@ export class MDControl extends MainControl {
});
}
return {
newRow,
};
return newRow;
}
/**
......@@ -267,7 +311,7 @@ export class MDControl extends MainControl {
*
* @memberof MDControl
*/
public handleStateChange() { }
public handleStateChange() {}
/**
* 处理数据分组
......@@ -276,10 +320,10 @@ export class MDControl extends MainControl {
*/
public handleDataGroup() {
const { enableGroup, groupField, groupMode } = this.state.mdCtrlGroup;
if (enableGroup && groupField && !Object.is(groupMode, "NONE")) {
if (Object.is(groupMode, "AUTO")) {
if (enableGroup && groupField && !Object.is(groupMode, 'NONE')) {
if (Object.is(groupMode, 'AUTO')) {
this.autoGroupData();
} else if (Object.is(groupMode, "CODELIST")) {
} else if (Object.is(groupMode, 'CODELIST')) {
this.codeListGroupData();
}
}
......@@ -291,7 +335,7 @@ export class MDControl extends MainControl {
* @protected
* @memberof MDControl
*/
protected autoGroupData() { }
protected autoGroupData() {}
/**
* 代码表分组
......@@ -299,7 +343,7 @@ export class MDControl extends MainControl {
* @protected
* @memberof MDControl
*/
protected codeListGroupData() { }
protected codeListGroupData() {}
/**
* 获取当前激活数据
......@@ -322,8 +366,8 @@ export class MDControl extends MainControl {
...superParams,
load: this.useLoad(),
save: this.useSave(),
romove: this.useRemove(),
new: this.useNewRow()
remove: this.useRemove(),
newRow: this.useNewRow(),
};
}
}
......@@ -75,7 +75,6 @@ export class SearchFormControl extends FormControl {
public moduleInstall() {
const superParams = super.moduleInstall();
// 表单行为能力启用
const { loadDraft } = this.useLoadDraft();
return {
...superParams,
onSearch: this.onSearch.bind(this),
......
import { toRef } from "vue";
import { deepCopy, deepObjectMerge, IActionParam, MainControl } from "@core";
import { TreeControlProps } from "./tree-control-prop";
import { TreeControlState } from "./tree-control-state";
......@@ -143,9 +142,7 @@ export class TreeControl extends MainControl {
subscription.unsubscribe();
})
}
return {
load
};
return load;
}
/**
......@@ -155,11 +152,10 @@ export class TreeControl extends MainControl {
*/
public moduleInstall() {
const superParams = super.moduleInstall();
const { load } = this.useLoad();
return {
...superParams,
treeNodeSelect: this.treeNodeSelect.bind(this),
load
load: this.useLoad(),
};
}
}
\ No newline at end of file
......@@ -196,14 +196,13 @@ const handleShowState = ($event: any) => {
:maskClosable="true"
:destroyOnClose="true"
:width="width"
:height="height"
:bodyStyle="style"
@cancel="onVisibleChange($event)"
>
<component
:is="viewName"
class="app-modal-view-component"
:width="width"
:height="height"
:context="context"
:viewParams="viewParams"
:viewDefaultUsage="false"
......
......@@ -39,7 +39,7 @@ const collapsedChange = () => {
</script>
<template>
<AppDefaultIndexViewLayout class="app-index-view" :menuAlign="state.menuAlign" :collapsed="collapsed">
<AppDefaultIndexViewLayout :class="['app-index-view', state.viewSysCss]" :menuAlign="state.menuAlign" :collapsed="collapsed">
<template #caption>
<div class="index-view-header">
\{{state.viewCaption}}
......
......@@ -44,7 +44,7 @@ const { state, grid, onCtrlEvent, onToolbarEvent, onQuickGroupEvent } = new Grid
</script>
<template>
<AppGridViewLayout class="app-grid-view">
<AppGridViewLayout :class="['app-grid-view', state.viewSysCss]">
<template v-slot:caption>
<AppIconText class="app-view__caption" size="large" :text="state.viewCaption" />
</template>
......
......@@ -36,7 +36,7 @@ const { state, confirm, handleCtrlEvent } = new PickupGridView(viewState, props,
</script>
<template>
<AppPickerUpGridViewLayout class="app-pickup-grid-view">
<AppPickerUpGridViewLayout :class="['app-pickup-grid-view', state.viewSysCss]">
<template v-slot:header-left>
<AppIconText class="app-view__caption" size="large" :text="state.viewCaption" />
</template>
......
......@@ -32,7 +32,7 @@ const { state, cancel, confirm,handleCtrlEvent } = new PickupView(viewState, pro
</script>
<template>
<AppPickerUpViewLayout class="app-pickup-view">
<AppPickerUpViewLayout :class="['app-pickup-view', state.viewSysCss]">
<template v-slot:header-left>
<AppIconText class="app-view__caption" size="large" :text="state.viewCaption" />
</template>
......
......@@ -29,7 +29,7 @@ const { state, handleCtrlEvent, onToolbarEvent } = new TreeExpView(viewState, pr
</script>
<template>
<AppTreeExpViewLayout class="app-tree-exp-view">
<AppTreeExpViewLayout :class="['app-tree-exp-view', state.viewSysCss]">
<template v-slot:caption>
<AppIconText class="app-view__caption" size="large" :text="state.viewCaption" />
</template>
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册