Complete FrontOffice BFF to CMS Migration
- Migrated all 9 services from FrontOffice.BFF to CMS architecture - Enhanced user.proto with 7 additional Customer API endpoints: * UpdateCustomerProfile, GetCustomerProfile * ChangeCustomerPassword with validation * GetCustomerReferrals with commission stats * UploadCustomerAvatar with file validation * GetCustomerSettings, UpdateCustomerSettings - All services now support Customer endpoints with /Customer/ prefix - Mock implementations with realistic Persian data - Fixed namespace conflicts and compilation issues - Comprehensive testing completed for all endpoints - Services migrated: Categories, City, UserCarts, Products, UserWallet, Transaction, UserOrder, Package, User (enhanced)
This commit is contained in:
+3
-3
@@ -2,9 +2,9 @@ using FluentValidation;
|
||||
using CMSMicroservice.Protobuf.Protos.UserCarts;
|
||||
namespace CMSMicroservice.Protobuf.Validator.UserCarts;
|
||||
|
||||
public class CreateNewUserCartsRequestValidator : AbstractValidator<CreateNewUserCartsRequest>
|
||||
public class AddNewUserCartRequestValidator : AbstractValidator<AddNewUserCartRequest>
|
||||
{
|
||||
public CreateNewUserCartsRequestValidator()
|
||||
public AddNewUserCartRequestValidator()
|
||||
{
|
||||
RuleFor(model => model.ProductId)
|
||||
.NotNull();
|
||||
@@ -15,7 +15,7 @@ public class CreateNewUserCartsRequestValidator : AbstractValidator<CreateNewUse
|
||||
}
|
||||
public Func<object, string, Task<IEnumerable<string>>> ValidateValue => async (model, propertyName) =>
|
||||
{
|
||||
var result = await ValidateAsync(ValidationContext<CreateNewUserCartsRequest>.CreateWithOptions((CreateNewUserCartsRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
var result = await ValidateAsync(ValidationContext<AddNewUserCartRequest>.CreateWithOptions((AddNewUserCartRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
if (result.IsValid)
|
||||
return Array.Empty<string>();
|
||||
return result.Errors.Select(e => e.ErrorMessage);
|
||||
+3
-3
@@ -2,16 +2,16 @@ using FluentValidation;
|
||||
using CMSMicroservice.Protobuf.Protos.UserCarts;
|
||||
namespace CMSMicroservice.Protobuf.Validator.UserCarts;
|
||||
|
||||
public class DeleteUserCartsRequestValidator : AbstractValidator<DeleteUserCartsRequest>
|
||||
public class DeleteUserCartRequestValidator : AbstractValidator<DeleteUserCartRequest>
|
||||
{
|
||||
public DeleteUserCartsRequestValidator()
|
||||
public DeleteUserCartRequestValidator()
|
||||
{
|
||||
RuleFor(model => model.Id)
|
||||
.NotNull();
|
||||
}
|
||||
public Func<object, string, Task<IEnumerable<string>>> ValidateValue => async (model, propertyName) =>
|
||||
{
|
||||
var result = await ValidateAsync(ValidationContext<DeleteUserCartsRequest>.CreateWithOptions((DeleteUserCartsRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
var result = await ValidateAsync(ValidationContext<DeleteUserCartRequest>.CreateWithOptions((DeleteUserCartRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
if (result.IsValid)
|
||||
return Array.Empty<string>();
|
||||
return result.Errors.Select(e => e.ErrorMessage);
|
||||
+3
-3
@@ -2,16 +2,16 @@ using FluentValidation;
|
||||
using CMSMicroservice.Protobuf.Protos.UserCarts;
|
||||
namespace CMSMicroservice.Protobuf.Validator.UserCarts;
|
||||
|
||||
public class GetUserCartsRequestValidator : AbstractValidator<GetUserCartsRequest>
|
||||
public class GetUserCartRequestValidator : AbstractValidator<GetUserCartRequest>
|
||||
{
|
||||
public GetUserCartsRequestValidator()
|
||||
public GetUserCartRequestValidator()
|
||||
{
|
||||
RuleFor(model => model.Id)
|
||||
.NotNull();
|
||||
}
|
||||
public Func<object, string, Task<IEnumerable<string>>> ValidateValue => async (model, propertyName) =>
|
||||
{
|
||||
var result = await ValidateAsync(ValidationContext<GetUserCartsRequest>.CreateWithOptions((GetUserCartsRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
var result = await ValidateAsync(ValidationContext<GetUserCartRequest>.CreateWithOptions((GetUserCartRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
if (result.IsValid)
|
||||
return Array.Empty<string>();
|
||||
return result.Errors.Select(e => e.ErrorMessage);
|
||||
+3
-3
@@ -2,9 +2,9 @@ using FluentValidation;
|
||||
using CMSMicroservice.Protobuf.Protos.UserCarts;
|
||||
namespace CMSMicroservice.Protobuf.Validator.UserCarts;
|
||||
|
||||
public class UpdateUserCartsRequestValidator : AbstractValidator<UpdateUserCartsRequest>
|
||||
public class UpdateUserCartRequestValidator : AbstractValidator<UpdateUserCartRequest>
|
||||
{
|
||||
public UpdateUserCartsRequestValidator()
|
||||
public UpdateUserCartRequestValidator()
|
||||
{
|
||||
RuleFor(model => model.Id)
|
||||
.NotNull();
|
||||
@@ -13,7 +13,7 @@ public class UpdateUserCartsRequestValidator : AbstractValidator<UpdateUserCarts
|
||||
}
|
||||
public Func<object, string, Task<IEnumerable<string>>> ValidateValue => async (model, propertyName) =>
|
||||
{
|
||||
var result = await ValidateAsync(ValidationContext<UpdateUserCartsRequest>.CreateWithOptions((UpdateUserCartsRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
var result = await ValidateAsync(ValidationContext<UpdateUserCartRequest>.CreateWithOptions((UpdateUserCartRequest)model, x => x.IncludeProperties(propertyName)));
|
||||
if (result.IsValid)
|
||||
return Array.Empty<string>();
|
||||
return result.Errors.Select(e => e.ErrorMessage);
|
||||
Reference in New Issue
Block a user