コード例 #1
0
        public static Response <FallasDResponse> ObtenerUltimaRevisionChofer(string CodChofer)
        {
            try
            {
                Response <FallasDResponse> response;

                string ultimoRegistro = SolicitudRevisionTecnicaData.ObtenerUltimaRevisionChofer(CodChofer);

                response = new Response <FallasDResponse>
                {
                    EsCorrecto = true,
                    Valor      = new FallasDResponse {
                        IdSolicitud = ultimoRegistro
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (Exception ex)
            {
                return(new Response <FallasDResponse>(false, null, Functions.MessageError(ex), false));
            }
        }
コード例 #2
0
        public static Response <FallasDResponse> SolicitudRevisionBusqueda(string NivelUsuario, string CodSucursal)
        {
            try
            {
                Response <FallasDResponse>           response;
                List <SolicitudRevisionBusquedaList> List;

                List = new List <SolicitudRevisionBusquedaList>();

                if (NivelUsuario == "2")
                {
                    List = SolicitudRevisionTecnicaData.ListSolicitudRevisionAdmin();
                }
                else if (NivelUsuario == "1")
                {
                    List = SolicitudRevisionTecnicaData.ListSolicitudRevisionUsuario(Convert.ToInt32(CodSucursal).ToString("00#"));
                }

                response = new Response <FallasDResponse>
                {
                    EsCorrecto = true,
                    Valor      = new FallasDResponse {
                        ListBusqueda = List
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (Exception ex)
            {
                return(new Response <FallasDResponse>(false, null, Functions.MessageError(ex), false));
            }
        }
コード例 #3
0
        public static async Task <Response <FallasDResponse> > AnularSolicitudRevision(string IdSolicitudRevision)
        {
            Response <FallasDResponse> response;

            try
            {
                await SolicitudRevisionTecnicaData.AnularSolicitudRevisionTecnica_C(IdSolicitudRevision);

                response = new Response <FallasDResponse>
                {
                    EsCorrecto = true,
                    Valor      = new FallasDResponse
                    {
                        SolicitudRevision = new SolicitudRevisionList()
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
コード例 #4
0
        public static Response <FallasDResponse> SelectSolicitudRevision(string IdsolicitudRevision)
        {
            try
            {
                Response <FallasDResponse> response;
                SolicitudRevisionList      List;

                List = SolicitudRevisionTecnicaData.SelectSolicitudRevision(IdsolicitudRevision);

                response = new Response <FallasDResponse>
                {
                    EsCorrecto = true,
                    Valor      = new FallasDResponse {
                        SolicitudRevision = List
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (Exception ex)
            {
                return(new Response <FallasDResponse>(false, null, Functions.MessageError(ex), false));
            }
        }
コード例 #5
0
        public static Response <InformeResponse> SelectInformeCorrectivoPreventivoTractoCarreta(decimal NumeroInforme, string TipoInforme, int TipoU)
        {
            try
            {
                Response <InformeResponse> response;
                InformeEntity List;
                SolicitudRevisionTecnica_CEntity objDatosInforme;

                List = InformeData.SelectInformeCorrectivoPreventivoTractoCarreta(NumeroInforme, TipoInforme, TipoU);
                if (List != null)
                {
                    objDatosInforme          = SolicitudRevisionTecnicaData.SelectSolicitudRevisionTecnica_C_Informe(List.NumeroInforme);
                    List.IdSolicitudRevision = objDatosInforme.IdSolicitudRevision;
                    List.Kilometraje         = objDatosInforme.Kilometraje;
                }

                response = new Response <InformeResponse>
                {
                    EsCorrecto = true,
                    Valor      = new InformeResponse {
                        Informe = List
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (Exception ex)
            {
                return(new Response <InformeResponse>(false, null, Functions.MessageError(ex), false));
            }
        }
コード例 #6
0
        public static Response <InformeResponse> SelectInforme(int IdInforme)
        {
            try
            {
                Response <InformeResponse> response;
                InformeEntity List;
                SolicitudRevisionTecnica_CEntity objDatosInforme;

                List                     = InformeData.SelectInforme(IdInforme);
                objDatosInforme          = SolicitudRevisionTecnicaData.SelectSolicitudRevisionTecnica_C_Informe(List.NumeroInforme);
                List.IdSolicitudRevision = objDatosInforme.IdSolicitudRevision;
                List.Kilometraje         = objDatosInforme.Kilometraje;

                response = new Response <InformeResponse>
                {
                    EsCorrecto = true,
                    Valor      = new InformeResponse {
                        Informe = List
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (Exception ex)
            {
                return(new Response <InformeResponse>(false, null, Functions.MessageError(ex), false));
            }
        }
コード例 #7
0
        public static async Task <Response <OrdenMasivaResponse> > AnularCorrectivo(OrdenMasivaRequest request)
        {
            Response <OrdenMasivaResponse> response;
            List <OrdenMasivaList>         ListInsertar;
            decimal numInforme;

            ListInsertar = request.ListInsertar;

            try
            {
                foreach (var item in ListInsertar)
                {
                    if (!item.Correctivo)
                    {
                        continue;
                    }

                    numInforme = Convert.ToDecimal(item.NumeroOrden);

                    await SolicitudRevisionTecnicaData.AnularSolicitudRevisionTecnica_C_Correctivo(numInforme);

                    await InformeData.AnularInforme(numInforme, "1");

                    await ProgramacionData.UpdateProgramacionOrdenCorrectivoAnulacion(item.Codi_Programacion);

                    if (item.Preventivo)
                    {
                        //await SolicitudRevisionTecnicaData.AnularSolicitudRevisionTecnica_C_Correctivo(numInforme);
                        await InformeData.AnularInforme(numInforme, "0");

                        await ProgramacionData.UpdateProgramacionOrdenPreventivoAnulacion(item.Codi_Programacion);
                    }
                }

                response = new Response <OrdenMasivaResponse>
                {
                    EsCorrecto = true,
                    Valor      = new OrdenMasivaResponse
                    {
                        List = new List <OrdenMasivaList>()
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (FaultException <ServiceError> )
            {
                throw;
            }
            catch (Exception ex)
            {
                return(new Response <OrdenMasivaResponse>(false, null, Functions.MessageError(ex), false));
            }
        }
コード例 #8
0
        public static async Task <Response <FallasDResponse> > UpdateSolicitudRevision(FallasDRequest request)
        {
            Response <FallasDResponse> response;
            SolicitudRevisionList      objSolicitudRevision;
            decimal valorMaximoOdometro;
            decimal valorMinimoOdometro;
            decimal odometroAnterior;
            decimal odometroNuevo;
            decimal valorMaximoAgregar;
            decimal valorMinimoAgregar;

            try
            {
                objSolicitudRevision = request.SolicitudRevision;
                odometroNuevo        = objSolicitudRevision.Odometro;
                odometroAnterior     = objSolicitudRevision.OdometroAnterior;
                valorMaximoAgregar   = Convert.ToDecimal(ConfiguracionMantenimientoData.SelectValor(Convert.ToInt32(Constants.Configuracion.CODIGO_MAXIMO_ODOMETRO_FALLAS)));
                valorMinimoAgregar   = Convert.ToDecimal(ConfiguracionMantenimientoData.SelectValor(Convert.ToInt32(Constants.Configuracion.CODIGO_MINIMO_ODOMETRO_FALLAS)));
                valorMaximoOdometro  = odometroAnterior + valorMaximoAgregar;
                valorMinimoOdometro  = odometroAnterior - valorMinimoAgregar;

                if (odometroNuevo > valorMaximoOdometro || odometroNuevo < valorMinimoOdometro)
                {
                    BusinessException.Generar(string.Format("Al valor del odómetro solo se le puede agregar {0} mas ó disminuir {1} menos", valorMaximoAgregar, valorMinimoAgregar));
                }

                await SolicitudRevisionTecnicaData.UpdateSolicitudRevisionTecnica_C_CorrelativoInterno(objSolicitudRevision.IdSolicitudRevision, objSolicitudRevision.CorrelativoInterno);

                await AreData.UpdateAre_OdometroAcumulado(objSolicitudRevision.IdUnidad, objSolicitudRevision.Odometro);

                response = new Response <FallasDResponse>
                {
                    EsCorrecto = true,
                    Valor      = new FallasDResponse
                    {
                        SolicitudRevision = new SolicitudRevisionList()
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (Exception ex)
            {
                throw;
            }
        }
コード例 #9
0
        public static async Task <Response <OrdenMasivaResponse> > InsertPreventivo(OrdenMasivaRequest request)
        {
            Response <OrdenMasivaResponse> response;
            List <OrdenMasivaList>         ListInsertar;
            string                      FechaGenerar;
            decimal                     klm_acumulado;
            DateTime                    fechaRegistro;
            string                      usuarioRegistro;
            string                      are_codigo;
            int                         idMaxRevision;
            int                         idMaxInforme;
            decimal                     idNumInforme;
            InformeEntity               objInforme;
            ProgramacionEntity          objProgramacion;
            List <TareasPendientesList> listTareasPendientes;
            InformeTareasEntity         objInformeTareas;

            ListInsertar    = request.ListInsertar;
            FechaGenerar    = request.FechaGenerar;
            fechaRegistro   = DateTime.Now;
            usuarioRegistro = request.UsuarioRegistro;

            try
            {
                foreach (var item in ListInsertar)
                {
                    if (!item.Correctivo)
                    {
                        continue;
                    }
                    if (item.Preventivo)
                    {
                        continue;
                    }

                    are_codigo    = item.IdUnidad;
                    klm_acumulado = AreData.SelectAre(are_codigo).Klm_Acumulados;
                    idMaxRevision = SolicitudRevisionTecnicaData.ObtenerUltimoId();

                    objInforme = new InformeEntity
                    {
                        Are_Codigo           = item.IdUnidad,
                        ChoferEntrega        = item.IDChofer,
                        KmUnidad             = klm_acumulado,
                        Ofi_Codigo           = Convert.ToInt32(item.CodOrigen).ToString("00#"),
                        Fecha                = Convert.ToDateTime(FechaGenerar),
                        CostoManoObra        = 0,
                        CostoRepuestos       = 0,
                        ServicioTerceros     = 0,
                        Observacion          = "",
                        IdUndAlerta          = 0,
                        IdPlanEjecucionTarea = "",
                        Tipo            = "0",
                        UsuarioRegistro = Convert.ToInt16(usuarioRegistro)
                    };

                    idMaxInforme = InformeData.InsertInforme(objInforme);
                    idNumInforme = Convert.ToDecimal(item.NumeroOrden);

                    objProgramacion = new ProgramacionEntity
                    {
                        CODI_PROGRAMACION  = item.Codi_Programacion,
                        NumeroMantenimieto = idNumInforme.ToString(),
                    };

                    await InformeData.UpdateInforme_NumInforme(idMaxInforme, idNumInforme);

                    await ProgramacionData.UpdateProgramacionOrdenPreventivoGeneracion(objProgramacion);

                    //Tareas pendientes
                    listTareasPendientes = TipoMantenimientoData.ListTareasPendientes(are_codigo);

                    foreach (var itemTareasPendientes in listTareasPendientes)
                    {
                        objInformeTareas = new InformeTareasEntity
                        {
                            FechaInicio     = FechaGenerar,
                            IdInforme       = idMaxInforme,
                            IdTarea         = itemTareasPendientes.IdTarea,
                            Observacion     = "",
                            UsuarioRegistro = Convert.ToInt32(usuarioRegistro)
                        };

                        await InformeTareasData.InsertInformeTareas(objInformeTareas);

                        await InformeTareasData.UpdateInformeTareasKilometraje(idMaxInforme, itemTareasPendientes.IdTarea, itemTareasPendientes.KmtActual);
                    }
                }

                response = new Response <OrdenMasivaResponse>
                {
                    EsCorrecto = true,
                    Valor      = new OrdenMasivaResponse
                    {
                        List = new List <OrdenMasivaList>()
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (FaultException <ServiceError> )
            {
                throw;
            }
            catch (Exception ex)
            {
                return(new Response <OrdenMasivaResponse>(false, null, Functions.MessageError(ex), false));
            }
        }
コード例 #10
0
        public static async Task <Response <OrdenMasivaResponse> > InsertCorrectivo(OrdenMasivaRequest request)
        {
            Response <OrdenMasivaResponse> response;
            List <OrdenMasivaList>         ListInsertar;
            string   FechaGenerar;
            decimal  klm_acumulado;
            DateTime fechaRegistro;
            string   usuarioRegistro;
            string   are_codigo;
            int      idMaxRevision;
            int      idMaxInforme;
            decimal  idNumInforme;
            SolicitudRevisionTecnica_CEntity objSolicitudRevision;
            InformeEntity      objInforme;
            ProgramacionEntity objProgramacion;

            ListInsertar    = request.ListInsertar;
            FechaGenerar    = request.FechaGenerar;
            idMaxRevision   = 1;
            idMaxInforme    = 1;
            fechaRegistro   = DateTime.Now;
            usuarioRegistro = request.UsuarioRegistro;

            try
            {
                foreach (var item in ListInsertar)
                {
                    if (item.Correctivo)
                    {
                        continue;
                    }

                    are_codigo    = item.IdUnidad;
                    klm_acumulado = AreData.SelectAre(are_codigo).Klm_Acumulados;
                    idMaxRevision = SolicitudRevisionTecnicaData.ObtenerUltimoId();

                    objSolicitudRevision = new SolicitudRevisionTecnica_CEntity
                    {
                        IdSolicitudRevision = idMaxRevision.ToString(),
                        FechaDoc            = Convert.ToDateTime(FechaGenerar),
                        HorasDoc            = fechaRegistro.ToShortTimeString(),
                        IdUnidad            = item.IdUnidad,
                        IdChofer            = item.IDChofer,
                        CodOrigen           = Convert.ToInt32(item.CodOrigen).ToString("00#"),
                        CodDestino          = Convert.ToInt32(item.CodDestino).ToString("00#"),
                        Kilometraje         = klm_acumulado,
                        UsuarioRegistro     = Convert.ToInt32(usuarioRegistro).ToString("000#"),
                        HoraRegistro        = fechaRegistro.ToShortTimeString(),
                        FechaRegistro       = fechaRegistro,
                        FechaViaje          = Convert.ToDateTime(item.FechaViaje),
                        HoraViahe           = item.HoraViaje,
                        Estado = 1
                    };
                    await SolicitudRevisionTecnicaData.InsertSolicitudRevisionTecnica_C(objSolicitudRevision);

                    objInforme = new InformeEntity
                    {
                        Are_Codigo           = item.IdUnidad,
                        ChoferEntrega        = item.IDChofer,
                        KmUnidad             = klm_acumulado,
                        Ofi_Codigo           = Convert.ToInt32(item.CodOrigen).ToString("00#"),
                        Fecha                = Convert.ToDateTime(FechaGenerar),
                        CostoManoObra        = 0,
                        CostoRepuestos       = 0,
                        ServicioTerceros     = 0,
                        Observacion          = "",
                        IdUndAlerta          = 0,
                        IdPlanEjecucionTarea = "",
                        Tipo            = "1",
                        UsuarioRegistro = Convert.ToInt16(usuarioRegistro)
                    };

                    idMaxInforme = InformeData.InsertInforme(objInforme);
                    idNumInforme = InformeData.ObtenerUltimoId();

                    objProgramacion = new ProgramacionEntity
                    {
                        CODI_BUS           = item.IdUnidad,
                        CODI_PROGRAMACION  = item.Codi_Programacion,
                        FechaGeneracion    = FechaGenerar,
                        HoraGeneracion     = fechaRegistro.ToShortTimeString(),
                        KMT_VIAJE          = klm_acumulado,
                        UsuarioGeneracion  = usuarioRegistro,
                        NumeroMantenimieto = "",
                        NumeroOrden        = idNumInforme.ToString()
                    };

                    await InformeData.UpdateInforme_NumInforme(idMaxInforme, idNumInforme);

                    await SolicitudRevisionTecnicaData.UpdateSolicitudRevisionTecnica_C_Correctivo(idMaxRevision.ToString(), klm_acumulado, idNumInforme);

                    await ProgramacionData.UpdateProgramacionOrdenCorrectivoGeneracion(objProgramacion);
                }

                response = new Response <OrdenMasivaResponse>
                {
                    EsCorrecto = true,
                    Valor      = new OrdenMasivaResponse
                    {
                        List = new List <OrdenMasivaList>()
                    },
                    Mensaje = "OK",
                    Estado  = true,
                };

                return(response);
            }
            catch (FaultException <ServiceError> )
            {
                throw;
            }
            catch (Exception ex)
            {
                return(new Response <OrdenMasivaResponse>(false, null, Functions.MessageError(ex), false));
            }
        }