public StoreTransferModel(StoreTransfer storeTransfer) : base(storeTransfer) { this.CodeNo = storeTransfer.CodeNo; this.OrderCode = storeTransfer.OrderCode; this.OrderTimeStr = storeTransfer.OrderTime.ToString("yyyy-MM-dd HH:mm:ss"); if (storeTransfer.FromStore != null) { this.FromStoreId = storeTransfer.FromStore.Id; this.FromStoreName = storeTransfer.FromStore.Name; } if (storeTransfer.ToStore != null) { this.ToStoreId = storeTransfer.ToStore.Id; this.ToStoreName = storeTransfer.ToStore.Name; } this.Note = storeTransfer.Note; }
public static StoreTransferModel From(StoreTransfer storeTransfer) { return new StoreTransferModel(storeTransfer); }
public ActionResult SaveOrUpdate(StoreTransfer obj, string sgoods) { try { if (obj.Id > 0) { obj = this.StoreTransferRepository.Get(obj.Id); TryUpdateModel(obj); var jser = new JavaScriptSerializer(); IList<StoreTransferDetailModel> datas = jser.Deserialize<IList<StoreTransferDetailModel>>(sgoods); var list = this.StoreTransferDetailRepository.GetAll(new StoreTransferDetailQuery { StoreTransferId = obj.Id }); IList<StoreTransferDetail> dts = new List<StoreTransferDetail>(); //找到存在的进行更新,不存在的删除 foreach (var item1 in list) { bool bFlag = false; for (int i = datas.Count - 1; i >= 0; i--) { var item2 = datas[i]; if (item1.Goods.Id == item2.Id) { item1.Price = item2.Price; item1.Quantity = item2.StoreGoodsQuantity; item1.TotalAomount = item2.TotalAomount; item1.Note = item2.StoreGoodsNote; dts.Add(item1); datas.Remove(item2); bFlag = true; } } if (!bFlag) { this.StoreTransferDetailRepository.Delete(item1); } } //添加新增的 foreach (var item in datas) { dts.Add(new StoreOutDetail() { StoreOut = obj, Goods = this.GoodsRepository.Get(item.Id), Price = item.Price, Quantity = item.StoreGoodsQuantity, TotalAomount = item.TotalAomount, Note = item.StoreGoodsNote }); } foreach (var item in dts) { this.StoreOutDetailRepository.SaveOrUpdate(item); } } else { if (obj.Store == null) { return JsonError("请选择仓库"); } if (obj.Customer == null) { return JsonError("请选择客户"); } if (obj.Seller == null) { return JsonError("请选择销售员"); } } obj = this.StoreOutRepository.SaveOrUpdate(obj); return JsonSuccess(obj); } catch (Exception ex) { return JsonError(ex.Message); } }