public DTO.PackingListMng.PackingList DB2DTO_PackingList(PackingListMng_PackingList_View dbItem)
        {
            DTO.PackingListMng.PackingList dtoItem = AutoMapper.Mapper.Map <PackingListMng_PackingList_View, DTO.PackingListMng.PackingList>(dbItem);

            /*
             *  FORMAT FIELDS DATETIME
             */
            if (dbItem.ConcurrencyFlag != null)
            {
                dtoItem.ConcurrencyFlag_String = Convert.ToBase64String(dbItem.ConcurrencyFlag);
            }

            if (dbItem.PackingListDate.HasValue)
            {
                dtoItem.PackingListDateFormated = dbItem.PackingListDate.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);
        }
Exemple #2
0
        public IHttpActionResult Update(int id, DTO.PackingListMng.PackingList 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.PackingListMng.PackingList>(dtoItem, out notification))
            {
                return(Ok(new Library.DTO.ReturnData <DTO.PackingListMng.PackingList>()
                {
                    Data = dtoItem, Message = notification
                }));
            }

            // continue processing
            BLL.PackingListMng bll = new BLL.PackingListMng();
            bll.UpdateData(id, ref dtoItem, ControllerContext.GetAuthUserId(), out notification);


            return(Ok(new Library.DTO.ReturnData <DTO.PackingListMng.PackingList>()
            {
                Data = dtoItem, Message = notification
            }));
        }
 public DTO.PackingListMng.PackingList DB2DTO_InitInfo(PackingListMng_InitInfo_View dbItem)
 {
     DTO.PackingListMng.PackingList dtoItem = AutoMapper.Mapper.Map <PackingListMng_InitInfo_View, DTO.PackingListMng.PackingList>(dbItem);
     return(dtoItem);
 }
        public void DTO2DB_PackingList(DTO.PackingListMng.PackingList dtoItem, ref PackingList dbItem)
        {
            /*
             * MAP & CHECK PackingListDetail
             */
            List <PackingListDetail> ItemNeedDelete_Detail = new List <PackingListDetail>();

            if (dtoItem.PackingListDetails != null)
            {
                //CHECK
                foreach (PackingListDetail dbDetail in dbItem.PackingListDetail.Where(o => !dtoItem.PackingListDetails.Select(s => s.PackingListDetailID).Contains(o.PackingListDetailID)))
                {
                    ItemNeedDelete_Detail.Add(dbDetail);
                }
                foreach (PackingListDetail dbDetail in ItemNeedDelete_Detail)
                {
                    dbItem.PackingListDetail.Remove(dbDetail);
                }
                //MAP
                foreach (DTO.PackingListMng.PackingListDetail dtoDetail in dtoItem.PackingListDetails)
                {
                    PackingListDetail dbDetail;
                    if (dtoDetail.PackingListDetailID < 0)
                    {
                        dbDetail = new PackingListDetail();
                        dbItem.PackingListDetail.Add(dbDetail);
                    }
                    else
                    {
                        dbDetail = dbItem.PackingListDetail.FirstOrDefault(o => o.PackingListDetailID == dtoDetail.PackingListDetailID);
                    }

                    if (dbDetail != null)
                    {
                        AutoMapper.Mapper.Map <DTO.PackingListMng.PackingListDetail, PackingListDetail>(dtoDetail, dbDetail);
                    }
                }
            }

            /*
             * MAP & CHECK PackingListDetail
             */
            List <PackingListSparepartDetail> tobe_delete_sparepart = new List <PackingListSparepartDetail>();

            if (dtoItem.PackingListDetails != null)
            {
                //CHECK
                foreach (PackingListSparepartDetail dbDetail in dbItem.PackingListSparepartDetail.Where(o => !dtoItem.PackingListSparepartDetails.Select(s => s.PackingListSparepartDetailID).Contains(o.PackingListSparepartDetailID)))
                {
                    tobe_delete_sparepart.Add(dbDetail);
                }
                foreach (PackingListSparepartDetail dbDetail in tobe_delete_sparepart)
                {
                    dbItem.PackingListSparepartDetail.Remove(dbDetail);
                }
                //MAP
                foreach (DTO.PackingListMng.PackingListSparepartDetail dtoDetail in dtoItem.PackingListSparepartDetails)
                {
                    PackingListSparepartDetail dbDetail;
                    if (dtoDetail.PackingListSparepartDetailID < 0)
                    {
                        dbDetail = new PackingListSparepartDetail();
                        dbItem.PackingListSparepartDetail.Add(dbDetail);
                    }
                    else
                    {
                        dbDetail = dbItem.PackingListSparepartDetail.FirstOrDefault(o => o.PackingListSparepartDetailID == dtoDetail.PackingListSparepartDetailID);
                    }

                    if (dbDetail != null)
                    {
                        AutoMapper.Mapper.Map <DTO.PackingListMng.PackingListSparepartDetail, PackingListSparepartDetail>(dtoDetail, dbDetail);
                    }
                }
            }

            /*
             * MAP & CHECK PackingListDetailExtend
             */
            List <PackingListDetailExtend> ItemNeedDelete_DetailExt = new List <PackingListDetailExtend>();

            if (dtoItem.PackingListDetailExtends != null)
            {
                //CHECK
                foreach (PackingListDetailExtend dbDetailExt in dbItem.PackingListDetailExtend.Where(o => !dtoItem.PackingListDetailExtends.Select(s => s.PackingListDetailExtendID).Contains(o.PackingListDetailExtendID)))
                {
                    ItemNeedDelete_DetailExt.Add(dbDetailExt);
                }
                foreach (PackingListDetailExtend dbDetailExt in ItemNeedDelete_DetailExt)
                {
                    dbItem.PackingListDetailExtend.Remove(dbDetailExt);
                }
                //MAP
                foreach (DTO.PackingListMng.PackingListDetailExtend dtoDetailExt in dtoItem.PackingListDetailExtends)
                {
                    PackingListDetailExtend dbDetailExt;
                    if (dtoDetailExt.PackingListDetailExtendID < 0)
                    {
                        dbDetailExt = new PackingListDetailExtend();
                        dbItem.PackingListDetailExtend.Add(dbDetailExt);
                    }
                    else
                    {
                        dbDetailExt = dbItem.PackingListDetailExtend.FirstOrDefault(o => o.PackingListDetailExtendID == dtoDetailExt.PackingListDetailExtendID);
                    }

                    if (dbDetailExt != null)
                    {
                        AutoMapper.Mapper.Map <DTO.PackingListMng.PackingListDetailExtend, PackingListDetailExtend>(dtoDetailExt, dbDetailExt);
                    }
                }
            }

            if (!string.IsNullOrEmpty(dtoItem.PackingListDateFormated))
            {
                dtoItem.PackingListDate = dtoItem.PackingListDateFormated.ConvertStringToDateTime();
            }

            AutoMapper.Mapper.Map <DTO.PackingListMng.PackingList, PackingList>(dtoItem, dbItem);
        }