Browse Source

Referal code fix

Reset pwd fix
feature/19315_Customer-Registration-new
shakun 11 months ago
parent
commit
efa5816f2c
  1. 17
      CustomerOnlineV2/CustomerOnlineV2.Business/Business/AccountBusiness/AccountBusiness.cs
  2. 2
      CustomerOnlineV2/CustomerOnlineV2.Business/Business/RegisterBusiness/IRegisterBusiness.cs
  3. 3
      CustomerOnlineV2/CustomerOnlineV2.Business/Business/RegisterBusiness/RegisterBusiness.cs
  4. 2
      CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/RegisterRepository/IRegisterRepository.cs
  5. 29
      CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/RegisterRepository/RegisterRepository.cs
  6. 9
      CustomerOnlineV2/CustomerOnlineV2/Controllers/AccountController.cs
  7. 12
      CustomerOnlineV2/CustomerOnlineV2/Controllers/CustomerController.cs
  8. 85
      CustomerOnlineV2/CustomerOnlineV2/Views/Account/ResetPassword.cshtml
  9. 46
      CustomerOnlineV2/CustomerOnlineV2/Views/Customer/CustomerRegistration.cshtml
  10. 5
      CustomerOnlineV2/CustomerOnlineV2/Views/Customer/Refer.cshtml
  11. 4
      CustomerOnlineV2/CustomerOnlineV2/Views/Shared/_Layout2.cshtml
  12. 2
      CustomerOnlineV2/CustomerOnlineV2/wwwroot/js/Custom.js

17
CustomerOnlineV2/CustomerOnlineV2.Business/Business/AccountBusiness/AccountBusiness.cs

@ -47,10 +47,15 @@ namespace CustomerOnlineV2.Business.Business.AccountBusiness
string random_num = result.ToString();
model.RandomPassword = random_num;
var res =await _accountRepo.PasswordReset(model, logindetails);
if (res.ResponseCode == ResponseHelper.SUCCESS)
{
try
{
List<Mapping> bodyMappings = new List<Mapping>();
bodyMappings.Add(new Mapping() { SValue = "CustomerName", SText = logindetails.FullName });
bodyMappings.Add(new Mapping() { SValue = "CustomerName", SText = res.Extra2 });
bodyMappings.Add(new Mapping() { SValue = "PASS_WORD", SText = random_num });
bodyMappings.Add(new Mapping() { SValue = "EMAIL_ID", SText = logindetails.Email });
bodyMappings.Add(new Mapping() { SValue = "EMAIL_ID", SText = model.Username });
SendNotificationRequest request = new SendNotificationRequest()
{
IsBulkNotification = false,
@ -76,7 +81,13 @@ namespace CustomerOnlineV2.Business.Business.AccountBusiness
_logger.LogDebug("PasswordReset.EMAIL | REQUEST : " + JsonConvert.SerializeObject(request));
var jsonRx1 = NotifierV2.SendNotification(request, NOTIFICATION_TYPE.EMAIL);
_logger.LogDebug("PasswordReset.EMAIL | RESPONSE : " + JsonConvert.SerializeObject(jsonRx1));
return await _accountRepo.PasswordReset(model, logindetails);
}
catch (Exception emailException)
{
_logger.LogError("Error sending email", emailException);
}
}
return res;
}

2
CustomerOnlineV2/CustomerOnlineV2.Business/Business/RegisterBusiness/IRegisterBusiness.cs

@ -21,6 +21,6 @@ namespace CustomerOnlineV2.Business.Business.RegisterBusiness
Task<CustomerNotificationModel> GetRewardPoints(LoginResponse loginDetails);
Task<CustomerListModel> UpdateDocuments(CustomerListModel customer, string Id);
Task<CustomerNotificationModel> GetRewardAmount(LoginResponse loginDetails);
Task<OnlineCustomerRegisterModel> ValidateReferralCode(OnlineCustomerRegisterModel referralCode);
Task<CommonResponse> ValidateReferralCode(string referralCode);
}
}

3
CustomerOnlineV2/CustomerOnlineV2.Business/Business/RegisterBusiness/RegisterBusiness.cs

