| 
					
				 | 
			
			
				@@ -81,6 +81,11 @@ class PayCalculator { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    checkQuetoExpr(expr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!this.basesReg) this.basesReg = new RegExp(this.bases.map(x => {return '(' + x.code + ')'}).join('|')); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return this.basesReg.test(expr) || this.nodeReg.test(expr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     _calculateTpExpr(pay, pays) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         let formula = pay.expr; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const nodeParam = pay.expr.match(this.nodeReg); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -359,6 +364,7 @@ class PhasePayDetail extends TreeService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         const preData = await this.getAllDataByCondition({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             where: { phase_id: prePhase.id, audit_times: prePhase.audit_times, audit_sort: prePhase.audit_max_sort }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const payCalc = new PayCalculator(this.ctx, prePhase); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         for (const pd of preData) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             delete pd.id; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             pd.tp = 0; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -369,6 +375,7 @@ class PhasePayDetail extends TreeService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             pd.audit_sort = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (!pd.pre_used) pd.pre_used = pd.pre_tp ? 1 : 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (!pd.pre_finished) pd.pre_finished = pd.end_tp >= pd.range_tp; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (pd.expr && (!pd.pay_type || pd.pay_type === payType.bqsf) && payCalc.checkQuetoExpr(pd.expr)) pd.expr = ''; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         await conn.insert(this.tableName, preData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 |