/// ///INTERFACE CLASS FOR TABLE t_wmsStock ///By wm with codesmith. ///on 05/14/2017 /// 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 WmsStock : WmsStock_base { public WmsStock() { } public WmsStock(int id): base(id) { } public WmsStock(DataRow dr): base(dr) { } public WmsStock(string goodsId, string batch, string locationId) { cmdParameters[0] = goodsId; cmdParameters[1] = batch; cmdParameters[2] = locationId; this._goodsId = goodsId; this._batch = batch; this._locationId = locationId; getModel(100); } public WmsStock( string locationId) { cmdParameters[0] = locationId; getModel(110); } protected override void getImp() { model_imp = new WmsStock_Imp(); } //begin cust db operation, query, excute sql etc. public DataSet queryByGoodsId(string goodsId,string batch) { cmdParameters[0] = goodsId; cmdParameters[1] = batch; return CustQuery(200); } /// /// 根据商品编号和货位容量类别查询 /// /// /// public DataSet queryByGoodsIdVolType(string goodsId, string batch, enumWhLocVol locVolType, enumWhType whType) { cmdParameters[0] = goodsId; cmdParameters[1] = (int)locVolType; cmdParameters[2] = batch; cmdParameters[3] = (int)whType; return CustQuery(500); } public DataSet QueryByName(string namelike,enumWhType whType) { cmdParameters[0] = namelike; cmdParameters[1] = (int)whType; return CustQuery(300); } public DataTable getStockRecord(string orderNo) { cmdParameters[0] = orderNo; return CustQuery(400).Tables[0]; } private Wmslocation _location; public Wmslocation location { get { if (_location == null || _location.locationId != _locationId) { _location = new Wmslocation(locationId); } return _location; } } /// /// // 更新库存出库信息,库存扣完,则删除记录 /// /// public int updateCountOut() { if ( countIn <= 0 && count - countOut <= 0 && countOuting <= 0) { LogHelper.debug(typeof(WmsStock), string.Format("{0} 库存扣完删除库存记录,countIn: {1} ,count: {2},countOut: {3} ,countIn: {4}", goodsId, countIn, count, countOut, countIn) ); return Delete(); // 库存扣完,删除记录 } else { return base.Update(); } } /// /// get location data by locid /// for wince /// /// /// public DataTable getStockLocation(string locId) { cmdParameters[0] = locId; return CustQuery(600).Tables[0]; } public DataSet queryByGoodsBarcode(string barcode) { cmdParameters[0] = barcode; return CustQuery(605); } /// /// get locations by goodsid /// for wince with ch title /// /// /// public DataTable getGoodsStockLocations(string barcode) { cmdParameters[0] = barcode; return CustQuery(610).Tables[0]; } /// /// 根据商品比较wms和erp库存 /// /// /// public DataTable getStockLocationCompareErp(string goodsId,string barcode) { cmdParameters[0] = goodsId; cmdParameters[1] = barcode; return CustQuery(700).Tables[0]; } /// /// 已下架商品待上架商品列表 /// /// /// public DataTable getLocationDownList4Up(int operId) { cmdParameters[0] = operId; return CustQuery(800).Tables[0]; } public DataTable getGoodsERPStoreByBarcode(string barcode) { cmdParameters[0] = barcode; return CustQuery(900).Tables[0]; } /// /// /// /// /// /// public int maintainIssue(string goodsId, string batch ,enumStockLocationState state, int operId) { cmdParameters[0] = goodsId; cmdParameters[1] = batch; cmdParameters[2] = (int)state; cmdParameters[3] = operId; return CustOper(1000) ; } public void recordMaintain(string locId, int operId) { cmdParameters[0] = locId; cmdParameters[1] = operId; CustOper(1100); } /// /// 比较wms erp库存 /// /// /// /// /// public DataSet getStockDiff(string querystr, int rownumStart, int rownumEnd) { if (rownumEnd > rownumStart && rownumStart > 0) { this.rownumStart = rownumStart; this.rownumEnd = rownumEnd; } // DataSet ds = string.IsNullOrEmpty(querystr) ? _obj.Query() : _obj.Query(querystr); if (string.IsNullOrEmpty(querystr)) { cmdParameters[0] = querystr; return CustQuery(199) ; } cmdParameters[0] = getCondition(querystr); return CustQuery(199) ; } public DataTable getWmsStockDetails(string goodsId, string batch,string extrQuery) { cmdParameters[0] = goodsId; cmdParameters[1] = batch; cmdParameters[2] = getCondition(extrQuery); return CustQuery(1200).Tables[0]; } public DataTable getFreeStockLocations(string goodsId, int count) { cmdParameters[0] = goodsId; cmdParameters[1] = count; return CustQuery(1300).Tables[0]; } /// /// 库存汇总 /// sum by goodsId, batch /// /// /// public DataSet QuerySum(string querystr, int rownumStart, int rownumEnd) { cmdParameters[0] = getCondition(querystr, rownumStart, rownumEnd); return CustQuery(101) ; } /// /// 库存汇总 /// sum by goodsId /// /// /// public DataSet QuerySumNoBatch(string querystr, int rownumStart, int rownumEnd) { cmdParameters[0] = getCondition(querystr, rownumStart, rownumEnd); return CustQuery(98); } /// /// 零库查询,补货参考 /// /// /// public DataSet QueryBulkRep(string querystr, int rownumStart, int rownumEnd) { cmdParameters[0] = getCondition(querystr, rownumStart, rownumEnd); return CustQuery(102); } /// /// 查询库存变动记录 /// /// /// /// /// public DataSet queryStockRecords(string querystr, int rownumStart, int rownumEnd) { cmdParameters[0] = getCondition(querystr, rownumStart, rownumEnd); return CustQuery(1400); } } }