コード例 #1
0
        private clsGestionVM GestionFind(int gestionId)
        {
            clsGestion   oGestion   = new clsGestion(clsAppInfo.Connection);
            clsGestionVM oGestionVM = new clsGestionVM();

            try
            {
                oGestion.VM.GestionId = gestionId;

                if (oGestion.FindByPK())
                {
                    oGestionVM = oGestion.VM;

                    return(oGestionVM);
                }

                return(null);
            }
            catch (Exception exp)
            {
                throw exp;
            }
            finally
            {
                oGestion.Dispose();
            }
            return(oGestionVM);
        }
コード例 #2
0
        // GET: Gestion/Details/5
        public ActionResult Details(int id)
        {
            try
            {
                this.GetDefaultData();

                if (ReferenceEquals(id, null))
                {
                    ViewBag.MessageErr = Resources.IndiceNulo;
                }

                clsGestionVM oGestionVM = GestionFind(Convert.ToInt32(id));

                if (ReferenceEquals(oGestionVM, null))
                {
                    return(RedirectToAction("httpErrorMsg", "Error", new { MessageErr = "Índice no encontrado" }));
                }

                // Comentado Carlos: ya no necesita ya pide la vista directamente al controlador
                //ViewBag.EstadoId = ComboBox.EstadoList();
                return(View(oGestionVM));
            }

            catch (Exception exp)
            {
                return(RedirectToAction("httpErrorMsg", "Error", new { MessageErr = exp.Message }));
            }
        }
コード例 #3
0
        // GET: Gestion/Delete/5
        public ActionResult Delete(int?id)
        {
            try
            {
                this.GetDefaultData();

                if (ReferenceEquals(id, null))
                {
                    return(RedirectToAction("httpErrorMsg", "Error", new { MessageErr = "Índice nulo o no encontrado" }));
                }

                clsGestionVM oGestionVM = GestionFind(Convert.ToInt32(id));

                if (ReferenceEquals(oGestionVM, null))
                {
                    return(RedirectToAction("httpErrorMsg", "Error", new { MessageErr = "Índice no encontrado" }));
                }


                return(View(oGestionVM));
            }

            catch (Exception exp)
            {
                return(RedirectToAction("httpErrorMsg", "Error", new { MessageErr = exp.Message }));
            }
        }
コード例 #4
0
 public void PropertyInit()
 {
     VM               = new clsGestionVM();
     VM.GestionId     = 0;
     VM.GestionNro    = 0;
     VM.GestionFecIni = new DateTime();
     VM.GestionFecFin = new DateTime();
     VM.EstadoId      = 0;
 }
コード例 #5
0
        //---------------------

        private void DataMove(clsGestionVM oGestionVM, clsGestion oGestion, bool boolEditing)
        {
            if (boolEditing)
            {
                oGestion.VM.GestionId = SysData.ToLong(oGestionVM.GestionId);
            }

            oGestion.VM.GestionNro    = SysData.ToInteger(oGestionVM.GestionNro);
            oGestion.VM.GestionFecIni = SysData.ToDate(oGestionVM.GestionFecIni);
            oGestion.VM.GestionFecFin = SysData.ToDate(oGestionVM.GestionFecFin);
            oGestion.VM.EstadoId      = SysData.ToLong(oGestionVM.EstadoId);
        }
コード例 #6
0
        // GET: Gestion/Create
        public ActionResult Create()
        {
            try
            {
                this.GetDefaultData();
                clsGestionVM oGestionVm = new clsGestionVM();
                oGestionVm.EstadoId = ConstEstado.Activo;


                return(View(oGestionVm));
            }

            catch (Exception exp)
            {
                return(RedirectToAction("httpErrorMsg", "Error", new { MessageErr = exp.Message }));
            }
        }
コード例 #7
0
        public ActionResult Create(clsGestionVM oGestionVM)
        {
            try
            {
                String error = null;
                if (ModelState.IsValid)
                {
                    clsGestion oGestion = new clsGestion(clsAppInfo.Connection);


                    int gestionIni = oGestionVM.GestionFecIni.Year;
                    int gestionFin = oGestionVM.GestionFecFin.Year;

                    if (oGestionVM.GestionNro != gestionIni)
                    {
                        error = "El nro gestion debe coincidir con las fechas";
                    }

                    if (SysData.FechaMayor(oGestionVM.GestionFecIni, oGestionVM.GestionFecFin) == cFecha.Mayor || SysData.FechaMayor(oGestionVM.GestionFecIni, oGestionVM.GestionFecFin) == cFecha.Igual)
                    {
                        error = error + " - La fecha inicio debe ser menor a la fecha fin";
                    }

                    if (String.IsNullOrEmpty(error))
                    {
                        DataMove(oGestionVM, oGestion, false);
                        if (oGestion.Insert())
                        {
                            return(RedirectToAction("Index"));
                        }
                    }
                }
                ViewBag.MessageErr = error;
                return(View(oGestionVM));
            }

            catch (Exception exp)
            {
                ViewBag.MessageErr = exp.Message;
                return(View(oGestionVM));
            }
        }
