public async Task <IActionResult> PutProjectSettingsModel(int id, ProjectSettingsModel projectSettingsModel) { if (id != projectSettingsModel.Id) { return(BadRequest()); } _context.Entry(projectSettingsModel).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProjectSettingsModelExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
/// <summary> /// Set ProjectSettingsModel Settings by EntityModel /// </summary> /// <param name="projectSttings"></param> /// <returns></returns> private async Task <ProjectSettingsModel> SetProjectSettings(AdminMasterSettings projectSettings, int projectId) { ProjectSettingsModel projectSettingsModel = new ProjectSettingsModel { Id = projectSettings.Id, ProjectId = projectSettings.ProjectId, VSTDeskActive = projectSettings.VstdeskActive, CreatedItemStatus = projectSettings.CreatedItemStatus, CreatedItemType = projectSettings.CreatedItemType, DefaultAssignment = projectSettings.DefaultAssignment, Layout = new Models.Layout(), GridVisibleFields = new GridVisibleFieldsModel(), WorkItemsList = await setWorkItemsModel(projectSettings.WorkItems != null?projectSettings.WorkItems.Split(',').ToList() : new List <string>()), EditableFields = new Models.EditableFields(), WorkItemsState = await SetItemStatus(projectSettings.Status != null?projectSettings.Status.Split(",").ToList() : new List <string>(), projectId) //new Models.Status() }; SetProperties(projectSettings.Layout.Replace(" ", ""), typeof(Models.Layout), projectSettingsModel.Layout); SetProperties(projectSettings.GridVisibleFields.Replace(" ", ""), typeof(Models.GridVisibleFieldsModel), projectSettingsModel.GridVisibleFields); SetProperties(projectSettings.EditableFields.Replace(" ", ""), typeof(Models.EditableFields), projectSettingsModel.EditableFields); return(projectSettingsModel); }
public async Task <bool> UpdateProjectSettings(ProjectSettingsModel projectSettingsModel) { //Set the ProjectSettingsModel data to AdminMasterSettings entity model. var adminMasterSettings = new AdminMasterSettings() { Id = projectSettingsModel.Id, ProjectId = projectSettingsModel.ProjectId, CreatedItemStatus = projectSettingsModel.CreatedItemStatus, DefaultAssignment = projectSettingsModel.DefaultAssignment, VstdeskActive = projectSettingsModel.VSTDeskActive, CreatedItemType = projectSettingsModel.CreatedItemType, EditableFields = getValues(projectSettingsModel.EditableFields), Layout = getValues(projectSettingsModel.Layout), GridVisibleFields = getValues(projectSettingsModel.GridVisibleFields), Status = string.Join(",", projectSettingsModel.WorkItemsState.Where(x => x.IsSelected == true).Select(y => y.Name)),// getValues(projectSettingsModel.Status), WorkItems = string.Join(",", projectSettingsModel.WorkItemsList.Where(x => x.IsSelected == true).Select(y => y.Name)) }; List <DB.Entities.CustomStatus> customStatus = new List <DB.Entities.CustomStatus>(); projectSettingsModel.CustomStatus.ForEach(cs => customStatus.Add(new DB.Entities.CustomStatus() { Id = cs.Id, DisplayName = cs.DisplayName, ProjectId = cs.ProjectId, StatusName = cs.StatusName }) ); bool isSuccess = await _projectData.UpdateProjectSettings(adminMasterSettings, customStatus); return(isSuccess); }
public async Task <GridVisibleFieldsModel> GetGridColumnFields(int id) { if (id > 0) { ProjectSettingsModel projectSettingsModel = await GetProjectSettings(id); return(projectSettingsModel.GridVisibleFields); } return(null); }
public async Task <EditableFields> GetEditableItems(int id) { if (id > 0) { ProjectSettingsModel projectSettingsModel = await GetProjectSettings(id); return(projectSettingsModel.EditableFields); } return(null); }
public async Task <IActionResult> UpdateProjectSettings([FromBody] ProjectSettingsModel projectSettingsModel) { var isSuccess = false; isSuccess = await _projectRepository.UpdateProjectSettings(projectSettingsModel); if (isSuccess) { return(Ok(new Response <bool>() { Code = HttpStatusCode.OK, Data = isSuccess, Message = ResponseMessageModel.ProjectSetting.UpdateProjectSetting })); } else { return(BadRequest(new ErrorResponse(ResponseMessageModel.ProjectSetting.NotUpdateProjectSetting))); } }
public async Task <IActionResult> GetProjectSettings([FromQuery] int projectId) { ProjectSettingsModel projectSettingsModel = null; try { projectSettingsModel = await _projectRepository.GetProjectSettings(projectId); } catch (Exception ex) { return(BadRequest(ex)); } //return Ok(new Response<ProjectSettingsModel>() { Code = HttpStatusCode.OK , Data = projectSettingsModel , Message = string.Empty }); if (projectSettingsModel != null) { return(Ok(new Response <ProjectSettingsModel>() { Code = HttpStatusCode.OK, Data = projectSettingsModel, Message = string.Empty })); } return(BadRequest(new ErrorResponse(ResponseMessageModel.ProjectSetting.ProjectNotFound))); }
public async Task <ProjectSettingsModel> GetProjectSettings(int projectId) { var projectSettings = await _projectData.GetProjectSettings(projectId); ProjectSettingsModel projectSettingsModel = null; if (projectSettings != null && projectSettings.Count > 0) { //Set Project Settings. projectSettingsModel = await SetProjectSettings(projectSettings[0], projectId); string id = await _projectData.GetProjectId(projectId); projectSettingsModel.MemberList = await _dataRepository.GetMemberList(id); //Fetch Custom status for the project. List <DB.Entities.CustomStatus> customStatus = await _projectData.GetProjectCustomStatus(projectId); //Bind CustomStatus model by CustomStatus Entity model. projectSettingsModel.CustomStatus = SetCustomStatus(customStatus); } return(projectSettingsModel); }
public async Task <ActionResult <ProjectSettingsModel> > PostProjectSettingsModel(ProjectSettingsModel projectSettingsModel) { int maxId = _context.ProjectSettings.Max(b => b.Id); projectSettingsModel.Id = maxId + 1; _context.ProjectSettings.Add(projectSettingsModel); await _context.SaveChangesAsync(); return(CreatedAtAction("GetProjectSettingsModel", new { id = projectSettingsModel.Id }, projectSettingsModel)); }