Пример #1
0
        //TODO: is this method needed? do business rules allow deletion of these records?
        // GET: /RawMaterialSpecificGravityDetail/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                TempData["ActionMessage"]     = MessageRepository.GetStringValue(MessageKeys.ResponseMessageFailNoId);
                TempData["ActionMessageType"] = MessageRepository.GetStringValue(MessageKeys.ResponseTypeError);
                return(RedirectToAction("Index", "RawMaterialQC"));
                //return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            var specificGravityDto = repository.GetByID(id.Value);

            if (specificGravityDto != null)
            {
                RawMaterialQCSpecificGravityViewModel viewModel = MapDtoToViewModel(specificGravityDto);

                var userBL = new TPO.BL.Security.User();
                ViewBag.QCTech = new SelectList(userBL.GetQCTechUsers(), "ID", "FullName");

                return(View(viewModel));
            }
            TempData["ActionMessage"]     = MessageRepository.GetStringValue(MessageKeys.ResponseMessageFailNoRecord);
            TempData["ActionMessageType"] = MessageRepository.GetStringValue(MessageKeys.ResponseTypeError);
            return(RedirectToAction("Index", "RawMaterialQC"));
            //return HttpNotFound();
        }
        //[HttpPost]
        //[ChildActionOnly]
        //public ActionResult UpdateQCDetail(TPO.Model.RawMaterials.RawMaterialQCModel model)
        //{
        //    TPO.BL.RawMaterials.RawMaterialQC rmBL = new TPO.BL.RawMaterials.RawMaterialQC();
        //    rmBL.UpdateRawMaterialQCModel(model);
        //    return PartialView("_QCDetail", model);
        //}

        #endregion

        private RawMaterialQCSpecificGravityViewModel MapViewModelFromDTO(RawMaterialQCSpecificGravityDTO dto)
        {
            var retVal = new RawMaterialQCSpecificGravityViewModel
            {
                AverageGravity = dto.AverageGravity,
                DenIso         = dto.DenIso,
                EnteredBy      = dto.EnteredBy,
                ID             = dto.ID,
                LabTechUserID  =
                    dto.LabTechUserID.HasValue
                        ? dto.LabTechUserID.Value.ToString(CultureInfo.InvariantCulture)
                        : string.Empty,
                ModifiedBy         = dto.ModifiedBy,
                RawMaterialCode    = dto.RawMaterialCode,
                RawMaterialLotCode = dto.RawMaterialLotCode,
                RawMaterialQCId    = dto.RawMaterialQCID,
                Details            = new List <RawMaterialQCSpecificGravityDetailViewModel>()
            };

            if (dto.LastModified.HasValue)
            {
                retVal.LastModified = dto.LastModified.Value;
            }
            if (dto.DateEntered.HasValue)
            {
                retVal.DateEntered = dto.DateEntered.Value;
            }

            foreach (var rawMaterialQCSpecificGravityDetailDTO in dto.RawMaterialSpecificGravityDetails)
            {
                var detail = new RawMaterialQCSpecificGravityDetailViewModel
                {
                    Id = rawMaterialQCSpecificGravityDetailDTO.ID,
                    rawMaterialQCSpecificGravityId = rawMaterialQCSpecificGravityDetailDTO.RawMaterialSpecGravID,
                    Order      = rawMaterialQCSpecificGravityDetailDTO.Order,
                    Submerged  = rawMaterialQCSpecificGravityDetailDTO.Submerged,
                    Value      = rawMaterialQCSpecificGravityDetailDTO.Value,
                    EnteredBy  = rawMaterialQCSpecificGravityDetailDTO.EnteredBy,
                    ModifiedBy = rawMaterialQCSpecificGravityDetailDTO.ModifiedBy,
                };
                if (rawMaterialQCSpecificGravityDetailDTO.DateEntered.HasValue)
                {
                    detail.DateEntered = rawMaterialQCSpecificGravityDetailDTO.DateEntered.Value;
                }
                if (rawMaterialQCSpecificGravityDetailDTO.LastModified.HasValue)
                {
                    detail.LastModified = rawMaterialQCSpecificGravityDetailDTO.LastModified.Value;
                }
            }

            return(retVal);
        }
Пример #3
0
        //TODO: move to common
        public RawMaterialQCSpecificGravityDTO MapToDto(RawMaterialQCSpecificGravityViewModel viewModel)
        {
            var retVal = new RawMaterialQCSpecificGravityDTO
            {
                ID = viewModel.ID,
                RawMaterialQCID    = viewModel.RawMaterialQCId,
                DenIso             = viewModel.DenIso,
                EnteredBy          = viewModel.EnteredBy,
                RawMaterialLotCode = viewModel.RawMaterialLotCode,
                RawMaterialCode    = viewModel.RawMaterialCode,
                AverageGravity     = viewModel.AverageGravity,
                DateEntered        = viewModel.DateEntered > DateTime.MinValue ? viewModel.DateEntered : DateTime.Now,
                LastModified       = viewModel.LastModified > DateTime.MinValue ? viewModel.LastModified : DateTime.Now
            };

            int LabTechId;

            if (int.TryParse(viewModel.LabTechUserID, out LabTechId))
            {
                retVal.LabTechUserID = LabTechId;
            }
            retVal.ModifiedBy = viewModel.ModifiedBy;

            retVal.RawMaterialSpecificGravityDetails = new List <RawMaterialQCSpecificGravityDetailDTO>();
            if (viewModel.Details != null)
            {
                foreach (var detail in viewModel.Details)
                {
                    retVal.RawMaterialSpecificGravityDetails.Add(
                        new RawMaterialQCSpecificGravityDetailDTO()
                    {
                        Order     = detail.Order,
                        Value     = detail.Value,
                        Submerged = detail.Submerged
                    });
                }
            }

            return(retVal);
        }
