示例#1
0
        /// <summary>
        /// Add animal numbers to order
        /// </summary>
        public JsonResult AddDetail(string newAnimalNumbers, ColdWeightEntryDetailItem item)
        {
            var animalNumberList = new List <ColdWeightEntryDetailItem>();

            if (item.AnimalLabel.Id == 0 && item.AnimalLabel.Species != null)
            {
                //need to set default label
                var label = _animalLabelRepository.FindAll(x => x.Species.Id == item.AnimalLabel.Species.Id).FirstOrDefault();
                if (label != null)
                {
                    item.AnimalLabel.Id        = label.Id;
                    item.AnimalLabel.Name      = label.Name;
                    item.AnimalLabel.IsOrganic = label.IsOrganic;
                }
            }
            if (newAnimalNumbers != "")
            {
                animalNumberList = GetAnimalTrackingGridItems(newAnimalNumbers);
            }
            var animalNumbers = _coldWeightEntryService.AddDetail(animalNumberList, item);

            animalNumberList.AddRange(animalNumbers);

            return(Json(animalNumberList, JsonRequestBehavior.AllowGet));
        }
示例#2
0
        public ActionResult AnimalTrackingGrid(ColdWeightEntryDetailItem item)
        {
            var coldWeight = _coldWeightEntryRepository.GetByOrderId(item.OrderId);

            if (coldWeight == null || item.IsExist == false)
            {
                return(new EmptyResult());
            }

            return(GetAnimalGridPartial(coldWeight.TrackAnimalId, item));
        }
示例#3
0
        /// <summary>
        /// Remove one animal number to order
        /// </summary>
        public JsonResult RemoveDetail(ColdWeightEntryDetailItem item, string animalNumbers)
        {
            var success = _coldWeightEntryService.RemoveDetail(item);

            if (success)
            {
                this.ShowNotification(NotificationType.Success, "The number " + item.AnimalNumber + " has been removed");
            }

            var animalNumbersList = GetAnimalTrackingGridItems(animalNumbers);

            animalNumbersList.RemoveAll(c => c.AnimalNumber == item.AnimalNumber);

            return(Json(animalNumbersList, JsonRequestBehavior.AllowGet));
        }
        public bool RemoveDetail(ColdWeightEntryDetailItem coldWeightEntryDetailItem)
        {
            if (coldWeightEntryDetailItem.Id == 0)
            {
                return(false);
            }

            var coldWeightEntryDetail = _coldWeightEntryDetailRepository.Get(coldWeightEntryDetailItem.Id);

            if (coldWeightEntryDetail == null)
            {
                return(false);
            }

            _coldWeightEntryDetailRepository.Remove(coldWeightEntryDetail);
            _coldWeightEntryDetailRepository.Save();
            return(true);
        }
        //get base coldweight entry
        public ColdWeightEntryDetailItem GetColdWeightEntryDetail(int orderId)
        {
            var customerId      = _orderRepository.Get(orderId).CustomerId;
            var coldWeightEntry = _coldWeightEntryRepository.GetByOrderId(orderId);
            var qualitiesList   = new SelectList(_qualityGradeRepository.GetAll().Select(x => new QualityGrade()
            {
                Id   = x.Id,
                Name = x.Name
            }), "Id", "Name");
            int speciesId = 0;

            if (coldWeightEntry != null && coldWeightEntry.ColdWeightEntryDetails != null)
            {
                var coldWeightEntryDetail = coldWeightEntry.ColdWeightEntryDetails.FirstOrDefault();
                speciesId = coldWeightEntry != null && coldWeightEntry.ColdWeightEntryDetails.Any()
                    ? coldWeightEntryDetail.AnimalLabel.SpeciesId: 0;
            }
            var species =
                new List <SpeciesViewModel>(_speciesRepository.GetAll().Select(x => new SpeciesViewModel()
            {
                Id   = x.Id,
                Name = x.Name
            }));
            var speciesViewModel     = species.FirstOrDefault(x => { return(speciesId != 0 && x.Id == speciesId); });
            var coldweightDetailItem = new ColdWeightEntryDetailItem
            {
                AnimalLabelId = speciesViewModel != null ? speciesViewModel.Id: (int?)null,
                AnimalLabel   = new AnimalLabelsViewModel()
                {
                    Species = speciesViewModel
                },
                TrackAnimalBy     = coldWeightEntry != null ? coldWeightEntry.TrackAnimalId : TrackAnimal.Whole,
                OrderId           = orderId,
                IsExist           = coldWeightEntry != null && coldWeightEntry.ColdWeightEntryDetails.Any(),
                CustomerLocations = new SelectList(_orderDetailService.GetCustomerLocations(customerId), "CustomerLocationId", "CustomerLocationName"),
                SpeciesList       = new SelectList(species, "Id", "Name"),
                QualityGradeList  = qualitiesList
            };

            return(coldweightDetailItem);
        }
        public IEnumerable <ColdWeightEntryDetailItem> AddDetail(List <ColdWeightEntryDetailItem> array,
                                                                 ColdWeightEntryDetailItem item)
        {
            List <ColdWeightEntryDetailItem> coldWeightEntryDetailItems = new List <ColdWeightEntryDetailItem>();

            if (array != null)
            {
                var arrayNewAnimalNumbers = new List <int>();
                if (item.StartNumber >= item.EndNumber || item.EndNumber == null)
                {
                    arrayNewAnimalNumbers.Add(item.StartNumber.Value);
                }
                else
                {
                    for (int i = item.StartNumber.Value; i <= item.EndNumber; i++)
                    {
                        arrayNewAnimalNumbers.Add(i);
                    }
                }

                foreach (var coldWeightEntryDetailItem in array)
                {
                    if (arrayNewAnimalNumbers.Contains(Convert.ToInt32(coldWeightEntryDetailItem.AnimalNumber)))
                    {
                        arrayNewAnimalNumbers.Remove(Convert.ToInt32(coldWeightEntryDetailItem.AnimalNumber));
                    }
                }

                foreach (var arrayNewAnimalNumber in arrayNewAnimalNumbers)
                {
                    coldWeightEntryDetailItems.Add(new ColdWeightEntryDetailItem
                    {
                        AnimalNumber              = arrayNewAnimalNumber.ToString(),
                        IsOrganic                 = item.Organic,
                        FirstCustomer             = item.FirstCustomer,
                        SecondCustomer            = item.SecondCustomer,
                        ThirdCustomer             = item.ThirdCustomer,
                        FourthCustomer            = item.FourthCustomer,
                        TrackAnimalBy             = item.TrackAnimalBy,
                        AnimalLabel               = item.AnimalLabel,
                        QualityGrade              = item.QualityGrade,
                        TrackAnimalBySelectColumn = item.TrackAnimalBy
                    });
                }
            }
            else
            {
                if (item.StartNumber >= item.EndNumber)
                {
                    coldWeightEntryDetailItems.Add(new ColdWeightEntryDetailItem
                    {
                        AnimalNumber              = item.StartNumber.ToString(),
                        IsOrganic                 = item.Organic,
                        FirstCustomer             = item.FirstCustomer,
                        SecondCustomer            = item.SecondCustomer,
                        ThirdCustomer             = item.ThirdCustomer,
                        FourthCustomer            = item.FourthCustomer,
                        AnimalLabel               = item.AnimalLabel,
                        QualityGrade              = item.QualityGrade,
                        TrackAnimalBy             = item.TrackAnimalBy,
                        TrackAnimalBySelectColumn = item.TrackAnimalBy
                    });
                }
                else
                {
                    for (int i = item.StartNumber.Value; i < item.EndNumber; i++)
                    {
                        coldWeightEntryDetailItems.Add(new ColdWeightEntryDetailItem
                        {
                            AnimalNumber              = i.ToString(),
                            IsOrganic                 = item.Organic,
                            FirstCustomer             = item.FirstCustomer,
                            SecondCustomer            = item.SecondCustomer,
                            ThirdCustomer             = item.ThirdCustomer,
                            FourthCustomer            = item.FourthCustomer,
                            AnimalLabel               = item.AnimalLabel,
                            QualityGrade              = item.QualityGrade,
                            TrackAnimalBy             = item.TrackAnimalBy,
                            TrackAnimalBySelectColumn = item.TrackAnimalBy
                        });
                    }
                }
            }

            return(coldWeightEntryDetailItems);
        }
