@@ -120,9 +120,9 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				     */  
		
	
		
			
				     @Async  
		
	
		
			
				     public   void   regenerateRecipesPlan ( Long   cusId )   {  
		
	
		
			
				         try {  
		
	
		
			
				         try   {  
		
	
		
			
				             Thread . sleep ( 5000 ) ;  
		
	
		
			
				         } catch   ( Exception   e ) {  
		
	
		
			
				         }   catch   ( Exception   e )   {  
		
	
		
			
				             e . printStackTrace ( ) ;  
		
	
		
			
				         }  
		
	
		
			
				         if   ( cusId   = =   null   | |   cusId   < =   0 )   {  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -132,17 +132,17 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				             //获取redis中该订单对应的锁  
		
	
		
			
				             if   ( synchrolockUtil . lock ( String . format ( generateRecipesPlanLockKey ,   cusId ) ) )   {  
		
	
		
			
				                 List < SysOrder >   customerOrderList   =   sysOrderService . getAllOrderByCusId ( cusId ) ;  
		
	
		
			
				                 if ( customerOrderList   ! =   null   & &   customerOrderList . size ( )   >   0 ) {  
		
	
		
			
				                 if   ( customerOrderList   ! =   null   & &   customerOrderList . size ( )   >   0 )   {  
		
	
		
			
				 
		
	
		
			
				                     for ( SysOrder   sysOrder   :   customerOrderList ) {  
		
	
		
			
				                     for   ( SysOrder   sysOrder   :   customerOrderList )   {  
		
	
		
			
				                         //订单为空、金额小于0、订单未审核不进行食谱生成、更新, , , ,   
		
	
		
			
				                         if   ( sysOrder   = =   null   | |   ! sysOrder . getReviewStatus ( ) . equals ( " yes " )   | |   sysOrder . getAmount ( ) . floatValue ( )   < =   0   | |   sysOrder . getStartTime ( )   = =   null   | |   sysOrder . getServerEndTime ( )   = =   null )   {  
		
	
		
			
				                             continue ;  
		
	
		
			
				                         }  
		
	
		
			
				                         //判断是否提成单,拆分单中的副单,体验单,定金单  
		
	
		
			
				                         if ( sysOrder . getAfterSaleCommissOrder ( ) . intValue ( )   = =   1   | |   ( " 1 " . equals ( sysOrder . getOrderType ( ) )   & &   sysOrder . getMainOrderId ( ) . intValue ( )   ! =   0 )   | |  
		
	
		
			
				                                 " 2 " . equals ( sysOrder . getOrderType ( ) )   | |   " 1 " . equals ( sysOrder . getOrderMoneyType ( ) ) ) {  
		
	
		
			
				                             System . out . println ( " --------------------- " + sysOrder . getOrderId ( ) + " 不生成食谱------------------------ " ) ;  
		
	
		
			
				                         if   ( sysOrder . getAfterSaleCommissOrder ( ) . intValue ( )   = =   1   | |   ( " 1 " . equals ( sysOrder . getOrderType ( ) )   & &   sysOrder . getMainOrderId ( ) . intValue ( )   ! =   0 )   | |  
		
	
		
			
				                                 " 2 " . equals ( sysOrder . getOrderType ( ) )   | |   " 1 " . equals ( sysOrder . getOrderMoneyType ( ) )   | |   sysOrder . getCounted ( )   = =   1 )   {  
		
	
		
			
				                             System . out . println ( " --------------------- "   +   sysOrder . getOrderId ( )   +   " 不生成食谱------------------------ " ) ;  
		
	
		
			
				                             continue ;  
		
	
		
			
				                         }  
		
	
		
			
				                         //判断是否已存在食谱计划  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -157,9 +157,9 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				                         List < SysOrderPause >   pauseList   =   sysOrderPauseService . getPauseListByCusIdAndOrderId ( pauseParam ) ;  
		
	
		
			
				 
		
	
		
			
				                         List < SysRecipesPlan >   planList   =   generatePlan ( sysOrder ,   DateUtils . dateToLocalDate ( sysOrder . getStartTime ( ) ) ,   DateUtils . dateToLocalDate ( sysOrder . getServerEndTime ( ) ) ,   pauseList ) ;  
		
	
		
			
				                         if ( oldRecipesPlanList   ! =   null   & &   oldRecipesPlanList . size ( )   >   0 ) {  
		
	
		
			
				                         if   ( oldRecipesPlanList   ! =   null   & &   oldRecipesPlanList . size ( )   >   0 )   {  
		
	
		
			
				                             updateOrAddRecipesPlan ( oldRecipesPlanList ,   planList ) ;  
		
	
		
			
				                         } else {  
		
	
		
			
				                         }   else   {  
		
	
		
			
				                             if   ( planList   ! =   null   & &   planList . size ( )   >   0 )   {  
		
	
		
			
				                                 sysRecipesPlanMapper . insertBatch ( planList ) ;  
		
	
		
			
				                             }  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -177,43 +177,44 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				 
		
	
		
			
				     /**  
		
	
		
			
				     * 更新食谱计划,删除旧食谱中多余的,添加新食谱中多的  
		
	
		
			
				     *  
		
	
		
			
				     * @param oldRecipesPlanList  
		
	
		
			
				     * @param newRecipesPlanList  
		
	
		
			
				     */  
		
	
		
			
				     private   void   updateOrAddRecipesPlan ( List < SysRecipesPlan >   oldRecipesPlanList ,   List < SysRecipesPlan >   newRecipesPlanList ) {  
		
	
		
			
				     private   void   updateOrAddRecipesPlan ( List < SysRecipesPlan >   oldRecipesPlanList ,   List < SysRecipesPlan >   newRecipesPlanList )   {  
		
	
		
			
				         int   newSize   =   newRecipesPlanList . size ( ) ;  
		
	
		
			
				         int   index   =   0 ;  
		
	
		
			
				         List < SysRecipesPlan >   addList   =   new   ArrayList < > ( ) ;  
		
	
		
			
				         List < SysRecipesPlan >   updateList   =   new   ArrayList < > ( ) ;  
		
	
		
			
				         List < Long >   delList   =   new   ArrayList < > ( ) ;  
		
	
		
			
				         for   ( SysRecipesPlan   plan   :   oldRecipesPlanList )   {  
		
	
		
			
				             if ( index   <   newSize ) {  
		
	
		
			
				             if   ( index   <   newSize )   {  
		
	
		
			
				                 plan . setStartDate ( newRecipesPlanList . get ( index ) . getStartDate ( ) ) ;  
		
	
		
			
				                 plan . setEndDate ( newRecipesPlanList . get ( index ) . getEndDate ( ) ) ;  
		
	
		
			
				                 plan . setPauseDate ( newRecipesPlanList . get ( index ) . getPauseDate ( ) ) ;  
		
	
		
			
				                 plan . setStartNumDay ( newRecipesPlanList . get ( index ) . getStartNumDay ( ) ) ;  
		
	
		
			
				                 plan . setEndNumDay ( newRecipesPlanList . get ( index ) . getEndNumDay ( ) ) ;  
		
	
		
			
				                 updateList . add ( plan ) ;  
		
	
		
			
				             } else {  
		
	
		
			
				             }   else   {  
		
	
		
			
				                 delList . add ( plan . getId ( ) ) ;  
		
	
		
			
				             }  
		
	
		
			
				             index + + ;  
		
	
		
			
				         }  
		
	
		
			
				         if ( newSize   >   oldRecipesPlanList . size ( ) ) {  
		
	
		
			
				             addList   =   newRecipesPlanList . subList ( oldRecipesPlanList . size ( ) , newSize ) ;  
		
	
		
			
				         if   ( newSize   >   oldRecipesPlanList . size ( ) )   {  
		
	
		
			
				             addList   =   newRecipesPlanList . subList ( oldRecipesPlanList . size ( ) ,   newSize ) ;  
		
	
		
			
				         }  
		
	
		
			
				         //更新  
		
	
		
			
				         if ( updateList . size ( )   >   0 ) {  
		
	
		
			
				         if   ( updateList . size ( )   >   0 )   {  
		
	
		
			
				             for   ( SysRecipesPlan   plan   :   updateList )   {  
		
	
		
			
				                 sysRecipesPlanMapper . updateSysRecipesPlan ( plan ) ;  
		
	
		
			
				             }  
		
	
		
			
				         }  
		
	
		
			
				         //删除多余的食谱计划  
		
	
		
			
				         if ( delList . size ( )   >   0 ) {  
		
	
		
			
				         if   ( delList . size ( )   >   0 )   {  
		
	
		
			
				             sysRecipesPlanMapper . deleteSysRecipesPlanByIds ( delList . toArray ( new   Long [ delList . size ( ) ] ) ) ;  
		
	
		
			
				         }  
		
	
		
			
				         //添加新的  
		
	
		
			
				         if ( addList . size ( )   >   0 ) {  
		
	
		
			
				         if   ( addList . size ( )   >   0 )   {  
		
	
		
			
				             sysRecipesPlanMapper . insertBatch ( addList ) ;  
		
	
		
			
				         }  
		
	
		
			
				     }  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -221,10 +222,10 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				     /**  
		
	
		
			
				     * 根据订单ID、订单开始服务时间、结束时间、暂停列表生成食谱计划列表  
		
	
		
			
				     *  
		
	
		
			
				     * @param sysOrder            订单对象  
		
	
		
			
				     * @param serverStartDate     服务开始时间  
		
	
		
			
				     * @param serverEndDate       服务结束时间  
		
	
		
			
				     * @param pauseList           暂停列表  
		
	
		
			
				     * @param sysOrder        订单对象  
		
	
		
			
				     * @param serverStartDate 服务开始时间  
		
	
		
			
				     * @param serverEndDate   服务结束时间  
		
	
		
			
				     * @param pauseList       暂停列表  
		
	
		
			
				     * @return  
		
	
		
			
				     */  
		
	
		
			
				     private   List < SysRecipesPlan >   generatePlan ( SysOrder   sysOrder ,   LocalDate   serverStartDate ,   LocalDate   serverEndDate ,   List < SysOrderPause >   pauseList )   {  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -232,10 +233,10 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				         SysRecipesPlan   beforeOrderLastPlan   =   getLastDayRecipesPlan ( sysOrder . getCusId ( ) ,   sysOrder . getOrderTime ( ) ) ;  
		
	
		
			
				         int   startNumDay   =   0 ;  
		
	
		
			
				         //之前是否存在食谱  
		
	
		
			
				         if ( beforeOrderLastPlan   ! =   null ) {  
		
	
		
			
				         if   ( beforeOrderLastPlan   ! =   null )   {  
		
	
		
			
				             long   differDay   =   ChronoUnit . DAYS . between ( DateUtils . dateToLocalDate ( beforeOrderLastPlan . getEndDate ( ) ) ,   serverStartDate ) ;  
		
	
		
			
				             //检查之前食谱的结束时间和目前该订单的开始时间是否连续  
		
	
		
			
				             if ( differDay   < =   1 ) {  
		
	
		
			
				             if   ( differDay   < =   1 )   {  
		
	
		
			
				                 /*if(differDay <= 0){  
		
	
		
			
				                    serverStartDate = DateUtils.dateToLocalDate(beforeOrderLastPlan.getEndDate()).plusDays(1);  
		
	
		
			
				                    //更新该订单的开始时间  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -244,10 +245,10 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				                 //判断前一个订单食谱是否满七天,不满则需要接上  
		
	
		
			
				                 int   differNum   =   beforeOrderLastPlan . getEndNumDay ( )   -   beforeOrderLastPlan . getStartNumDay ( ) ;  
		
	
		
			
				 
		
	
		
			
				                 if ( differNum   <   6 ) {  
		
	
		
			
				                 if   ( differNum   <   6 )   {  
		
	
		
			
				                     //更新该食谱计划  
		
	
		
			
				                     beforeOrderLastPlan . setEndNumDay ( beforeOrderLastPlan . getStartNumDay ( ) + 6 ) ;  
		
	
		
			
				                     beforeOrderLastPlan . setEndDate ( DateUtils . localDateToDate ( DateUtils . dateToLocalDate ( beforeOrderLastPlan . getEndDate ( ) ) . plusDays ( 6 - differNum ) ) ) ;  
		
	
		
			
				                     beforeOrderLastPlan . setEndNumDay ( beforeOrderLastPlan . getStartNumDay ( )   +   6 ) ;  
		
	
		
			
				                     beforeOrderLastPlan . setEndDate ( DateUtils . localDateToDate ( DateUtils . dateToLocalDate ( beforeOrderLastPlan . getEndDate ( ) ) . plusDays ( 6   -   differNum ) ) ) ;  
		
	
		
			
				                     sysRecipesPlanMapper . updateSysRecipesPlan ( beforeOrderLastPlan ) ;  
		
	
		
			
				                     serverStartDate   =   DateUtils . dateToLocalDate ( beforeOrderLastPlan . getEndDate ( ) ) . plusDays ( 1 ) ;  
		
	
		
			
				                 }  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -268,8 +269,8 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				             }  
		
	
		
			
				             String [ ]   pauseResult   =   dealPlanPause ( planStartDate ,   planEndDate ,   pauseList ) ;  
		
	
		
			
				             //根据暂停结果返回的数据更新计划开始、结束时间  
		
	
		
			
				             planStartDate   =   DateUtils . stringToLocalDate ( pauseResult [ 0 ] , " yyyyMMdd " ) ;  
		
	
		
			
				             planEndDate   =   DateUtils . stringToLocalDate ( pauseResult [ 1 ] , " yyyyMMdd " ) ;  
		
	
		
			
				             planStartDate   =   DateUtils . stringToLocalDate ( pauseResult [ 0 ] ,   " yyyyMMdd " ) ;  
		
	
		
			
				             planEndDate   =   DateUtils . stringToLocalDate ( pauseResult [ 1 ] ,   " yyyyMMdd " ) ;  
		
	
		
			
				             //判断是否大于服务到期时间  
		
	
		
			
				             if   ( ChronoUnit . DAYS . between ( planEndDate ,   serverEndDate )   < =   0 )   {  
		
	
		
			
				                 planEndDate   =   serverEndDate ;  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -279,7 +280,7 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				                 planStartDate   =   serverEndDate ;  
		
	
		
			
				                 breakFlag   =   false ;  
		
	
		
			
				             }  
		
	
		
			
				             if ( planEndDate   = =   planStartDate   & &   StringUtils . isNotEmpty ( pauseResult ) )   {  
		
	
		
			
				             if   ( planEndDate   = =   planStartDate   & &   StringUtils . isNotEmpty ( pauseResult ) )   {  
		
	
		
			
				                 continue ;  
		
	
		
			
				             }  
		
	
		
			
				             //暂停日期  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -292,32 +293,33 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				             startNumDay   + =   1 ;  
		
	
		
			
				             sysRecipesPlan . setStartNumDay ( startNumDay ) ;  
		
	
		
			
				             long   dayNumber   =   ChronoUnit . DAYS . between ( planStartDate ,   planEndDate ) ;  
		
	
		
			
				             startNumDay   + =    dayNumber   >   6   ?   6   :   dayNumber ;  
		
	
		
			
				             startNumDay   + =   dayNumber   >   6   ?   6   :   dayNumber ;  
		
	
		
			
				             sysRecipesPlan . setEndNumDay ( startNumDay ) ;  
		
	
		
			
				             //添加暂停范围内的日期  
		
	
		
			
				             planList . add ( sysRecipesPlan ) ;  
		
	
		
			
				             //System.out.println(DateUtils.dateTime(sysRecipesPlan.getStartDate()) + "-----" + DateUtils.dateTime(sysRecipesPlan.getEndDate()));  
		
	
		
			
				         } while   ( breakFlag ) ;  
		
	
		
			
				         }   while   ( breakFlag ) ;  
		
	
		
			
				         return   planList ;  
		
	
		
			
				     }  
		
	
		
			
				 
		
	
		
			
				     /**  
		
	
		
			
				     * 根据食谱开始时间、结束时间、暂停列表获取在食谱计划范围内的暂停天数,以及返回调整之后的计划开始、结束时间,以及暂停日期  
		
	
		
			
				     *  
		
	
		
			
				     * @param planStartDate 原先的计划开始时间  
		
	
		
			
				     * @param planEndDate 原先计划结束时间  
		
	
		
			
				     * @param pauseList 暂停列表集合  
		
	
		
			
				     * @param planEndDate    原先计划结束时间  
		
	
		
			
				     * @param pauseList      暂停列表集合  
		
	
		
			
				     * @return  
		
	
		
			
				     */  
		
	
		
			
				     private   String [ ]   dealPlanPause ( LocalDate   planStartDate ,   LocalDate   planEndDate ,   List < SysOrderPause >   pauseList )   {  
		
	
		
			
				         //分别为计划开始时间、计划结束时间,范围内暂停天数,具体暂停日期,使用|隔开  
		
	
		
			
				         String [ ]   result   =   { " " , " " , " 0 " , " " } ;  
		
	
		
			
				         String [ ]   result   =   { " " ,   " " ,   " 0 " ,   " " } ;  
		
	
		
			
				         long   pauseDay   =   0 ;  
		
	
		
			
				         Set < String >   pauseDateString   =   new   TreeSet < > ( new   MyComparator ( ) ) ;  
		
	
		
			
				         //判断这个时间内是否存在暂停  
		
	
		
			
				         if   ( pauseList   ! =   null   & &   pauseList . size ( )   >   0 )   {  
		
	
		
			
				             //每条暂停时间的范围不会重叠,在添加暂停时做了限制  
		
	
		
			
				             for   ( SysOrderPause   sysOrderPause   :   pauseList )   {  
		
	
		
			
				                 while ( true ) {  
		
	
		
			
				                 while   ( true )   {  
		
	
		
			
				                     LocalDate   pauseStartDate   =   DateUtils . dateToLocalDate ( sysOrderPause . getPauseStartDate ( ) ) ;  
		
	
		
			
				                     LocalDate   pauseEndDate   =   DateUtils . dateToLocalDate ( sysOrderPause . getPauseEndDate ( ) ) ;  
		
	
		
			
				                     if   ( ChronoUnit . DAYS . between ( pauseEndDate ,   planStartDate )   >   0   | |   ChronoUnit . DAYS . between ( planEndDate ,   pauseStartDate )   >   0 )   {  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -330,10 +332,10 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				                         pauseEndDate   =   planEndDate ;  
		
	
		
			
				                     }  
		
	
		
			
				                     //判断暂停记录是否从食谱计划开始时间开始的  
		
	
		
			
				                     if ( ChronoUnit . DAYS . between ( pauseStartDate ,   planStartDate )   = =   0 ) {  
		
	
		
			
				                     if   ( ChronoUnit . DAYS . between ( pauseStartDate ,   planStartDate )   = =   0 )   {  
		
	
		
			
				                         planStartDate   =   pauseEndDate . plusDays ( 1 ) ;  
		
	
		
			
				                         planEndDate   =   planStartDate . plusDays ( 6 ) ;  
		
	
		
			
				                     } else {  
		
	
		
			
				                     }   else   {  
		
	
		
			
				                         planEndDate   =   planEndDate . plusDays ( ChronoUnit . DAYS . between ( pauseStartDate ,   pauseEndDate )   +   1 ) ;  
		
	
		
			
				                         pauseDateString . addAll ( getPauseDateString ( pauseStartDate ,   pauseEndDate ) ) ;  
		
	
		
			
				                         break ;  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -345,37 +347,27 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				                System.out.println("---------------------------------------");*/  
		
	
		
			
				             }  
		
	
		
			
				         }  
		
	
		
			
				         result [ 0 ]   =   DateUtils . localDateToString ( planStartDate , " yyyyMMdd " ) ;  
		
	
		
			
				         result [ 1 ]   =   DateUtils . localDateToString ( planEndDate , " yyyyMMdd " ) ;  
		
	
		
			
				         result [ 0 ]   =   DateUtils . localDateToString ( planStartDate ,   " yyyyMMdd " ) ;  
		
	
		
			
				         result [ 1 ]   =   DateUtils . localDateToString ( planEndDate ,   " yyyyMMdd " ) ;  
		
	
		
			
				         result [ 2 ]   =   pauseDay   +   " " ;  
		
	
		
			
				         result [ 3 ]   =   pauseDateString . size ( )   >   0   ?   StringUtils . join ( pauseDateString , " | " )   :   " " ;  
		
	
		
			
				         result [ 3 ]   =   pauseDateString . size ( )   >   0   ?   StringUtils . join ( pauseDateString ,   " | " )   :   " " ;  
		
	
		
			
				         return   result ;  
		
	
		
			
				     }  
		
	
		
			
				 
		
	
		
			
				     /**  
		
	
		
			
				     * 根据暂停时间范围获取范围内的日期  
		
	
		
			
				     *  
		
	
		
			
				     * @return  
		
	
		
			
				     */  
		
	
		
			
				     private   Set < String >   getPauseDateString ( LocalDate   pauseStartDate ,   LocalDate   pauseEndDate ) {  
		
	
		
			
				     private   Set < String >   getPauseDateString ( LocalDate   pauseStartDate ,   LocalDate   pauseEndDate )   {  
		
	
		
			
				         Set < String >   pauseDateList   =   new   HashSet < > ( ) ;  
		
	
		
			
				         long   daysBetween   =   ChronoUnit . DAYS . between ( pauseStartDate ,   pauseEndDate ) ;  
		
	
		
			
				         for ( int   i   =   0 ;   i   < =   daysBetween ;   i + + ) {  
		
	
		
			
				             pauseDateList . add ( DateUtils . localDateToString ( pauseStartDate . plusDays ( i ) , " yyyyMMdd " ) ) ;  
		
	
		
			
				         for   ( int   i   =   0 ;   i   < =   daysBetween ;   i + + )   {  
		
	
		
			
				             pauseDateList . add ( DateUtils . localDateToString ( pauseStartDate . plusDays ( i ) ,   " yyyyMMdd " ) ) ;  
		
	
		
			
				         }  
		
	
		
			
				         return   pauseDateList ;  
		
	
		
			
				     }  
		
	
		
			
				 
		
	
		
			
				     /**  
		
	
		
			
				     * 集合排序key值比较器  
		
	
		
			
				     * */  
		
	
		
			
				     class  MyComparator   implements   Comparator < String > {  
		
	
		
			
				 
		
	
		
			
				         @Override  
		
	
		
			
				         public   int   compare ( String   o1 ,   String   o2 )   {  
		
	
		
			
				             return   Integer . parseInt ( o1 )   -   Integer . parseInt ( o2 ) ;  
		
	
		
			
				         }  
		
	
		
			
				     }  
		
	
		
			
				 
		
	
		
			
				     /**  
		
	
		
			
				     * 根据订单ID删除所有食谱安排计划  
		
	
		
			
				     *  
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -411,10 +403,11 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				 
		
	
		
			
				     /**  
		
	
		
			
				     * 根据客户ID查询最后一天食谱计划  
		
	
		
			
				     *  
		
	
		
			
				     * @param customerId 客户ID  
		
	
		
			
				     * @return  
		
	
		
			
				     */  
		
	
		
			
				     public   SysRecipesPlan   getLastDayRecipesPlan ( Long   customerId ,   Date   orderTime ) {  
		
	
		
			
				     public   SysRecipesPlan   getLastDayRecipesPlan ( Long   customerId ,   Date   orderTime )   {  
		
	
		
			
				         return   sysRecipesPlanMapper . getLastDayRecipesPlan ( customerId ,   orderTime ) ;  
		
	
		
			
				     }  
		
	
		
			
				 
		
	
	
		
			
				
					
					
						
					 
				
			
			@@ -437,4 +430,15 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
 
		
	
		
			
				         return   sysRecipesPlanMapper . selectRecipesModelList ( sysRecipesPlan ) ;  
		
	
		
			
				     }  
		
	
		
			
				 
		
	
		
			
				     /**  
		
	
		
			
				     * 集合排序key值比较器  
		
	
		
			
				     */  
		
	
		
			
				     class  MyComparator   implements   Comparator < String >   {  
		
	
		
			
				 
		
	
		
			
				         @Override  
		
	
		
			
				         public   int   compare ( String   o1 ,   String   o2 )   {  
		
	
		
			
				             return   Integer . parseInt ( o1 )   -   Integer . parseInt ( o2 ) ;  
		
	
		
			
				         }  
		
	
		
			
				     }  
		
	
		
			
				 
		
	
		
			
				}