提交 370b1696 编写于 作者: ibizdev's avatar ibizdev

lxm1993 发布系统代码 [TrainSys,网页端]

上级 f3904da6
...@@ -72,7 +72,7 @@ ...@@ -72,7 +72,7 @@
"@interactjs/actions": "^1.10.11", "@interactjs/actions": "^1.10.11",
"@interactjs/modifiers": "^1.10.11", "@interactjs/modifiers": "^1.10.11",
"@interactjs/dev-tools": "^1.10.11", "@interactjs/dev-tools": "^1.10.11",
"@ibiz/dynamic-model-api": "0.0.61", "@ibiz/dynamic-model-api": "1.0.5",
"@ibiz/model-location": "^0.0.4", "@ibiz/model-location": "^0.0.4",
"xgplayer":"2.31.4", "xgplayer":"2.31.4",
"xlsx": "^0.16.9" "xlsx": "^0.16.9"
......
...@@ -18,10 +18,6 @@ export class AppModelService extends PSModelServiceImpl { } ...@@ -18,10 +18,6 @@ export class AppModelService extends PSModelServiceImpl { }
if(param && param.srfsandboxtag){ if(param && param.srfsandboxtag){
return SandboxService.getInstance().getSandBoxInstance(param.srfsandboxtag).getModelService(param); return SandboxService.getInstance().getSandBoxInstance(param.srfsandboxtag).getModelService(param);
}else{ }else{
if(param && param.instTag && param.instTag2){ return GlobalHelp.getModelService();
return GlobalHelp.getModelServiceByTag(param.instTag,param.instTag2);
}else{
return GlobalHelp.getModelService(param?.srfdynainstid);
}
} }
} }
\ No newline at end of file
import { DynamicInstanceConfig, GlobalHelp, ModelInstanceHelp } from "@ibiz/dynamic-model-api"; import { GlobalHelp, ModelInstanceHelp } from "@ibiz/dynamic-model-api";
import qs from 'qs'; import qs from 'qs';
import { Http } from "../../../utils/net/http"; import { Http } from "../../../utils/net/http";
import { AppServiceBase } from "../../app-service/app-base.service"; import { AppServiceBase } from "../../app-service/app-base.service";
...@@ -45,7 +45,7 @@ export class SandboxInstance { ...@@ -45,7 +45,7 @@ export class SandboxInstance {
*/ */
public async initSandBox() { public async initSandBox() {
const service = new AppModelService(); const service = new AppModelService();
this.help = await GlobalHelp.sandboxInstall(service, async (strPath: string, config: DynamicInstanceConfig) => { this.help = await GlobalHelp.sandboxInstall(service, async (strPath: string) => {
let url: string = ''; let url: string = '';
const Environment = AppServiceBase.getInstance().getAppEnvironment(); const Environment = AppServiceBase.getInstance().getAppEnvironment();
if (Environment.bDynamic) { if (Environment.bDynamic) {
...@@ -55,17 +55,14 @@ export class SandboxInstance { ...@@ -55,17 +55,14 @@ export class SandboxInstance {
if (dynamodeltag) { if (dynamodeltag) {
Object.assign(queryParam, { dynamodeltag }); Object.assign(queryParam, { dynamodeltag });
} }
if (config) {
Object.assign(queryParam, { srfInstTag: config.instTag, srfInstTag2: config.instTag2 });
}
if (queryParam && Object.keys(queryParam).length > 0) { if (queryParam && Object.keys(queryParam).length > 0) {
url += `?${qs.stringify(queryParam)}`; url += `?${qs.stringify(queryParam)}`;
} }
} else { } else {
const microAppService = AppServiceBase.getInstance().getMicroAppService(); const microAppService = AppServiceBase.getInstance().getMicroAppService();
if(microAppService && microAppService.getIsMicroApp() && microAppService.getMicroAppFolder()){ if (microAppService && microAppService.getIsMicroApp() && microAppService.getMicroAppFolder()) {
url = `./${microAppService.getMicroAppFolder()}/assets/model${strPath}`; url = `./${microAppService.getMicroAppFolder()}/assets/model${strPath}`;
}else{ } else {
url = `./assets/model${strPath}`; url = `./assets/model${strPath}`;
} }
} }
...@@ -86,11 +83,7 @@ export class SandboxInstance { ...@@ -86,11 +83,7 @@ export class SandboxInstance {
* @memberof SandboxInstance * @memberof SandboxInstance
*/ */
public async getModelService(param: any) { public async getModelService(param: any) {
if (param && param.instTag && param.instTag2) { return this.help.getModelService();
return this.help.getModelServiceByTag(param.instTag, param.instTag2);
} else {
return this.help.getModelService(param?.srfdynainstid);
}
} }
} }
\ No newline at end of file
import { IPSAppDEUIAction, IPSAppView, IPSAppViewRef, IPSPanelContainer, IPSPanelField, IPSPanelItem, IPSPanelTabPage, IPSPanelTabPanel, IPSPanelUserControl, DynamicInstanceConfig } from "@ibiz/dynamic-model-api"; import { IPSAppDEUIAction, IPSAppView, IPSAppViewRef, IPSPanelContainer, IPSPanelField, IPSPanelItem, IPSPanelTabPage, IPSPanelTabPanel, IPSPanelUserControl } from "@ibiz/dynamic-model-api";
import { clearCookie, setCookie } from "qx-util"; import { clearCookie, setCookie } from "qx-util";
import { AppServiceBase, DataServiceHelp, GetModelService, Http, ModelTool, PluginService, removeSessionStorage, Util, ViewTool } from "ibiz-core"; import { AppServiceBase, DataServiceHelp, GetModelService, Http, ModelTool, PluginService, removeSessionStorage, Util, ViewTool } from "ibiz-core";
import { NavDataService } from "../common-service/app-navdata-service"; import { NavDataService } from "../common-service/app-navdata-service";
...@@ -765,13 +765,7 @@ export class AppGlobalService { ...@@ -765,13 +765,7 @@ export class AppGlobalService {
let localdata: any; let localdata: any;
let requestResult: Promise<any>; let requestResult: Promise<any>;
let copyContext: any = Util.deepCopy(_this.context); let copyContext: any = Util.deepCopy(_this.context);
if (copyContext.srfdynainstid) {
let dynainstParam: DynamicInstanceConfig = (await GetModelService(copyContext)).getDynaInsConfig();
Object.assign(copyContext, dynainstParam ? dynainstParam : {});
requestResult = _this.appEntityService.getCopyWorkflow(copyContext);
} else {
requestResult = _this.appEntityService.getStandWorkflow(copyContext); requestResult = _this.appEntityService.getStandWorkflow(copyContext);
}
requestResult.then((response: any) => { requestResult.then((response: any) => {
const { data: targetData, status: status } = response; const { data: targetData, status: status } = response;
if (status !== 200) { if (status !== 200) {
......
...@@ -254,6 +254,16 @@ export default class AppColumnLink extends Vue { ...@@ -254,6 +254,16 @@ export default class AppColumnLink extends Vue {
targetRedirectView.getPSAppDataEntity(), targetRedirectView.getPSAppDataEntity(),
{context} {context}
); );
if (targetRedirectView.getPSAppViewNavContexts()) {
const localContextRef: any = Util.formatNavParam(targetRedirectView.getPSAppViewNavContexts(), true);
const _context: any = Util.computedNavData(this.data, context, params, localContextRef);
Object.assign(context, _context);
}
if (targetRedirectView.getPSAppViewNavParams()) {
const localContextRef: any = Util.formatNavParam(targetRedirectView.getPSAppViewNavParams(), true);
const _params: any = Util.computedNavData(this.data, context, params, localContextRef);
Object.assign(params, _params);
}
await redirectUIService.loaded(); await redirectUIService.loaded();
const redirectAppEntity: IPSAppDataEntity | null = targetRedirectView.getPSAppDataEntity(); const redirectAppEntity: IPSAppDataEntity | null = targetRedirectView.getPSAppDataEntity();
await ViewTool.calcRedirectContext(context, this.data, redirectAppEntity); await ViewTool.calcRedirectContext(context, this.data, redirectAppEntity);
...@@ -266,6 +276,18 @@ export default class AppColumnLink extends Vue { ...@@ -266,6 +276,18 @@ export default class AppColumnLink extends Vue {
if (!result) { if (!result) {
return; return;
} }
const data = result.srfdata;
if (data) {
const linkUrl: string = data.linkurl;
if (linkUrl && linkUrl !== '') {
if (linkUrl.startsWith('http://') || linkUrl.startsWith('https://')) {
window.open(linkUrl, '_blank');
} else {
this.$router.push(linkUrl);
}
return;
}
}
let targetOpenViewRef: IPSAppViewRef | undefined = ViewTool.computeRedirectViewRef(targetRedirectView,params,result); let targetOpenViewRef: IPSAppViewRef | undefined = ViewTool.computeRedirectViewRef(targetRedirectView,params,result);
if (!targetOpenViewRef) { if (!targetOpenViewRef) {
return; return;
......
import Vue from 'vue'; import Vue from 'vue';
import qs from 'qs'; import qs from 'qs';
import { DynamicInstanceConfig, IPSAppView } from '@ibiz/dynamic-model-api'; import { IPSAppView } from '@ibiz/dynamic-model-api';
import { AppServiceBase, GetModelService, SandboxInstance, Util } from 'ibiz-core'; import { AppServiceBase, GetModelService, SandboxInstance, Util } from 'ibiz-core';
import { AppNavHistory } from '../app-service'; import { AppNavHistory } from '../app-service';
import { CommunicationService } from '@ibiz/model-location'; import { CommunicationService } from '@ibiz/model-location';
...@@ -165,13 +165,6 @@ export class ViewContainerBase extends Vue { ...@@ -165,13 +165,6 @@ export class ViewContainerBase extends Vue {
if (tempViewParam && tempViewParam.hasOwnProperty('srfsandboxtag')) { if (tempViewParam && tempViewParam.hasOwnProperty('srfsandboxtag')) {
await this.initSandBoxInst(tempViewParam); await this.initSandBoxInst(tempViewParam);
} }
if (tempViewParam.srfinsttag && tempViewParam.srfinsttag2) {
let dynainstParam: DynamicInstanceConfig = (await GetModelService({ srfsandboxtag: tempViewParam.srfsandboxtag, instTag: tempViewParam.srfinsttag, instTag2: tempViewParam.srfinsttag2 })).getDynaInsConfig();
this.context = { srfdynainstid: dynainstParam.id };
}
if (tempViewParam.srfdynainstid) {
this.context = { srfdynainstid: tempViewParam.srfdynainstid };
}
// 补充沙箱实例参数(路由) // 补充沙箱实例参数(路由)
if (tempViewParam && tempViewParam.hasOwnProperty('srfsandboxtag')) { if (tempViewParam && tempViewParam.hasOwnProperty('srfsandboxtag')) {
Object.assign(this.context, { 'srfsandboxtag': tempViewParam.srfsandboxtag }); Object.assign(this.context, { 'srfsandboxtag': tempViewParam.srfsandboxtag });
......
import { VNode } from 'vue'; import { VNode } from 'vue';
import { DynamicInstanceConfig, IPSAppDataEntity, IPSAppDERedirectView, IPSAppDEView, IPSAppView, IPSAppViewRef, IPSNavigateContext, IPSNavigateParam } from "@ibiz/dynamic-model-api"; import { IPSAppDataEntity, IPSAppDERedirectView, IPSAppDEView, IPSAppView, IPSAppViewRef, IPSNavigateContext, IPSNavigateParam } from "@ibiz/dynamic-model-api";
import { GetModelService, LogUtil, ModelTool, RedirectViewInterface, StringUtil, Util, ViewTool } from "ibiz-core"; import { GetModelService, LogUtil, ModelTool, RedirectViewInterface, StringUtil, Util, ViewTool } from "ibiz-core";
import { MainViewBase } from "./mainview-base"; import { MainViewBase } from "./mainview-base";
...@@ -135,14 +135,6 @@ export class DeRedirectViewBase extends MainViewBase implements RedirectViewInte ...@@ -135,14 +135,6 @@ export class DeRedirectViewBase extends MainViewBase implements RedirectViewInte
} }
Object.assign(tempViewParams, _viewParams); Object.assign(tempViewParams, _viewParams);
} }
// 存在动态实例
let splitArray: Array<any> = result.param.split(":");
if (splitArray && (splitArray.length == 3)) {
let curDynaInst: DynamicInstanceConfig = (await GetModelService({ instTag: splitArray[2], instTag2: splitArray[1] }))?.getDynaInsConfig();
if (curDynaInst) {
Object.assign(tempContext, { srfdynainstid: curDynaInst.id });
}
}
if (targetOpenViewRef.getRefPSAppView()) { if (targetOpenViewRef.getRefPSAppView()) {
let targetOpenView: IPSAppView | null = targetOpenViewRef.getRefPSAppView(); let targetOpenView: IPSAppView | null = targetOpenViewRef.getRefPSAppView();
if (!targetOpenView) { if (!targetOpenView) {
......
...@@ -2,7 +2,6 @@ import { Subject, Subscription } from 'rxjs'; ...@@ -2,7 +2,6 @@ import { Subject, Subscription } from 'rxjs';
import { IPSAppView, IPSControl, IPSLanguageRes } from '@ibiz/dynamic-model-api'; import { IPSAppView, IPSControl, IPSLanguageRes } from '@ibiz/dynamic-model-api';
import { ViewMessageService, Util, ViewTool, AppServiceBase, ViewContext, ModelTool, GetModelService, AppModelService, LogUtil, SandboxInstance, ViewInterface, appEngineService, throttle } from 'ibiz-core'; import { ViewMessageService, Util, ViewTool, AppServiceBase, ViewContext, ModelTool, GetModelService, AppModelService, LogUtil, SandboxInstance, ViewInterface, appEngineService, throttle } from 'ibiz-core';
import { AppMessageBoxService, AppNavHistory, NavDataService } from '../app-service'; import { AppMessageBoxService, AppNavHistory, NavDataService } from '../app-service';
import { DynamicInstanceConfig } from '@ibiz/dynamic-model-api/dist/types/core';
import { createUUID, isNilOrEmpty } from 'qx-util'; import { createUUID, isNilOrEmpty } from 'qx-util';
import { ControlContainer } from '../control-container/control-container'; import { ControlContainer } from '../control-container/control-container';
...@@ -736,7 +735,6 @@ export class ViewBase extends ControlContainer implements ViewInterface { ...@@ -736,7 +735,6 @@ export class ViewBase extends ControlContainer implements ViewInterface {
Object.assign(_this.viewparams, { srfparentkey: _this.context.srfparentkey }); Object.assign(_this.viewparams, { srfparentkey: _this.context.srfparentkey });
} }
_this.handleCustomViewData(); _this.handleCustomViewData();
_this.handleOtherViewData();
return; return;
} }
const path = (_this.$route.matched[_this.$route.matched.length - 1]).path; const path = (_this.$route.matched[_this.$route.matched.length - 1]).path;
...@@ -759,19 +757,11 @@ export class ViewBase extends ControlContainer implements ViewInterface { ...@@ -759,19 +757,11 @@ export class ViewBase extends ControlContainer implements ViewInterface {
if (_this.viewInstance && ModelTool.getContainerAppEntityCodeName(this.viewInstance)) { if (_this.viewInstance && ModelTool.getContainerAppEntityCodeName(this.viewInstance)) {
Object.assign(_this.context, { srfsessionid: Util.createUUID() }); Object.assign(_this.context, { srfsessionid: Util.createUUID() });
} }
if (_this.viewparams.srfinsttag && _this.viewparams.srfinsttag2 && this.modelService) {
let dynainstParam: DynamicInstanceConfig = this.modelService.getDynaInsConfig();
Object.assign(_this.context, { srfdynainstid: dynainstParam.id });
}
if (_this.viewparams && _this.viewparams.srfdynainstid) {
Object.assign(_this.context, { srfdynainstid: this.viewparams.srfdynainstid });
}
// 补充沙箱实例参数(路由) // 补充沙箱实例参数(路由)
if (_this.viewparams && _this.viewparams.hasOwnProperty('srfsandboxtag')) { if (_this.viewparams && _this.viewparams.hasOwnProperty('srfsandboxtag')) {
Object.assign(_this.context, { 'srfsandboxtag': _this.viewparams.srfsandboxtag }); Object.assign(_this.context, { 'srfsandboxtag': _this.viewparams.srfsandboxtag });
} }
_this.handleCustomViewData(); _this.handleCustomViewData();
_this.handleOtherViewData();
} }
/** /**
...@@ -799,21 +789,6 @@ export class ViewBase extends ControlContainer implements ViewInterface { ...@@ -799,21 +789,6 @@ export class ViewBase extends ControlContainer implements ViewInterface {
} }
} }
/**
* 处理其他数据(多实例)
*
* @memberof ViewBase
*/
public handleOtherViewData() {
let appEnvironment = AppServiceBase.getInstance().getAppEnvironment();
if (appEnvironment.bDynamic && this.modelService) {
let dynainstParam: DynamicInstanceConfig = this.modelService.getDynaInsConfig();
if (dynainstParam) {
Object.assign(this.viewparams, { srfinsttag: dynainstParam.instTag, srfinsttag2: dynainstParam.instTag2 });
}
}
}
/** /**
* 处理指定视图控制关系将父键转为父实体上下文 * 处理指定视图控制关系将父键转为父实体上下文
* *
......
...@@ -3,7 +3,7 @@ import { ViewTool, FormItemModel, Util, Verify, ModelTool, AppServiceBase, LogUt ...@@ -3,7 +3,7 @@ import { ViewTool, FormItemModel, Util, Verify, ModelTool, AppServiceBase, LogUt
import { MDControlBase } from './md-control-base'; import { MDControlBase } from './md-control-base';
import { AppGridService } from '../ctrl-service/app-grid-service'; import { AppGridService } from '../ctrl-service/app-grid-service';
import { AppViewLogicService } from 'ibiz-vue'; import { AppViewLogicService } from 'ibiz-vue';
import { IPSDEDataImport, DynamicInstanceConfig, IPSDEDataImportItem, IPSAppCodeList, IPSAppDataEntity, IPSAppDEField, IPSCodeList, IPSDEDataExport, IPSDEDataExportItem, IPSDEGrid, IPSDEGridColumn, IPSDEGridDataItem, IPSDEGridEditItem, IPSDEGridFieldColumn, IPSDEGridUAColumn, IPSDEUIAction, IPSDEUIActionGroup, IPSUIAction, IPSUIActionGroupDetail, IPSDEGridGroupColumn, IPSDEGridEditItemUpdate, IPSAppDEDataSet, IPSDEFValueRule } from '@ibiz/dynamic-model-api'; import { IPSDEDataImport, IPSAppCodeList, IPSAppDataEntity, IPSAppDEField, IPSCodeList, IPSDEDataExport, IPSDEDataExportItem, IPSDEGrid, IPSDEGridColumn, IPSDEGridDataItem, IPSDEGridEditItem, IPSDEGridFieldColumn, IPSDEGridUAColumn, IPSDEUIAction, IPSDEUIActionGroup, IPSUIAction, IPSUIActionGroupDetail, IPSDEGridGroupColumn, IPSDEGridEditItemUpdate, IPSAppDEDataSet, IPSDEFValueRule } from '@ibiz/dynamic-model-api';
import axios from 'axios'; import axios from 'axios';
import moment from 'moment'; import moment from 'moment';
...@@ -625,9 +625,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -625,9 +625,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
* *
* @memberof GridControlBase * @memberof GridControlBase
*/ */
public initMajorInfoColName(){ public initMajorInfoColName() {
if (this.allColumnsInstance.length > 0) { if (this.allColumnsInstance.length > 0) {
this.allColumnsInstance.forEach((column:any)=>{ this.allColumnsInstance.forEach((column: any) => {
if (column.columnType == 'DEFGRIDCOLUMN') { if (column.columnType == 'DEFGRIDCOLUMN') {
let majorInfoField = column.getPSAppDEField(); let majorInfoField = column.getPSAppDEField();
if (majorInfoField && majorInfoField.majorField) { if (majorInfoField && majorInfoField.majorField) {
...@@ -899,7 +899,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -899,7 +899,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
} }
} }
} }
if(tempMessage){ if (tempMessage) {
this.errorMessages.push(tempMessage); this.errorMessages.push(tempMessage);
} }
} }
...@@ -934,7 +934,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -934,7 +934,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
Object.assign(page, { sort: sort }); Object.assign(page, { sort: sort });
} }
Object.assign(arg, page); Object.assign(arg, page);
const parentdata: any = { }; const parentdata: any = {};
this.ctrlEvent({ controlname: this.name, action: "beforeload", data: parentdata }); this.ctrlEvent({ controlname: this.name, action: "beforeload", data: parentdata });
Object.assign(arg, parentdata); Object.assign(arg, parentdata);
let tempViewParams: any = parentdata.viewparams ? parentdata.viewparams : opt ? opt : {}; let tempViewParams: any = parentdata.viewparams ? parentdata.viewparams : opt ? opt : {};
...@@ -942,15 +942,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -942,15 +942,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
// 多实例查询数据处理 // 多实例查询数据处理
let appEnvironment = AppServiceBase.getInstance().getAppEnvironment(); let appEnvironment = AppServiceBase.getInstance().getAppEnvironment();
if (appEnvironment.bDynamic) { if (appEnvironment.bDynamic) {
if (tempViewParams.hasOwnProperty("srfdynainstid")) {
let dynainstParam: DynamicInstanceConfig = this.modelService?.getDynaInsConfig();
Object.assign(tempViewParams, { srfinsttag: dynainstParam.instTag, srfinsttag2: dynainstParam.instTag2 });
delete tempViewParams.srfdynainstid;
} else {
if (!tempViewParams.hasOwnProperty("srfinsttag")) { if (!tempViewParams.hasOwnProperty("srfinsttag")) {
Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" }); Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" });
} }
}
} else { } else {
if (tempViewParams.hasOwnProperty("srfwf")) { if (tempViewParams.hasOwnProperty("srfwf")) {
Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" }); Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" });
...@@ -1033,7 +1027,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1033,7 +1027,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
Object.assign(tempViewParam, page) Object.assign(tempViewParam, page)
Object.keys(parentdata)?.forEach((key: string) => { Object.keys(parentdata)?.forEach((key: string) => {
if (!Object.is(key, 'viewparams') && parentdata[key]) { if (!Object.is(key, 'viewparams') && parentdata[key]) {
Object.assign(tempViewParam, { [key]: parentdata[key]}) Object.assign(tempViewParam, { [key]: parentdata[key] })
} }
}) })
this.getAggData(tempContext, tempViewParam); this.getAggData(tempContext, tempViewParam);
...@@ -1123,9 +1117,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1123,9 +1117,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
} }
}); });
if(!dataInfo){ if (!dataInfo) {
dataInfo = (this.$t('app.grid.selected') as string) + _datas.length + (this.$t('app.grid.records') as string) + (this.$t('app.grid.data') as string); dataInfo = (this.$t('app.grid.selected') as string) + _datas.length + (this.$t('app.grid.records') as string) + (this.$t('app.grid.data') as string);
}else{ } else {
if (_datas.length < 5) { if (_datas.length < 5) {
dataInfo = dataInfo + ' ' + (this.$t('app.grid.total') as string) + _datas.length + (this.$t('app.grid.records') as string) + (this.$t('app.grid.data') as string); dataInfo = dataInfo + ' ' + (this.$t('app.grid.total') as string) + _datas.length + (this.$t('app.grid.records') as string) + (this.$t('app.grid.data') as string);
} else { } else {
...@@ -1138,23 +1132,23 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1138,23 +1132,23 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
_datas.forEach((data: any) => { _datas.forEach((data: any) => {
keys.push(data.srfkey); keys.push(data.srfkey);
}); });
if(keys.length === 0){ if (keys.length === 0) {
return; return;
} }
let _removeAction = this.removeAction; let _removeAction = this.removeAction;
// 临时模式批删除 // 临时模式批删除
if(Object.is(this.removeAction,'RemoveTemp') && keys.length > 1){ if (Object.is(this.removeAction, 'RemoveTemp') && keys.length > 1) {
_removeAction = 'RemoveBatchTemp'; _removeAction = 'RemoveBatchTemp';
} }
const tempContext: any = Util.deepCopy(this.context); const tempContext: any = Util.deepCopy(this.context);
let _keys = keys.length > 1 ? keys : keys[0]; let _keys = keys.length > 1 ? keys : keys[0];
const arg = { [this.appDeCodeName.toLowerCase()]: _keys }; const arg = { [this.appDeCodeName.toLowerCase()]: _keys };
Object.assign(arg, { viewparams: this.viewparams }); Object.assign(arg, { viewparams: this.viewparams });
let promises:any; let promises: any;
if(keys && keys.length > 1){ if (keys && keys.length > 1) {
let promiseArr: any = []; let promiseArr: any = [];
_keys.forEach((ele:any) =>{ _keys.forEach((ele: any) => {
Object.assign(tempContext,{[this.appDeCodeName?.toLowerCase()]:ele}); Object.assign(tempContext, { [this.appDeCodeName?.toLowerCase()]: ele });
if (this.viewparams && Object.keys(this.viewparams).length) { if (this.viewparams && Object.keys(this.viewparams).length) {
Object.assign(arg, { viewparams: this.viewparams }); Object.assign(arg, { viewparams: this.viewparams });
} }
...@@ -1162,8 +1156,8 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1162,8 +1156,8 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
promiseArr.push(this.service.delete(_removeAction, tempContext, arg, this.showBusyIndicator)); promiseArr.push(this.service.delete(_removeAction, tempContext, arg, this.showBusyIndicator));
}) })
promises = Promise.all(promiseArr); promises = Promise.all(promiseArr);
}else{ } else {
Object.assign(tempContext,{[this.appDeCodeName?.toLowerCase()]:_keys}); Object.assign(tempContext, { [this.appDeCodeName?.toLowerCase()]: _keys });
if (this.viewparams && Object.keys(this.viewparams).length) { if (this.viewparams && Object.keys(this.viewparams).length) {
Object.assign(arg, { viewparams: this.viewparams }); Object.assign(arg, { viewparams: this.viewparams });
} }
...@@ -1200,7 +1194,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1200,7 +1194,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
this.totalRecord -= _datas.length; this.totalRecord -= _datas.length;
this.ctrlEvent({ controlname: this.name, action: "remove", data: {} }); this.ctrlEvent({ controlname: this.name, action: "remove", data: {} });
this.selections = []; this.selections = [];
}).catch (async (error: any) =>{ }).catch(async (error: any) => {
this.onControlResponse('remove', error); this.onControlResponse('remove', error);
if (!(await this.handleCtrlEvents('onremoveerror', { action: this.removeAction, navParam: arg, data: error?.data }))) { if (!(await this.handleCtrlEvents('onremoveerror', { action: this.removeAction, navParam: arg, data: error?.data }))) {
return; return;
...@@ -1427,7 +1421,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1427,7 +1421,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
} }
}); });
} else { } else {
this.handleCtrlEvents('onimporterror').then((res: boolean) => {}); this.handleCtrlEvents('onimporterror').then((res: boolean) => { });
} }
}); });
} }
...@@ -1542,15 +1536,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1542,15 +1536,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
let appModelObj = AppServiceBase.getInstance().getAppModelDataObject(); let appModelObj = AppServiceBase.getInstance().getAppModelDataObject();
let appEnvironment = AppServiceBase.getInstance().getAppEnvironment(); let appEnvironment = AppServiceBase.getInstance().getAppEnvironment();
if (appEnvironment.bDynamic) { if (appEnvironment.bDynamic) {
if (tempViewParams.hasOwnProperty("srfdynainstid")) {
let dynainstParam: DynamicInstanceConfig = this.modelService?.getDynaInsConfig();
Object.assign(tempViewParams, { srfinsttag: dynainstParam.instTag, srfinsttag2: dynainstParam.instTag2 });
delete tempViewParams.srfdynainstid;
} else {
if (!tempViewParams.hasOwnProperty("srfinsttag")) { if (!tempViewParams.hasOwnProperty("srfinsttag")) {
Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" }); Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" });
} }
}
} else { } else {
if (tempViewParams.hasOwnProperty("srfwf")) { if (tempViewParams.hasOwnProperty("srfwf")) {
Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" }); Object.assign(tempViewParams, { srfinsttag: "__srfstdinst__" });
...@@ -1567,7 +1555,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1567,7 +1555,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
post.then((response: any) => { post.then((response: any) => {
this.onControlResponse('exportExcel', response); this.onControlResponse('exportExcel', response);
if (!response || response.status !== 200) { if (!response || response.status !== 200) {
this.handleCtrlEvents('onexporterror', { data: response?.data }).then((result: boolean) => {}); this.handleCtrlEvents('onexporterror', { data: response?.data }).then((result: boolean) => { });
this.$throw((this.$t('app.grid.exportfail') as string) + ',' + response.info, 'exportExcel'); this.$throw((this.$t('app.grid.exportfail') as string) + ',' + response.info, 'exportExcel');
return; return;
} }
...@@ -1583,7 +1571,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1583,7 +1571,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
}).catch((response: any) => { }).catch((response: any) => {
this.onControlResponse('exportExcel', response); this.onControlResponse('exportExcel', response);
this.handleCtrlEvents('onexporterror', { data: response?.data }).then((result: boolean) => {}); this.handleCtrlEvents('onexporterror', { data: response?.data }).then((result: boolean) => { });
this.$throw(response, 'exportExcel'); this.$throw(response, 'exportExcel');
}); });
} }
...@@ -1632,7 +1620,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1632,7 +1620,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
responseType: 'blob' responseType: 'blob'
}).then((response: any) => { }).then((response: any) => {
if (!response || response.status !== 200) { if (!response || response.status !== 200) {
this.handleCtrlEvents('onexporterror', { navParam: params, data: this.items }).then((exportErrorResult: boolean) => {}); this.handleCtrlEvents('onexporterror', { navParam: params, data: this.items }).then((exportErrorResult: boolean) => { });
return; return;
} }
this.handleCtrlEvents('onexportsuccess', { navParam: params, data: this.items }).then((exportSuccessResult: boolean) => { this.handleCtrlEvents('onexportsuccess', { navParam: params, data: this.items }).then((exportSuccessResult: boolean) => {
...@@ -1653,7 +1641,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -1653,7 +1641,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
}) })
}).catch((error: any) => { }).catch((error: any) => {
this.handleCtrlEvents('onexporterror', { navParam: params, data: this.items }).then((result: boolean) => {}); this.handleCtrlEvents('onexporterror', { navParam: params, data: this.items }).then((result: boolean) => { });
try { try {
const reader = new FileReader(); const reader = new FileReader();
reader.readAsText(error.data, 'utf-8'); reader.readAsText(error.data, 'utf-8');
...@@ -2290,9 +2278,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -2290,9 +2278,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
if (!(dataEntity && dataSet && dataSet.codeName)) { if (!(dataEntity && dataSet && dataSet.codeName)) {
return; return;
} }
DataServiceHelp.getInstance().getService(dataEntity, {context}).then((service: any) => { DataServiceHelp.getInstance().getService(dataEntity, { context }).then((service: any) => {
if (service && dataSet.codeName) { if (service && dataSet.codeName) {
service.execute(dataSet.codeName,context, data).then((response: any) => { service.execute(dataSet.codeName, context, data).then((response: any) => {
_this.onControlResponse('getAggData', response); _this.onControlResponse('getAggData', response);
if (!response.status || response.status !== 200) { if (!response.status || response.status !== 200) {
_this.$throw(response, 'getAggData'); _this.$throw(response, 'getAggData');
...@@ -2909,7 +2897,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -2909,7 +2897,7 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
if (!Object.is(EntityFieldErrorCode.ERROR_OK, detail.fielderrortype) && detail.fieldname) { if (!Object.is(EntityFieldErrorCode.ERROR_OK, detail.fielderrortype) && detail.fieldname) {
// 解析错误信息 // 解析错误信息
let entityFieldError = new EntityFieldError(detail); let entityFieldError = new EntityFieldError(detail);
let fieldErrorInfo = entityFieldError.fieldlogicname+entityFieldError.fielderrorinfo; let fieldErrorInfo = entityFieldError.fieldlogicname + entityFieldError.fielderrorinfo;
// 填充有detailModel字段的错误信息。 // 填充有detailModel字段的错误信息。
const tempEditItem: any = this.findEditItemByField(detail.fieldname); const tempEditItem: any = this.findEditItemByField(detail.fieldname);
...@@ -2920,9 +2908,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa ...@@ -2920,9 +2908,9 @@ export class GridControlBase extends MDControlBase implements GridControlInterfa
} }
// notice显示的错误信息,默认只显示没有detailModel字段的错误信息,noticeAllFieldsError为true时显示所有的字段。 // notice显示的错误信息,默认只显示没有detailModel字段的错误信息,noticeAllFieldsError为true时显示所有的字段。
if(this.Environment.noticeAllFieldsError || !tempEditItem){ if (this.Environment.noticeAllFieldsError || !tempEditItem) {
indexs.forEach((_index: any) => { indexs.forEach((_index: any) => {
errorMsg += `第${_index+1}行:${fieldErrorInfo}<br/>`; errorMsg += `第${_index + 1}行:${fieldErrorInfo}<br/>`;
}) })
} }
} }
......
import qs from 'qs'; import qs from 'qs';
import { GlobalHelp, IPSAppView, DynamicInstanceConfig } from '@ibiz/dynamic-model-api'; import { GlobalHelp, IPSAppView } from '@ibiz/dynamic-model-api';
import { clearCookie, getCookie, SyncSeriesHook } from 'qx-util'; import { clearCookie, getCookie, SyncSeriesHook } from 'qx-util';
import { AppServiceBase, Http, getSessionStorage, setSessionStorage, AppModelService, Util, GetModelService, ViewTool } from 'ibiz-core'; import { AppServiceBase, Http, getSessionStorage, setSessionStorage, AppModelService, Util, GetModelService, ViewTool } from 'ibiz-core';
import { AppCenterService, AppNoticeService, AppViewLogicService, NoticeHandler } from 'ibiz-vue'; import { AppCenterService, AppNoticeService, AppViewLogicService, NoticeHandler } from 'ibiz-vue';
...@@ -210,7 +210,7 @@ export class AuthGuard { ...@@ -210,7 +210,7 @@ export class AuthGuard {
AppServiceBase.getInstance().setViewLogicService(AppViewLogicService.getInstance()); AppServiceBase.getInstance().setViewLogicService(AppViewLogicService.getInstance());
AppServiceBase.getInstance().setAppComponentService(AppComponentService); AppServiceBase.getInstance().setAppComponentService(AppComponentService);
const service = new AppModelService(); const service = new AppModelService();
await GlobalHelp.install(service, async (strPath: string, config: DynamicInstanceConfig) => { await GlobalHelp.install(service, async (strPath: string) => {
let url: string = ''; let url: string = '';
if (Environment.bDynamic) { if (Environment.bDynamic) {
url = `${Environment.remoteDynaPath}${strPath}`; url = `${Environment.remoteDynaPath}${strPath}`;
...@@ -219,9 +219,6 @@ export class AuthGuard { ...@@ -219,9 +219,6 @@ export class AuthGuard {
if (dynamodeltag) { if (dynamodeltag) {
Object.assign(queryParam, { dynamodeltag }); Object.assign(queryParam, { dynamodeltag });
} }
if (config) {
Object.assign(queryParam, { srfInstTag: config.instTag, srfInstTag2: config.instTag2 });
}
if (queryParam && Object.keys(queryParam).length > 0) { if (queryParam && Object.keys(queryParam).length > 0) {
url += `?${qs.stringify(queryParam)}`; url += `?${qs.stringify(queryParam)}`;
} }
......
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
</changeSet> </changeSet>
<!--输出实体[BOOK]数据结构 --> <!--输出实体[BOOK]数据结构 -->
<changeSet author="root" id="tab-book-173-3"> <changeSet author="root" id="tab-book-178-3">
<createTable tableName="T_BOOK"> <createTable tableName="T_BOOK">
<column name="BOOKNAME" remarks="" type="VARCHAR(200)"> <column name="BOOKNAME" remarks="" type="VARCHAR(200)">
</column> </column>
...@@ -194,7 +194,7 @@ ...@@ -194,7 +194,7 @@
</changeSet> </changeSet>
<!--输出实体[REGINFO]数据结构 --> <!--输出实体[REGINFO]数据结构 -->
<changeSet author="root" id="tab-reginfo-36-8"> <changeSet author="root" id="tab-reginfo-38-8">
<createTable tableName="T_REGINFO"> <createTable tableName="T_REGINFO">
<column name="UPDATEDATE" remarks="" type="DATETIME"> <column name="UPDATEDATE" remarks="" type="DATETIME">
</column> </column>
......
...@@ -216,6 +216,41 @@ ...@@ -216,6 +216,41 @@
"labelWidth" : 130, "labelWidth" : 130,
"name" : "name", "name" : "name",
"noPrivDisplayMode" : 1, "noPrivDisplayMode" : 1,
"getPSDEFDGroupLogics" : [ {
"groupOP" : "AND",
"logicCat" : "PANELVISIBLE",
"logicType" : "GROUP",
"name" : "表单成员[name][面板显示]逻辑",
"getPSDEFDLogics" : [ {
"groupOP" : "AND",
"logicType" : "GROUP",
"name" : "AND",
"getPSDEFDLogics" : [ {
"condOP" : "LT",
"dEFDName" : "Age",
"logicType" : "SINGLE",
"name" : "Age 小于(<) (113)",
"value" : "113"
} ],
"notMode" : false
} ],
"relatedDetailNames" : [ "age" ],
"notMode" : false
}, {
"groupOP" : "AND",
"logicCat" : "ITEMENABLE",
"logicType" : "GROUP",
"name" : "表单成员[name][表单项启用]逻辑",
"getPSDEFDLogics" : [ {
"condOP" : "GT",
"dEFDName" : "Age",
"logicType" : "SINGLE",
"name" : "Age 大于(>) (22)",
"value" : "22"
} ],
"relatedDetailNames" : [ "age" ],
"notMode" : false
} ],
"getPSEditor" : { "getPSEditor" : {
"editorType" : "TEXTBOX", "editorType" : "TEXTBOX",
"name" : "name" "name" : "name"
......
...@@ -1202,6 +1202,41 @@ ...@@ -1202,6 +1202,41 @@
"labelWidth" : 130, "labelWidth" : 130,
"name" : "name", "name" : "name",
"noPrivDisplayMode" : 1, "noPrivDisplayMode" : 1,
"getPSDEFDGroupLogics" : [ {
"groupOP" : "AND",
"logicCat" : "PANELVISIBLE",
"logicType" : "GROUP",
"name" : "表单成员[name][面板显示]逻辑",
"getPSDEFDLogics" : [ {
"groupOP" : "AND",
"logicType" : "GROUP",
"name" : "AND",
"getPSDEFDLogics" : [ {
"condOP" : "LT",
"dEFDName" : "Age",
"logicType" : "SINGLE",
"name" : "Age 小于(<) (113)",
"value" : "113"
} ],
"notMode" : false
} ],
"relatedDetailNames" : [ "age" ],
"notMode" : false
}, {
"groupOP" : "AND",
"logicCat" : "ITEMENABLE",
"logicType" : "GROUP",
"name" : "表单成员[name][表单项启用]逻辑",
"getPSDEFDLogics" : [ {
"condOP" : "GT",
"dEFDName" : "Age",
"logicType" : "SINGLE",
"name" : "Age 大于(>) (22)",
"value" : "22"
} ],
"relatedDetailNames" : [ "age" ],
"notMode" : false
} ],
"getPSEditor" : { "getPSEditor" : {
"editorType" : "TEXTBOX", "editorType" : "TEXTBOX",
"name" : "name" "name" : "name"
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册