Ejemplo n.º 1
0
        public ActionResult FieldCopy(FieldCopyViewModel fvm)
        {
            int numSel = 0;

            if (ModelState.IsValid)
            {
                foreach (var fld in fvm.fieldList)
                {
                    if (fld.fieldSelected)
                    {
                        List <FieldCrop> toCrops = _ud.GetFieldCrops(fld.fieldName);
                        foreach (var c in toCrops)
                        {
                            _ud.DeleteFieldCrop(fld.fieldName, c.id);
                        }

                        List <NutrientFertilizer> toFert = _ud.GetFieldNutrientsFertilizers(fld.fieldName);
                        foreach (var f in toFert)
                        {
                            _ud.DeleteFieldNutrientsFertilizer(fld.fieldName, f.id);
                        }

                        List <NutrientManure> toMan = _ud.GetFieldNutrientsManures(fld.fieldName);
                        foreach (var m in toMan)
                        {
                            _ud.DeleteFieldNutrientsManure(fld.fieldName, m.id);
                        }

                        List <NutrientOther> toOther = _ud.GetFieldNutrientsOthers(fld.fieldName);
                        foreach (var o in toOther)
                        {
                            _ud.DeleteFieldNutrientsOther(fld.fieldName, o.id);
                        }
                        List <FieldCrop> fromCrops = _ud.GetFieldCrops(fvm.fldName);
                        foreach (var c in fromCrops)
                        {
                            _ud.AddFieldCrop(fld.fieldName, c);
                        }

                        List <NutrientFertilizer> fromFert = _ud.GetFieldNutrientsFertilizers(fvm.fldName);
                        foreach (var f in fromFert)
                        {
                            _ud.AddFieldNutrientsFertilizer(fld.fieldName, f);
                        }

                        List <NutrientManure> fromMan = _ud.GetFieldNutrientsManures(fvm.fldName);
                        foreach (var m in fromMan)
                        {
                            _ud.AddFieldNutrientsManure(fld.fieldName, m);
                        }

                        List <NutrientOther> fromOther = _ud.GetFieldNutrientsOthers(fvm.fldName);
                        foreach (var o in fromOther)
                        {
                            _ud.AddFieldNutrientsOther(fld.fieldName, o);
                        }

                        numSel++;
                    }
                }

                if (numSel == 0)
                {
                    ModelState.AddModelError("", "No fields selected for copying of information.");
                    return(PartialView("FieldCopy", fvm));
                }

                return(Json(new { success = true, reload = true }));
            }
            return(PartialView("FieldCopy", fvm));
        }