207 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			207 lines
		
	
	
		
			6.1 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								/// <summary>
							 | 
						|||
| 
								 | 
							
								///INTERFACE CLASS FOR TABLE t_wmsOutRequest
							 | 
						|||
| 
								 | 
							
								///By wm with codesmith. 
							 | 
						|||
| 
								 | 
							
								///on 05/18/2017
							 | 
						|||
| 
								 | 
							
								/// </summary>
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								using System;
							 | 
						|||
| 
								 | 
							
								using System.Collections.Generic;
							 | 
						|||
| 
								 | 
							
								using System.Linq;
							 | 
						|||
| 
								 | 
							
								using System.Text;
							 | 
						|||
| 
								 | 
							
								using System.Data;
							 | 
						|||
| 
								 | 
							
								using DeiNiu.Utils;
							 | 
						|||
| 
								 | 
							
								using System.Transactions;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								namespace DeiNiu.wms.Data.Model
							 | 
						|||
| 
								 | 
							
								{
							 | 
						|||
| 
								 | 
							
								    [Serializable]
							 | 
						|||
| 
								 | 
							
								    public class WmsOutRequest : WmsOutRequest_base
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        public WmsOutRequest()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        public WmsOutRequest(int id): base(id)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								         public WmsOutRequest(DataRow dr): base(dr)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								         public WmsOutRequest(String orderNo) 
							 | 
						|||
| 
								 | 
							
								         {
							 | 
						|||
| 
								 | 
							
								             cmdParameters[0] = orderNo;
							 | 
						|||
| 
								 | 
							
								             getModel(100);
							 | 
						|||
| 
								 | 
							
								         }
							 | 
						|||
| 
								 | 
							
								         protected override void getImp()
							 | 
						|||
| 
								 | 
							
								         {
							 | 
						|||
| 
								 | 
							
								             model_imp = new WmsOutRequest_Imp();
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								         }
							 | 
						|||
| 
								 | 
							
								       
							 | 
						|||
| 
								 | 
							
								        //begin cust db operation, query, excute sql etc.
							 | 
						|||
| 
								 | 
							
								         public DataSet QueryByState(DeiNiu.Utils.enumOutStockRequestStatus state)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            cmdParameters[0] = (int)state;
							 | 
						|||
| 
								 | 
							
								            return  CustQuery(200);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 出库请求原始单详情
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataSet getRequestDetail()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            cmdParameters[0] = this.orderNo;
							 | 
						|||
| 
								 | 
							
								            return CustQuery(300);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 出库单详情(根据货物id,批号合并原始单明细)
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataSet getOutDetail()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            cmdParameters[0] = this.orderNo;
							 | 
						|||
| 
								 | 
							
								            return CustQuery(400);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 待出库新订单
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataSet getNewOrders()
							 | 
						|||
| 
								 | 
							
								        { 
							 | 
						|||
| 
								 | 
							
								            return CustQuery(600);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 拉取erp订单
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public int syncOutRequest()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return CustOper(500);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        private List<WmsOutDetail> _outDetails;
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 查询订单出库详情
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        public List<WmsOutDetail> outDetails
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            get {
							 | 
						|||
| 
								 | 
							
								                if (_outDetails == null && !string.IsNullOrEmpty( _orderNo))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                  //  DeiNiu.Utils.LogHelper.WriteLog(this.GetType(), "start to get outDetails");
							 | 
						|||
| 
								 | 
							
								                    _outDetails = new List<WmsOutDetail>();
							 | 
						|||
| 
								 | 
							
								                    DataTable dt = getOutDetail().Tables[0];
							 | 
						|||
| 
								 | 
							
								                    foreach (DataRow dr in dt.Rows)
							 | 
						|||
| 
								 | 
							
								                    { 
							 | 
						|||
| 
								 | 
							
								                        _outDetails.Add( new WmsOutDetail(dr)); 
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                  //  DeiNiu.Utils.LogHelper.WriteLog(this.GetType(), "end get outDetails");
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                
							 | 
						|||
| 
								 | 
							
								                return _outDetails;
							 | 
						|||
| 
								 | 
							
								            } 
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								      
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获取订单,并按客户排序
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="orderType">订单类型</param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="orderStatus">订单状态</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataSet getRequests(DeiNiu.Utils.enumOutOrderType orderType,DeiNiu.Utils.enumOutStockRequestStatus orderStatus)
							 | 
						|||
| 
								 | 
							
								        { 
							 | 
						|||
| 
								 | 
							
								             cmdParameters[0] =(int)orderType;
							 | 
						|||
| 
								 | 
							
								             cmdParameters[1] = (int)orderStatus;
							 | 
						|||
| 
								 | 
							
								            return CustQuery(800);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// get new request for merged pre to pick request
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataSet getNewRequests()
							 | 
						|||
| 
								 | 
							
								        { 
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            return QueryByState(Utils.enumOutStockRequestStatus.待处理);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// get merged view of new requests 
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataSet getNewRequestPickDetails()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								         //   cmdParameters[0] = (int)Utils.enumOutStockRequestStatus.待处理;
							 | 
						|||
| 
								 | 
							
								            return CustQuery(900);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// get error pick details
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataSet getErroredPickDetails()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return CustQuery(1000);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// get sales man list
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public DataTable getSalesMen()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return CustQuery(1100).Tables[0];
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 合并销售订单或取消合并
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="custID"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="custName"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="custAddress"></param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="pickOrderNo"></param>
							 | 
						|||
| 
								 | 
							
								        public void updatePickState(string custID, string custName, string custAddress, string pickOrderNo)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            cmdParameters[0] = custID;
							 | 
						|||
| 
								 | 
							
								            cmdParameters[1] = custName;
							 | 
						|||
| 
								 | 
							
								            cmdParameters[2] = custAddress;
							 | 
						|||
| 
								 | 
							
								            cmdParameters[3] = pickOrderNo;
							 | 
						|||
| 
								 | 
							
								            cmdParameters[4] =  string.IsNullOrEmpty(pickOrderNo) ? (int)Utils.enumOutStockRequestStatus.准备合并 //new state
							 | 
						|||
| 
								 | 
							
								                               : (int)Utils.enumOutStockRequestStatus.等待分拣; 
							 | 
						|||
| 
								 | 
							
								            cmdParameters[5] = string.IsNullOrEmpty(pickOrderNo) ? (int)enumOutStockRequestStatus.等待分拣  //old state
							 | 
						|||
| 
								 | 
							
								                                : (int)enumOutStockRequestStatus.准备合并; ;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            cmdParameters[6] = operater; 
							 | 
						|||
| 
								 | 
							
								            CustOper(1200);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// prepare the out request orders for pick
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        public void preparePick()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            cmdParameters[0] = (int)enumOutStockDetailStatus.库存不足;
							 | 
						|||
| 
								 | 
							
								            cmdParameters[1] = "库存不足";
							 | 
						|||
| 
								 | 
							
								            cmdParameters[2] =  (int)enumOutStockDetailStatus.待处理; 
							 | 
						|||
| 
								 | 
							
								            cmdParameters[3] = (int)enumOutStockRequestStatus.准备合并;
							 | 
						|||
| 
								 | 
							
								            cmdParameters[4] = operater;
							 | 
						|||
| 
								 | 
							
								            try
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                using (TransactionScope scope1 = new TransactionScope())
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    CustOper(1300);
							 | 
						|||
| 
								 | 
							
								                    scope1.Complete();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            catch (Exception er)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                throw er;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 | 
						|||
| 
								 | 
							
								 
							 |