public void UpdateModel(WebEvento model, WebEventoViewModel viewModel) { if (string.IsNullOrEmpty(viewModel.Id)) { model.SocietaProvinciale = _soc.GetById(UserIdSocietaProvinciale); model.Disciplina = _disciplina.GetById(UserIdDisciplina); } model.Societa = viewModel.SocietaId != 0 ? _soc.GetById(viewModel.SocietaId ) : null; model.Descrizione = viewModel.Descrizione; model.DataEvento = viewModel.DataEvento; model.Anno = viewModel.DataEvento.Year; model.PubblicaEvento = viewModel.PubblicaEvento; model.Luogo = viewModel.Luogo; model.Provincia = viewModel.Provincia; model.Organizzazione= viewModel.Organizzazione; model.EMailOrganizzazione= viewModel.EMailOrganizzazione; model.TelefonoOrganizzazione = viewModel.TelefonoOrganizzazione; model.FaxOrganizzazione = viewModel.FaxOrganizzazione; model.Referente = viewModel.Referente; model.EMailReferente = viewModel.EMailReferente; model.TelefonoReferente = viewModel.TelefonoReferente; model.Url = viewModel.Url; model.NoteEvento = viewModel.NoteEvento; model.NumerazioneAutomatica = viewModel.NumerazioneAutomatica; MergeHelper.Merge(model, el => el.Righe, viewModel.Righe, (m, vm) => m.Id == vm.Id, (m, mi, vmi) => { mi.Distanza = vmi.Distanza; mi.Punteggio = vmi.Punteggio; mi.QuotaIscrizione = vmi.QuotaIscrizione; mi.Descrizione = vmi.Descrizione; mi.Volontari = vmi.Volontari; mi.CertificatoObbligatorio = vmi.CertificatoObbligatorio; }); }
public ModelError Validate(WebEventoViewModel viewModel) { var ret = new ModelError(); ret.FieldRequired("Descrizione", viewModel.Descrizione); ret.FieldRequired("Luogo", viewModel.Luogo); ret.FieldDate("DataEvento", viewModel.DataEvento ); return ret; }
public Envelope<WebEventoGridViewModel> Save(WebEventoViewModel viewModel) { var ret = new Envelope<WebEventoGridViewModel>(); try { if (viewModel == null) return ret.SetMessage(HelperApi.Forbidden("Oggetto vuoto")); WebEvento model; if (string.IsNullOrEmpty(viewModel.Id)) model = new WebEvento(); else { model = RepositoryEventi().SingleOrDefault(x => x.Id == viewModel.Id); if(model == null) return ret.SetMessage(HelperApi.NotFound()); } var validation = Validate(viewModel); if (validation.IsError()) return ret.SetMessage(validation.Message()); UpdateModel(model, viewModel); _evento.SaveOrUpdate(model); return GetElement(model.Id); } catch (Exception ex) { return ret.SetMessage(HelperApi.Error("ERRORE:" + ex.Message)); } }