Beispiel #1
0
        public ActionResult DistributeMaterialActive(int materialId)
        {
            var materialItem = materialActiveService.GetMaterialActiveById(materialId);

            if (materialItem != null)
            {
                var persons   = personService.GetAllPersons();
                var locations = locationPlaceService.GetAllLocationPlaces();
                var model     = new MaterialActiveDestributionModel(materialItem, persons, locations);
                return(View(model));
            }
            return(RedirectToAction("Distribution"));
        }
Beispiel #2
0
        public ActionResult DistributeMaterialActive(MaterialActiveDestributionModel model)
        {
            if (model.LocationPlaceId == 0)
            {
                ModelState.AddModelError("LocationPlaceId", "Необходимо указать Место использования");
            }
            if (!model.StartUseDate.HasValue)
            {
                ModelState.AddModelError("StartUseDate", "Необходимо указать дату начала использования");
            }

            if (ModelState.IsValid)
            {
                var distribMaterialActive = new MaterialActive
                {
                    Id              = model.Id,
                    StartUseDate    = model.StartUseDate,
                    OwnerPersonId   = model.OwnerPersonId,
                    LocationPlaceId = model.LocationPlaceId
                };
                var validation = materialActiveValidator.BeforeDistributionValidation(distribMaterialActive);

                if (validation.IsValid)
                {
                    materialActiveService.DistributeMaterialActive(distribMaterialActive);
                    materialActiveStatusHistoryService.SetStatusByMaterialId(distribMaterialActive.Id, StatusState.Warehouse, StatusState.Active, DateTime.Now, "Распределение МЦ");

                    return(Json(new { Status = "OK", Message = "", Action = "/MaterialActive/Distribution" }));
                }

                return(Json(new { Status = "ERROR", Message = validation.ValidationMessage }));
            }
            var htmlErrorMessage = string.Join(".</br>", ModelState.Values.SelectMany(v => v.Errors)
                                               .Select(e => e.ErrorMessage)) + ".";

            return(Json(new { Status = "ERROR", Message = htmlErrorMessage }));
        }