Esempio n. 1
0
        private void Selectores(cab_ts model)
        {
            ViewBag.id_emp_list      = new SelectList(_db.empresas.OrderBy(item => item.nom_emp), "id_emp", "nom_emp", model.id_emp);
            ViewBag.id_usuarios_list = LoadData("select " +
                                                "ltrim(rtrim(isnull(usu.id_usu,''))) id_usu, " +
                                                "ltrim(rtrim(isnull(usu.Nom_cor_usu,''))) Nom_cor_usu, " +
                                                "ltrim(rtrim(isnull(usu.Nom_usu,''))) Nom_usu, " +
                                                "case when cab.ts_id is null then 'N' else 'S' end selected " +
                                                "from usuarios usu " +
                                                "left " +
                                                "join cab_ts cab on usu.id_usu = cab.id_usu and cab.grupo = " + model.grupo.ToString() + " " +
                                                "where usu.id_usu <> " + SesionLogin.id_usu.ToString() + " ");
            _db.usuarios.Where(item => item.id_usu != SesionLogin.id_usu);
            ViewBag.id_tser_list = new SelectList(_db.tipos_servicios, "id_tser", "nom_tser");

            var Lista = (from ect in _db.emp_car_tsrv
                         join cat in _db.categorias on ect.id_cat equals cat.id_cat
                         where ect.id_emp == model.id_emp &&
                         ect.id_tser == model.id_tser &&
                         ect.id_unidad == SesionLogin.id_unidad
                         select cat).OrderBy(X => X.nom_cat);

            ViewBag.id_cat_list   = new SelectList(Lista, "id_cat", "nom_cat", model.id_cat);
            ViewBag.usu_id_unidad = SesionLogin.id_unidad;
        }
Esempio n. 2
0
 public void valorhh(cab_ts cab)
 {
     try
     {
         var x = (from u in _db.usuarios
                  from etc in _db.emp_car_tsrv.Where(p => p.id_cat == cab.id_cat && p.id_emp == cab.id_emp && p.id_tser == cab.id_tser && p.id_unidad == u.id_unidad).DefaultIfEmpty()
                  from v in _db.valor_hh.Where(p => p.id_emp == cab.id_emp && p.id_cargo == u.id_cargo && p.id_unidad == u.id_unidad).DefaultIfEmpty()
                  where u.id_usu == cab.id_usu
                  select new { etc.valor_proy_especial, etc.id_proy_especial, v.valor });
         if (x.Any())
         {
             var y = x.FirstOrDefault();
             if (cab.id_tser == 4)
             {
                 if (y.id_proy_especial == 2)
                 {
                     cab.valor_hh            = y.valor;
                     cab.valor_proy_especial = null;
                     cab.id_proy_especial    = y.id_proy_especial;
                 }
                 else
                 {
                     cab.valor_hh            = y.valor;
                     cab.valor_proy_especial = y.valor_proy_especial;
                     cab.id_proy_especial    = y.id_proy_especial;
                 }
             }
             else
             {
                 cab.valor_hh            = y.valor;
                 cab.valor_proy_especial = null;
                 cab.id_proy_especial    = null;
             }
         }
         else
         {
             cab.valor_hh            = 0;
             cab.valor_proy_especial = null;
             cab.id_proy_especial    = null;
         }
     }
     catch
     {
         cab.valor_hh            = 0;
         cab.valor_proy_especial = null;
         cab.id_proy_especial    = null;
     }
 }
Esempio n. 3
0
        public ActionResult Delete(cab_ts model, int?id)
        {
            if (id == null)
            {
                return(JsonError("Opps, ocurrio un problema"));
            }
            cab_ts model_to_edit = (cab_ts)_db.cab_ts.SingleOrDefault(item => item.ts_id == id);

            if (ModelState.IsValid)
            {
                _db.cab_ts.Remove(model_to_edit);
                _db.SaveChanges();
                return(JsonExito());
            }
            return(JsonError("Opps, ocurrio un problema"));
        }
