public IActionResult UpdateRecordViewByName(string Name, string ViewName, [FromBody]JObject submitObj) { RecordViewResponse response = new RecordViewResponse(); InputRecordView view = new InputRecordView(); Type inputViewType = view.GetType(); foreach (var prop in submitObj.Properties()) { int count = inputViewType.GetProperties().Where(n => n.Name.ToLower() == prop.Name.ToLower()).Count(); if (count < 1) response.Errors.Add(new ErrorModel(prop.Name, prop.Value.ToString(), "Input object contains property that is not part of the object model.")); } if (response.Errors.Count > 0) return DoBadRequestResponse(response); try { view = InputRecordView.Convert(submitObj); } catch (Exception e) { return DoBadRequestResponse(response, "Input object is not in valid format! It cannot be converted.", e); } return DoResponse(entMan.UpdateRecordView(Name, view)); }
public IActionResult PatchRecordViewByName(string Name, string ViewName, [FromBody]JObject submitObj) { RecordViewResponse response = new RecordViewResponse(); Entity entity = new Entity(); InputRecordView view = new InputRecordView(); try { DbEntity storageEntity = DbContext.Current.EntityRepository.Read(Name); if (storageEntity == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Entity with such Name does not exist!"; return DoBadRequestResponse(response); } entity = storageEntity.MapTo<Entity>(); RecordView updatedView = entity.RecordViews.FirstOrDefault(v => v.Name == ViewName); if (updatedView == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "View with such Name does not exist!"; return DoBadRequestResponse(response); } view = updatedView.MapTo<InputRecordView>(); Type inputViewType = view.GetType(); foreach (var prop in submitObj.Properties()) { int count = inputViewType.GetProperties().Where(n => n.Name.ToLower() == prop.Name.ToLower()).Count(); if (count < 1) response.Errors.Add(new ErrorModel(prop.Name, prop.Value.ToString(), "Input object contains property that is not part of the object model.")); } if (response.Errors.Count > 0) return DoBadRequestResponse(response); InputRecordView inputView = InputRecordView.Convert(submitObj); foreach (var prop in submitObj.Properties()) { if (prop.Name.ToLower() == "name") view.Name = inputView.Name; if (prop.Name.ToLower() == "label") view.Label = inputView.Label; if (prop.Name.ToLower() == "title") view.Title = inputView.Title; if (prop.Name.ToLower() == "default") view.Default = inputView.Default; if (prop.Name.ToLower() == "system") view.System = inputView.System; if (prop.Name.ToLower() == "weight") view.Weight = inputView.Weight; if (prop.Name.ToLower() == "cssclass") view.CssClass = inputView.CssClass; if (prop.Name.ToLower() == "type") view.Type = inputView.Type; if (prop.Name.ToLower() == "regions") view.Regions = inputView.Regions; if (prop.Name.ToLower() == "sidebar") view.Sidebar = inputView.Sidebar; if (prop.Name.ToLower() == "iconname") view.IconName = inputView.IconName; if (prop.Name.ToLower() == "dynamichtmltemplate") view.DynamicHtmlTemplate = inputView.DynamicHtmlTemplate; if (prop.Name.ToLower() == "datasourceurl") view.DataSourceUrl = inputView.DataSourceUrl; if (prop.Name.ToLower() == "actionitems") view.ActionItems = inputView.ActionItems; if (prop.Name.ToLower() == "servicecode") view.ServiceCode = inputView.ServiceCode; } } catch (Exception e) { return DoBadRequestResponse(response, "Input object is not in valid format! It cannot be converted.", e); } return DoResponse(entMan.UpdateRecordView(entity, view)); }
public IActionResult CreateRecordViewByName(string Name, [FromBody]JObject submitObj) { RecordViewResponse response = new RecordViewResponse(); InputRecordView view = new InputRecordView(); try { view = InputRecordView.Convert(submitObj); } catch (Exception e) { return DoBadRequestResponse(response, "Input object is not in valid format! It cannot be converted.", e); } return DoResponse(entMan.CreateRecordView(Name, view)); }
private RecordViewResponse ReadRecordView(Entity entity, RecordView recordView) { RecordViewResponse response = new RecordViewResponse { Success = true, Message = "The record view was successfully returned!", }; try { response.Object = recordView; } catch (Exception e) { response.Timestamp = DateTime.UtcNow; response.Success = false; #if DEBUG response.Message = e.Message + e.StackTrace; #else response.Message = "An internal error occurred!"; #endif return response; } response.Timestamp = DateTime.Now; return response; }
public RecordViewResponse CreateRecordView(string entityName, InputRecordView inputRecordView) { RecordViewResponse response = new RecordViewResponse(); IStorageEntity storageEntity = EntityRepository.Read(entityName); if (storageEntity == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Entity with such name does not exist!"; return response; } Entity entity = storageEntity.MapTo<Entity>(); return CreateRecordView(entity, inputRecordView); }
public RecordViewResponse UpdateRecordView(Entity entity, InputRecordView inputRecordView) { RecordViewResponse response = new RecordViewResponse { Success = true, Message = "The record view was successfully updated!", }; RecordView recordView = inputRecordView.MapTo<RecordView>(); try { response.Object = recordView; response.Errors = ValidateRecordView(entity, inputRecordView, true); recordView = inputRecordView.MapTo<RecordView>(); if (response.Errors.Count > 0) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not updated. Validation error occurred!"; return response; } RecordView recordViewForDelete = entity.RecordViews.FirstOrDefault(r => r.Id == recordView.Id); if (recordViewForDelete.Id == recordView.Id) entity.RecordViews.Remove(recordViewForDelete); entity.RecordViews.Add(recordView); IStorageEntity updatedEntity = entity.MapTo<IStorageEntity>(); bool result = EntityRepository.Update(updatedEntity); if (!result) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not updated! An internal error occurred!"; return response; } } catch (Exception e) { response.Success = false; response.Object = recordView; response.Timestamp = DateTime.UtcNow; #if DEBUG response.Message = e.Message + e.StackTrace; #else response.Message = "The record view was not updated. An internal error occurred!"; #endif return response; } return ReadRecordView(entity.Id, recordView.Id); }
private RecordViewResponse CreateRecordView(Entity entity, InputRecordView inputRecordView) { RecordViewResponse response = new RecordViewResponse { Success = true, Message = "The record view was successfully created!", }; if (!inputRecordView.Id.HasValue) inputRecordView.Id = Guid.NewGuid(); RecordView recordView = inputRecordView.MapTo<RecordView>(); try { response.Object = recordView; response.Errors = ValidateRecordView(entity, inputRecordView, false); recordView = inputRecordView.MapTo<RecordView>(); if (response.Errors.Count > 0) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not created. Validation error occurred!"; return response; } entity.RecordViews.Add(recordView); IStorageEntity updatedEntity = entity.MapTo<IStorageEntity>(); bool result = EntityRepository.Update(updatedEntity); if (!result) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not created! An internal error occurred!"; return response; } } catch (Exception e) { response.Success = false; response.Object = recordView; response.Timestamp = DateTime.UtcNow; #if DEBUG response.Message = e.Message + e.StackTrace; #else response.Message = "The record view was not created. An internal error occurred!"; #endif return response; } return ReadRecordView(entity.Id, recordView.Id); }
public RecordViewResponse ReadRecordView(string entityName, string name) { RecordViewResponse response = new RecordViewResponse(); EntityResponse entityResponse = ReadEntity(entityName); if (!entityResponse.Success) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = entityResponse.Message; return response; } else if (entityResponse.Object == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Entity with such name does not exist!"; return response; } Entity entity = entityResponse.Object; RecordView recordView = entity.RecordViews.FirstOrDefault(r => r.Name == name); if (recordView == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Record View with such Name does not exist!"; return response; } return ReadRecordView(entity, recordView); }
public RecordViewResponse ReadRecordView(Guid entityId, Guid id) { RecordViewResponse response = new RecordViewResponse(); EntityResponse entityResponse = ReadEntity(entityId); if (!entityResponse.Success) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = entityResponse.Message; return response; } else if (entityResponse.Object == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Entity with such Id does not exist!"; return response; } Entity entity = entityResponse.Object; RecordView recordView = entity.RecordViews.FirstOrDefault(r => r.Id == id); if (recordView == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Record View with such Id does not exist!"; return response; } return ReadRecordView(entity, recordView); }
public RecordViewResponse DeleteRecordView(string entityName, string name) { RecordViewResponse response = new RecordViewResponse { Success = true, Message = "The record view was successfully deleted!", }; try { IStorageEntity storageEntity = EntityRepository.Read(entityName); if (storageEntity == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Entity with such Name does not exist!"; return response; } Entity entity = storageEntity.MapTo<Entity>(); RecordView recordView = entity.RecordViews.FirstOrDefault(r => r.Name == name); if (recordView == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not deleted. Validation error occurred!"; response.Errors.Add(new ErrorModel("name", name, "Record view with such Name does not exist!")); return response; } entity.RecordViews.Remove(recordView); IStorageEntity updatedEntity = entity.MapTo<IStorageEntity>(); bool result = EntityRepository.Update(updatedEntity); if (!result) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not updated! An internal error occurred!"; return response; } } catch (Exception e) { response.Timestamp = DateTime.UtcNow; response.Success = false; #if DEBUG response.Message = e.Message + e.StackTrace; #else response.Message = "The record view was not deleted. An internal error occurred!"; #endif return response; } response.Timestamp = DateTime.UtcNow; return response; }
public RecordViewResponse CreateRecordView(string entityName, InputRecordView inputRecordView) { RecordViewResponse response = new RecordViewResponse(); var entityResponse = ReadEntity(entityName); if (!entityResponse.Success) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = entityResponse.Message; return response; } else if (entityResponse.Object == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Entity with such Id does not exist!"; return response; } Entity entity = entityResponse.Object; return CreateRecordView(entity, inputRecordView); }
public RecordViewResponse DeleteRecordView(Guid entityId, Guid id) { RecordViewResponse response = new RecordViewResponse { Success = true, Message = "The record view was successfully deleted!", }; try { var entityResponse = ReadEntity(entityId); if (!entityResponse.Success) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = entityResponse.Message; return response; } else if (entityResponse.Object == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "Entity with such Id does not exist!"; return response; } Entity entity = entityResponse.Object; RecordView recordView = entity.RecordViews.FirstOrDefault(r => r.Id == id); if (recordView == null) { response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not deleted. Validation error occurred!"; response.Errors.Add(new ErrorModel("id", id.ToString(), "Record view with such Id does not exist!")); return response; } entity.RecordViews.Remove(recordView); DbEntity updatedEntity = entity.MapTo<DbEntity>(); bool result = DbContext.Current.EntityRepository.Update(updatedEntity); if (!result) { Cache.ClearEntities(); response.Timestamp = DateTime.UtcNow; response.Success = false; response.Message = "The record view was not updated! An internal error occurred!"; return response; } } catch (Exception e) { Cache.ClearEntities(); response.Timestamp = DateTime.UtcNow; response.Success = false; #if DEBUG response.Message = e.Message + e.StackTrace; #else response.Message = "The record view was not deleted. An internal error occurred!"; #endif return response; } Cache.ClearEntities(); response.Timestamp = DateTime.UtcNow; return response; }