fix: enable and manage customize checkout options in client menu
This commit is contained in:
@@ -42,6 +42,7 @@ public class AuthHelper : IAuthHelper
|
||||
result.WorkshopName = claims.FirstOrDefault(x => x is { Type: "WorkshopName" })?.Value;
|
||||
result.Permissions = Tools.DeserializeFromBsonList<int>(claims.FirstOrDefault(x => x is { Type: "permissions" })?.Value);
|
||||
result.RoleName = claims.FirstOrDefault(x => x is { Type: "RoleName" })?.Value;
|
||||
result.WorkshopId = long.Parse(claims.FirstOrDefault(x => x.Type == "WorkshopId")?.Value??"0");
|
||||
return result;
|
||||
}
|
||||
|
||||
@@ -76,7 +77,7 @@ public class AuthHelper : IAuthHelper
|
||||
|
||||
#region Vafa
|
||||
|
||||
public void UpdateWorkshopSlugClaim(string newWorkshopSlug, string newWorkshopName)
|
||||
public void UpdateWorkshopSlugClaim(string newWorkshopSlug, string newWorkshopName,long newWorkshopId)
|
||||
{
|
||||
var user = _contextAccessor.HttpContext.User;
|
||||
|
||||
@@ -85,6 +86,7 @@ public class AuthHelper : IAuthHelper
|
||||
var claimsIdentity = (ClaimsIdentity)user.Identity;
|
||||
var existingClaimSlug = claimsIdentity.FindFirst("WorkshopSlug");
|
||||
var existingClaimName = claimsIdentity.FindFirst("WorkshopName");
|
||||
var existingWorkshopId = claimsIdentity.FindFirst("WorkshopId");
|
||||
|
||||
if (existingClaimSlug != null)
|
||||
{
|
||||
@@ -96,9 +98,14 @@ public class AuthHelper : IAuthHelper
|
||||
claimsIdentity.RemoveClaim(existingClaimName);
|
||||
}
|
||||
|
||||
if (existingWorkshopId != null)
|
||||
{
|
||||
claimsIdentity.RemoveClaim(existingWorkshopId);
|
||||
}
|
||||
|
||||
claimsIdentity.AddClaim(new Claim("WorkshopSlug", newWorkshopSlug));
|
||||
claimsIdentity.AddClaim(new Claim("WorkshopName", newWorkshopName));
|
||||
claimsIdentity.AddClaim(new Claim("WorkshopId",newWorkshopId.ToString()));
|
||||
|
||||
|
||||
var authProperties = new AuthenticationProperties
|
||||
@@ -128,8 +135,16 @@ public class AuthHelper : IAuthHelper
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
public long GetWorkshopId()
|
||||
{
|
||||
return long.Parse(_contextAccessor.HttpContext?.User.Claims.FirstOrDefault(x => x.Type == "WorkshopId")?.Value ?? "0");
|
||||
|
||||
|
||||
}
|
||||
|
||||
public string CurrentAccountRole()
|
||||
{
|
||||
@@ -182,6 +197,7 @@ public class AuthHelper : IAuthHelper
|
||||
//mahanChanges
|
||||
new("workshopList",workshopBson),
|
||||
new("WorkshopSlug",slug),
|
||||
new("WorkshopId", account.WorkshopId.ToString()),
|
||||
new("WorkshopName",account.WorkshopName??"")
|
||||
|
||||
};
|
||||
|
||||
@@ -20,6 +20,7 @@ public class AuthViewModel
|
||||
|
||||
public int? PositionValue { get; set; }
|
||||
public string WorkshopSlug { get; set; }
|
||||
public long WorkshopId { get; set; }
|
||||
public string WorkshopName { get; set; }
|
||||
public List<WorkshopClaim> WorkshopList { get; set; }
|
||||
|
||||
|
||||
@@ -17,11 +17,12 @@ public interface IAuthHelper
|
||||
|
||||
#region Vafa
|
||||
|
||||
void UpdateWorkshopSlugClaim(string workshopSlug, string workshopName);
|
||||
void UpdateWorkshopSlugClaim(string workshopSlug, string workshopName, long workshopId);
|
||||
|
||||
#endregion
|
||||
long CurrentSubAccountId();
|
||||
string GetWorkshopSlug();
|
||||
string GetWorkshopName();
|
||||
long GetWorkshopId();
|
||||
(long Id, UserType userType, long roleId) GetUserTypeWithId();
|
||||
}
|
||||
Reference in New Issue
Block a user