public ActionResult SaveTarifa(TarifaEntity tarifa) { bool isSaved = false; DataAccessAdapterBase adapter = Helper.GetDataAccessAdapter(User.Identity.Name); using (adapter) { adapter.StartTransaction(System.Data.IsolationLevel.Serializable, "SaveTarifa"); TarifaEntity tarifa4Save; if (tarifa.TarifaId == 0) { tarifa.IsActive = true; tarifa4Save = tarifa; tarifa4Save.FirmaId = UserEntity.GetFirmaId(adapter, User.Identity.Name); } else { tarifa4Save = TarifaEntity.FetchTarifa(adapter, null, tarifa.TarifaId); tarifa4Save.UpdateDataFromOtherObject(tarifa, null, null); } isSaved = adapter.SaveEntity(tarifa4Save); adapter.Commit(); } dynamic response = new { IsSaved = isSaved }; return(CreateJsonResponse(response)); }
public ActionResult GetTarifa(long tarifaId) { using (DataAccessAdapterBase adapter = Helper.GetDataAccessAdapter()) { TarifaEntity tarifa = TarifaEntity.FetchTarifa(adapter, null, tarifaId); return(CreateJsonResponse(tarifa)); } }
public ActionResult SaveRacun(string racunGlavaJson, string racunStavkaCollectionJson) { DataAccessAdapterBase adapter = Helper.GetDataAccessAdapter(User.Identity.Name); RacunGlavaEntity racunGlava4Save; bool isSaved = false; using (adapter) { adapter.StartTransaction(System.Data.IsolationLevel.Serializable, "SaveRacun"); JsonSerializerSettings jsonSettings = new JsonSerializerSettings(); CultureInfo currentCulture = System.Threading.Thread.CurrentThread.CurrentCulture; jsonSettings.Culture = currentCulture; RacunGlavaEntity racunGlava = JsonConvert.DeserializeObject <RacunGlavaEntity>(racunGlavaJson, jsonSettings); if (racunGlava.RacunGlavaId == 0) { long firmaId = UserEntity.GetFirmaId(adapter, User.Identity.Name); racunGlava4Save = racunGlava; racunGlava4Save.Godina = ConfigEntity.GetInstance(adapter, firmaId).AktivnaGodina; racunGlava4Save.BrojRacuna = BrojacEntity.GetNextNumber(adapter, firmaId, BrojacEnum.Racun, racunGlava4Save.Godina); racunGlava4Save.FirmaId = firmaId; } else { PrefetchPath2 prefetchPath = new PrefetchPath2(EntityType.RacunGlavaEntity); prefetchPath.Add(RacunGlavaEntity.PrefetchPathRacunStavkaCollection); racunGlava4Save = RacunGlavaEntity.FetchRacunGlava(adapter, prefetchPath, racunGlava.RacunGlavaId); racunGlava4Save.UpdateDataFromOtherObject(racunGlava, null, null); } racunGlava4Save.TarifaStopa = TarifaEntity.FetchTarifa(adapter, null, racunGlava4Save.TarifaId).Stopa; if (racunGlava4Save.Godina != racunGlava4Save.Datum.Year) { // TODO: create mechanism for pushing errors to client. Currently check is on client. Remove client check after push error mechanism is implemented. } else { isSaved = adapter.SaveEntity(racunGlava4Save, true, false); } if (isSaved) { IEnumerable <RacunStavkaEntity> racunStavkaCollectionToDelete = racunGlava4Save.RacunStavkaCollection.GetEntitiesNotIncludedInJson(racunStavkaCollectionJson, jsonSettings); foreach (RacunStavkaEntity racunStavka in racunStavkaCollectionToDelete) { if (isSaved) { racunGlava4Save.RacunStavkaCollection.Remove(racunStavka); isSaved = adapter.DeleteEntity(racunStavka); } } racunGlava4Save.RacunStavkaCollection.UpdateEntityCollectionFromJson(racunStavkaCollectionJson, RacunStavkaFields.RacunStavkaId, null, null, jsonSettings); foreach (RacunStavkaEntity racunStavka in racunGlava4Save.RacunStavkaCollection) { if (isSaved) { racunStavka.RecalculateData(racunGlava.TarifaStopa); isSaved = adapter.SaveEntity(racunStavka, false, false); } } } adapter.Commit(); } dynamic response = new { IsSaved = isSaved, RacunGlavaId = racunGlava4Save.RacunGlavaId }; return(CreateJsonResponse(response)); }