La aplicación fue creada con fines educativos. El proyecto implementa patrones de repositorio y inyección de dependencia.
No debe usarse para ningún negocio real. No tomo ninguna reposibilidad si decide usarlo para transacciones reales. Antes de hacerlo, asegúrese de que la aplicación cumpla con los estándares de seguridad.
update-databaselogin: [email protected] password: Qwerty1! Puede cambiarlo en la pestaña "Su cuenta". Hágalo después de configurar su configuración SMTP en "Panel de administración", el paso a continuación.Los errores de aplicación están iniciando sesión en APP_DATA/LOGS.
Vaya a e -shop -ingenio.services -> servicios -> pago y cree una nueva carpeta.
Hay 2 clases de modelo que el pago puede heredar de: PaymentDetails (destinado a enviar datos al servidor externo) y PaymentResponse (destinado a recibir datos del servidor externo).
Cree interfaz para el servicio que herede de iPaymentservice. Luego cree la implementación.
public class DotPayPaymentService : IDotPayPaymentService
{
private static Settings settings;
public DotPayPaymentService(ISettingsRepository settingsRepository)
{
settings = settingsRepository.Get();
}
// The implementation...
}
Ahora vaya a e -shop -ingenio.website -> controladores -> pago y cree un nuevo controlador.
El controlador debe heredar desde BasePaymentController.
public class DotPayController : BasePaymentController
{
public DotPayController(
IOrderRepository orderRepository,
ICartRepository cartRepository,
ISettingsRepository settingsRepository,
IMailingService mailingService,
IDotPayPaymentService paymentService,
IAppUserManager userManager,
IUnitOfWork unitOfWork)
: base(
orderRepository,
cartRepository,
settingsRepository,
mailingService,
paymentService,
userManager,
unitOfWork)
{
//
}
Registre el nuevo método de pago en AutoFAC (e -shop -engine.website -> app_start -> autofacconfig) builder.RegisterType<DotPayPaymentService>().As<IDotPayPaymentService>().InstancePerRequest();
Vaya a Vistas -> Pago -> Seleccione y agregue un nuevo pago. Recuerde establecer el valor del elemento de entrada lo mismo que el nombre del controlador <div class="custom-control custom-checkbox form-control-lg"> <input type="radio" name="paymentMethod" class="custom-control-input" id="dotpay" value="DotPay"> <label class="custom-control-label" for="dotpay"> <img src="~/Content/payment/dotpay_logo.jpg" class="payment-img" /> </label> </div>
Este proyecto tiene licencia bajo la licencia MIT.