dynamic thft
@model CardAndAuxiliaryManagement.Infrastructure.Model.CardRequest
@{
ViewBag.Title = "Create";
}
<div class="container">
<div class="toolbar row">
<div class="col-sm-6 hidden-xs">
<div class="page-header">
<h1>
Card Request
<small>Create</small>
</h1>
</div>
</div>
<div class="col-sm-6 col-xs-12">
<div class="toolbar-tools pull-right">
<!-- start: TOP NAVIGATION MENU -->
<ul class="nav navbar-right">
<li class="back">
<a href="@Url.Action("Index")">
<i class="fa fa-chevron-left">
</i> BACK
</a>
</li>
</ul>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="panel panel-default">
<div class="panel-body">
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
@Html.EditorForModel()
}
</div>
</div>
</div>
</div>
</div>
@section Scripts
{
<script>var URL= '@Url.Action("AccountNoVerification","CardRequests")'</script>
@*<script>var Account='@Url.Action("ClientAccountDetail","CardRequests")'</script>*@
<script src="@Url.Content("~/Scripts/CardRequest/CardRequest.js")"></script>
}
---
create controller
public ActionResult Create()
{
ViewBag.TodayDate = DateTime.Now.ToString("yyyy/MM/dd");
//List<string> Branches = HttpContext.Session["Branches"] as List<string>;
//ViewBag.LoginBranch = Branches;
CardRequest cardRequest = new CardRequest();
InitCommon(cardRequest);
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(CardRequest cardRequest)
{
if (ModelState.IsValid)
{
try
{
List<string> Branches = HttpContext.Session["Branches"] as List<string>;
Regex phoneValidator = new Regex(@"^9(8|7)\d{8}$");
var cardClientAccount = _cardClientAccountRepo.GetDetailsByAccountNumber(cardRequest.AccountNumber);
if (String.IsNullOrEmpty(cardClientAccount.Email))
{
throw new Exception("Email is Required!");
}
if (cardClientAccount.EmbossName.Length > 25)
{
throw new Exception("Embossed Name should contain only 25 character!");
}
if (string.IsNullOrEmpty(cardClientAccount.City))
{
throw new Exception("City is required!");
}
if (string.IsNullOrEmpty(cardClientAccount.Phone))
{
throw new Exception("PhoneNo. is Required");
}
if (!phoneValidator.IsMatch(cardClientAccount.Phone))
{
throw new Exception("Please insert valide Mobile No!");
}
//if (!cardClientAccount.Title.HasValue)
//{
// throw new Exception("Saluatation is reuired in Client");
//}
else
{
ViewBag.LoginBranch = Branches;
ViewBag.TodayDate = DateTime.Now.ToString("yyyy/MM/dd");
cardRequest.AccountNumber = cardRequest.AccountNumber.ToUpper().Trim();
_CardRequestRepo.Insert(cardRequest);
_CardRequestRepo.Save();
CardRequestDetail requestDetail = new CardRequestDetail();
requestDetail.CardRequestID = cardRequest.ID;
requestDetail.ActionTypeID = (int)EnumCardStatus.Pending;
//requestDetail.IsDeleted = false;
requestDetail.Remarks = "Card Request";
_cardRequestDetailsRepo.Insert(requestDetail);
FlashBag.setMessage(true, "Successfully Saved Data!!");
return RedirectToAction("Index");
}
}
catch (DbEntityValidationException e)
{
StringBuilder sb = new StringBuilder();
foreach (var eve in e.EntityValidationErrors)
{
sb.AppendFormat("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
eve.Entry.Entity.GetType().Name, eve.Entry.State);
foreach (var ve in eve.ValidationErrors)
{
sb.AppendFormat("- Property: \"{0}\", Error: \"{1}\"",
ve.PropertyName, ve.ErrorMessage);
}
}
ModelState.AddModelError("", sb.ToString());
}
catch (Exception ex)
{
ModelState.AddModelError("", ex.Message);
FlashBag.setMessage(false, ex.Message);
}
}
ViewBag.TodayDate = DateTime.Now.ToString("yyyy/MM/dd");
InitCommon(cardRequest);
return View(cardRequest);
}
-----------------------
public ActionResult AccountNoVerification(string Accno)
{
try
{
db.Configuration.ProxyCreationEnabled = false;
var Data = _cardClientAccountRepo.DataForClientAccount(Accno);
var list = JsonConvert.SerializeObject(Data, Formatting.None, new JsonSerializerSettings() { ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore });
return Json(new { msg = true, clientaccount = list }, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
return Json(new { msg = false, clientaccount = ex.Message }, JsonRequestBehavior.AllowGet);
}
}
--------------------------------------------------
----------------------------
[HttpGet]
public ActionResult ClientAccountDetail(string id)
{
try
{
TempData["AccountNo"] = id;
string Acc = id.Trim();
CardClientAccount cardClient = _cardClientAccountRepo.GetDetailsByAccountNumber(id);
cardClient.CardIDType = cardClient?.IdentityType == null ? (enumIDType)enumIDType.NationalID
: (enumIDType)Enum.Parse(typeof(enumIDType), cardClient?.IdentityType.ToString());
cardClient.CustomerInitial = cardClient.CustomerInitial == null ? (EnumCustomerInitial)EnumCustomerInitial.MR
: (EnumCustomerInitial)Enum.Parse(typeof(EnumCustomerInitial), cardClient.Title.ToString());
cardClient.enumGenders = cardClient == null ? (EnumGenders)EnumGenders.M
: (EnumGenders)Enum.Parse(typeof(EnumGenders), cardClient.Gender.ToString());
return View(cardClient);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
------------------------------------------------------------
--------------------------------------------
$(document).ready(function () {
//$(document).on('change', '#AccountNumber', function () {
// console.log($('#AccountNumber').val());
// $("#tblClientAccount > tbody").parents("tr").remove();
// let AccNo = $('#AccountNumber').val();
// AccountNoVerification(AccNo);
//}).trigger('change');
function AccountNoVerification(Accno) {
$.ajax({
dataType: 'json',
data: { Accno: Accno },
url: URL,
success: function (msg) {
console.log(msg)
if (msg.msg == true) {
let client_account = JSON.parse(msg.clientaccount)
$("#tblClientAccount tbody").parents("tr").remove();
$("#tblClientAccount tbody").append("<tr><td>" + "<a href='" + Account + "?id=" + client_account.AccountNumber + "'" + " target='_blank' >" + client_account.ClientCode + "</a>" + "</td><td>" + client_account.CustomerName + "</td><td> " + client_account.AccountNumber + "</td></tr>");
$('#AvailableBalance').val(client_account.AvailableBalance);
}
},
error: function (jqXhr, textStatus, errorThrown) {
$("#tblClientAccount tbody").html("<tr><td>" + jqXhr.responseText + "</td></tr>");
console.log(jqXhr.responseText);
},
});
}
$(document).on('change', '#AccountNumber', function () {
var Branch = "B"
var Accnumb = $('#AccountNumber').val();
var BranchCode = Accnumb.substring(0, 3);
//console.log("BranchCode=" + BranchCode);
//console.log(Accnumb);
AccountNoVerification(Accnumb);
//var BranchCode = $('#RequestBranchCode option:selected').val();
//console.log("BranchCode=" + BranchCode);
$('#CardRequestedAccountNumber').val(Branch + BranchCode + Accnumb)
}).trigger('change');
});
---------------------------
model
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated from a template.
//
// Manual changes to this file may cause unexpected behavior in your application.
// Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace CardAndAuxiliaryManagement.Infrastructure.Model
{
using System;
using System.Collections.Generic;
public partial class CardClientAccount
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public CardClientAccount()
{
this.CardRequests = new HashSet<CardRequest>();
}
public string AccountNumber { get; set; }
public string ClientCode { get; set; }
public string Salutation { get; set; }
public string CustomerName { get; set; }
public string EmbossName { get; set; }
public int CurrencyTypeID { get; set; }
public int CustomerTypeID { get; set; }
public string Address1 { get; set; }
public string Address2 { get; set; }
public string Address3 { get; set; }
public string City { get; set; }
public string Phone { get; set; }
public string MaritalStatus { get; set; }
public string Gender { get; set; }
public decimal AvailableBalance { get; set; }
public Nullable<System.DateTime> DOB { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string MiddleName { get; set; }
public Nullable<int> IdentityType { get; set; }
public string IdentityNo { get; set; }
public string Email { get; set; }
public string IdType { get; set; }
public Nullable<int> Title { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<CardClientAccountMember> CardClientAccountMembers { get; set; }
public virtual CardCurrency CardCurrency { get; set; }
public virtual CardCustomerType CardCustomerType { get; set; }
public virtual CardIdentityType CardIdentityType { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<CardRequest> CardRequests { get; set; }
}
}
Comments
Post a Comment