| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  |  | 
					
						
							|  |  |  |  | /// <summary> | 
					
						
							|  |  |  |  | ///INTERFACE CLASS FOR TABLE t_erp_sale | 
					
						
							|  |  |  |  | ///By wm   | 
					
						
							|  |  |  |  | ///on 06/22/2018 | 
					
						
							|  |  |  |  | /// </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 Erp_sale : Erp_sale_base | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         public Erp_sale() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public Erp_sale(int id): base(id) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public Erp_sale(DataRow dr): base(dr) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         public Erp_sale(String orderNo)  | 
					
						
							|  |  |  |  |          { | 
					
						
							|  |  |  |  |              cmdParameters[0] = orderNo; | 
					
						
							|  |  |  |  |              getModel(100); | 
					
						
							|  |  |  |  |          } | 
					
						
							|  |  |  |  |       protected override void getImp() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             model_imp = new Erp_sale_Imp();   | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |       public void getByPickOrder(string pickOrderNo) | 
					
						
							|  |  |  |  |       { | 
					
						
							|  |  |  |  |           cmdParameters[0] = pickOrderNo; | 
					
						
							|  |  |  |  |           getModel(150); | 
					
						
							|  |  |  |  |       } | 
					
						
							|  |  |  |  |         //begin cust db operation, query, excute sql etc. | 
					
						
							|  |  |  |  |         public DataSet QueryByName(string name) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = name; | 
					
						
							|  |  |  |  |             return  CustQuery(100); | 
					
						
							|  |  |  |  |         } | 
					
						
							| 
									
										
										
										
											2023-11-21 19:18:23 +08:00
										 |  |  |  |         public DataTable getDetailByPickOrder(string pickOrderNo) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = pickOrderNo; | 
					
						
							|  |  |  |  |           return CustQuery(600).Tables[0]; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public DataTable getSaleOrdersByPickOrder(string pickOrderNo) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = pickOrderNo; | 
					
						
							|  |  |  |  |             return CustQuery(150).Tables[0]; | 
					
						
							|  |  |  |  |         } | 
					
						
							| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-11-21 19:18:23 +08:00
										 |  |  |  |         public List<Erp_sale> getObjs(DataTable dt) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             List<Erp_sale> lst = new List<Erp_sale>(); | 
					
						
							|  |  |  |  |             foreach(DataRow dr in dt.Rows) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 lst.Add(new Erp_sale(dr)); | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             return lst; | 
					
						
							|  |  |  |  |         } | 
					
						
							| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 同步新销售订单前 | 
					
						
							|  |  |  |  |         /// 记录临时数据 | 
					
						
							|  |  |  |  |         /// 同步后更新erp_sale 表,并删除临时数据 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							| 
									
										
										
										
											2023-11-21 19:18:23 +08:00
										 |  |  |  |         public int prepareSaleInTmpData() | 
					
						
							| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  |          {  | 
					
						
							|  |  |  |  |              return CustOper(200);  | 
					
						
							|  |  |  |  |          } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     | 
					
						
							|  |  |  |  |         public bool deleteSales(string orderNo) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = orderNo; | 
					
						
							|  |  |  |  |             return CustOper(101) > 0; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |          | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 同步新销售订单前 | 
					
						
							|  |  |  |  |         /// 记录临时数据 | 
					
						
							|  |  |  |  |         /// 同步后更新erp_sale 表,并删除临时数据 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |        /* public int syncSaleOrdersBefore(enumOutStockRequestStatus wmsStatus) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = operater; | 
					
						
							|  |  |  |  |             cmdParameters[1] = (int)wmsStatus; | 
					
						
							|  |  |  |  |             return CustOper(201);  | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |          */ | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public int syncSaleOrdersAfter(enumOutStockRequestStatus wmsStatus) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = operater; | 
					
						
							|  |  |  |  |             cmdParameters[1] = (int)wmsStatus; | 
					
						
							|  |  |  |  |             return CustOper(202); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public int updatePickStatus(string pickOrderNo, Utils.enumOutStockRequestStatus rstateNew)//, Utils.enumOutStockRequestStatus rstateOld) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             //find sale orders | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             WmsOutRequest wor = new WmsOutRequest(); | 
					
						
							|  |  |  |  |             DataTable dt =  wor.getRequestByPickOrder(pickOrderNo); | 
					
						
							|  |  |  |  |             LogHelper.debug(typeof(Erp_sale), " try updatePickStatus , sales order cnt " + dt.Rows.Count); | 
					
						
							| 
									
										
										
										
											2023-09-04 22:41:19 +08:00
										 |  |  |  |             if (dt.Rows.Count == 0) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 return 0; | 
					
						
							|  |  |  |  |             } | 
					
						
							| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  |             string saleOrders = ""; | 
					
						
							|  |  |  |  |             foreach (DataRow dr in dt.Rows) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 wor = new WmsOutRequest(dr); | 
					
						
							| 
									
										
										
										
											2024-03-06 20:48:05 +08:00
										 |  |  |  |                  | 
					
						
							|  |  |  |  |               | 
					
						
							| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  |                 saleOrders +="'"+ wor.orderNo + "',"; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             LogHelper.debug(typeof(Erp_sale), " try updatePickStatus , saleOrders: " + saleOrders); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             saleOrders = saleOrders.Substring(0, saleOrders.Length - 1); | 
					
						
							|  |  |  |  |             if (dt.Rows.Count > 1) | 
					
						
							|  |  |  |  |             {  | 
					
						
							|  |  |  |  |                 saleOrders = " where sale_order in (" + saleOrders + ")"; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  |             else | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 saleOrders = " where sale_order = " + saleOrders ; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             cmdParameters[0] = operater;  | 
					
						
							|  |  |  |  |             cmdParameters[1] = saleOrders; | 
					
						
							|  |  |  |  |             cmdParameters[2] =(int) rstateNew; | 
					
						
							|  |  |  |  |            cmdParameters[3] = pickOrderNo; | 
					
						
							|  |  |  |  |             return CustOper(300);  | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-11-21 19:18:23 +08:00
										 |  |  |  |         public DataSet getPickOutDetailSum(string queryStr, int rowStart, int rowEnd) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (rowEnd > rowStart && rowStart > 0) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 this.rownumStart = rowStart; | 
					
						
							|  |  |  |  |                 this.rownumEnd = rowEnd; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             cmdParameters[0] = getCondition(queryStr); | 
					
						
							|  |  |  |  |             return CustQuery(900); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public DataSet getPickOutDetail(string queryStr, int rowStart, int rowEnd) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             if (rowEnd > rowStart && rowStart > 0) | 
					
						
							|  |  |  |  |             { | 
					
						
							|  |  |  |  |                 this.rownumStart = rowStart; | 
					
						
							|  |  |  |  |                 this.rownumEnd = rowEnd; | 
					
						
							|  |  |  |  |             } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             cmdParameters[0] = getCondition(queryStr); | 
					
						
							|  |  |  |  |             return CustQuery(800); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  |         public int updateWhType(string orderNo, int whType,enumOutStockRequestStatus status) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = orderNo; | 
					
						
							|  |  |  |  |             cmdParameters[1] = whType; | 
					
						
							|  |  |  |  |             cmdParameters[2] = (int)status; | 
					
						
							|  |  |  |  |             return CustOper(400); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         public void updateCreatetime() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] = _sale_order; | 
					
						
							|  |  |  |  |             CustOper(500); | 
					
						
							|  |  |  |  |         } | 
					
						
							| 
									
										
										
										
											2023-11-21 19:18:23 +08:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |         public DataTable getByErpState() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             cmdParameters[0] =(int)enumErpOrderStatus.通知失败; | 
					
						
							|  |  |  |  |             cmdParameters[1] = (int)enumOutStockRequestStatus.已装车; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             return CustQuery(700).Tables[0]; | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         /// <summary> | 
					
						
							|  |  |  |  |         /// 出入库状态看板数据 | 
					
						
							|  |  |  |  |         /// </summary> | 
					
						
							|  |  |  |  |         /// <returns></returns> | 
					
						
							|  |  |  |  |         public DataSet getKanBanOrdersByState() | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             return CustQuery(1000); | 
					
						
							|  |  |  |  |         } | 
					
						
							| 
									
										
										
										
											2023-05-23 16:13:17 +08:00
										 |  |  |  |     } | 
					
						
							|  |  |  |  | } | 
					
						
							|  |  |  |  |   |