///
///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);
}
}
}