| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 | 
							- using System;
 
- using System.Collections.Generic;
 
- using System.Text;
 
- using wms.dto.response.hj;
 
- using wms.service.IService;
 
- namespace wms.service.Service
 
- {
 
-     public static class WorkStrategyFactory
 
-     {
 
-         /// <summary>
 
-         /// 先进先出
 
-         /// </summary>
 
-         /// <param name="days"></param>
 
-         /// <param name="isContainer"></param>
 
-         /// <returns></returns>
 
-         private static IWorkStrategyService CreateFIFOStrategyService(int days, bool isContainer)
 
-         {
 
-             return new FIFOStrategyService(days, isContainer);
 
-         }
 
-         /// <summary>
 
-         /// 先进后出
 
-         /// </summary>
 
-         /// <param name="days"></param>
 
-         /// <param name="isContainer"></param>
 
-         /// <returns></returns>
 
-         private static IWorkStrategyService CreateFILOStrategyService(int days, bool isContainer)
 
-         {
 
-             return new FILOStrategyService(days, isContainer);
 
-         }
 
-         /// <summary>
 
-         /// 同种物料摆放一起
 
-         /// </summary>
 
-         /// <param name="days"></param>
 
-         /// <param name="isContainer"></param>
 
-         /// <returns></returns>
 
-         private static IWorkStrategyService CreateStockInSameMaterialStrategyService(string materialCode, bool isContainer)
 
-         {
 
-             return new StockInSameMaterialStrategyService(materialCode, isContainer);
 
-         }
 
-         /// <summary>
 
-         /// 列递增层递增
 
-         /// </summary>
 
-         /// <param name="days"></param>
 
-         /// <param name="isContainer"></param>
 
-         /// <returns></returns>
 
-         private static IWorkStrategyService CreateColumnToLayerIncreaseService()
 
-         {
 
-             return new ColumnToLayerIncreaseService();
 
-         }
 
-         /// <summary>
 
-         /// 混盘优先
 
-         /// </summary>
 
-         /// <param name="days"></param>
 
-         /// <param name="isContainer"></param>
 
-         /// <returns></returns>
 
-         private static IWorkStrategyService CreateMixFirstStrategyService(bool isContainer)
 
-         {
 
-             return new MixFOStrategyService(isContainer);
 
-         }
 
-         public static IWorkStrategyService CreateStrategyService(BaseStrategyDto baseStrategyDto, bool isContainer)
 
-         {
 
-             if (baseStrategyDto.Code == "FIFO")
 
-             {
 
-                 return CreateFIFOStrategyService(baseStrategyDto.SameEffectDays, isContainer);
 
-             }
 
-             else if (baseStrategyDto.Code == "FILO")
 
-             {
 
-                 return CreateFILOStrategyService(baseStrategyDto.SameEffectDays, isContainer);
 
-             }
 
-             else if (baseStrategyDto.Code == "StockInSameMaterialStrategy")
 
-             {
 
-                 return CreateStockInSameMaterialStrategyService(baseStrategyDto.MaterialCode, isContainer);
 
-             }
 
-             else if (baseStrategyDto.Code == "ColumnToLayerIncrease")
 
-             {
 
-                 return CreateColumnToLayerIncreaseService();
 
-             }
 
-             else if (baseStrategyDto.Code == "MixFirst")
 
-             {
 
-                 return CreateMixFirstStrategyService(isContainer);
 
-             }
 
-             return null;
 
-         }
 
-     }
 
- }
 
 
  |