@ibiz-template/runtime 0.7.30 → 0.7.31-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.esm.js +403 -103
- package/dist/index.system.min.js +1 -1
- package/out/controller/control/chart/chart.controller.d.ts +1 -1
- package/out/controller/control/chart/chart.controller.d.ts.map +1 -1
- package/out/controller/control/chart/chart.controller.js +52 -22
- package/out/controller/control/chart/generator/base-series-generator.d.ts.map +1 -1
- package/out/controller/control/chart/generator/base-series-generator.js +33 -2
- package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.d.ts +7 -0
- package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.d.ts.map +1 -1
- package/out/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.js +17 -1
- package/out/controller/control/dashboard/portlet/report-portlet/report-portlet.controller.d.ts +10 -0
- package/out/controller/control/dashboard/portlet/report-portlet/report-portlet.controller.d.ts.map +1 -1
- package/out/controller/control/dashboard/portlet/report-portlet/report-portlet.controller.js +15 -0
- package/out/controller/control/dashboard/portlet/view-portlet/view-portlet.controller.d.ts +7 -0
- package/out/controller/control/dashboard/portlet/view-portlet/view-portlet.controller.d.ts.map +1 -1
- package/out/controller/control/dashboard/portlet/view-portlet/view-portlet.controller.js +17 -0
- package/out/controller/control/grid/grid/entity-schema.d.ts.map +1 -1
- package/out/controller/control/grid/grid/entity-schema.js +3 -0
- package/out/controller/control/search-bar/entity-schema.d.ts.map +1 -1
- package/out/controller/control/search-bar/entity-schema.js +3 -0
- package/out/controller/control/search-bar/search-bar.controller.d.ts +10 -1
- package/out/controller/control/search-bar/search-bar.controller.d.ts.map +1 -1
- package/out/controller/control/search-bar/search-bar.controller.js +60 -3
- package/out/controller/utils/code-list/code-list.d.ts +1 -1
- package/out/controller/utils/code-list/code-list.d.ts.map +1 -1
- package/out/interface/controller/state/control/search-bar/i-search-bar.state.d.ts +16 -0
- package/out/interface/controller/state/control/search-bar/i-search-bar.state.d.ts.map +1 -1
- package/out/service/de-service-util.d.ts +13 -0
- package/out/service/de-service-util.d.ts.map +1 -1
- package/out/service/de-service-util.js +59 -0
- package/out/service/service/code-list/code-list.service.d.ts +19 -0
- package/out/service/service/code-list/code-list.service.d.ts.map +1 -1
- package/out/service/service/code-list/code-list.service.js +49 -0
- package/out/service/service/entity/method/de-action.d.ts.map +1 -1
- package/out/service/service/entity/method/de-action.js +17 -0
- package/package.json +6 -5
package/dist/index.esm.js
CHANGED
|
@@ -5904,6 +5904,35 @@ async function calcDynaSysParams(appDataEntityId, context, opts = {}) {
|
|
|
5904
5904
|
|
|
5905
5905
|
// src/service/service/code-list/code-list.service.ts
|
|
5906
5906
|
import { RuntimeError as RuntimeError16 } from "@ibiz-template/core";
|
|
5907
|
+
import { isNumber } from "lodash-es";
|
|
5908
|
+
|
|
5909
|
+
// src/controller/utils/code-list/code-list.ts
|
|
5910
|
+
function calcThresholdRange(codelist, value) {
|
|
5911
|
+
return codelist.find((item) => {
|
|
5912
|
+
if (!item.beginValue && !item.endValue) {
|
|
5913
|
+
return item.value == value;
|
|
5914
|
+
}
|
|
5915
|
+
let beginCond = true;
|
|
5916
|
+
if (item.beginValue) {
|
|
5917
|
+
if (item.includeBeginValue) {
|
|
5918
|
+
beginCond = value >= item.beginValue;
|
|
5919
|
+
} else {
|
|
5920
|
+
beginCond = value > item.beginValue;
|
|
5921
|
+
}
|
|
5922
|
+
}
|
|
5923
|
+
let endCond = true;
|
|
5924
|
+
if (item.endValue) {
|
|
5925
|
+
if (item.includeEndValue) {
|
|
5926
|
+
endCond = value <= item.endValue;
|
|
5927
|
+
} else {
|
|
5928
|
+
endCond = value < item.endValue;
|
|
5929
|
+
}
|
|
5930
|
+
}
|
|
5931
|
+
return beginCond && endCond;
|
|
5932
|
+
});
|
|
5933
|
+
}
|
|
5934
|
+
|
|
5935
|
+
// src/service/service/code-list/code-list.service.ts
|
|
5907
5936
|
var CodeListService = class {
|
|
5908
5937
|
constructor(appModel) {
|
|
5909
5938
|
this.appModel = appModel;
|
|
@@ -6067,6 +6096,58 @@ var CodeListService = class {
|
|
|
6067
6096
|
}
|
|
6068
6097
|
return [];
|
|
6069
6098
|
}
|
|
6099
|
+
/**
|
|
6100
|
+
* 递归查找代码表项
|
|
6101
|
+
*
|
|
6102
|
+
* @param {IAppCodeList} codeList 代码表模型
|
|
6103
|
+
* @param {readonly CodeListItem[] | undefined} dataItems 代码表数据
|
|
6104
|
+
* @param {string | number} value 代码项值
|
|
6105
|
+
* @returns 代码表项|CodeListItem | undefined
|
|
6106
|
+
*/
|
|
6107
|
+
findCodeListItem(codeList, dataItems, value) {
|
|
6108
|
+
if (dataItems) {
|
|
6109
|
+
const { thresholdGroup } = codeList;
|
|
6110
|
+
if (thresholdGroup && isNumber(Number(value))) {
|
|
6111
|
+
const findItem2 = calcThresholdRange(dataItems, Number(value));
|
|
6112
|
+
if (findItem2) {
|
|
6113
|
+
return findItem2;
|
|
6114
|
+
}
|
|
6115
|
+
}
|
|
6116
|
+
const findItem = dataItems.find((item) => item.value === value);
|
|
6117
|
+
if (findItem) {
|
|
6118
|
+
return findItem;
|
|
6119
|
+
}
|
|
6120
|
+
for (let i = 0; i < dataItems.length; i++) {
|
|
6121
|
+
const childrenItem = this.findCodeListItem(
|
|
6122
|
+
codeList,
|
|
6123
|
+
dataItems[i].children,
|
|
6124
|
+
value
|
|
6125
|
+
);
|
|
6126
|
+
if (childrenItem) {
|
|
6127
|
+
return childrenItem;
|
|
6128
|
+
}
|
|
6129
|
+
}
|
|
6130
|
+
}
|
|
6131
|
+
}
|
|
6132
|
+
/**
|
|
6133
|
+
* 获取代码表项
|
|
6134
|
+
*
|
|
6135
|
+
* @param {string} tag 代码表标识
|
|
6136
|
+
* @param {string | number} value 代码表值
|
|
6137
|
+
* @param {IContext} context 上下文
|
|
6138
|
+
* @param {IParams} params 视图参数
|
|
6139
|
+
* @returns 代码表项|Promise<CodeListItem | undefined>
|
|
6140
|
+
*/
|
|
6141
|
+
async getItem(tag, value, context, params) {
|
|
6142
|
+
const codeList = this.allCodeLists.get(tag);
|
|
6143
|
+
if (!codeList) {
|
|
6144
|
+
throw new RuntimeError16(
|
|
6145
|
+
ibiz.i18n.t("runtime.service.noFindCodeList", { tag })
|
|
6146
|
+
);
|
|
6147
|
+
}
|
|
6148
|
+
const dataItems = await this.get(tag, context, params);
|
|
6149
|
+
return this.findCodeListItem(codeList, dataItems, value);
|
|
6150
|
+
}
|
|
6070
6151
|
/**
|
|
6071
6152
|
* 获取代码表实例对象(动态代码表返回具体实例,静态代码表返回undefined)
|
|
6072
6153
|
*
|
|
@@ -10195,6 +10276,17 @@ var DEActionMethod = class extends Method {
|
|
|
10195
10276
|
}
|
|
10196
10277
|
}
|
|
10197
10278
|
const methodTag = this.method.actionTag ? this.method.actionTag.toUpperCase() : this.method.codeName.toUpperCase();
|
|
10279
|
+
if (this.method.beforeCode) {
|
|
10280
|
+
await ScriptFactory.asyncExecScriptFn(
|
|
10281
|
+
{
|
|
10282
|
+
context,
|
|
10283
|
+
data,
|
|
10284
|
+
viewParam: params,
|
|
10285
|
+
activeData: header
|
|
10286
|
+
},
|
|
10287
|
+
this.method.beforeCode
|
|
10288
|
+
);
|
|
10289
|
+
}
|
|
10198
10290
|
switch (methodTag) {
|
|
10199
10291
|
case "CREATE":
|
|
10200
10292
|
result = await this.create(context, data, params || {}, header);
|
|
@@ -10249,6 +10341,17 @@ var DEActionMethod = class extends Method {
|
|
|
10249
10341
|
}
|
|
10250
10342
|
}
|
|
10251
10343
|
}
|
|
10344
|
+
if (this.method.afterCode) {
|
|
10345
|
+
await ScriptFactory.asyncExecScriptFn(
|
|
10346
|
+
{
|
|
10347
|
+
context,
|
|
10348
|
+
data: result.data,
|
|
10349
|
+
viewParam: params,
|
|
10350
|
+
activeData: header
|
|
10351
|
+
},
|
|
10352
|
+
this.method.afterCode
|
|
10353
|
+
);
|
|
10354
|
+
}
|
|
10252
10355
|
if (result.data) {
|
|
10253
10356
|
await execFieldLogics(
|
|
10254
10357
|
this.entity,
|
|
@@ -12160,6 +12263,14 @@ var _DEServiceUtil = class _DEServiceUtil {
|
|
|
12160
12263
|
* @return {*} {Promise<IAppDEService>}
|
|
12161
12264
|
*/
|
|
12162
12265
|
async getService(context, id) {
|
|
12266
|
+
const { targetApp, targetAppDataEntityId } = await this.computeAppDEMappingParam(context, id);
|
|
12267
|
+
if (targetApp && targetAppDataEntityId) {
|
|
12268
|
+
const targetService = await targetApp.deService.getService(
|
|
12269
|
+
context,
|
|
12270
|
+
targetAppDataEntityId
|
|
12271
|
+
);
|
|
12272
|
+
return targetService;
|
|
12273
|
+
}
|
|
12163
12274
|
const sandboxId = context.srfsessionid || "applocation";
|
|
12164
12275
|
if (!this.cache.has(sandboxId)) {
|
|
12165
12276
|
this.cache.set(sandboxId, /* @__PURE__ */ new Map());
|
|
@@ -12269,6 +12380,18 @@ var _DEServiceUtil = class _DEServiceUtil {
|
|
|
12269
12380
|
* @return {*} {Promise<IHttpResponse<IData>>}
|
|
12270
12381
|
*/
|
|
12271
12382
|
async exec(appDataEntityId, methodName, context, params, params2, header) {
|
|
12383
|
+
const { targetApp, targetAppDataEntityId } = await this.computeAppDEMappingParam(context, appDataEntityId);
|
|
12384
|
+
if (targetApp && targetAppDataEntityId) {
|
|
12385
|
+
const result = await targetApp.deService.exec(
|
|
12386
|
+
targetAppDataEntityId,
|
|
12387
|
+
methodName,
|
|
12388
|
+
context,
|
|
12389
|
+
params,
|
|
12390
|
+
params2,
|
|
12391
|
+
header
|
|
12392
|
+
);
|
|
12393
|
+
return result;
|
|
12394
|
+
}
|
|
12272
12395
|
const service = await this.getService(context, appDataEntityId);
|
|
12273
12396
|
try {
|
|
12274
12397
|
const result = await service.exec(
|
|
@@ -12286,6 +12409,46 @@ var _DEServiceUtil = class _DEServiceUtil {
|
|
|
12286
12409
|
throw error;
|
|
12287
12410
|
}
|
|
12288
12411
|
}
|
|
12412
|
+
/**
|
|
12413
|
+
* 计算应用实体服务映射参数
|
|
12414
|
+
* srfappdemapping:是否开启应用实体服务映射
|
|
12415
|
+
* srfappmappingmap:应用映射表,与srfappdemapping搭配使用,原应用标识:目标应用标识,以冒号分割,多个应用以逗号隔开
|
|
12416
|
+
* 如:logicdesign__logicdesign:ibizplm__plmweb
|
|
12417
|
+
*
|
|
12418
|
+
* @author tony001
|
|
12419
|
+
* @date 2024-07-19 15:07:31
|
|
12420
|
+
* @param {IContext} context
|
|
12421
|
+
* @param {string} appDataEntityId
|
|
12422
|
+
* @return {*} {Promise<IData>}
|
|
12423
|
+
*/
|
|
12424
|
+
async computeAppDEMappingParam(context, appDataEntityId) {
|
|
12425
|
+
const result = {};
|
|
12426
|
+
if (context.srfappdemapping && context.srfappdemapping === "true" && context.srfappmappingmap) {
|
|
12427
|
+
const { srfappmappingmap } = context;
|
|
12428
|
+
const appMap = /* @__PURE__ */ new Map();
|
|
12429
|
+
const appMappings = (srfappmappingmap == null ? void 0 : srfappmappingmap.split(",")) || [];
|
|
12430
|
+
for (const appMpping of appMappings) {
|
|
12431
|
+
const [sourceAppId, targetAppId] = appMpping.split(":");
|
|
12432
|
+
appMap.set(sourceAppId, targetAppId);
|
|
12433
|
+
}
|
|
12434
|
+
if (appMap.has(this.appModel.appId)) {
|
|
12435
|
+
const targetApp = ibiz.hub.getApp(appMap.get(this.appModel.appId));
|
|
12436
|
+
if (targetApp) {
|
|
12437
|
+
Object.assign(result, { targetApp });
|
|
12438
|
+
if (appDataEntityId.indexOf(".") !== -1) {
|
|
12439
|
+
Object.assign(result, {
|
|
12440
|
+
targetAppDataEntityId: "".concat(targetApp.model.id, ".").concat(appDataEntityId.split(".").pop())
|
|
12441
|
+
});
|
|
12442
|
+
} else {
|
|
12443
|
+
Object.assign(result, {
|
|
12444
|
+
targetAppDataEntityId: appDataEntityId
|
|
12445
|
+
});
|
|
12446
|
+
}
|
|
12447
|
+
}
|
|
12448
|
+
}
|
|
12449
|
+
}
|
|
12450
|
+
return result;
|
|
12451
|
+
}
|
|
12289
12452
|
};
|
|
12290
12453
|
/**
|
|
12291
12454
|
* 实体服务构造方法缓存
|
|
@@ -13113,8 +13276,8 @@ var baseStyle = {
|
|
|
13113
13276
|
position: "fixed",
|
|
13114
13277
|
zIndex: "10000"
|
|
13115
13278
|
};
|
|
13116
|
-
function cloneElement(
|
|
13117
|
-
const element = getAnimationElement(
|
|
13279
|
+
function cloneElement(clone41, teleport = document.body, isRemoveChild = true) {
|
|
13280
|
+
const element = getAnimationElement(clone41);
|
|
13118
13281
|
if (element == null) {
|
|
13119
13282
|
throw new Error(ibiz.i18n.t("runtime.utils.anime.noClone"));
|
|
13120
13283
|
}
|
|
@@ -13533,11 +13696,11 @@ function arrayContains(arr, val) {
|
|
|
13533
13696
|
});
|
|
13534
13697
|
}
|
|
13535
13698
|
function cloneObject(o) {
|
|
13536
|
-
var
|
|
13699
|
+
var clone41 = {};
|
|
13537
13700
|
for (var p in o) {
|
|
13538
|
-
|
|
13701
|
+
clone41[p] = o[p];
|
|
13539
13702
|
}
|
|
13540
|
-
return
|
|
13703
|
+
return clone41;
|
|
13541
13704
|
}
|
|
13542
13705
|
function replaceObjectProps(o1, o2) {
|
|
13543
13706
|
var o = cloneObject(o1);
|
|
@@ -17197,7 +17360,7 @@ function getOriginData(data) {
|
|
|
17197
17360
|
|
|
17198
17361
|
// src/controller/utils/value-rule/value-rule.ts
|
|
17199
17362
|
import { RuntimeError as RuntimeError31 } from "@ibiz-template/core";
|
|
17200
|
-
import { isNilOrEmpty as isNilOrEmpty6, isNumber } from "qx-util";
|
|
17363
|
+
import { isNilOrEmpty as isNilOrEmpty6, isNumber as isNumber2 } from "qx-util";
|
|
17201
17364
|
import { isNil as isNil18 } from "ramda";
|
|
17202
17365
|
function generateRules(itemVRs, name, valueItemName) {
|
|
17203
17366
|
const rules = [];
|
|
@@ -17296,7 +17459,7 @@ function generateEditorRules(editor) {
|
|
|
17296
17459
|
if (!isNil18(maxValue)) {
|
|
17297
17460
|
rules.push({
|
|
17298
17461
|
validator: (rule, value, callback) => {
|
|
17299
|
-
if (!isNil18(value) &&
|
|
17462
|
+
if (!isNil18(value) && isNumber2(value) && value > maxValue) {
|
|
17300
17463
|
callback(new Error("\u503C\u5FC5\u987B\u5C0F\u4E8E\u7B49\u4E8E".concat(maxValue)));
|
|
17301
17464
|
} else {
|
|
17302
17465
|
return true;
|
|
@@ -17307,7 +17470,7 @@ function generateEditorRules(editor) {
|
|
|
17307
17470
|
if (!isNil18(minValue)) {
|
|
17308
17471
|
rules.push({
|
|
17309
17472
|
validator: (rule, value, callback) => {
|
|
17310
|
-
if (!isNil18(value) &&
|
|
17473
|
+
if (!isNil18(value) && isNumber2(value) && value < minValue) {
|
|
17311
17474
|
callback(new Error("\u503C\u5FC5\u987B\u5927\u4E8E\u7B49\u4E8E".concat(minValue)));
|
|
17312
17475
|
} else {
|
|
17313
17476
|
return true;
|
|
@@ -18137,32 +18300,6 @@ var ViewMsgController = class _ViewMsgController {
|
|
|
18137
18300
|
}
|
|
18138
18301
|
};
|
|
18139
18302
|
|
|
18140
|
-
// src/controller/utils/code-list/code-list.ts
|
|
18141
|
-
function calcThresholdRange(codelist, value) {
|
|
18142
|
-
return codelist.find((item) => {
|
|
18143
|
-
if (!item.beginValue && !item.endValue) {
|
|
18144
|
-
return item.value == value;
|
|
18145
|
-
}
|
|
18146
|
-
let beginCond = true;
|
|
18147
|
-
if (item.beginValue) {
|
|
18148
|
-
if (item.includeBeginValue) {
|
|
18149
|
-
beginCond = value >= item.beginValue;
|
|
18150
|
-
} else {
|
|
18151
|
-
beginCond = value > item.beginValue;
|
|
18152
|
-
}
|
|
18153
|
-
}
|
|
18154
|
-
let endCond = true;
|
|
18155
|
-
if (item.endValue) {
|
|
18156
|
-
if (item.includeEndValue) {
|
|
18157
|
-
endCond = value <= item.endValue;
|
|
18158
|
-
} else {
|
|
18159
|
-
endCond = value < item.endValue;
|
|
18160
|
-
}
|
|
18161
|
-
}
|
|
18162
|
-
return beginCond && endCond;
|
|
18163
|
-
});
|
|
18164
|
-
}
|
|
18165
|
-
|
|
18166
18303
|
// src/controller/common/base.controller.ts
|
|
18167
18304
|
var SELF_KEY = "__self";
|
|
18168
18305
|
var BaseController = class {
|
|
@@ -21196,7 +21333,6 @@ var CalendarController = class extends MDControlController {
|
|
|
21196
21333
|
|
|
21197
21334
|
// src/controller/control/chart/chart.controller.ts
|
|
21198
21335
|
import { RuntimeError as RuntimeError44 } from "@ibiz-template/core";
|
|
21199
|
-
import { clone as clone25 } from "ramda";
|
|
21200
21336
|
|
|
21201
21337
|
// src/controller/control/chart/generator/chart-options-generator.ts
|
|
21202
21338
|
import { clone as clone24, mergeDeepRight as mergeDeepRight3 } from "ramda";
|
|
@@ -21470,6 +21606,7 @@ var BaseSeriesGenerator = class {
|
|
|
21470
21606
|
const groupData = this.groupData;
|
|
21471
21607
|
const { seriesCodeListId, catalogCodeListId } = this.model;
|
|
21472
21608
|
data.forEach((item) => {
|
|
21609
|
+
var _a, _b;
|
|
21473
21610
|
let group = DEFAULT_GROUP;
|
|
21474
21611
|
if (this.groupField) {
|
|
21475
21612
|
const groupVal = this.translateVal(
|
|
@@ -21493,9 +21630,10 @@ var BaseSeriesGenerator = class {
|
|
|
21493
21630
|
tempCodeLists.push({ codename, codelist: clone22(codeListItems) });
|
|
21494
21631
|
} else if (mode === "field") {
|
|
21495
21632
|
const tempdata = data.map((_data) => {
|
|
21633
|
+
var _a2, _b2;
|
|
21496
21634
|
return {
|
|
21497
21635
|
text: _data[codename],
|
|
21498
|
-
value: _data[codename]
|
|
21636
|
+
value: (_b2 = (_a2 = _data.$origin) == null ? void 0 : _a2.$origin) == null ? void 0 : _b2[codename]
|
|
21499
21637
|
};
|
|
21500
21638
|
});
|
|
21501
21639
|
tempCodeLists.push({ codename, codelist: tempdata });
|
|
@@ -21523,6 +21661,7 @@ var BaseSeriesGenerator = class {
|
|
|
21523
21661
|
const codeListItems = this.chartGenerator.codeListMap.get(catalogCodeListId);
|
|
21524
21662
|
codeListItems.forEach((x) => {
|
|
21525
21663
|
groupData[group].set(x.text, { value: 0 });
|
|
21664
|
+
this.catalogMap.set(x.text, { [this.catalogField]: x.value });
|
|
21526
21665
|
this.prepareChartData(
|
|
21527
21666
|
groupData,
|
|
21528
21667
|
{
|
|
@@ -21563,6 +21702,11 @@ var BaseSeriesGenerator = class {
|
|
|
21563
21702
|
if (!catalog) {
|
|
21564
21703
|
return;
|
|
21565
21704
|
}
|
|
21705
|
+
if (!catalogCodeListId) {
|
|
21706
|
+
this.catalogMap.set(item[this.catalogField], {
|
|
21707
|
+
[this.catalogField]: (_b = (_a = item.$origin) == null ? void 0 : _a.$origin) == null ? void 0 : _b[this.catalogField]
|
|
21708
|
+
});
|
|
21709
|
+
}
|
|
21566
21710
|
if (!groupData[group].get(catalog)) {
|
|
21567
21711
|
groupData[group].set(catalog, { value: 0 });
|
|
21568
21712
|
}
|
|
@@ -21594,7 +21738,7 @@ var BaseSeriesGenerator = class {
|
|
|
21594
21738
|
* @return {*} {SeriesOption[]}
|
|
21595
21739
|
*/
|
|
21596
21740
|
calcGroupSeries(groupData) {
|
|
21597
|
-
|
|
21741
|
+
const tempSeries = Object.keys(groupData).map((group) => {
|
|
21598
21742
|
const catalogData = groupData[group];
|
|
21599
21743
|
const data = this.calcSeriesData(catalogData);
|
|
21600
21744
|
let options = { ...this.staticOptions, data };
|
|
@@ -21610,6 +21754,23 @@ var BaseSeriesGenerator = class {
|
|
|
21610
21754
|
}
|
|
21611
21755
|
return options;
|
|
21612
21756
|
});
|
|
21757
|
+
if (this.model.seriesCodeListId) {
|
|
21758
|
+
const codelist = this.chartGenerator.codeListMap.get(
|
|
21759
|
+
this.model.seriesCodeListId
|
|
21760
|
+
);
|
|
21761
|
+
if (codelist) {
|
|
21762
|
+
tempSeries.sort((a, b) => {
|
|
21763
|
+
const aIndex = codelist.findIndex((_code) => {
|
|
21764
|
+
return _code.text === a.name;
|
|
21765
|
+
});
|
|
21766
|
+
const bIndex = codelist.findIndex((_code) => {
|
|
21767
|
+
return _code.text === b.name;
|
|
21768
|
+
});
|
|
21769
|
+
return aIndex - bIndex;
|
|
21770
|
+
});
|
|
21771
|
+
}
|
|
21772
|
+
}
|
|
21773
|
+
return tempSeries;
|
|
21613
21774
|
}
|
|
21614
21775
|
/**
|
|
21615
21776
|
* 生成每条序列的data,由于不同图表类型格式不同所以为any
|
|
@@ -22896,13 +23057,27 @@ var ChartController = class extends MDControlController {
|
|
|
22896
23057
|
* @memberof ChartController
|
|
22897
23058
|
*/
|
|
22898
23059
|
changeTooltipState(tag = true) {
|
|
22899
|
-
if (this.options && this.options.tooltip) {
|
|
23060
|
+
if (this.chart && this.options && this.options.tooltip) {
|
|
22900
23061
|
if (tag) {
|
|
22901
|
-
|
|
23062
|
+
this.chart.setOption(
|
|
23063
|
+
{
|
|
23064
|
+
tooltip: {
|
|
23065
|
+
show: this.tooltipState
|
|
23066
|
+
}
|
|
23067
|
+
},
|
|
23068
|
+
{ notMerge: false }
|
|
23069
|
+
);
|
|
22902
23070
|
} else {
|
|
22903
|
-
|
|
23071
|
+
this.chart.setOption(
|
|
23072
|
+
{
|
|
23073
|
+
tooltip: {
|
|
23074
|
+
show: false
|
|
23075
|
+
}
|
|
23076
|
+
},
|
|
23077
|
+
{ notMerge: false }
|
|
23078
|
+
);
|
|
22904
23079
|
}
|
|
22905
|
-
this.
|
|
23080
|
+
this.resizeChart();
|
|
22906
23081
|
}
|
|
22907
23082
|
}
|
|
22908
23083
|
/**
|
|
@@ -22915,10 +23090,19 @@ var ChartController = class extends MDControlController {
|
|
|
22915
23090
|
var _a;
|
|
22916
23091
|
const { data, seriesType } = arg;
|
|
22917
23092
|
let tempConfig = {};
|
|
22918
|
-
if (seriesType === "pie") {
|
|
23093
|
+
if (seriesType === "pie" || seriesType === "gauge") {
|
|
22919
23094
|
if (data && data.value && Array.isArray(data.value)) {
|
|
22920
23095
|
tempConfig = data.value.at(1);
|
|
22921
23096
|
}
|
|
23097
|
+
} else if (seriesType === "radar") {
|
|
23098
|
+
const { componentIndex, componentSubType, componentType, event } = arg;
|
|
23099
|
+
const index = event.topTarget.__dimIdx;
|
|
23100
|
+
if (componentType === "series" && (index || index === 0)) {
|
|
23101
|
+
const serieid2 = "".concat(componentSubType, "_").concat(componentIndex);
|
|
23102
|
+
tempConfig = {
|
|
23103
|
+
_seriesModelId: serieid2
|
|
23104
|
+
};
|
|
23105
|
+
}
|
|
22922
23106
|
} else if (data && Array.isArray(data)) {
|
|
22923
23107
|
tempConfig = data.at(2);
|
|
22924
23108
|
}
|
|
@@ -22929,36 +23113,39 @@ var ChartController = class extends MDControlController {
|
|
|
22929
23113
|
return targetSerie;
|
|
22930
23114
|
}
|
|
22931
23115
|
/**
|
|
22932
|
-
*
|
|
23116
|
+
* 计算查看明细参数
|
|
22933
23117
|
*
|
|
22934
23118
|
* @param {IData} arg
|
|
22935
23119
|
* @return {*}
|
|
22936
23120
|
* @memberof ChartController
|
|
22937
23121
|
*/
|
|
22938
23122
|
computedDrillDetailParam(arg) {
|
|
22939
|
-
var _a;
|
|
22940
|
-
const { seriesType
|
|
23123
|
+
var _a, _b;
|
|
23124
|
+
const { seriesType } = arg;
|
|
22941
23125
|
const targetSerie = this.computedClickSerieModel(arg);
|
|
22942
23126
|
let measureId = "";
|
|
22943
23127
|
const dimension = [];
|
|
22944
23128
|
if (targetSerie) {
|
|
22945
23129
|
measureId = targetSerie.valueField;
|
|
22946
|
-
if (seriesType === "
|
|
22947
|
-
|
|
22948
|
-
|
|
22949
|
-
|
|
22950
|
-
|
|
22951
|
-
|
|
23130
|
+
if (seriesType === "radar") {
|
|
23131
|
+
const { event } = arg;
|
|
23132
|
+
const index = event.topTarget.__dimIdx;
|
|
23133
|
+
const cataData = this.generator.radarMap.get(targetSerie.catalogField);
|
|
23134
|
+
if (cataData && cataData.indicatorKeys) {
|
|
23135
|
+
const cataValue = cataData.indicatorKeys[index];
|
|
23136
|
+
const tempDimension = (_a = this.generator.seriesGenerators) == null ? void 0 : _a[0].catalogMap.get(cataValue);
|
|
23137
|
+
if (tempDimension) {
|
|
23138
|
+
Object.keys(tempDimension).forEach((key) => {
|
|
22952
23139
|
dimension.push({
|
|
22953
23140
|
name: key,
|
|
22954
|
-
value:
|
|
23141
|
+
value: tempDimension[key]
|
|
22955
23142
|
});
|
|
22956
|
-
}
|
|
22957
|
-
}
|
|
23143
|
+
});
|
|
23144
|
+
}
|
|
22958
23145
|
}
|
|
22959
|
-
} else {
|
|
23146
|
+
} else if (seriesType !== "gauge") {
|
|
22960
23147
|
const value = arg.name;
|
|
22961
|
-
const tempDimension = (
|
|
23148
|
+
const tempDimension = (_b = this.generator.seriesGenerators) == null ? void 0 : _b[0].catalogMap.get(value);
|
|
22962
23149
|
if (tempDimension) {
|
|
22963
23150
|
Object.keys(tempDimension).forEach((key) => {
|
|
22964
23151
|
dimension.push({
|
|
@@ -22973,7 +23160,7 @@ var ChartController = class extends MDControlController {
|
|
|
22973
23160
|
measure: {
|
|
22974
23161
|
name: measureId
|
|
22975
23162
|
},
|
|
22976
|
-
dimension
|
|
23163
|
+
dimension: dimension.length > 0 ? dimension : void 0
|
|
22977
23164
|
};
|
|
22978
23165
|
}
|
|
22979
23166
|
/**
|
|
@@ -23411,7 +23598,7 @@ import { ModelError as ModelError19, RuntimeModelError as RuntimeModelError34 }
|
|
|
23411
23598
|
|
|
23412
23599
|
// src/ui-logic/utils/handle-src-val.ts
|
|
23413
23600
|
import { ModelError as ModelError18 } from "@ibiz-template/core";
|
|
23414
|
-
import { clone as
|
|
23601
|
+
import { clone as clone25 } from "ramda";
|
|
23415
23602
|
function handleSrcVal2(ctx, srcValParams) {
|
|
23416
23603
|
const { srcDEUILogicParamId, srcFieldName, srcValue } = srcValParams;
|
|
23417
23604
|
const srcValueType = srcValParams.srcValueType || "SRCDLPARAM";
|
|
@@ -23438,7 +23625,7 @@ function handleSrcVal2(ctx, srcValParams) {
|
|
|
23438
23625
|
value = ctx.parameters.context;
|
|
23439
23626
|
break;
|
|
23440
23627
|
case "ENVPARAM":
|
|
23441
|
-
value =
|
|
23628
|
+
value = clone25(ibiz.env);
|
|
23442
23629
|
break;
|
|
23443
23630
|
default:
|
|
23444
23631
|
throw new ModelError18(
|
|
@@ -23895,7 +24082,7 @@ var EndNode2 = class extends UILogicNode {
|
|
|
23895
24082
|
|
|
23896
24083
|
// src/ui-logic/ui-logic-node/prepare-js-param-node/prepare-js-param-node.ts
|
|
23897
24084
|
import { ModelError as ModelError22, RuntimeError as RuntimeError45 } from "@ibiz-template/core";
|
|
23898
|
-
import { clone as
|
|
24085
|
+
import { clone as clone26 } from "ramda";
|
|
23899
24086
|
var PrepareJSParamNode = class extends UILogicNode {
|
|
23900
24087
|
async exec(ctx) {
|
|
23901
24088
|
const nodeParams = this.model.deuilogicNodeParams;
|
|
@@ -23905,7 +24092,7 @@ var PrepareJSParamNode = class extends UILogicNode {
|
|
|
23905
24092
|
for (const nodeParam of nodeParams) {
|
|
23906
24093
|
let originValue;
|
|
23907
24094
|
if (nodeParam.dstDEUILogicParamId && ibiz.env.logLevel === "DEBUG") {
|
|
23908
|
-
originValue =
|
|
24095
|
+
originValue = clone26(ctx.params[nodeParam.dstDEUILogicParamId]);
|
|
23909
24096
|
}
|
|
23910
24097
|
switch (nodeParam.paramAction) {
|
|
23911
24098
|
case "SETPARAMVALUE":
|
|
@@ -24000,7 +24187,7 @@ var PrepareJSParamNode = class extends UILogicNode {
|
|
|
24000
24187
|
copyParam(nodeParam, ctx) {
|
|
24001
24188
|
const { dstDEUILogicParamId } = nodeParam;
|
|
24002
24189
|
const srcVal = handleSrcVal2(ctx, nodeParam);
|
|
24003
|
-
ctx.params[dstDEUILogicParamId] =
|
|
24190
|
+
ctx.params[dstDEUILogicParamId] = clone26(srcVal);
|
|
24004
24191
|
}
|
|
24005
24192
|
/**
|
|
24006
24193
|
* 绑定参数
|
|
@@ -24307,7 +24494,7 @@ var ResetParamNode2 = class extends UILogicNode {
|
|
|
24307
24494
|
|
|
24308
24495
|
// src/ui-logic/ui-logic-node/copy-param-node/copy-param-node.ts
|
|
24309
24496
|
import { RuntimeModelError as RuntimeModelError43 } from "@ibiz-template/core";
|
|
24310
|
-
import { clone as
|
|
24497
|
+
import { clone as clone27 } from "ramda";
|
|
24311
24498
|
var CopyParamNode2 = class extends UILogicNode {
|
|
24312
24499
|
async exec(ctx) {
|
|
24313
24500
|
const { dstDEUILogicParamId, srcDEUILogicParamId } = this.model;
|
|
@@ -24318,7 +24505,7 @@ var CopyParamNode2 = class extends UILogicNode {
|
|
|
24318
24505
|
);
|
|
24319
24506
|
}
|
|
24320
24507
|
const srcVal = handleSrcVal2(ctx, this.model);
|
|
24321
|
-
ctx.params[dstDEUILogicParamId] =
|
|
24508
|
+
ctx.params[dstDEUILogicParamId] = clone27(srcVal);
|
|
24322
24509
|
ctx.setLastReturn(ctx.params[dstDEUILogicParamId]);
|
|
24323
24510
|
ibiz.log.debug(
|
|
24324
24511
|
ibiz.i18n.t("runtime.uiLogic.copyParameter", {
|
|
@@ -26191,7 +26378,7 @@ var ContextMenuController = class extends ToolbarController {
|
|
|
26191
26378
|
};
|
|
26192
26379
|
|
|
26193
26380
|
// src/controller/control/dashboard/dashboard.controller.ts
|
|
26194
|
-
import { clone as
|
|
26381
|
+
import { clone as clone28 } from "ramda";
|
|
26195
26382
|
var DashboardController = class extends ControlController {
|
|
26196
26383
|
constructor() {
|
|
26197
26384
|
super(...arguments);
|
|
@@ -26374,7 +26561,7 @@ var DashboardController = class extends ControlController {
|
|
|
26374
26561
|
*/
|
|
26375
26562
|
async loadDynaPortletById(id) {
|
|
26376
26563
|
const app = ibiz.hub.getApp(ibiz.env.appId);
|
|
26377
|
-
const tempContext =
|
|
26564
|
+
const tempContext = clone28(this.context);
|
|
26378
26565
|
Object.assign(tempContext, { psappportlet: id });
|
|
26379
26566
|
const res = await app.deService.exec(
|
|
26380
26567
|
"psappportlet",
|
|
@@ -26645,7 +26832,7 @@ var CustomDashboardController = class {
|
|
|
26645
26832
|
|
|
26646
26833
|
// src/controller/control/dashboard/portlet/portlet-part/portlet-part.controller.ts
|
|
26647
26834
|
import { merge } from "lodash-es";
|
|
26648
|
-
import { IBizContext as IBizContext5, IBizParams as IBizParams2 } from "@ibiz-template/core";
|
|
26835
|
+
import { IBizContext as IBizContext5, IBizParams as IBizParams2, Namespace as Namespace2 } from "@ibiz-template/core";
|
|
26649
26836
|
|
|
26650
26837
|
// src/controller/control/dashboard/portlet/portlet-part/portlet-part.state.ts
|
|
26651
26838
|
var PortletPartState = class {
|
|
@@ -26732,6 +26919,22 @@ var PortletPartController = class {
|
|
|
26732
26919
|
return this.dashboard.getController(contentControlId);
|
|
26733
26920
|
}
|
|
26734
26921
|
}
|
|
26922
|
+
/**
|
|
26923
|
+
* @description 内容元素
|
|
26924
|
+
* @readonly
|
|
26925
|
+
* @type {(HTMLDivElement | null)}
|
|
26926
|
+
* @memberof PortletPartController
|
|
26927
|
+
*/
|
|
26928
|
+
get contentElement() {
|
|
26929
|
+
if (this.contentController) {
|
|
26930
|
+
const { codeName = "" } = this.contentController.model;
|
|
26931
|
+
if (codeName) {
|
|
26932
|
+
const ns = new Namespace2("control", ibiz.env.namespace);
|
|
26933
|
+
return document.querySelector(".".concat(ns.m(codeName)));
|
|
26934
|
+
}
|
|
26935
|
+
}
|
|
26936
|
+
return null;
|
|
26937
|
+
}
|
|
26735
26938
|
/**
|
|
26736
26939
|
* 子类不可覆盖或重写此方法,在 init 时需要重写的使用 onInit 方法。
|
|
26737
26940
|
*
|
|
@@ -26946,6 +27149,7 @@ var ContainerPortletController = class extends PortletPartController {
|
|
|
26946
27149
|
};
|
|
26947
27150
|
|
|
26948
27151
|
// src/controller/control/dashboard/portlet/view-portlet/view-portlet.controller.ts
|
|
27152
|
+
import { Namespace as Namespace3 } from "@ibiz-template/core";
|
|
26949
27153
|
var ViewPortletController = class extends PortletPartController {
|
|
26950
27154
|
/**
|
|
26951
27155
|
* 内容控制器
|
|
@@ -26961,6 +27165,22 @@ var ViewPortletController = class extends PortletPartController {
|
|
|
26961
27165
|
return this.dashboard.getController(portletAppView.name);
|
|
26962
27166
|
}
|
|
26963
27167
|
}
|
|
27168
|
+
/**
|
|
27169
|
+
* @description 内容元素
|
|
27170
|
+
* @readonly
|
|
27171
|
+
* @type {(HTMLDivElement | null)}
|
|
27172
|
+
* @memberof PortletPartController
|
|
27173
|
+
*/
|
|
27174
|
+
get contentElement() {
|
|
27175
|
+
if (this.contentController) {
|
|
27176
|
+
const { codeName = "" } = this.contentController.model;
|
|
27177
|
+
if (codeName) {
|
|
27178
|
+
const ns = new Namespace3("view", ibiz.env.namespace);
|
|
27179
|
+
return document.querySelector(".".concat(ns.m(codeName)));
|
|
27180
|
+
}
|
|
27181
|
+
}
|
|
27182
|
+
return null;
|
|
27183
|
+
}
|
|
26964
27184
|
/**
|
|
26965
27185
|
* 刷新门户部件
|
|
26966
27186
|
*
|
|
@@ -27024,6 +27244,21 @@ var RawItemPortletController = class extends PortletPartController {
|
|
|
27024
27244
|
|
|
27025
27245
|
// src/controller/control/dashboard/portlet/report-portlet/report-portlet.controller.ts
|
|
27026
27246
|
var ReportPortletController = class extends PortletPartController {
|
|
27247
|
+
/**
|
|
27248
|
+
* 内容控制器
|
|
27249
|
+
*
|
|
27250
|
+
* @author tony001
|
|
27251
|
+
* @date 2024-05-07 14:05:02
|
|
27252
|
+
* @readonly
|
|
27253
|
+
* @type {(IController | undefined)}
|
|
27254
|
+
*/
|
|
27255
|
+
get contentController() {
|
|
27256
|
+
const { controls = [] } = this.model;
|
|
27257
|
+
const reportPanel = controls.find((x) => x.controlType === "REPORTPANEL");
|
|
27258
|
+
if (reportPanel && reportPanel.codeName) {
|
|
27259
|
+
return this.dashboard.getController(reportPanel.codeName);
|
|
27260
|
+
}
|
|
27261
|
+
}
|
|
27027
27262
|
/**
|
|
27028
27263
|
* 刷新报表部件
|
|
27029
27264
|
*
|
|
@@ -30707,7 +30942,7 @@ var FormMDCtrlFormController = class extends FormMDCtrlController {
|
|
|
30707
30942
|
|
|
30708
30943
|
// src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts
|
|
30709
30944
|
import { ModelError as ModelError28 } from "@ibiz-template/core";
|
|
30710
|
-
import { clone as
|
|
30945
|
+
import { clone as clone29 } from "ramda";
|
|
30711
30946
|
var FormMDCtrlRepeaterController = class extends FormMDCtrlController {
|
|
30712
30947
|
constructor() {
|
|
30713
30948
|
super(...arguments);
|
|
@@ -30799,7 +31034,7 @@ var FormMDCtrlRepeaterController = class extends FormMDCtrlController {
|
|
|
30799
31034
|
copyFields.forEach((key) => {
|
|
30800
31035
|
tempForm[key] = this.form.model[key];
|
|
30801
31036
|
});
|
|
30802
|
-
this.repeatedForm =
|
|
31037
|
+
this.repeatedForm = clone29(tempForm);
|
|
30803
31038
|
}
|
|
30804
31039
|
/**
|
|
30805
31040
|
* 设置重复器控制器
|
|
@@ -31007,7 +31242,7 @@ import {
|
|
|
31007
31242
|
} from "@ibiz-template/core";
|
|
31008
31243
|
import { debounce } from "lodash-es";
|
|
31009
31244
|
import { createUUID as createUUID12 } from "qx-util";
|
|
31010
|
-
import { clone as
|
|
31245
|
+
import { clone as clone30, isNil as isNil27 } from "ramda";
|
|
31011
31246
|
|
|
31012
31247
|
// src/controller/control/form/edit-form/edit-form.service.ts
|
|
31013
31248
|
import {
|
|
@@ -31376,8 +31611,8 @@ var EditFormController = class extends FormController {
|
|
|
31376
31611
|
* @return {*} {Promise<IData>}
|
|
31377
31612
|
*/
|
|
31378
31613
|
async copy() {
|
|
31379
|
-
const context =
|
|
31380
|
-
const queryParams =
|
|
31614
|
+
const context = clone30(this.context);
|
|
31615
|
+
const queryParams = clone30(this.params);
|
|
31381
31616
|
const appDataEntity = await ibiz.hub.getAppDataEntity(
|
|
31382
31617
|
this.model.appDataEntityId,
|
|
31383
31618
|
this.model.appId
|
|
@@ -31434,7 +31669,7 @@ var EditFormController = class extends FormController {
|
|
|
31434
31669
|
return this.loadDraft();
|
|
31435
31670
|
}
|
|
31436
31671
|
const { context, params } = this.handlerAbilityParams(args);
|
|
31437
|
-
const queryParams =
|
|
31672
|
+
const queryParams = clone30(params);
|
|
31438
31673
|
let res;
|
|
31439
31674
|
try {
|
|
31440
31675
|
await this.startLoading();
|
|
@@ -32131,7 +32366,7 @@ import {
|
|
|
32131
32366
|
RuntimeError as RuntimeError59,
|
|
32132
32367
|
RuntimeModelError as RuntimeModelError63
|
|
32133
32368
|
} from "@ibiz-template/core";
|
|
32134
|
-
import { clone as
|
|
32369
|
+
import { clone as clone31, isNil as isNil28 } from "ramda";
|
|
32135
32370
|
import dayjs5 from "dayjs";
|
|
32136
32371
|
|
|
32137
32372
|
// src/controller/control/grid/grid/grid.service.ts
|
|
@@ -32275,6 +32510,9 @@ async function calcColumnModelBySchema(json, c) {
|
|
|
32275
32510
|
});
|
|
32276
32511
|
const addColumns = [];
|
|
32277
32512
|
const addDataItems = [];
|
|
32513
|
+
addFields.sort((a, b) => {
|
|
32514
|
+
return (a.description || "").localeCompare(b.description || "");
|
|
32515
|
+
});
|
|
32278
32516
|
addFields.forEach((item) => {
|
|
32279
32517
|
addColumns.push({
|
|
32280
32518
|
appId: c.model.appId,
|
|
@@ -32564,7 +32802,7 @@ var GridController = class extends MDControlController {
|
|
|
32564
32802
|
if (!this.addSchemaColumn) {
|
|
32565
32803
|
return;
|
|
32566
32804
|
}
|
|
32567
|
-
const tempParams =
|
|
32805
|
+
const tempParams = clone31(this.jsonSchemaParams);
|
|
32568
32806
|
Object.assign(tempParams, this.params);
|
|
32569
32807
|
const json = await getEntitySchema(
|
|
32570
32808
|
this.model.appDataEntityId,
|
|
@@ -32577,7 +32815,7 @@ var GridController = class extends MDControlController {
|
|
|
32577
32815
|
const result = await calcColumnModelBySchema(json, this);
|
|
32578
32816
|
if (result && result.degridColumns.length > 0) {
|
|
32579
32817
|
const { degridColumns, degridDataItems } = result;
|
|
32580
|
-
this.model =
|
|
32818
|
+
this.model = clone31(this.model);
|
|
32581
32819
|
this.model.degridColumns = [
|
|
32582
32820
|
...this.model.degridColumns || [],
|
|
32583
32821
|
...degridColumns
|
|
@@ -33289,7 +33527,7 @@ var GridController = class extends MDControlController {
|
|
|
33289
33527
|
);
|
|
33290
33528
|
}
|
|
33291
33529
|
if (row.data.srfuf === 1 /* UPDATE */) {
|
|
33292
|
-
row.cacheData =
|
|
33530
|
+
row.cacheData = clone31(row.data);
|
|
33293
33531
|
const defaultVal = this.calcDefaultValue(row.data, false);
|
|
33294
33532
|
Object.assign(row.data, defaultVal);
|
|
33295
33533
|
}
|
|
@@ -33432,7 +33670,7 @@ var GridController = class extends MDControlController {
|
|
|
33432
33670
|
*/
|
|
33433
33671
|
formatExcelData(data) {
|
|
33434
33672
|
const { fields = [] } = this.dataExportParam;
|
|
33435
|
-
const cloneData =
|
|
33673
|
+
const cloneData = clone31(
|
|
33436
33674
|
data.map((item) => {
|
|
33437
33675
|
return fields.reduce((obj, key) => {
|
|
33438
33676
|
obj[key] = item[key];
|
|
@@ -33790,7 +34028,7 @@ import {
|
|
|
33790
34028
|
} from "@ibiz-template/core";
|
|
33791
34029
|
import dayjs6 from "dayjs";
|
|
33792
34030
|
import { debounce as debounce2 } from "lodash-es";
|
|
33793
|
-
import { clone as
|
|
34031
|
+
import { clone as clone32, isNil as isNil29 } from "ramda";
|
|
33794
34032
|
import { isNilOrEmpty as isNilOrEmpty8 } from "qx-util";
|
|
33795
34033
|
var GridFieldColumnController = class extends GridColumnController {
|
|
33796
34034
|
constructor() {
|
|
@@ -33934,7 +34172,7 @@ var GridFieldColumnController = class extends GridColumnController {
|
|
|
33934
34172
|
srfkey: value,
|
|
33935
34173
|
...wfContext
|
|
33936
34174
|
});
|
|
33937
|
-
const tempParams =
|
|
34175
|
+
const tempParams = clone32(this.params);
|
|
33938
34176
|
const { context: newContext, params: newParams } = this.handlePublicParams(
|
|
33939
34177
|
row.data,
|
|
33940
34178
|
tempContext,
|
|
@@ -35479,7 +35717,7 @@ var PickupViewPanelController = class extends ControlController {
|
|
|
35479
35717
|
|
|
35480
35718
|
// src/controller/control/search-bar/search-bar.controller.ts
|
|
35481
35719
|
import { mergeInLeft as mergeInLeft3, recursiveIterate as recursiveIterate10 } from "@ibiz-template/core";
|
|
35482
|
-
import { clone as
|
|
35720
|
+
import { clone as clone34 } from "ramda";
|
|
35483
35721
|
import { isString as isString3 } from "lodash-es";
|
|
35484
35722
|
|
|
35485
35723
|
// src/controller/control/search-bar/search-bar-filter.controller.ts
|
|
@@ -35937,6 +36175,9 @@ async function calcFilterModelBySchema(json, appDataEntityId, modelAppId) {
|
|
|
35937
36175
|
}
|
|
35938
36176
|
});
|
|
35939
36177
|
const addSearchBarFilters = [];
|
|
36178
|
+
addFields.sort((a, b) => {
|
|
36179
|
+
return (a.description || "").localeCompare(b.description || "");
|
|
36180
|
+
});
|
|
35940
36181
|
addFields.forEach((item) => {
|
|
35941
36182
|
const ops = typeToOPs[item.type];
|
|
35942
36183
|
if (!ops) {
|
|
@@ -35968,7 +36209,7 @@ async function calcFilterModelBySchema(json, appDataEntityId, modelAppId) {
|
|
|
35968
36209
|
|
|
35969
36210
|
// src/controller/control/search-bar/search-bar-filter-items.controller.ts
|
|
35970
36211
|
import { RuntimeError as RuntimeError62 } from "@ibiz-template/core";
|
|
35971
|
-
import { clone as
|
|
36212
|
+
import { clone as clone33 } from "ramda";
|
|
35972
36213
|
var SubFieldRegex2 = /^N_(.\w+)_(.\w+)$/;
|
|
35973
36214
|
var SearchBarFilterItemsController = class extends SearchBarFilterController {
|
|
35974
36215
|
constructor(filterModels, appDataEntity, context, params) {
|
|
@@ -36053,7 +36294,7 @@ var SearchBarFilterItemsController = class extends SearchBarFilterController {
|
|
|
36053
36294
|
const matches = subStr.match(SubFieldRegex2);
|
|
36054
36295
|
const subField = matches[1];
|
|
36055
36296
|
const subOP = matches[2];
|
|
36056
|
-
const cloneItem =
|
|
36297
|
+
const cloneItem = clone33(item);
|
|
36057
36298
|
cloneItem.defsearchMode.valueOP = subOP;
|
|
36058
36299
|
cloneItem.id = subField;
|
|
36059
36300
|
const filterC = new SearchBarFilterController(
|
|
@@ -36474,6 +36715,8 @@ var SearchBarController = class extends ControlController {
|
|
|
36474
36715
|
this.state.quickSearchItems = [];
|
|
36475
36716
|
this.state.quickSearchFieldNames = [];
|
|
36476
36717
|
this.state.quickSearchPlaceHolder = "";
|
|
36718
|
+
this.state.filterMode = "default";
|
|
36719
|
+
this.state.customCond = "";
|
|
36477
36720
|
this.resetFilter();
|
|
36478
36721
|
this.state.visible = !!(this.model.enableQuickSearch || this.model.enableGroup || this.enableFilter);
|
|
36479
36722
|
}
|
|
@@ -36520,7 +36763,7 @@ var SearchBarController = class extends ControlController {
|
|
|
36520
36763
|
if (!this.addSchemaFilters) {
|
|
36521
36764
|
return;
|
|
36522
36765
|
}
|
|
36523
|
-
const tempParams =
|
|
36766
|
+
const tempParams = clone34(this.jsonSchemaParams);
|
|
36524
36767
|
Object.assign(tempParams, this.params);
|
|
36525
36768
|
const json = await getEntitySchema(
|
|
36526
36769
|
this.model.appDataEntityId,
|
|
@@ -36548,7 +36791,7 @@ var SearchBarController = class extends ControlController {
|
|
|
36548
36791
|
}
|
|
36549
36792
|
});
|
|
36550
36793
|
if (addSearchBarFilters.length > 0) {
|
|
36551
|
-
this.model =
|
|
36794
|
+
this.model = clone34(this.model);
|
|
36552
36795
|
this.model.searchBarFilters = addSearchBarFilters.concat(...mergeFilters);
|
|
36553
36796
|
this.model.enableFilter = true;
|
|
36554
36797
|
}
|
|
@@ -36717,6 +36960,42 @@ var SearchBarController = class extends ControlController {
|
|
|
36717
36960
|
);
|
|
36718
36961
|
}
|
|
36719
36962
|
}
|
|
36963
|
+
/**
|
|
36964
|
+
* 附加自定义条件
|
|
36965
|
+
*
|
|
36966
|
+
* @author zhanghengfeng
|
|
36967
|
+
* @date 2024-07-19 10:07:34
|
|
36968
|
+
* @param {IFilterNode[]} nodes
|
|
36969
|
+
* @return {*} {void}
|
|
36970
|
+
*/
|
|
36971
|
+
attachCustomCond(nodes) {
|
|
36972
|
+
if (!this.state.customCond) {
|
|
36973
|
+
return;
|
|
36974
|
+
}
|
|
36975
|
+
if (!nodes[0]) {
|
|
36976
|
+
nodes[0] = {
|
|
36977
|
+
nodeType: "GROUP",
|
|
36978
|
+
logicType: "AND",
|
|
36979
|
+
children: []
|
|
36980
|
+
};
|
|
36981
|
+
}
|
|
36982
|
+
const group = nodes[0];
|
|
36983
|
+
if (!Array.isArray(group.children)) {
|
|
36984
|
+
group.children = [];
|
|
36985
|
+
}
|
|
36986
|
+
const item = group.children.find(
|
|
36987
|
+
(child) => child.nodeType === "CUSTOM" && child.customType === "PQL"
|
|
36988
|
+
);
|
|
36989
|
+
if (item) {
|
|
36990
|
+
item.customCond = this.state.customCond;
|
|
36991
|
+
} else {
|
|
36992
|
+
group.children.push({
|
|
36993
|
+
nodeType: "CUSTOM",
|
|
36994
|
+
customType: "PQL",
|
|
36995
|
+
customCond: this.state.customCond
|
|
36996
|
+
});
|
|
36997
|
+
}
|
|
36998
|
+
}
|
|
36720
36999
|
/**
|
|
36721
37000
|
* 计算过滤项参数
|
|
36722
37001
|
* @author lxm
|
|
@@ -36727,7 +37006,9 @@ var SearchBarController = class extends ControlController {
|
|
|
36727
37006
|
if (!this.enableFilter) {
|
|
36728
37007
|
return;
|
|
36729
37008
|
}
|
|
36730
|
-
const
|
|
37009
|
+
const nodes = clone34(this.state.filterNodes);
|
|
37010
|
+
this.attachCustomCond(nodes);
|
|
37011
|
+
const searchconds = calcSearchConds(nodes, {
|
|
36731
37012
|
after: (node, cond) => {
|
|
36732
37013
|
if (node.nodeType === "FIELD" && isString3(node.value)) {
|
|
36733
37014
|
if (ScriptValueRegex2.test(node.value)) {
|
|
@@ -36894,7 +37175,9 @@ var SearchBarController = class extends ControlController {
|
|
|
36894
37175
|
*/
|
|
36895
37176
|
async handleSave() {
|
|
36896
37177
|
if (this.grid && this.state.selectedSearchGroupItem) {
|
|
36897
|
-
const
|
|
37178
|
+
const nodes = clone34(this.state.filterNodes);
|
|
37179
|
+
this.attachCustomCond(nodes);
|
|
37180
|
+
const filters = calcSearchCondExs(nodes);
|
|
36898
37181
|
const saveParams = {
|
|
36899
37182
|
searchconds: filters,
|
|
36900
37183
|
sort: this.grid.state.sortQuery,
|
|
@@ -36940,7 +37223,7 @@ var SearchBarController = class extends ControlController {
|
|
|
36940
37223
|
* @Date: 2023-12-21 10:29:24
|
|
36941
37224
|
*/
|
|
36942
37225
|
async handleGroupClick(groupItem) {
|
|
36943
|
-
var _a;
|
|
37226
|
+
var _a, _b;
|
|
36944
37227
|
if (this.enableStorage) {
|
|
36945
37228
|
const key = (_a = this.storageKeyFn) == null ? void 0 : _a.call(this);
|
|
36946
37229
|
if (key && groupItem.name) {
|
|
@@ -36959,9 +37242,26 @@ var SearchBarController = class extends ControlController {
|
|
|
36959
37242
|
const filterNodes = groupItem.searchGroupData.searchconds.map(
|
|
36960
37243
|
(item) => SearchCondEx2filterNode(item)
|
|
36961
37244
|
);
|
|
37245
|
+
this.state.customCond = "";
|
|
37246
|
+
if (filterNodes && filterNodes[0]) {
|
|
37247
|
+
const group = filterNodes[0];
|
|
37248
|
+
const { children } = group;
|
|
37249
|
+
if (Array.isArray(children)) {
|
|
37250
|
+
const index = children.findIndex(
|
|
37251
|
+
(child) => child.nodeType === "CUSTOM" && child.customType === "PQL"
|
|
37252
|
+
);
|
|
37253
|
+
if (index !== -1) {
|
|
37254
|
+
const item = children.splice(index, 1);
|
|
37255
|
+
this.state.customCond = ((_b = item[0]) == null ? void 0 : _b.customCond) || "";
|
|
37256
|
+
}
|
|
37257
|
+
}
|
|
37258
|
+
}
|
|
37259
|
+
this.state.filterMode = "default";
|
|
36962
37260
|
this.state.filterNodes = filterNodes;
|
|
36963
37261
|
} else {
|
|
36964
37262
|
this.state.filterNodes = getOriginFilterNodes();
|
|
37263
|
+
this.state.customCond = "";
|
|
37264
|
+
this.state.filterMode = "default";
|
|
36965
37265
|
}
|
|
36966
37266
|
recursiveIterate10(this.state.filterNodes[0], (node) => {
|
|
36967
37267
|
if (node.nodeType === "FIELD") {
|
|
@@ -39172,10 +39472,10 @@ var MDCtrlController = class extends MDControlController {
|
|
|
39172
39472
|
|
|
39173
39473
|
// src/controller/control/kanban/kanban.controller.ts
|
|
39174
39474
|
import { RuntimeError as RuntimeError65, RuntimeModelError as RuntimeModelError68 } from "@ibiz-template/core";
|
|
39175
|
-
import { clone as
|
|
39475
|
+
import { clone as clone36, isNil as isNil33 } from "ramda";
|
|
39176
39476
|
|
|
39177
39477
|
// src/controller/control/kanban/kanban.service.ts
|
|
39178
|
-
import { clone as
|
|
39478
|
+
import { clone as clone35 } from "ramda";
|
|
39179
39479
|
var KanbanService = class extends DataViewControlService {
|
|
39180
39480
|
/**
|
|
39181
39481
|
* 更新分组数据
|
|
@@ -39204,7 +39504,7 @@ var KanbanService = class extends DataViewControlService {
|
|
|
39204
39504
|
*/
|
|
39205
39505
|
async moveOrderItem(context, data, args) {
|
|
39206
39506
|
const moveAction = this.model.moveControlAction.appDEMethodId;
|
|
39207
|
-
const params =
|
|
39507
|
+
const params = clone35(data.getOrigin());
|
|
39208
39508
|
Object.assign(params, args);
|
|
39209
39509
|
let res = await this.exec(moveAction, context, params, {
|
|
39210
39510
|
srfupdateitem: true
|
|
@@ -39536,7 +39836,7 @@ var KanbanController = class extends DataViewControlController {
|
|
|
39536
39836
|
}
|
|
39537
39837
|
return moveData;
|
|
39538
39838
|
};
|
|
39539
|
-
const draggedItem =
|
|
39839
|
+
const draggedItem = clone36(fromGroup.children[fromIndex]);
|
|
39540
39840
|
const removeItems = fromGroup.children.splice(fromIndex, 1);
|
|
39541
39841
|
toGroup.children.splice(toIndex, 0, ...removeItems);
|
|
39542
39842
|
if (info.from !== info.to) {
|
|
@@ -39809,7 +40109,7 @@ import {
|
|
|
39809
40109
|
awaitTimeout as awaitTimeout3,
|
|
39810
40110
|
recursiveIterate as recursiveIterate12
|
|
39811
40111
|
} from "@ibiz-template/core";
|
|
39812
|
-
import { clone as
|
|
40112
|
+
import { clone as clone37 } from "ramda";
|
|
39813
40113
|
|
|
39814
40114
|
// src/controller/control/tree-grid-ex/tree-grid-ex.service.ts
|
|
39815
40115
|
var TreeGridExService = class extends TreeService {
|
|
@@ -40281,7 +40581,7 @@ var TreeGridExController = class extends TreeController {
|
|
|
40281
40581
|
);
|
|
40282
40582
|
}
|
|
40283
40583
|
if (row.data._deData.srfuf === 1 /* UPDATE */) {
|
|
40284
|
-
row.cacheData =
|
|
40584
|
+
row.cacheData = clone37(row.data);
|
|
40285
40585
|
const defaultVal = this.calcDefaultValue(row.data, false);
|
|
40286
40586
|
Object.assign(row.data, defaultVal);
|
|
40287
40587
|
}
|
|
@@ -40394,7 +40694,7 @@ import {
|
|
|
40394
40694
|
RuntimeError as RuntimeError67,
|
|
40395
40695
|
RuntimeModelError as RuntimeModelError70
|
|
40396
40696
|
} from "@ibiz-template/core";
|
|
40397
|
-
import { clone as
|
|
40697
|
+
import { clone as clone38 } from "ramda";
|
|
40398
40698
|
import dayjs7 from "dayjs";
|
|
40399
40699
|
var TreeGridExNodeColumnController = class {
|
|
40400
40700
|
/**
|
|
@@ -40611,7 +40911,7 @@ var TreeGridExNodeColumnController = class {
|
|
|
40611
40911
|
srfkey: value,
|
|
40612
40912
|
...wfContext
|
|
40613
40913
|
});
|
|
40614
|
-
const tempParams =
|
|
40914
|
+
const tempParams = clone38(this.params);
|
|
40615
40915
|
const { userParam } = this.nodeColumn;
|
|
40616
40916
|
if (userParam) {
|
|
40617
40917
|
const { navigateContexts, navigateParams } = parseUserParams(userParam);
|
|
@@ -42764,8 +43064,8 @@ import { QXEvent as QXEvent11 } from "qx-util";
|
|
|
42764
43064
|
|
|
42765
43065
|
// src/controller/notification/async-action.controller.ts
|
|
42766
43066
|
import { QXEvent as QXEvent9 } from "qx-util";
|
|
42767
|
-
import { clone as
|
|
42768
|
-
import { isNil as isNil34, isNumber as
|
|
43067
|
+
import { clone as clone39 } from "ramda";
|
|
43068
|
+
import { isNil as isNil34, isNumber as isNumber3 } from "lodash-es";
|
|
42769
43069
|
import dayjs8 from "dayjs";
|
|
42770
43070
|
var AsyncActionController = class {
|
|
42771
43071
|
constructor() {
|
|
@@ -42839,7 +43139,7 @@ var AsyncActionController = class {
|
|
|
42839
43139
|
"updatedate"
|
|
42840
43140
|
];
|
|
42841
43141
|
dateFields.forEach((key) => {
|
|
42842
|
-
if (
|
|
43142
|
+
if (isNumber3(data[key])) {
|
|
42843
43143
|
data[key] = dayjs8(data[key]).format("YYYY-MM-DD HH:mm:ss");
|
|
42844
43144
|
}
|
|
42845
43145
|
});
|
|
@@ -42875,7 +43175,7 @@ var AsyncActionController = class {
|
|
|
42875
43175
|
} else {
|
|
42876
43176
|
this.noticeResult(action);
|
|
42877
43177
|
}
|
|
42878
|
-
this.evt.emit("add",
|
|
43178
|
+
this.evt.emit("add", clone39(action));
|
|
42879
43179
|
this.evt.emit("dataChange");
|
|
42880
43180
|
}
|
|
42881
43181
|
/**
|
|
@@ -42897,7 +43197,7 @@ var AsyncActionController = class {
|
|
|
42897
43197
|
}
|
|
42898
43198
|
this.noticeResult(action);
|
|
42899
43199
|
}
|
|
42900
|
-
this.evt.emit("change",
|
|
43200
|
+
this.evt.emit("change", clone39(action));
|
|
42901
43201
|
this.evt.emit("dataChange");
|
|
42902
43202
|
}
|
|
42903
43203
|
noticeResult(action) {
|
|
@@ -44062,7 +44362,7 @@ var ViewEngineBase = class {
|
|
|
44062
44362
|
|
|
44063
44363
|
// src/engine/md-view.engine.ts
|
|
44064
44364
|
import { RuntimeModelError as RuntimeModelError73 } from "@ibiz-template/core";
|
|
44065
|
-
import { clone as
|
|
44365
|
+
import { clone as clone40 } from "ramda";
|
|
44066
44366
|
var MDViewEngine = class extends ViewEngineBase {
|
|
44067
44367
|
/**
|
|
44068
44368
|
* 多数据部件名称
|
|
@@ -44317,7 +44617,7 @@ var MDViewEngine = class extends ViewEngineBase {
|
|
|
44317
44617
|
ibiz.i18n.t("runtime.engine.logicNewdata")
|
|
44318
44618
|
);
|
|
44319
44619
|
}
|
|
44320
|
-
const params =
|
|
44620
|
+
const params = clone40(this.view.params);
|
|
44321
44621
|
if (copyMode) {
|
|
44322
44622
|
params.srfcopymode = copyMode;
|
|
44323
44623
|
}
|