Пример #4
0
        //TODO: move to common
        public RawMaterialQCSpecificGravityViewModel MapDtoToViewModel(RawMaterialQCSpecificGravityDTO dto)
        {
            var model = new RawMaterialQCSpecificGravityViewModel
            {
                ID = dto.ID,
                RawMaterialQCId    = dto.RawMaterialQCID,
                DenIso             = dto.DenIso,
                EnteredBy          = dto.EnteredBy,
                RawMaterialLotCode = dto.RawMaterialLotCode,
                RawMaterialCode    = dto.RawMaterialCode,
                AverageGravity     = dto.AverageGravity,
                DateEntered        = dto.DateEntered ?? DateTime.Now,
                LastModified       = dto.LastModified ?? DateTime.Now,
                ModifiedBy         = dto.ModifiedBy
            };

            if (dto.LabTechUserID.HasValue)
            {
                model.LabTechUserID = dto.LabTechUserID.Value.ToString();
            }

            model.Details = new List <RawMaterialQCSpecificGravityDetailViewModel>();
            if (dto.RawMaterialSpecificGravityDetails != null)
            {
                foreach (
                    var detailLine in
                    dto.RawMaterialSpecificGravityDetails)
                {
                    model.Details.Add(
                        new RawMaterialQCSpecificGravityDetailViewModel()
                    {
                        Order     = detailLine.Order,
                        Value     = detailLine.Value,
                        Submerged = detailLine.Submerged
                    });
                }
            }

            return(model);
        }
Пример #5
0
        //[ValidateAntiForgeryToken]
        public ActionResult Edit(RawMaterialQCSpecificGravityViewModel model, double?dryWeight1, double?subWeight1, double?dryWeight2, double?subWeight2, double?dryWeight3, double?subWeight3, double?dryWeight4, double?subWeight4, double?dryWeight5, double?subWeight5)
        {
            if (ModelState.IsValid)
            {
                // Get Original and update dto
                var toUpdate = repository.GetByID(model.ID);
                toUpdate.DenIso         = model.DenIso;
                toUpdate.AverageGravity = model.AverageGravity;

                if (!string.IsNullOrWhiteSpace(model.LabTechUserID))
                {
                    toUpdate.LabTechUserID = int.Parse(model.LabTechUserID);
                }


                toUpdate.ModifiedBy         = string.IsNullOrWhiteSpace(model.ModifiedBy) ? toUpdate.ModifiedBy : model.ModifiedBy;
                toUpdate.RawMaterialCode    = model.RawMaterialCode;
                toUpdate.RawMaterialLotCode = model.RawMaterialLotCode;

                toUpdate.LastModified = DateTime.Now;

                toUpdate.RawMaterialQCID = model.RawMaterialQCId;

                foreach (var detail in toUpdate.RawMaterialSpecificGravityDetails)
                {
                    switch (detail.Order)
                    {
                    case 1:
                        if (detail.Submerged)
                        {
                            detail.Value = subWeight1 ?? 0.0;
                        }
                        else
                        {
                            detail.Value = dryWeight1 ?? 0.0;
                        }
                        break;

                    case 2:
                        if (detail.Submerged)
                        {
                            detail.Value = subWeight2 ?? 0.0;
                        }
                        else
                        {
                            detail.Value = dryWeight2 ?? 0.0;
                        }
                        break;

                    case 3:
                        if (detail.Submerged)
                        {
                            detail.Value = subWeight3 ?? 0.0;
                        }
                        else
                        {
                            detail.Value = dryWeight3 ?? 0.0;
                        }
                        break;

                    case 4:
                        if (detail.Submerged)
                        {
                            detail.Value = subWeight3 ?? 0.0;
                        }
                        else
                        {
                            detail.Value = dryWeight4 ?? 0.0;
                        }
                        break;

                    case 5:
                        if (detail.Submerged)
                        {
                            detail.Value = subWeight5 ?? 0.0;
                        }
                        else
                        {
                            detail.Value = dryWeight5 ?? 0.0;
                        }
                        break;
                    }
                }

                repository.Update(toUpdate);
                TempData["ActionMessage"]     = MessageRepository.GetStringValue(MessageKeys.ResponseMessageSuccessSave);
                TempData["ActionMessageType"] = MessageRepository.GetStringValue(MessageKeys.ResponseTypeSuccess);
                return(RedirectToAction("Edit", "RawMaterialQC", new { id = model.RawMaterialQCId }));
            }
            return(View(model));
        }