[HttpPost] /*POSTMAN OK*/ public IActionResult Create([FromBody] UserDetailed user) { switch (_userRepo.Create(user.ApiToDal())) { case (DBErrors.Success): user.Id = _userRepo.getIdWithNN(user.NationalNumber); if (!(user.Contacts is null)) { foreach (A.Contact C in user.Contacts) { switch (_contactRepo.LinkEntityWithUser(C.Id, user.Id)) { case (DBErrors.Success): break; case (DBErrors.LinkAlreadyExist): return(Problem("A link is already active between theses id's.", statusCode: (int)HttpStatusCode.BadRequest)); default: break; } } } IEnumerable <Status> statusList = StatusCodeService.Deserialize(user.StatusCode); if (!(statusList is null)) { foreach (Status s in statusList) { switch (_statusRepo.LinkEntityWithUser(s.Id, user.Id)) { case (DBErrors.Success): break; case (DBErrors.LinkAlreadyExist): return(Problem("A link is already active between theses id's.", statusCode: (int)HttpStatusCode.BadRequest)); default: break; } } } return(Ok()); case (DBErrors.ClassId_NotFound): return(Problem("A valid ClassId is needed.", statusCode: (int)HttpStatusCode.BadRequest)); case (DBErrors.NationalNumber_Exist): return(Problem("NationalNumber already exist.", statusCode: (int)HttpStatusCode.BadRequest)); case (DBErrors.NullExeption): return(Problem("A mandatory field does not support 'null' value or is missing", statusCode: (int)HttpStatusCode.BadRequest)); case (DBErrors.StartDate_Birthdate_Error): return(Problem("Birthdate should be lower than StartDate.", statusCode: (int)HttpStatusCode.BadRequest)); default: return(Problem("?", statusCode: (int)HttpStatusCode.NotFound)); } }
public StatusCodeModel Post([FromBody] StatusCodeModel statuscode) { Response.StatusCode = 201; string result = StatusCodeService.CreateStatusCode(statuscode, dbConn); statuscode.Id = Convert.ToInt32(result); return(statuscode); }
public void OnAuthorization(AuthorizationFilterContext context) { ITokenService _tokenService = (ITokenService)context.HttpContext.RequestServices.GetService(typeof(ITokenService)); context.HttpContext.Request.Headers.TryGetValue("Authorization", out StringValues authorizations); string token = authorizations.SingleOrDefault(t => t.StartsWith("Bearer ")); if (token is null) { context.Result = new StatusCodeResult((int)HttpStatusCode.Unauthorized); } else { IEnumerable <string> properties = new List <string>() { "Id", "LastName", "FirstName", "Birthdate", "Login", "Gender", "StatusCode", "FirstLogin" }; IDictionary <string, string> user = _tokenService.DecodeToken(token, properties); if (user is null) { context.Result = new StatusCodeResult((int)HttpStatusCode.Unauthorized); } else { string[] requiredStatus = RequiredStatus.Replace(" ", "").Split("|"); IEnumerable <Status> status = StatusCodeService.Deserialize(int.Parse(user["StatusCode"])); int nbr = 0; foreach (Status item in status) { if (nbr > 0) { break; } foreach (string RS in requiredStatus) { if (RS == item.Name) { nbr += 1; break; } } } if (nbr == 0) { context.Result = new StatusCodeResult((int)HttpStatusCode.Unauthorized); } else { context.RouteData.Values.Add("UserId", user["Id"]); } } } }
public string UpdateStatusCode([FromRoute] int id, [FromBody] StatusCodeModel statuscode) { return(StatusCodeService.UpdateStatusCode(statuscode, dbConn)); }
public string DeleteStatusCode([FromRoute] int id) { return(StatusCodeService.DeleteStatusCode(id, dbConn)); }
public StatusCodeModel GetStatusCode([FromRoute] int id) { return(StatusCodeService.GetStatusCode(id, dbConn)); }
public List <StatusCodeModel> Get() { return(StatusCodeService.GetAllStatusCodes(dbConn)); }