Esempio n. 1
0
                                                       [HttpGet] public async Task <IHttpActionResult> GetByClave(string clave)
                                                       {
                                                           try {
                                                               List <PIExterno> PIExterno = new List <PIExterno>();
                                                               var colaboracionPIExterno  = await _autoresPIExterno.GetAllColaboracion(clave);

                                                               var aux = await _repository.GetByIdColaboracion(colaboracionPIExterno);

                                                               foreach (var f in aux)
                                                               {
                                                                   PIExterno.Add(f);
                                                               }
                                                               var result = await _repository.GetByClave(clave);

                                                               foreach (var x in result)
                                                               {
                                                                   PIExterno.Add(x);
                                                               }
                                                               ///////////////////////////////
                                                               var resultclave = await _requisicionesREpo.GetByClave(clave);

                                                               var resultautores = await _autoresPatri.GetByColaboracionRequisicion(clave);

                                                               List <RequisicionesPI> RequisicionesPI = new List <RequisicionesPI>();
                                                               foreach (var item in resultclave)
                                                               {
                                                                   RequisicionesPI.Add(item);
                                                               }
                                                               foreach (var item in resultautores)
                                                               {
                                                                   var solicitud = await _requisicionesREpo.GetById(item.RequisicionesPIId); RequisicionesPI.Add(solicitud);
                                                               }
                                                               var resultadosPI = RequisicionesPI.GroupBy(x => x.RequisicionesPIId).Select(y => y.First());
                                                               PIExterno.RemoveAll(item => item == null);
                                                               var resu = PIExterno.GroupBy(x => x.PIExternoId).Select(y => y.First());
                                                               List <PIExterno> PIExterno2 = new List <PIExterno>();
                                                               foreach (var item in resu)
                                                               {
                                                                   PIExterno2.Add(item);
                                                               }
                                                               foreach (var item in resultadosPI)
                                                               {
                                                                   PIExterno Obj = new PIExterno();
                                                                   Obj.PIExternoId        = item.RequisicionesPIId;
                                                                   Obj.FechaValidacion    = item.FechaSolicitud;
                                                                   Obj.Titulo             = item.Titulo;
                                                                   Obj.TipoPIId           = item.TipoPIId;
                                                                   Obj.TipoPI             = item.TipoPI;
                                                                   Obj.NumSolicitudTitulo = "Patrimonial";
                                                                   Obj.EstadoFlujoId      = 3;
                                                                   PIExterno2.Add(Obj);
                                                               }
                                                               ///////////////////////////////


                                                               return(Ok(PIExterno2));
                                                           }
                                                           catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e);
                                                                                 return(InternalServerError(e)); }
                                                       }