Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [HttpGet]
- [Route("[controller]/Project/Create")]
- public IActionResult CreateProjectTemplate()
- {
- var templateProjectVM = new TemplateProjectViewModel();
- templateProjectVM.TemplateSections = _mapper.Map<List<TemplateSectionViewModel>>( _uow.Repository<TemplateSection>().GetAll());
- return View(templateProjectVM);
- }
- [HttpPost]
- [Route("[controller]/Project/Create")]
- public async Task<IActionResult> CreateProjectTemplate(TemplateProjectViewModel model , List<TemplateSectionViewModel> sections)
- {
- model.TemplateSections = sections.Where(s => s.Selected == true).ToList();
- // TODO : Enable ModelState
- //if (!ModelState.IsValid)return View(model);
- var item = _mapper.Map<TemplateProject>(model);
- await _uow.Repository<TemplateProject>().AddAsync(item);
- return View(model);
- }
- [HttpGet]
- [Route("[controller]/Project/details/{id?}")]
- public async Task<IActionResult> DetailsProjectTemplate(int id)
- {
- var projectTemplate = await _uow.Repository<TemplateProject>().FilterAsync(filter: tp =>tp.Id==id,includeProperties: "ProjectSectionTemplates.TemplateSection");
- var model = _mapper.Map<TemplateProjectViewModel>(projectTemplate.ToList().FirstOrDefault());
- return View(model);
- }
- [HttpGet]
- [Route("[controller]/Project/Edit/{id?}")]
- public async Task<IActionResult> EditProjectTemplate(int id)
- {
- var projectTemplate = await _uow.Repository<TemplateProject>().FilterAsync(filter: tp => tp.Id == id, includeProperties: "ProjectSectionTemplates.TemplateSection");
- var allSectionTemplate = _mapper.Map<List<TemplateSectionViewModel>>(await _uow.Repository<TemplateSection>().GetAllAsync());
- var model = _mapper.Map<TemplateProjectViewModel>(projectTemplate.ToList().FirstOrDefault());
- foreach (var st in model.TemplateSections)allSectionTemplate.Single(s => s.Id == st.Id).Selected = true;
- model.TemplateSections = allSectionTemplate;
- return View(model);
- }
- [HttpPost]
- [Route("[controller]/Project/Edit/{id?}")]
- public async Task<IActionResult> EditProjectTemplate(TemplateProjectViewModel model, List<TemplateSectionViewModel> sections)
- {
- var selectedSections = sections.Where(s => s.Selected == true);
- // model.TemplateSections = selectedSections.ToList();
- var templatProject = _mapper.Map<TemplateProject>(model);
- await _uow.Repository<TemplateProject>().UpdateAsync(templatProject);
- var projectTemplate = await _uow.Repository<TemplateProject>().FilterAsync(filter: tp => tp.Id == templatProject.Id, includeProperties: "ProjectSectionTemplates.TemplateSection");
- _templateProjectService.UpdateProjectTemplateSections(_mapper.Map<List<TemplateSection>>(selectedSections), templatProject);
- return View(model);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement