public DTO.WarehouseCIMng.WarehouseCI DB2DTO_WarehouseCI(WarehouseCIMng_WarehouseCI_View dbItem) { DTO.WarehouseCIMng.WarehouseCI dtoItem = AutoMapper.Mapper.Map <WarehouseCIMng_WarehouseCI_View, DTO.WarehouseCIMng.WarehouseCI>(dbItem); /* * FORMAT FIELDS DATETIME */ if (dbItem.ConcurrencyFlag != null) { dtoItem.ConcurrencyFlag_String = Convert.ToBase64String(dbItem.ConcurrencyFlag); } if (dbItem.IssuedDate.HasValue) { dtoItem.IssuedDateFormated = dbItem.IssuedDate.Value.ToString("dd/MM/yyyy"); } if (dbItem.CreatedDate.HasValue) { dtoItem.CreatedDateFormated = dbItem.CreatedDate.Value.ToString("dd/MM/yyyy"); } if (dbItem.UpdatedDate.HasValue) { dtoItem.UpdatedDateFormated = dbItem.UpdatedDate.Value.ToString("dd/MM/yyyy"); } return(dtoItem); }
public IHttpActionResult Update(int id, DTO.WarehouseCIMng.WarehouseCI dtoItem) { Library.DTO.Notification notification; // authentication Module.Framework.BLL fwBll = new Module.Framework.BLL(); if (id > 0 && !fwBll.CanPerformAction(ControllerContext.GetAuthUserId(), moduleCode, Library.DTO.ModuleAction.CanUpdate)) { // edit case return(InternalServerError(new Exception(Properties.Resources.NOT_AUTHORIZED))); } else if (id == 0 && !fwBll.CanPerformAction(ControllerContext.GetAuthUserId(), moduleCode, Library.DTO.ModuleAction.CanCreate)) { // create new case return(InternalServerError(new Exception(Properties.Resources.NOT_AUTHORIZED))); } // validation if (!Helper.CommonHelper.ValidateDTO <DTO.WarehouseCIMng.WarehouseCI>(dtoItem, out notification)) { return(Ok(new Library.DTO.ReturnData <DTO.WarehouseCIMng.WarehouseCI>() { Data = dtoItem, Message = notification })); } // continue processing BLL.WarehouseCIMng bll = new BLL.WarehouseCIMng(); bll.UpdateData(id, ref dtoItem, ControllerContext.GetAuthUserId(), out notification); if (notification.Type == Library.DTO.NotificationType.Error) { return(InternalServerError(new Exception(notification.Message))); } return(Ok(new Library.DTO.ReturnData <DTO.WarehouseCIMng.WarehouseCI>() { Data = dtoItem, Message = notification })); }
public void DTO2DB_WarehouseCI(DTO.WarehouseCIMng.WarehouseCI dtoItem, ref WarehouseCI dbItem) { /* * MAP & CHECK WarehouseCIDetail DELETED */ List <WarehouseCIDetail> ItemNeedDelete_Detail = new List <WarehouseCIDetail>(); if (dtoItem.WarehouseCIDetails != null) { //CHECK foreach (WarehouseCIDetail dbDetail in dbItem.WarehouseCIDetail.Where(o => !dtoItem.WarehouseCIDetails.Select(s => s.WarehouseCIDetailID).Contains(o.WarehouseCIDetailID))) { ItemNeedDelete_Detail.Add(dbDetail); } foreach (WarehouseCIDetail dbDetail in ItemNeedDelete_Detail) { dbItem.WarehouseCIDetail.Remove(dbDetail); } //MAP foreach (DTO.WarehouseCIMng.WarehouseCIDetail dtoDetail in dtoItem.WarehouseCIDetails) { WarehouseCIDetail dbDetail; if (dtoDetail.WarehouseCIDetailID < 0) { dbDetail = new WarehouseCIDetail(); dbItem.WarehouseCIDetail.Add(dbDetail); } else { dbDetail = dbItem.WarehouseCIDetail.FirstOrDefault(o => o.WarehouseCIDetailID == dtoDetail.WarehouseCIDetailID); } if (dbDetail != null) { AutoMapper.Mapper.Map <DTO.WarehouseCIMng.WarehouseCIDetail, WarehouseCIDetail>(dtoDetail, dbDetail); } } } /* * MAP & CHECK WarehouseCIExtDetail DELETED */ List <WarehouseCIExtDetail> ItemNeedDelete_ExtDetail = new List <WarehouseCIExtDetail>(); if (dtoItem.WarehouseCIExtDetails != null) { //CHECK foreach (WarehouseCIExtDetail dbDetail in dbItem.WarehouseCIExtDetail.Where(o => !dtoItem.WarehouseCIExtDetails.Select(s => s.WarehouseCIExtDetailID).Contains(o.WarehouseCIExtDetailID))) { ItemNeedDelete_ExtDetail.Add(dbDetail); } foreach (WarehouseCIExtDetail dbDetail in ItemNeedDelete_ExtDetail) { dbItem.WarehouseCIExtDetail.Remove(dbDetail); } //MAP foreach (DTO.WarehouseCIMng.WarehouseCIExtDetail dtoDetail in dtoItem.WarehouseCIExtDetails) { WarehouseCIExtDetail dbDetail; if (dtoDetail.WarehouseCIExtDetailID < 0) { dbDetail = new WarehouseCIExtDetail(); dbItem.WarehouseCIExtDetail.Add(dbDetail); } else { dbDetail = dbItem.WarehouseCIExtDetail.FirstOrDefault(o => o.WarehouseCIExtDetailID == dtoDetail.WarehouseCIExtDetailID); } if (dbDetail != null) { AutoMapper.Mapper.Map <DTO.WarehouseCIMng.WarehouseCIExtDetail, WarehouseCIExtDetail>(dtoDetail, dbDetail); } } } if (!string.IsNullOrEmpty(dtoItem.IssuedDateFormated)) { dtoItem.IssuedDate = DateTime.ParseExact(dtoItem.IssuedDateFormated, "d", new System.Globalization.CultureInfo("vi-VN")); } AutoMapper.Mapper.Map <DTO.WarehouseCIMng.WarehouseCI, WarehouseCI>(dtoItem, dbItem); }