diff --git a/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/IReceiverBusiness.cs b/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/IReceiverBusiness.cs index 9c2519b..f6d6e3e 100644 --- a/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/IReceiverBusiness.cs +++ b/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/IReceiverBusiness.cs @@ -3,6 +3,7 @@ using CustomerOnlineV2.Common.Models.HomeModel; using CustomerOnlineV2.Common.Models.ReceiverModel; using System; using System.Collections.Generic; +using System.Globalization; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -14,5 +15,7 @@ namespace CustomerOnlineV2.Business.Business.ReceiverBusiness Task Receivers(ReceiverInformationModel model, string id, string user); // Task GetCustomerReceiverList(LoginResponse loginDetails); Task GetAllReceiverList(LoginResponse loginDetails); + Task EditReceiverById(string id); + Task UpdateReceiverById(ReceiverInformationModel model, string id, string user); } } diff --git a/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/ReceiverBusiness.cs b/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/ReceiverBusiness.cs index 907148c..c59d3f9 100644 --- a/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/ReceiverBusiness.cs +++ b/CustomerOnlineV2/CustomerOnlineV2.Business/Business/ReceiverBusiness/ReceiverBusiness.cs @@ -6,6 +6,7 @@ using CustomerOnlineV2.Common.Models.ReceiverModel; using CustomerOnlineV2.Common.Models.TransactionModel; using CustomerOnlineV2.Repository.Repository.ReceiverRepository; using Newtonsoft.Json; +using System.Globalization; namespace CustomerOnlineV2.Business.Business.ReceiverBusiness { @@ -35,5 +36,15 @@ namespace CustomerOnlineV2.Business.Business.ReceiverBusiness { return await _receiverRepository.GetAllReceiverList(loginDetails); } + + public async Task EditReceiverById(string id) + { + return await _receiverRepository.EditReceiverById(id); + } + + public async Task UpdateReceiverById(ReceiverInformationModel model, string id, string user) + { + return await _receiverRepository.UpdateReceiverById(model, id, user); + } } } diff --git a/CustomerOnlineV2/CustomerOnlineV2.Common/Models/ReceiverModel/ReceiverInformationModel.cs b/CustomerOnlineV2/CustomerOnlineV2.Common/Models/ReceiverModel/ReceiverInformationModel.cs index a6c953b..d8b4db1 100644 --- a/CustomerOnlineV2/CustomerOnlineV2.Common/Models/ReceiverModel/ReceiverInformationModel.cs +++ b/CustomerOnlineV2/CustomerOnlineV2.Common/Models/ReceiverModel/ReceiverInformationModel.cs @@ -40,4 +40,9 @@ namespace CustomerOnlineV2.Common.Models.ReceiverModel public string? receiverAccountNumber { get; set; } public string? Remarks { get; set; } } + + public class ReceiverEditModel : CommonResponse + { + public List? ReceiverInformationModel { get; set; } + } } diff --git a/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/IReceiverRepository.cs b/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/IReceiverRepository.cs index 4171cf7..cccffe6 100644 --- a/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/IReceiverRepository.cs +++ b/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/IReceiverRepository.cs @@ -3,6 +3,7 @@ using CustomerOnlineV2.Common.Models.HomeModel; using CustomerOnlineV2.Common.Models.ReceiverModel; using System; using System.Collections.Generic; +using System.Globalization; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -17,5 +18,7 @@ namespace CustomerOnlineV2.Repository.Repository.ReceiverRepository Task GetReceiverDetails(ReceiverInformationModel model, string id, string user); //Task GetCustomerReceiverList(LoginResponse loginDetails); Task GetAllReceiverList(LoginResponse loginDetails); + Task EditReceiverById(string id); + Task UpdateReceiverById(ReceiverInformationModel model, string id, string user); } } diff --git a/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/ReceiverRepository.cs b/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/ReceiverRepository.cs index 9209d15..a5963e6 100644 --- a/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/ReceiverRepository.cs +++ b/CustomerOnlineV2/CustomerOnlineV2.Repository/Repository/ReceiverRepository/ReceiverRepository.cs @@ -158,5 +158,111 @@ namespace CustomerOnlineV2.Repository.Repository.ReceiverRepository } return await Task.FromResult(_response); } + + public async Task EditReceiverById(string id) + { + ReceiverEditModel _response = new ReceiverEditModel(); + try + { + var sql = "EXEC PROC_DYNAMIC_TABLE"; + sql += " @Flag = " + _connHelper.FilterString("edit-customer"); + sql += ",@id = " + _connHelper.FilterString(id); + _logger.LogDebug("RECEIVERREPOSITORY | EDITRECEIVER | SQL | " + sql); + var dt = _connHelper.ExecuteDataTable(sql); + + if (dt == null || dt.Rows.Count <= 0) + { + _response.ResponseCode = ResponseHelper.FAILED; + _response.ResponseMessage = "DB Null Error!"; + + _logger.LogError("RECEIVERREPOSITORY | EDITRECEIVER | DB RESPONSE | " + JsonConvert.SerializeObject(_response)); + } + else + { + _response.ResponseCode = Convert.ToInt16(dt.Rows[0]["errorCode"]); + _response.ResponseMessage = Convert.ToString(dt.Rows[0]["msg"]); + + List obj = new List(); + foreach (DataRow item in dt.Rows) + { + obj.Add(new ReceiverInformationModel + { + ReceiverId = Convert.ToString(item["Id"]), + firstName = Convert.ToString(item["firstName"]), + middleName = Convert.ToString(item["middleName"]), + lastName1 = Convert.ToString(item["lastName1"]), + Relationship = Convert.ToString(item["relationship"]), + Country = Convert.ToString(item["Country"]), + Address = Convert.ToString(item["address"]), + State = Convert.ToString(item["city"]), + zipCode = Convert.ToString(item["zipCode"]), + Mobile = Convert.ToString(item["Mobile"]), + Email = Convert.ToString(item["email"]), + idType = Convert.ToString(item["idType"]), + idNumber = Convert.ToString(item["idNumber"]), + bankName = Convert.ToString(item["bankName"]), + bankLocation = Convert.ToString(item["bank"]), + receiverAccountNumber = Convert.ToString(item["accountNum"]), + paymentMode = Convert.ToString(item["paymentMode"]), + }); + } + _response.ReceiverInformationModel = obj; + } + } + catch (Exception ex) + { + _response.ResponseCode = ResponseHelper.EXCEPTION; + _response.ResponseMessage = "Exception occured: " + ex.Message; + + _logger.LogError("RECEIVERREPOSITORY | EDITRECEIVER | EXCEPTION | " + JsonConvert.SerializeObject(_response)); + } + return await Task.FromResult(_response); + } + + public async Task UpdateReceiverById(ReceiverInformationModel model, string id, string user) + { + try + { + var sql = "EXEC PROC_DYNAMIC_TABLE"; + sql += " @flag = " + _connHelper.FilterString("update-customer"); + sql += ",@id = " + _connHelper.FilterString(id); + sql += ",@user = " + _connHelper.FilterString(user); + sql += ",@country =" + _connHelper.FilterString(model.Country); + sql += ",@email =" + _connHelper.FilterString(model.Email); + sql += ",@firstName =" + _connHelper.FilterString(model.firstName); + sql += ",@middleName =" + _connHelper.FilterString(model.middleName); + sql += ",@lastName1 =" + _connHelper.FilterString(model.lastName1); + sql += ",@lastName2 =" + _connHelper.FilterString(model.lastName2); + sql += ",@address =" + _connHelper.FilterString(model.Address); + sql += ",@mobile =" + _connHelper.FilterString(model.Mobile); + sql += ",@relationship =" + _connHelper.FilterString(model.Relationship); + sql += ",@idType =" + _connHelper.FilterString(model.idType); + sql += ",@idNumber =" + _connHelper.FilterString(model.idNumber); + sql += ",@paymentMode =" + _connHelper.FilterString(model.paymentMode); + //sql += ",@payOutPartner =" + _connHelper.FilterString(model.payOutPartner); + sql += ",@bankLocation =" + _connHelper.FilterString(model.bankLocation); + sql += ",@bankName =" + _connHelper.FilterString(model.bankName); + sql += ",@receiverAccountNo =" + _connHelper.FilterString(model.receiverAccountNumber); + + var dt = _connHelper.ExecuteDataTable(sql); + if (dt == null || dt.Rows.Count <= 0) + { + model.ResponseCode = ResponseHelper.FAILED; + model.ResponseMessage = "DB Null Error!"; + } + else + { + model.ResponseCode = ResponseHelper.SUCCESS; + model.ResponseMessage = ResponseMessageHelper.SUCCESS; + } + } + catch (Exception ex) + { + model.ResponseCode = ResponseHelper.EXCEPTION; + model.ResponseMessage = "Exception occured: " + ex.Message; + + } + return await Task.FromResult(model); + } } } diff --git a/CustomerOnlineV2/CustomerOnlineV2/Controllers/ReceiverInformationController.cs b/CustomerOnlineV2/CustomerOnlineV2/Controllers/ReceiverInformationController.cs index 1cb0d19..e59cc29 100644 --- a/CustomerOnlineV2/CustomerOnlineV2/Controllers/ReceiverInformationController.cs +++ b/CustomerOnlineV2/CustomerOnlineV2/Controllers/ReceiverInformationController.cs @@ -4,6 +4,7 @@ using CustomerOnlineV2.Common.Helper; using CustomerOnlineV2.Common.Models.HomeModel; using CustomerOnlineV2.Common.Models.ReceiverModel; using Microsoft.AspNetCore.Mvc; +using NuGet.Protocol.Plugins; using Controller = Microsoft.AspNetCore.Mvc.Controller; using HttpPostAttribute = Microsoft.AspNetCore.Mvc.HttpPostAttribute; @@ -12,26 +13,29 @@ namespace CustomerOnlineV2.Controllers public class ReceiverInformationController : Controller { - + private readonly IReceiverBusiness _receiverBusiness; public ReceiverInformationController(IReceiverBusiness receiverBusiness) { - + _receiverBusiness = receiverBusiness; } [Authorization("Receiver")] - public IActionResult Receiver() + public IActionResult Receiver(string id, string edit) { + ViewBag.ReceiverId = id; + ViewBag.EditFlag = edit; + return View(); } [HttpPost] [Authorization("AddReceiver")] - public async Task AddReceiver(ReceiverInformationModel receiver , string id, string user) + public async Task AddReceiver(ReceiverInformationModel receiver, string id, string user) { var loginDetails = HttpContext.GetLoginDetails(); //ReceiverInformationModel _response = new ReceiverInformationModel(); @@ -54,5 +58,22 @@ namespace CustomerOnlineV2.Controllers return await _receiverBusiness.GetAllReceiverList(loginDetails); } + + //[Route("EditReceiver")] + [HttpPost] + [Authorization("EditReceiver")] + public async Task EditReceiver(string id) + { + return await _receiverBusiness.EditReceiverById(id); + } + + [HttpPost] + [Authorization("UpdateReceiver")] + public async Task UpdateReceiver(ReceiverInformationModel model, string id) + { + var loginDetails = HttpContext.GetLoginDetails(); + + return await _receiverBusiness.UpdateReceiverById(model, id, loginDetails.UserName); + } } } diff --git a/CustomerOnlineV2/CustomerOnlineV2/Views/Home/Index.cshtml b/CustomerOnlineV2/CustomerOnlineV2/Views/Home/Index.cshtml index 90752da..7ed058b 100644 --- a/CustomerOnlineV2/CustomerOnlineV2/Views/Home/Index.cshtml +++ b/CustomerOnlineV2/CustomerOnlineV2/Views/Home/Index.cshtml @@ -205,6 +205,7 @@
Send Transaction
Country
Transaction Type
+
Actions
@@ -340,16 +341,45 @@ if (response.responseCode == 0) { let row = ''; $.each(result, function (i, d) { - row += '
'; + // row += '
'; + // row += '
'; + // row += '
' + d['name'] + ' ' + d['mobile'] + '
'; + // row += ''; + // row += '
' + d['country'] + '
'; + // row += '
' + d['transactionType'] + '
'; + // row += '
'; + // row += '
'; + // row += '
'; + row += '
'; row += '
'; - row += '
' + d['name'] + ' ' + d['mobile'] + '
'; - row += ''; - row += '
' + d['country'] + '
'; - row += '
' + d['transactionType'] + '
'; + + row += '
'; + row += '' + d['name'] + ''; + row += '' + d['mobile'] + ''; + row += '
'; + + row += '
'; + row += 'Send Transaction'; row += '
'; + + row += '
'; + row += d['country']; row += '
'; + + row += '
'; + row += '' + d['transactionType'] + ''; + row += '
'; + + row += '
'; + row += ''; + row += '
'; + + row += '
'; + row += '
'; + }); + $('#receiverList').html(row); $('#receiverListDiv').hide(); } @@ -420,40 +450,43 @@ }); } - function getReceiverDetails(id) { - $.ajax({ - type: 'GET', - contentType: 'application/json; charset=utf-8', - url: '/Home/GetReceiverDetail/' + id, - success: function (response) { - if (response.receiverModel && response.receiverModel.length > 0) { + // function getReceiverDetails(id) { + // $.ajax({ + // type: 'GET', + // contentType: 'application/json; charset=utf-8', + // url: '/Home/GetReceiverDetail/' + id, + // success: function (response) { + // if (response.receiverModel && response.receiverModel.length > 0) { - var data = response.receiverModel[0]; + // var data = response.receiverModel[0]; - $('#tranStatus').text(data.tranStatus); - $('#nprAMt').text(data.nprAmt); - $('#receiverName').text(data.name); - $('#txnId').find('span').text(data.Id); - $('#recName').find('span').text(data.name); - $('#recAddress').find('span').text(data.address); - $('#recMobile').find('span').text(data.mobile); - $('#collAmt').find('span').text(data.collAmt); - $('#serviceFee').find('span').text(data.serviceCharge); - $('#rewardsPoints').find('span').text(data.customerPremium); - $('#tAmt').find('span').text(data.sentAmt); - $('#exRate').find('span').text(data.exRate); - $('#nprPayAmt').find('span').text(data.payoutAmt); - $('#payoutAgent').find('span').text(data.pAgent); - } + // $('#tranStatus').text(data.tranStatus); + // $('#nprAMt').text(data.nprAmt); + // $('#receiverName').text(data.name); + // $('#txnId').find('span').text(data.Id); + // $('#recName').find('span').text(data.name); + // $('#recAddress').find('span').text(data.address); + // $('#recMobile').find('span').text(data.mobile); + // $('#collAmt').find('span').text(data.collAmt); + // $('#serviceFee').find('span').text(data.serviceCharge); + // $('#rewardsPoints').find('span').text(data.customerPremium); + // $('#tAmt').find('span').text(data.sentAmt); + // $('#exRate').find('span').text(data.exRate); + // $('#nprPayAmt').find('span').text(data.payoutAmt); + // $('#payoutAgent').find('span').text(data.pAgent); + // } - }, - error: function (error) { - console.error(error); - } - }); - } + // }, + // error: function (error) { + // console.error(error); + // } + // }); + // } + function editReceiver(id) { + window.location.href = '/ReceiverInformation/Receiver?id=' + id + '&edit=Y'; + } } \ No newline at end of file diff --git a/CustomerOnlineV2/CustomerOnlineV2/Views/ReceiverInformation/Receiver.cshtml b/CustomerOnlineV2/CustomerOnlineV2/Views/ReceiverInformation/Receiver.cshtml index 3cc78d6..0cfab3b 100644 --- a/CustomerOnlineV2/CustomerOnlineV2/Views/ReceiverInformation/Receiver.cshtml +++ b/CustomerOnlineV2/CustomerOnlineV2/Views/ReceiverInformation/Receiver.cshtml @@ -3,6 +3,11 @@ @{ Layout = "_Layout2"; } +@{ + var receiverId = ViewBag.ReceiverId as string; + var editFlag = ViewBag.EditFlag as string; +} +