public CancelTxnModel GetTransactionByInvoiceNoAndMobileNo(string GroupId, string MobileNo, string InvoiceNo) { CancelTxnModel objReturn = new CancelTxnModel(); try { TransactionMaster objTxn = new TransactionMaster(); CustomerDetail objCustomerDetail = new CustomerDetail(); string connStr = objCustRepo.GetCustomerConnString(GroupId); using (var contextNew = new BOTSDBContext(connStr)) { objTxn = contextNew.TransactionMasters.Where(x => x.InvoiceNo == InvoiceNo && x.MobileNo == MobileNo && x.Status == "06").FirstOrDefault(); } if (objTxn != null) { objReturn.InvoiceNo = objTxn.InvoiceNo; objReturn.InvoiceAmt = objTxn.InvoiceAmt; objReturn.MobileNo = objTxn.MobileNo; objReturn.Points = Convert.ToString(objTxn.PointsEarned); objReturn.Datetime = Convert.ToDateTime(objTxn.Datetime).ToString("dd/MM/yyyy HH:mm:ss"); objReturn.DatetimeOriginal = Convert.ToString(objTxn.Datetime); var OutletId = objTxn.CounterId.Substring(0, objTxn.CounterId.Length - 2); using (var contextNew = new BOTSDBContext(connStr)) { objReturn.OutletName = contextNew.OutletDetails.Where(x => x.OutletId == OutletId).Select(y => y.OutletName).FirstOrDefault(); objReturn.TransactionName = contextNew.TransactionTypeMasters.Where(x => x.TransactionType == objTxn.TransType).Select(y => y.TransactionName).FirstOrDefault(); } } } catch (Exception ex) { newexception.AddException(ex, GroupId); } return(objReturn); }
public int ReceivedTransactionInsert(TransactionMaster objTransactionMaster) { Hashtable htparams = new Hashtable { { "@InvoiceId", objTransactionMaster.InvoiceId }, { "@Divission", objTransactionMaster.Divission }, { "@ReceiptType", objTransactionMaster.ReceiptType }, { "@AutoDepositeId", objTransactionMaster.AutoDepositeId }, { "@AutoDepositeAccountNo", objTransactionMaster.AutoDepositeAccountNo }, { "@ClientTypeId", objTransactionMaster.ClientTypeId }, { "@ClientAccountNo", objTransactionMaster.ClientAccountNo }, { "@ClientAccountNoID", objTransactionMaster.ClientAccountNoID }, { "@PayeeDetails", objTransactionMaster.PayeeDetails }, { "@ReceiptAmount", objTransactionMaster.ReceiptAmount }, { "@PrvClientOpenAmount", objTransactionMaster.PrvClientOpenAmount }, { "@AllocatedAmount", objTransactionMaster.AllocatedAmount }, { "@ReceiptBalanceAmount", objTransactionMaster.ReceiptBalanceAmount }, { "@InvoiceBalanceAmount", objTransactionMaster.InvoiceBalanceAmount }, { "@Details", objTransactionMaster.Details }, { "@Messages", objTransactionMaster.Messages }, { "@CreatedBy", objTransactionMaster.CreatedBy }, { "@PaymentSourceRef", objTransactionMaster.PaymentSourceRef }, { "@ReceiptAfterPaid", objTransactionMaster.ReceiptAmountAfterPaid }, { "@SuspenseAccId", objTransactionMaster.SuspenseAccId } }; return(ExecuteNonQuery("ReceivedTransaction_insert_update", htparams, "@return")); }
public TransactionMaster getTransMaster(SqlConnection con, int numTMID) { TransactionMaster objTM = null; try { if (con == null) { con = ConnectionHelper.getConnection(); } if (con.State != ConnectionState.Open) { con.Open(); } DataTable dt = new DataTable(); SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM T_Transaction_Master WHERE TransMID=" + numTMID.ToString(), con); da.Fill(dt); da.Dispose(); if (dt.Rows.Count == 0) { return(null); } objTM = new TransactionMaster(); objTM.TransactionMasterID = dt.Rows[0].Field <int>("TransMID"); objTM.TransactionDate = dt.Rows[0].Field <DateTime>("TransDate"); objTM.VoucherNo = dt.Rows[0].Field <string>("VoucherNo"); objTM.VoucherPayee = dt.Rows[0].Field <string>("VoucherPayee"); objTM.VoucherType = dt.Rows[0].Field <int>("VoucherType"); objTM.TransactionMethodID = dt.Rows[0].Field <object>("TransMethodID") == DBNull.Value || dt.Rows[0].Field <object>("TransMethodID") == null ? -1 : dt.Rows[0].Field <int>("TransMethodID"); objTM.MethodRefID = dt.Rows[0].Field <object>("MethodRefID") == DBNull.Value || dt.Rows[0].Field <object>("MethodRefID") == null ? -1 : dt.Rows[0].Field <int>("MethodRefID"); objTM.MethodRefNo = dt.Rows[0].Field <string>("MethodRefNo"); objTM.TransactionDescription = dt.Rows[0].Field <string>("TransDescription"); objTM.ApprovedBy = dt.Rows[0].Field <string>("approvedBy"); if (dt.Rows[0].Field <object>("approvedDate") == DBNull.Value || dt.Rows[0].Field <object>("approvedDate") == null) { objTM.ApprovedDate = new DateTime(1900, 1, 1); } else { objTM.ApprovedDate = dt.Rows[0].Field <DateTime>("approvedDate"); } objTM.Module = dt.Rows[0].Field <object>("Module") == DBNull.Value || dt.Rows[0].Field <object>("Module") == null ? "" : dt.Rows[0].Field <string>("Module"); //objTM.CompanyID = dt.Rows[0].Field<object>("CompanyID") == DBNull.Value || dt.Rows[0].Field<object>("CompanyID") == null ? -1 : dt.Rows[0].Field<int>("CompanyID"); } catch (Exception ex) { throw ex; } return(objTM); }
public async Task <ServiceResponseModel <TransactionMasterModel> > Add(TransactionMasterModel newTransactionMaster) { ServiceResponseModel <TransactionMasterModel> serviceResponse = new ServiceResponseModel <TransactionMasterModel>(); TransactionMaster transactionMaster = _mapper.Map <TransactionMaster>(newTransactionMaster); await UnitOfWork.TransactionMasters.AddAsync(transactionMaster); await UnitOfWork.Complete(); serviceResponse.Data = newTransactionMaster; return(serviceResponse); }
public async Task <ServiceResponseModel <TransactionMasterModel> > GetByCode(string trxId) { ServiceResponseModel <TransactionMasterModel> serviceResponse = new ServiceResponseModel <TransactionMasterModel>(); TransactionMaster editTransactionMaster = await UnitOfWork.TransactionMasters.SingleOrDefaultAsync(a => a.TrxId == trxId); TransactionMasterModel TransactionMasterAll = _mapper.Map <TransactionMasterModel>(editTransactionMaster); serviceResponse.Data = TransactionMasterAll; return(serviceResponse); }
public async Task <ServiceResponseModel <TransactionMasterModel> > Edit(TransactionMasterModel editTransactionMasterModel) { ServiceResponseModel <TransactionMasterModel> serviceResponse = new ServiceResponseModel <TransactionMasterModel>(); TransactionMaster editTransactionMaster = await UnitOfWork.TransactionMasters.SingleOrDefaultAsync(a => a.TrxId == editTransactionMasterModel.TrxId); _mapper.Map <TransactionMasterModel, TransactionMaster>(editTransactionMasterModel, editTransactionMaster); serviceResponse.Data = editTransactionMasterModel; UnitOfWork.TransactionMasters.Update(editTransactionMaster); await UnitOfWork.Complete(); return(serviceResponse); }
public async Task <ServiceResponseModel <TransactionMasterModel> > Delete(string trxId) { ServiceResponseModel <TransactionMasterModel> serviceResponse = new ServiceResponseModel <TransactionMasterModel>(); TransactionMaster delTransactionMaster = await UnitOfWork.TransactionMasters.SingleOrDefaultAsync(a => a.TrxId == trxId); UnitOfWork.TransactionMasters.Remove(delTransactionMaster); await UnitOfWork.Complete(); TransactionMasterModel delTransactionMasterModel = _mapper.Map <TransactionMasterModel>(delTransactionMaster); serviceResponse.Data = delTransactionMasterModel; return(serviceResponse); }
public static async Task <long> AddAsync(string tenant, LoginView userInfo, TransactionPosting model) { long transactionMasterId = 0; string bookName = "Journal Entry"; bool canPost = await CanPostTransactionAsync(tenant, userInfo.LoginId, userInfo.UserId, userInfo.OfficeId, bookName, model.ValueDate).ConfigureAwait(false); if (!canPost) { return(transactionMasterId); } using (var db = DbProvider.Get(FrapidDbServer.GetConnectionString(tenant), tenant).GetDatabase()) { try { db.BeginTransaction(); var master = new TransactionMaster { Book = bookName, ValueDate = model.ValueDate, BookDate = model.BookDate, TransactionTs = DateTimeOffset.UtcNow, TransactionCode = string.Empty, LoginId = userInfo.LoginId, UserId = userInfo.UserId, OfficeId = userInfo.OfficeId, CostCenterId = model.CostCenterId, ReferenceNumber = model.ReferenceNumber, StatementReference = string.Empty, VerificationStatusId = 0, VerificationReason = string.Empty, AuditUserId = userInfo.UserId, AuditTs = DateTimeOffset.UtcNow, Deleted = false }; var insertedId = await db.InsertAsync("finance.transaction_master", "transaction_master_id", true, master) .ConfigureAwait(true); transactionMasterId = insertedId.To <long>(); foreach (var line in model.Details) { decimal amountInCurrency; string tranType; decimal amountInLocalCurrency; if (line.Credit.Equals(0) && line.Debit > 0) { tranType = "Dr"; amountInCurrency = line.Debit; amountInLocalCurrency = line.LocalCurrencyDebit; } else { tranType = "Cr"; amountInCurrency = line.Credit; amountInLocalCurrency = line.LocalCurrencyCredit; } var detail = new TransactionDetail { TransactionMasterId = transactionMasterId, ValueDate = model.ValueDate, BookDate = model.BookDate, TranType = tranType, AccountId = await Accounts.GetAccountIdByAccountNumberAsync(tenant, line.AccountNumber).ConfigureAwait(false), StatementReference = line.StatementReference, CashRepositoryId = await CashRepositories.GetCashRepositoryIdByCashRepositoryCodeAsync(tenant, line.CashRepositoryCode).ConfigureAwait(false), CurrencyCode = line.CurrencyCode, AmountInCurrency = amountInCurrency, OfficeId = userInfo.OfficeId, LocalCurrencyCode = userInfo.CurrencyCode, Er = line.ExchangeRate, AmountInLocalCurrency = amountInLocalCurrency, AuditUserId = userInfo.UserId, AuditTs = DateTimeOffset.UtcNow }; await db.InsertAsync("finance.transaction_details", "transaction_detail_id", true, detail).ConfigureAwait(false); } if (model.Attachemnts != null && model.Attachemnts.Count > 0) { foreach (var item in model.Attachemnts) { var document = new TransactionDocument { TransactionMasterId = transactionMasterId, OriginalFileName = item.OriginalFileName, FileExtension = item.FileExtension, FilePath = item.FilePath, Memo = item.Memo, AuditUserId = userInfo.UserId, AuditTs = DateTimeOffset.UtcNow, Deleted = false }; await db.InsertAsync("finance.transaction_documents", "document_id", true, document).ConfigureAwait(false); } } var sql = new Sql("SELECT * FROM finance.auto_verify(@0::bigint, @1::integer)", transactionMasterId, userInfo.UserId); await db.ExecuteAsync(sql).ConfigureAwait(false); db.CompleteTransaction(); } catch (Exception) { db.AbortTransaction(); throw; } } return(transactionMasterId); }
protected void btnSave_Click(object sender, EventArgs e) { if (ChkAllocate.Checked == false) { ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "Msg", "alert('Please Allocate Current Amount');", true); } else { try { int Allocatedcount = 0; int result = 0; decimal ReceiptAmountAfterpaid = 0.0M; decimal PreviousAmountAfterpaid = 0.0M; foreach (GridViewRow row in gvData.Rows) { if (row.RowType == DataControlRowType.DataRow) { TextBox txtThisEntry = row.FindControl("txtThisEntry") as TextBox; HiddenField hfInvId = row.FindControl("hfInvId") as HiddenField; if (!_objBOUtiltiy.TryParseCheckValue(txtThisEntry.Text, "Decimal")) { txtThisEntry.Text = "0"; } if (txtThisEntry.Text != "" && txtThisEntry.Text != "0" && txtThisEntry.Text != "0.00") { Allocatedcount = Allocatedcount + 1; TransactionMaster objTransactionMaster = new TransactionMaster(); objTransactionMaster.InvoiceId = Convert.ToInt32(hfInvId.Value); objTransactionMaster.Divission = ddlDivision.SelectedValue; objTransactionMaster.ReceiptType = ddlReceiptType.SelectedValue; objTransactionMaster.AutoDepositeId = Convert.ToInt32(ddlAutoDepositeAccount.SelectedItem.Value); objTransactionMaster.AutoDepositeAccountNo = ddlAutoDepositeAccount.SelectedItem.Text; objTransactionMaster.ClientTypeId = Convert.ToInt32(ddlClientType.SelectedValue); objTransactionMaster.ClientAccountNo = ddlAccountNo.SelectedItem.Text; objTransactionMaster.ClientAccountNoID = Convert.ToInt32(ddlAccountNo.SelectedValue); objTransactionMaster.PayeeDetails = txtPayeeDetails.Text; objTransactionMaster.PrvClientOpenAmount = Convert.ToDecimal(lblPrvClientOpenAmount.Text); objTransactionMaster.AllocatedAmount = txtThisEntry.Text != "" ? Convert.ToDecimal(txtThisEntry.Text) : 0; objTransactionMaster.InvoiceBalanceAmount = Convert.ToDecimal(row.Cells[7].Text); objTransactionMaster.Details = txtDetails.Text; objTransactionMaster.Messages = txtMessage.Text; objTransactionMaster.CreatedBy = Convert.ToInt32(Session["UserLoginId"]); objTransactionMaster.PaymentSourceRef = txtSourceRef.Text; objTransactionMaster.SuspenseAccId = 83; if (txtThisEntry.Text != "" || txtThisEntry.Text != "0" || txtThisEntry.Text != "0.00") { if (ReceiptAmountAfterpaid != 0 || ReceiptAmountAfterpaid != 0.0M) { objTransactionMaster.ReceiptAmount = ReceiptAmountAfterpaid; } else { objTransactionMaster.ReceiptAmount = txtAmount.Text != "" ? Convert.ToDecimal(txtAmount.Text) : 0; } if (PreviousAmountAfterpaid != 0 || PreviousAmountAfterpaid != 0.0M) { objTransactionMaster.PrvClientOpenAmount = PreviousAmountAfterpaid; } else { objTransactionMaster.PrvClientOpenAmount = Convert.ToDecimal(lblPrvClientOpenAmount.Text); } if (objTransactionMaster.PrvClientOpenAmount > objTransactionMaster.AllocatedAmount) { objTransactionMaster.ReceiptAmountAfterPaid = objTransactionMaster.ReceiptAmount; PreviousAmountAfterpaid = Math.Abs(objTransactionMaster.PrvClientOpenAmount - objTransactionMaster.AllocatedAmount); } else { objTransactionMaster.ReceiptAmountAfterPaid = Math.Abs(objTransactionMaster.ReceiptAmount + objTransactionMaster.PrvClientOpenAmount - objTransactionMaster.AllocatedAmount); PreviousAmountAfterpaid = 0.0M; } ReceiptAmountAfterpaid = objTransactionMaster.ReceiptAmountAfterPaid; objTransactionMaster.ReceiptBalanceAmount = ReceiptAmountAfterpaid + PreviousAmountAfterpaid; } else { //objTransactionMaster.ReceiptAmount = txtAmount.Text != "" ? Convert.ToDecimal(txtAmount.Text) : 0; ////if (objTransactionMaster.PrvClientOpenAmount != 0 || objTransactionMaster.PrvClientOpenAmount != 0.0M) ////{ //// objTransactionMaster.ReceiptAmount = objTransactionMaster.ReceiptAmount + objTransactionMaster.PrvClientOpenAmount; ////} //objTransactionMaster.ReceiptAmountAfterPaid =Math.Abs( objTransactionMaster.ReceiptAmount - objTransactionMaster.AllocatedAmount); ////objTransactionMaster.ReceiptAmountAfterPaid = objTransactionMaster.ReceiptAmountAfterPaid + objTransactionMaster.PrvClientOpenAmount != 0.0M ? Convert.ToDecimal(objTransactionMaster.PrvClientOpenAmount) : 0; //ReceiptAmountAfterpaid = objTransactionMaster.ReceiptAmountAfterPaid; //objTransactionMaster.ReceiptBalanceAmount = ReceiptAmountAfterpaid; } result = _objBALTransactions.ReceivedTransactionInsert(objTransactionMaster); } } } if (Convert.ToInt32(ddlAutoDepositeAccount.SelectedValue) != 0) { Transaction objTransaction = new Transaction(); objTransaction.FmAccountNoId = Convert.ToInt32(ddlAccountNo.SelectedValue); objTransaction.ReferenceAccountNoId = Convert.ToInt32(ddlAutoDepositeAccount.SelectedValue); string category = ""; DataSet ds = _objBALTransactions.Transaction_GetAccountsData(Convert.ToInt32(ddlAccountNo.SelectedValue), Convert.ToInt32(ddlAutoDepositeAccount.SelectedValue), "RT", category); string FmAcccode = ""; string FmMainAccCode = ""; string RefMainAcc = ""; string RefAccCode = ""; if (ds.Tables[0].Rows.Count > 0) { FmAcccode = ds.Tables[0].Rows[0]["AccCode"].ToString(); FmMainAccCode = ds.Tables[0].Rows[0]["MainAccCode"].ToString(); } if (ds.Tables[1].Rows.Count > 0) { RefAccCode = ds.Tables[1].Rows[0]["BankGiAccount"].ToString(); RefMainAcc = ds.Tables[1].Rows[0]["MainAccCode"].ToString(); } objTransaction.DebitAmount = txtAmount.Text != "" ? Convert.ToDecimal(txtAmount.Text) : 0; objTransaction.FmAccountNO = FmAcccode; objTransaction.FmMainAccount = FmMainAccCode; objTransaction.ReferenceAccountNO = RefAccCode; objTransaction.CreditAmount = 0; objTransaction.ReferenceNo = txtSourceRef.Text; objTransaction.ToMainAccount = RefMainAcc; // objTransaction.InvoiceId = Convert.ToInt32(hfInvId.Value); // objTransaction.InvoiceNo = ""; objTransaction.ReferenceType = "RT"; objTransaction.CreatedBy = 0; objTransaction.BalanceAmount = txtAmount.Text != "" ? Convert.ToDecimal(txtAmount.Text) : 0; _objBALTransactions.TransactionInsert(objTransaction); } //objTransaction.CreditAmount = lblAllocatedAmount.Text != "" ? Convert.ToDecimal(lblAllocatedAmount.Text) : 0; //objTransaction.FmAccountNO = RefAccCode; //objTransaction.MainAccount = RefMainAcc; //objTransaction.ReferenceAccountNO = FmAcccode; //objTransaction.DebitAmount = 0; //objTransaction.ReferenceNo = txtSourceRef.Text; //objTransaction.ReferenceType = "RT"; //objTransaction.CreatedBy = 0; //objTransaction.BalanceAmount = Convert.ToDecimal(lblReceiptOpenAmount.Text); //_objBALTransactions.TransactionInsert(objTransaction); if (ddlAutoDepositeAccount.SelectedValue != "0") { EmDepositMaster objEmDepositMaster = new EmDepositMaster(); objEmDepositMaster.DepositDate = Convert.ToDateTime(txtDate.Text); objEmDepositMaster.DepositClientPrefix = Convert.ToInt32(ddlClientType.SelectedValue); objEmDepositMaster.DepositComments = ""; objEmDepositMaster.DepositConsultant = Session["UserLoginId"].ToString(); objEmDepositMaster.DepositRecieptType = Convert.ToInt32(ddlReceiptType.SelectedValue); objEmDepositMaster.DepositSourceRef = txtSourceRef.Text; objEmDepositMaster.TotalRecieptsDeposited = Convert.ToInt32(Allocatedcount); objEmDepositMaster.TotalDepositAmount = Convert.ToDecimal(lblAllocatedAmount.Text); objEmDepositMaster.DepositAcId = Convert.ToInt32(ddlAutoDepositeAccount.SelectedValue); BADepositTransaction objBADepositTransaction = new BADepositTransaction(); int DepositInsert = objBADepositTransaction.insertDepositMaster(objEmDepositMaster); if (DepositInsert > 0) { lblMsg.Text = _objBOUtiltiy.ShowMessage("success", "Success", "Deposit Added Successfully"); // clearcontrols(); foreach (GridViewRow Row in gvData.Rows) { if (Row.RowType == DataControlRowType.DataRow) { TextBox txtThisEntry = Row.FindControl("txtThisEntry") as TextBox; HiddenField hfInvId = Row.FindControl("hfInvId") as HiddenField; EMDepositChild objEMDepositChild = new EMDepositChild(); objEMDepositChild.ReceiptId = Convert.ToInt32(result); objEMDepositChild.RecieptDate = Convert.ToDateTime(txtDate.Text); objEMDepositChild.ReceiptType = ddlReceiptType.SelectedItem.Text; objEMDepositChild.ReciptClient = (ddlClientType.SelectedItem.Text); objEMDepositChild.ReceiptAmount = txtThisEntry.Text != "" ? Convert.ToDecimal(txtThisEntry.Text) : 0;; objEMDepositChild.InvoiceId = Convert.ToInt32(hfInvId.Value); objEMDepositChild.DepositAcId = Convert.ToInt32(ddlAutoDepositeAccount.SelectedValue); objEMDepositChild.DepositTransMasterId = DepositInsert; int childResult = objBADepositTransaction.insertDepositChild(objEMDepositChild); if (childResult > 0) { lblMsg.Text = _objBOUtiltiy.ShowMessage("success", "Success", "Deposit Added Successfully"); } else { lblMsg.Text = _objBOUtiltiy.ShowMessage("info", "Info", " Child Deposit Was not Added Successfully"); } } //objEMDepositChild.RecieptDate = Convert.ToDateTime(gvReciptData.Rows[i].Cells[2].Text); //objEMDepositChild.RecieptDate = Convert.ToDateTime(gvReciptData.Rows[i].Cells[2].Text); } } } else { } OpenAmountDetails objOpenAmountDetails = new OpenAmountDetails(); objOpenAmountDetails.ClientTypeId = Convert.ToInt32(ddlClientType.SelectedValue); objOpenAmountDetails.ClientNameId = Convert.ToInt32(ddlAccountNo.SelectedValue); objOpenAmountDetails.ReceiptAmount = txtAmount.Text != "" ? Convert.ToDecimal(txtAmount.Text) : 0;; objOpenAmountDetails.PrvOpenAmount = lblPrvClientOpenAmount.Text != "" ? Convert.ToDecimal(lblPrvClientOpenAmount.Text) : 0; objOpenAmountDetails.AlocatedAmount = lblAllocatedAmount.Text != "" ? Convert.ToDecimal(lblAllocatedAmount.Text) : 0; objOpenAmountDetails.ReceiptOpenAmount = lblReceiptOpenAmount.Text != "" ? Convert.ToDecimal(lblReceiptOpenAmount.Text) : 0; objOpenAmountDetails.SourceRef = txtSourceRef.Text; objOpenAmountDetails.ReceiptType = ddlReceiptType.SelectedValue; objOpenAmountDetails.FromAccount = ddlAccountNo.SelectedValue; objOpenAmountDetails.ToAccount = ddlAccountNo.SelectedValue; objOpenAmountDetails.CreatedBy = Convert.ToInt32(Session["UserLoginId"]); int ChildResult = _objBALTransactions.OpenAmountDetailsInsertUpdateMaster(objOpenAmountDetails); if (ChildResult > 0) { Response.Redirect("ReceiptsList.aspx"); } } catch (Exception ex) { lblMsg.Text = _objBOUtiltiy.ShowMessage("danger", "error", ex.Message); ExceptionLogging.SendExcepToDB(ex); } } }
public int SaveEditTransactionMaster(TransactionMaster objTM, SqlConnection con, SqlTransaction trans) { int ID = 0; try { SqlCommand com = new SqlCommand("spInsertUpdateTransMaster", con, trans); com.CommandType = CommandType.StoredProcedure; com.Parameters.Add("@TransMID", SqlDbType.Int).Value = objTM.TransactionMasterID; com.Parameters.Add("@TransDate", SqlDbType.DateTime).Value = objTM.TransactionDate; com.Parameters.Add("@VoucherNo", SqlDbType.VarChar, 100).Value = objTM.VoucherNo; com.Parameters.Add("@VoucherPayee", SqlDbType.VarChar, 500).Value = objTM.VoucherPayee; com.Parameters.Add("@VoucherType", SqlDbType.Int).Value = objTM.VoucherType; if (objTM.TransactionMethodID <= 0) { com.Parameters.Add("@TransMethodID", SqlDbType.Int).Value = DBNull.Value; } else { com.Parameters.Add("@TransMethodID", SqlDbType.Int).Value = objTM.TransactionMethodID; } if (objTM.MethodRefID <= 0) { com.Parameters.Add("@MethodRefID", SqlDbType.Int).Value = DBNull.Value; } else { com.Parameters.Add("@MethodRefID", SqlDbType.Int).Value = objTM.MethodRefID; } com.Parameters.Add("@MethodRefNo", SqlDbType.VarChar, 100).Value = objTM.MethodRefNo; com.Parameters.Add("@TransDescription", SqlDbType.VarChar, 1000).Value = objTM.TransactionDescription; com.Parameters.Add("@ApprovedBy", SqlDbType.VarChar, 100).Value = objTM.ApprovedBy; if (objTM.ApprovedDate == new DateTime(1900, 1, 1)) { com.Parameters.Add("@ApprovedDate", SqlDbType.DateTime).Value = DBNull.Value; } else { com.Parameters.Add("@ApprovedDate", SqlDbType.DateTime).Value = objTM.ApprovedDate; } if (objTM.MethodRefID <= 0) { com.Parameters.Add("@CreatedBy", SqlDbType.UniqueIdentifier).Value = objTM.CreatedBy; com.Parameters.Add("@CreatedDate", SqlDbType.DateTime).Value = objTM.CreatedDate; com.Parameters.Add("@ModifiedBy", SqlDbType.UniqueIdentifier).Value = objTM.ModifiedBy; com.Parameters.Add("@ModifiedDate", SqlDbType.DateTime).Value = objTM.ModifiedDate; } else { com.Parameters.Add("@CreatedBy", SqlDbType.UniqueIdentifier).Value = objTM.CreatedBy; com.Parameters.Add("@CreatedDate", SqlDbType.DateTime).Value = objTM.CreatedDate; com.Parameters.Add("@ModifiedBy", SqlDbType.UniqueIdentifier).Value = objTM.ModifiedBy; com.Parameters.Add("@ModifiedDate", SqlDbType.DateTime).Value = objTM.ModifiedDate; } //com.Parameters.Add("@CompanyID", SqlDbType.Int).Value = LogInInfo.CompanyID; //com.Parameters.Add("@UserID", SqlDbType.Int).Value = LogInInfo.UserID; com.Parameters.Add("@Module", SqlDbType.VarChar, 500).Value = objTM.Module; //com.ExecuteNonQuery(); if (objTM.TransactionMasterID <= 0) { SqlParameter retValParam = com.Parameters.Add("@RETURN_VALUE", SqlDbType.Int); retValParam.Direction = System.Data.ParameterDirection.ReturnValue; com.ExecuteNonQuery(); ID = Convert.ToInt32(retValParam.Value); //SqlCommand cmd = new SqlCommand("SELECT ISNULL(MAX(TransMID),0) FROM T_Transaction_Master", con, trans); //ID = Convert.ToInt32(cmd.ExecuteScalar()); } else { com.ExecuteNonQuery(); ID = objTM.TransactionMasterID; // ID = Convert.ToInt32(com.Parameters["@TransMID"].Value); } com.Dispose(); } catch (Exception ex) { throw ex; } //finally //{ // con.Close(); //} return(ID); }
public string TransactionMasterUpdate(TransactionsViewModel transactionsViewModel, int insttituteId, int financialYearId, int deptmentId, int userId) { TransactionMaster transactionMaster = new TransactionMaster { DepartmentId = deptmentId, FinancialYearId = financialYearId, InsertDate = DateTime.Now, InsertUserAccountId = userId, InstId = insttituteId, MasterLedgerId = 0, ForInstId = transactionsViewModel.DeptId, TotalAmount = transactionsViewModel.TotalCredit }; DateTime transactionDate = transactionsViewModel.TransactionDate; transactionMaster.TransactionDate = transactionDate.Date; transactionMaster.UpdateDate = DateTime.Now; transactionMaster.UpdateUserAccountId = userId; transactionMaster.VoucherNo = transactionsViewModel.NewVocherNo; transactionMaster.VoucherTypeId = transactionsViewModel.VocherType; transactionMaster.MasterNarration = transactionsViewModel.MasterNarration; transactionMaster.ChequeNo = transactionsViewModel.ChequeorCash; char[] separator = new char[] { '/' }; string[] strArray = transactionsViewModel.NewVocherNo.Split(separator); transactionMaster.UniqueTransactionNo = new int?(Convert.ToInt32(strArray[0])); List <AccountsAppWeb.Core.com.kccsasr.accounts.TransactionDetail> list = new List <AccountsAppWeb.Core.com.kccsasr.accounts.TransactionDetail>(); using (List <AccountLedgers> .Enumerator enumerator = transactionsViewModel.accountLedgers.GetEnumerator()) { while (true) { int ledgerId; decimal debit; decimal credit; bool flag; while (true) { if (enumerator.MoveNext()) { string str; AccountLedgers current = enumerator.Current; ledgerId = current.LedgerId; debit = current.Debit; credit = current.Credit; flag = false; if (ledgerId == 1) { flag = true; DataSet set1 = new DataSet(); DataSet set = this.accountsAppAPI.OpeningBalance(this.sKey, transactionsViewModel.DeptId, financialYearId, insttituteId, DateTime.Now.AddDays(1.0), 1, 0x10f447); int num4 = 0; if (set.Tables[0].Rows.Count == 0) { num4 = 0; } else if (Convert.ToDecimal(set.Tables[0].Rows[0]["Debit"]) > 0M) { num4 = Convert.ToInt32(set.Tables[0].Rows[0]["Debit"]); } else if (Convert.ToDecimal(set.Tables[0].Rows[0]["Credit"]) > 0M) { num4 = Convert.ToInt32(set.Tables[0].Rows[0]["Credit"]); } if ((debit > num4) && (Convert.ToInt32(strArray[0]) == 4)) { return("Cash Balance Is Going Negative"); } } if (!flag) { break; } if ((credit > 20000M) && (financialYearId == 5)) { str = "Cash Amount is too large"; } else { if (((credit <= 10000M) || ((financialYearId <= 5) || (transactionMaster.VoucherTypeId == 3))) || (transactionMaster.VoucherTypeId == 5)) { break; } str = "Cash amount is exceeding Rs.10000/-, Please check again"; } return(str); } else { goto TR_0000; } break; } AccountsAppWeb.Core.com.kccsasr.accounts.TransactionDetail item = new AccountsAppWeb.Core.com.kccsasr.accounts.TransactionDetail(); item.Debit = debit; item.Credit = credit; item.LedgerId = ledgerId; item.IsCashEntry = flag; item.TransactionDetailsId = 0; item.TransactionMasterId = 0; item.UniqueID = ""; item.ForInstId = new int?(transactionsViewModel.DeptId); list.Add(item); } } TR_0000: return((this.accountsAppAPI.TransactionMasterInsert(insttituteId, transactionMaster, list.ToArray(), transactionsViewModel.MasterTransactionId) <= 0) ? "Transaction Failed" : "Transaction saved"); }
public string SubmitRating(string mobileNo, int[] ranking, string GroupId, string outletId) { string status = "false"; // string smsresponce = ""; FeedBackMaster objfeedback = new FeedBackMaster(); string connStr = objCustRepo.GetCustomerConnString(GroupId); TimeZoneInfo IND_ZONE = TimeZoneInfo.FindSystemTimeZoneById("India Standard Time"); DateTime date = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, IND_ZONE); using (var context = new BOTSDBContext(connStr)) { CustomerDetail objcustdetails = context.CustomerDetails.Where(x => x.MobileNo == mobileNo).FirstOrDefault(); OutletDetail objoutlet = context.OutletDetails.Where(x => x.OutletId == outletId).FirstOrDefault(); TransactionMaster objtransactionMaster = new TransactionMaster(); PointsExpiry objpointsExpiry = new PointsExpiry(); var transaction = context.TransactionMasters.Where(x => x.MobileNo == mobileNo).OrderByDescending(y => y.Datetime).Take(2).ToList(); var pointexpiry = context.PointsExpiries.Where(x => x.MobileNo == mobileNo).OrderByDescending(y => y.Datetime).Take(2).ToList(); int queid = 1; int Combinedpoint = 0; foreach (int points in ranking) { if (points != 0) { if (objcustdetails != null) { objfeedback.CustomerName = objcustdetails.CustomerName; } else { objfeedback.CustomerName = "Member"; } objfeedback.MobileNo = mobileNo; objfeedback.QuestionPoints = points.ToString(); objfeedback.QuestionId = queid.ToString(); objfeedback.OutletId = outletId; objfeedback.DOJ = date; Combinedpoint += points; objfeedback = context.FeedBackMasters.Add(objfeedback); context.SaveChanges(); status = "true"; } queid++; } if (Combinedpoint <= 4) { SMSDetail objsmsdetails = new SMSDetail(); FeedBackMobileMaster objmobilemaster = context.FeedBackMobileMasters.Where(x => x.MessageId == "203").FirstOrDefault(); SMSEmailMaster objsmsemailmaster = context.SMSEmailMasters.Where(x => x.MessageId == "203").FirstOrDefault(); string message = objsmsemailmaster.SMS; if (objcustdetails != null) { message = message.Replace("#01", objcustdetails.CustomerName); } else { message = message.Replace("#01", "Member"); } message = message.Replace("#30", mobileNo); message = message.Replace("#08", Convert.ToString(date)); message = message.Replace("#31", Convert.ToString(ranking[0])); message = message.Replace("#32", Convert.ToString(ranking[1])); objsmsdetails = context.SMSDetails.Where(x => x.OutletId == outletId).FirstOrDefault(); // SendMessage(objmobilemaster.MobileNo, objsmsdetails.SenderId, message, objsmsdetails.TxnUrl, objsmsdetails.TxnUserName, objsmsdetails.TxnPassword); SendMessageVision(objsmsdetails.TxnUrl, objmobilemaster.MobileNo, message, objsmsdetails.SenderId, objsmsdetails.TxnPassword); } if (transaction.Count > 0) { if (transaction[0].InvoiceNo == "B_Feedbackpoints" && pointexpiry[0].InvoiceNo == "B_Feedbackpoints") { var point = objcustdetails.Points; objcustdetails.Points = point + objoutlet.FeedBackPoints; context.CustomerDetails.AddOrUpdate(objcustdetails); context.SaveChanges(); objtransactionMaster.CustomerId = objcustdetails.CustomerId; objtransactionMaster.CustomerPoints = objcustdetails.Points; objtransactionMaster.CounterId = outletId + "01"; objtransactionMaster.MobileNo = mobileNo; objtransactionMaster.Datetime = date; objtransactionMaster.TransType = "1"; objtransactionMaster.TransSource = "1"; objtransactionMaster.InvoiceNo = "B_Feedbackpoints"; objtransactionMaster.InvoiceAmt = 0; objtransactionMaster.Status = "06"; objtransactionMaster.PointsEarned = objoutlet.FeedBackPoints; objtransactionMaster.PointsBurned = 0; objtransactionMaster.CampaignPoints = 0; objtransactionMaster.TxnAmt = 0; objtransactionMaster.Synchronization = ""; objtransactionMaster.SyncDatetime = null; context.TransactionMasters.Add(objtransactionMaster); context.SaveChanges(); objpointsExpiry.MobileNo = mobileNo; objpointsExpiry.CounterId = outletId + "01"; objpointsExpiry.CustomerId = objcustdetails.CustomerId; objpointsExpiry.BurnDate = null; objpointsExpiry.Datetime = date; objpointsExpiry.EarnDate = date; // DateTime today = date; DateTime next = date.AddYears(1); var currentmonth = DateTime.DaysInMonth(next.Year, next.Month); if (next.Day < currentmonth) { var days = (currentmonth - next.Day); next = date.AddDays(days).AddYears(1); } objpointsExpiry.ExpiryDate = next; objpointsExpiry.Points = objoutlet.FeedBackPoints; objpointsExpiry.Status = "00"; objpointsExpiry.InvoiceNo = "B_Feedbackpoints"; objpointsExpiry.GroupId = objoutlet.GroupId; objpointsExpiry.OriginalInvoiceNo = ""; objpointsExpiry.TransRefNo = null; context.PointsExpiries.Add(objpointsExpiry); context.SaveChanges(); status = "pointsGiven"; } } } return(status); }
public bool SubmitPoints(string MemberName, string Gender, string BirthDt, string mobileNo, string AnniversaryDt, string LiveIn, string Knowabt, string GroupId, string outletid) { bool status = false; // string smsresponce=""; List <FeedBackMaster> lstfeedback = new List <FeedBackMaster>(); TransactionMaster objtransactionMaster = new TransactionMaster(); PointsExpiry objpointsExpiry = new PointsExpiry(); CustomerDetail objnewcust = new CustomerDetail(); string connStr = objCustRepo.GetCustomerConnString(GroupId); TimeZoneInfo IND_ZONE = TimeZoneInfo.FindSystemTimeZoneById("India Standard Time"); DateTime date = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, IND_ZONE); using (var context = new BOTSDBContext(connStr)) { CustomerDetail objcustdetails = context.CustomerDetails.Where(x => x.MobileNo == mobileNo).FirstOrDefault(); OutletDetail objoutlet = context.OutletDetails.Where(x => x.OutletId == outletid).FirstOrDefault(); FeedBackMaster objfeedback = new FeedBackMaster(); lstfeedback = context.FeedBackMasters.Where(x => x.MobileNo == mobileNo).OrderByDescending(y => y.DOJ).Take(2).ToList(); if (objcustdetails != null) { if (AnniversaryDt != null) { objcustdetails.AnniversaryDate = Convert.ToDateTime(AnniversaryDt); } var point = objcustdetails.Points; objcustdetails.Points = point + objoutlet.FeedBackPoints; context.CustomerDetails.AddOrUpdate(objcustdetails); context.SaveChanges(); } if (objcustdetails == null) { var CustomerId = context.CustomerDetails.OrderByDescending(x => x.CustomerId).Select(y => y.CustomerId).FirstOrDefault(); DateTime datet = new DateTime(1900, 01, 01); var NewId = Convert.ToInt64(CustomerId) + 1; objnewcust.CustomerId = Convert.ToString(NewId); objnewcust.Points = objoutlet.FeedBackPoints; if (string.IsNullOrEmpty(MemberName)) { objnewcust.CustomerName = "Member"; } else { objnewcust.CustomerName = MemberName; } objnewcust.CustomerCategory = null; objnewcust.CardNumber = ""; objnewcust.CustomerThrough = "2"; if (BirthDt != "") { objnewcust.DOB = Convert.ToDateTime(BirthDt); } objnewcust.MaritalStatus = ""; objnewcust.MemberGroupId = "1000"; objnewcust.MobileNo = mobileNo; objnewcust.Status = "00"; if (AnniversaryDt != null) { objnewcust.AnniversaryDate = Convert.ToDateTime(AnniversaryDt); } objnewcust.DOJ = date; objnewcust.EmailId = ""; objnewcust.EnrollingOutlet = outletid; if (string.IsNullOrEmpty(Gender)) { objnewcust.Gender = ""; } else { objnewcust.Gender = Gender; } objnewcust.IsSMS = null; objnewcust.BillingCustomerId = null; context.CustomerDetails.Add(objnewcust); context.SaveChanges(); } if (objcustdetails != null) { objtransactionMaster.CustomerId = objcustdetails.CustomerId; objtransactionMaster.CustomerPoints = objcustdetails.Points; } else { objtransactionMaster.CustomerId = objnewcust.CustomerId; objtransactionMaster.CustomerPoints = objnewcust.Points; } objtransactionMaster.CounterId = outletid + "01"; objtransactionMaster.MobileNo = mobileNo; objtransactionMaster.Datetime = date; objtransactionMaster.TransType = "1"; objtransactionMaster.TransSource = "1"; if (GroupId != "1163") { objtransactionMaster.InvoiceNo = "B_Feedbackpoints"; } else { objtransactionMaster.InvoiceNo = "AabharBonus"; } objtransactionMaster.InvoiceAmt = 0; objtransactionMaster.Status = "06"; objtransactionMaster.PointsEarned = objoutlet.FeedBackPoints; objtransactionMaster.PointsBurned = 0; objtransactionMaster.CampaignPoints = 0; objtransactionMaster.TxnAmt = 0; objtransactionMaster.Synchronization = ""; objtransactionMaster.SyncDatetime = null; if (GroupId != "1163") { context.TransactionMasters.Add(objtransactionMaster); context.SaveChanges(); } if (lstfeedback.Count == 0 && GroupId == "1163") { context.TransactionMasters.Add(objtransactionMaster); context.SaveChanges(); } objpointsExpiry.MobileNo = mobileNo; objpointsExpiry.CounterId = outletid + "01"; if (objcustdetails != null) { objpointsExpiry.CustomerId = objcustdetails.CustomerId; } else { objpointsExpiry.CustomerId = objnewcust.CustomerId; } objpointsExpiry.BurnDate = null; objpointsExpiry.Datetime = date; objpointsExpiry.EarnDate = date; // DateTime today = date; DateTime next = date.AddYears(1); var currentmonth = DateTime.DaysInMonth(next.Year, next.Month); if (next.Day < currentmonth) { var days = (currentmonth - next.Day); next = date.AddDays(days).AddYears(1); } objpointsExpiry.ExpiryDate = next; objpointsExpiry.Points = objoutlet.FeedBackPoints; objpointsExpiry.Status = "00"; if (GroupId != "1163") { objpointsExpiry.InvoiceNo = "B_Feedbackpoints"; } else { objpointsExpiry.InvoiceNo = "AabharBonus"; } //objpointsExpiry.InvoiceNo = "B_Feedbackpoints"; objpointsExpiry.GroupId = objoutlet.GroupId; objpointsExpiry.OriginalInvoiceNo = ""; objpointsExpiry.TransRefNo = null; if (GroupId != "1163") { context.PointsExpiries.Add(objpointsExpiry); context.SaveChanges(); } if (lstfeedback.Count == 0 && GroupId == "1163") { context.PointsExpiries.Add(objpointsExpiry); context.SaveChanges(); } if (lstfeedback.Count == 0 && GroupId == "1163") { FeedBackMaster feedback = new FeedBackMaster(); feedback.MobileNo = mobileNo; feedback.CustomerName = MemberName; feedback.OutletId = outletid; feedback.Location = LiveIn; feedback.HowToKonwAbout = Knowabt; feedback.DOB = Convert.ToDateTime(BirthDt); if (AnniversaryDt != null) { feedback.DOA = Convert.ToDateTime(AnniversaryDt); } feedback.Points = objoutlet.FeedBackPoints; context.FeedBackMasters.AddOrUpdate(feedback); context.SaveChanges(); status = true; } else { foreach (var feedback in lstfeedback) { feedback.Location = LiveIn; feedback.HowToKonwAbout = Knowabt; if (BirthDt != "") { feedback.DOB = Convert.ToDateTime(BirthDt); } if (AnniversaryDt != null) { feedback.DOA = Convert.ToDateTime(AnniversaryDt); } feedback.Points = objoutlet.FeedBackPoints; context.FeedBackMasters.AddOrUpdate(feedback); context.SaveChanges(); status = true; } } if (status) { // string msgmobileno = "8452047477"; string message1; SMSDetail objsmsdetails = new SMSDetail(); FeedBackMobileMaster objmobilemaster = new FeedBackMobileMaster(); SMSEmailMaster objsmsemailmaster = new SMSEmailMaster(); if (GroupId != "1163") { objmobilemaster = context.FeedBackMobileMasters.Where(x => x.MessageId == "202").FirstOrDefault(); objsmsemailmaster = context.SMSEmailMasters.Where(x => x.MessageId == "202").FirstOrDefault(); string message = objsmsemailmaster.SMS; //TimeZoneInfo IND_ZONE = TimeZoneInfo.FindSystemTimeZoneById("India Standard Time"); //DateTime date = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, IND_ZONE); if (objcustdetails != null) { message = message.Replace("#01", objcustdetails.CustomerName); } else { message = message.Replace("#01", "Member"); } message = message.Replace("#30", mobileNo); message = message.Replace("#08", Convert.ToString(date)); objsmsdetails = context.SMSDetails.Where(x => x.OutletId == outletid).FirstOrDefault(); // SendBulkSMSMessageTxn(objmobilemaster.MobileNo, objsmsdetails.SenderId, message); SendBulkSMSMessagevision(objmobilemaster.MobileNo, objsmsdetails.SenderId, message); } objsmsemailmaster = context.SMSEmailMasters.Where(x => x.MessageId == "201").FirstOrDefault(); message1 = objsmsemailmaster.SMS; if (objcustdetails != null) { message1 = message1.Replace("#01", objcustdetails.CustomerName); } else { message1 = message1.Replace("#01", "Member"); } // SendMessage(mobileNo, objsmsdetails.SenderId, message1, objsmsdetails.TxnUrl, objsmsdetails.TxnUserName, objsmsdetails.TxnPassword); SendMessageVision(objsmsdetails.TxnUrl, mobileNo, message1, objsmsdetails.SenderId, objsmsdetails.TxnPassword); } } return(status); }
public int ReceivedTransactionInsert(TransactionMaster objTransactionMaster) { return(_objDALTransactions.ReceivedTransactionInsert(objTransactionMaster)); }
public async Task <ServiceResponseModel <IEnumerable <AccountMasterModel> > > GetAccountByTrxId(VoucherMasterModel voucherMasterModel) { ServiceResponseModel <IEnumerable <AccountMasterModel> > serviceResponse = new ServiceResponseModel <IEnumerable <AccountMasterModel> >(); TransactionMaster transactionMaster = null; IEnumerable <AccountMaster> dbAccountMasters = null; IEnumerable <AccountMasterModel> accountMasterModelAll = null; string message = string.Empty; try { transactionMaster = await UnitOfWork.TransactionMasters.SingleOrDefaultAsync(a => a.TrxId == voucherMasterModel.TrxType); if (null == transactionMaster) { message = String.Format("{0}:{1} {2}", "Configuration error", "TryType ", voucherMasterModel.TrxType, " not defined in TransactionMaster"); serviceResponse.Success = false; } else if (null != transactionMaster.AccountId1 && null != transactionMaster.AccountId2 && null != transactionMaster.AccountId3) { dbAccountMasters = await UnitOfWork.AccountMasters.FindAsync(a => (a.CompCode == voucherMasterModel.CompCode && a.AccYear == voucherMasterModel.AccYear) && (a.AccountId.StartsWith(transactionMaster.AccountId1) || a.AccountId.StartsWith(transactionMaster.AccountId2) || a.AccountId.StartsWith(transactionMaster.AccountId3))); } else if (null != transactionMaster.AccountId1 && null != transactionMaster.AccountId2) { dbAccountMasters = await UnitOfWork.AccountMasters.FindAsync(a => (a.CompCode == voucherMasterModel.CompCode && a.AccYear == voucherMasterModel.AccYear) && (a.AccountId.StartsWith(transactionMaster.AccountId1) || a.AccountId.StartsWith(transactionMaster.AccountId2))); } else if (null != transactionMaster.AccountId1) { dbAccountMasters = await UnitOfWork.AccountMasters.FindAsync(a => (a.CompCode == voucherMasterModel.CompCode && a.AccYear == voucherMasterModel.AccYear) && a.AccountId.StartsWith(transactionMaster.AccountId1)); } else { message = String.Format("{0}:{1} {2}", "Configuration error", "TryType ", voucherMasterModel.TrxType, " not defined in TransactionMaster"); serviceResponse.Success = false; } if (voucherMasterModel.SortAccountBy.Equals("A")) { dbAccountMasters.OrderBy(a => a.AccountId); } else { dbAccountMasters.OrderBy(a => a.Name); } accountMasterModelAll = _mapper.Map <IEnumerable <AccountMasterModel> >(dbAccountMasters); serviceResponse.Data = accountMasterModelAll; serviceResponse.Message = message; } catch (Exception ex) { _logger.LogError(ex.StackTrace); serviceResponse.Success = false; serviceResponse.Message = ex.Message; } finally { } return(serviceResponse); }
public int AddpointsToExistingCust(string mobileNo, string BeneficiaryId, string Name) { int result = 0; CustomerDetails objcustomerDetails = new CustomerDetails(); List <TransactionMaster> lsttransaction = new List <TransactionMaster>(); TransactionMaster objtransactionMaster = new TransactionMaster(); PointsExpiry objpointsExpiry = new PointsExpiry(); List <PointsExpiry> lstpointsExpiry = new List <PointsExpiry>(); try { using (var contextNew = new ChitaleBCContext()) { CustomerBeneficiaryDetail objcustomerBeneficiaryDetail = new CustomerBeneficiaryDetail(); objcustomerBeneficiaryDetail = contextNew.CustomerBeneficiaryDetails.Where(x => x.MobileNo == mobileNo).FirstOrDefault(); objcustomerDetails = contextNew.CustomerDetails.Where(x => x.MobileNo == mobileNo).FirstOrDefault(); if (objcustomerBeneficiaryDetail != null) { result = 0; } else { objcustomerBeneficiaryDetail = contextNew.CustomerBeneficiaryDetails.Where(x => x.BeneficiaryId == BeneficiaryId).FirstOrDefault(); if (objcustomerBeneficiaryDetail != null) { result = 1; } else { if (objcustomerDetails != null) { var point = objcustomerDetails.Points; objcustomerDetails.Points = point + 100; contextNew.CustomerDetails.AddOrUpdate(objcustomerDetails); contextNew.SaveChanges(); objtransactionMaster.CustomerId = objcustomerDetails.CustomerId; objtransactionMaster.CounterId = "1088101001"; objtransactionMaster.MobileNo = mobileNo; objtransactionMaster.Datetime = DateTime.Now; objtransactionMaster.TransType = "1"; objtransactionMaster.TransSource = "1"; objtransactionMaster.InvoiceNo = "B_CovidPoints"; objtransactionMaster.InvoiceAmt = 0; objtransactionMaster.Status = "06"; objtransactionMaster.PointsEarned = 100; objtransactionMaster.PointsBurned = 0; objtransactionMaster.CampaignPoints = 0; objtransactionMaster.TxnAmt = 0; objtransactionMaster.CustomerPoints = objcustomerDetails.Points; objtransactionMaster.Synchronization = ""; objtransactionMaster.SyncDatetime = null; objtransactionMaster.BillType = ""; objtransactionMaster.ChitaleTxnStatus = ""; contextNew.TransactionMasters.Add(objtransactionMaster); contextNew.SaveChanges(); lstpointsExpiry = contextNew.PointsExpiries.Where(x => x.MobileNo == mobileNo).ToList(); objpointsExpiry.MobileNo = mobileNo; objpointsExpiry.CounterId = "1088101001"; objpointsExpiry.CustomerId = objcustomerDetails.CustomerId; objpointsExpiry.BurnDate = null; objpointsExpiry.Datetime = DateTime.Now; objpointsExpiry.EarnDate = DateTime.Now; DateTime today = DateTime.Today; DateTime next = today.AddYears(1); var currentmonth = DateTime.DaysInMonth(next.Year, next.Month); if (next.Day < currentmonth) { var days = (currentmonth - next.Day); next = today.AddDays(days).AddYears(1); } objpointsExpiry.ExpiryDate = next; objpointsExpiry.Points = 100; objpointsExpiry.Status = "00"; objpointsExpiry.InvoiceNo = "B_CovidPoints"; objpointsExpiry.GroupId = "1088"; objpointsExpiry.OriginalInvoiceNo = ""; objpointsExpiry.TransRefNo = null; contextNew.PointsExpiries.Add(objpointsExpiry); contextNew.SaveChanges(); CustomerBeneficiaryDetail objcustomerBeneficiaryDetail1 = new CustomerBeneficiaryDetail(); objcustomerBeneficiaryDetail1.BeneficiaryId = BeneficiaryId; objcustomerBeneficiaryDetail1.CustomerId = objcustomerDetails.CustomerId; objcustomerBeneficiaryDetail1.CustomerName = Name; objcustomerBeneficiaryDetail1.MobileNo = mobileNo; objcustomerBeneficiaryDetail1.Points = Convert.ToDecimal(objcustomerDetails.Points); objcustomerBeneficiaryDetail1.EnrolledDate = DateTime.Now; contextNew.CustomerBeneficiaryDetails.Add(objcustomerBeneficiaryDetail1); contextNew.SaveChanges(); result = 2; } else { CustomerDetails objcustomerDetail = new CustomerDetails(); CustomerBeneficiaryDetail objcustomerBeneficiaryDetails = new CustomerBeneficiaryDetail(); var ObjMobileNo = contextNew.CustomerDetails.Where(x => x.MobileNo == mobileNo).FirstOrDefault(); if (ObjMobileNo == null) { var CustomerId = contextNew.CustomerDetails.OrderByDescending(x => x.CustomerId).Select(y => y.CustomerId).FirstOrDefault(); DateTime datet = new DateTime(1900, 01, 01); var NewId = Convert.ToInt64(CustomerId) + 1; objcustomerDetail.CustomerId = Convert.ToString(NewId); objcustomerDetail.Points = 100; objcustomerDetail.CustomerName = Name; objcustomerDetail.CustomerCategory = null; objcustomerDetail.CardNumber = ""; objcustomerDetail.CustomerThrough = "2"; objcustomerDetail.DOB = datet; objcustomerDetail.MaritalStatus = ""; objcustomerDetail.MemberGroupId = "1000"; objcustomerDetail.MobileNo = mobileNo; objcustomerDetail.Status = "00"; objcustomerDetail.AnniversaryDate = datet; objcustomerDetail.DOJ = DateTime.Now; objcustomerDetail.EmailId = ""; objcustomerDetail.EnrollingOutlet = "10881010"; objcustomerDetail.Gender = ""; objcustomerDetail.IsSMS = null; objcustomerDetail.BillingCustomerId = null; //objcustomerDetails. contextNew.CustomerDetails.Add(objcustomerDetail); contextNew.SaveChanges(); objtransactionMaster.CustomerId = objcustomerDetail.CustomerId; objtransactionMaster.CounterId = "1088101001"; objtransactionMaster.MobileNo = mobileNo; objtransactionMaster.Datetime = DateTime.Now; objtransactionMaster.TransType = "1"; objtransactionMaster.TransSource = "1"; objtransactionMaster.InvoiceNo = "B_CovidPoints"; objtransactionMaster.InvoiceAmt = 0; objtransactionMaster.Status = "06"; objtransactionMaster.PointsEarned = 100; objtransactionMaster.PointsBurned = 0; objtransactionMaster.CampaignPoints = 0; objtransactionMaster.TxnAmt = 0; objtransactionMaster.CustomerPoints = objcustomerDetail.Points; objtransactionMaster.Synchronization = ""; objtransactionMaster.SyncDatetime = null; objtransactionMaster.BillType = ""; objtransactionMaster.ChitaleTxnStatus = ""; contextNew.TransactionMasters.AddOrUpdate(objtransactionMaster); contextNew.SaveChanges(); lstpointsExpiry = contextNew.PointsExpiries.Where(x => x.MobileNo == mobileNo).ToList(); objpointsExpiry.MobileNo = mobileNo; objpointsExpiry.CounterId = "1088101001"; objpointsExpiry.CustomerId = objcustomerDetail.CustomerId; objpointsExpiry.BurnDate = null; objpointsExpiry.Datetime = DateTime.Now; objpointsExpiry.EarnDate = DateTime.Now; DateTime today = DateTime.Today; DateTime next = today.AddYears(1); var currentmonth = DateTime.DaysInMonth(next.Year, next.Month); if (next.Day < currentmonth) { var days = (currentmonth - next.Day); next = today.AddDays(days).AddYears(1); } objpointsExpiry.ExpiryDate = next; objpointsExpiry.Points = 100; objpointsExpiry.Status = "00"; objpointsExpiry.InvoiceNo = "B_CovidPoints"; objpointsExpiry.GroupId = "1088"; objpointsExpiry.OriginalInvoiceNo = ""; objpointsExpiry.TransRefNo = null; contextNew.PointsExpiries.AddOrUpdate(objpointsExpiry); contextNew.SaveChanges(); objcustomerBeneficiaryDetails.BeneficiaryId = BeneficiaryId; objcustomerBeneficiaryDetails.CustomerId = objcustomerDetail.CustomerId; objcustomerBeneficiaryDetails.CustomerName = Name; objcustomerBeneficiaryDetails.MobileNo = mobileNo; objcustomerBeneficiaryDetails.Points = Convert.ToDecimal(objcustomerDetail.Points); objcustomerBeneficiaryDetails.EnrolledDate = DateTime.Now; contextNew.CustomerBeneficiaryDetails.AddOrUpdate(objcustomerBeneficiaryDetails); contextNew.SaveChanges(); result = 2; } } } } } } catch (Exception ex) { //newexception.AddException(ex); } return(result); }