Esempio n. 4
0
        public ActionResult Edit(cab_ts model, string horas)
        {
            cab_ts model_to_edit = (cab_ts)_db.cab_ts.SingleOrDefault(item => item.ts_id == model.ts_id);

            if (SesionLogin.jerarquia.Equals("REVI3"))
            {
                model_to_edit.descr_ing = model.descr_ing;
            }
            else
            {
                if (model_to_edit.id_tser != model.id_tser || model_to_edit.id_emp != model.id_emp || model_to_edit.id_cat != model.id_cat || model_to_edit.id_usu != model.id_usu)
                {
                    model_to_edit.id_tser = model.id_tser;
                    model_to_edit.id_emp  = model.id_emp;
                    model_to_edit.id_cat  = model.id_cat;
                    model_to_edit.id_usu  = model.id_usu;
                    CustomHelper.valorhh(model_to_edit);
                }
                model_to_edit.fecha = model.fecha;
                try
                {
                    model_to_edit.horas_comerciales = CustomHelper.HorasComerciales((Int32.Parse(horas.Split(':')[0]) * 60) + Int32.Parse(horas.Split(':')[1]));
                }
                catch (Exception ex)
                {
                    App_Start.Helper.ErrorService.LogError(ex);
                    model_to_edit.horas_comerciales = 0;
                }
                model_to_edit.descr_esp   = model.descr_esp;
                model_to_edit.fecha_mod   = DateTime.Now;
                model_to_edit.usuario_mod = SesionLogin.Nom_cor_usu;
                model_to_edit.descuento   = model.descuento;
            }
            ModelState.Remove("id_cat");
            ModelState.Remove("horas");
            ModelState.Remove("horas_comerciales");
            if (ModelState.IsValid)
            {
                _db.cab_ts.Attach(model_to_edit);
                _db.Entry(model_to_edit).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
                return(JsonExito());
            }

            return(JsonError("Opps, ocurrio un problema"));
        }
        private void Selectores(cab_ts model)
        {
            ViewBag.id_emp_list = new SelectList(_db.empresas.OrderBy(item => item.nom_emp), "id_emp", "nom_emp", model.id_emp);

            var lista_usu_selecionados = _db.cab_ts.Where(item => item.grupo == model.grupo && item.dueño_grupo == "N").Select(item => item.id_usu).ToArray();

            ViewBag.id_usuarios_list = new MultiSelectList(_db.usuarios.Where(item => item.id_usu != SesionLogin.id_usu), "id_usu", "Nom_usu", null, lista_usu_selecionados);
            ViewBag.id_tser_list     = new SelectList(_db.tipos_servicios, "id_tser", "nom_tser");
            var Lista = (from ect in _db.emp_car_tsrv
                         join cat in _db.categorias on ect.id_cat equals cat.id_cat
                         where ect.id_emp == model.id_emp &&
                         ect.id_tser == model.id_tser &&
                         ect.id_unidad == SesionLogin.id_unidad
                         select cat).OrderBy(X => X.nom_cat);

            ViewBag.id_cat_list = new SelectList(Lista, "id_cat", "nom_cat", model.id_cat);
        }