@ -7,7 +7,6 @@ using CustomerOnlineV2.Common.Models.RegisterModel;
using CustomerOnlineV2.Repository.Repository.RegisterRepository;
using Microsoft.Extensions.Logging;
using Newtonsoft.Json;
using System.Reflection;
using Notify = CustomerOnlineV2.Common.Models.Notification;
namespace CustomerOnlineV2.Business.Business.RegisterBusiness
@ -112,7 +111,7 @@ namespace CustomerOnlineV2.Business.Business.RegisterBusiness
return (CustomerNotificationModel)await _registerRepository.GetRewardAmount(loginDetails);
}
public async Task<OnlineCustomerRegisterModel> ValidateReferralCode(OnlineCustomerRegisterModel referralCode)
public async Task<CommonResponse> ValidateReferralCode(string referralCode)
{
var referralCodeV1 = await _registerRepository.ValidateReferralCode(referralCode);
return referralCodeV1;

2
CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/RegisterRepository/IRegisterRepository.cs

@ -19,6 +19,6 @@ namespace CustomerOnlineV2.Repository.Repository.RegisterRepository
Task<CustomerNotificationModel> GetRewardPoints(LoginResponse loginDetails);
Task<CustomerListModel> UpdateDocument1(CustomerListModel model, string id);
Task<CustomerNotificationModel> GetRewardAmount(LoginResponse loginDetails);
Task<OnlineCustomerRegisterModel> ValidateReferralCode(OnlineCustomerRegisterModel referralCode);
Task<CommonResponse> ValidateReferralCode(string referralCode);
}
}

29
CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/RegisterRepository/RegisterRepository.cs

@ -453,48 +453,51 @@ namespace CustomerOnlineV2.Repository.Repository.RegisterRepository
return await Task.FromResult(_response);
}
public async Task<OnlineCustomerRegisterModel> ValidateReferralCode(OnlineCustomerRegisterModel referralCode)
public async Task<CommonResponse> ValidateReferralCode(string referralCode)
{
CommonResponse _response = new CommonResponse();
try
{
var sql = "EXEC JsonRx_Proc_UserRegistration_V2";
sql += " @flag = " + _connHelper.FilterString("chk-valid-referralCode");
sql += ",@referralCode=" + _connHelper.FilterString(referralCode.ReferralCode);
sql += ",@referralCode=" + _connHelper.FilterString(referralCode);
var dt = _connHelper.ExecuteDataTable(sql);
if (dt == null || dt.Rows.Count <= 0)
{
referralCode.ResponseCode = ResponseHelper.FAILED;
referralCode.ResponseMessage = "DB Null Error!";
_response.ResponseCode = ResponseHelper.FAILED;
_response.ResponseMessage = "Invalid Referral code.";
}
else if (dt.Rows[0]["errorcode"].Equals("0"))
{
_response.ResponseCode = ResponseHelper.SUCCESS;
_response.ResponseMessage = "";
}
else
{
referralCode.ResponseCode = ResponseHelper.SUCCESS;
referralCode.ResponseMessage = "";
_response.ResponseCode = ResponseHelper.FAILED;
_response.ResponseMessage = "Invalid Referral code";
}
}
catch (Exception ex)
{
referralCode.ResponseCode = ResponseHelper.EXCEPTION;
referralCode.ResponseMessage = "Exception occured: " + ex.Message;
_response.ResponseCode = ResponseHelper.EXCEPTION;
_response.ResponseMessage = "Exception occured: " + ex.Message;
}
return await Task.FromResult(referralCode);
return await Task.FromResult(_response);
}
}
}

9
CustomerOnlineV2/CustomerOnlineV2/Controllers/AccountController.cs

