| 
					
				 | 
			
			
				@@ -1,13 +1,13 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  * Created by Tony on 2017/7/6. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-let cache = require('./cacheUtil'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+let cacheUtil = require('./cacheUtil'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 let std_glj_type_mdl = require('../models/std_glj_types'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const STD_GLJ_GRP = 'std_glj_grp'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 function getStdGljTypeCache() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    let rst = cache.getCache(STD_GLJ_GRP,'default'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let rst = cacheUtil.getCache(STD_GLJ_GRP,'default'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return rst; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -20,21 +20,23 @@ class StdGljTypeClass{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     build(cache){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let me = this, rst = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rst.items = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        let private_combine_glj_type = function (item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let private_combine_glj_type = function (item, topParentId, parentId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             let tmpItem = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tmpItem.ID = item.ID; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            tmpItem.TopParentID = topParentId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            tmpItem.ParentID = parentId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tmpItem.fullName = item.fullName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tmpItem.shortName = item.shortName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             rst["typeId" + item.ID] = tmpItem; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             rst.items.push(tmpItem); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (item.items) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 for (let subItem of item.items) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    private_combine_glj_type(subItem); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    private_combine_glj_type(subItem, topParentId, item.ID); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         for (let item of cache.typesDefine) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            private_combine_glj_type(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            private_combine_glj_type(item, item.ID, -1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         me.innerGljTypeObj = rst; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -47,6 +49,17 @@ class StdGljTypeClass{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return rst; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getTopParentIdByItemId(itemId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let me = this, rst = itemId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (me.innerGljTypeObj) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            let item = me.innerGljTypeObj["typeId" + itemId]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (item) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                rst = item.TopParentID; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return rst; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     toArray(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let me = this, rst = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return me.innerGljTypeObj.items; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -58,7 +71,7 @@ module.exports = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     setStdGljTypeCache: function () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         std_glj_type_mdl.find({typeName: "默认"}, '-_id', function(err, typeObj){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if(typeObj.length){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                cache.setCache(STD_GLJ_GRP,'default',typeObj[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                cacheUtil.setCache(STD_GLJ_GRP,'default',typeObj[0]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }, 
			 |