public void Update(List<BLL.ReceiveDetail> inserted, List<BLL.ReceiveDetail> updated,
List<BLL.ReceiveDetail> deleted)
{
CTSContext db = new CTSContext();
BLL.Receive orginal = db.Receives.SingleOrDefault(p => p.ReceiveID == this.ReceiveID);
if (orginal != null)
{
// CreatedDate = DateTime.Now,
orginal.ReceiptDate = this.ReceiptDate;
// orginal.ReceiveID = this.ReceiveID;
orginal.DriverName = this.DriverName;
orginal.GRN = this.GRN;
orginal.PlateNo_Prime = this.PlateNo_Prime;
orginal.PlateNo_Trailer = this.PlateNo_Trailer;
//orginal.StackNumber = this.StackNumber;
orginal.TransporterID = this.TransporterID;
orginal.HubID = this.HubID;
// orginal.SINumber = this.SINumber;
//orginal.CommodityTypeID = this.CommodityTypeID;
orginal.WayBillNo = this.WayBillNo;
orginal.ResponsibleDonorID = this.ResponsibleDonorID;
orginal.SourceDonorID = this.SourceDonorID;
//orginal.ReceivedByStoreMan = this.ReceivedByStoreMan;
//orginal.CommoditySourceID = this.CommoditySourceID;
orginal.WeightBeforeUnloading = this.WeightBeforeUnloading;
orginal.WeightAfterUnloading = this.WeightAfterUnloading;
orginal.Remark = this.Remark;
orginal.VesselName = this.VesselName;
orginal.PortName = this.PortName;
orginal.WeightBridgeTicketNumber = this.WeightBridgeTicketNumber;
foreach (BLL.ReceiveDetail insert in inserted)
{
//TODO THIS should be in transaction
//orginal.ReceiveDetails.Add(insert);
}
foreach (BLL.ReceiveDetail delete in deleted)
{
BLL.ReceiveDetail deletedCommodity = db.ReceiveDetails.SingleOrDefault(p => p.ReceiveDetailID == delete.ReceiveDetailID);
if (deletedCommodity != null)
{
// db.ReceiveDetails.DeleteObject(deletedCommodity);
}
}
foreach (BLL.ReceiveDetail update in updated)
{
BLL.ReceiveDetail updatedCommodity = db.ReceiveDetails.SingleOrDefault(p => p.ReceiveDetailID == update.ReceiveDetailID);
if (updatedCommodity != null)
{
//updatedCommodity.CommodityID = update.CommodityID;
updatedCommodity.Description = update.Description;
//updatedCommodity.ReceiveDetailID = update.ReceiveDetailID;
//updatedCommodity.SentQuantityInMT = update.SentQuantityInMT;
//updatedCommodity.ReceivedQuantityInMT = updatedCommodity.ReceivedQuantityInMT;
//updatedCommodity.SentQuantityInUnit = update.SentQuantityInUnit;
//updatedCommodity.UnitID = update.UnitID;
}
}
db.SaveChanges();
}
}