private void ClearPendingPayment() { #region add pending payment Dictionary <string, string> pendingPaymentModel = new Dictionary <string, string>(); pendingPaymentModel.Add("Id", pendingPaymentId.ToString()); pendingPaymentModel.Add("SaleId", lblSaleId.Content.ToString()); pendingPaymentModel.Add("SalePersonId", lblSalePersonId.Content.ToString()); pendingPaymentModel.Add("PendingAmount", lblPendingAmount.Content.ToString()); pendingPaymentModel.Add("IsPaid", "1");// true pendingPaymentModel.Add("PaidDate", (DateTime.Parse(dpPaymentDate.Text).ToString("yyyy-MM-dd HH:mm:ss"))); pendingPaymentModel.Add("IsDiscount", chkbDiscount.IsChecked.Value == true ? "1" : "0"); pendingPaymentModel.Add("PaidAmount", this.txtPaidAmount.Text);//discounted payment shd more than purchase total amount DataAccess dataAccess = new DataAccess(); int pendingRowId = dataAccess.InsertOrUpdatePendingPayment(pendingPaymentModel, "tblPendingPayment"); if (pendingRowId > 0) { // add payment transaction PaymentTransaction paymentTransaction = new PaymentTransaction(); bool paymentStatus = paymentTransaction.AddPaymentTransaction(1, double.Parse(this.txtPaidAmount.Text), PaymentTransaction.PaymentStatus.PENDING_PAYMENT, pendingRowId); if (paymentStatus) { MessageBoxResult result = MessageBox.Show("Payment Updated Successfully", "Success", MessageBoxButton.OK, MessageBoxImage.Information); this.Close(); } else { MessageBoxResult result = MessageBox.Show("Error While Updating Payments!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } else { MessageBoxResult result = MessageBox.Show("Error While Updating Pendings!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } #endregion }
private void btnSave_Click(object sender, RoutedEventArgs e) { try { if (validateForm()) { //create record Dictionary <string, string> folderFields = new Dictionary <string, string>(); folderFields.Add("Id", null); folderFields.Add("Description", txtSupportDesc.Text); folderFields.Add("Amount", txtAmountEarned.Value.ToString()); folderFields.Add("SupportDate", (DateTime.Parse(dpSupportDate.Text).ToString("yyyy-MM-dd HH:mm:ss"))); //folderFields.Add("Remarks", null); DataAccess dataAccess = new DataAccess(); int rslt = dataAccess.InsertOrUpdateSupportPaymentMaster(folderFields, "tblSupportPaymentMaster"); if (rslt > 0) { PaymentTransaction paymentTransaction = new PaymentTransaction(); bool paymentStatus = paymentTransaction.AddPaymentTransaction(1, double.Parse(txtAmountEarned.Value.ToString()), PaymentTransaction.PaymentStatus.SUPPORT_PAYMENT, rslt); if (paymentStatus) { MessageBoxResult result = MessageBox.Show("Payment Added Successfully", "Success", MessageBoxButton.OK, MessageBoxImage.Information); ResetForm(); } } else { MessageBoxResult result = MessageBox.Show("Error While Adding Payment!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } else { MessageBoxResult result = MessageBox.Show("Invalid Data ! Please check the fields entered.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } catch (Exception ex) { logger.LogException(ex); } }
/// <summary> /// Save Sales [consists of 5 steps] /// 1. Create Sale Person /// 2. Add SaleMaster /// 3. Add Pending Payment if any /// 4. Add payment transaction /// 5. Update Stock /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Click(object sender, RoutedEventArgs e) { try { if (validateSale()) { // add/Create Sale Person if (salePersonId == 0) { salePersonId = createSalePersonForStockSale(); } if (salePersonId > 0) { double total = (double)txtQuantity.Value * int.Parse(lblPrice.Content.ToString()); bool isPending = (total > double.Parse(txtAmtPaid.Text) ? true : false); double pendingAmt = total - double.Parse(txtAmtPaid.Text); //Add SaleMaster Dictionary <string, string> saleMasterModel = new Dictionary <string, string>(); saleMasterModel.Add("Id", null); saleMasterModel.Add("StockId", txtStockId.Text); saleMasterModel.Add("SalePersonId", salePersonId.ToString()); saleMasterModel.Add("Quantity", this.txtQuantity.Value.ToString()); saleMasterModel.Add("Price", lblPrice.Content.ToString()); saleMasterModel.Add("Total", total.ToString()); saleMasterModel.Add("AmountPaid", txtAmtPaid.Text); //saleMasterModel.Add("Pending", pendingAmt.ToString()); saleMasterModel.Add("SaleDate", (DateTime.Parse(dpSaleDate.Text).ToString("yyyy-MM-dd HH:mm:ss"))); saleMasterModel.Add("CreatedDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); saleMasterModel.Add("ModifiedDate", null); DataAccess dataAccess = new DataAccess(); int rslt = dataAccess.InsertOrUpdateSaleMaster(saleMasterModel, "tblSaleMaster"); if (rslt > 0) { if (isPending) { #region add pending payment Dictionary <string, string> pendingPaymentModel = new Dictionary <string, string>(); pendingPaymentModel.Add("Id", null); pendingPaymentModel.Add("SaleId", rslt.ToString()); //pendingPaymentModel.Add("StockId", txtStockId.Text); pendingPaymentModel.Add("SalePersonId", salePersonId.ToString()); pendingPaymentModel.Add("PendingAmount", pendingAmt.ToString()); pendingPaymentModel.Add("IsPaid", "0"); int pendingRowId = dataAccess.InsertOrUpdatePendingPayment(pendingPaymentModel, "tblPendingPayment"); #endregion } // add payment transaction PaymentTransaction paymentTransaction = new PaymentTransaction(); bool paymentStatus = paymentTransaction.AddPaymentTransaction(1, double.Parse(txtAmtPaid.Text), PaymentTransaction.PaymentStatus.SALE_PAYMENT, rslt); if (paymentStatus) { #region Update Stock Quantity Dictionary <string, string> stockModel = new Dictionary <string, string>(); stockModel.Add("Id", txtStockId.Text); stockModel.Add("AvlQuantity", this.txtQuantity.Value.ToString()); stockModel.Add("ModifiedDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); int isUpdated = dataAccess.UpdateStockQuantity(stockModel, "tblStockMaster"); #endregion if (isUpdated == 1) { MessageBoxResult result = MessageBox.Show("Sale Added Successfully", "Success", MessageBoxButton.OK, MessageBoxImage.Information); this.Close(); } else { MessageBoxResult result = MessageBox.Show("Error While Updating Stock!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } else { MessageBoxResult result = MessageBox.Show("Error While Adding Payment Transaction!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } else { MessageBoxResult result = MessageBox.Show("Error While Adding Sale!", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } } else { MessageBoxResult result = MessageBox.Show("Invalid Data !", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } catch (Exception ex) { logger.LogException(ex); } }