brusher profile & commands

This commit is contained in:
2017-02-28 14:01:24 +01:00
parent 9973f0dcc7
commit 208e339bf8
25 changed files with 3114 additions and 38 deletions

View File

@ -0,0 +1,123 @@
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNet.Mvc;
using System.Security.Claims;
using Microsoft.Data.Entity;
using Yavsc.Models;
using Yavsc.Models.Haircut;
using Microsoft.AspNet.Authorization;
using System;
namespace Yavsc.Controllers
{
[Authorize(Roles="Performer")]
public class BrusherProfileController : Controller
{
private ApplicationDbContext _context;
public BrusherProfileController(ApplicationDbContext context)
{
_context = context;
}
// GET: BrusherProfile
public async Task<IActionResult> Index()
{
var existing = await _context.BrusherProfile.SingleOrDefaultAsync(p=>p.UserId == User.GetUserId());
return View(existing);
}
// GET: BrusherProfile/Details/5
public async Task<IActionResult> Details(string id)
{
if (id == null)
{
id = User.GetUserId();
}
BrusherProfile brusherProfile = await _context.BrusherProfile.SingleAsync(m => m.UserId == id);
if (brusherProfile == null)
{
return HttpNotFound();
}
return View(brusherProfile);
}
// GET: BrusherProfile/Create
public IActionResult Create()
{
return View();
}
// GET: BrusherProfile/Edit/5
public async Task<IActionResult> Edit(string id)
{
if (id == null)
{
id = User.GetUserId();
}
BrusherProfile brusherProfile = await _context.BrusherProfile.SingleOrDefaultAsync(m => m.UserId == id);
if (brusherProfile == null)
{
brusherProfile = new BrusherProfile { };
}
return View(brusherProfile);
}
// POST: BrusherProfile/Edit/5
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Edit(BrusherProfile brusherProfile)
{
if (string.IsNullOrEmpty(brusherProfile.UserId))
{
// a creation
brusherProfile.UserId = User.GetUserId();
if (ModelState.IsValid)
{
_context.BrusherProfile.Add(brusherProfile);
await _context.SaveChangesAsync();
return RedirectToAction("Index");
}
}
else if (ModelState.IsValid)
{
_context.Update(brusherProfile);
await _context.SaveChangesAsync();
return RedirectToAction("Index");
}
return View(brusherProfile);
}
// GET: BrusherProfile/Delete/5
[ActionName("Delete")]
public async Task<IActionResult> Delete(string id)
{
if (id == null)
{
return HttpNotFound();
}
BrusherProfile brusherProfile = await _context.BrusherProfile.SingleAsync(m => m.UserId == id);
if (brusherProfile == null)
{
return HttpNotFound();
}
return View(brusherProfile);
}
// POST: BrusherProfile/Delete/5
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public async Task<IActionResult> DeleteConfirmed(string id)
{
BrusherProfile brusherProfile = await _context.BrusherProfile.SingleAsync(m => m.UserId == id);
_context.BrusherProfile.Remove(brusherProfile);
await _context.SaveChangesAsync();
return RedirectToAction("Index");
}
}
}

View File

@ -48,7 +48,7 @@ namespace Yavsc.Controllers
}
ViewBag.HasConfigurableSettings = (userActivity.Does.SettingsClassName != null);
if (ViewBag.HasConfigurableSettings)
ViewBag.SettingsClassControllerName = Startup.ProfileTypes[userActivity.Does.SettingsClassName].Name;
ViewBag.SettingsControllerName = Startup.ProfileTypes[userActivity.Does.SettingsClassName].Name;
return View(userActivity);
}

View File

@ -11,9 +11,11 @@ namespace Yavsc.Controllers
{
using Helpers;
using Microsoft.AspNet.Http;
using Microsoft.Extensions.Localization;
using Models;
using Newtonsoft.Json;
using ViewModels.FrontOffice;
using Yavsc.Extensions;
using Yavsc.Models.Haircut;
using Yavsc.ViewModels.Haircut;
@ -23,13 +25,17 @@ namespace Yavsc.Controllers
UserManager<ApplicationUser> _userManager;
ILogger _logger;
IStringLocalizer _SR;
public FrontOfficeController(ApplicationDbContext context,
UserManager<ApplicationUser> userManager,
ILoggerFactory loggerFactory)
ILoggerFactory loggerFactory,
IStringLocalizer<Yavsc.Resources.YavscLocalisation> SR)
{
_context = context;
_userManager = userManager;
_logger = loggerFactory.CreateLogger<FrontOfficeController>();
_SR = SR;
}
public ActionResult Index()
{
@ -70,11 +76,13 @@ namespace Yavsc.Controllers
if (prestaJson!=null) {
pPrestation = JsonConvert.DeserializeObject<HairPrestation>(prestaJson);
}
else pPrestation = new HairPrestation {
};
else pPrestation = new HairPrestation {};
ViewBag.HairTaints = _context.HairTaint.Include(t=>t.Color);
ViewBag.HairTechnos = EnumExtensions.GetSelectList(typeof(HairTechnos),_SR);
ViewBag.HairLength = EnumExtensions.GetSelectList(typeof(HairLength),_SR);
ViewBag.Activity = _context.Activities.First(a => a.Code == id);
ViewBag.Gender = EnumExtensions.GetSelectList(typeof(HairCutGenders),_SR);
ViewBag.HairDressings = EnumExtensions.GetSelectList(typeof(HairDressings),_SR);
var result = new HairCutView {
HairBrushers = _context.ListPerformers(id),
Topic = pPrestation

View File

@ -1,7 +1,5 @@
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNet.Mvc;
using Microsoft.AspNet.Mvc.Rendering;
using Microsoft.Data.Entity;
using Yavsc.Models;
using Yavsc.Models.Haircut;