public async Task AgregarOrdenReparacionCelular(DtoOrdenDeReparacionCelular pOrdenCel)
        {
            var mOrden = await iUdt.RepositorioOrdenDeReparacion.Obtener(pOrdenCel.DtoOrdenDeReparacionCelularId);

            if (mOrden == null)
            {
                Cliente iCliente = await iUdt.RepositorioCliente.ObtenerClientePorDni(pOrdenCel.dni);

                if (iCliente == null)
                {
                    throw new ClienteNoEncontrado("No se encontro Cliente");
                }
                OrdenDeReparacion iOrdenRepaCel = new OrdenDeReparacion
                {
                    presupuesto       = pOrdenCel.presupuesto,
                    seña              = pOrdenCel.seña,
                    proveedor         = pOrdenCel.proveedor,
                    costoRepuesto     = pOrdenCel.costoRepuesto,
                    fechaIngreso      = pOrdenCel.fechaIngreso,
                    fechaEgreso       = pOrdenCel.fecheEgreso,
                    Cliente           = iCliente,
                    detalle           = pOrdenCel.detalleOrden,
                    estadoReparacion  = pOrdenCel.estado,
                    detalleReparacion = pOrdenCel.detalleReparacion,
                    precio            = pOrdenCel.precio,
                    TipoEquipo        = new TipoEquipo
                    {
                        nombre  = "Celular",
                        Celular = new Celular
                        {
                            tarjetaSd     = pOrdenCel.tarjetaSD,
                            chip          = pOrdenCel.chip,
                            diagnostico   = pOrdenCel.diagnosticoCelular,
                            empresa       = pOrdenCel.empresa,
                            pin           = pOrdenCel.pin,
                            enciende      = pOrdenCel.enciende,
                            patron        = pOrdenCel.patron,
                            ModeloCelular = new ModeloCelular
                            {
                                nombre       = pOrdenCel.nombreModeloCelular,
                                version      = pOrdenCel.versionCelular,
                                MarcaCelular = new MarcaCelular
                                {
                                    nombre = pOrdenCel.nombreMarcaCelular
                                }
                            }
                        }
                    }
                };
                await iUdt.RepositorioOrdenDeReparacion.Agregar(iOrdenRepaCel);

                await iUdt.Guardar();
            }
            else
            {
                throw new OrdenReparacionCelularExistente("La orden reparación ya se encuentra registrada");
            }
        }
        public async Task AgregarOrdenReparacionPc(DtoOrdenDeReparacionPc pOrdenPc)
        {
            var mOrden = await iUdt.RepositorioOrdenDeReparacion.Obtener(pOrdenPc.DtoOrdenDeReparacionPcId);

            if (mOrden == null)
            {
                Cliente iCliente = await iUdt.RepositorioCliente.ObtenerClientePorDni(pOrdenPc.dni);

                if (iCliente == null)
                {
                    throw new ClienteNoEncontrado("No se encontro Cliente");
                }
                OrdenDeReparacion iOrdenRepaPc = new OrdenDeReparacion
                {
                    costoRepuesto     = pOrdenPc.costoRepuesto,
                    presupuesto       = pOrdenPc.presupuesto,
                    seña              = pOrdenPc.seña,
                    proveedor         = pOrdenPc.proveedor,
                    fechaIngreso      = pOrdenPc.fechaIngreso,
                    Cliente           = iCliente,
                    detalle           = pOrdenPc.detalleOrden,
                    estadoReparacion  = pOrdenPc.estado,
                    detalleReparacion = pOrdenPc.detalleReparacion,
                    precio            = pOrdenPc.precio,
                    TipoEquipo        = new TipoEquipo
                    {
                        nombre = "Pc",
                        Pc     = new Pc
                        {
                            diagnostico = pOrdenPc.diagnosticoPc,
                            ModeloPc    = new ModeloPc
                            {
                                nombre  = pOrdenPc.nombreModeloPc,
                                version = pOrdenPc.versionPc,
                                MarcaPc = new MarcaPc
                                {
                                    nombre = pOrdenPc.nombreMarcaPc
                                }
                            }
                        }
                    }
                };
                await iUdt.RepositorioOrdenDeReparacion.Agregar(iOrdenRepaPc);

                await iUdt.Guardar();
            }
            else
            {
                throw new OrdenReparacionPcExistente("La orden reparación ya se encuentra registrada");
            }
        }