public static RequisitionChangeLog ParseToViewModel(this RequisicoesRegAlteracoes item) { if (item != null) { return(new RequisitionChangeLog() { Id = item.Id, RequisitionNo = item.NºRequisição, State = (RequisitionStates)item.Estado, StateDescription = EnumHelper.GetDescriptionFor(typeof(RequisitionStates), item.Estado), ModifiedAt = item.ModificadoEm, ModifiedAtAsString = item.ModificadoEm.ToString("yyyy-MM-dd HH:mm:ss"), ModifiedBy = item.ModificadoPor }); } return(null); }
public static Requisição Update(Requisição objectToUpdate, bool updateLines = false, bool addLogEntry = false) { try { using (var ctx = new SuchDBContext()) { if (updateLines && objectToUpdate.LinhasRequisição != null) { DBRequestLine.Update(objectToUpdate.LinhasRequisição.ToList(), ctx); } if (addLogEntry) { var logEntry = new RequisicoesRegAlteracoes(); logEntry.ModificadoEm = DateTime.Now; logEntry.ModificadoPor = objectToUpdate.UtilizadorModificação; logEntry.NºRequisição = objectToUpdate.NºRequisição; if (objectToUpdate.Estado.HasValue) { logEntry.Estado = objectToUpdate.Estado.Value; } ctx.RequisicoesRegAlteracoes.Add(logEntry); } objectToUpdate.DataHoraModificação = DateTime.Now; ctx.Requisição.Update(objectToUpdate); ctx.SaveChanges(); objectToUpdate = GetById(objectToUpdate.NºRequisição); } return(objectToUpdate); } catch (Exception ex) { return(null); } }