コード例 #8
0
 private void DataMoveCorrelativ(clsCorrelativo oCorrelativo, clsPrefijo oPrefijo, clsGestionVM oGestion)
 {
     oCorrelativo.DocId        = SysData.ToLong(oPrefijo.DocId);
     oCorrelativo.PrefijoId    = SysData.ToLong(oPrefijo.PrefijoId);
     oCorrelativo.GestionId    = SysData.ToLong(oGestion.GestionId);
     oCorrelativo.ModuloId     = SysData.ToLong(oPrefijo.ModuloId);
     oCorrelativo.AplicacionId = SysData.ToLong(oPrefijo.AplicacionId);
     oCorrelativo.CorreNroAct  = 0;
     oCorrelativo.CorreNroMax  = 99999;
     oCorrelativo.FecIni       = SysData.ToDate(oGestion.GestionFecIni);
     oCorrelativo.FecFin       = SysData.ToDate(oGestion.GestionFecFin);
 }
コード例 #9
0
        public ActionResult GenerarCorrelativo(int tipo, int prefijo, int gestion)
        {
            clsPrefijo oPrefijo = new clsPrefijo(clsAppInfo.Connection);

            try
            {
                clsCorrelativo oCorrelativo = new clsCorrelativo(clsAppInfo.Connection);
                clsPrefijo     oPrefijoSel  = PrefijoFind(prefijo);
                clsGestionVM   oGestion     = GestionFind(gestion);

                if (tipo == TipoCorrelativo.Anual)
                {
                    oCorrelativo = new clsCorrelativo(clsAppInfo.Connection);

                    DataMoveCorrelativ(oCorrelativo, oPrefijoSel, oGestion);

                    if (oCorrelativo.Insert())
                    {
                        return(Content("ok"));
                    }
                }
                else if (tipo == TipoCorrelativo.Periodo)
                {
                    int maxPrefijoNro = oPrefijoSel.PrefijoNro;
                    if (ExistePrefijo(maxPrefijoNro + 1))
                    {
                        return(Content("El Prefijo nro " + (maxPrefijoNro + 1) + " ya existe"));
                    }

                    List <clsPeriodoVM> periodoList = PeriodoList(oGestion.GestionId);
                    if (periodoList.Count == 0)
                    {
                        return(Content(resources.Resources.GestionSinPeriodo));
                    }

                    // para el primer periodo de la gestion
                    clsPeriodoVM firtP = periodoList[0];
                    periodoList.RemoveAt(0);
                    int inserted = 0;

                    DataMovePref(oPrefijo, oPrefijoSel, firtP.MesDes);
                    oPrefijo.PrefijoId = oPrefijoSel.PrefijoId;
                    oPrefijo.BeginTransaction();

                    if (oPrefijo.Update())
                    {
                        oCorrelativo.Transaction = oPrefijo.Transaction;
                        oGestion.GestionFecIni   = firtP.PeriodoFecIni;
                        oGestion.GestionFecFin   = firtP.PeriodoFecFin;
                        DataMoveCorrelativ(oCorrelativo, oPrefijo, oGestion);
                        if (oCorrelativo.Insert())
                        {
                            inserted++;
                        }

                        //los demas
                        foreach (clsPeriodoVM periodo in periodoList)
                        {
                            DataMovePref(oPrefijo, oPrefijoSel, periodo.MesDes);
                            maxPrefijoNro       = maxPrefijoNro + 1;
                            oPrefijo.PrefijoNro = maxPrefijoNro;
                            if (oPrefijo.Insert())
                            {
                                oGestion.GestionFecIni = periodo.PeriodoFecIni;
                                oGestion.GestionFecFin = periodo.PeriodoFecFin;

                                DataMoveCorrelativ(oCorrelativo, oPrefijo, oGestion);
                                oCorrelativo.PrefijoId = oPrefijo.Id;
                                if (oCorrelativo.Insert())
                                {
                                    inserted++;
                                }
                            }
                        }
                        if (inserted == periodoList.Count + 1)
                        {
                            oPrefijo.Commit();
                            return(Content("ok"));
                        }
                    }
                    oPrefijo.Rollback();
                }


                return(RedirectToAction("Index"));
            }
            catch (Exception exp)
            {
                oPrefijo.Rollback();
                return(Content(exp.Message));
            }
        }