public async Task <IHttpActionResult> SetAutores() { //id is FUENTE de proyecto: 'RIIE ACH' var max = 0; try { log.Info(new MDCSet(this.ControllerContext.RouteData)); //SIGCOEntities. //SIGCOEntities sigco = new SIGCOEntities(System.Configuration.ConfigurationManager.ConnectionStrings["SIGCOEntities"].ConnectionString); var queryString = "select * FROM [SIGCO].[MT].[tAutorOC]"; var entities = await Task.Run(() => { return(CreateCommandSIGCO2(queryString)); }); string JSONresult; JSONresult = JsonConvert.SerializeObject(entities); JavaScriptSerializer jss = new JavaScriptSerializer(); var autores = jss.Deserialize <List <TAutorOC> >(JSONresult); TAutorOC autor = new TAutorOC(); InformeTFRepository itfR = new InformeTFRepository(); var itfIds = await itfR.getAllBySinFKs(); var a = new AutorITF(); AutorITFRepository autR = new AutorITFRepository(); foreach (var i in itfIds) { int ids2 = i.idSigco2 == null ? 0 : i.idSigco2.Value; var x = autores.Where(y => y.idOC == ids2.ToString()).ToList(); if (x != null) { foreach (var e in x) { a = new AutorITF(); if (e.idOC.Contains("3011")) { var foo = ""; } a.AutorITFId = String.Concat(e.idOC.Trim(), "-" + e.numEmp.Trim()).Trim(); a.InformeTecnicoFinalId = i.InformeTecnicoFinalId.Trim(); a.Estado = true; a.ClaveAutor = e.numEmp.Trim(); try { log.Info(new MDCSet(this.ControllerContext.RouteData)); await autR.Create(a); } catch (Exception ex) { autR = new AutorITFRepository(); } } } } return(Ok("ok")); } catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e); e.Source = max + ""; return(InternalServerError(e)); } }
public async Task Create(AutorITF model) { try { _db.dbSetAutorITF.Add(model); await _db.SaveChangesAsync(); } catch (Exception e) { throw new Exception(e.Message, e); } }
public async Task Update(AutorITF model) { try { var _model = await _db.dbSetAutorITF.FirstOrDefaultAsync(e => e.AutorITFId == model.AutorITFId); if (_model != null) { _db.Entry(_model).CurrentValues.SetValues(model); await _db.SaveChangesAsync(); } } catch (Exception e) { throw new Exception(e.Message, e); } }
public async Task <IHttpActionResult> AddAutor(AutorITF autor) { try { log.Info(new MDCSet(this.ControllerContext.RouteData)); if (String.IsNullOrEmpty(autor.AutorITFId)) { autor.AutorITFId = autor.InformeTecnicoFinalId + "-" + autor.ClaveAutor; } await dbITF.AddAutor(autor); return(Ok("Registro creado exitosamente!")); } catch (Exception e) { log.Error(new MDCSet(this.ControllerContext.RouteData), e); return(InternalServerError(e)); } }