public ActionResult Edit(Guid id) { var currency = _currencyService.GetById(id); return(PartialView("_Edit", new CurrencyViewModel { Id = id, Name = currency.Name, DisplayMessage = currency.DisplayMessage })); }
public void GetById(Guid id) { try { _currencyService.GetById(id); } catch (DomainValidationException dex) { _domainValidationException = dex; } }
public ActionResult Details(long?id) { var bill = billService.GetById(id ?? 0) ?? new Bill(); var viewModel = new BillDetailViewModel { Bill = bill, Currency = currencyService.GetById(bill.CurrencyId ?? 0) ?? new Currency(), Vendor = vendorService.GetById(bill.VendorId ?? 0) ?? new Vendor(), Branch = branchService.GetById(LogedInUser.BranchId ?? 0) }; return(View(viewModel)); }
public ActionResult Details(long?id) { var invoice = invoiceService.GetById(id ?? 0) ?? new Invoice(); var viewModel = new InvoiceDetailViewModel { Invoice = invoice, Currency = currencyService.GetById(invoice.CurrencyId ?? 0) ?? new Currency(), Customer = customerService.GetById(invoice.CustomerId ?? 0) ?? new Customer(), Branch = branchService.GetById(LogedInUser.BranchId ?? 0) }; return(View(viewModel)); }
public ActionResult Currencys(int id) { var bank = _currencySvc.GetById(id); return(Json(bank, JsonRequestBehavior.AllowGet)); }
public ActionResult Index(FormCollection formCollection) { try { var invoice = new invoice(); var invoiceData = new invoiceData(); var currency = _currencySvc.GetById(int.Parse(formCollection["CurrencyId"])); invoice.invoiceData = invoiceData; invoiceData.id = "data"; //Thuộc tính ID của thẻ <invoiceData ID="data"> var sss = Bkav.eHoadon.XML.eHoadon.Entity.Create.invoiceDataInvoiceType.Item01GTKT; //Thông tin chung về hóa đơn invoiceData.invoiceAppRecordId = getRandomNumber(999999); //ID của bản ghi được quản lý bởi phần mềm Lập hóa đơn của DN. invoiceData.invoiceType = sss; //Ký hiệu loại hóa đơn var releaseId = -1; if (int.TryParse(formCollection["ResleaseIdNo"], out releaseId)) { var release = _listReleaseInvoiceSvc.GetById(releaseId); invoiceData.templateCode = release.No; invoiceData.invoiceSeries = release.SerialInvoice; } else { invoiceData.templateCode = formCollection["ResleaseIdNo"]; //"01GTKT0/089"; //Ký hiệu mẫu hóa đơn invoiceData.invoiceSeries = formCollection["Serial"]; //"AC/14E"; } //"01GTKT0/089"; //Ký hiệu mẫu hóa đơn invoiceData.invoiceNumber = formCollection["InvoiceNumber"]; //createUid(20); //Số hóa đơn hiện tại có chiều dài 7 chữ số invoiceData.invoiceName = "Hóa đơn giá trị gia tăng"; //Tên loại hóa đơn invoiceData.invoiceIssuedDate = DateTime.Now; //Ngày xuất hóa đơn invoiceData.signedDate = DateTime.Now; //Ngày ký số lên hóa đơn, có thể lấy là ngày xuất hóa đơn invoiceData.submittedDate = DateTime.Now; //Ngày gửi hóa đơn lên CQT, tương đương với ngày đẩy vào thiết bị xác thực, có thể lấy là ngày xuất hóa đơn invoiceData.currencyCode = currency != null ? currency.CurrencyCode : ""; //Ký hiệu mã tiền tệ sử dụng: VND, USD,... //invoiceData.isAdjusted = 1; //Trạng thái hóa đơn: 1: hóa đơn thường, 5: hóa đơn điều chỉnh,.... trong file Doc mô tả chuẩn XML //Thông tin thanh toán hóa đơn var paymentInfo = new paymentInfo(); paymentInfo.paymentMethodName = formCollection["PaymentsType"]; //"Tiền mặt"; //Thông tin về phương thức thanh toán hóa đơn: Tiền mặt, Tiền mặt/Chuyển khoản, Chuyển khoản List <paymentInfo> payments = invoiceData.payments; payments.Add(paymentInfo); //Thông tin người bán (Seller) //invoiceData.sellerAppRecordId = createUid(20); //Tùy doanh nghiệp có thể dùng chung trường ID của bản ghi được quản lý bởi phần mềm Lập hóa đơn của DN. invoiceData.sellerLegalName = formCollection["CompanyNameAcc"]; //"CÔNG TY TNHH DỊCH VỤ TIN HỌC FPT (Demo)"; //Tên doanh nghiệp bán hàng hóa dịch vụ var random = new Random(); //String tin = allowTin[random.Next(allowTin.Length)]; //invoiceData.sellerTaxCode = tin; //Mã số thuến người bán invoiceData.sellerAddressLine = formCollection["AddressAcc"]; //"Tầng 6 Tòa nhà Thành Công, Dịch Vọng Hậu, Cầu Giấy, Hà Nội"; //Địa chỉ người bán invoiceData.sellerPhoneNumber = formCollection["PhoneAcc"]; //"0812345678"; //Số điện thoại người bán invoiceData.sellerFaxNumber = formCollection["PhoneAcc"]; //"0812345678"; //invoiceData.sellerContactPersonName = formCollection["sellerAddressLine"];// "Đỗ C"; //Tên người đại diện công ty đăng ký kinh doanh //invoiceData.sellerEmail = formCollection["sellerAddressLine"]; //"*****@*****.**"; //email đăng ký kinh doanh //invoiceData.sellerSignedPersonName = formCollection["sellerAddressLine"];// "Phạm A"; //Người bán hàng hoặc người thực hiện việc xuất hóa đơn //invoiceData.sellerSubmittedPersonName = formCollection["sellerAddressLine"]; //"Nguyễn B"; //Người thực hiện phê duyệt hoặc gửi hóa đơn đi xác thực //Thông tin người mua ( Buyer) invoiceData.buyerLegalName = formCollection["CompanyName"]; // "Công ty Thử Nghiệm"; //Tên doanh nghiệp bán hàng hóa dịch vụ invoiceData.buyerDisplayName = formCollection["CustomerName"]; //"Nguyễn Tiến X"; invoiceData.buyerTaxCode = formCollection["CompanyCode"]; //"0104128565"; //Mã số thuến người mua invoiceData.buyerAddressLine = formCollection["Address"]; //"15 Nguyễn Du - Hai Bà Trưng - Hà Nội"; //Địa chỉ người bán invoiceData.buyerPhoneNumber = "0812345678"; //Số điện thoại người mua invoiceData.buyerFaxNumber = "0812345678"; invoiceData.buyerEmail = formCollection["BuyerEmail"]; //"*****@*****.**"; //email đăng ký kinh doanh invoiceData.invoiceNote = formCollection["Comment"]; //Thông tin các mặt hàng invoiceData.items = new List <invoiceItem>(); //Thêm mặt hàng thứ nhất var invoiceItem = new invoiceItem(); //invoiceItemList[0].promotion uint i = 1; var data = formCollection.AllKeys.Count(); for (int j = 0; j < (data - 27) / 10; j++) { invoiceItem = new invoiceItem(); var vatCategoryPercentage = 0; int.TryParse(formCollection[string.Format("invoiceItemList[{0}].vatCategoryPercentage", j)], out vatCategoryPercentage); var itemTotalAmountWithoutVat = 0; int.TryParse(formCollection[string.Format("invoiceItemList[{0}].itemTotalAmountWithoutVat", j)], out itemTotalAmountWithoutVat); invoiceItem.lineNumber = i; //Dòng hóa đơn invoiceItem.itemCode = formCollection[string.Format("invoiceItemList[{0}].itemCode", j)]; //Mã hàng hóa invoiceItem.itemName = formCollection[string.Format("invoiceItemList[{0}].itemName", j)]; //Tên hàng hóa invoiceItem.unitName = formCollection[string.Format("invoiceItemList[{0}].unitCode", j)]; ; //Đơn vị tính try { invoiceItem.quantity = int.Parse(formCollection[string.Format("invoiceItemList[{0}].quantity", j)]); //Số lượng invoiceItem.unitPrice = int.Parse(formCollection[string.Format("invoiceItemList[{0}].unitPrice", j)]); } catch (Exception) { // Cho phép nhập thành tiền invoiceItem.quantity = 0; invoiceItem.unitPrice = 0; } //Đơn giá invoiceItem.vatPercentage = vatCategoryPercentage; //Thuế xuất của mặt hàng: -2: không kê khai thuế, -1: không chịu thuế, 0: 0%, 5:5%, 10:10%..... invoiceItem.itemTotalAmountWithoutVat = itemTotalAmountWithoutVat; //Tổng tiền chưa thuế của dòng hóa đơn: = số lượng * đơn giá invoiceData.items.Add(invoiceItem); i++; } invoiceData.invoiceTaxBreakdowns = new List <invoiceTaxBreakdownInfo>(); //Tạo thông tin cho mức thuế xuất 5% var invoiceTaxBreakdownInfo = new invoiceTaxBreakdownInfo(); var vatCatTaxAmt = 0; var vatCatTaxableAmt = 0; var vatPercentage = 0; int.TryParse(formCollection["invoiceTaxBreakdownList[0].vatCategoryPercentage"] + "", out vatPercentage); int.TryParse(formCollection["invoiceTaxBreakdownList[0].vatCatTaxAmt"], out vatCatTaxAmt); int.TryParse(formCollection["invoiceTaxBreakdownList[0].vatCatTaxableAmt"], out vatCatTaxableAmt); if (vatPercentage == 5) { //invoiceData.totalAmountWithoutVAT = vatCatTaxAmt; invoiceTaxBreakdownInfo.vatPercentage = 5; //Mức thuế invoiceTaxBreakdownInfo.vatTaxableAmount = vatCatTaxableAmt; //Tổng tiền trên hóa đơn chịu mức thuế xuất này invoiceTaxBreakdownInfo.vatTaxAmount = vatCatTaxAmt; //Tổng tiền thuế của mức thuế xuất này invoiceData.invoiceTaxBreakdowns.Add(invoiceTaxBreakdownInfo); } else if (vatPercentage == 10) { int.TryParse(formCollection["invoiceTaxBreakdownList[0].vatCatTaxAmt"], out vatCatTaxAmt); int.TryParse(formCollection["invoiceTaxBreakdownList[0].vatCatTaxableAmt"], out vatCatTaxableAmt); //invoiceData.totalAmountWithoutVAT = vatCatTaxAmt; invoiceTaxBreakdownInfo.vatPercentage = 10; //Mức thuế invoiceTaxBreakdownInfo.vatTaxableAmount = vatCatTaxableAmt; //Tổng tiền trên hóa đơn chịu mức thuế xuất này invoiceTaxBreakdownInfo.vatTaxAmount = vatCatTaxAmt; //Tổng tiền thuế của mức thuế xuất này invoiceData.invoiceTaxBreakdowns.Add(invoiceTaxBreakdownInfo); } if (formCollection.AllKeys.Contains("invoiceTaxBreakdownList[1].vatCategoryPercentage")) { var vatPercentage10 = 0; var vatCatTaxAmt1 = 0; var vatCatTaxableAmt1 = 0; int.TryParse(formCollection["invoiceTaxBreakdownList[1].vatCategoryPercentage"] + "", out vatPercentage10); int.TryParse(formCollection["invoiceTaxBreakdownList[1].vatCatTaxAmt"], out vatCatTaxAmt1); int.TryParse(formCollection["invoiceTaxBreakdownList[1].vatCatTaxableAmt"], out vatCatTaxableAmt1); if (vatPercentage10 == 5) { int.TryParse(formCollection["invoiceTaxBreakdownList[1].vatCatTaxAmt"], out vatCatTaxAmt); int.TryParse(formCollection["invoiceTaxBreakdownList[1].vatCatTaxableAmt"], out vatCatTaxableAmt); //invoiceData.totalAmountWithoutVAT = vatCatTaxAmt; invoiceTaxBreakdownInfo.vatPercentage = vatPercentage10; //Mức thuế invoiceTaxBreakdownInfo.vatTaxableAmount = vatCatTaxableAmt1; //Tổng tiền trên hóa đơn chịu mức thuế xuất này invoiceTaxBreakdownInfo.vatTaxAmount = vatCatTaxAmt1; //Tổng tiền thuế của mức thuế xuất này invoiceData.invoiceTaxBreakdowns.Add(invoiceTaxBreakdownInfo); } else if (vatPercentage10 == 10) { int.TryParse(formCollection["invoiceTaxBreakdownList[1].vatCatTaxAmt"], out vatCatTaxAmt1); int.TryParse(formCollection["invoiceTaxBreakdownList[1].vatCatTaxableAmt"], out vatCatTaxableAmt1); //invoiceData.totalAmountWithoutVAT = vatCatTaxAmt; invoiceTaxBreakdownInfo.vatPercentage = vatPercentage10; //Mức thuế invoiceTaxBreakdownInfo.vatTaxableAmount = vatCatTaxableAmt1; //Tổng tiền trên hóa đơn chịu mức thuế xuất này invoiceTaxBreakdownInfo.vatTaxAmount = vatCatTaxAmt1; //Tổng tiền thuế của mức thuế xuất này invoiceData.invoiceTaxBreakdowns.Add(invoiceTaxBreakdownInfo); } } //var vatCatTaxAmt = 0; //int.TryParse(formCollection["invoiceTaxBreakdownList[0].vatCatTaxAmt"], out vatCatTaxAmt); invoiceData.totalAmountWithoutVAT = vatCatTaxAmt; //Tổng tiền không chịu thuế trên toàn hóa đơn var amountForPaymentVnd = 0; int.TryParse(formCollection["amountForPaymentVnd"], out amountForPaymentVnd); invoiceData.totalVATAmount = amountForPaymentVnd; //Tổng tiền thuế trên toàn hóa đơn var totalAmountWithVat = 0; int.TryParse(formCollection["totalAmountWithVat"], out totalAmountWithVat); invoiceData.totalAmountWithVAT = totalAmountWithVat; //Tổng tiền đã bao gồm cả thuế trên toàn hóa đơn invoiceData.totalAmountWithVATInWords = formCollection["totalAmtWithVatInWords"]; //Tổng tiền đã bao gồm cả thuế trên toàn hóa đơn được viết bằng chữ invoice.invoiceData = invoiceData; string xmlInvoice = invoice.Serialize(Encoding.UTF8); var curentTranId = formCollection["tranId"]; if (!string.IsNullOrEmpty(curentTranId)) { //var tran = _transactionSvc.GetById(int.Parse(curentTranId)); //var invoiceFile = tran.InvoiceXML; //var currentInvoice = _invoiceSvc.GetById(tran.InvoiceID); } var fileName = Guid.NewGuid() + ".xml"; var pathFile = Path.Combine(Server.MapPath("~/Content/File"), fileName); XmlDocument doc = new XmlDocument(); doc.LoadXml(xmlInvoice); doc.Save(pathFile); //lưu vào bảng transaction/invoice/invoicedetail var invoices = new Entities.Invoice(); if (invoice.invoiceData.currencyCode != null) { var currencys = _currencySvc.GetByCode(invoice.invoiceData.currencyCode); if (currencys != null && currencys.Any()) { var cus = currencys.First(); invoices.CurrencyID = cus.Id; //invoices.Currency = cus.BankName; } } invoices.InvoiceNote = invoice.invoiceData.invoiceNote; if (formCollection[string.Format("CustomerId")] != null) { invoices.CustomerInvoiceID = int.Parse(formCollection[string.Format("CustomerId")]); } invoices.AccountId = User.GetAccountId(); invoices.InvoiceNumber = invoiceData.invoiceNumber; invoices.Serial = invoiceData.invoiceSeries; invoices.TotalAmountWithVAT = invoiceData.totalAmountWithVAT; invoices.TotalAmountWithoutVAT = invoiceData.totalAmountWithoutVAT; invoices.TotalVATAmount = invoiceData.totalAmountWithVAT; invoices.TemplateCode = formCollection["templateCode"]; var invoiceDetails = new List <InvoiceDetail>(); foreach (var item in invoiceData.items) { var invoiceDetail = new InvoiceDetail(); //invoiceDetail.AdjustmentVatAmount = ""; // invoiceDetail.TotalAmountWithoutVAT = invoiceData.totalAmountWithoutVAT; //invoiceDetail.TotalVATAmount = invoiceData.totalAmountWithVAT; //invoiceDetail.TemplateCode = formCollection["templateCode"]; invoiceDetails.Add(invoiceDetail); } var transaction = new Transaction(); transaction.InvoiceXML = fileName; transaction.TemplateCode = invoices.TemplateCode; transaction.InvoiceSeries = invoices.Serial; int tranId = _invoiceSvc.Create(invoices, transaction); if (releaseId > 0) { var invoiceNums = _invoiceNumberSvc.GetByReleaseIdAnduseStatus(releaseId, 0); if (invoiceNums != null && invoiceNums.FirstOrDefault() != null) { var invoiceNum = invoiceNums.FirstOrDefault(); invoiceNum.UseStatus = 1; invoiceNum.Status = 1; _invoiceNumberSvc.UpdateInvoiceNumbers(invoiceNum); } } return(Json(new ResultInvoice { Flag = true, Message = "Lưu dữ liệu thành công", TransactionId = tranId })); } catch (Exception ex) { return(Json(new ResultInvoice { Flag = true, Message = ex.Message, TransactionId = 0 })); } }
public ActionResult GetById(int currencyId) { var item = currencyService.GetById(currencyId); return(Json(item, JsonRequestBehavior.AllowGet)); }