Пример #1
0
        public int GenerarControlHueso(CONTROL_HUESO doControl)
        {
            using (ASIS_PRODEntities entities = new ASIS_PRODEntities())
            {
                clsDAsistencia = new clsDAsistencia();
                List <spConsultaMovimientoPersonalDiario> detalle = null;

                var ControlHueso = entities.CONTROL_HUESO.FirstOrDefault(x =>
                                                                         x.Linea == doControl.Linea &&
                                                                         x.HoraFin == doControl.HoraFin &&
                                                                         x.HoraInicio == doControl.HoraInicio &&
                                                                         x.Fecha == doControl.Fecha &&
                                                                         x.Linea == doControl.Linea &&
                                                                         ((doControl.Turno == clsAtributos.TurnoUno && (x.Turno == clsAtributos.TurnoUno || x.Turno == null)) ||
                                                                          (doControl.Turno == clsAtributos.TurnoDos && x.Turno == doControl.Turno))
                                                                         // && x.Turno==doControl.Turno
                                                                         && x.TipoControlHueso == doControl.TipoControlHueso &&
                                                                         x.EstadoRegistro == clsAtributos.EstadoRegistroActivo);
                if (ControlHueso == null)
                {
                    if (doControl.TipoControlHueso == clsAtributos.Hueso || doControl.TipoControlHueso == clsAtributos.Roto)
                    {
                        TimeSpan HoraIni = new TimeSpan(doControl.HoraInicio.Hour, doControl.HoraInicio.Minute, 0);
                        detalle = clsDAsistencia.ConsultaMovimientoPersonalDiario(doControl.HoraInicio, HoraIni, doControl.Linea, doControl.Turno).Where(x => x.CodCargo == clsAtributos.CargoLimpiadora).ToList();
                        foreach (var x in detalle)
                        {
                            doControl.CONTROL_HUESO_DETALLE.Add(new CONTROL_HUESO_DETALLE
                            {
                                CantidadHueso      = 0,
                                Cedula             = x.Cedula,
                                EstadoRegistro     = clsAtributos.EstadoRegistroActivo,
                                FechaIngresoLog    = DateTime.Now,
                                UsuarioIngresoLog  = doControl.UsuarioIngresoLog,
                                TerminalIngresoLog = doControl.TerminalIngresoLog
                            });
                        }
                    }
                    entities.CONTROL_HUESO.Add(doControl);
                    entities.SaveChanges();
                    return(doControl.IdControlHueso);
                }
                else
                {
                    return(0);
                }
            }
        }
Пример #2
0
        public string GuardarControlToallaCab(int?Id, string Turno, DateTime?Fecha, DateTime?Hora, string Linea, string Observacion, string psterminal, string psusuario, string estadoRegistro)
        {
            using (ASIS_PRODEntities db = new ASIS_PRODEntities())
            {
                if (estadoRegistro == clsAtributos.EstadoRegistroActivo && Id == null)
                {
                    var buscarregistroToalla = db.CONTROL_TOALLA.Where(x => x.Fecha == Fecha && x.Turno == Turno && x.Linea == Linea && x.Hora == Hora && x.EstadoRegistro == clsAtributos.EstadoRegistroActivo).FirstOrDefault();
                    if (buscarregistroToalla == null)
                    {
                        List <DETALLE_CONTROL_TOALLA>             ListEmpleado = new List <DETALLE_CONTROL_TOALLA>();
                        List <spConsultaMovimientoPersonalDiario> Empleados    = new List <spConsultaMovimientoPersonalDiario>();
                        clsDAsistencia = new clsDAsistencia();
                        //if (Linea == "52") //linea 52=pouch
                        //{
                        //    Empleados = clsDAsistencia.ConsultaMovimientoPersonalDiario(Fecha.Value, Hora.Value, Linea).Where(
                        //    x => new string[7] { "133", "143", "258", "138", "126", "119", "147" }.Contains(x.CodCargo)).ToList();
                        //}
                        //else
                        //{
                        Empleados = clsDAsistencia.ConsultaMovimientoPersonalDiario(Hora.Value, Hora.Value.TimeOfDay.Add(new TimeSpan(0, 15, 0)), Linea, Turno).Where(x => x.Turno == Turno).ToList();
                        //}

                        //var Empleados = clsDAsistencia.ConsultaMovimientoPersonalDiario(Convert.ToDateTime("2020-01-10"), TimeSpan.Parse("07:00"), "05").ToList();

                        foreach (var item in Empleados)
                        {
                            ListEmpleado.Add(new DETALLE_CONTROL_TOALLA {
                                Cedula = item.Cedula, UsuarioCreacionLog = psusuario, TerminalCreacionLog = psterminal, FechaCreacionLog = DateTime.Now, EstadoRegistro = clsAtributos.EstadoRegistroActivo
                            });
                        }
                        db.CONTROL_TOALLA.Add(new CONTROL_TOALLA
                        {
                            FechaCreacionLog       = DateTime.Now,
                            Fecha                  = Fecha,
                            EstadoRegistro         = estadoRegistro,
                            Hora                   = Hora,
                            Linea                  = Linea,
                            Observacion            = Observacion,
                            TerminalCreacionLog    = psterminal,
                            Turno                  = Turno,
                            UsuarioCreacionLog     = psusuario,
                            DETALLE_CONTROL_TOALLA = ListEmpleado
                        });
                        db.SaveChanges();
                        return("Registro guardado con éxito");
                    }
                    else
                    {
                        return("999"); //ya existe el registro
                    }
                }
                if (estadoRegistro == clsAtributos.EstadoRegistroInactivo && Id != null)//significa que se va a desactivar el registro
                {
                    var buscarControlToallaCab = db.CONTROL_TOALLA.Find(Id);
                    buscarControlToallaCab.EstadoRegistro          = clsAtributos.EstadoRegistroInactivo;
                    buscarControlToallaCab.FechaModificacionLog    = DateTime.Now;
                    buscarControlToallaCab.UsuarioModificacionLog  = psusuario;
                    buscarControlToallaCab.TerminalModificacionLog = psterminal;
                    db.SaveChanges();
                    return("Registro Inactivado con éxito");
                }
                else //si se va a actualizar una cabecera de toalla
                {
                    var buscarCabToalla = db.CONTROL_TOALLA.Where(z => z.Fecha == Fecha && z.Hora == Hora && z.Turno == Turno && z.EstadoRegistro == clsAtributos.EstadoRegistroActivo).FirstOrDefault();
                    if (buscarCabToalla == null)
                    {
                        var RegistroCabToallaAModificar = db.CONTROL_TOALLA.Find(Id);
                        RegistroCabToallaAModificar.Turno       = Turno;
                        RegistroCabToallaAModificar.Fecha       = Fecha;
                        RegistroCabToallaAModificar.Hora        = Hora;
                        RegistroCabToallaAModificar.Observacion = Observacion;
                        db.SaveChanges();
                        return("registro actualizado con éxito");
                    }
                    else if (buscarCabToalla.Observacion != Observacion)//si quiere actualizar solo la observacion
                    {
                        var RegistroCabToallaAModificar = db.CONTROL_TOALLA.Find(Id);
                        RegistroCabToallaAModificar.Observacion = Observacion;
                        db.SaveChanges();
                        return("registro actualizado con éxito");
                    }
                    else
                    {
                        return("555");//ya existe un registro en esa fecha, hora y turno
                    }
                }
            }
        }