Exemplo n.º 1
0
        //[HttpPost]
        //public ActionResult Requisitions(IList<SelectFromGrid> input)
        //{

        //    var requisionIds = (from item in input where (item.IsSelected !=null ?((string[])item.IsSelected)[0]: "off")=="on"    select item.Number).ToList();
        //    var req = new List<List<int>>();
        //    req.Add(requisionIds);
        //    return CreateTransportRequisition(req);

        //}

        public ActionResult CreateTransportRequisition(int regionId)
        {
            try

            {
                var requisitions            = _reliefRequisitionService.FindBy(t => t.RegionID == regionId && t.Status == (int)ReliefRequisitionStatus.SiPcAllocationApproved);
                var programs                = (from item in requisitions select item.ProgramID).Distinct().ToList();
                var requisitionToDispatches = new List <List <int> >();
                var currentUser             = UserAccountHelper.GetUser(User.Identity.Name).UserProfileID;
                foreach (var program in programs)
                {
                    var requisitionToDispatche =
                        (from itm in requisitions where itm.ProgramID == program select itm.RequisitionID).ToList();
                    requisitionToDispatches.Add(requisitionToDispatche);
                }
                _transportRequisitionService.CreateTransportRequisition(requisitionToDispatches, currentUser);

                return(RedirectToAction("Index", "TransportRequisition"));//,new {id=(int)TransportRequisitionStatus.Draft});
            }
            catch (Exception exception)
            {
                var log = new Logger();
                log.LogAllErrorsMesseges(exception, _log);
                ModelState.AddModelError("", exception.Message);

                return(RedirectToAction("Main", "DispatchAllocation"));

                throw;
            }
        }