using System; using System.Collections.Generic; using System.Linq; using System.Text; using WMS.Model.RK; using WMS.Model.Base; using System.Data; using WMS.IData; using WMS.Common; namespace WMS.Business.RK { public class BussStorageLot:IBussFactory { /// /// 入库订单 /// /// /// /// public string AddCodeDiskLotData(StorageLotModel model,List listmodel, string stand) { model.LOT_ID = IBussFactory.Instance().GetDocumentStream("收货单"); if(stand.Trim().Length==0) { stand = GetStaion(listmodel[0].Goods_id, model.STO_ID); } DataProvider.Instance.StorageLot.AddLotData(model);//insert into T_RK_STORAGE_LOT Transaction = DataProvider.Instance.TranOracle; logList.Add(DataProvider.Instance.logData); foreach (CodeDiskModel modelInfo in listmodel) { modelInfo.LOT_ID = model.LOT_ID; modelInfo.ConveyorID = stand; DataProvider.Instance.CodeDisk.AddZpData(modelInfo);//T_RK_CODEDISK; logList.Add(DataProvider.Instance.logData); //写上架任务表T_ONGOODSSHELF AutoRkGoodsInfo onInfo = new AutoRkGoodsInfo(); onInfo.GOODSID = modelInfo.Goods_id; onInfo.CTL = modelInfo.Pallet_id; onInfo.SHELF_NUM = modelInfo.Goods_Num; onInfo.STORAGE_ID = "YTJY001"; onInfo.LOCATION_ID = modelInfo.LOCATION_ID; onInfo.STATUS = "1"; onInfo.LOT_ID = model.LOT_ID; DataProvider.Instance.AutoRkData.InsertGoodsInfoShelf(onInfo); logList.Add(DataProvider.Instance.logData); } TaCmtOrRak(); return this.ErrText; } /// /// 入库站台 /// /// /// /// string GetStaion(string goodsId, string STORAGE_ID) { string station = ""; DataTable tb = DataProvider.Instance.AutoRkData.GetDecData(STORAGE_ID); if (tb != null) { if (tb.Rows.Count > 0) { ///查询 已经有入库任务和库存任务 DataSet tbMis = DataProvider.Instance.AutoRkData.GetdecStationData(goodsId, STORAGE_ID); if (tbMis != null) { if (tbMis.Tables.Count > 0) { if (tbMis.Tables[0].Rows.Count > 0) { if (tb.AsEnumerable().Count(r => r["ConveyorID"].ToString() == tbMis.Tables[0].Rows[0]["instand"].ToString()) > 0) { station = tbMis.Tables[0].Rows[0]["instand"].ToString(); return station; } } if (tbMis.Tables[1].Rows.Count > 0) { if (tb.AsEnumerable().Count(r => r["ConveyorID"].ToString() == tbMis.Tables[1].Rows[0]["instand"].ToString()) > 0) { station = tbMis.Tables[1].Rows[0]["instand"].ToString(); return station; } } } } station = tb.Rows[0]["ConveyorID"].ToString(); return station; } return ""; } else { return ""; } } /// /// 增加一条数据 /// public string AddLotData(StorageLotModel model, List listmodel) { model.LOT_ID = IBussFactory.Instance().GetDocumentStream("收货单"); DataProvider.Instance.StorageLot.AddLotData(model); Transaction = DataProvider.Instance.TranOracle; logList.Add(DataProvider.Instance.logData); foreach (StorageLotInfoModel modelInfo in listmodel) { modelInfo.LOT_ID = model.LOT_ID; DataProvider.Instance.StorageLot.AddLotInfo(modelInfo); logList.Add(DataProvider.Instance.logData); } if (model.NOTICE_ID.Trim().Length > 0) { WareNoticeModel ware = new WareNoticeModel(); ware.WAREHOUSING_ID = model.NOTICE_ID; ware.STATE = "2"; ware.CONFIRM_PERSON = model.OPERATORID; DataProvider.Instance.WareNotice.RevieWareNotiec(ware); logList.Add(DataProvider.Instance.logData); } TaCmtOrRak(); return this.ErrText; } /// /// 更新一条数据 /// public string Update(StorageLotModel model) { DataProvider.Instance.StorageLot.Update(model); Transaction = DataProvider.Instance.TranOracle; logList.Add(DataProvider.Instance.logData); TaCmtOrRak(); return this.ErrText; } /// /// 更新一条数据 /// public string Update(StorageLotModel model, List listmodel) { DataProvider.Instance.StorageLot.Update(model, listmodel); Transaction = DataProvider.Instance.TranOracle; logList.Add(DataProvider.Instance.logData); TaCmtOrRak(); return this.ErrText; } /// /// 获得收货记录 /// public List GetList(StorageLotModel modle) { DataTable dt = DataProvider.Instance.StorageLot.GetStorageList(modle); List list = ConvertHelper.ConvertToList(dt); return list; } /// /// 删除一条数据 /// public string Cancel(StorageLotModel model) { DataProvider.Instance.StorageLot.Cancel(model); Transaction = DataProvider.Instance.TranOracle; logList.Add(DataProvider.Instance.logData); TaCmtOrRak(); return this.ErrText; } /// /// 删除一条数据 /// public string Delete(StorageLotModel model, List listmodel, bool flag) { DataProvider.Instance.StorageLot.Delete(model, listmodel, flag); Transaction = DataProvider.Instance.TranOracle; logList.Add(DataProvider.Instance.logData); TaCmtOrRak(); return this.ErrText; } //public List GetStorageLotInfo(string lot_id) //{ // List list = new List(); // DataTable table = DataProvider.Instance.StorageLot.GetStorageLotInfo(lot_id); // if (table != null) // { // list = ConvertHelper.ConvertToList(table); // } // return list; //} /// /// 获取已经入库的单据 /// PackWeighingData /// public List GetLotStatusFinish(string area_id) { DataTable isQc = DataProvider.Instance.PackWeighing.SearchWeightNum("FrmQc");//是否质检 DataTable table =new DataTable(); if(isQc.Rows.Count==0) { table = DataProvider.Instance.StorageLot.GetLotStatusFinish("0", area_id); } else { if (isQc.Rows[0]["paramvalue"].ToString() == "1") { table = DataProvider.Instance.StorageLot.GetLotStatusFinish("1", area_id); } else { table = DataProvider.Instance.StorageLot.GetLotStatusFinish("0", area_id); } } List list = ConvertHelper.ConvertToList(table); return list; } /// /// 获得收货记录 /// public List StorageLotGetList(StorageLotModel modle) { DataTable dt = DataProvider.Instance.StorageLot.GetStorageList(modle); List list = ConvertHelper.ConvertToList(dt); return list; } /// /// 获得收货记录 /// public List GetInfoList(string id) { DataTable dt = DataProvider.Instance.StorageLot.GetInfoList(id); List list = ConvertHelper.ConvertToList(dt); return list; } /// /// 获得收货记录 /// public List GetInfoList(StorageLotInfoModel model) { DataTable dt = DataProvider.Instance.StorageLot.GetStorageInfoList(model); List list = ConvertHelper.ConvertToList(dt); return list; } /// /// 打印 /// /// public string Print(StorageLotModel model, PrintInfoModel print) { Transaction = DataProvider.Instance.TranOracle; DataProvider.Instance.StorageLot.Update(model); logList.Add(DataProvider.Instance.logData); DataProvider.Instance.PrintInfo.InsertPrintInfo(print); logList.Add(DataProvider.Instance.logData); TaCmtOrRak(); return this.ErrText; } /// /// 更新入库明细 /// /// /// /// /// public string newStorageLotInfoFuc(List upFuc, List insertFuc, List delFuc,StorageLotModel model) { Transaction = DataProvider.Instance.TranOracle; DataProvider.Instance.StorageLot.newStorageLotInfoFuc(upFuc, insertFuc, delFuc); DataProvider.Instance.StorageLot.Update(model, new List()); TaCmtOrRak(); return this.ErrText; } } }