public HttpResponseMessage DeleteAccLimit(HttpRequestMessage reqObject) { int result = 0; _requestedDataObject = _IDataManipulation.GetRequestedDataObject(reqObject); if (_requestedDataObject != null && _requestedDataObject.BusinessData != null) { _AccLimitSetup = JsonConvert.DeserializeObject <AccLimitSetup>(_requestedDataObject.BusinessData); } if (_AccLimitSetup == null || string.IsNullOrWhiteSpace(_AccLimitSetup.AccLimitId)) { _serviceResponse = _IDataManipulation.SetResponseObject(result, "Account Limit Not Found..."); _response = _IDataManipulation.CreateResponse(_serviceResponse, reqObject); return(_response); } result = _IAccLimitSetupService.DeleteAccLimit(_AccLimitSetup); if (result == 1) { _serviceResponse = _IDataManipulation.SetResponseObject(result, "information has been deleted successfully"); } else { _serviceResponse = _IDataManipulation.SetResponseObject(result, "information hasn't been deleted"); } _response = _IDataManipulation.CreateResponse(_serviceResponse, reqObject); return(_response); }
public HttpResponseMessage GetAccLimitById(HttpRequestMessage reqObject) { string AccLimitId = string.Empty; _requestedDataObject = _IDataManipulation.GetRequestedDataObject(reqObject); if (_requestedDataObject != null && _requestedDataObject.BusinessData != null) { _AccLimitSetup = JsonConvert.DeserializeObject <AccLimitSetup>(_requestedDataObject.BusinessData); AccLimitId = _AccLimitSetup.AccLimitId; } if (!string.IsNullOrWhiteSpace(AccLimitId)) { _AccLimitSetup = new AccLimitSetup(); _AccLimitSetup = _IAccLimitSetupService.GetAccLimitById(AccLimitId); } if (_AccLimitSetup != null) { _serviceResponse = _IDataManipulation.SetResponseObject(_AccLimitSetup, "information has been fetched successfully"); } else { _serviceResponse = _IDataManipulation.SetResponseObject(_AccLimitSetup, "Data Not Found..."); } _response = _IDataManipulation.CreateResponse(_serviceResponse, reqObject); return(_response); }
public HttpResponseMessage UpdateAccLimit(HttpRequestMessage reqObject) { int result = 0; _requestedDataObject = _IDataManipulation.GetRequestedDataObject(reqObject); if (_requestedDataObject != null && _requestedDataObject.BusinessData != null) { _AccLimitSetup = JsonConvert.DeserializeObject <AccLimitSetup>(_requestedDataObject.BusinessData); bool IsValid = ModelValidation.TryValidateModel(_AccLimitSetup, out _modelErrorMsg); if (IsValid) { result = _IAccLimitSetupService.UpdateAccLimit(_AccLimitSetup); } } if (!string.IsNullOrWhiteSpace(_modelErrorMsg)) { _serviceResponse = _IDataManipulation.SetResponseObject(result, _modelErrorMsg); } else if (result == 1) { _serviceResponse = _IDataManipulation.SetResponseObject(result, "information has been updated successfully"); } else { _serviceResponse = _IDataManipulation.SetResponseObject(result, "information hasn't been updated"); } _response = _IDataManipulation.CreateResponse(_serviceResponse, reqObject); return(_response); }
public int UpdateAccLimit(AccLimitSetup _AccLimit) { try { int result = 0; bool IsRecordExist; if (!string.IsNullOrWhiteSpace(_AccLimit.AccLimitId)) { IsRecordExist = _IUoW.Repository <AccLimitSetup>().IsRecordExist(x => x.AccLimitId == _AccLimit.AccLimitId); if (IsRecordExist) { var _oldAccLimit = _IUoW.Repository <AccLimitSetup>().GetBy(x => x.AccLimitId == _AccLimit.AccLimitId); var _oldAccLimitForLog = ObjectCopier.DeepCopy(_oldAccLimit); _oldAccLimit.AuthStatusId = _AccLimit.AuthStatusId = "U"; _oldAccLimit.LastAction = _AccLimit.LastAction = "EDT"; _oldAccLimit.LastUpdateDT = _AccLimit.LastUpdateDT = System.DateTime.Now; result = _IUoW.Repository <AccLimitSetup>().Update(_oldAccLimit); #region Auth Log if (result == 1) { _IAuthLogService = new AuthLogService(); long _outMaxSlAuthLogDtl = 0; result = _IAuthLogService.AddAuthLog(_IUoW, _oldAccLimitForLog, _AccLimit, "EDT", "0001", _AccLimit.FunctionId, 1, "AccLimitSetup", "MTK_ACC_LIMIT_SETUP", "AccLimitId", _AccLimit.AccLimitId, _AccLimit.UserName, _outMaxSlAuthLogDtl, out _outMaxSlAuthLogDtl); } #endregion if (result == 1) { _IUoW.Commit(); } return(result); } } return(result); } catch (Exception ex) { _ObjErrorLogService = new ErrorLogService(); _ObjErrorLogService.AddErrorLog(ex, string.Empty, "UpdateAccLimit(obj)", string.Empty); return(0); } }
public HttpResponseMessage GetAccLimitBy(HttpRequestMessage reqObject) { _requestedDataObject = _IDataManipulation.GetRequestedDataObject(reqObject); if (_requestedDataObject != null && _requestedDataObject.BusinessData != null) { _AccLimitSetup = JsonConvert.DeserializeObject <AccLimitSetup>(_requestedDataObject.BusinessData); _AccLimitSetup = _IAccLimitSetupService.GetAccLimitBy(_AccLimitSetup); } if (_AccLimitSetup != null) { _serviceResponse = _IDataManipulation.SetResponseObject(_AccLimitSetup, "information has been fetched successfully"); } else { _serviceResponse = _IDataManipulation.SetResponseObject(_AccLimitSetup, "Data Not Found..."); } _response = _IDataManipulation.CreateResponse(_serviceResponse, reqObject); return(_response); }
public AccLimitSetup GetAccLimitBy(AccLimitSetup _AccLimit) { try { if (_AccLimit == null) { return(_AccLimit); } return(_IUoW.Repository <AccLimitSetup>().GetBy(x => x.AccLimitId == _AccLimit.AccLimitId && x.AuthStatusId == "A" && x.LastAction != "DEL")); } catch (Exception ex) { _ObjErrorLogService = new ErrorLogService(); _ObjErrorLogService.AddErrorLog(ex, string.Empty, "GetAccLimitBy(obj)", string.Empty); return(null); } }
public int DeleteAccLimit(AccLimitSetup _AccLimit) { try { int result = 0; bool IsRecordExist; if (!string.IsNullOrWhiteSpace(_AccLimit.AccLimitId)) { IsRecordExist = _IUoW.Repository <AccLimitSetup>().IsRecordExist(x => x.AccLimitId == _AccLimit.AccLimitId); if (IsRecordExist) { var _oldAccLimit = _IUoW.Repository <AccLimitSetup>().GetBy(x => x.AccLimitId == _AccLimit.AccLimitId); var _oldAccLimitForLog = ObjectCopier.DeepCopy(_oldAccLimit); _oldAccLimit.AuthStatusId = _AccLimit.AuthStatusId = "U"; _oldAccLimit.LastAction = _AccLimit.LastAction = "DEL"; _oldAccLimit.LastUpdateDT = _AccLimit.LastUpdateDT = System.DateTime.Now; result = _IUoW.Repository <AccLimitSetup>().Update(_oldAccLimit); #region Auth Log _IAuthLogService = new AuthLogService(); //result = _IAuthLogService.AddAuthLog(_IUoW, _oldAccLimitForLog, _AccLimit, "DEL", "0001", "090102008", 1, "AccLimitSetup", "MFS_ACC_LIMIT", "MFS_ACC_LIMIT", _AccLimit.AccLimitId, "prova"); #endregion if (result == 1) { _IUoW.Commit(); } return(result); } return(result); } return(result); } catch (Exception ex) { _ObjErrorLogService = new ErrorLogService(); _ObjErrorLogService.AddErrorLog(ex, string.Empty, "DeleteAccLimit(obj)", string.Empty); return(0); } }
public string AddCashIn(UserTransaction _UserTransaction, out mTaka.Utility.ISO20022.Camt054.Document document) { document = new Document(); var grpHdr = document.BkToCstmrDbtCdtNtfctn.GrpHdr; grpHdr.MsgId = mTaka.Utility.ISO.ISOHelper.RandomString(); grpHdr.CreDtTm = DateTime.Now; var ntfctn = document.BkToCstmrDbtCdtNtfctn.Ntfctn.FirstOrDefault(); var ntry = ntfctn?.Ntry.FirstOrDefault(); if (ntry != null) { ntry.Amt = new ActiveOrHistoricCurrencyAndAmount() { Ccy = "BDT", Value = _UserTransaction.Amount }; ntry.CdtDbtInd = CreditDebitCode.DBIT; ntry.Sts = new EntryStatus1Choice() { Item = "Other", ItemElementName = ItemChoiceType9.Prtry }; } grpHdr.MsgPgntn.LastPgInd = true; grpHdr.MsgPgntn.PgNb = "1"; int result = 0; _UserTransaction.TransDT = Convert.ToDateTime(System.DateTime.Now.ToString("dd/MM/yyyy")); string split_result = string.Empty; string MainAuthFlag = string.Empty; AccMasterService _AccInfoService = new AccMasterService(); AccMaster _AccInfo_Post = new AccMaster(); AccMaster _AccInfo_Get = new AccMaster(); StatusWiseServiceService _StatusWiseServiceService = new StatusWiseServiceService(); StatusWiseService _StatusWiseService = new StatusWiseService(); int CheckStatusWiseService = 0; TransactionRulesService _TransactionRulesService = new TransactionRulesService(); TransactionRules _TransactionRules = new TransactionRules(); int CheckTransactionRules = 0; AccLimitSetupService _AccLimitSetupService = new AccLimitSetupService(); AccLimitSetup _AccLimitSetup = new AccLimitSetup(); string CheckAccLimit = string.Empty; try { #region Get SystemAccountNo by WalletAccountNo _AccInfo_Post.FromSystemAccountNo = _UserTransaction.FromSystemAccountNo; _AccInfo_Post.ToSystemAccountNo = _UserTransaction.ToSystemAccountNo; _AccInfo_Post.FunctionId = _UserTransaction.FunctionId; _AccInfo_Get = _AccInfoService.GetAccInfo(_AccInfo_Post); if (_AccInfo_Get == null || _AccInfo_Get.FromSystemAccountNo == null || _AccInfo_Get.ToSystemAccountNo == null) { split_result = result + ":" + "Account No. not valid.."; grpHdr.AddtlInf = "Account No. not valid.."; return(split_result); } #endregion #region Check StatusWiseService _StatusWiseService.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; _StatusWiseService.DefineServiceId = _UserTransaction.DefineServiceId; CheckStatusWiseService = _StatusWiseServiceService.CheckStatusWiseService(_StatusWiseService); if (CheckStatusWiseService == 0) { split_result = result + ":" + "Account No. is not active for this transaction.."; grpHdr.AddtlInf = "Account No. is not active for this transaction.."; return(split_result); } #endregion #region Check TransactionRules _TransactionRules.FromSystemAccountNo = _AccInfo_Get.FromSystemAccountNo; _TransactionRules.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; _TransactionRules.DefineServiceId = _UserTransaction.DefineServiceId; CheckTransactionRules = _TransactionRulesService.CheckTransactionRules(_TransactionRules); if (CheckTransactionRules == 0) { split_result = result + ":" + "Transaction is not allowed.."; grpHdr.AddtlInf = "Transaction is not allowed.."; return(split_result); } #endregion #region Check Limit _AccLimitSetup.FromSystemAccountNo = _AccInfo_Get.FromSystemAccountNo; _AccLimitSetup.FromAccType = _AccInfo_Get.FromAccType; _AccLimitSetup.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; _AccLimitSetup.ToAccType = _AccInfo_Get.ToAccType; _AccLimitSetup.DefineServiceId = _UserTransaction.DefineServiceId; _AccLimitSetup.Amount = _UserTransaction.Amount; _AccLimitSetup.TransDT = _UserTransaction.TransDT; CheckAccLimit = _AccLimitSetupService.CheckAccLimit(_AccLimitSetup); if (CheckAccLimit != "true") { split_result = result + ":" + CheckAccLimit; return(split_result); } #endregion if (_AccInfo_Get.FromSystemAccountNo != null && _AccInfo_Get.ToSystemAccountNo != null && CheckStatusWiseService != 0 && CheckTransactionRules != 0 && CheckAccLimit == "true") { var _max = _IUoW.Repository <UserTransaction>().GetMaxValue(x => x.SerialId) + 1; _UserTransaction.SerialId = _max.ToString().PadLeft(3, '0'); _UserTransaction.AuthStatusId = "U"; _UserTransaction.LastAction = "ADD"; _UserTransaction.MakeDT = System.DateTime.Now; _UserTransaction.MakeBy = "prova"; _UserTransaction.FromSystemAccountNo = _AccInfo_Get.FromSystemAccountNo; _UserTransaction.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; result = _IUoW.Repository <UserTransaction>().Add(_UserTransaction); #region Auth Log if (result == 1) { string url = ConfigurationManager.AppSettings["LgurdaService_server"] + "/GetAuthPermissionByFunctionId/" + _UserTransaction.FunctionId + "/" + _UserTransaction.FunctionName + "?format=json"; using (WebClient wc = new WebClient()) { TransactionRules OBJ_TransactionRules = new TransactionRules(); var json = wc.DownloadString(url); OBJ_TransactionRules = JsonConvert.DeserializeObject <TransactionRules>(json); MainAuthFlag = OBJ_TransactionRules.GetAuthPermissionByFunctionIdResult; } if (MainAuthFlag == "1") { _IAuthLogService = new AuthLogService(); long _outMaxSlAuthLogDtl = 0; result = _IAuthLogService.AddAuthLog(_IUoW, null, _UserTransaction, "ADD", "0001", _UserTransaction.FunctionId, 1, "CashIn", "MTK_USER_TXN", "SerialId", _UserTransaction.SerialId, "prova", _outMaxSlAuthLogDtl, out _outMaxSlAuthLogDtl); } if (MainAuthFlag == "0") { _IAuthLogService = new AuthLogService(); FTAuthLog _ObjAuthLog = new FTAuthLog(); _ObjAuthLog.TableNm = "MTK_USER_TXN"; _ObjAuthLog.AuthStatusId = "A"; _ObjAuthLog.LastAction = "ADD"; _ObjAuthLog.FunctionId = _UserTransaction.FunctionId; _ObjAuthLog.TablePkColVal = _UserTransaction.SerialId; result = _IAuthLogService.SetTableObject_FT <UserTransaction>(_IUoW, _ObjAuthLog, _UserTransaction); } } #endregion if (result == 1) { _IUoW.Commit(); split_result = result + ":" + "Saved Successfully"; grpHdr.AddtlInf = "Saved Successfully"; } else { split_result = result + ":" + "information hasn't been added"; grpHdr.AddtlInf = "information hasn't been added"; } } } catch (Exception ex) { _ObjErrorLogService = new ErrorLogService(); _ObjErrorLogService.AddErrorLog(ex, string.Empty, "AddCashIn(obj)", string.Empty); split_result = result + ":" + ""; grpHdr.AddtlInf = ""; } return(split_result); }
public string AddFundTransfer(FundTransfer _FundTransfer) { int result = 0; _FundTransfer.TransDT = Convert.ToDateTime(System.DateTime.Now.ToString("dd/MM/yyyy")); string split_result = string.Empty; string MainAuthFlag = string.Empty; AccMasterService _AccInfoService = new AccMasterService(); AccMaster _AccInfo_Post = new AccMaster(); AccMaster _AccInfo_Get = new AccMaster(); StatusWiseServiceService _StatusWiseServiceService = new StatusWiseServiceService(); StatusWiseService _StatusWiseService = new StatusWiseService(); int CheckStatusWiseService = 0; TransactionRulesService _TransactionRulesService = new TransactionRulesService(); TransactionRules _TransactionRules = new TransactionRules(); int CheckTransactionRules = 0; AccLimitSetupService _AccLimitSetupService = new AccLimitSetupService(); AccLimitSetup _AccLimitSetup = new AccLimitSetup(); string CheckAccLimit = string.Empty; try { #region Get SystemAccountNo by WalletAccountNo _AccInfo_Post.FromSystemAccountNo = _FundTransfer.FromSystemAccountNo; _AccInfo_Post.ToSystemAccountNo = _FundTransfer.ToSystemAccountNo; _AccInfo_Post.FunctionId = _FundTransfer.FunctionId; _AccInfo_Get = _AccInfoService.GetAccInfo(_AccInfo_Post); if (_AccInfo_Get == null || _AccInfo_Get.FromSystemAccountNo == null || _AccInfo_Get.ToSystemAccountNo == null) { split_result = result + ":" + "Account No. not valid.."; return(split_result); } #endregion #region Check StatusWiseService _StatusWiseService.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; _StatusWiseService.DefineServiceId = _FundTransfer.DefineServiceId; CheckStatusWiseService = _StatusWiseServiceService.CheckStatusWiseService(_StatusWiseService); if (CheckStatusWiseService == 0) { split_result = result + ":" + "Account No. is not active for this transaction.."; return(split_result); } #endregion #region Check TransactionRules _TransactionRules.FromSystemAccountNo = _AccInfo_Get.FromSystemAccountNo; _TransactionRules.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; _TransactionRules.DefineServiceId = _FundTransfer.DefineServiceId; CheckTransactionRules = _TransactionRulesService.CheckTransactionRules(_TransactionRules); if (CheckTransactionRules == 0) { split_result = result + ":" + "Transaction is not allowed.."; return(split_result); } #endregion #region Check Limit _AccLimitSetup.FromSystemAccountNo = _AccInfo_Get.FromSystemAccountNo; _AccLimitSetup.FromAccType = _AccInfo_Get.FromAccType; _AccLimitSetup.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; _AccLimitSetup.ToAccType = _AccInfo_Get.ToAccType; _AccLimitSetup.DefineServiceId = _FundTransfer.DefineServiceId; _AccLimitSetup.Amount = _FundTransfer.Amount; _AccLimitSetup.TransDT = _FundTransfer.TransDT; CheckAccLimit = _AccLimitSetupService.CheckAccLimit(_AccLimitSetup); if (CheckAccLimit != "true") { split_result = result + ":" + CheckAccLimit; return(split_result); } #endregion if (_AccInfo_Get.FromSystemAccountNo != null && _AccInfo_Get.ToSystemAccountNo != null && CheckStatusWiseService != 0 && CheckTransactionRules != 0 && CheckAccLimit == "true") { var _max = _IUoW.Repository <FundTransfer>().GetMaxValue(x => x.FundTransferId) + 1; _FundTransfer.FundTransferId = _max.ToString().PadLeft(9, '0'); _FundTransfer.AuthStatusId = "U"; _FundTransfer.LastAction = "ADD"; _FundTransfer.MakeDT = System.DateTime.Now; _FundTransfer.MakeBy = "prova"; _FundTransfer.FromSystemAccountNo = _AccInfo_Get.FromSystemAccountNo; _FundTransfer.ToSystemAccountNo = _AccInfo_Get.ToSystemAccountNo; result = _IUoW.Repository <FundTransfer>().Add(_FundTransfer); #region Auth Log if (result == 1) { string url = ConfigurationManager.AppSettings["LgurdaService_server"] + "/GetAuthPermissionByFunctionId/" + _FundTransfer.FunctionId + "/" + _FundTransfer.FunctionName + "?format=json"; using (WebClient wc = new WebClient()) { TransactionRules OBJ_TransactionRules = new TransactionRules(); var json = wc.DownloadString(url); OBJ_TransactionRules = JsonConvert.DeserializeObject <TransactionRules>(json); MainAuthFlag = OBJ_TransactionRules.GetAuthPermissionByFunctionIdResult; } if (MainAuthFlag == "1") { _IAuthLogService = new AuthLogService(); long _outMaxSlAuthLogDtl = 0; result = _IAuthLogService.AddAuthLog(_IUoW, null, _FundTransfer, "ADD", "0001", _FundTransfer.FunctionId, 1, "FundTransfer", "MTK_TRN_FUND_TRANSFER", "FundTransferId", _FundTransfer.FundTransferId, "prova", _outMaxSlAuthLogDtl, out _outMaxSlAuthLogDtl); } if (MainAuthFlag == "0") { _IAuthLogService = new AuthLogService(); FTAuthLog _ObjAuthLog = new FTAuthLog(); _ObjAuthLog.TableNm = "MTK_TRN_FUND_TRANSFER"; _ObjAuthLog.AuthStatusId = "A"; _ObjAuthLog.LastAction = "ADD"; _ObjAuthLog.FunctionId = _FundTransfer.FunctionId; _ObjAuthLog.TablePkColVal = _FundTransfer.FundTransferId; result = _IAuthLogService.SetTableObject_FT <FundTransfer>(_IUoW, _ObjAuthLog, _FundTransfer); } } #endregion if (result == 1) { _IUoW.Commit(); split_result = result + ":" + "Saved Successfully"; } else { split_result = result + ":" + "information hasn't been added"; } } } catch (Exception ex) { _ObjErrorLogService = new ErrorLogService(); _ObjErrorLogService.AddErrorLog(ex, string.Empty, "AddFundTransfer(obj)", string.Empty); split_result = result + ":" + ""; } return(split_result); }
public int AddAccLimit(AccLimitSetup _AccLimit) { try { int result = 0; var _max = _IUoW.Repository <AccLimitSetup>().GetMaxValue(x => x.AccLimitId) + 1; if (_AccLimit.AllAccCategory == "True") { var List_Acc_Group = _IUoW.Repository <AccCategory>().GetBy(x => x.AuthStatusId == "A" && x.LastAction != "DEL", n => new { n.AccCategoryId, n.AccCategoryNm }); List <AccLimitSetup> List_AccLimitSetup = new List <AccLimitSetup>(); foreach (var element in List_Acc_Group) { AccLimitSetup _AccLimitTemp = new AccLimitSetup(); _AccLimitTemp = ObjectCopier.DeepCopy(_AccLimit); _AccLimitTemp.AccLimitId = (_max++).ToString().PadLeft(3, '0'); _AccLimitTemp.AccCategoryId = element.AccCategoryId; _AccLimitTemp.AuthStatusId = "A"; _AccLimitTemp.LastAction = "ADD"; _AccLimit.MakeBy = "prova"; _AccLimitTemp.MakeDT = System.DateTime.Now; _AccLimitTemp.TransDT = Convert.ToDateTime(System.DateTime.Now.ToString("dd/MM/yyyy")); List_AccLimitSetup.Add(_AccLimitTemp); //result = _IUoW.Repository<AccLimitSetup>().AddRange(List_AccLimitSetup); } result = _IUoW.Repository <AccLimitSetup>().AddRange(List_AccLimitSetup); //if(result == 1) //{ // _IUoW.Commit(); //} } if (_AccLimit.AllAccType == "True") { var List_Acc_Type = _IUoW.Repository <AccType>().GetBy(x => x.AuthStatusId == "A" && x.LastAction != "DEL", n => new { n.AccTypeId, n.AccTypeNm }); List <AccLimitSetup> List_AccLimitSetup = new List <AccLimitSetup>(); foreach (var element in List_Acc_Type) { AccLimitSetup _AccLimitTemp = new AccLimitSetup(); _AccLimitTemp = ObjectCopier.DeepCopy(_AccLimit); _AccLimitTemp.AccLimitId = (_max++).ToString().PadLeft(3, '0'); _AccLimitTemp.AccTypeId = element.AccTypeId; _AccLimitTemp.AuthStatusId = "A"; _AccLimitTemp.LastAction = "ADD"; _AccLimit.MakeBy = "prova"; _AccLimitTemp.MakeDT = System.DateTime.Now; _AccLimitTemp.TransDT = Convert.ToDateTime(System.DateTime.Now.ToString("dd/MM/yyyy")); List_AccLimitSetup.Add(_AccLimitTemp); //result = _IUoW.Repository<AccLimitSetup>().AddRange(List_AccLimitSetup); } result = _IUoW.Repository <AccLimitSetup>().AddRange(List_AccLimitSetup); //if (result == 1) //{ // _IUoW.Commit(); //} } if (_AccLimit.AllDefineService == "True") { var List_DefineService = _IUoW.Repository <DefineService>().GetBy(x => x.AuthStatusId == "A" && x.LastAction != "DEL", n => new { n.DefineServiceId, n.DefineServiceNm }); List <AccLimitSetup> List_AccLimitSetup = new List <AccLimitSetup>(); foreach (var element in List_DefineService) { AccLimitSetup _AccLimitTemp = new AccLimitSetup(); _AccLimitTemp = ObjectCopier.DeepCopy(_AccLimit); _AccLimitTemp.AccLimitId = (_max++).ToString().PadLeft(3, '0'); _AccLimitTemp.DefineServiceId = element.DefineServiceId; _AccLimitTemp.AuthStatusId = "A"; _AccLimitTemp.LastAction = "ADD"; _AccLimit.MakeBy = "prova"; _AccLimitTemp.MakeDT = System.DateTime.Now; _AccLimitTemp.TransDT = Convert.ToDateTime(System.DateTime.Now.ToString("dd/MM/yyyy")); List_AccLimitSetup.Add(_AccLimitTemp); //result = _IUoW.Repository<AccLimitSetup>().AddRange(List_AccLimitSetup); } result = _IUoW.Repository <AccLimitSetup>().AddRange(List_AccLimitSetup); //if (result == 1) //{ // _IUoW.Commit(); //} //return result; } if (_AccLimit != null && string.IsNullOrWhiteSpace(_AccLimit.AllAccCategory) && string.IsNullOrWhiteSpace(_AccLimit.AllAccType) && string.IsNullOrWhiteSpace(_AccLimit.AllDefineService)) { _AccLimit.AccLimitId = _max.ToString().PadLeft(3, '0'); _AccLimit.AuthStatusId = "A"; _AccLimit.LastAction = "ADD"; _AccLimit.MakeBy = "prova"; _AccLimit.MakeDT = System.DateTime.Now; _AccLimit.TransDT = Convert.ToDateTime(System.DateTime.Now.ToString("dd/MM/yyyy")); result = _IUoW.Repository <AccLimitSetup>().Add(_AccLimit); //if (result == 1) //{ // _IUoW.Commit(); //} //return result; } //#region Auth Log //if (result == 1) //{ // _IAuthLogService = new AuthLogService(); // long _outMaxSlAuthLogDtl = 0; // result = _IAuthLogService.AddAuthLog(_IUoW, null, _AccLimit, "ADD", "0001", "090102008", 1, "MTK_SP_CUS_TYPE", "AccLimitId", _AccLimit.AccLimitId, "mtaka", _outMaxSlAuthLogDtl, out _outMaxSlAuthLogDtl); //} //#endregion if (result == 1) { _IUoW.Commit(); } return(result); } catch (Exception ex) { _ObjErrorLogService = new ErrorLogService(); _ObjErrorLogService.AddErrorLog(ex, string.Empty, "AddAccLimit(obj)", string.Empty); return(0); } }
public string CheckAccLimit(AccLimitSetup _AccLimit) { AccLimitSetup Acc_Limit_Setup_From = new AccLimitSetup(); AccLimitSetup Acc_Limit_Setup_To = new AccLimitSetup(); LedgerMaster _LedgerMaster = new LedgerMaster(); LedgerService _LedgerService = new LedgerService(); try { #region From Account Limit Check var _From_Acc_Limit = _IUoW.Repository <AccLimitSetup>().GetBy(x => x.AuthStatusId == "A" && x.LastAction != "DEL" && x.DefineServiceId == _AccLimit.DefineServiceId && x.AccTypeId == _AccLimit.FromAccType); var _To_Acc_Limit = _IUoW.Repository <AccLimitSetup>().GetBy(x => x.AuthStatusId == "A" && x.LastAction != "DEL" && x.DefineServiceId == _AccLimit.DefineServiceId && x.AccTypeId == _AccLimit.ToAccType); if (_From_Acc_Limit == null) { return("no transaction limit has set for this service and from account type"); } if (_To_Acc_Limit == null) { return("no transaction limit has set for this service and to account type"); } #region Checking by Ledger BalanceLimit //if (_From_Acc_Limit.AllDefineService == "0") //{ // _LedgerMaster.SystemAccountNo = _AccLimit.FromSystemAccountNo; // _LedgerMaster.Amount = _AccLimit.Amount; // _LedgerMaster.BalanceLimit = _From_Acc_Limit.BalanceLimit; // _LedgerMaster.DefineServiceId = _AccLimit.DefineServiceId; // var msg = _LedgerService.IfAccCrossTheBalanceLimit(_LedgerMaster); // if (msg != "true") // { // return msg; // } //} #endregion //#region Checking by Event //else //{ // var _ListLedgerTxnFrom = (List<LedgerTxn>)_IUoW.Repository<LedgerTxn>().Get(x => x.AuthStatusId == "A" && x.LastAction != "DEL" && // x.DefineServiceId == _AccLimit.DefineServiceId && x.FromSystemAccountNo == _AccLimit.FromSystemAccountNo && x.TransectionDate == _AccLimit.TransDT); // var _ListLedgerTxnTo = (List<LedgerTxn>)_IUoW.Repository<LedgerTxn>().Get(x => x.AuthStatusId == "A" && x.LastAction != "DEL" && // x.DefineServiceId == _AccLimit.DefineServiceId && x.FromSystemAccountNo == _AccLimit.ToSystemAccountNo && x.TransectionDate == _AccLimit.TransDT); // #region Get Daily Number Of Transaction // Acc_Limit_Setup_From.NoOfOccurrence = (_ListLedgerTxnFrom.Count()).ToString(); // Acc_Limit_Setup_To.NoOfOccurrence = (_ListLedgerTxnTo.Count()).ToString(); // #endregion // #region Get Daily Transaction Amount // Acc_Limit_Setup_From.AmountOftotalOccurrences = Convert.ToDecimal(_ListLedgerTxnFrom.Select(m => m.PaymentAmount + m.ReceiveAmount).Sum()); // Acc_Limit_Setup_To.AmountOftotalOccurrences = Convert.ToDecimal(_ListLedgerTxnTo.Select(m => m.PaymentAmount + m.ReceiveAmount).Sum()); // #endregion // #region Checking Transaction Limit For From Account // if (Convert.ToInt32(Acc_Limit_Setup_From.NoOfOccurrence) > Convert.ToInt32(_From_Acc_Limit.NoOfOccurrence)) // { // return "from account has crossed daily number of transaction limit! the actual limit is " + _From_Acc_Limit.NoOfOccurrence; // } // if (Acc_Limit_Setup_From.AmountOftotalOccurrences > _From_Acc_Limit.AmountOftotalOccurrences) // { // return "from account has crossed daily total amount of transaction limit! the actual limit is " + _From_Acc_Limit.AmountOftotalOccurrences; // } // if (_AccLimit.Amount > _From_Acc_Limit.AmountOfOccurrence) // { // return "from account has crossed amount of transaction limit! the actual limit is " + _From_Acc_Limit.AmountOfOccurrence; // } // #endregion // #region Checking Transaction Limit For To Account // if (Convert.ToInt32(Acc_Limit_Setup_To.NoOfOccurrence) > Convert.ToInt32(_To_Acc_Limit.NoOfOccurrence)) // { // return "to account has crossed daily number of transaction limit! the actual limit is " + _To_Acc_Limit.NoOfOccurrence; // } // if (Acc_Limit_Setup_To.AmountOftotalOccurrences > _To_Acc_Limit.AmountOftotalOccurrences) // { // return "to account has crossed daily total amount of transaction limit! the actual limit is " + _To_Acc_Limit.AmountOftotalOccurrences; // } // if (_AccLimit.Amount > _To_Acc_Limit.AmountOfOccurrence) // { // return "to account has crossed amount of transaction limit! the actual limit is " + _To_Acc_Limit.AmountOfOccurrence; // } // #endregion //} //#endregion #endregion return("true"); } catch (Exception ex) { _ObjErrorLogService = new ErrorLogService(); _ObjErrorLogService.AddErrorLog(ex, string.Empty, "CheckStatusWiseService(obj)", string.Empty); return("false"); } }