public void TestAddBySellStockOut() { string errorMessage = string.Empty; _storageManager.AddBySellStockOut("KDDDA00217041013007", new Guid("A15127E0-37BF-46B5-8A1C-017EF43ED4E2"), out errorMessage); Assert.AreEqual(string.Empty, errorMessage); }
/// <summary> /// 添加销售出库单据 /// </summary> public static void AddSellOutTask() { var list = _iasynStorageRecordDao.GetList(ConfigInfo.NeedAddStorageReadQuantity); if (list == null || list.Count == 0) { return; } foreach (var item in list) { try { string errorMessage; var isSuccess = _asynStorageRecordDao.AddBySellStockOut(item.IdentifyKey, item.IdentifyId, out errorMessage); if (isSuccess) { //删除异步表数据 _iasynStorageRecordDao.Delete(item.ID); } if (!isSuccess && !string.IsNullOrEmpty(errorMessage)) { ERP.SAL.LogCenter.LogService.LogError(string.Format("添加销售出库单据异常:{0}, {1}", errorMessage, Framework.Common.Serialization.JsonSerialize(item)), "出入库任务", null); } } catch (Exception exp) { ERP.SAL.LogCenter.LogService.LogError(string.Format("添加销售出库单据异常:{0}, {1}", exp.Message, Framework.Common.Serialization.JsonSerialize(item)), "出入库任务", exp); continue; } } }
public void TestAddBySellStockOut() { string errorMsg; _goodsOrder.GetGoodsOrderGuid = guid => null; _storageManager = new StorageManager(_stockCenterSao, _goodsCenterSao, _storageDao, _goodsOrder, _goodsOrderDetail, _lotInquiry, _stubICode); var result = _storageManager.AddBySellStockOut(string.Empty, Guid.Empty, true, out errorMsg); Assert.IsFalse(result); _goodsOrder.GetGoodsOrderGuid = guid => new GoodsOrderInfo(); _storageManager = new StorageManager(_stockCenterSao, _goodsCenterSao, _storageDao, _goodsOrder, _goodsOrderDetail, _lotInquiry, _stubICode); var result1 = _storageManager.AddBySellStockOut(string.Empty, Guid.Empty, true, out errorMsg); Assert.IsFalse(result1); _lotInquiry.GetAllLotInquiryByTradeCodeString = s => new List <LotInquiry>() { new LotInquiry { RealGoodsId = new Guid("EDCF59C0-2320-43B9-8483-23C8C9E601EE"), BatchNo = "CESIJL" } }; _goodsOrder.GetGoodsOrderGuid = guid => new GoodsOrderInfo { OrderId = new Guid("6E677868-AE98-4932-B4DB-0000020DC859"), OrderNo = "BR15081318006", SaleFilialeId = new Guid("444E0C93-1146-4386-BAE2-CB352DA70499"), DeliverWarehouseId = new Guid("B5BCDF6E-95D5-4AEE-9B19-6EE218255C05"), ConsignTime = DateTime.Now, Consignee = "测试", IsOut = true }; _goodsOrderDetail.GetGoodsOrderDetailByOrderIdGuid = guid => new List <GoodsOrderDetailInfo> { new GoodsOrderDetailInfo { GoodsID = new Guid("FCCB8336-D3C8-4628-96D1-0681952C7A13"), RealGoodsID = new Guid("FCCB8336-D3C8-4628-96D1-0681952C7A13"), Quantity = 1, PurchaseSpecification = "", SellPrice = 0, GoodsName = "洁达隐形眼镜伴侣盒A-022(颜色随机)(百秀专用)", GoodsCode = "JD050610" }, new GoodsOrderDetailInfo { GoodsID = new Guid("77D4931C-4579-4A6D-91AF-0CE0B4CFE1D0"), RealGoodsID = new Guid("77D4931C-4579-4A6D-91AF-0CE0B4CFE1D0"), Quantity = 1, PurchaseSpecification = "", SellPrice = 0, GoodsName = "蓝睛灵蓝润隐形眼镜润滑液15ML", GoodsCode = "BULE150210" }, new GoodsOrderDetailInfo { GoodsID = new Guid("752D80BA-5E0C-46A9-951B-8A7343162D5D"), RealGoodsID = new Guid("EDCF59C0-2320-43B9-8483-23C8C9E601EE"), Quantity = 2, PurchaseSpecification = "光度:-6.50 ", SellPrice = 44, GoodsName = "海昌星眸银石灰半年抛隐形眼镜1片装", GoodsCode = "256589001" }, new GoodsOrderDetailInfo { GoodsID = new Guid("0149B74A-1C94-4F19-9D8E-B3E1E7AFE27B"), RealGoodsID = new Guid("0149B74A-1C94-4F19-9D8E-B3E1E7AFE27B"), Quantity = 1, PurchaseSpecification = "", SellPrice = 0, GoodsName = "诺思纯澈隐形眼镜护理液150ml", GoodsCode = "NS041501" } }; _stubICode.GetCodeValueCodeTypeDateTime = (type, time) => 2; _storageManager = new StorageManager(_stockCenterSao, _goodsCenterSao, _storageDao, _goodsOrder, _goodsOrderDetail, _lotInquiry, _stubICode); var result2 = _storageManager.AddBySellStockOut(string.Empty, Guid.Empty, true, out errorMsg); Assert.IsFalse(result2); _stockCenterSao.GetGoodsQuantityByRealGoodsIdsIEnumerableOfGuidGuidGuid = (guids, guid, arg3) => new List <GoodsStockQuantityInfo> { new GoodsStockQuantityInfo { RealGoodsId = new Guid("EDCF59C0-2320-43B9-8483-23C8C9E601EE"), CurrentQuantity = 10 } }; _storageManager = new StorageManager(_stockCenterSao, _goodsCenterSao, _storageDao, _goodsOrder, _goodsOrderDetail, _lotInquiry, _stubICode); var result3 = _storageManager.AddBySellStockOut(string.Empty, Guid.Empty, true, out errorMsg); Assert.IsFalse(result3); _stockCenterSao.GetGoodsQuantityByRealGoodsIdsIEnumerableOfGuidGuidGuid = (guids, guid, arg3) => new List <GoodsStockQuantityInfo> { new GoodsStockQuantityInfo { RealGoodsId = new Guid("FCCB8336-D3C8-4628-96D1-0681952C7A13"), CurrentQuantity = 10 }, new GoodsStockQuantityInfo { RealGoodsId = new Guid("77D4931C-4579-4A6D-91AF-0CE0B4CFE1D0"), CurrentQuantity = 10 }, new GoodsStockQuantityInfo { RealGoodsId = new Guid("EDCF59C0-2320-43B9-8483-23C8C9E601EE"), CurrentQuantity = 10 }, new GoodsStockQuantityInfo { RealGoodsId = new Guid("0149B74A-1C94-4F19-9D8E-B3E1E7AFE27B"), CurrentQuantity = 10 }, }; _storageDao.ExistsInt32String = (i, s) => true; _storageManager = new StorageManager(_stockCenterSao, _goodsCenterSao, _storageDao, _goodsOrder, _goodsOrderDetail, _lotInquiry, _stubICode); var result4 = _storageManager.AddBySellStockOut(string.Empty, Guid.Empty, true, out errorMsg); Assert.IsFalse(result4); _storageDao.ExistsInt32String = (i, s) => false; _goodsCenterSao.GetGoodsListByGoodsIdsListOfGuid = list => new List <GoodsInfo> { new GoodsInfo { GoodsId = new Guid("752D80BA-5E0C-46A9-951B-8A7343162D5D"), ExpandInfo = new GoodsExtendInfo { JoinPrice = 42 } } }; _storageDao.InsertStorageRecordInfoIListOfStorageRecordDetailInfoStringOut = (StorageRecordInfo info, IList <StorageRecordDetailInfo> list, out string @out) => { @out = ""; return(true); }; _storageManager = new StorageManager(_stockCenterSao, _goodsCenterSao, _storageDao, _goodsOrder, _goodsOrderDetail, _lotInquiry, _stubICode); var result5 = _storageManager.AddBySellStockOut(string.Empty, Guid.Empty, true, out errorMsg); Assert.IsFalse(result5); }