|
@@ -3,6 +3,7 @@
|
|
|
*/
|
|
|
|
|
|
const sort_types = ["normal", "tree", "accord_to_parent", "self_define"];
|
|
|
+const condition_types = ["==", "===", ">", ">=", "<", "<=", "!=", "in", "not in"];
|
|
|
const pre_handle_data_objects = ["bills", "ration", "ration_glj"];
|
|
|
const pre_handle_data_objects_name = ["清单", "定额", "定额工料机"];
|
|
|
const exposed_bills_properties = [
|
|
@@ -284,7 +285,7 @@ let preHandleObj = {
|
|
|
} else if (dom.selectedIndex === 0) {
|
|
|
$("#div_sort_type_normal")[0].style.display = "";
|
|
|
}
|
|
|
-
|
|
|
+ me.currentNode[JV.PROP_SORT_TYPE] = dom.value;
|
|
|
},
|
|
|
onBeforeDrop: function(treeId, treeNodes, targetNode, moveType){
|
|
|
//
|
|
@@ -566,6 +567,30 @@ let preHandleFilterObj = {
|
|
|
for (let keyNode of nodes) {
|
|
|
if (filterItem.key === keyNode.Key) {
|
|
|
me.treeObj.checkNode(keyNode, true, false, false);
|
|
|
+ //and then others...
|
|
|
+ //过滤条件
|
|
|
+ keyNode[JV.PROP_FILTER_CONDITION] = filterItem[JV.PROP_FILTER_CONDITION];
|
|
|
+ $("#diySelect_" + keyNode.tId)[0].selectedIndex = condition_types.indexOf(filterItem[JV.PROP_FILTER_CONDITION]);
|
|
|
+ //条件值
|
|
|
+ keyNode[JV.PROP_FILTER_COMPARE_VAL] = filterItem[JV.PROP_FILTER_COMPARE_VAL];
|
|
|
+ $("#diyInput_" + keyNode.tId)[0].selectedIndex = filterItem[JV.PROP_FILTER_COMPARE_VAL];
|
|
|
+ //其他关联业务数据对象
|
|
|
+ if (filterItem[JV.PROP_FILTER_COMPARE_OBJ]) {
|
|
|
+ let cmpObjDom = $("#diyDataSelect_" + keyNode.tId)[0];
|
|
|
+ keyNode[JV.PROP_FILTER_COMPARE_OBJ] = filterItem[JV.PROP_FILTER_COMPARE_OBJ];
|
|
|
+ let idx = pre_handle_data_objects.indexOf(filterItem[JV.PROP_FILTER_COMPARE_OBJ]);
|
|
|
+ cmpObjDom.selectedIndex = idx + 1;
|
|
|
+ me.private_setup_compare_obj(cmpObjDom);
|
|
|
+ let cmpObjIdDom = $("#diyDataDetailSelect_" + keyNode.tId)[0];
|
|
|
+ for (let i = 0; i < cmpObjIdDom.children.length; i++) {
|
|
|
+ let option = cmpObjIdDom.children[i];
|
|
|
+ if (option.value === filterItem[JV.PROP_FILTER_COMPARE_OBJ_KEY]) {
|
|
|
+ keyNode[JV.PROP_FILTER_COMPARE_OBJ_KEY] = filterItem[JV.PROP_FILTER_COMPARE_OBJ_KEY]
|
|
|
+ cmpObjIdDom.selectedIndex = i;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
@@ -573,12 +598,8 @@ let preHandleFilterObj = {
|
|
|
}
|
|
|
},
|
|
|
onCheck: function(event,treeId,treeNode) {
|
|
|
- // let me = preHandleFilterObj;
|
|
|
- // if (treeId.indexOf("parent_sorting_keys") >= 0) {
|
|
|
- // } else if (treeId.indexOf("child_sorting_keys") >= 0) {
|
|
|
- // } else {
|
|
|
- // me.resetFilter();
|
|
|
- // }
|
|
|
+ let me = preHandleFilterObj;
|
|
|
+ me.resetFilter();
|
|
|
},
|
|
|
resetFilter: function() {
|
|
|
let me = this;
|
|
@@ -586,6 +607,9 @@ let preHandleFilterObj = {
|
|
|
let normalSortKeys = [];
|
|
|
for (let node of nodes) {
|
|
|
let keyObj = {key: node.Key};
|
|
|
+ if (!node[JV.PROP_FILTER_CONDITION]) {
|
|
|
+ node[JV.PROP_FILTER_CONDITION] = "==";
|
|
|
+ }
|
|
|
keyObj[JV.PROP_FILTER_CONDITION] = node[JV.PROP_FILTER_CONDITION];
|
|
|
keyObj[JV.PROP_FILTER_COMPARE_VAL] = node[JV.PROP_FILTER_COMPARE_VAL];
|
|
|
if (node[JV.PROP_FILTER_COMPARE_OBJ]) {
|
|
@@ -621,7 +645,7 @@ let preHandleFilterObj = {
|
|
|
aObj.after(dataSelStr);
|
|
|
let editStr = "<input type='text' id='diyInput_" + treeNode.tId + "' width='10'/>";
|
|
|
aObj.after(editStr);
|
|
|
- let selStr = "<select class='selDemo' id='diySelect_" + treeNode.tId + "'><option value='=='>等于</option><option value='==='>全等于</option><option value='>'>大于</option><option value='>='>大于等于</option><option value='<'>小于</option><option value='<='>小于等于</option><option value='!='>不等于</option></select>";
|
|
|
+ let selStr = "<select class='selDemo' id='diySelect_" + treeNode.tId + "'><option value='=='>等于</option><option value='==='>全等于</option><option value='>'>大于</option><option value='>='>大于等于</option><option value='<'>小于</option><option value='<='>小于等于</option><option value='!='>不等于</option><option value='in'>在</option><option value='not in'>不在</option></select>";
|
|
|
aObj.after(selStr);
|
|
|
let sel = $("#diySelect_" + treeNode.tId);
|
|
|
if (sel) {
|
|
@@ -642,8 +666,8 @@ let preHandleFilterObj = {
|
|
|
node[JV.PROP_FILTER_CONDITION] = sel.value;
|
|
|
me.resetFilter();
|
|
|
},
|
|
|
- filterCompareObjChange: function(event) {
|
|
|
- let me = preHandleFilterObj, sel = event.currentTarget, tId = sel.id.slice(14);
|
|
|
+ private_setup_compare_obj: function(dom) {
|
|
|
+ let me = this, sel = dom, tId = sel.id.slice(14);
|
|
|
let node = me.treeObj.getNodeByTId(tId);
|
|
|
node[JV.PROP_FILTER_COMPARE_OBJ] = sel.value;
|
|
|
let idx = pre_handle_data_objects.indexOf(sel.value);
|
|
@@ -659,6 +683,10 @@ let preHandleFilterObj = {
|
|
|
//清除所有key选项
|
|
|
node[JV.PROP_FILTER_COMPARE_OBJ_KEY] = null;
|
|
|
}
|
|
|
+ },
|
|
|
+ filterCompareObjChange: function(event) {
|
|
|
+ let me = preHandleFilterObj, sel = event.currentTarget;
|
|
|
+ me.private_setup_compare_obj(sel);
|
|
|
me.resetFilter();
|
|
|
},
|
|
|
filterCompareObjKeyChange: function(event) {
|