Browse Source

Pull request #3526: REPORT-95320 && BI-125865

Merge in VISUAL/fineui from ~DAILER/fineui:es6 to es6

* commit '52d8f2ea4d44591d396e825446b6a76cd2f619c3':
  BI-125865 fix: 【6.0.10发散】展开数据预警后,调整浏览器窗口,页面显示异常
  REPORT-95320 fix: 【冒烟】【权限管理】权限复用页面搜索并选中部门后,取消搜索后查看实际未选中
es6
Dailer-刘荣歆 1 year ago
parent
commit
35a6551f7c
  1. 2
      packages/fineui/src/base/0.base.js
  2. 96
      packages/fineui/src/component/treevaluechooser/abstract.treevaluechooser.js
  3. 24
      packages/fineui/src/core/controller/controller.layer.js

2
packages/fineui/src/base/0.base.js

@ -11,7 +11,7 @@ import {
import { StyleLoaderManager } from '../core/loader/loader.style';
const Resizers = new ResizeController();
const Layers = new LayerController();
const Layers = new LayerController(Resizers);
const Maskers = new MaskersController();
const Bubbles = new BubblesController();
const Tooltips = new TooltipsController();

96
packages/fineui/src/component/treevaluechooser/abstract.treevaluechooser.js

@ -51,12 +51,12 @@ export class AbstractTreeValueChooser extends Widget {
some(this.items, (i, item) => {
if (item.value === v || `${item.value}` === v) {
text = item.text;
return true;
}
});
}
return text;
}
@ -104,7 +104,7 @@ export class AbstractTreeValueChooser extends Widget {
if (selectedValues == null || isEmpty(selectedValues)) {
callback({});
return;
}
@ -128,7 +128,7 @@ export class AbstractTreeValueChooser extends Widget {
createOneJson(child, node.id, llen);
doCheck(newParents, child, {});
});
return;
}
each(selected, k => {
@ -181,7 +181,7 @@ export class AbstractTreeValueChooser extends Widget {
if (selectedValues == null || isEmpty(selectedValues)) {
callback({});
return;
}
@ -300,7 +300,7 @@ export class AbstractTreeValueChooser extends Widget {
newParents.push(current);
if (this._isMatch(parents, current, keyword)) {
searched && searched.push(newParents);
return true;
}
@ -323,7 +323,7 @@ export class AbstractTreeValueChooser extends Widget {
result.push(next);
});
}
return can;
};
@ -333,7 +333,7 @@ export class AbstractTreeValueChooser extends Widget {
return true;
}
}
return false;
};
@ -346,7 +346,7 @@ export class AbstractTreeValueChooser extends Widget {
return false;
}
}
return true;
}
@ -362,7 +362,7 @@ export class AbstractTreeValueChooser extends Widget {
return true;
}
}
return false;
}
}
@ -372,20 +372,14 @@ export class AbstractTreeValueChooser extends Widget {
const selectedValues = op.selectedValues;
if (selectedValues == null || isEmpty(selectedValues)) {
callback({});
return;
}
each(selectedValues, (k, v) => {
result.push([k]);
});
dealWithSelectedValues(selectedValues, []);
const jo = {};
each(result, (i, strs) => {
this._buildTree(jo, strs);
});
callback(jo);
const isAllSelected = (selected, parents) => isEmpty(selected) || this._getChildCount(parents) === size(selected);
function dealWithSelectedValues(selected, parents) {
if (selected == null || isEmpty(selected)) {
@ -404,11 +398,19 @@ export class AbstractTreeValueChooser extends Widget {
can = false;
}
});
return can && isAllSelected(selected, parents);
}
const isAllSelected = (selected, parents) => isEmpty(selected) || this._getChildCount(parents) === size(selected);
dealWithSelectedValues(selectedValues, []);
const jo = {};
each(result, (i, strs) => {
this._buildTree(jo, strs);
});
callback(jo);
}
_reqInitTreeNode(op, callback) {
@ -461,15 +463,15 @@ export class AbstractTreeValueChooser extends Widget {
result = concat(
filter(nodes, (idx, node) => {
const find = Func.getSearchResult([node.text || node.value], keyword);
return find.find.length > 0 || find.match.length > 0;
}),
result
);
}
return output;
};
}
function nodeSearch(deep, parentValues, current, isAllSelect, result) {
if (self._isMatch(parentValues, current, keyword)) {
@ -483,7 +485,7 @@ export class AbstractTreeValueChooser extends Widget {
true,
result
);
return [true, checked];
}
const newParents = clone(parentValues);
@ -510,9 +512,9 @@ export class AbstractTreeValueChooser extends Widget {
checked = isCurAllSelected || (isSelected(parentValues, current) && checked);
createOneJson(parentValues, current, true, checked, false, false, result);
}
return [can, checked];
};
}
function createOneJson(parentValues, value, isOpen, checked, half, flag, result) {
const node = self._getTreeNode(parentValues, value);
@ -529,14 +531,14 @@ export class AbstractTreeValueChooser extends Widget {
flag,
disabled: node.disabled,
});
};
}
function isHalf(parentValues, value) {
const find = findSelectedObj(parentValues);
if (find == null) {
return null;
}
return any(find, (v, ob) => {
if (v === value) {
if (ob != null && !isEmpty(ob)) {
@ -551,7 +553,7 @@ export class AbstractTreeValueChooser extends Widget {
if (find == null) {
return null;
}
return any(find, (v, ob) => {
if (v === value) {
if (ob != null && isEmpty(ob)) {
@ -566,7 +568,7 @@ export class AbstractTreeValueChooser extends Widget {
if (find == null) {
return false;
}
return any(find, v => {
if (v === value) {
return true;
@ -584,10 +586,10 @@ export class AbstractTreeValueChooser extends Widget {
if (find == null) {
return false;
}
return true;
});
return find;
}
}
@ -626,7 +628,7 @@ export class AbstractTreeValueChooser extends Widget {
// 不是上面那种情况就先看在节点没有带有明确半选的时候,通过节点自身的checked和valueMap的状态能都得到选中信息
check = ((tempCheck || checked) && !half) || has(valueMap, current);
}
return [check, halfCheck];
};
const getResult = (parentValues, checkState) => {
@ -636,33 +638,33 @@ export class AbstractTreeValueChooser extends Widget {
if (isEmpty(selected)) {
return true;
}
if (this._getChildCount(parents) !== size(selected)) {
return false;
}
return every(selected, value => isAllSelected(selected[value], concat(parents, value)));
};
function dealWithSelectedValue(parentValues, selectedValues) {
const valueMap = {},
parents = (parentValues || []).slice(0);
each(parentValues, (i, v) => {
parents.push(v);
selectedValues = selectedValues[v] || {};
});
each(selectedValues, (value, obj) => {
const currentParents = concat(parents, value);
if (isNull(obj)) {
valueMap[value] = [0, 0];
return;
}
if (isEmpty(obj)) {
valueMap[value] = [2, 0];
return;
}
const nextNames = {};
@ -676,7 +678,7 @@ export class AbstractTreeValueChooser extends Widget {
// valueMap的数组第一个参数为不选: 0, 半选: 1, 全选:2, 第二个参数为改节点下选中的子节点个数(子节点全选或者不存在)
valueMap[value] = [1, size(nextNames)];
});
return valueMap;
}
valueMap = dealWithSelectedValue(parentValues, selectedValues);
@ -773,7 +775,7 @@ export class AbstractTreeValueChooser extends Widget {
_getAddedValueNode(parentValues, selectedValues) {
const nodes = this._getChildren(parentValues);
return map(difference(keys(selectedValues), map(nodes, "value")), (idx, v) => {
return {
id: UUID(),
@ -796,7 +798,7 @@ export class AbstractTreeValueChooser extends Widget {
}
pNode = pNode[parentValues[i]];
}
return pNode;
}
@ -837,12 +839,12 @@ export class AbstractTreeValueChooser extends Widget {
const find = Func.getSearchResult([node.text || node.value], keyword);
if (o.allowSearchValue && node.value) {
const valueFind = Func.getSearchResult([node.value], keyword);
return (
valueFind.find.length > 0 || valueFind.match.length > 0 || find.find.length > 0 || find.match.length > 0
);
}
return find.find.length > 0 || find.match.length > 0;
}
@ -919,7 +921,7 @@ export class AbstractTreeValueChooser extends Widget {
queue = queue.concat(childNodes);
nodes = nodes.concat(childNodes);
}
return nodes;
}
@ -972,7 +974,7 @@ export class AbstractTreeValueChooser extends Widget {
r[child.value] = {};
fill(newParents, child, null, r[child.value]);
});
return;
}
each(selected, k => {

24
packages/fineui/src/core/controller/controller.layer.js

@ -9,17 +9,17 @@ import { Widget } from "../4.widget";
import { createWidget } from "../5.inject";
import { zIndex_layer } from "../constant";
import { DOM } from "../utils";
// import { Resizers } from "../../base/0.base";
export class LayerController extends Controller {
constructor() {
constructor(Resizers) {
super();
this._constructor();
this.Resizers = Resizers;
}
props = {
render: "body",
}
};
init() {
this.layerManager = {};
@ -28,7 +28,7 @@ export class LayerController extends Controller {
}
_initResizer() {
// this.resizer = Resizers.add(`layerController${uniqueId()}`, bind(this._resize, this));
this.resizer = this.Resizers.add(`layerController${uniqueId()}`, bind(this._resize, this));
}
_resize() {
@ -47,7 +47,7 @@ export class LayerController extends Controller {
context = op;
op = container;
}
return this.create(name, null, op, context);
}
@ -124,7 +124,7 @@ export class LayerController extends Controller {
});
}
this.add(name, widget, layout);
return widget;
}
@ -134,7 +134,7 @@ export class LayerController extends Controller {
}
this._getLayout(name).visible();
this._getLayout(name).element.css("z-index", this.zindex++).show(0, callback).trigger("__resize__");
return this;
}
@ -144,7 +144,7 @@ export class LayerController extends Controller {
}
this._getLayout(name).invisible();
this._getLayout(name).element.hide(0, callback);
return this;
}
@ -160,7 +160,7 @@ export class LayerController extends Controller {
this.layerManager[name] = layer;
this.layouts[name] = layout;
layout.element.css("z-index", this.zindex++);
return this;
}
@ -184,7 +184,7 @@ export class LayerController extends Controller {
this.layouts[name].destroy();
delete this.layerManager[name];
delete this.layouts[name];
return this;
}
@ -195,7 +195,7 @@ export class LayerController extends Controller {
});
this.layerManager = {};
this.layouts = {};
return this;
}
}

Loading…
Cancel
Save