Esempio n. 6
0
        public ActionResult Create(cab_ts model /*, string[] usuarios_grupales*/, string horas)
        {
            try
            {
                //VALIDA EXISTENCIA DE PERIODOS VIGENTES
                var periodos_vigentes = get_ultimo_periodos_no_vigente();
                if (!periodos_vigentes.Where(item => item.id_tser == model.id_tser).Any())
                {
                    return(JsonError("No existen periodos vigentes para la Fecha Ingresada"));
                }


                List <cab_ts> lista_cab_ts = new List <cab_ts>();

                //VALIDACION DE ATRIBUTOS
                DateTime fecha_actual = DateTime.Now;
                int      grupo        = _db.cab_ts.Max(x => x.grupo) + 1;
                model.horas             = (Int32.Parse(horas.Split(':')[0]) * 60) + Int32.Parse(horas.Split(':')[1]);
                model.horas_comerciales = CustomHelper.HorasComerciales(model.horas);
                //model.id_usu = SesionLogin.id_usu;
                model.estado      = SesionLogin.jerarquia;
                model.usuario_mod = SesionLogin.Nom_cor_usu;
                model.fecha_mod   = fecha_actual;
                model.comentario  = model.comentario == null ? "" : model.comentario;
                //model.descr_ing = "";
                model.grupo       = grupo;
                model.dueño_grupo = "S";
                //model.descuento = 0;
                CustomHelper.valorhh(model);
                lista_cab_ts.Add(model);

                //GUARDAMOS REGISTROS DE USUARIOS GRUPALES
                _db.cab_ts.AddRange(lista_cab_ts);
                _db.SaveChanges();
                return(JsonExito());
            }
            catch (Exception err)
            {
                App_Start.Helper.ErrorService.LogError(err);
                return(JsonError("Opps, ocurrio un problema"));
            }
        }
Esempio n. 7
0
        public ActionResult Delete(cab_ts model, int?id)
        {
            if (id == null)
            {
                return(JsonError("Opps, ocurrio un problema"));
            }
            cab_ts model_to_edit = (cab_ts)_db.cab_ts.SingleOrDefault(item => item.ts_id == id);

            model_to_edit.horas_comerciales = 0;
            model_to_edit.fecha_mod         = DateTime.Now;
            model_to_edit.usuario_mod       = SesionLogin.Nom_cor_usu;
            if (ModelState.IsValid)
            {
                _db.cab_ts.Attach(model_to_edit);
                _db.Entry(model_to_edit).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
                return(JsonExito());
            }
            return(JsonError("Opps, ocurrio un problema"));
        }
        public ActionResult Edit(cab_ts model, string horas)
        {
            //edita y guarda cambios al enviarse el formulario
            cab_ts model_to_edit = (cab_ts)_db.cab_ts.SingleOrDefault(item => item.ts_id == model.ts_id);

            model_to_edit.id_tser = model.id_tser;
            model_to_edit.id_emp  = model.id_emp;
            model_to_edit.id_cat  = model.id_cat;
            model_to_edit.fecha   = model.fecha;
            try
            {
                model_to_edit.horas             = (Int32.Parse(horas.Split(':')[0]) * 60) + Int32.Parse(horas.Split(':')[1]);
                model_to_edit.horas_comerciales = CustomHelper.HorasComerciales(model_to_edit.horas);
            }
            catch (Exception ex)
            {
                App_Start.Helper.ErrorService.LogError(ex);
                model_to_edit.horas             = 0;
                model_to_edit.horas_comerciales = 0;
            }

            model_to_edit.descr_esp   = model.descr_esp;
            model_to_edit.fecha_mod   = DateTime.Now;
            model_to_edit.usuario_mod = SesionLogin.Nom_cor_usu;

            ModelState.Remove("id_cat");
            ModelState.Remove("horas");
            ModelState.Remove("horas_comerciales");
            if (ModelState.IsValid)
            {
                _db.cab_ts.Attach(model_to_edit);
                _db.Entry(model_to_edit).State = System.Data.Entity.EntityState.Modified;
                _db.SaveChanges();
                return(JsonExito());
            }
            Selectores(model);
            return(JsonError("Opps, ocurrio un problema"));
        }
