Exemple #1
0
        public ActionResult Editar(string id)
        {
            DraftLawBL oBL    = new DraftLawBL();
            int        pIntID = 0;

            int.TryParse(id, out pIntID);
            DraftLawViewModel       pDraftLawViewModel = oBL.Obtener(pIntID);
            SelectorBL              oSelectorBL        = new SelectorBL();
            List <SelectOptionItem> oCommissions       = oSelectorBL.CommissionsSelector();
            List <SelectListItem>   commissions        = Helper.ConstruirDropDownList <SelectOptionItem>(oCommissions, "Value", "Text", "", true, "", "");

            ViewBag.commissions = commissions;
            List <SelectOptionItem> oInterestAreas = oSelectorBL.InterestAreasSelector();
            List <SelectListItem>   interest_areas = Helper.ConstruirDropDownList <SelectOptionItem>(oInterestAreas, "Value", "Text", "", true, "", "");

            ViewBag.interest_areas = interest_areas;
            if (pDraftLawViewModel.date_presentation.HasValue)
            {
                pDraftLawViewModel.date_presentation_text = pDraftLawViewModel.date_presentation.Value.ToString("dd/MM/yyyy");
            }

            pDraftLawViewModel.period_closed = 1;
            if (pDraftLawViewModel.start_date <= DateTime.Today && pDraftLawViewModel.end_date >= DateTime.Today)
            {
                pDraftLawViewModel.period_closed = 0;
            }

            return(View(pDraftLawViewModel));
        }
Exemple #2
0
        public void Agregar(DraftLawViewModel pDraftLawViewModel)
        {
            draft_laws odraft_laws = new draft_laws
            {
                draft_law_id      = 0,
                draft_law_number  = pDraftLawViewModel.draft_law_number,
                title             = pDraftLawViewModel.title,
                author            = pDraftLawViewModel.author,
                origin_id         = pDraftLawViewModel.origin_id,
                date_presentation = pDraftLawViewModel.date_presentation,
                commission_id     = pDraftLawViewModel.commission_id,
                debate_speaker    = pDraftLawViewModel.debate_speaker,
                debate_speaker2   = pDraftLawViewModel.debate_speaker2,
                //status = pDraftLawViewModel.status, // corregir
                status_comment   = pDraftLawViewModel.status_comment,
                interest_area_id = pDraftLawViewModel.interest_area_id,
                initiative       = pDraftLawViewModel.initiative,
                summary          = pDraftLawViewModel.summary,
                link             = pDraftLawViewModel.link,
                date_created     = DateTime.Now,
                user_id_created  = pDraftLawViewModel.user_id_created
            };

            oRepositorio.Add(odraft_laws);
            oUnitOfWork.SaveChanges();
        }