@ -169,7 +169,7 @@ namespace CustomerOnlineV2.Controllers
using (LogContext.PushProperty("DebugId", logindetails.UserName))
{
_logger.LogDebug("ACCOUNTCONTROLLER | RESETPASSWORD | REQUEST | " + JsonConvert.SerializeObject(model));
if (string.IsNullOrEmpty(logindetails.UserName))
if (string.IsNullOrEmpty(model.Username))
{
_logger.LogError("ACCOUNTCONTROLLER | RESETPASSWORD | INVALID logindetails.UserName");
RedirectToAction("Index", "Account");
@ -179,9 +179,12 @@ namespace CustomerOnlineV2.Controllers
Log.Debug("Change password response: " + JsonConvert.SerializeObject(response));
if (response.ResponseCode == ResponseHelper.SUCCESS)
{
Log.Debug("ACCOUNTCONTROLLER | RESETPASSWORD | REQUEST ARRIVED | " + logindetails.UserName);
Log.Debug("ACCOUNTCONTROLLER | RESETPASSWORD | REQUEST ARRIVED | " + model.Username);
HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);
return RedirectToAction("Index", "Account");
ViewBag.ResponseCode = response.ResponseCode;
ViewBag.ResponseMessage = "New password has been sent in the your email.";
return View();
}
else
{

12
CustomerOnlineV2/CustomerOnlineV2/Controllers/CustomerController.cs

@ -12,8 +12,7 @@ using CustomerOnlineV2.Common.Helper;
using CustomerOnlineV2.Common.Models.HomeModel;
using CustomerOnlineV2.Common.Models.ReceiverModel;
using CustomerOnlineV2.Common.Models.AccountModel;
using CustomerOnlineV2.Business.Business;
using Serilog;
using System.Drawing;
namespace CustomerOnlineV2.Controllers
{
@ -179,16 +178,15 @@ namespace CustomerOnlineV2.Controllers
var loginDetails = HttpContext.GetLoginDetails();
return await _registerBusiness.GetRewardAmount(loginDetails);
}
[HttpPost]
[Authorization("ValidateReferralCode")]
public async Task<OnlineCustomerRegisterModel> ValidateReferralCode(OnlineCustomerRegisterModel referralCode)
[HttpGet]
[Route("ValidateReferralCode/{referralCode}")]
public async Task<CommonResponse> ValidateReferralCode(string referralCode)
{
//var loginDetails = HttpContext.GetLoginDetails();
//ReceiverInformationModel _response = new ReceiverInformationModel();
var referralCodeV1 = await _registerBusiness.ValidateReferralCode(referralCode);
return referralCodeV1;
return await _registerBusiness.ValidateReferralCode(referralCode);
}
//[HttpPost]
////[ApplicationLevelAuthentication]

85
CustomerOnlineV2/CustomerOnlineV2/Views/Account/ResetPassword.cshtml

@ -14,7 +14,7 @@
<link href="~/vendor/currency-flags/css/currency-flags.min.css" rel="stylesheet" />
<link href="~/vendor/owl.carousel/owl.carousel.min.css" rel="stylesheet" />
<link href="~/css/styles-login.css" rel="stylesheet" />
<link href="~/vendor/toast-alert/izitoast.min.css" rel="stylesheet" />
<link rel="icon" type="image/png" href="favicon.png" />
</head>
<body>
@ -75,7 +75,7 @@
<p class="sec-subtitle"></p>
</div>
@* <form action="dashboard-new.html" id="reset-form" class=""> *@
<form asp-controller="Account" id="reset-form" asp-action="ResetPassword" method="post" novalidate>
<form asp-controller="Account" id="reset-form" method="post" novalidate>
<div class="form-floating mb-3">
<input type="email" class="form-control" asp-for="Username" placeholder="name@example.com">
<label for="floatingInput">Email address</label>
@ -99,7 +99,7 @@
</form>
<div class="mt-3"> Dont have username ? Registration won't take more than 5 min, <a class="" href="/Customer/CustomerRegistration">Register Now</a></div>
<div class="mt-3"> Already registered, <a class="" href="/Account/Index">Login Now</a></div>
<div class="mt-3"> Already registered, <a id="loginNow" class="" href="/Account/Index">Login Now</a></div>
</div>
@ -152,8 +152,32 @@
</div>
</div>
</footer>
<script src="~/vendor/jquery/jquery.min.js"></script>
<link href="~/css/styles-login.css" rel="stylesheet" />
<link href="~/vendor/toast-alert/izitoast.min.css" rel="stylesheet" />
<script src="~/vendor/toast-alert/izitoast.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
if ('@ViewBag.ResponseCode' == '0') {
iziToast.success({
title: 'OK',
message: '@ViewBag.ResponseMessage',
timeout: 1000,
onClosed: function () {
window.location.replace("account/index");
}
});
$('#email').val();
$('#Dob').val();
$('#loginNow').focus();
}
else if ('@ViewBag.ResponseCode' == '1') {
iziToast.error({
title: 'Error',
message: '@ViewBag.ResponseMessage'
});
}
});
function ResetPassword() {
let email = $('#email').val();
@ -180,6 +204,7 @@
async: true,
success: function (response) {
debugger;
if (response.responseCode != 0) {
ShowAlertMessage(response.responseCode, response.responseMessage);
//ShowAlertMessage("Receiver Successfully created")
@ -187,13 +212,7 @@
return;
}
// clearFields();
// $('#Country').focus();
$('#message').text('Data successfully submitted');
// window.location.replace("/home");
// ShowAlertMessage(response.errorCode, response.msg, "/account/index");
},
@ -204,47 +223,9 @@
}
// (function resetMail() {
// 'use strict'
// // Fetch all the forms we want to apply custom Bootstrap validation styles to
// var forms = document.querySelectorAll('#reset-form')
// // Loop over them and prevent submission
// Array.prototype.slice.call(forms)
// .forEach(function (form) {
// form.addEventListener('submit', function (event) {
// if (!form.checkValidity()) {
// event.preventDefault();
// event.stopPropagation();
// }
// else {
// event.preventDefault();
// $('.resetText').hide();
// $('#BtnLogin').css('cursor', 'not-allowed');
// $('.loading').show();
// $('#BtnLogin').prop('disabled', true);
// $("#reset-form").submit();
// }
// form.classList.add('was-validated')
// }, false)
// })
// })();
// if ('@ViewBag.ResponseCode' != '') {
// if ('@ViewBag.ResponseCode' != '0') {
// iziToast.error({
// title: 'Error',
// message: '@ViewBag.ResponseMessage'
// });
// }
// else {
// iziToast.success({
// title: 'OK',
// message: '@ViewBag.ResponseMessage'
// });
// }
// }
</script>
</body>
</html>

