449 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			449 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
 | |
| /// <summary>
 | |
| ///INTERFACE CLASS FOR TABLE t_wmsOutPickPort
 | |
| ///By wm  
 | |
| ///on 06/15/2017
 | |
| /// </summary>
 | |
| 
 | |
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Linq;
 | |
| using System.Text;
 | |
| using System.Data;
 | |
| using DeiNiu.Utils;
 | |
| 
 | |
| namespace DeiNiu.wms.Data.Model
 | |
| {
 | |
|     [Serializable]
 | |
|     public class WmsOutPickPort : WmsOutPickPort_base
 | |
|     {
 | |
|         public WmsOutPickPort()
 | |
|         {
 | |
| 
 | |
|         }
 | |
| 
 | |
|         public WmsOutPickPort(int id): base(id)
 | |
|         {
 | |
| 
 | |
|         }
 | |
|         public WmsOutPickPort(DataRow dr): base(dr)
 | |
|         {
 | |
| 
 | |
|         }
 | |
|         public new int Add()
 | |
|         {
 | |
|             base.Add();
 | |
|             this.id128 = Util.getCode128(ID + "");
 | |
|             Update();
 | |
|             return ID;
 | |
|         }
 | |
|       protected override void getImp()
 | |
|         {
 | |
|             model_imp = new WmsOutPickPort_Imp();  
 | |
|         }
 | |
| 
 | |
|         //begin cust db operation, query, excute sql etc.
 | |
|         public DataSet QueryByName(string name)
 | |
|         {
 | |
|             cmdParameters[0] = name;
 | |
|             return  CustQuery(100);
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// get pick detail by pickorderNo
 | |
|         /// </summary>
 | |
|         /// <param name="pickOrderNo"></param>
 | |
|         /// <returns></returns>
 | |
|         public DataTable getPickDetails(string pickOrderNo, int state = -1)
 | |
|         {
 | |
|             cmdParameters[0] = pickOrderNo;
 | |
|             cmdParameters[1] = state;
 | |
|             return CustQuery(200).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public int closePickPorts(string pickOrderNo)
 | |
|         {
 | |
|             cmdParameters[0] = pickOrderNo;
 | |
|              
 | |
|             return CustOper(201) ;
 | |
|         }
 | |
| 
 | |
|         public List<WmsOutPickPort> getObjs(DataTable dt)
 | |
|         {
 | |
|             List<WmsOutPickPort> lst = new List<WmsOutPickPort>();
 | |
|             foreach(DataRow dr in dt.Rows)
 | |
|             {
 | |
|                 lst.Add(new WmsOutPickPort(dr));
 | |
|             }
 | |
|             return lst;
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// get pick detail by ID
 | |
|         /// </summary>
 | |
|         /// <param name="Id"></param>
 | |
|         /// <returns></returns>
 | |
|         public DataTable getPickDetail(int Id)
 | |
|         {
 | |
|             cmdParameters[0] = Id;
 | |
|             return CustQuery(300).Tables[0];
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// update pick status
 | |
|         /// </summary>
 | |
|         /// <param name="Id"></param>
 | |
|         /// <returns></returns>
 | |
|         public int updatePickState(int Id, Utils.enumPickState pickSate,int operId)
 | |
|         {
 | |
|             cmdParameters[0] = Id;
 | |
|             cmdParameters[1] = (int)pickSate;
 | |
|             cmdParameters[2] = operId;
 | |
|             return CustOper(400) ;
 | |
|         }
 | |
| 
 | |
|         public int getPickDetailsCnt(string pickOrderNo, enumPickState pickState,bool batch =true, string waveOrder =null)
 | |
|         {
 | |
|             cmdParameters[0] = pickOrderNo;
 | |
|             cmdParameters[1] = (int)pickState;
 | |
|             cmdParameters[2] = batch;
 | |
|             cmdParameters[3] = waveOrder;
 | |
|             //return CustQuery(500).Tables[0];
 | |
|             DataTable dt = CustQuery(500).Tables[0];
 | |
| 
 | |
|             if (dt.Rows.Count > 0)
 | |
|             {
 | |
|                 return Convert.ToInt32(dt.Rows[0][0].ToString());
 | |
|             }
 | |
|             return 0;
 | |
|               
 | |
|         }
 | |
|         public int updatePickStateByOrderDetailId(int detailId, Utils.enumPickState pickSate, int operId,int checkedBy1)
 | |
|         {
 | |
|             cmdParameters[0] = detailId;
 | |
|             cmdParameters[1] = (int)pickSate;
 | |
|             cmdParameters[2] = operId;
 | |
|             cmdParameters[3] = checkedBy1;
 | |
|             return CustOper(401);
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 更新捡货状态 
 | |
|         /// 电子标签拣选时更新PDA数据
 | |
|         /// </summary>
 | |
|         /// <param name="stkRecId"></param>
 | |
|         /// <param name="pickState"></param>
 | |
|         /// <param name="?"></param>
 | |
|         public bool updatePickDetailByStkrecId(int stkRecId,enumPickState pickState,int operId)
 | |
|         {
 | |
|              
 | |
|             cmdParameters[0] = stkRecId;
 | |
|             cmdParameters[1] = (int)pickState;
 | |
|             cmdParameters[2] = operId;
 | |
|             return CustOper(410) >0;
 | |
|         }
 | |
| 
 | |
| 
 | |
|         public bool isDoneByFlow(string flowNum)
 | |
|         {
 | |
|             cmdParameters[0] = flowNum;
 | |
|             return queryCount(600) == 0;
 | |
|         }
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|         public DataTable getNewPickTasks(WaveRule wr)
 | |
|         {
 | |
|             cmdParameters[0] = wr;
 | |
|             if (wr.type == (int)enumWaveRuleType.普通波次)
 | |
|             {
 | |
|                 return CustQuery(700).Tables[0];
 | |
|             }
 | |
|            // if (wr.type == (int)enumWaveRuleType.普通波次)
 | |
|             {
 | |
|                 return CustQuery(701).Tables[0];
 | |
|             }
 | |
|                 
 | |
|         }
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|         /// <summary>
 | |
|         ///  根据waveNo 取wave detail 分页数据
 | |
|         /// </summary>
 | |
|         /// <param name="waveNo"></param>
 | |
|         /// <param name="rowStart"></param>
 | |
|         /// <param name="rowEnd"></param>
 | |
|         /// <returns></returns>
 | |
|         public DataSet getWaveDetails(string waveNo,int rowStart,int rowEnd)
 | |
|         {
 | |
|             this.rownumStart = rowStart;
 | |
|             this.rownumEnd = rowEnd;
 | |
|             cmdParameters[0] = waveNo;
 | |
|             return CustQuery(800) ;
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// 根据waveNo 取wave detail 不分页
 | |
|         /// </summary>
 | |
|         /// <param name="waveNo"></param>
 | |
|         /// <returns></returns>
 | |
|         public DataTable getWaveDetails(string waveNo)
 | |
|         {
 | |
|             cmdParameters[0] = waveNo;
 | |
|             return CustQuery(801).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable getPickInfo(string waveNo)
 | |
|         {
 | |
|             cmdParameters[0] = waveNo;
 | |
|             return CustQuery(900).Tables[0];
 | |
|         }
 | |
|         public DataTable getPickInfo(string waveNo,int volType)
 | |
|         {
 | |
|             cmdParameters[0] = waveNo;
 | |
|             cmdParameters[1] = volType;
 | |
|             return CustQuery(910).Tables[0];
 | |
|         }
 | |
|         public DataTable getPickSummary(string waveNo, int volType)
 | |
|         {
 | |
|             cmdParameters[0] = waveNo;
 | |
|             cmdParameters[1] = volType;
 | |
|             return CustQuery(920).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable getPickTaskDetails(string taskNo)
 | |
|         {
 | |
|             cmdParameters[0] = taskNo; 
 | |
|             return CustQuery(1000).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable getFlowNoDetails(string flowNo, string goodsId,string batch)
 | |
|         {
 | |
|             cmdParameters[0] = flowNo;
 | |
|             cmdParameters[1] = goodsId;
 | |
|             cmdParameters[2] = batch;
 | |
|             return CustQuery(1001).Tables[0];
 | |
|         }
 | |
|         public DataTable getFlowNoDetails(string seedsNo,string flowNo, string goodsId, string batch)
 | |
|         {
 | |
|             cmdParameters[0] = flowNo;
 | |
|             cmdParameters[1] = goodsId;
 | |
|             cmdParameters[2] = batch;
 | |
|             cmdParameters[3] = seedsNo;
 | |
|             return CustQuery(1002).Tables[0];
 | |
|         }
 | |
| 
 | |
| 
 | |
|         public DataTable getFreeTasks(int partion, int lineId, bool batchOnly,enumOrderType orderType,int empId=0)
 | |
|         { 
 | |
|             cmdParameters[0] = partion;
 | |
|             cmdParameters[1] = lineId;
 | |
|             cmdParameters[2] = batchOnly;
 | |
|             cmdParameters[4] = (int)orderType;
 | |
|             cmdParameters[5] = empId;
 | |
|             return CustQuery(1100).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable getFreeTasksByPickOrder(string pickOrderNo)
 | |
|         {
 | |
|             cmdParameters[0] = pickOrderNo;
 | |
|          
 | |
|             return CustQuery(1120).Tables[0];
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 
 | |
|         /// </summary>
 | |
|         /// <param name="partion"></param>
 | |
|         /// <param name="lineId"></param>
 | |
|         /// <param name="batchOnly"></param>
 | |
|         /// <param name="orderType"></param>
 | |
|         /// <param name="assignedEmpId"></param>
 | |
|         /// <param name="wareHouse"></param>
 | |
|         /// <param name="orderNo"></param>
 | |
|         /// <param name="jobNo"></param>
 | |
|         /// <param name="isOrderByGoods">称重类,在货位分货,按商品排序 </param>
 | |
|         /// <returns></returns>
 | |
|         public DataTable getFreeTasksByJob(int partion, int lineId, bool batchOnly, enumOrderType orderType, int assignedEmpId = 0,int wareHouse=0,string orderNo ="",string jobNo="",bool isOrderByGoods=false)
 | |
|         {
 | |
|             cmdParameters[0] = partion;
 | |
|             cmdParameters[1] = lineId;
 | |
|             cmdParameters[2] = batchOnly;  
 | |
|             cmdParameters[3] = wareHouse;
 | |
|             cmdParameters[4] = (int)orderType;
 | |
|             cmdParameters[5] = assignedEmpId;         
 | |
|             cmdParameters[6] = jobNo;
 | |
|             cmdParameters[7] = orderNo;
 | |
|             cmdParameters[8] = isOrderByGoods;
 | |
|            // cmdParameters[9] = isSeedsTaskOnly;
 | |
|             return CustQuery(1110).Tables[0];
 | |
|         }
 | |
| 
 | |
| 
 | |
|         public DataTable getAssignedTasks(int taskBy, int partion, int lineId, bool batchOnly,
 | |
|             enumOrderType orderType ,int state=0)
 | |
|         {   
 | |
| 
 | |
|             LogHelper.debug(GetType(), String.Format(" to get getAssignedTasks ,takeBy {0}, partion {1}, lineId {2}, batchOnly {3}, orderType {4}, state{5}",
 | |
|                 taskBy,   partion,   lineId,   batchOnly, orderType.ToString(),   state ));
 | |
| 
 | |
|             cmdParameters[5] = taskBy;
 | |
|             cmdParameters[6] = partion;
 | |
|             cmdParameters[7] = lineId;
 | |
|             cmdParameters[8] = batchOnly;
 | |
|             cmdParameters[9] = (int)orderType;
 | |
|             cmdParameters[10] = state;
 | |
|             return CustQuery(1200).Tables[0];
 | |
|         }
 | |
|         public DataTable getAssignedTasks4Wince(int taskBy, int partion, int lineId , bool batchOnly
 | |
|             , enumOrderType orderType)
 | |
|         {
 | |
|             cmdParameters[0] = taskBy;
 | |
|             cmdParameters[1] = partion;
 | |
|             cmdParameters[2] = lineId;
 | |
|             cmdParameters[3] = batchOnly;
 | |
|             cmdParameters[4] = (int)orderType;
 | |
|             return CustQuery(1300).Tables[0];
 | |
|         }
 | |
| 
 | |
| 
 | |
|         public DataTable getPartions(int userID)
 | |
|         {
 | |
|             cmdParameters[0] = userID;
 | |
|             return CustQuery(1400).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public void getPickPortByRecordId(int recId)
 | |
|         {
 | |
|             cmdParameters[0] = recId;
 | |
|             getModel(1500); 
 | |
|         }
 | |
| 
 | |
| 
 | |
| 
 | |
|         public int updateBulkPickStateByPickOrder(string pickOrder,int checkBy,int checkBy2)
 | |
|         {
 | |
|             cmdParameters[0] = pickOrder;
 | |
|             cmdParameters[1] = checkBy;
 | |
|             cmdParameters[2] = checkBy2;
 | |
|             cmdParameters[3] = (int)enumPickState.复核完成;
 | |
|             return  CustOper (1600) ;
 | |
|         }
 | |
| 
 | |
|         public DataTable getRepTasks(int takeBy, int taskPartion )
 | |
|         {
 | |
|             cmdParameters[0] = takeBy;
 | |
|             cmdParameters[1] = taskPartion;
 | |
|             cmdParameters[2] = (int)enumPickState.未拣; 
 | |
|             return CustQuery(1700).Tables[0];
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// by wmsoutdetail, 按原始订单明细取播种信息
 | |
|         /// </summary>
 | |
|         /// <param name="flowNo"></param>
 | |
|         /// <param name="isOrderByCust"></param>
 | |
|         /// <returns></returns>
 | |
|         public DataTable getSeedsOutDetail(string flowNo, bool isOrderByCust)
 | |
|         {
 | |
|             cmdParameters[0] = flowNo;
 | |
|             if (isOrderByCust) { 
 | |
|                 return CustQuery(1810).Tables[0];
 | |
|             }else
 | |
|                 return CustQuery(1800).Tables[0];
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// by wmsOutPickDetail , 按拣货单明细取播种信息
 | |
|         /// </summary>
 | |
|         /// <param name="flowNo"></param>
 | |
|         /// <param name="isOrderByCust"></param>
 | |
|         /// <returns></returns>
 | |
|         public DataTable getSeedsOutPickDetail(string flowNo, bool isOrderByCust)
 | |
|         {
 | |
|             cmdParameters[0] = flowNo;
 | |
|             if (isOrderByCust)
 | |
|             {
 | |
|                 return CustQuery(1811).Tables[0];
 | |
|             }
 | |
|             else
 | |
|                 return CustQuery(1801).Tables[0];
 | |
|         }
 | |
| 
 | |
| 
 | |
| 
 | |
|         public DataTable getFlows4SeedsOut()
 | |
|         {
 | |
|             return CustQuery(1900).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable getByDetailId(int pickDetailId,enumPickState state=enumPickState.未拣)
 | |
|         {
 | |
|             cmdParameters[0] = pickDetailId;
 | |
|             cmdParameters[1] = (int)state;
 | |
|             return CustQuery(2000).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public int getCntByDetailId(int pickDetailId, enumPickState state = enumPickState.未拣)
 | |
|         {
 | |
|             cmdParameters[0] = pickDetailId;
 | |
|             cmdParameters[1] = (int)state;
 | |
|             return queryCount(2100);
 | |
|         }
 | |
| 
 | |
|         public void fromStockRecord(WmsStockRecord wsr)
 | |
|         {
 | |
|             recordId = wsr.ID;  
 | |
|             pickOrderNo = wsr.orderNo; 
 | |
|             recType = wsr.rectype; 
 | |
|             pickDetailId = wsr.orderDetailId;
 | |
| 
 | |
|           
 | |
|         }
 | |
| 
 | |
|         public DataTable getPickLightTasks(int takeBy, int partion, int orderType)
 | |
|         {
 | |
|             cmdParameters[0] = takeBy;
 | |
|             cmdParameters[1] = partion;
 | |
|             cmdParameters[2] = orderType;
 | |
|             return CustQuery(2200).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable geTasksByJobNo(string jobNo)
 | |
|         {
 | |
|             cmdParameters[0] = jobNo;  
 | |
|             return CustQuery(2300).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable geTasksByPickNo(string pickNo)
 | |
|         {
 | |
|             cmdParameters[0] = pickNo;
 | |
|             return CustQuery(2400).Tables[0];
 | |
|         }
 | |
| 
 | |
|         public DataTable getLightTasks(string query, int wareHouse, int partion, int lineId, int state, string date, bool isLight)
 | |
|         {
 | |
|             cmdParameters[0] = state;
 | |
|             cmdParameters[1] = partion;
 | |
|             cmdParameters[2] = lineId;
 | |
|             cmdParameters[3] = date;
 | |
|             cmdParameters[4] = wareHouse;
 | |
|             cmdParameters[5] = query;
 | |
| 
 | |
|             if (isLight)
 | |
|             {
 | |
|                 return CustQuery(2210).Tables[0];
 | |
|             }
 | |
| 
 | |
|             return CustQuery(2220).Tables[0];
 | |
| 
 | |
|         }
 | |
| 
 | |
|         public DataTable getLightSeeds(int deskId, string flowno, string barcode)
 | |
|         {
 | |
|             cmdParameters[0] = deskId;
 | |
|             cmdParameters[1] = flowno;
 | |
|             cmdParameters[2] = barcode;
 | |
|             return CustQuery(2500).Tables[0];
 | |
|         }
 | |
|     }
 | |
| }
 | |
|   |