/// <summary> /// salva um tipo de atividade /// </summary> /// <param name="ent"></param> public virtual void Save(TipoAtividade ent) { if ((ent.Id == 0) || (!_db.TiposAtividade.Any(x => x.Id == ent.Id))) { _db.TiposAtividade.Add(ent); } _db.SaveChanges(); }
/// <summary> /// salva um feriado /// </summary> /// <param name="ent"></param> public virtual void Save(Feriado ent) { if ((ent.Id == 0) || (!_db.Feriados.Any(x => x.Id == ent.Id))) { _db.Feriados.Add(ent); } _db.SaveChanges(); }
/// <summary> /// salva um node /// </summary> /// <param name="ent"></param> public virtual void Save(ProjectNode ent) { if ((ent.Id == 0) || (!_db.ProjectNodes.Any(x => x.Id == ent.Id))) { _db.ProjectNodes.Add(ent); } _db.SaveChanges(); }
/// <summary> /// salva uma ação do sistema /// </summary> /// <param name="ent"></param> public virtual void Save(Acao ent) { if ((ent.Id == 0) || (!_db.Acoes.Any(x => x.Id == ent.Id))) { _db.Acoes.Add(ent); } _db.SaveChanges(); }
/// <summary> /// salva um usuário /// </summary> /// <param name="ent"></param> public virtual void Save(Usuario ent) { if ((ent.Id == 0) || (!_db.Usuarios.Any(x => x.Id == ent.Id))) { _db.Usuarios.Add(ent); } else { _db.Entry(ent).State = EntityState.Modified; } _db.SaveChanges(); }
/// <summary> /// salva uma atividade, se for correto do ponto de vista do negócio fazer isso /// não salva a atividade caso quem esteja editando seja um usuário e o período seja fechado /// </summary> /// <param name="att">Atividade - atividade a ser salva</param> /// <param name="podeSalvarReferenciaFechada">bool - se true, permite salvar atividades em períodos fechados.</param> public virtual void Save(Atividade att, bool podeSalvarReferenciaFechada = false) { DateTime database = new DateTime(att.Inicio.Year, att.Inicio.Month, 1); Referencia refe = att.Usuario.GetReferencia(att.Inicio.Year, att.Inicio.Month); if (!refe.Fechado || podeSalvarReferenciaFechada) { if (att.ProjectNode != null) { att.Cliente = att.ProjectNode.GetCliente(); } //todo: colocar verificação de duplicidade por data inicial aqui, pesquisar para não lançar duas vezes if (att.Id == 0) { _db.Atividades.Add(att); } refe.SincronizaAtividades(database, new CalendarioServices()); _db.SaveChanges(); } }