using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; using System.ServiceModel; using System.Text; using DeiNiu.Utils; using DeiNiu.wms.Logical; using System.Data; using DeiNiu.wms.Data.Model; namespace DeiNiu.Wcf { // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码、svc 和配置文件中的类名“LocationService”。 public class StockLocationService : basicService, IStockLocationService { private static lWmslocation _loc; private static lWmsStock _stock; private static lWmsStockPandian _pandian; lWmsStockPandian pandian { get { if (_pandian == null || _pandian.operId != getOperId()) { _pandian = new lWmsStockPandian(getOperId()); } return _pandian; } } lWmsStock stock { get { if (_stock == null || _stock.operId != getOperId()) { _stock = new lWmsStock(getOperId()); } return _stock; } } lWmslocation loc { get { if (_loc == null || _loc.operId != getOperId()) { _loc = new lWmslocation(getOperId()); } return _loc; } } public void addLocations(Structs locs) { loc.addLocations(locs); } public bool updateWhLocations(int[] ids, Structs locs) { return loc.updateWhLocations(ids, locs); } public bool updateSizeLocations(int[] ids, Structs locs) { return loc.updateSizeLocations(ids, locs); } public bool updateLocationTranLines(int[] ids, Structs locs) { return loc.updateLocationTranLines(ids, locs); } public bool updateLocationABC(int[] ids, Structs locs) { return loc.updateLocationABC(ids, locs); } public bool updateLocationStoreType(int[] ids, Structs locs) { return loc.updateLocationStoreType(ids, locs); } public bool updateLocationLabelId(int[] ids, Structs locs) { return loc.updateLocationLabelId(ids, locs); } public bool updateLocationStatus(int[] ids, int status) { return loc.updateLocationStatus(ids, status); } public bool updateLocationOwner(int[] ids, Structs locs) { return loc.updateLocationOwner(ids, locs); } public DataSet Query(string querystr, int rownumStart, int rownumEnd) { return loc.Query(querystr, rownumStart, rownumEnd); } public DataSet QueryNodes(DataTable dic, string query, int rownumStart, int rownumEnd) { return loc.Query(dic, query, rownumStart, rownumEnd); } public DataTable getStockRecord(string orderNo) { return stock.wmsStock.getStockRecord(orderNo); } public DataSet getStockDiff(string querystr, int rownumStart, int rownumEnd) { return stock.wmsStock.getStockDiff(querystr, rownumStart, rownumEnd); } public DataTable getWmsStockDetails(int skuId,string extrQuery) { return stock.wmsStock.getWmsStockDetails(skuId, extrQuery); } public DataTable getStockFreeLocations(string goodsId, int count) { return stock.wmsStock.getFreeStockLocations(goodsId, count); } public int upDownStockLocation(string locId, string goodsId, int skuId, string batch, string reason, decimal count, int type) { return (int)stock.upDownGoodsCountWithLocation(locId, goodsId, skuId, batch, count, reason, (enumStockRecordType)type, -1); } public DataSet getDataWaiting4Maintain(string query,int start,int end) { return new WmsStockMaintain().getDataWaiting4Maintain(query, start, end); } /// /// 养护记录 /// /// /// public DataSet getDataMaintainRecords(string query,int start,int end) { return new WmsStockMaintain().getDataMaintainRecords(query, start, end); } /// /// 临近有效期列表 /// /// /// public DataSet getDataNearValid(int days, int start, int end) { return new WmsStockMaintain().getDataNearValid(days, start, end); } /// /// 失效药品 /// /// /// public DataSet getDataInvaild( int start,int end) { return new WmsStockMaintain().getDataInvaild( start, end); } public DataSet queryStockGoods(string queryStr, int start, int end) { return stock.Query(queryStr, start, end); } public DataSet querySumStockGoods(string queryStr, int start, int end) { return stock.wmsStock.QuerySum(queryStr, start, end); } public DataSet querySumStockGoodsNoBatch(string querystr, int rownumStart, int rownumEnd) { return stock.wmsStock.QuerySumNoBatch(querystr, rownumStart, rownumEnd); } public DataSet queryBulkRep(string queryStr, int start, int end) { return stock.wmsStock.QueryBulkRep(queryStr, start, end); } public bool createGoodsRepOrder(string[] goodsRep) { return new lWmsOutRequest(getOperId()).createGoodsRepOrder(goodsRep); } public DataTable getLocationsUsedPercent() { return loc.getLocationsUsedPercent(); } public DataSet queryStockRecords(string querystr, int rownumStart, int rownumEnd) { return stock.wmsStock.queryStockRecords(querystr, rownumStart, rownumEnd); } public void initalSkus() { stock.initialSkus(); } //-----------------------盘点------------------------------------------------------- public bool createPandianOrder(int panType, int createBy, string inputValues, string stockCondition) { pandian.createPanOrder(panType, createBy, inputValues, stockCondition); return true; } public bool startPandianOrder(string orderNo) { return pandian.startPandian(orderNo); } public DataSet queryPandianOrders(string queryStr, int start, int end) { return pandian.Query(queryStr, start, end); } public bool delPandianOrder(string orderNo) { return pandian.delPandian(orderNo); } public DataSet queryPandianBanlanceDetail(string orderNo, string goodsId, int start, int end) { return pandian.getWmsStockPandian.getPandianBanlanceDetail(orderNo,start,end,goodsId); } public DataTable getPandianBanlance(string orderNo) { return pandian.getWmsStockPandian.getPandianBanlance(orderNo); } public DataTable getPandianOrder(string orderNo) { return pandian.getWmsStockPandian.getPandianOrder(orderNo); } public bool adjustPandianStock(string orderNo,bool isRollBack ) { return pandian.adjustPandianStock(orderNo, isRollBack); } public bool finishPandian(string orderNo) { return pandian.finishPandian(orderNo) ; } //test only public void initalErpSaleSku() { stock.initialErpSaledSku(); } public void formatLocName() { new WmsLocation().formatLocName(); } } }