Example #1
0
        // GET: Crop/Details/5
        public JsonResult Delete(int id)
        {
            FarmLivestock deleteFarmlivestock = FarmLivestockService.GetById(id);

            deleteFarmlivestock.IsActive = false;

            FarmLivestockService.Update(deleteFarmlivestock);

            return(Json(new { Message = "Deleted" }, JsonRequestBehavior.AllowGet));
        }
Example #2
0
        public JsonResult Discontinue(int id)
        {
            FarmLivestock discontinueFarmlivestock = FarmLivestockService.GetById(id);

            discontinueFarmlivestock.IsAvailable = false;

            FarmLivestockService.Update(discontinueFarmlivestock);


            return(Json(new { Message = "Discontinued" }, JsonRequestBehavior.AllowGet));
        }
Example #3
0
        public ActionResult PriceDetail(int?farmLivestockId)
        {
            FarmLivestock fLivestock = FarmLivestockService.GetById(farmLivestockId);

            LivestockViewModel model = new LivestockViewModel
            {
                Photopath     = fLivestock.LivestockBreed.PhotoPath,
                Name          = fLivestock.LivestockBreed.Name,
                BreedNote     = fLivestock.LivestockBreed.Note,
                PriceDetail   = fLivestock.LivestockPrice,
                farmLivestock = fLivestock
            };

            return(View(model));
        }
Example #4
0
        public ActionResult EditLivestock(int id)
        {
            FarmLivestockViewModel model = null;
            var config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <CropPrice, PriceViewModel>();
            });

            IMapper iMapper = config.CreateMapper();

            FarmLivestock thisLivestock = FarmLivestockService.GetById(id);

            model = iMapper.Map <FarmLivestock, FarmLivestockViewModel>(thisLivestock);

            return(PartialView("_AddCropToFarmDialog", model));
        }
Example #5
0
        public ActionResult AddLivestockToFarm(FarmLivestockViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (model.Id > 0)
                {
                    FarmLivestock updateDetail = FarmLivestockService.GetById(model.Id);

                    updateDetail.Breed             = model.Breed;
                    updateDetail.LivestockId       = model.LivestockId;
                    updateDetail.Population        = model.Population;
                    updateDetail.QuantityAvailable = model.QuantityAvailable;
                    updateDetail.Weight            = model.Weight;
                    updateDetail.GenderId          = model.GenderId;
                    updateDetail.HitMarketDate     = model.HitMarketDate;
                    updateDetail.Other             = model.Other;
                    FarmLivestockService.Update(updateDetail);

                    return(RedirectToAction("Index", new { farmid = model.FarmId }));
                }
                var newFarmLivestock = new FarmLivestock
                {
                    Breed             = model.Breed,
                    FarmId            = model.FarmId,
                    GenderId          = model.GenderId,
                    Population        = model.Population,
                    QuantityAvailable = model.QuantityAvailable,
                    Weight            = model.Weight,
                    HitMarketDate     = model.HitMarketDate,
                    IsActive          = true,
                    DateCreated       = DateTime.Now,
                    Other             = model.Other,
                    LivestockId       = model.LivestockId,
                    IsAvailable       = false
                };

                FarmLivestockService.Create(newFarmLivestock);
                return(RedirectToAction("Index", new { farmid = model.FarmId }));
            }
            model.AnimalGenderDropDown = GetMyAnimalGender(model.GenderId);
            return(View(model));
        }
Example #6
0
        public ActionResult UpdateDetail(int id)
        {
            FarmLivestockViewModel model = null;
            var config = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <FarmLivestock, FarmLivestockViewModel>()
                .ReverseMap();
            });

            IMapper iMapper = config.CreateMapper();

            FarmLivestock thisLivestock = FarmLivestockService.GetById(id);

            model = iMapper.Map <FarmLivestock, FarmLivestockViewModel>(thisLivestock);
            //model.LivestockTypeId = thisLivestock.Livestock.LivestockTypeId.Value;
            //model.LivestockTypeDropDown = GetLivestockType(model.LivestockTypeId);
            model.LivestockDropDown    = GetLivestock(thisLivestock.LivestockId);
            model.AnimalGenderDropDown = GetAnimalGender(thisLivestock.GenderId);
            return(View("AddFarmLivestock", model));
        }
Example #7
0
        public ActionResult AddLivestockPrice(LivestockPriceViewModel model)
        {
            if (ModelState.IsValid)
            {
                var pricing = new LivestockPrice
                {
                    MeasurementId = model.MeasurementId,
                    UnitPrice     = model.UnitPrice,
                    DateCreated   = DateTime.Now
                };

                LivestockPrice livestockPrice = LivestockPriceService.Create(pricing);

                if (livestockPrice != null)
                {
                    FarmLivestock updateFarmLivestock = FarmLivestockService.Get().Where(x => x.FarmId == model.FarmId).FirstOrDefault();
                    updateFarmLivestock.LivestockPriceId = livestockPrice?.Id;
                }
                return(RedirectToAction("Index", "Livestock"));
            }
            return(RedirectToAction("Index", "Livestock"));
        }
