public bool WHS_ReceiptReversalDetail_Update(IEnumerable <WHS_ReceiptReversalDetail> items, string ModifiedBy)
        {
            string WHS_ReceiptReversalDetail_List             = string.Empty;
            string WHS_ReceiptReversalDetail_List_Serialized  = string.Empty;
            string WHS_ReceiptReversalDetail_Items_Serialized = string.Empty;

            string result = string.Empty;
            bool   flag   = true;

            try
            {
                WMS.Models.DBContext model = new DBContext();
                foreach (WHS_ReceiptReversalDetail item in items)
                {
                    WHS_ReceiptReversalDetail dbItem = model.DBSet_WHS_ReceiptReversalDetail.Where(d => d.ID == item.ID).FirstOrDefault();
                    if (dbItem != null)
                    {
                        WHS_ReceiptReversalDetail_List += "[" + item.ID + "] ";
                        item.ModifiedBy   = ModifiedBy;
                        item.ModifiedDate = Common.getUTCDate();
                        if (item.CreatedDate == DateTime.MinValue)
                        {
                            item.CreatedDate = dbItem.CreatedDate;
                        }
                        dbItem.IsSelected          = item.IsSelected;
                        dbItem.TagStr              = item.TagStr;
                        dbItem.Adjustment_Qty      = item.Adjustment_Qty;
                        dbItem.ASN_Detail_ID       = item.ASN_Detail_ID;
                        dbItem.CreatedBy           = item.CreatedBy;
                        dbItem.CreatedDate         = item.CreatedDate;
                        dbItem.ID                  = item.ID;
                        dbItem.IsDeleted           = item.IsDeleted;
                        dbItem.ModifiedBy          = item.ModifiedBy;
                        dbItem.ModifiedDate        = item.ModifiedDate;
                        dbItem.Receipt_reversal_ID = item.Receipt_reversal_ID;


                        WHS_ReceiptReversalDetail_Items_Serialized += Common.SerializeObject(item);
                        Common.SaveChanges(model);
                        WHS_ReceiptReversalDetail_List_Serialized += Common.SerializeObject(item);
                    }
                }
            }
            catch (Exception ex)
            {
                flag   = false;
                result = ex.Message;
                Common.log.Error(WHS_ReceiptReversalDetail_Items_Serialized, ex);
            }
            finally
            {
                if (!string.IsNullOrEmpty(result))
                {
                    Common.log.Warn(ModifiedBy + " => " + WHS_ReceiptReversalDetail_Items_Serialized, new Exception(result));
                }
                Common.log.Info(string.Format("User: {0} - [end] - WHS_ReceiptReversalDetail_Update: {1} - {2}", ModifiedBy, WHS_ReceiptReversalDetail_List, WHS_ReceiptReversalDetail_List_Serialized));
            }
            return(flag);
        }
        public DataSourceResult WHS_ReceiptReversalDetail_Create(IEnumerable <WHS_ReceiptReversalDetail> items, string CreatedBy)
        {
            string WHS_ReceiptReversalDetail_List             = string.Empty;
            string WHS_ReceiptReversalDetail_List_Serialized  = string.Empty;
            string WHS_ReceiptReversalDetail_Items_Serialized = string.Empty;

            string message = string.Empty;
            List <WHS_ReceiptReversalDetail> result = new List <WHS_ReceiptReversalDetail>();

            try
            {
                WMS.Models.DBContext model = new DBContext();
                foreach (WHS_ReceiptReversalDetail item in items)
                {
                    WHS_ReceiptReversalDetail dbItem = new WHS_ReceiptReversalDetail();

                    item.CreatedBy             = item.ModifiedBy = CreatedBy;
                    item.CreatedDate           = item.ModifiedDate = Common.getUTCDate();
                    dbItem.IsSelected          = item.IsSelected;
                    dbItem.TagStr              = item.TagStr;
                    dbItem.Adjustment_Qty      = item.Adjustment_Qty;
                    dbItem.ASN_Detail_ID       = item.ASN_Detail_ID;
                    dbItem.CreatedBy           = item.CreatedBy;
                    dbItem.CreatedDate         = item.CreatedDate;
                    dbItem.ID                  = item.ID;
                    dbItem.IsDeleted           = item.IsDeleted;
                    dbItem.ModifiedBy          = item.ModifiedBy;
                    dbItem.ModifiedDate        = item.ModifiedDate;
                    dbItem.Receipt_reversal_ID = item.Receipt_reversal_ID;

                    WHS_ReceiptReversalDetail_Items_Serialized += Common.SerializeObject(item);
                    model.DBSet_WHS_ReceiptReversalDetail.Add(dbItem);
                    Common.SaveChanges(model);

                    item.ID = dbItem.ID;
                    WHS_ReceiptReversalDetail_List += "[" + item.ID + "] ";

                    result.Add(item);
                    WHS_ReceiptReversalDetail_List_Serialized += Common.SerializeObject(item);
                }
            }
            catch (Exception ex)
            {
                message = ex.Message;
                Common.log.Error(WHS_ReceiptReversalDetail_Items_Serialized, ex);
            }
            finally
            {
                if (!string.IsNullOrEmpty(message))
                {
                    Common.log.Warn(CreatedBy + " => " + WHS_ReceiptReversalDetail_Items_Serialized, new Exception(message));
                }
                Common.log.Info(string.Format("User: {0} - [end] - WHS_ReceiptReversalDetail_Create: {1} - {2}", CreatedBy, WHS_ReceiptReversalDetail_List, WHS_ReceiptReversalDetail_List_Serialized));
            }
            return(result.ToDataSourceResult(new DataSourceRequest()));
        }