示例#7
0
        private PartialViewResult GetAnimalGridPartial(TrackAnimal trackAnimal, ColdWeightEntryDetailItem item)
        {
            ViewBag.CustomerLocations = GetCustomerLocationsByOrderId(item.OrderId);
            var animalLabels = new List <AnimalLabelsViewModel>();
            var labels       = _animalLabelRepository.FindAll(x => x.SpeciesId == item.AnimalLabel.Species.Id).ToList();

            foreach (var animalLabel in labels)
            {
                var label = new AnimalLabelsViewModel()
                {
                    Id      = animalLabel.Id,
                    Name    = animalLabel.Name,
                    Species = new SpeciesViewModel()
                    {
                        Name = animalLabel.Species.Name,
                        Id   = animalLabel.SpeciesId
                    }
                };
                animalLabels.Add(label);
            }
            if (animalLabels.Any())
            {
                item.AnimalLabel = animalLabels.FirstOrDefault();
            }
            ViewBag.AnimalLabels = animalLabels;
            var grades = _lookupService.GetQualityGrades().Select(x => new QualityGrade()
            {
                Id        = x.Id,
                Name      = x.Name,
                SortOrder = x.SortOrder
            });

            if (grades.Any())
            {
                ViewBag.QualityGrades = grades;
            }

            ViewBag.TrackAnimalByList = Enum
                                        .GetValues(typeof(TrackAnimal))
                                        .Cast <int>()
                                        .Select(i => new SelectListItem
            {
                Value = i.ToString(),
                Text  = Enum.GetName(typeof(TrackAnimal), i).GetTrackAnimailEnumDescription(i),
            }
                                                )
                                        .ToList();
            switch (trackAnimal)
            {
            case (TrackAnimal.Whole):
                return(PartialView("_AnimalTrackingGrid", item));

            case (TrackAnimal.Quarter):
                return(PartialView("_AnimalTrackingGridQuarters", item));

            case (TrackAnimal.Half):
                return(PartialView("_AnimalTrackingGridHalves", item));

            case (TrackAnimal.HalfAndTwoQuaters):
                return(PartialView("_AnimalTrakingGridHalfAndTwoQuaters", item));

            case (TrackAnimal.ThreeQuatersAndQuater):
                return(PartialView("_AnimalTrakingGridThreeQuatersAndQuater", item));

            default:
                return(new PartialViewResult());
            }
        }
示例#8
0
 public ActionResult GetAnimalTrackingGrid(ColdWeightEntryDetailItem cold)
 {
     return(GetAnimalGridPartial(cold.TrackAnimalBy, cold));
 }