Example #8
0
        public ActionResult AddLivestockToFarm(FarmLivestockViewModel model)
        {
            FarmLivestock checkFarmLivestock = LivestockAlreadyAdded(model.LivestockBreedId, model.FarmId);

            if (checkFarmLivestock != null)
            {
                model.AnimalGenderDropDown = GetMyAnimalGender(model.GenderId);

                return(RedirectToAction("AddFarmLivestock", new { farmId = model.FarmId, BreedId = model.LivestockBreedId }));
            }

            if (ModelState.IsValid)
            {
                var newFarmLivestock = new FarmLivestock
                {
                    LivestockBreedId  = model.LivestockBreedId,
                    FarmId            = model.FarmId,
                    GenderId          = model.GenderId,
                    Population        = model.Population,
                    QuantityAvailable = model.QuantityAvailable,
                    Weight            = model.Weight,
                    HitMarketDate     = model.HitMarketDate,
                    IsActive          = true,
                    DateCreated       = DateTime.Now
                };

                FarmLivestockService.Create(newFarmLivestock);
                return(RedirectToAction("AddFarmLivestock", new { farmId = model.FarmId, BreedId = model.LivestockBreedId }));
            }
            model.AnimalGenderDropDown = GetMyAnimalGender(model.GenderId);
            return(View(model));

            //Local method to get a ducplicate livestock already added to
            // a particular farm
            FarmLivestock LivestockAlreadyAdded(int breedId, int farmId) => FarmLivestockService.Get().Where(x => x.LivestockBreedId == breedId && x.FarmId == farmId).FirstOrDefault();
        }
        /// <summary>
        /// Write all the livestock enterprise information
        /// </summary>
        /// <param name="simulation"></param>
        public void WriteStockEnterprises(FarmLivestock livestock)
        {
            if (livestock.TradeLambCount > 0)
            {
                SetGenericCompStateVar("AnimalParams", "F4P_TRADE_BREED", DoQuote(livestock.TradeLambBreed));
                SetGenericCompStateVar("AnimalParams", "F4P_TRADE_COUNT", livestock.TradeLambCount.ToString());
                SetGenericCompStateVar("AnimalParams", "F4P_TRADE_BUY_ON", DoQuote(livestock.TradeLambBuyDay));
                SetGenericCompStateVar("AnimalParams", "F4P_TRADE_LAMB_SALE_WT", String.Format("{0, 2:f2}", livestock.TradeLambSaleWt));
            }
            // configure the breeding flocks
            string newXBreed = "";
            string prefix;
            for (int f = 0; f < livestock.Flocks.Count; f++)
            {
                string selfReplace = "TRUE";
                if (livestock.Flocks[f].SelfReplacing == false)
                {
                    selfReplace = "FALSE";
                }
                prefix = "F4P_FLOCK" + (f + 1).ToString();
                SetGenericCompStateVar("AnimalParams", prefix + "_SELF_REPLACING", selfReplace);
                if ((newXBreed.Length > 0) && (livestock.Flocks[f].Dam.Length == 0))
                    SetGenericCompStateVar("AnimalParams", prefix + "_DAM", DoQuote(newXBreed));    //use the crossbreed from the previous flock
                else
                    SetGenericCompStateVar("AnimalParams", prefix + "_DAM", DoQuote(livestock.Flocks[f].Dam));
                // ensure the self replacing flock has the correct breeds
                if (livestock.Flocks[f].SelfReplacing)
                    SetGenericCompStateVar("AnimalParams", prefix + "_SIRE", DoQuote(livestock.Flocks[f].Dam));
                else
                    SetGenericCompStateVar("AnimalParams", prefix + "_SIRE", DoQuote(livestock.Flocks[f].Sire));
                SetGenericCompStateVar("AnimalParams", prefix + "_EWES", livestock.Flocks[f].BreedingEweCount.ToString());
                SetGenericCompStateVar("AnimalParams", prefix + "_JOIN", DoQuote(livestock.Flocks[f].EweJoinDay));
                SetGenericCompStateVar("AnimalParams", prefix + "_LAMB_SALE_WT", String.Format("{0, 2:f2}", livestock.Flocks[f].LambSaleWt));
                SetGenericCompStateVar("AnimalParams", prefix + "_CULL_YRS", String.Format("{0, 2:f2}", livestock.Flocks[f].CastForAgeYears));
                //set the breed parameters for each flock
                if (f == 0)
                {
                    // the first flock params are used to set the params for the ewe breed
                    ConfigureBreed(livestock.Flocks[f].BreedParams, livestock.Flocks[f].Dam);
                }
                else if (f == 1)
                {
                    // the params for the second flock are used to set the params for the sire breed
                    // this is because the ewes are offspring from the first flock
                    ConfigureBreed(livestock.Flocks[f].BreedParams, livestock.Flocks[f].Sire);
                }

                if (livestock.Flocks[f].SelfReplacing)
                {
                    SetGenericCompStateVar("AnimalParams", prefix + "_OFFSPRING", DoQuote(livestock.Flocks[f].Dam));
                }
                else
                {
                    // other breed parameters for offspring
                    newXBreed = ConfigureOffspringBreeds(livestock.Flocks[f], newXBreed);
                    SetGenericCompStateVar("AnimalParams", prefix + "_OFFSPRING", DoQuote(newXBreed));
                }
            }
            SetGenericCompStateVar("AnimalParams", "F4P_SHEAR_DAY", DoQuote(livestock.ShearingDay));

            // these should only be for the breeding flock (see ausfarm_warooka)
            SetGenericCompStateVar("AnimalParams", "F4P_SUPP1", DoQuote(livestock.Supplement1));
            SetGenericCompStateVar("AnimalParams", "F4P_SUPP2", DoQuote(livestock.Supplement2));
            SetGenericCompStateVar("AnimalParams", "F4P_SUPP1_PROPN", String.Format("{0, 2:f2}", livestock.Supp1Propn));
            SetGenericCompStateVar("AnimalParams", "F4P_SUPP2_PROPN", String.Format("{0, 2:f2}", livestock.Supp2Propn));
        }