| 
					
				 | 
			
			
				@@ -15,88 +15,90 @@ const rationInstallFeeItem = mongoose.model('std_ration_lib_installation'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const rationInstallSection = mongoose.model('std_ration_lib_installationSection'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 const engLibModel = mongoose.model('engineering_lib'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-function createNewLibModel(rationLibObj){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+function createNewLibModel(rationLibObj) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     var rst = {}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     rst.dispName = rationLibObj.dispName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rst.appType = rationLibObj.appType?rationLibObj.appType:'construct'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rst.code = rationLibObj.code; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rst.shortName = rationLibObj.shortName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rst.appType = rationLibObj.appType ? rationLibObj.appType : 'construct'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     rst.compilationId = rationLibObj.compilationId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     rst.compilationName = rationLibObj.compilationName; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     rst.gljLib = rationLibObj.gljLib; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     rst.creator = rationLibObj.creator; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     rst.createDate = moment(Date.now()).format('YYYY-MM-DD HH:mm:ss'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rst.recentOpr = [{operator: rationLibObj.creator, operateDate: rst.createDate}], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rst.deleted = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rst.recentOpr = [{ operator: rationLibObj.creator, operateDate: rst.createDate }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rst.deleted = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     return rst; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-var rationRepositoryDao = function(){}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+var rationRepositoryDao = function () { }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 rationRepositoryDao.prototype.getRationLibsByCompilation = async function (compilationId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    return await rationRepository.find({compilationId: compilationId, deleted: false}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return await rationRepository.find({ compilationId: compilationId, deleted: false }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 rationRepositoryDao.prototype.updateGljLib = function (gljLibId, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rationRepository.update({gljLib: gljLibId}, {$set: {gljLib: -1}}, {multi: true}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rationRepository.update({ gljLib: gljLibId }, { $set: { gljLib: -1 } }, { multi: true }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             callback(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             callback(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.updateOprArr= function(findSet, oprtor, oprDate, cb){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.updateOprArr = function (findSet, oprtor, oprDate, cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     rationRepository.find(findSet, function (err, result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            if(result.length === 1){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (result.length === 1) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 let recentOprArr = result[0].recentOpr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 let isExist = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                for(let i =0 ; i<recentOprArr.length; i++){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(recentOprArr[i].operator === oprtor){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                for (let i = 0; i < recentOprArr.length; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (recentOprArr[i].operator === oprtor) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         recentOprArr[i].operateDate = oprDate; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         isExist = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(!isExist){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(recentOprArr.length < 5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        recentOprArr.push({operator: oprtor, operateDate: oprDate}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!isExist) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (recentOprArr.length < 5) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        recentOprArr.push({ operator: oprtor, operateDate: oprDate }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    else if(recentOprArr.length === 5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    else if (recentOprArr.length === 5) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         recentOprArr.sort(function (a, b) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            if(a.operateDate > b.operateDate){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if (a.operateDate > b.operateDate) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 return -1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 return 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             return 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        recentOprArr.splice(recentOprArr.length -1, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        recentOprArr.splice(0, 1, {operator: oprtor, operateDate: oprDate}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        recentOprArr.splice(recentOprArr.length - 1, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        recentOprArr.splice(0, 1, { operator: oprtor, operateDate: oprDate }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                rationRepository.update(findSet, {$set: {recentOpr: recentOprArr}}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                rationRepository.update(findSet, { $set: { recentOpr: recentOprArr } }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.getRealLibName = function(dispName,callback){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.getRealLibName = function (dispName, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        rationRepository.find({"dispName": dispName}, function(err,data){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rationRepository.find({ "dispName": dispName }, function (err, data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 callback('Error', null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -104,13 +106,13 @@ rationRepositoryDao.prototype.getRealLibName = function(dispName,callback){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var rst = rationRepository.find({"dispName": dispName}).exec(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var rst = rationRepository.find({ "dispName": dispName }).exec(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return rst; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.getLibIDByName = function(dispName, callback){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rationRepository.findOne({"dispName": dispName}, function(err,data){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.getLibIDByName = function (dispName, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rationRepository.findOne({ "dispName": dispName }, function (err, data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             callback('Error', null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -119,9 +121,9 @@ rationRepositoryDao.prototype.getLibIDByName = function(dispName, callback){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.getRepositoryById = function(repId,callback = null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.getRepositoryById = function (repId, callback = null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        rationRepository.find({"ID": repId}, function(err,data){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        rationRepository.find({ "ID": repId }, function (err, data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 callback('Error', null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -129,31 +131,31 @@ rationRepositoryDao.prototype.getRepositoryById = function(repId,callback = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        var rst = rationRepository.find({"ID": repId}).exec(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        var rst = rationRepository.find({ "ID": repId }).exec(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return rst; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.addRationRepository = function( rationLibObj,callback){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    counter.counterDAO.getIDAfterCount(counter.moduleName.rationMap, 1, function(err, result){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.addRationRepository = function (rationLibObj, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    counter.counterDAO.getIDAfterCount(counter.moduleName.rationMap, 1, function (err, result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         var rMap = createNewLibModel(rationLibObj); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         rMap.ID = result.sequence_value; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        new rationRepository(rMap).save(function(err, result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        new rationRepository(rMap).save(function (err, result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (err) callback("Error", null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 //向引用工料机库的添加标记 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                gljMapModel.update({ID: rMap.gljLib, deleted: false}, {$addToSet: {rationLibs: {ID: rMap.ID, dispName: rMap.dispName}}}, function (err, data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        rationRepository.remove({ID: rMap.ID}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                gljMapModel.update({ ID: rMap.gljLib, deleted: false }, { $addToSet: { rationLibs: { ID: rMap.ID, dispName: rMap.dispName } } }, function (err, data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        rationRepository.remove({ ID: rMap.ID }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 callback("创建失败且回滚失败!", null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 callback("创建失败,已回滚!", null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         callback(false, result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -162,38 +164,38 @@ rationRepositoryDao.prototype.addRationRepository = function( rationLibObj,callb 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.getRationLib = function(libId, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rationRepository.find({ID: libId, "deleted": false}, function(err, data){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.getRationLib = function (libId, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rationRepository.find({ ID: libId, "deleted": false }, function (err, data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            callback( 'Error', null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            callback('Error', null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             callback(0, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.getDisplayRationLibs = function(callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rationRepository.find({"deleted": false}, function(err, data){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.getDisplayRationLibs = function (callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rationRepository.find({ "deleted": false }, function (err, data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            callback( 'Error', null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            callback('Error', null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            callback( false, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            callback(false, data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.updateName = function(oprtor, renameObj, callback){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    rationRepository.update({ID: renameObj.ID, deleted: false}, {$set: {dispName: renameObj.newName}}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.updateName = function (oprtor, renameObj, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    rationRepository.update({ ID: renameObj.ID, deleted: false }, { $set: { dispName: renameObj.newName, code: renameObj.code, shortName: renameObj.shortName } }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             callback(err, '重命名失败!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        } else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            new rationRepositoryDao().updateOprArr({ID: renameObj.ID, deleted: false}, oprtor, moment(Date.now()).format('YYYY-MM-DD HH:mm:ss'), function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            new rationRepositoryDao().updateOprArr({ ID: renameObj.ID, deleted: false }, oprtor, moment(Date.now()).format('YYYY-MM-DD HH:mm:ss'), function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     callback(err, '更新最近操作者失败!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    engLibModel.update({'ration_lib.id': {$in: [String(renameObj.ID), +renameObj.ID]}}, {$set: {'ration_lib.$.name': renameObj.newName}}, {multi: true}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    engLibModel.update({ 'ration_lib.id': { $in: [String(renameObj.ID), +renameObj.ID] } }, { $set: { 'ration_lib.$.name': renameObj.newName } }, { multi: true }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             callback(err, '更新工程专业引用失败!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -206,80 +208,80 @@ rationRepositoryDao.prototype.updateName = function(oprtor, renameObj, callback) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-rationRepositoryDao.prototype.deleteRationLib = function(oprtor, libId, callback){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    new rationRepositoryDao().updateOprArr({ID: libId, deleted: false}, oprtor, moment(Date.now()).format('YYYY-MM-DD HH:mm:ss'), function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+rationRepositoryDao.prototype.deleteRationLib = function (oprtor, libId, callback) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    new rationRepositoryDao().updateOprArr({ ID: libId, deleted: false }, oprtor, moment(Date.now()).format('YYYY-MM-DD HH:mm:ss'), function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             callback(err, '失败!') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            rationRepository.find({ID: libId, deleted: false}, function (err, result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-               if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                   callback(err, "没有数据!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-               } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                   rationRepository.remove({ID: libId}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                       if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                           callback(err, '移除定额库失败!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                       else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                           async.parallel([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   //移除工料机库内被引用标记 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   gljMapModel.update({ID: result[0].gljLib, deleted: false}, {$pull: {rationLibs: {ID: libId}}}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       if(err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                           cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                           cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               //删除库下定额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   rationItemModel.remove({rationRepId: libId}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       if(err)cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       else cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               //删除库下章节树 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   rationChapterTreeModel.remove({rationRepId: libId}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       if(err)cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       else cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               //删除子目换算 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   rationCoeModel.remove({libID: libId}, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       if(err)cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                       else cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                   }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               //删除安装 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               async function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    try{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                        let feeItems = await rationInstallFeeItem.find({rationRepId: libId}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            rationRepository.find({ ID: libId, deleted: false }, function (err, result) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    callback(err, "没有数据!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    rationRepository.remove({ ID: libId }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            callback(err, '移除定额库失败!'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            async.parallel([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    //移除工料机库内被引用标记 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    gljMapModel.update({ ID: result[0].gljLib, deleted: false }, { $pull: { rationLibs: { ID: libId } } }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        if (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                //删除库下定额 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    rationItemModel.remove({ rationRepId: libId }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        if (err) cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        else cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                //删除库下章节树 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    rationChapterTreeModel.remove({ rationRepId: libId }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        if (err) cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        else cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                //删除子目换算 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    rationCoeModel.remove({ libID: libId }, function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        if (err) cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        else cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                //删除安装 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                async function (cb) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        let feeItems = await rationInstallFeeItem.find({ rationRepId: libId }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         let sectionIDs = []; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                        for(let item of feeItems){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                            for(let section of item.section){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        for (let item of feeItems) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                            for (let section of item.section) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                                 sectionIDs.push(section.ID); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                        await rationInstallFeeItem.remove({rationRepId: libId}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                        await rationInstallSection.remove({ID: {$in: sectionIDs}}); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        await rationInstallFeeItem.remove({ rationRepId: libId }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                        await rationInstallSection.remove({ ID: { $in: sectionIDs } }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         cb(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    catch (err){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    catch (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                         cb(err); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                           ], function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               if(err) callback(err, 'fail'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                               else callback(null, 'sc') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                           }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                   }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-               } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            ], function (err) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                if (err) callback(err, 'fail'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                else callback(null, 'sc') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     }); 
			 |