Esempio n. 9
0
        public ActionResult Create(cab_ts model, string tipo, string[] usuarios_grupales, string horas, string descuentos, bool checkusuario)
        {
            try
            {
                //VALIDA EXISTENCIA DE PERIODOS VIGENTES
                var periodos_vigentes = get_periodos_vigentes();
                if (!periodos_vigentes.Where(item => item.id_tser == model.id_tser).Any())
                {
                    return(JsonError("No existen periodos vigentes para la Fecha Ingresada"));
                }
                List <cab_ts> lista_cab_ts = new List <cab_ts>();

                //VALIDACION DE ATRIBUTOS
                DateTime fecha_actual = DateTime.Now;
                int      grupo        = _db.cab_ts.Max(x => x.grupo) + 1;
                model.horas             = (Int32.Parse(horas.Split(':')[0]) * 60) + Int32.Parse(horas.Split(':')[1]);
                model.horas_comerciales = CustomHelper.HorasComerciales(model.horas);
                model.id_usu            = SesionLogin.id_usu;
                model.estado            = "ANALI";
                model.usuario_mod       = SesionLogin.Nom_cor_usu;
                model.fecha_mod         = fecha_actual;
                model.grupo             = grupo;
                model.descr_ing         = "";
                model.dueño_grupo       = "S";
                model.comentario        = model.comentario == null ? "": model.comentario;
                CustomHelper.valorhh(model);
                if (SesionLogin.id_usu == model.id_usu)
                {
                    model.descuento = checkusuario ? 100 : 0;
                }
                lista_cab_ts.Add(model);

                if (usuarios_grupales != null)
                {
                    //GUARDAMOS USUARIOS GRUPALES
                    foreach (string item in usuarios_grupales)
                    {
                        cab_ts usuario_grupal_ = new cab_ts();
                        int    id_usu_grup     = Int32.Parse(item);
                        usuario_grupal_.horas             = model.horas;
                        usuario_grupal_.descuento         = model.descuento;
                        usuario_grupal_.horas_comerciales = model.horas_comerciales;
                        usuario_grupal_.dueño_grupo       = "N";
                        usuario_grupal_.id_usu            = id_usu_grup;
                        usuario_grupal_.grupo             = model.grupo;
                        usuario_grupal_.id_cat            = model.id_cat;
                        usuario_grupal_.id_emp            = model.id_emp;
                        usuario_grupal_.id_proy_especial  = model.id_proy_especial;
                        usuario_grupal_.id_tser           = model.id_tser;
                        usuario_grupal_.numero_factura    = model.numero_factura;
                        usuario_grupal_.usuario_mod       = model.usuario_mod;
                        usuario_grupal_.comentario        = model.comentario;
                        usuario_grupal_.descr_esp         = model.descr_esp;
                        usuario_grupal_.descr_ing         = model.descr_ing;
                        usuario_grupal_.estado            = model.estado;
                        usuario_grupal_.fecha             = model.fecha;
                        usuario_grupal_.fecha_mod         = model.fecha_mod;
                        CustomHelper.valorhh(usuario_grupal_);

                        //APLICANDO DESCUENTOS MASIVOS
                        JArray  datos = JArray.Parse(descuentos);
                        JObject i     = datos.Where(p => ((int)(p as JObject).GetValue("id")) == id_usu_grup).FirstOrDefault() as JObject;
                        if (i != null)
                        {
                            usuario_grupal_.horas             = (Int32.Parse(((string)i.GetValue("hh")).Split(':')[0]) * 60) + Int32.Parse(((string)i.GetValue("hh")).Split(':')[1]);
                            usuario_grupal_.descuento         = Int32.Parse((string)i.GetValue("desc")) == 1 ? 100 : 0;
                            usuario_grupal_.horas_comerciales = CustomHelper.HorasComerciales(usuario_grupal_.horas);
                        }

                        //AGREGAMOS REGISTROS USUARIOS GRUPALES A LISTA
                        lista_cab_ts.Add(usuario_grupal_);
                    }
                }
                //GUARDAMOS REGISTROS DE USUARIOS GRUPALES
                _db.cab_ts.AddRange(lista_cab_ts);
                _db.SaveChanges();
                return(JsonExito());
            }
            catch (Exception err)
            {
                App_Start.Helper.ErrorService.LogError(err);
                return(JsonError("Opps, ocurrio un problema: " + err.Message));
            }
        }