46
CustomerOnlineV2/CustomerOnlineV2/Views/Customer/CustomerRegistration.cshtml

@ -499,57 +499,29 @@
// }, 1);
// });
$('#ReferralCode').on('change', function () {
$('#ReferralCode').on('blur', function () {
ValidateReferralCode();
});
});
// function ValidateReferralCode() {
// debugger;
// alert('jh')
// var referralCode = $('#ReferralCode').val();
// console.log(referralCode)
// $.ajax({
// type: 'POST',
// contentType: 'application/json; charset=utf-8',
// url: 'Customer/ValidateReferralCode',
// data: JSON.stringify({ referralCode: referralCode }),
// // success: function (response) {
// // debugger;
// // $('#ReferralCode').text(response.membershipId);
// // },
// error: function (error) {
// console.error(error);
// }
// });
// }
function ValidateReferralCode() {
debugger;
$.ajax({
url: "/Customer/ValidateReferralCode",
type: "post",
url: "ValidateReferralCode/" + $("#ReferralCode").val(),
ftype: "get",
anync: false,
data: {
//CustomerId: $("#customerId").val(),
referralCode: $("#ReferralCode").val(),
success: function (response) {
debugger;
if (response.responseCode != 0) {
ShowAlertMessageErrorOnly(response, response.responseMessage);
return false;
}
},
// success: function (response) {
// if (response.responseCode != 0) {
// ShowAlertMessageErrorOnly(data, response.responseMessage);
// return false;
// }
// ShowAlertMessage("0", "Document Updated successfully.");
// //getData();
// },
error: function (data) {
//ShowAlertMessageErrorOnly(1, "Error ocurred during update!");
}

5
CustomerOnlineV2/CustomerOnlineV2/Views/Customer/Refer.cshtml

@ -163,7 +163,7 @@
<p class="text-black fs-5">Receive a FREE £5.00 bonus credit as Reward Amount</p>
<p>You and your friend will each be given £5.00 in bonus credit. Get £1.00 after they successfully register, and 4$ after their first transaction.</p>
<p>There may be minimum send requirements.</p>
<p><a href="https://imelondon.co.uk/terms-and-conditions" target="_blank">Terms &amp; Conditions</a></p>
<p><a href="https://imelondon.co.uk/RewardPoint_Declaration.html" target="_blank">Terms &amp; Conditions</a></p>
@* <p class="text-black fs-5">Refer IME Londong to your friends &amp; get many more exciting deals <br> plus discount on your every transfer.</p> *@
<h2 class="referral-code-header">Your Referral Code:</h2>
<div class="referral-code-container">
@ -243,8 +243,7 @@
var totalRewardPoints = data.length > 0 ? data[0].rewardPoints : 0;
$('#showRewardPoints').text(totalRewardPoints);
var referralCode = data.length > 0 ? data[0].referralCode : '';
$('#referralCode').val(referralCode);
var tableBody = $('#reward-table-body');
tableBody.empty();

4
CustomerOnlineV2/CustomerOnlineV2/Views/Shared/_Layout2.cshtml

@ -121,9 +121,9 @@
<li>
<a class="dropdown-item" href="/Account/ForceChangePassword"><i class="fas fa-bell"></i>Change Password</a>
</li>
<li>
@* <li>
<a class="dropdown-item" href="#"><i class="fas fa-bell"></i>Promotion Details</a>
</li>
</li> *@
<li class="dropdown-divider mx-n3"></li>
<li>
<a class="dropdown-item" href="/Home/Logout"><i class="fas fa-sign-out-alt"></i>Sign Out</a>

2
CustomerOnlineV2/CustomerOnlineV2/wwwroot/js/Custom.js

@ -110,7 +110,7 @@ function ShowAlertMessageErrorOnly(errorCode, errorMessage) {
else {
iziToast.info({
title: 'Info',
timeout: 500,
timeout: 1000,
message: errorMessage
});
}

Loading…
Cancel
Save