Esempio n. 1
0
 protected void btnXoa_Click(object sender, EventArgs e)
 {
     try
     {
         if (txtMaVanChuyen.Text.Length > 0)
         {
             tbl_Payment tsp = db.tbl_Payment.Find(int.Parse(txtMaVanChuyen.Text));
             db.tbl_Payment.Remove(tsp);
             db.SaveChanges();
             load();
             lbThongBao.Text      = "Xóa thành công";
             lbThongBao.ForeColor = System.Drawing.Color.Green;
         }
         else
         {
             lbThongBao.Text      = "Chưa Chọn dữ liệu";
             lbThongBao.ForeColor = System.Drawing.Color.Red;
         }
     }
     catch (Exception ex)
     {
         lbThongBao.Text      = "Đã có lỗi xảy ra. Vui lòng thử lại sau.";
         lbThongBao.ForeColor = System.Drawing.Color.Red;
     }
 }
Esempio n. 2
0
        public IHttpActionResult Puttbl_Payment(int id, tbl_Payment tbl_Payment)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != tbl_Payment.Id)
            {
                return(BadRequest());
            }

            db.Entry(tbl_Payment).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!tbl_PaymentExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Esempio n. 3
0
        protected void btnSua_Click(object sender, EventArgs e)
        {
            try
            {
                if (txtTenVanChuyen.Text.Length > 0 && txtMaVanChuyen.Text.Length > 0)
                {
                    tbl_Payment tsp = db.tbl_Payment.Find(int.Parse(txtMaVanChuyen.Text));

                    tsp.Pay_Name = txtTenVanChuyen.Text;
                    tsp.PhiTT    = double.Parse(txtCK.Text);
                    db.SaveChanges();
                    load();
                    lbThongBao.Text      = "sửa thành công";
                    lbThongBao.ForeColor = System.Drawing.Color.Green;
                }
                else
                {
                    lbThongBao.Text      = "Chưa nhập dữ liệu";
                    lbThongBao.ForeColor = System.Drawing.Color.Red;
                }
            }
            catch (Exception ex)
            {
                lbThongBao.Text      = "Đã có lỗi xảy ra. Vui lòng thử lại sau.";
                lbThongBao.ForeColor = System.Drawing.Color.Red;
            }
        }
        public ActionResult DeleteConfirmed(short id)
        {
            tbl_Payment tbl_Payment = db.tbl_Payment.Find(id);

            db.tbl_Payment.Remove(tbl_Payment);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Esempio n. 5
0
        public async Task <ActionResult> DeleteConfirmed(string id)
        {
            tbl_Payment tbl_Payment = await db.tbl_Payment.FindAsync(id);

            db.tbl_Payment.Remove(tbl_Payment);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
Esempio n. 6
0
        public IHttpActionResult Posttbl_Payment(tbl_Payment tbl_Payment)
        {
            List <string> successDetails = new List <string>();

            string[] success = new string[6];

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            tbl_Payment.Payment_Date   = DateTime.Now;
            tbl_Payment.Payment_Status = "Done";
            db.tbl_Payment.Add(tbl_Payment);
            db.SaveChanges();

            //int? vehicleid = db.tbl_Policy.ToList().Find(m => m.Id == tbl_Policy.Id).Veh_Id;
            //tbl_VehicleInfo tbl_VehicleInfo = db.tbl_VehicleInfo.Where(m => m.Id == vehicleid).First();
            //int? customerId = db.tbl_VehicleInfo.ToList().Find(m => m.Id == vehicleid).Cust_Id;

            int?policyid = db.tbl_Payment.ToList().Find(m => m.Id == tbl_Payment.Id).Pol_Id;

            tbl_Policies tbl_Policiesss = db.tbl_Policies.Find(policyid);

            if (tbl_Policiesss == null)
            {
                return(NotFound());
            }

            tbl_Policies tbl_Policy = db.tbl_Policies.Where(m => m.Id == policyid).First();

            int?            vehicleId        = db.tbl_Policies.ToList().Find(m => m.Id == policyid).Veh_Id;
            tbl_VehicleInfo tbl_VehicleInfo2 = db.tbl_VehicleInfo.Where(m => m.Id == vehicleId).First();
            int?            customerId       = db.tbl_VehicleInfo.ToList().Find(m => m.Id == vehicleId).Cust_Id;


            tbl_User tbl_User = db.tbl_User.Where(m => m.Id == customerId).First();

            string carModel            = tbl_VehicleInfo2.Veh_Model;
            string carManufacturer     = tbl_VehicleInfo2.Manufacturer;
            string registerationNumber = tbl_VehicleInfo2.Registration_Number;
            string userName            = tbl_User.Firstname;

            success[0] = carModel;
            success[1] = carManufacturer;
            success[2] = registerationNumber;
            success[3] = userName;
            success[4] = tbl_Payment.Pol_Id.Value.ToString();
            success[5] = tbl_Payment.Id.ToString();


            //db.sp_paymentStatuses(tbl_Payment.Pol_Id);
            db.sp_PaymentStatuss(tbl_Payment.Pol_Id);
            // db.sp_paymentStatusesforRenew(tbl_Payment.Pol_Id);

            return(CreatedAtRoute("DefaultApi", new { id = tbl_Payment.Id }, success));
        }
Esempio n. 7
0
        protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
        {
            Label       lblMa = (Label)GridView1.Rows[e.NewEditIndex].FindControl("lbMa");
            tbl_Payment p     = db.tbl_Payments.SingleOrDefault(c => c.Pay_ID == int.Parse(lblMa.Text));

            txtMa.Text          = p.Pay_ID.ToString();
            txtTenTT.Text       = p.Pay_Name.ToString();
            GridView1.EditIndex = e.NewEditIndex;
            load();
        }
 public ActionResult Edit([Bind(Include = "id,customerName,phone,serviceUnitName,doctor,totalFee,paidFee,debtFee,billId,payTime,status,paymentType,createdTime,updatedTime,createdBy,updatedBy")] tbl_Payment tbl_Payment)
 {
     if (ModelState.IsValid)
     {
         db.Entry(tbl_Payment).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.billId = new SelectList(db.tbl_MedicalBill, "id", "billCode", tbl_Payment.billId);
     return(View(tbl_Payment));
 }
Esempio n. 9
0
        protected void btnXoa_Click(object sender, EventArgs e)
        {
            tbl_Payment t = db.tbl_Payments.SingleOrDefault(c => c.Pay_ID == int.Parse(txtMa.Text));

            db.tbl_Payments.DeleteOnSubmit(t);
            db.SubmitChanges();
            load();
            Label3.Text = "Xoá thành công.";
            rong();
            txtTenTT.Focus();
        }
Esempio n. 10
0
        public IHttpActionResult Gettbl_Payment(int id)
        {
            tbl_Payment tbl_Payment = db.tbl_Payment.Find(id);

            if (tbl_Payment == null)
            {
                return(NotFound());
            }

            return(Ok(tbl_Payment));
        }
Esempio n. 11
0
        protected void btnNhap_Click(object sender, EventArgs e)
        {
            tbl_Payment t = new tbl_Payment();

            t.Pay_Name = txtTenTT.Text;
            db.tbl_Payments.InsertOnSubmit(t);
            db.SubmitChanges();
            load();
            Label3.Text = "Thêm thành công";
            rong();
            txtTenTT.Focus();
        }
Esempio n. 12
0
        public async Task <ActionResult> Edit([Bind(Include = "AutoID,ID,PaymentDate,PartyName,Amount,PaymentMode,Remark,CreatedDatetime")] tbl_Payment tbl_Payment)
        {
            if (ModelState.IsValid)
            {
                db.Entry(tbl_Payment).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewBag.PartyName = new SelectList(db.tbl_vendor, "ID", "Name", tbl_Payment.PartyName);

            return(View(tbl_Payment));
        }
        // GET: tbl_Payment/Details/5
        public ActionResult Details(short?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tbl_Payment tbl_Payment = db.tbl_Payment.Find(id);

            if (tbl_Payment == null)
            {
                return(HttpNotFound());
            }
            return(View(tbl_Payment));
        }
Esempio n. 14
0
        public IHttpActionResult Deletetbl_Payment(int id)
        {
            tbl_Payment tbl_Payment = db.tbl_Payment.Find(id);

            if (tbl_Payment == null)
            {
                return(NotFound());
            }

            db.tbl_Payment.Remove(tbl_Payment);
            db.SaveChanges();

            return(Ok(tbl_Payment));
        }
Esempio n. 15
0
        // GET: Payment/Details/5
        public async Task <ActionResult> Details(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tbl_Payment tbl_Payment = await db.tbl_Payment.FindAsync(id);

            if (tbl_Payment == null)
            {
                return(HttpNotFound());
            }
            return(View(tbl_Payment));
        }
Esempio n. 16
0
        // GET: tbl_Debt/Edit/5
        public ActionResult Edit(short?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tbl_Payment tbl_Payment = db.tbl_Payment.Find(id);

            if (tbl_Payment == null)
            {
                return(HttpNotFound());
            }
            ViewBag.billId = new SelectList(db.tbl_MedicalBill, "id", "billCode", tbl_Payment.billId);
            return(View(tbl_Payment));
        }
Esempio n. 17
0
        // GET: Payment/Edit/5
        public async Task <ActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            tbl_Payment tbl_Payment = await db.tbl_Payment.FindAsync(id);

            if (tbl_Payment == null)
            {
                return(HttpNotFound());
            }
            ViewBag.PartyName = new SelectList(db.tbl_vendor, "ID", "Name", tbl_Payment.PartyName);

            return(View(tbl_Payment));
        }
Esempio n. 18
0
        private void action()
        {
            pay = new tbl_Payment
            {
                id_booking    = int.Parse(tbIdBooking.Text),
                total_payment = int.Parse(tbTotalPayment.Text),
                paid          = int.Parse(tbPaid.Text)
            };

            var f = from b in db.tbl_BookingMasters
                    where b.id_booking == int.Parse(tbIdBooking.Text)
                    select b;

            foreach (var w in f)
            {
                w.status = "PAID";
            }
        }
Esempio n. 19
0
        public void AddPayments(PaymentViewModel entity)
        {
            var data = new tbl_Payment
            {
                PaymentId           = entity.paymentId,
                ActualAmount        = entity.actualAmount,
                BatchNo             = entity.batchNo,
                PaymentModeId       = entity.paymentModeId,
                PaymentDate         = DateTime.Now,
                RecievedAmount      = entity.recievedAmount,
                SalesTypeId         = entity.salesTypeId,
                TransactionStatusId = entity.transactionStatusId,
                CreatedOn           = DateTime.Now,
                CreatedBy           = "admin",
                ModifiedOn          = DateTime.Now,
                ModifiedBy          = "admin"
            };

            context.tbl_Payment.Add(data);
        }
Esempio n. 20
0
        public static string Pay(tbl_Payment payment, tbl_Sites site)
        {
            string formName = "rbkmoneyform";

            var dataManager = new DataManager();

            var user = dataManager.User.SelectById(site.MainUserID.Value);

            var sb = new StringBuilder();

            sb.Append(string.Format("<form name='{0}' method='post' action='https://rbkmoney.ru/acceptpurchase.aspx'>",
                                    formName));
            sb.Append(string.Format("<input type='hidden' name='eshopId' value='{0}' />", EshopId));
            sb.Append(string.Format("<input type='hidden' name='user_email' value='{0}' />", user.Login));
            sb.Append(string.Format("<input type='hidden' name='orderId' value='{0}' />", payment.ID));
            sb.Append(string.Format("<input type='hidden' name='serviceName' value='{0}' />", payment.Assignment));
            sb.Append(string.Format("<input type='hidden' name='recipientAmount' value='{0}' />", payment.Total));
            sb.Append("<input type='hidden' name='recipientCurrency' value='RUR' />");
            sb.Append("</form>");

            var result = string.Format("$('body').append(\"{0}\");document.{1}.submit();", sb.ToString(), formName);

            return(result);
        }
 public ActionResult Payment(tbl_Payment GetPayment)
 {
     return(View());
 }
Esempio n. 22
0
        protected void BtnUpdate_Click(object sender, EventArgs e)
        {
            if (DataManager.PaymentStatus.SelectById(CurrentUser.Instance.SiteID, ucPaymentStatus.PaymentStatusId).IsLast)
            {
                double?total   = 0.0;
                bool   isValid = true;
                if (ucPaymentPass.PaymentPasses != null && ucPaymentPass.PaymentPasses.Count > 0)
                {
                    foreach (var paymentPass in ucPaymentPass.PaymentPasses)
                    {
                        if (paymentPass.IncomeCFOID == null || paymentPass.IncomePaymentArticleID == null ||
                            paymentPass.OutgoCFOID == null || paymentPass.OutgoPaymentArticleID == null)
                        {
                            isValid = false;
                            cvGroupUpdate.ErrorMessage = "Не указан ЦФО или статья";
                            break;
                        }
                        total += paymentPass.Amount;
                    }
                    if (total != rntxtTotal.Value)
                    {
                        isValid = false;
                        cvGroupUpdate.ErrorMessage = "Сумма проводок не равна сумме оплаты";
                    }
                }
                else
                {
                    isValid = false;
                    cvGroupUpdate.ErrorMessage = "Не указаны проводки";
                }
                cvGroupUpdate.IsValid = isValid;
            }
            if (cvGroupUpdate.IsValid)
            {
                paymentData = DataManager.Payment.SelectById(SiteId, _paymentID);

                var isUpdate = paymentData != null;

                paymentData = DataManager.Payment.Save(
                    SiteId,
                    paymentData == null ? Guid.Empty : paymentData.ID,
                    txtAssignment.Text, rdpDatePlan.SelectedDate ?? DateTime.Now, rdpDateFact.SelectedDate,
                    int.Parse(ddlPaymentType.SelectedValue),
                    ucPaymentStatus.PaymentStatusId, dcbPayer.SelectedIdNullable,
                    dcbPayerLegalAccount.SelectedIdNullable, dcbRecipient.SelectedIdNullable,
                    dcbRecipientLegalAccount.SelectedIdNullable, dcbCurrency.SelectedId, rntxtCourse.Value ?? 1,
                    rntxtAmount.Value.HasValue ? decimal.Parse(rntxtAmount.Value.ToString()) : 0,
                    rntxtTotal.Value.HasValue ? decimal.Parse(rntxtTotal.Value.ToString()) : 0,
                    dcbOrder.SelectedIdNullable, dcbInvoice.SelectedIdNullable

                    );



                var oldPaymentPasses       = DataManager.PaymentPass.SelectAll(CurrentUser.Instance.SiteID, paymentData.ID);
                List <tbl_PaymentPass> ids = new List <tbl_PaymentPass>();
                foreach (var old in oldPaymentPasses)
                {
                    if (ucPaymentPass.PaymentPasses.Where(a => a.ID == old.ID).Select(a => a.ID).SingleOrDefault() ==
                        Guid.Empty)
                    {
                        ids.Add(old);
                    }
                }
                foreach (var tblPaymentPass in ids)
                {
                    if (tblPaymentPass.ProcessedByCron)
                    {
                        tblPaymentPass.ProcessedByCron = false;
                        tblPaymentPass.ToDelete        = true;
                        DataManager.PaymentPass.Update(tblPaymentPass);

                        //tblPaymentPass.OldCreatedAt = tblPaymentPass.CreatedAt;
                        //tblPaymentPass.OldAmount = tblPaymentPass.Amount;
                        //tblPaymentPass.OldOutgoCFOID = tblPaymentPass.OldOutgoCFOID;
                        //tblPaymentPass.OldOutgoPaymentArticleID = tblPaymentPass.OutgoPaymentArticleID;
                    }
                    else
                    {
                        DataManager.PaymentPass.Delete(tblPaymentPass);
                    }
                }
                foreach (var paymentPass in ucPaymentPass.PaymentPasses)
                {
                    var oldPaymentPass = DataManager.PaymentPass.SelectById(paymentData.ID, paymentPass.ID);
                    if (oldPaymentPass != null)
                    {
                        oldPaymentPass.SiteID    = CurrentUser.Instance.SiteID;
                        oldPaymentPass.PaymentID = paymentData.ID;
                        oldPaymentPass.IncomePaymentPassCategoryID = paymentPass.IncomePaymentPassCategoryID;
                        oldPaymentPass.IncomeCFOID                = paymentPass.IncomeCFOID;
                        oldPaymentPass.IncomePaymentArticleID     = paymentPass.IncomePaymentArticleID;
                        oldPaymentPass.OutgoPaymentPassCategoryID = paymentPass.OutgoPaymentPassCategoryID;

                        if (oldPaymentPass.OutgoCFOID != paymentPass.OutgoCFOID)
                        {
                            oldPaymentPass.OldOutgoCFOID   = oldPaymentPass.OutgoCFOID;
                            oldPaymentPass.ProcessedByCron = false;
                        }
                        if (oldPaymentPass.OutgoPaymentArticleID != paymentPass.OutgoPaymentArticleID)
                        {
                            oldPaymentPass.OldOutgoPaymentArticleID = oldPaymentPass.OldOutgoPaymentArticleID;
                            oldPaymentPass.ProcessedByCron          = false;
                        }
                        if (rdpDateFact.SelectedDate != null && oldPaymentPass.CreatedAt != rdpDateFact.SelectedDate || rdpDateFact.SelectedDate == null && rdpDatePlan.SelectedDate != null && oldPaymentPass.CreatedAt != rdpDatePlan.SelectedDate)
                        {
                            oldPaymentPass.OldCreatedAt    = oldPaymentPass.CreatedAt;
                            oldPaymentPass.ProcessedByCron = false;
                        }
                        if (oldPaymentPass.Amount != paymentPass.Amount)
                        {
                            oldPaymentPass.Amount          = oldPaymentPass.Amount;
                            oldPaymentPass.ProcessedByCron = false;
                        }

                        oldPaymentPass.CreatedAt             = rdpDateFact.SelectedDate ?? rdpDatePlan.SelectedDate;
                        oldPaymentPass.OutgoCFOID            = paymentPass.OutgoCFOID;
                        oldPaymentPass.OutgoPaymentArticleID = paymentPass.OutgoPaymentArticleID;

                        oldPaymentPass.FormulaID = paymentPass.FormulaID;
                        oldPaymentPass.Value     = paymentPass.Value;
                        oldPaymentPass.Amount    = paymentPass.Amount;
                        if (DataManager.PaymentStatus.SelectById(CurrentUser.Instance.SiteID, ucPaymentStatus.PaymentStatusId).IsLast)
                        {
                            oldPaymentPass.IsFact = true;
                        }
                        DataManager.PaymentPass.Update(oldPaymentPass);
                    }
                    else
                    {
                        DataManager.PaymentPass.Add(new tbl_PaymentPass()
                        {
                            SiteID    = CurrentUser.Instance.SiteID,
                            PaymentID = paymentData.ID,
                            CreatedAt = rdpDateFact.SelectedDate ?? rdpDatePlan.SelectedDate,
                            IncomePaymentPassCategoryID =
                                paymentPass.IncomePaymentPassCategoryID,
                            IncomeCFOID                = paymentPass.IncomeCFOID,
                            IncomePaymentArticleID     = paymentPass.IncomePaymentArticleID,
                            OutgoPaymentPassCategoryID =
                                paymentPass.OutgoPaymentPassCategoryID,
                            OutgoCFOID            = paymentPass.OutgoCFOID,
                            OutgoPaymentArticleID = paymentPass.OutgoPaymentArticleID,
                            FormulaID             = paymentPass.FormulaID,
                            Value  = paymentPass.Value,
                            Amount = paymentPass.Amount
                        });
                    }
                }


                if (!isUpdate)
                {
                    Response.Redirect(UrlsData.AP_PaymentsEdit(paymentData.ID));
                }
            }
        }
Esempio n. 23
0
        /// <summary>
        /// Binds the data.
        /// </summary>
        private void BindData()
        {
            BindPaymentType();
            paymentData     = DataManager.Payment.SelectById(SiteId, _paymentID);
            dcbOrder.SiteID = dcbInvoice.SiteID = dcbPayer.SiteID = dcbRecipient.SiteID = dcbPayerLegalAccount.SiteID = dcbRecipientLegalAccount.SiteID = SiteId;
            var filter = new DictionaryOnDemandComboBox.DictionaryFilterColumn()
            {
                Name   = "IsActive",
                DbType = DbType.Boolean,
                Value  = "TRUE"
            };

            dcbPayerLegalAccount.Filters.Add(filter);
            dcbRecipientLegalAccount.Filters.Add(filter);

            dcbPayer.BindData();
            dcbRecipient.BindData();
            dcbPayerLegalAccount.BindData();
            dcbRecipientLegalAccount.BindData();

            BindPaymentPassRule(0, null, null, null, null);
            BindSelectPaymentPassRule(0);
            if (paymentData != null)
            {
                txtAssignment.Text       = paymentData.Assignment;
                rdpDatePlan.SelectedDate = paymentData.DatePlan;
                rdpDateFact.SelectedDate = paymentData.DateFact;

                if (paymentData.PaymentTypeID.HasValue)
                {
                    ddlPaymentType.SelectedIndex = ddlPaymentType.FindItemIndexByValue(((int)paymentData.PaymentTypeID).ToString());
                }

                ucPaymentStatus.PaymentStatusId = paymentData.StatusID ?? Guid.Empty;

                if (paymentData.PayerID.HasValue)
                {
                    dcbPayer.SelectedId   = (Guid)paymentData.PayerID;
                    dcbPayer.SelectedText = DataManager.Company.SelectById(SiteId, (Guid)paymentData.PayerID).Name;
                    dcbPayerLegalAccount.Filters.Add(new DictionaryOnDemandComboBox.DictionaryFilterColumn()
                    {
                        Name = "CompanyID", DbType = DbType.Guid, Value = paymentData.PayerID.ToString()
                    });
                }

                if (paymentData.RecipientID.HasValue)
                {
                    dcbRecipient.SelectedId   = (Guid)paymentData.RecipientID;
                    dcbRecipient.SelectedText = DataManager.Company.SelectById(SiteId, (Guid)paymentData.RecipientID).Name;
                    dcbRecipientLegalAccount.Filters.Add(new DictionaryOnDemandComboBox.DictionaryFilterColumn()
                    {
                        Name = "CompanyID", DbType = DbType.Guid, Value = paymentData.RecipientID.ToString()
                    });
                }

                if (paymentData.PayerLegalAccountID.HasValue)
                {
                    dcbPayerLegalAccount.SelectedId   = (Guid)paymentData.PayerLegalAccountID;
                    dcbPayerLegalAccount.SelectedText = DataManager.CompanyLegalAccount.SelectById((Guid)paymentData.PayerLegalAccountID).Title;
                }

                if (paymentData.RecipientLegalAccountID.HasValue)
                {
                    dcbRecipientLegalAccount.SelectedId   = (Guid)paymentData.RecipientLegalAccountID;
                    dcbRecipientLegalAccount.SelectedText = DataManager.CompanyLegalAccount.SelectById((Guid)paymentData.RecipientLegalAccountID).Title;
                }
                if (paymentData.OrderID.HasValue)
                {
                    dcbOrder.SelectedId   = (Guid)paymentData.OrderID;
                    dcbOrder.SelectedText = DataManager.Order.SelectById(SiteId, (Guid)paymentData.OrderID).Number;
                }
                if (paymentData.InvoiceID.HasValue)
                {
                    dcbInvoice.SelectedId   = (Guid)paymentData.InvoiceID;
                    dcbInvoice.SelectedText = DataManager.Invoice.SelectById(SiteId, (Guid)paymentData.InvoiceID).Number;
                }


                if (paymentData.PaymentTypeID.HasValue)
                {
                    switch (paymentData.PaymentTypeID)
                    {
                    case (int)PaymentType.Income:
                        dcbRecipient.Filters.Add(new DictionaryOnDemandComboBox.DictionaryFilterColumn()
                        {
                            Name = "CompanyTypeID", DbType = DbType.Guid, Value = DataManager.CompanyType.SelectOurCompanyTypeID(SiteId).ToString()
                        });
                        break;

                    case (int)PaymentType.Outgo:
                        dcbPayer.Filters.Add(new DictionaryOnDemandComboBox.DictionaryFilterColumn()
                        {
                            Name = "CompanyTypeID", DbType = DbType.Guid, Value = DataManager.CompanyType.SelectOurCompanyTypeID(SiteId).ToString()
                        });
                        break;

                    case (int)PaymentType.Transfer:
                        dcbRecipient.Filters.Add(new DictionaryOnDemandComboBox.DictionaryFilterColumn()
                        {
                            Name = "CompanyTypeID", DbType = DbType.Guid, Value = DataManager.CompanyType.SelectOurCompanyTypeID(SiteId).ToString()
                        });
                        dcbPayer.Filters.Add(new DictionaryOnDemandComboBox.DictionaryFilterColumn()
                        {
                            Name = "CompanyTypeID", DbType = DbType.Guid, Value = DataManager.CompanyType.SelectOurCompanyTypeID(SiteId).ToString()
                        });
                        break;
                    }
                    BindSelectPaymentPassRule((int)paymentData.PaymentTypeID);
                }
                if (paymentData.PaymentPassRuleID.HasValue)
                {
                    rcbPaymentPassRule.SelectedIndex = rcbPaymentPassRule.FindItemIndexByValue(paymentData.PaymentPassRuleID.ToString());
                }

                dcbCurrency.SelectedId = paymentData.CurrencyID;
                rntxtCourse.Value      = paymentData.Course;
                rntxtAmount.Value      = (double)paymentData.Amount;
                rntxtTotal.Value       = (double)paymentData.Total;

                BindPaymentPassRule((int)paymentData.PaymentTypeID, paymentData.PayerID,
                                    paymentData.PayerLegalAccountID, paymentData.RecipientID,
                                    paymentData.RecipientLegalAccountID);

                if (paymentData.tbl_PaymentPass != null)
                {
                    ucPaymentPass.PaymentPasses = paymentData.tbl_PaymentPass.Select(op => new PaymentPass.PaymentPassMap()
                    {
                        ID = op.ID,
                        OutgoPaymentPassCategoryID = op.OutgoPaymentPassCategoryID,
                        OutgoPaymentPassCategory   = op.tbl_PaymentPassCategory != null ? op.tbl_PaymentPassCategory.Title :"",
                        OutgoCFOID                  = op.OutgoCFOID,
                        OutgoCFO                    = op.tbl_PaymentCFO != null ? op.tbl_PaymentCFO.Title:"",
                        OutgoPaymentArticleID       = op.OutgoPaymentArticleID,
                        OutgoPaymentArticle         = op.tbl_PaymentArticle != null ? op.tbl_PaymentArticle.Title:"",
                        IncomePaymentPassCategoryID = op.IncomePaymentPassCategoryID,
                        IncomePaymentPassCategory   = op.tbl_PaymentPassCategory1 != null ? op.tbl_PaymentPassCategory1.Title:"",
                        IncomeCFOID                 = op.IncomeCFOID,
                        IncomeCFO                   = op.tbl_PaymentCFO1 != null ? op.tbl_PaymentCFO1.Title:"",
                        IncomePaymentArticleID      = op.IncomePaymentArticleID,
                        IncomePaymentArticle        = op.tbl_PaymentArticle1 != null ? op.tbl_PaymentArticle1.Title:"",
                        FormulaID                   = op.FormulaID,
                        Amount = op.Amount,
                        Value  = op.Value
                    }).ToList();
                }
                ucPaymentPass.Total = double.Parse(paymentData.Amount.ToString());
            }
            else
            {
                ucPaymentPass.PaymentPasses = new List <PaymentPass.PaymentPassMap>();
                ucPaymentPass.Total         = 0;
            }
        }
Esempio n. 24
0
        public ActionResult AddPurchase(string request)
        {
            using (var transaction = db.Database.BeginTransaction()) // new System.Transactions.TransactionScope())
            {
                tbl_Purchase tbl_Purchase = JsonConvert.DeserializeObject <tbl_Purchase>(request);
                if (PurchaseItemStock.Count > 0)
                {
                    var t = JsonConvert.SerializeObject(tbl_Purchase);

                    db.tbl_Purchase.Add(tbl_Purchase);

                    PurchaseItemStock.ForEach(q => q.tbl_Items = null);
                    db.tbl_ItemStock.AddRange(PurchaseItemStock);

                    tbl_Sequence NewSequenceValue = Helper.GenericHelper.GetNextUpdatedData(SequenceTable.tbl_Purchase.ToString());
                    db.Entry(NewSequenceValue).State = EntityState.Modified;

                    tbl_Sequence NewSequenceValueItemStock = Helper.GenericHelper.GetNextUpdatedData(SequenceTable.tbl_ItemStock.ToString());
                    db.Entry(NewSequenceValueItemStock).State = EntityState.Modified;

                    //db.SaveChanges();

                    // 1 hold --  only save purchase & Item with status hold

                    // 2  CREDIT PURCHASE --  one transaction entry with credit (out) with unpaid status

                    // 3  CASH PAY  -- one transaction entry with credit (out)/ Paid
                    //             one payment Entry with full amount
                    //             one transaction entry with Debit (in) with payment ID

                    // 4 MULTI MODE PAY -- one transaction entry with credit (out)
                    //             one payment Entry
                    //             one transaction entry with Debit (in)

                    if (tbl_Purchase.PaymentMode.Value != PaymentMode.HOLD)  // not hold
                    {
                        decimal         amount                = tbl_Purchase.Amount;
                        string          creditTID             = Helper.GenericHelper.GetMaxValue(SequenceTable.tbl_TransactionCredit.ToString());
                        tbl_Transaction tbl_Transactioncredit = new tbl_Transaction()
                        {
                            ID = creditTID,

                            CreatedDatetime = tbl_Purchase.CreatedDatetime,
                            EntryDate       = tbl_Purchase.PurchaseDate.ToString(),

                            EntryType       = TransactionEntryType.Purchase.ToString(), //"Purchase", // Purchase/Sales/Recipt/Payment
                            Status          = TransactionStatus.Unpaid,                 ///Paid/Unpaid/Pending/Paid Against entries : // Recive  Against entries
                            TransactionType = TransactionType.Credit.ToString(),        ///Debit/ credit --  For Real: Debit what comes in, credit what goes out.
                            //TransactionRef = null,

                            EntryID    = tbl_Purchase.ID,
                            PurchaseID = tbl_Purchase.ID,
                            //SalesID = null,

                            Amount = tbl_Purchase.GrandTotal,

                            VendorID = tbl_Purchase.PartyName
                        };
                        db.tbl_Transaction.Add(tbl_Transactioncredit);
                        //db.SaveChanges();

                        tbl_Sequence NewSequenceValuetbl_Transaction = Helper.GenericHelper.GetNextUpdatedData("tbl_TransactionCredit");
                        db.Entry(NewSequenceValuetbl_Transaction).State = EntityState.Modified;

                        //db.SaveChanges();
                        if (tbl_Purchase.PaymentMode == 2)  //CREDIT PURCHASE
                        {
                        }
                        else if (tbl_Purchase.PaymentMode == 3)  //CASH PAY
                        {
                            string      tbl_PaymentID = Helper.GenericHelper.GetMaxValue("tbl_Payment");
                            tbl_Payment tbl_Payment   = new tbl_Payment()
                            {
                                ID              = tbl_PaymentID,
                                Amount          = tbl_Purchase.GrandTotal,
                                CreatedDatetime = tbl_Purchase.CreatedDatetime,

                                PartyName   = tbl_Purchase.PartyName,
                                PaymentDate = tbl_Purchase.PurchaseDate.ToString(),
                                PaymentMode = "CASH",
                                //Remark = "",
                                //TransactionID = creditTID,
                            };
                            db.tbl_Payment.Add(tbl_Payment);

                            tbl_Sequence NewSequenceValuetbl_Payment = Helper.GenericHelper.GetNextUpdatedData("tbl_Payment");
                            db.Entry(NewSequenceValuetbl_Payment).State = EntityState.Modified;
                            //db.SaveChanges();

                            tbl_Transaction tbl_TransactionDebit = new tbl_Transaction()
                            {
                                ID = Helper.GenericHelper.GetMaxValue("tbl_TransactionDebit"),

                                CreatedDatetime = tbl_Purchase.CreatedDatetime,
                                EntryDate       = tbl_Purchase.PurchaseDate.ToString(),

                                EntryType       = TransactionEntryType.Purchase.ToString(),               // "Purchase", // Purchase/Sales/Recipt/Payment
                                Status          = TransactionStatus.PaidAgainstEntries + tbl_Purchase.ID, ///Paid/Unpaid/Pending/Paid Against entries : // Recive  Against entries
                                TransactionType = TransactionType.Debit.ToString(),                       ///Debit/ credit --  For Real: Debit what comes in, credit what goes out.
                                TransactionRef  = tbl_Purchase.ID,

                                EntryID = tbl_PaymentID,
                                //PurchaseID = null,
                                //SalesID = null,
                                PaymentID = tbl_PaymentID,

                                Amount = tbl_Purchase.GrandTotal,

                                VendorID = tbl_Purchase.PartyName
                            };
                            db.tbl_Transaction.Add(tbl_TransactionDebit);

                            tbl_Sequence NewSequenceValuetbl_Transaction2 = Helper.GenericHelper.GetNextUpdatedData("tbl_TransactionDebit");
                            db.Entry(NewSequenceValuetbl_Transaction2).State = EntityState.Modified;

                            //db.SaveChanges();

                            //var tbl_Transactionresult = db.tbl_Transaction.Where(q => q.ID == creditTID).FirstOrDefault();
                            tbl_Transactioncredit.Status = TransactionStatus.Paid;
                            //db.Entry(tbl_Transactionresult).State = EntityState.Modified;
                            //db.SaveChanges();
                        }
                        else if (tbl_Purchase.PaymentMode == 4)  //MULTI MODE PAY
                        {
                            string      tbl_PaymentID = Helper.GenericHelper.GetMaxValue("tbl_Payment");
                            tbl_Payment tbl_Payment   = new tbl_Payment()
                            {
                                ID              = tbl_PaymentID,
                                Amount          = amount,
                                CreatedDatetime = tbl_Purchase.CreatedDatetime,

                                PartyName   = tbl_Purchase.PartyName,
                                PaymentDate = tbl_Purchase.PurchaseDate.ToString(),
                                PaymentMode = "CASH",
                                //Remark = "",
                                //TransactionID = creditTID,
                            };
                            db.tbl_Payment.Add(tbl_Payment);

                            tbl_Sequence NewSequenceValuetbl_Payment = Helper.GenericHelper.GetNextUpdatedData("tbl_Payment");
                            db.Entry(NewSequenceValuetbl_Payment).State = EntityState.Modified;
                            //db.SaveChanges();

                            tbl_Transaction tbl_TransactionDebit = new tbl_Transaction()
                            {
                                ID = Helper.GenericHelper.GetMaxValue("tbl_TransactionDebit"),

                                CreatedDatetime = tbl_Purchase.CreatedDatetime,
                                EntryDate       = tbl_Purchase.PurchaseDate.ToString(),

                                EntryType       = TransactionEntryType.Purchase.ToString(),               // "Purchase", // Purchase/Sales/Recipt/Payment
                                Status          = TransactionStatus.PaidAgainstEntries + tbl_Purchase.ID, ///Paid/Unpaid/Pending/Paid Against entries : // Recive  Against entries
                                TransactionType = TransactionType.Debit.ToString(),                       ///Debit/ credit --  For Real: Debit what comes in, credit what goes out.
                                TransactionRef  = tbl_Purchase.ID,

                                EntryID = tbl_PaymentID,
                                //PurchaseID = null,
                                //SalesID = null,
                                PaymentID = tbl_PaymentID,

                                Amount = amount,

                                VendorID = tbl_Purchase.PartyName
                            };
                            db.tbl_Transaction.Add(tbl_TransactionDebit);

                            tbl_Sequence NewSequenceValuetbl_Transaction2 = Helper.GenericHelper.GetNextUpdatedData("tbl_TransactionDebit");
                            db.Entry(NewSequenceValuetbl_Transaction2).State = EntityState.Modified;
                        }
                    }

                    bool saved = false;

                    try
                    {
                        db.SaveChanges();
                        saved = true;
                    }
                    catch (Exception e)
                    {
                        throw new InvalidOperationException(e.Message);
                    }
                    finally
                    {
                        if (saved)
                        {
                            transaction.Commit();
                        }
                    }

                    //if (tbl_Purchase.PaymentMode == 4)  //MULTI MODE PAY
                    //    return JavaScript("window.location = '/purchase/index'");
                    //else
                    return(JavaScript("window.location = '/purchase/index'"));
                }
                else
                {
                    ViewBag.PaymentMode = new SelectList(db.tbl_PaymentMode, "ID", "Mode", tbl_Purchase.PaymentMode);
                    ViewBag.PartyName   = new SelectList(db.tbl_vendor, "ID", "Name", tbl_Purchase.PartyName);
                    throw new InvalidOperationException("Please add item to continue!!");
                }
            }
            //return RedirectToAction("Index");
        }