Exemple #3
0
        public ActionResult Editar([Bind(Include = "draft_law_id,draft_law_number,title,author,origin,date_presentation,date_presentation_text,commission_id,debate_speaker,debate_speaker2,debate_speaker3,debate_speaker4,status,status_comment,interest_area_id,initiative,summary,link")] DraftLawViewModel pDraftLawViewModel)
        {
            // TODO: Add insert logic here
            pDraftLawViewModel.date_presentation = DateTime.ParseExact(pDraftLawViewModel.date_presentation_text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
            if (pDraftLawViewModel == null)
            {
                return(HttpNotFound());
            }
            DraftLawBL oDraftLawBL = new DraftLawBL();

            pDraftLawViewModel.user_id_modified = AuthorizeUserAttribute.UsuarioLogeado().user_id;
            oDraftLawBL.Modificar(pDraftLawViewModel);
            return(RedirectToAction("Index"));
        }
Exemple #4
0
        private static void AddDraftLaw(int user_id, DraftLawViewModel pDraftLawViewModel)
        {
            draft_laws odraft_laws = new draft_laws
            {
                draft_law_id      = 0,
                draft_law_number  = pDraftLawViewModel.draft_law_number,
                title             = pDraftLawViewModel.title,
                author            = pDraftLawViewModel.author,
                origin_id         = pDraftLawViewModel.origin_id,
                date_presentation = pDraftLawViewModel.date_presentation,
                commission_id     = pDraftLawViewModel.commission_id,
                debate_speaker    = pDraftLawViewModel.debate_speaker,
                debate_speaker2   = pDraftLawViewModel.debate_speaker2,
                debate_speaker3   = pDraftLawViewModel.debate_speaker3,
                debate_speaker4   = pDraftLawViewModel.debate_speaker4,
                status_id         = pDraftLawViewModel.draft_law_status_id,
                status_comment    = pDraftLawViewModel.status_comment,
                interest_area_id  = pDraftLawViewModel.interest_area_id,
                initiative        = pDraftLawViewModel.initiative,
                summary           = pDraftLawViewModel.summary,
                link            = pDraftLawViewModel.link,
                period_id       = pDraftLawViewModel.period_id,
                date_created    = DateTime.Now,
                user_id_created = user_id,
                notified        = false,
                active          = true,
            };

            odraft_laws = oRepositorio.Add(odraft_laws);

            foreach (int debate_user_id in pDraftLawViewModel.debate_speakers)
            {
                debate_speakers odebate_speakers = new debate_speakers
                {
                    user_id         = debate_user_id,
                    draft_law_id    = odraft_laws.draft_law_id,
                    date_created    = DateTime.Now,
                    user_id_created = user_id
                };
                oDebateSpeakerRepositorio.Add(odebate_speakers);
            }
        }
Exemple #5
0
        public JsonResult Eliminar(int id)
        {
            DraftLawBL        oDraftLawBL        = new DraftLawBL();
            DraftLawViewModel pDraftLawViewModel = oDraftLawBL.Obtener(id);

            var period_closed = 1;

            if (pDraftLawViewModel.start_date <= DateTime.Today && pDraftLawViewModel.end_date >= DateTime.Today)
            {
                period_closed = 0;
            }
            if (period_closed == 0)
            {
                oDraftLawBL.Eliminar(id);
            }

            return(Json(new
            {
                period_closed = period_closed,
                // this is what datatables wants sending back
                status = "1",
            }));
        }
Exemple #6
0
        public void Modificar(DraftLawViewModel pDraftLawViewModel)
        {
            draft_laws odraft_laws = oRepositorio.FindById(pDraftLawViewModel.draft_law_id);

            odraft_laws.title             = pDraftLawViewModel.title;
            odraft_laws.draft_law_number  = pDraftLawViewModel.draft_law_number;
            odraft_laws.author            = pDraftLawViewModel.author;
            odraft_laws.origin_id         = pDraftLawViewModel.origin_id;
            odraft_laws.date_presentation = pDraftLawViewModel.date_presentation;
            odraft_laws.commission_id     = pDraftLawViewModel.commission_id;
            odraft_laws.debate_speaker    = pDraftLawViewModel.debate_speaker;
            odraft_laws.debate_speaker2   = pDraftLawViewModel.debate_speaker2;
            //odraft_laws.status = pDraftLawViewModel.draft_laws_status.name;// corregir
            odraft_laws.status_comment   = pDraftLawViewModel.status_comment;
            odraft_laws.interest_area_id = pDraftLawViewModel.interest_area_id;
            odraft_laws.initiative       = pDraftLawViewModel.initiative;
            odraft_laws.summary          = pDraftLawViewModel.summary;
            odraft_laws.link             = pDraftLawViewModel.link;
            odraft_laws.user_id_modified = pDraftLawViewModel.user_id_modified;
            odraft_laws.date_modified    = DateTime.Now;
            oRepositorio.Update(odraft_laws);
            oUnitOfWork.SaveChanges();
        }
Exemple #7
0
        public JsonResult Crear([Bind(Include = "draft_law_id,draft_law_number,title,author,origin,date_presentation,date_presentation_text,commission_id,debate_speaker,debate_speaker2,debate_speaker3,debate_speaker4,status,status_comment,interest_area_id,initiative,summary,link")] DraftLawViewModel pDraftLawViewModel)
        {
            // TODO: Add insert logic here


            if (pDraftLawViewModel == null)
            {
                // return HttpNotFound();

                return(Json(new
                {
                    message_error = "Datos inavalidos",
                    status = "0",
                }));
            }
            pDraftLawViewModel.date_presentation = DateTime.ParseExact(pDraftLawViewModel.date_presentation_text, "dd/MM/yyyy", CultureInfo.InvariantCulture);
            pDraftLawViewModel.draft_law_id      = 0;

            pDraftLawViewModel.user_id_created = AuthorizeUserAttribute.UsuarioLogeado().user_id;

            pDraftLawViewModel.commission    = "";
            pDraftLawViewModel.interest_area = "";
            List <ImportError>       oErrores = null;
            DraftLawBL               oBL      = new DraftLawBL();
            List <DraftLawViewModel> lista    = new List <DraftLawViewModel>();

            lista.Add(pDraftLawViewModel);
            PeriodBL        oPeriodBL = new PeriodBL();
            PeriodViewModel oPeriod   = oPeriodBL.ObtenerVigente();

            oErrores = ValidarPeriodo(oPeriod, oErrores);
            if (oErrores.Count > 0)
            {
                return(Json(new { successfully = 0, errores = oErrores }));
            }

            if (VerificarPonentes(lista, out oErrores))
            {
                DraftLawBL               oDraftLawBL       = new DraftLawBL();
                CommissionBL             oCommissionBL     = new CommissionBL();
                InterestAreaBL           oInterestAreaBL   = new InterestAreaBL();
                DraftLawStatusBL         oDraftLawStatusBL = new DraftLawStatusBL();
                OriginBL                 oOriginBL         = new OriginBL();
                Dictionary <string, int> commisions        = new Dictionary <string, int>();
                Dictionary <string, int> origins           = oOriginBL.ObtenerDiccionarioPorNombre(lista.Select(a => a.origin).Distinct().ToList(), AuthorizeUserAttribute.UsuarioLogeado().user_id);
                Dictionary <string, int> interest_areas    = new Dictionary <string, int>();
                Dictionary <string, DraftLawStatusViewModel> draftlaw_status = oDraftLawStatusBL.ObtenerDiccionarioPorNombre(lista.Select(a => a.status).Distinct().ToList(), AuthorizeUserAttribute.UsuarioLogeado().user_id);

                oDraftLawBL.Import(oPeriod, lista, origins, commisions, interest_areas, draftlaw_status, AuthorizeUserAttribute.UsuarioLogeado().user_id);
                // NotificacionNuevoProyectoLey(lista);
            }


            // oBL.Agregar(pDraftLawViewModel);
            if (oErrores.Count == 0)
            {
                return(Json(new { successfully = 1 }));
            }
            else
            {
                return(Json(new { successfully = 0, errores = oErrores }));
            }

            // return RedirectToAction("Index");
        }
Exemple #8
0
        private List <DraftLawViewModel> ConvertirDatatable(DataTable dt, out List <ImportError> oErrores)
        {
            List <DraftLawViewModel> lista = new List <DraftLawViewModel>();

            oErrores = new List <ImportError>();
            List <string> erroresCabecera = new List <string>();


            ValidarCabecera(dt, out erroresCabecera);
            if (erroresCabecera.Count > 0)
            {
                oErrores.Add(new ImportError
                {
                    nroFila = 0,
                    errores = erroresCabecera,
                });
                return(lista);
            }
            int i = 2;

            foreach (DataRow row in dt.Rows)
            {
                DraftLawViewModel obj     = new DraftLawViewModel();
                List <string>     errores = new List <string>();

                obj.draft_law_number = Util.ValidarInt(row, "myid", errores, true);

                obj.title  = Util.ValidarString(row, "Titulo", errores, true);
                obj.author = Util.ValidarString(row, "Autor", errores, true);
                obj.origin = Util.ValidarString(row, "Origen", errores, true);



                obj.date_presentation = Util.ValidarDateTime(row, "F-Presentado", errores, true);


                obj.commission = Util.ValidarString(row, "Comision", errores, true);



                obj.debate_speaker  = Util.ValidarString(row, "pon_1_debate", errores, false);
                obj.debate_speaker2 = Util.ValidarString(row, "pon_2_debate", errores, false);

                obj.debate_speaker3 = Util.ValidarString(row, "pon_2_debate_Cam", errores, false);
                obj.debate_speaker4 = Util.ValidarString(row, "pon_2_debate_Cam", errores, false);


                obj.status         = Util.ValidarString(row, "Estado", errores, false);
                obj.status_comment = Util.ValidarString(row, "Comentario_Estado", errores, false);
                obj.interest_area  = Util.ValidarString(row, "Tema", errores, false);
                obj.initiative     = Util.ValidarString(row, "Iniciativa", errores, false);
                obj.link           = Util.ValidarString(row, "Texto_Radicado_Link", errores, false);
                obj.summary        = Util.ValidarString(row, "Resumen", errores, false);


                lista.Add(obj);
                if (errores.Count > 0)
                {
                    oErrores.Add(new ImportError
                    {
                        nroFila = i,
                        errores = errores
                    });
                }
                i++;
            }
            return(lista);
        }
Exemple #9
0
        public void Import(PeriodViewModel oPeriod, List <DraftLawViewModel> lista, Dictionary <string, int> origins, Dictionary <string, int> commisions, Dictionary <string, int> interest_areas, Dictionary <string, DraftLawStatusViewModel> draftlaw_status, int user_id)
        {
            using (var scope = new TransactionScope())
            {
                foreach (DraftLawViewModel pDraftLawViewModel in lista)
                {
                    pDraftLawViewModel.debate_speakers = pDraftLawViewModel.debate_speakers.Distinct().ToList();
                    pDraftLawViewModel.period_id       = oPeriod.period_id;
                    if (origins.ContainsKey(pDraftLawViewModel.origin))
                    {
                        pDraftLawViewModel.origin_id = origins[pDraftLawViewModel.origin];
                    }


                    if (commisions.ContainsKey(pDraftLawViewModel.commission))
                    {
                        pDraftLawViewModel.commission_id = commisions[pDraftLawViewModel.commission];
                    }

                    if (interest_areas.ContainsKey(pDraftLawViewModel.interest_area))
                    {
                        pDraftLawViewModel.interest_area_id = interest_areas[pDraftLawViewModel.interest_area];
                    }

                    if (draftlaw_status.ContainsKey(pDraftLawViewModel.status))
                    {
                        pDraftLawViewModel.draft_law_status_id = draftlaw_status[pDraftLawViewModel.status].draft_law_status_id;
                    }

                    DraftLawViewModel pDraftLawComplementViewModel = oRepositorio.ObtenerPorNroProyectoMigrar(pDraftLawViewModel.draft_law_number, pDraftLawViewModel.period_id);
                    if (pDraftLawComplementViewModel != null && pDraftLawComplementViewModel.draft_law_id != 0)
                    {
                        DraftLawViewModel pDraftLawComplementViewModel2 = oRepositorio.ObtenerPorNroProyectoMigrar(pDraftLawViewModel.draft_law_number, pDraftLawViewModel.draft_law_status_id, pDraftLawViewModel.period_id);
                        if (pDraftLawComplementViewModel2 != null && pDraftLawComplementViewModel2.draft_law_id != 0)
                        {
                            draft_laws odraft_laws = new draft_laws
                            {
                                draft_law_id      = pDraftLawComplementViewModel.draft_law_id,
                                draft_law_number  = pDraftLawViewModel.draft_law_number,
                                title             = pDraftLawViewModel.title,
                                author            = pDraftLawViewModel.author,
                                origin_id         = pDraftLawViewModel.origin_id,
                                date_presentation = pDraftLawViewModel.date_presentation,

                                commission_id    = pDraftLawViewModel.commission_id,
                                debate_speaker   = pDraftLawViewModel.debate_speaker,
                                debate_speaker2  = pDraftLawViewModel.debate_speaker2,
                                debate_speaker3  = pDraftLawViewModel.debate_speaker3,
                                debate_speaker4  = pDraftLawViewModel.debate_speaker4,
                                status_id        = pDraftLawViewModel.draft_law_status_id,
                                status_comment   = pDraftLawViewModel.status_comment,
                                interest_area_id = pDraftLawViewModel.interest_area_id,
                                initiative       = pDraftLawViewModel.initiative,
                                summary          = pDraftLawViewModel.summary,
                                link             = pDraftLawViewModel.link,
                                period_id        = pDraftLawViewModel.period_id,
                                date_modified    = DateTime.Now,
                                user_id_modified = user_id
                            };
                            oRepositorio.Update(odraft_laws,
                                                a => a.draft_law_id,
                                                a => a.draft_law_number,
                                                a => a.title,
                                                a => a.author,
                                                a => a.origin_id,
                                                a => a.date_presentation,
                                                a => a.commission_id,
                                                a => a.debate_speaker,
                                                a => a.debate_speaker2,
                                                a => a.debate_speaker3,
                                                a => a.debate_speaker4,
                                                a => a.status_id,
                                                a => a.status_comment,
                                                a => a.interest_area_id,
                                                a => a.initiative,
                                                a => a.summary,
                                                a => a.link,
                                                a => a.date_modified,
                                                a => a.user_id_modified,
                                                a => a.period_id
                                                );
                            //oUnitOfWork.SaveChanges();
                            oDebateSpeakerRepositorio.DeleteMultiple(pDraftLawComplementViewModel.draft_law_id);
                            foreach (int debate_user_id in pDraftLawViewModel.debate_speakers)
                            {
                                debate_speakers odebate_speakers = new debate_speakers
                                {
                                    user_id         = debate_user_id,
                                    draft_law_id    = odraft_laws.draft_law_id,
                                    date_created    = DateTime.Now,
                                    user_id_created = user_id
                                };
                                oDebateSpeakerRepositorio.Add(odebate_speakers);
                            }
                        }
                        else
                        {
                            draft_laws odraft_laws = new draft_laws
                            {
                                draft_law_id = pDraftLawComplementViewModel.draft_law_id,
                                active       = false
                            };
                            oRepositorio.Update(odraft_laws, a => a.active);
                            AddDraftLaw(user_id, pDraftLawViewModel);
                        }
                    }
                    else
                    {
                        AddDraftLaw(user_id, pDraftLawViewModel);
                    }
                    oUnitOfWork.SaveChanges();
                }
                // oUnitOfWork.SaveChanges();


                scope.Complete();
            }
        }