public int InsertCreditOrders(int CompanyID, int CreditPackageID, int CreditQuantity, double ItemPrice, int OtherPackageQuantity , double OtherPackagePrice, PIKCV.COM.EnumDB.OrderTypeCode OrderTypeCode, PIKCV.COM.EnumDB.PaymentType PaymentType, bool IsOtherPackage) { PIKCV.DAO.TransactionMgr Tran = PIKCV.DAO.TransactionMgr.ThreadTransactionMgr(); Tran.BeginTransaction(); int TakenCredit = 0; try { if (PaymentType == PIKCV.COM.EnumDB.PaymentType.Loan) { double TotalMoney = 0; if (CreditPackageID > 0) { TotalMoney = CreditQuantity * ItemPrice; TakenCredit = CreditQuantity; } else { TotalMoney = OtherPackageQuantity * OtherPackagePrice; TakenCredit = OtherPackageQuantity; } PIKCV.DAL.Companies objCompany = new PIKCV.DAL.Companies(); objCompany.LoadByPrimaryKey(CompanyID); objCompany.MaxLoan = objCompany.MaxLoan - TotalMoney; objCompany.Credits = objCompany.Credits + TakenCredit; objCompany.Save(); } PIKCV.DAL.CreditOrders objCreditOrders = new PIKCV.DAL.CreditOrders(); objCreditOrders.AddNew(); objCreditOrders.CompanyID = CompanyID; objCreditOrders.CreditPackageID = CreditPackageID; objCreditOrders.Quantity = CreditQuantity; objCreditOrders.ItemPrice = ItemPrice; objCreditOrders.OtherPackageQuantity = OtherPackageQuantity; objCreditOrders.OtherPackagePrice = OtherPackagePrice; objCreditOrders.OrderDate = DateTime.Now; objCreditOrders.OrderCode = Util.CreateRandomNumber(12); objCreditOrders.OrderTypeID = (int)OrderTypeCode; objCreditOrders.PaymentType = (int)PaymentType; objCreditOrders.Save(); PIKCV.DAL.Orders objOrder = new PIKCV.DAL.Orders(); objOrder.AddNew(); objOrder.CompanyID = CompanyID; if (PaymentType == PIKCV.COM.EnumDB.PaymentType.Transfer) { objOrder.IsConfirmed = false; objOrder.ProcessTypeCode = (int)PIKCV.COM.EnumDB.OrderProcessTypeCode.non_invoiced; } else { objOrder.IsConfirmed = true; objOrder.ProcessTypeCode = (int)PIKCV.COM.EnumDB.OrderProcessTypeCode.unpaid; } objOrder.OrderDate = DateTime.Now; objOrder.OrderTypeID = (int)OrderTypeCode; if (IsOtherPackage) { objOrder.Price = OtherPackageQuantity * OtherPackagePrice; objOrder.TotalCreditsUsed = OtherPackageQuantity; } else { objOrder.Price = CreditQuantity * ItemPrice; objOrder.TotalCreditsUsed = CreditQuantity; } objOrder.Save(); Tran.CommitTransaction(); return(objCreditOrders.CreditOrderID); } catch (Exception) { Tran.RollbackTransaction(); PIKCV.DAO.TransactionMgr.ThreadTransactionMgrReset(); return(0); } }
private void MakePayment(PIKCV.COM.EnumDB.PaymentType PaymentType) { PIKCV.BUS.Credits obj = new PIKCV.BUS.Credits(); int SavedCreditOrderID = 0; if (this.IsOtherPackage) { SavedCreditOrderID = obj.InsertCreditOrders(this.smCompanyID, this.CreditPackageTypeID, 0, 0, this.OtherPackageCredits, this.OtherPackageMultiplier, PIKCV.COM.EnumDB.OrderTypeCode.CreditBuy, PaymentType, this.IsOtherPackage); } else { DataTable dt = obj.GetCreditDetail(this.CreditPackageTypeID); if (dt.Rows.Count > 0) { SavedCreditOrderID = obj.InsertCreditOrders(this.smCompanyID, this.CreditPackageTypeID, Convert.ToInt32(dt.Rows[0]["Credits"]), Convert.ToInt32(dt.Rows[0]["Multiplier"]), 0, 0, PIKCV.COM.EnumDB.OrderTypeCode.CreditBuy, PaymentType, this.IsOtherPackage); } else { this.Redirect("Company-Credits-SelectCreditPackage"); } } if (SavedCreditOrderID > 0) { DataTable dt = obj.GetCreditOrderDetail(SavedCreditOrderID); if (dt.Rows.Count > 0) { double TotalAmount = 0; if (this.IsOtherPackage) { lbApprovalCreditPackageName.Text = "Pik Kredi Alýmý (" + dt.Rows[0]["OtherPackageQuantity"].ToString() + ")"; TotalAmount = Convert.ToInt32(dt.Rows[0]["OtherPackageQuantity"]) * Convert.ToDouble(dt.Rows[0]["OtherPackagePrice"]); lbApprovalPrice.Text = TotalAmount.ToString() + " YTL"; } else { lbApprovalCreditPackageName.Text = "Pik Kredi Alýmý (" + dt.Rows[0]["Quantity"].ToString() + ")"; TotalAmount = Convert.ToInt32(dt.Rows[0]["Quantity"]) * Convert.ToDouble(dt.Rows[0]["ItemPrice"]); lbApprovalPrice.Text = TotalAmount.ToString() + " YTL"; } lbOrderDate.Text = string.Format("{0:d}", dt.Rows[0]["OrderDate"]); lbOrderType.Text = ((PIKCV.COM.EnumDB.PaymentType)(Convert.ToInt32(dt.Rows[0]["PaymentType"]))).ToString(); } if (PaymentType == PIKCV.COM.EnumDB.PaymentType.Transfer) { lbApprovalMessage.Text = "Talebiniz alýndý, ödeme sonrasýnda sitemizde iþlem yapabileceksiniz."; } else { dvMsg.Visible = false; } } else { lbApprovalMessage.Text = "Kayýt sýrasýnda bir hata oluþtu. Lütfen tekrar deneyin."; } pnlHeader.Visible = false; pnlApproval.Visible = true; PIKCV.BUS.Company objCompany = new PIKCV.BUS.Company(); this.smPikCredi = objCompany.GetCompanyInfo(this.smCompanyID).Rows[0]["Credits"].ToString(); if (this.smRememberURL != String.Empty) { string strUrl = this.smRememberURL; this.smRememberURL = String.Empty; Response.Redirect(strUrl); } }