Esempio n. 1
0
        public ActionResult Create([Bind(Include = "QRID,Tipo_Queja_TipoID,UserNameID,Fecha,Comentario,Cliente_ClienteID,Departamento_DepartamentoID,Empleado_EmpleadoID,Estado_QR_EstadoID,Sucursal_SucursalID")] Queja queja)
        {
            if (ModelState.IsValid)
            {
                if (!User.IsInRole(Roles.Admin))
                {
                    Estado_QR_Helper estado_helper = new Estado_QR_Helper();
                    queja.Estado_QR_EstadoID = estado_helper.GetEstadoByDescripcion(Estado_QR_Helper.ABIERTO).EstadoID;
                }

                queja.Fecha = DateTime.Now;
                db.Quejas.Add(queja);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.UserNameID                  = User.Identity.GetUserId();
            ViewBag.Cliente_ClienteID           = new SelectList(db.Clientes, "PersonaID", "Identificacion", queja.Cliente_ClienteID);
            ViewBag.Departamento_DepartamentoID = new SelectList(db.Departamentos, "DepartamentoID", "Nombre", queja.Departamento_DepartamentoID);
            ViewBag.Empleado_EmpleadoID         = new SelectList(db.Empleados, "PersonaID", "Identificacion", queja.Empleado_EmpleadoID);
            ViewBag.Estado_QR_EstadoID          = new SelectList(db.Estado_QRs, "EstadoID", "Descripcion", queja.Estado_QR_EstadoID);
            ViewBag.Sucursal_SucursalID         = new SelectList(db.Sucursals, "SucursalID", "Nombre", queja.Sucursal_SucursalID);
            ViewBag.Tipo_Queja_TipoID           = new SelectList(db.Tipo_Quejas, "TipoID", "Descripcion", queja.Tipo_Queja_TipoID);
            return(View(queja));
        }
        // GET: Respuesta_Empleado/Create
        public ActionResult CreateFromQueja(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Queja queja = db.Quejas.Find(id);

            if (queja == null)
            {
                return(HttpNotFound());
            }
            RespuestaClienteQuejaViewModel viewmodel = new RespuestaClienteQuejaViewModel()
            {
                QuejaViewModel = new QuejaViewModel {
                    Queja = queja, Respuestas = new List <Respuesta>()
                },
                Respuesta_Cliente = new Respuesta_Cliente
                {
                    Queja_QuejaID             = queja.QRID,
                    Estado_QR_Estado_OrigenID = queja.Estado_QR_EstadoID
                }
            };

            AddListRespuestasQuejas(queja, viewmodel);
            Respuesta_Cliente respuesta_Cliente = viewmodel.Respuesta_Cliente;

            AddViewBagCreate(respuesta_Cliente);

            return(View(viewmodel));
        }
        public ActionResult CreateFromQueja(RespuestaClienteQuejaViewModel viewModel)
        {
            Respuesta_Cliente respuesta_Cliente = viewModel.Respuesta_Cliente;
            Queja             queja             = db.Quejas.Find(viewModel.QuejaViewModel.Queja.QRID);

            respuesta_Cliente.Queja_QuejaID = queja.QRID;

            if (ValoracionInvalida(respuesta_Cliente))
            {
                RestartRespuestaClienteQuejaViewModel(viewModel, respuesta_Cliente, queja);
                ModelState.AddModelError("", "Valoración inválida");
                return(View(viewModel));
            }
            if (EstadoInvalido(respuesta_Cliente))
            {
                RestartRespuestaClienteQuejaViewModel(viewModel, respuesta_Cliente, queja);
                ModelState.AddModelError("", "Estado inválido");
                return(View(viewModel));
            }

            if (ModelState.IsValid)
            {
                respuesta_Cliente.Fecha = DateTime.Now;

                queja.Estado_QR_EstadoID = respuesta_Cliente.Estado_QR_Estado_DestinoID;

                db.Respuesta_Clientes.Add(respuesta_Cliente);
                db.Entry(queja).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index", "Quejas"));
            }
            RestartRespuestaClienteQuejaViewModel(viewModel, respuesta_Cliente, queja);
            return(View(viewModel));
        }
        public ActionResult CreateFromQueja(RespuestaEmpleadoQuejaViewModel viewModel)
        {
            string             id                 = User.Identity.GetUserId();
            Empleado           empleado           = db.Empleados.Where(e => e.UserNameID == id).FirstOrDefault <Empleado>();
            Respuesta_Empleado respuesta_Empleado = viewModel.Respuesta_Empleado;
            Queja queja = db.Quejas.Find(viewModel.QuejaViewModel.Queja.QRID);

            if (ModelState.IsValid)
            {
                respuesta_Empleado.Queja_QuejaID = queja.QRID;
                respuesta_Empleado.Fecha         = DateTime.Now;
                AddParametrosDestinoPorEstado(empleado, respuesta_Empleado);


                respuesta_Empleado.Empleado_Empleado_OrigenID = empleado.PersonaID;
                queja.Estado_QR_EstadoID          = respuesta_Empleado.Estado_QR_Estado_DestinoID;
                queja.Sucursal_SucursalID         = respuesta_Empleado.Sucursal_Sucursal_DestinoID;
                queja.Departamento_DepartamentoID = respuesta_Empleado.Departamento_Departamento_DestinoID;
                queja.Empleado_EmpleadoID         = respuesta_Empleado.Empleado_Empleado_DestinoID;
                db.Respuesta_Empleados.Add(respuesta_Empleado);
                db.Entry(queja).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index", "Quejas"));
            }

            AddViewBagPostCreate(respuesta_Empleado);
            return(View(viewModel));
        }
Esempio n. 5
0
        public ActionResult DeleteConfirmed(int id)
        {
            Queja queja = db.Quejas.Find(id);

            db.Quejas.Remove(queja);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 6
0
        public void Create(Queja queja)
        {
            try
            {
                _crudQueja.Create(queja);


                var configManager         = new ConfiguracionManager();
                var empresaManager        = new EmpresaManager();
                var sancionManager        = new SancionManager();
                var rutaManager           = new RutaManager();
                var ruta                  = new Ruta();
                var empresa               = new Empresa();
                var configuracionTerminal = new ConfiguracionTerminal();

                //Obtengo la empresa a la que se le agregó la queja
                ruta.Id = queja.Ruta;
                empresa = empresaManager.RetrieveEmpresaByRuta(ruta);

                //Obtengo el Id de la terminal
                ruta = rutaManager.Retrieve(ruta);
                var terminalId = ruta.TerminalId;

                //Obtengo la configuración de terminal
                configuracionTerminal = configManager.RetrieveConfiguracionTerminal(terminalId);

                //Obtengo la cantidad de quejas para una sanción
                var cantidadSancion = configuracionTerminal.CantidadQuejasSancion;

                //Obtengo la cantidad de quejas hechas a una ruta
                var cantidadQuejas = _crudQueja.RetriveQuejasActivasByRutaStatement <Queja>(queja.Ruta).Count;

                //Valido si hay quejas suficientes para una sanción
                if (cantidadSancion <= cantidadQuejas)
                {
                    var sancion = new Sancion();

                    sancion.Descripcion       = "Sanción generada automaticamente por el sistema";
                    sancion.Multa             = 3000;
                    sancion.Estado            = "Activo";
                    sancion.TerminalId        = ruta.TerminalId;
                    sancion.Fecha             = DateTime.Now;
                    sancion.Suspencion        = "Activo";
                    sancion.FechaReactivacion = DateTime.Now.AddDays(7);
                    sancion.Empresa           = empresa.CedulaJuridica;

                    sancionManager.Create(sancion);
                }
            }
            catch (Exception ex)
            {
                ExceptionManager.GetInstance().Process(ex);
            }
        }
        private void AddListRespuestasQuejas(Queja queja, RespuestaClienteQuejaViewModel viewmodel)
        {
            int?id_queja = queja.QRID;
            List <Respuesta_Empleado> respuesta_Empleados = db.Respuesta_Empleados.Where(e => e.Queja_QuejaID == id_queja).ToList();
            List <Respuesta_Cliente>  respuesta_Clientes  = db.Respuesta_Clientes.Where(e => e.Queja_QuejaID == id_queja).ToList();

            if (viewmodel.QuejaViewModel.Respuestas == null)
            {
                viewmodel.QuejaViewModel.Respuestas = new List <Respuesta>();
            }
            viewmodel.QuejaViewModel.Respuestas.AddRange(respuesta_Clientes);
            viewmodel.QuejaViewModel.Respuestas.AddRange(respuesta_Empleados);
            viewmodel.QuejaViewModel.Respuestas.Sort(ModelHelpers.CompareRespuestas);
        }
Esempio n. 8
0
 public IHttpActionResult RegistrarQueja(Queja queja)
 {
     try
     {
         var mng = new QuejaManager();
         mng.Create(queja);
         apiResp.Message = "Queja registrada";
         return(Ok(apiResp));
     }
     catch (BusinessException bex)
     {
         return(InternalServerError(new Exception(bex.ExceptionId + "-" + bex.AppMessage.Message)));
     }
 }
Esempio n. 9
0
        // GET: Quejas/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Queja queja = db.Quejas.Find(id);

            if (queja == null)
            {
                return(HttpNotFound());
            }
            return(View(queja));
        }
Esempio n. 10
0
        public IHttpActionResult ObtenerQuejasId(Queja queja)
        {
            try
            {
                var mng = new QuejaManager();
                apiResp.Data    = mng.RetrieveById(queja);
                apiResp.Message = "Quejas en el sistema";

                return(Ok(apiResp));
            }
            catch (BusinessException bex)
            {
                return(InternalServerError(new Exception(bex.ExceptionId + "-" + bex.AppMessage.Message)));
            }
        }
Esempio n. 11
0
        public BaseEntity BuildObject(Dictionary <string, object> row)
        {
            var queja = new Queja
            {
                Id           = GetIntValue(row, DB_COL_ID),
                DetalleQueja = GetStringValue(row, DB_COL_DETALLE),
                Ruta         = GetIntValue(row, DB_COL_RUTA),
                Chofer       = GetStringValue(row, DB_COL_CHOFER),
                Placa        = GetStringValue(row, DB_COL_PLACA),
                Hora         = GetDateValue(row, DB_COL_HORA),
                Estado       = GetStringValue(row, DB_COL_ESTADO)
            };

            return(queja);
        }
Esempio n. 12
0
 public ActionResult Edit([Bind(Include = "QRID,Tipo_Queja_TipoID,UserNameID,Fecha,Comentario,Cliente_ClienteID,Departamento_DepartamentoID,Empleado_EmpleadoID,Estado_QR_EstadoID,Sucursal_SucursalID")] Queja queja)
 {
     if (ModelState.IsValid)
     {
         db.Entry(queja).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.Cliente_ClienteID           = new SelectList(db.Clientes, "PersonaID", "Identificacion", queja.Cliente_ClienteID);
     ViewBag.Departamento_DepartamentoID = new SelectList(db.Departamentos, "DepartamentoID", "Nombre", queja.Departamento_DepartamentoID);
     ViewBag.Empleado_EmpleadoID         = new SelectList(db.Empleados, "PersonaID", "Identificacion", queja.Empleado_EmpleadoID);
     ViewBag.Estado_QR_EstadoID          = new SelectList(db.Estado_QRs, "EstadoID", "Descripcion", queja.Estado_QR_EstadoID);
     ViewBag.Sucursal_SucursalID         = new SelectList(db.Sucursals, "SucursalID", "Nombre", queja.Sucursal_SucursalID);
     ViewBag.Tipo_Queja_TipoID           = new SelectList(db.Tipo_Quejas, "TipoID", "Descripcion", queja.Tipo_Queja_TipoID);
     return(View(queja));
 }
        public List <Queja> ListarQueja(string correo, string estado)
        {
            List <Queja> list = new List <Queja>();
            Queja        item;

            SqlCommand cmd = cnx.CreateCommand();

            cmd.CommandType    = CommandType.StoredProcedure;
            cmd.CommandText    = "tsp_listar_queja";
            cmd.CommandTimeout = 1000;

            cmd.Parameters.AddWithValue("@correo", correo);
            cmd.Parameters.AddWithValue("@estado", estado);

            if (cmd.Connection.State != ConnectionState.Open)
            {
                cmd.Connection.Open();
            }

            SqlDataReader rd = cmd.ExecuteReader();

            while (rd.Read())
            {
                item = new Queja();

                item.Id          = rd.IsDBNull(rd.GetOrdinal("id")) ? 0 : rd.GetInt32(rd.GetOrdinal("id"));
                item.Tipo        = rd.IsDBNull(rd.GetOrdinal("tipo")) ? "" : rd.GetString(rd.GetOrdinal("tipo"));
                item.Descripcion = rd.IsDBNull(rd.GetOrdinal("descripcion")) ? "" : rd.GetString(rd.GetOrdinal("descripcion"));
                item.Imagen      = rd.IsDBNull(rd.GetOrdinal("imagen")) ? "" : rd.GetString(rd.GetOrdinal("imagen"));
                item.Correo      = rd.IsDBNull(rd.GetOrdinal("correo")) ? "" : rd.GetString(rd.GetOrdinal("correo"));
                item.Fecha       = rd.IsDBNull(rd.GetOrdinal("fecreg")) ? "" : rd.GetString(rd.GetOrdinal("fecreg"));
                item.Direccion   = rd.IsDBNull(rd.GetOrdinal("direccion")) ? "" : rd.GetString(rd.GetOrdinal("direccion"));
                item.Latitud     = rd.IsDBNull(rd.GetOrdinal("latitud")) ? "" : rd.GetString(rd.GetOrdinal("latitud"));
                item.Longitud    = rd.IsDBNull(rd.GetOrdinal("longitud")) ? "" : rd.GetString(rd.GetOrdinal("longitud"));
                item.Estado      = rd.IsDBNull(rd.GetOrdinal("estado")) ? "" : rd.GetString(rd.GetOrdinal("estado"));

                list.Add(item);
            }

            if (cmd.Connection.State != ConnectionState.Closed)
            {
                cmd.Connection.Close();
            }

            return(list);
        }
 private static RespuestaEmpleadoQuejaViewModel InitializeREQViewModel(Queja queja)
 {
     return(new RespuestaEmpleadoQuejaViewModel()
     {
         QuejaViewModel = new QuejaViewModel
         {
             Queja = queja,
             Respuestas = new List <Respuesta>()
         },
         Respuesta_Empleado = new Respuesta_Empleado
         {
             Queja_QuejaID = queja.QRID,
             Departamento_Departamento_OrigenID = queja.Departamento_DepartamentoID,
             Empleado_Empleado_OrigenID = queja.Empleado_EmpleadoID,
             Sucursal_Sucursal_OrigenID = queja.Sucursal_SucursalID,
             Estado_QR_Estado_OrigenID = queja.Estado_QR_EstadoID
         }
     });
 }
Esempio n. 15
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Queja queja = db.Quejas.Find(id);

            if (queja == null)
            {
                return(HttpNotFound());
            }
            ViewBag.Cliente_ClienteID           = new SelectList(db.Clientes, "PersonaID", "Identificacion", queja.Cliente_ClienteID);
            ViewBag.Departamento_DepartamentoID = new SelectList(db.Departamentos, "DepartamentoID", "Nombre", queja.Departamento_DepartamentoID);
            ViewBag.Empleado_EmpleadoID         = new SelectList(db.Empleados, "PersonaID", "Identificacion", queja.Empleado_EmpleadoID);
            ViewBag.Estado_QR_EstadoID          = new SelectList(db.Estado_QRs, "EstadoID", "Descripcion", queja.Estado_QR_EstadoID);
            ViewBag.Sucursal_SucursalID         = new SelectList(db.Sucursals, "SucursalID", "Nombre", queja.Sucursal_SucursalID);
            ViewBag.Tipo_Queja_TipoID           = new SelectList(db.Tipo_Quejas, "TipoID", "Descripcion", queja.Tipo_Queja_TipoID);
            return(View(queja));
        }
        public Queja ObtenerQueja(int id)
        {
            Queja item = new Queja();

            SqlCommand cmd = cnx.CreateCommand();

            cmd.CommandType    = CommandType.StoredProcedure;
            cmd.CommandText    = "tsp_obtener_queja";
            cmd.CommandTimeout = 1000;

            cmd.Parameters.AddWithValue("@id", id);

            if (cmd.Connection.State != ConnectionState.Open)
            {
                cmd.Connection.Open();
            }

            SqlDataReader rd = cmd.ExecuteReader();

            if (rd.Read())
            {
                item = new Queja();

                item.Id          = rd.IsDBNull(rd.GetOrdinal("id")) ? 0 : rd.GetInt32(rd.GetOrdinal("id"));
                item.Tipo        = rd.IsDBNull(rd.GetOrdinal("tipo")) ? "" : rd.GetString(rd.GetOrdinal("tipo"));
                item.Descripcion = rd.IsDBNull(rd.GetOrdinal("descripcion")) ? "" : rd.GetString(rd.GetOrdinal("descripcion"));
                item.Imagen      = rd.IsDBNull(rd.GetOrdinal("imagen")) ? "" : rd.GetString(rd.GetOrdinal("imagen"));
                item.Correo      = rd.IsDBNull(rd.GetOrdinal("correo")) ? "" : rd.GetString(rd.GetOrdinal("correo"));
                item.Fecha       = rd.IsDBNull(rd.GetOrdinal("fecreg")) ? "" : rd.GetString(rd.GetOrdinal("fecreg"));
                item.Estado      = rd.IsDBNull(rd.GetOrdinal("estado")) ? "" : rd.GetString(rd.GetOrdinal("estado"));
            }

            if (cmd.Connection.State != ConnectionState.Closed)
            {
                cmd.Connection.Close();
            }

            return(item);
        }
        public int InsertarQueja(Queja queja)
        {
            int        id  = 0;
            SqlCommand cmd = cnx.CreateCommand();

            cmd.CommandType    = CommandType.StoredProcedure;
            cmd.CommandText    = "tsp_insertar_queja";
            cmd.CommandTimeout = 1000;

            cmd.Parameters.AddWithValue("@tipo", queja.Tipo);
            cmd.Parameters.AddWithValue("@descripcion", queja.Descripcion);
            cmd.Parameters.AddWithValue("@imagen", queja.Imagen);
            cmd.Parameters.AddWithValue("@correo", queja.Correo);
            cmd.Parameters.AddWithValue("@direccion", queja.Direccion);
            cmd.Parameters.AddWithValue("@latitud", queja.Latitud);
            cmd.Parameters.AddWithValue("@longitud", queja.Longitud);
            cmd.Parameters.AddWithValue("@estado", queja.Estado);

            if (cmd.Connection.State != ConnectionState.Open)
            {
                cmd.Connection.Open();
            }

            SqlDataReader rd = cmd.ExecuteReader();

            if (rd.Read())
            {
                id = rd.IsDBNull(rd.GetOrdinal("id")) ? 0 : rd.GetInt32(rd.GetOrdinal("id"));
            }

            if (cmd.Connection.State != ConnectionState.Closed)
            {
                cmd.Connection.Close();
            }

            return(id);
        }
        // GET: Respuesta_Empleado/Create
        public ActionResult CreateFromQueja(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Queja queja = db.Quejas.Find(id);

            if (queja == null)
            {
                return(HttpNotFound());
            }
            RespuestaEmpleadoQuejaViewModel viewmodel = InitializeREQViewModel(queja);

            int?id_queja = queja.QRID;

            AddListRespuestasQueja(viewmodel, id_queja);

            Respuesta_Empleado respuesta_Empleado = viewmodel.Respuesta_Empleado;

            AddViewBagCreate(respuesta_Empleado);

            return(View(viewmodel));
        }
Esempio n. 19
0
 public SoftvList <QuejaEntity> GetQuejaPagedListXml(int page, int pageSize, String xml)
 {
     return(Queja.GetPagedList(page, pageSize, xml));
 }
Esempio n. 20
0
 public IEnumerable <QuejaEntity> GetQuejaList()
 {
     return(Queja.GetAll());
 }
Esempio n. 21
0
 public QuejaEntity GetDeepQueja(long?Clv_Queja)
 {
     return(Queja.GetOneDeep(Clv_Queja));
 }
Esempio n. 22
0
 public SoftvList <QuejaEntity> GetQuejaPagedList(int page, int pageSize)
 {
     return(Queja.GetPagedList(page, pageSize));
 }
        private void RestartRespuestaClienteQuejaViewModel(RespuestaClienteQuejaViewModel viewModel, Respuesta_Cliente respuesta_Cliente, Queja queja)
        {
            viewModel.QuejaViewModel.Queja = queja;

            AddListRespuestasQuejas(queja, viewModel);
            AddViewBagCreatePost(respuesta_Cliente);
        }
Esempio n. 24
0
 public void Update(Queja queja)
 {
     throw new NotImplementedException();
 }
Esempio n. 25
0
 public int DeleteQueja(String BaseRemoteIp, int BaseIdUser, long?Clv_Queja)
 {
     return(Queja.Delete(Clv_Queja));
 }
Esempio n. 26
0
        public int InsertarQueja(Queja queja)
        {
            QuejaData data = new QuejaData();

            return(data.InsertarQueja(queja));
        }
Esempio n. 27
0
 public Queja RetrieveById(Queja queja)
 {
     return(_crudQueja.Retrieve <Queja>(queja));
 }
Esempio n. 28
0
 public int AddQueja(QuejaEntity objQueja)
 {
     return(Queja.Add(objQueja));
 }
Esempio n. 29
0
 public void Delete(Queja queja)
 {
     _crudQueja.Delete(queja);
 }
Esempio n. 30
0
 public int UpdateQueja(QuejaEntity objQueja)
 {
     return(Queja.Edit(objQueja));
 }