/// ///INTERFACE CLASS FOR TABLE t_erp_sale ///By wm ///on 06/22/2018 /// 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); } 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]; } public List getObjs(DataTable dt) { List lst = new List(); foreach(DataRow dr in dt.Rows) { lst.Add(new Erp_sale(dr)); } return lst; } /// /// 同步新销售订单前 /// 记录临时数据 /// 同步后更新erp_sale 表,并删除临时数据 /// /// public int prepareSaleInTmpData() { return CustOper(200); } public bool deleteSales(string orderNo) { cmdParameters[0] = orderNo; return CustOper(101) > 0; } /// /// 同步新销售订单前 /// 记录临时数据 /// 同步后更新erp_sale 表,并删除临时数据 /// /// /* 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); if (dt.Rows.Count == 0) { return 0; } string saleOrders = ""; foreach (DataRow dr in dt.Rows) { wor = new WmsOutRequest(dr); 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); } 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); } 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); } public DataTable getByErpState() { cmdParameters[0] =(int)enumErpOrderStatus.通知失败; cmdParameters[1] = (int)enumOutStockRequestStatus.已装车; return CustQuery(700).Tables[0]; } /// /// 出入库状态看板数据 /// /// public DataSet getKanBanOrdersByState() { return CustQuery(1000); } } }