public ActionResult Create(int qcID = 0)
        {
            if (qcID == 0)
            {
                SetResponseMesssage(ActionTypeMessage.Error, General.ResponseMessageFailNoId);
                return(RedirectToAction("Index", "RawMaterialQC"));
            }
            using (RawMaterialQCRedHoldService rhSvc = new RawMaterialQCRedHoldService())
            {
                var dto = rhSvc.GetByQC(qcID);
                if (dto != null)
                {
                    return(RedirectToAction("Edit", new { id = dto.Id }));
                }
            }
            RawMaterialQCRedHoldViewModel model = new RawMaterialQCRedHoldViewModel();

            model.RawMaterialQCId = qcID;

            using (RawMaterialsQcService svc = new RawMaterialsQcService())
            {
                RawMaterialQcDto qcDto = svc.Get(qcID);
                model.RawMaterialReceivedId = qcDto.RawMaterialReceivedId;
                using (RawMaterialReceivedService receiveSvc = new RawMaterialReceivedService())
                {
                    RawMaterialReceivedDto receivedDto = receiveSvc.Get(qcDto.RawMaterialReceivedId);
                    model.BoxCarTested            = receivedDto.LotNumber;
                    model.RawMaterialReceived     = receivedDto.RawMaterialCode;
                    ViewBag.RawMaterialReceivedID = new SelectList(receiveSvc.GetAll(), "ID", "RawMaterialID");
                }
            }
            PrepareSelectLists();
            return(View(model));
        }
 public ActionResult Edit(RawMaterialQCRedHoldViewModel viewModel)
 {
     try
     {
         using (RawMaterialQCRedHoldService svc = new RawMaterialQCRedHoldService())
         {
             var dto = svc.Get(viewModel.Id);
             dto              = AutoMapper.Mapper.Map <RawMaterialQCRedHoldViewModel, RawMaterialQcRedHoldDto>(viewModel, dto);
             dto.ModifiedBy   = CurrentUser;
             dto.LastModified = DateTime.Now;
             svc.Update(dto);
             SetResponseMesssage(ActionTypeMessage.SuccessfulSave);
         }
     }
     catch (Exception ex)
     {
         SetResponseMesssage(ActionTypeMessage.FailedSave);
     }
     finally
     {
         using (RawMaterialReceivedService svc = new RawMaterialReceivedService())
         {
             ViewBag.RawMaterialReceivedID = new SelectList(svc.GetAll(), "ID", "RawMaterialID");
         }
     }
     PrepareSelectLists();
     return(View(viewModel));
 }
        public ActionResult Edit(int id = 0)
        {
            if (id == 0)
            {
                SetResponseMesssage(ActionTypeMessage.Error, General.ResponseMessageFailNoId);
                return(RedirectToAction("Index", "RawMaterialQC"));
            }

            RawMaterialQCRedHoldViewModel model = null;

            using (RawMaterialQCRedHoldService svc = new RawMaterialQCRedHoldService())
            {
                var dto = svc.Get(id);
                model = AutoMapper.Mapper.Map <RawMaterialQcRedHoldDto, RawMaterialQCRedHoldViewModel>(dto);
            }
            PrepareSelectLists();
            return(View(model ?? new RawMaterialQCRedHoldViewModel()));
        }
        public ActionResult Create(
            [Bind(Include = "Id,RawMaterialQCId,PlantId,RawMaterialReceivedId,FailPropertyId,HoldLotId,QCTechId,LeadOperatorId,SupervisorId,ManagerId,RedDate,Zone,RedComments,RedCorrectionAction,HoldDate,HoldComments,ManagerDate,ManagerComments,PrimeBoxCar,PrimeUOM,ReworkBoxCar,ReworkUOM,ScrapBoxCar,ScrapUOM,DateEntered,EnteredBy,LastModified,ModifiedBy")] RawMaterialQCRedHoldViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    //map objects for database
                    TPO.Domain.DTO.RawMaterialQCRedHoldDTO dto = MapRawMaterialQCRedHoldViewModeltoDTO(viewModel);
                    //update object records

                    dto.ModifiedBy   = CurrentUser;
                    dto.EnteredBy    = CurrentUser;
                    dto.LastModified = DateTime.Now;
                    dto.DateEntered  = DateTime.Now;

                    //save item, get item ID back
                    int itemId = RawMaterialQCRedHoldRepo.Add(dto);

                    //if item ID is valid redirect to edit page.
                    if (itemId > 0)
                    {
                        TempData["ActionMessage"] =
                            MessageRepository.GetStringValue(MessageKeys.ResponseMessageSuccessSave);
                        TempData["ActionMessageType"] = MessageRepository.GetStringValue(MessageKeys.ResponseTypeSuccess);
                        return(RedirectToAction("Edit", "RawMaterialQCRedHold", new { ID = itemId }));
                    }
                }
                catch (Exception ex)
                {
                    //ViewBag.ExceptionMessage = ex.Message;
                    //return View(viewModel);
                    TempData["ActionMessage"]     = MessageRepository.GetStringValue(MessageKeys.ResponseMessageFailSave);
                    TempData["ActionMessageType"] = MessageRepository.GetStringValue(MessageKeys.ResponseTypeError);
                }
                finally
                {
                    PrepareSelectLists();

                    ViewBag.RawMaterialReceivedID = new SelectList(db.RawMaterialReceiveds, "ID", "RawMaterialID");
                }
            }
            return(View(viewModel));
        }
        public ActionResult Edit(
            [Bind(Include = "Id,RawMaterialQCId,PlantId,RawMaterialReceivedId,FailPropertyId,HoldLotId,QCTechId,LeadOperatorId,SupervisorId,ManagerId,RedDate,Zone,RedComments,RedCorrectionAction,HoldDate,HoldComments,ManagerDate,ManagerComments,PrimeBoxCar,PrimeUOM,ReworkBoxCar,ReworkUOM,ScrapBoxCar,ScrapUOM,DateEntered,EnteredBy,LastModified,ModifiedBy")] RawMaterialQCRedHoldViewModel viewModel)
        {
            ViewBag.SuccessMessage = "";
            if (ModelState.IsValid)
            {
                try
                {
                    //map objects for database
                    TPO.Domain.DTO.RawMaterialQCRedHoldDTO dto = MapRawMaterialQCRedHoldViewModeltoDTO(viewModel);
                    //update object records
                    dto.EnteredBy    = dto.EnteredBy ?? CurrentUser;
                    dto.DateEntered  = dto.DateEntered ?? DateTime.Now;
                    dto.ModifiedBy   = CurrentUser;
                    dto.LastModified = DateTime.Now;
                    //save item, get item ID back
                    RawMaterialQCRedHoldRepo.Update(dto);
                    TempData["ActionMessage"]     = MessageRepository.GetStringValue(MessageKeys.ResponseMessageSuccessSave);
                    TempData["ActionMessageType"] = MessageRepository.GetStringValue(MessageKeys.ResponseTypeSuccess);
                    //ViewBag.SuccessMessage = "Save completed successfully.";
                }
                catch (Exception ex)
                {
                    ViewBag.ExceptionMessage      = ex.Message;
                    TempData["ActionMessage"]     = MessageRepository.GetStringValue(MessageKeys.ResponseMessageFailSave);
                    TempData["ActionMessageType"] = MessageRepository.GetStringValue(MessageKeys.ResponseTypeError);
                    //return View(viewModel);
                }
                finally
                {
                    ViewBag.RawMaterialReceivedID = new SelectList(db.RawMaterialReceiveds, "ID", "RawMaterialID");
                }
            }
            else
            {
                ModelState.AddModelError(string.Empty, "Please enter required fields.");
            }

            PrepareSelectLists();
            GetQcFormDetail(ref viewModel);
            return(View(viewModel));
        }
        public ActionResult Create(RawMaterialQCRedHoldViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    //separate view model data into dtos

                    //var msrv = new MessageService();
                    using (var rhsrv = new RawMaterialQCRedHoldService())
                    {
                        var dto = AutoMapper.Mapper.Map <RawMaterialQCRedHoldViewModel, RawMaterialQcRedHoldDto>(viewModel);
                        dto.PlantId      = CurrentPlantId;
                        dto.EnteredBy    = CurrentUser;
                        dto.DateEntered  = DateTime.Now;
                        dto.ModifiedBy   = CurrentUser;
                        dto.LastModified = DateTime.Now;

                        //save item, get item ID back
                        int itemId = rhsrv.Add(dto);

                        //if item ID is valid redirect to edit page.
                        if (itemId > 0)
                        {
                            SetResponseMesssage(ActionTypeMessage.SuccessfulSave);
                            return(RedirectToAction("Edit", "RawMaterialQCRedHold", new { ID = itemId }));
                        }
                    }
                }
                catch (Exception ex)
                {
                    SetResponseMesssage(ActionTypeMessage.FailedSave);
                }
                finally
                {
                    PrepareSelectLists();
                    RawMaterialReceivedService rmsrv = new RawMaterialReceivedService();
                    ViewBag.RawMaterialReceivedID = new SelectList(rmsrv.GetAll(), "ID", "RawMaterialID");
                }
            }
            return(View(viewModel));
        }
        private RawMaterialQCRedHoldDTO MapRawMaterialQCRedHoldViewModeltoDTO(RawMaterialQCRedHoldViewModel vm)
        {
            var dto = new RawMaterialQCRedHoldDTO
            {
                ID = vm.Id,
                RawMaterialQCID       = vm.RawMaterialQCId,
                PlantID               = vm.PlantId,
                RawMaterialReceivedID = vm.RawMaterialReceivedId,
                QCTechID              = vm.QCTechId,
                SupervisorID          = vm.SupervisorId,
                LeadOperatorID        = vm.LeadOperatorId,
                RedDate               = vm.RedDate,
                FailPropertyID        = vm.FailPropertyId,
                Zone                = vm.Zone,
                RedComments         = vm.RedComments,
                RedCorrectionAction = vm.RedCorrectionAction,
                HoldDate            = vm.HoldDate,
                HoldLotNumber       = vm.HoldLotNumber,
                HoldComments        = vm.HoldComments,
                ManagerID           = vm.ManagerID,
                ManagerDate         = vm.ManagerDate,
                ManagerComments     = vm.ManagerComments,
                PrimeBoxCar         = vm.PrimeBoxCar,
                PrimeUOM            = vm.PrimeUOM,
                ReworkBoxCar        = vm.ReworkBoxCar,
                ReworkUOM           = vm.ReworkUOM,
                ScrapBoxCar         = vm.ScrapBoxCar,
                ScrapUOM            = vm.ScrapUOM,
                DateEntered         = vm.DateEntered,
                EnteredBy           = vm.EnteredBy,
                LastModified        = vm.LastModified,
                ModifiedBy          = vm.ModifiedBy
            };

            return(dto);
        }
        private RawMaterialQCRedHoldViewModel MapRawMaterialQCRedHoldDTOtoViewModel(RawMaterialQCRedHoldDTO dto)
        {
            var vm = new RawMaterialQCRedHoldViewModel
            {
                Id = dto.ID,
                RawMaterialQCId       = dto.RawMaterialQCID,
                PlantId               = dto.PlantID,
                RawMaterialReceivedId = dto.RawMaterialReceivedID,
                QCTechId              = dto.QCTechID,
                SupervisorId          = dto.SupervisorID,
                LeadOperatorId        = dto.LeadOperatorID,
                RedDate               = dto.RedDate,
                FailPropertyId        = dto.FailPropertyID,
                Zone                = dto.Zone,
                RedComments         = dto.RedComments,
                RedCorrectionAction = dto.RedCorrectionAction,
                HoldDate            = dto.HoldDate,
                HoldLotNumber       = dto.HoldLotNumber,
                HoldComments        = dto.HoldComments,
                ManagerID           = dto.ManagerID,
                ManagerDate         = dto.ManagerDate,
                ManagerComments     = dto.ManagerComments,
                PrimeBoxCar         = dto.PrimeBoxCar,
                PrimeUOM            = dto.PrimeUOM,
                ReworkBoxCar        = dto.ReworkBoxCar,
                ReworkUOM           = dto.ReworkUOM,
                ScrapBoxCar         = dto.ScrapBoxCar,
                ScrapUOM            = dto.ScrapUOM,
                DateEntered         = dto.DateEntered,
                EnteredBy           = dto.EnteredBy,
                LastModified        = dto.LastModified,
                ModifiedBy          = dto.ModifiedBy
            };

            return(vm);
        }