public ActionResult Themcthd(string idhoadon) { ViewBag.id = idhoadon; var hd = _hoadonRepository.GetByTwoKey(idhoadon, HttpContext.Session.GetString("chinhanh")); var ct = new cthdvat(); ct.Idhoadon = idhoadon; ct.sttdong = 0; ct.tygia = 1; ListNgoaite("VND"); ListHttt("TM"); Listhttc(""); if (hd.coupon) { Tkco("3387"); } else { Tkco("5113333335"); } Tkno("1311110000"); // var hd = _hoadonRepository.Find(x=>x.Idhoadon==idhoadon && x.chinhanh== HttpContext.Session.GetString("chinhanh")).FirstOrDefault(); if (!String.IsNullOrEmpty(hd.keyhddt)) { SetAlert("Đây là hoá đơn điện tử, không được điều chỉnh thông tin khi đã xuất hoá đơn", "error"); return(Redirect(HttpContext.Session.GetString("urlEditHoadon"))); } return(View(ct)); }
public ActionResult Themcthd(cthdvat entity) { entity.ngaytao = System.DateTime.Now; entity.tour = ""; entity.httc = entity.httc ?? ""; entity.diengiai = string.IsNullOrEmpty(entity.diengiai) ? "" : entity.diengiai; entity.sgtcode = string.IsNullOrEmpty(entity.sgtcode) ? "" : entity.sgtcode; entity.tenkhach = string.IsNullOrEmpty(entity.tenkhach) ? "" : entity.tenkhach; entity.chinhanh = HttpContext.Session.GetString("chinhanh"); entity.logfile = "-User tạo chi tiết hoá đơn: " + HttpContext.Session.GetString("username") + " vào lúc: " + System.DateTime.Now.ToString(); var result = _cthdvatRepository.Create(entity); if (result != null) { SetAlert("Thêm chi tiết hoá đơn thành công", "success"); } else { SetAlert("Thêm chi tiết hoá đơn không thành công", "error"); } return(Redirect(HttpContext.Session.GetString("urlEditHoadon"))); }
public ActionResult ThemctTuhuyhd_(string idhoadon, string listString) { var cthd = JsonConvert.DeserializeObject <List <cthdvat> >(listString); foreach (var c in cthd) { var ct = _cthdvatRepository.GetById(c.Id); cthdvat h = new cthdvat(); //ct.Idhoadon = idhoadon; h.chinhanh = HttpContext.Session.GetString("chinhanh"); h.Idhoadon = idhoadon; h.diengiai = c.diengiai; h.sotien = c.sotien; h.serial = ct.serial; h.xuatve = ct.xuatve; h.tenkhach = ct.tenkhach; h.sgtcode = ct.sgtcode; h.sotiennt = ct.sotiennt; h.sotien = ct.sotien; h.loaitien = ct.loaitien; h.tygia = ct.tygia; h.ppv = ct.ppv; h.vat = ct.vat; h.ghichu = ct.ghichu; h.coupon = ct.coupon; h.tiencoupon = ct.tiencoupon; h.tour = ct.tour; h.httc = ct.httc; h.tkno = ct.tkno; h.tkco = ct.tkco; h.ngaytao = System.DateTime.Now; h.logfile = "User thêm chi tiết từ hoá đơn " + c.hoadonhuy + " đã huỷ: " + HttpContext.Session.GetString("username") + " vào lúc " + System.DateTime.Now; // _huycthdvatRepository.Create(h); _cthdvatRepository.Create(h); } return(Redirect(HttpContext.Session.GetString("urlEditHoadon"))); }
public ActionResult ListCtVetourBySerial(string Idhoadon, string tour, string serial, decimal?ppv, decimal tygia, string tkno, string tkco) { var vetour = _hoadonRepository.GetVetourBySerial(tour, serial, HttpContext.Session.GetString("chinhanh")); List <cthdvat> newList = new List <cthdvat>(); // Tính tổng cộng tiền coupon đặt cọc của vé tour var tccoupon = _hoadonRepository.GetTienCoupon(tour, vetour.id); if (tccoupon != null) // Nếu tiền coupon > 0 { cthdvat ct = new cthdvat(); ct.Idhoadon = Idhoadon; ct.serial = vetour.serial; ct.diengiai = vetour.diengiai; ct.xuatve = Convert.ToDateTime(vetour.xuatve); ct.tenkhach = vetour.tenkhach; ct.sgtcode = vetour.sgtcode; // số tiền còn lại = số tiền vé tour - đặt cọc bằng coupon và vat =0 vì coupon đã tính thuế //ct.sotien = (vetour.sotiennt) ; //ct.sotiennt = (vetour.doanhthunn *tygia); ViewBag.tongtien = vetour.sotiennt - tccoupon.Coupon; if (tour == "OB") { if (vetour.sotiennt - tccoupon.Coupon > (vetour.doanhthunn * tygia)) { for (int j = 0; j < 2; j++) { if (j == 0) { ct.sotien = vetour.sotiennt - tccoupon.Coupon - (vetour.doanhthunn * tygia); ct.sotiennt = vetour.sotiennt - tccoupon.Coupon - (vetour.doanhthunn * tygia); ct.vat = 10; } else { ct.sotien = vetour.sotiennt - tccoupon.Coupon; ct.sotien = vetour.sotiennt - tccoupon.Coupon; ct.vat = 0; } ct.ppv = Convert.ToDecimal(ppv); ct.tygia = (decimal)tygia; ct.ghichu = vetour.ghichu; ct.tkco = tkco; ct.tkno = tkno; ct.sttdong = 0; ct.ngaytao = System.DateTime.Now; ct.khachhuy = false; ct.httc = ""; ct.dichvu = ""; ct.loaitien = vetour.loaitien; ct.tour = tour; ct.sk = vetour.sk; newList.Add(ct); } } else { ct.sotien = vetour.sotiennt - tccoupon.Coupon; ct.sotien = vetour.sotiennt - tccoupon.Coupon; ct.vat = 0; ct.ppv = Convert.ToDecimal(ppv); ct.tygia = (decimal)tygia; ct.ghichu = vetour.ghichu; ct.tkco = tkco; ct.tkno = tkno; ct.sttdong = 0; ct.ngaytao = System.DateTime.Now; ct.khachhuy = false; ct.httc = ""; ct.dichvu = ""; ct.loaitien = vetour.loaitien; ct.tour = tour; ct.sk = vetour.sk; newList.Add(ct); } } else { ct.sotien = vetour.sotiennt - tccoupon.Coupon; ct.sotiennt = vetour.sotiennt - tccoupon.Coupon; ct.vat = 10; ct.ppv = Convert.ToDecimal(ppv); ct.tygia = (decimal)tygia; ct.ghichu = vetour.ghichu; ct.tkco = tkco; ct.tkno = tkno; ct.sttdong = 0; ct.ngaytao = System.DateTime.Now; ct.khachhuy = false; ct.httc = ""; ct.dichvu = ""; ct.loaitien = vetour.loaitien; ct.tour = tour; ct.sk = vetour.sk; newList.Add(ct); } } else // Nếu không có coupon thì tính 2 dòng: dòng đầu tiên vat 10% của tonggiatour - tong doanh thu nn { var listct = _cthdvatRepository.ListCtVetourBySerial(tour, serial); if (tour == "OB") // Nếu tour OB thì tách làm 2 dòng, dòng 1 tính 10% vat trên tổng tổngtiền - tổng doanhthunn; dòng 2 vat 0% trên tổng doanhthu nước ngoài { //decimal number1 = 0; //decimal number2 = 0; //var adl = listct.Where(x => x.serial == serial).Where(x => x.dotuoi == "ADL").Select(x => x.sotiennt); //var doanhthunnCHD = listct.Where(x => x.serial == serial).Where(x => x.dotuoi != "ADL").Select(x => x.sotiennt); //var doanhthunnADL = listct.Where(x => x.serial == serial).Where(x => x.dotuoi.Equals("ADL")).Select(x => x.doanhthunn); //number1 = adl.Sum(); //number2 = doanhthunnADL.Sum(); //var star1 = number1 - number2; //var star2 = number2 + doanhthunnCHD.Sum(); // Nếu vé tour mà > doanh thu nướci ngoài thì chia làm 2 dong// ngược lại thì chỉ lấy 1 dòng vé tour vat 0% if (vetour.sotiennt > (vetour.doanhthunn * tygia)) { for (int j = 0; j < 2; j++) { cthdvat ct = new cthdvat(); ct.Idhoadon = Idhoadon; ct.serial = vetour.serial; ct.diengiai = vetour.diengiai; ct.xuatve = Convert.ToDateTime(vetour.xuatve); ct.tenkhach = vetour.tenkhach; ct.sgtcode = vetour.sgtcode; if (j == 0) { //ct.sotiennt = star1; ct.diengiai = vetour.diengiai; //ct.sotien = star1; //ct.vat = 10; ct.sotien = vetour.sotiennt - (vetour.doanhthunn * tygia); ct.sotiennt = vetour.sotiennt - (vetour.doanhthunn * tygia); ct.vat = 10; } else { //ct.sotiennt = star2; //ct.sotien = star2; ct.sotiennt = vetour.doanhthunn * tygia; ct.sotien = vetour.doanhthunn * tygia; ct.diengiai = vetour.diengiai; ct.vat = 0; } ct.ppv = Convert.ToDecimal(ppv); ct.tygia = (decimal)tygia; ct.ghichu = vetour.ghichu; ct.tkco = tkco; ct.tkno = tkno; ct.sttdong = 0; ct.ngaytao = System.DateTime.Now; ct.khachhuy = false; ct.httc = ""; ct.dichvu = ""; ct.loaitien = vetour.loaitien; ct.tour = tour; ct.sk = vetour.sk; newList.Add(ct); } } // vé tour nhỏ hơn doanh thu nước ngoài, thì là chính nó với vat =0% else { cthdvat ct = new cthdvat(); ct.Idhoadon = Idhoadon; ct.serial = vetour.serial; ct.diengiai = vetour.diengiai; ct.xuatve = Convert.ToDateTime(vetour.xuatve); ct.tenkhach = vetour.tenkhach; ct.sgtcode = vetour.sgtcode; ct.sotien = vetour.sotiennt; ct.sotiennt = vetour.sotiennt; ct.vat = 0; ct.diengiai = vetour.diengiai; ct.ppv = Convert.ToDecimal(ppv); ct.tygia = (decimal)tygia; ct.ghichu = vetour.ghichu; ct.tkco = tkco; ct.tkno = tkno; ct.sttdong = 0; ct.ngaytao = System.DateTime.Now; ct.khachhuy = false; ct.httc = ""; ct.dichvu = ""; ct.loaitien = vetour.loaitien; ct.tour = tour; ct.sk = vetour.sk; newList.Add(ct); } } else // Nếu là tour nội địa thì tính vat 10% trên từng vé tour { cthdvat ct = new cthdvat(); ct.Idhoadon = Idhoadon; ct.serial = vetour.serial; ct.diengiai = vetour.diengiai; ct.xuatve = Convert.ToDateTime(vetour.xuatve); ct.tenkhach = vetour.tenkhach; ct.sgtcode = vetour.sgtcode; ct.sotien = vetour.sotiennt; // - tccoupon.Coupon; ct.sotiennt = vetour.sotiennt; // - tccoupon.Coupon; ViewBag.tongtien = vetour.sotiennt; // - tccoupon.Coupon; ct.vat = 10; ct.ppv = Convert.ToDecimal(ppv); ct.tygia = (decimal)tygia; ct.ghichu = vetour.ghichu; ct.tkco = tkco; ct.tkno = tkno; ct.sttdong = 0; ct.ngaytao = System.DateTime.Now; ct.khachhuy = false; ct.httc = ""; ct.dichvu = ""; ct.loaitien = vetour.loaitien; ct.tour = tour; ct.sk = vetour.sk; newList.Add(ct); } } return(View(newList)); }
public ActionResult Capnhatcthd(cthdvat entity) { temp = ""; log = ""; cthdvat ct = _cthdvatRepository.GetById(entity.Id); ct.sttdong = string.IsNullOrEmpty(ct.sttdong.ToString()) ? 0 : ct.sttdong; if (ct.sttdong != entity.sttdong) { temp += string.Format("- STT thay đổi: {0}->{1}", ct.sttdong, entity.sttdong); } if (ct.diengiai != entity.diengiai) { temp += string.Format("- Diễn giải thay đổi: {0}->{1}", ct.diengiai, entity.diengiai); } if (ct.tenkhach != entity.tenkhach) { temp += string.Format("- Tên khách thay đổi: {0}->{1}", ct.tenkhach, entity.tenkhach); } if (ct.sgtcode != entity.sgtcode) { temp += string.Format("- Tour code thay đổi: {0}->{1}", ct.sgtcode, entity.sgtcode); } if (ct.sk != entity.sk) { temp += string.Format("- Số khách thay đổi: {0}->{1}", ct.sk, entity.sk); } if (ct.sotiennt != entity.sotiennt) { temp += string.Format("- Tiền NT thay đổi: {0:#,##0.0}->{1:#,##0.0}", ct.sotiennt, entity.sotiennt); } if (ct.loaitien != entity.loaitien) { temp += string.Format("- Loại tiền thay đổi thay đổi: {0}->{1}", ct.loaitien, entity.loaitien); } if (ct.tygia != entity.tygia) { temp += string.Format("- Tỷ giá thay đổi: {0}->{1}", ct.tygia, entity.tygia); } if (ct.sotien != entity.sotien) { temp += string.Format("- Tiền VNĐ thay đổi: {0:#,##0}->{1:#,##0}", ct.sotien, entity.sotien); } if (ct.ppv != entity.ppv) { temp += string.Format("- Phí phục vụ thay đổi: {0}->{1}", ct.ppv, entity.ppv); } if (ct.vat != entity.vat) { temp += string.Format("- VAT thay đổi: {0}->{1}", ct.vat, entity.vat); } var httc = string.IsNullOrEmpty(entity.httc) ? "" : entity.httc; if (ct.httc != httc) { temp += string.Format("- HTTC thay đổi: {0}->{1}", ct.httc, entity.httc); } if (ct.tkno != entity.tkno) { temp += string.Format("- Tài khoản nợ thay đổi: {0}->{1}", ct.tkno, entity.tkno); } if (ct.tkco != entity.tkco) { temp += string.Format("- Tài khoản có thay đổi: {0}->{1}", ct.tkco, entity.tkco); } if (ct.ghichu != entity.ghichu) { temp += string.Format("- Ghi chú thay đổi: {0}->{1}", ct.ghichu, entity.ghichu); } ct.sttdong = entity.sttdong; ct.diengiai = entity.diengiai; ct.tenkhach = entity.tenkhach; ct.sgtcode = entity.sgtcode; ct.sotiennt = entity.sotiennt; ct.loaitien = entity.loaitien; ct.tygia = entity.tygia; ct.sotien = entity.sotien; ct.ppv = entity.ppv; ct.vat = entity.vat; ct.httc = string.IsNullOrEmpty(entity.httc) ? "" : entity.httc; ct.tkno = entity.tkno; ct.tkco = entity.tkco; ct.ghichu = entity.ghichu; if (temp.Length > 0) { log = System.Environment.NewLine; log += "============="; log += System.Environment.NewLine; log += temp + " -User cập nhật chi tiết hoá đơn: " + HttpContext.Session.GetString("username") + " vào lúc: " + System.DateTime.Now.ToString("dd/MM/yyyy HH:mm"); ct.logfile = ct.logfile + log; } var result = _cthdvatRepository.Update(ct); if (result != null) { SetAlert("Cập nhật chi tiết hoá đơn thành công", "success"); } else { SetAlert("Cập nhật chi tiết hoá đơn không thành công", "error"); } return(Redirect(HttpContext.Session.GetString("urlEditHoadon"))); }