public ThongBao InsertOrUpdate(int?ThongBaoId, string NoiDungThongBao, string NoiDungCongViec, string LienKet, int?NguoiThongBaoID, int?NguoiNhanThongBaoId, DateTime?ThoiGian, bool?DaXem, string MaLoaiThongBao, int?GiaTri) { ThongBaoService _thongbao = new ThongBaoService(); ThongBao thongbao = new ThongBao(); if (ThongBaoId.HasValue) { thongbao = _thongbao.FindByKey(ThongBaoId); thongbao = thongbao == null ? new ThongBao() : thongbao; } thongbao.NoiDungThongBao = NoiDungThongBao; thongbao.NoiDungCongViec = NoiDungCongViec; thongbao.LienKet = LienKet; thongbao.NguoiThongBaoID = NguoiThongBaoID; thongbao.NguoiNhanThongBaoId = NguoiNhanThongBaoId; thongbao.ThoiGian = ThoiGian; thongbao.DaXem = DaXem; thongbao.MaLoaiThongBao = MaLoaiThongBao; thongbao.GiaTri = GiaTri; if (thongbao.ThongBaoId > 0) { _thongbao.Update(thongbao); } else { _thongbao.Insert(thongbao); } return(thongbao); }
public shOrder XuLyDonhang(string OrderGuid, string OrderName, int NguoiThongBaoId) { try { // 1. Cập nhật trạng thái người xử lý đơn hàng shOrderService _order = new shOrderService(); shOrder order = _order.FindByKey(OrderGuid); //order.UserId = UserId; order.OrderName = OrderName; order.OrderStatus = OrderStatus.DangGiaoHang.GetHashCode(); _order.Update(order); // 2. Ghi lại lịch sử // 3. Thông báo cho khách hàng tiến trình xử lý đơn hàng ThongBaoService _thongbao = new ThongBaoService(); shMemberService _member = new shMemberService(); shMember member = _member.FindByKey(order.MemberGuid); int MemberId = member != null ? member.MemberId : 0; _thongbao.InsertOrUpdate( null, "Thông báo xử lý đơn hàng", "Đơn hàng của bạn đã được tiếp nhận và xử lý. Nếu có thắc mắc vui lòng liên hệ với quản trị viên để biết thêm chi tiết", null, NguoiThongBaoId, MemberId, DateTime.Now, false, Config.THONG_BAO_DON_HANG_XU_LY, null ); // 4. Gửi Email thông báo đơn hàng string noidungdonhang = EmailHelper.NoiDungDonHang(order, new List <CartItem>()); string noidungEmail = EmailHelper.NoiDungMailThongBaoXuLyDatHang(noidungdonhang); EmailHelper.ThongBaoEmailDonHangMoiToiNguoiDatHang(member.Email, noidungEmail); return(order); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } return(new shOrder()); } return(new shOrder()); }
public shOrder ChuyenXuLyDonhang(string OrderGuid, int?UserId, string OrderName, int NguoiThongBaoId) { try { // 1. Cập nhật trạng thái người xử lý đơn hàng shOrderService _order = new shOrderService(); shOrder order = _order.FindByKey(OrderGuid); order.UserId = UserId; order.OrderName = OrderName; _order.Update(order); // 2. Ghi lại lịch sử // 3. Thông báo cho người nhận ThongBaoService _thongbao = new ThongBaoService(); _thongbao.InsertOrUpdate( null, "Thông báo đơn hàng cần xử lý", "Bạn có đơn hàng cần xử lý. Vui lòng truy cập hệ thống để xử lý", "/DanhMuc/Order/Index/s=" + order.OrderGuid, NguoiThongBaoId, UserId, DateTime.Now, false, Config.THONG_BAO_DON_HANG_XU_LY, null ); return(order); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } return(new shOrder()); } return(new shOrder()); }
public IEnumerable <ThongBao> DanhSach(int?MemberId) { ThongBaoService _thongbao = new ThongBaoService(); return(_thongbao.FindList().Where(x => x.NguoiNhanThongBaoId == MemberId)); }
public shGoodReceiptIsuue XuatDuLieuDonHang(string OrderGuid, int?OrderStatus, string Description, int UserId, int Phieu, int MaKho, int LoaiPhieu, string GhiChu, int TrangThai, bool?Status, DateTime?CreateDate, string MaDonHang) { // 1. Cập nhật trạng thái đơn hàng shOrderService _order = new shOrderService(); shOrder order = _order.FindByKey(OrderGuid); order.OrderStatus = OrderStatus; _order.Update(order); shGoodReceiptIsuue receipt = new shGoodReceiptIsuue(); if (OrderStatus != C.Core.Common.OrderStatus.HuyDonHang.GetHashCode()) { // 2. ghi lịch sử cập nhật đơn hàng shOrderHistoryService _orderHistory = new shOrderHistoryService(); shOrderHistory orderHistory = _orderHistory.Insert_Update( null, order.OrderGuid, OrderStatus, null, Description, UserId, true, DateTime.Now); // 3. Tạo hóa đơn xuất kho receipt = Insert_Update( null, null, Phieu, null, null, MaKho, null, LoaiPhieu, MaDonHang, GhiChu, UserId, TrangThai, Status, CreateDate ); // 4 Cập nhật số lượng tồn của mỗi sản phẩm shOrderDetailService _orderdetail = new shOrderDetailService(); IEnumerable <shOrderDetail> ds = _orderdetail.DanhSachOrderDetailBy(order.OrderGuid, order.MemberGuid, null); shSizeService _size = new shSizeService(); shSetSize size = new shSetSize(); foreach (var item in ds) { size = _size.FindByKey(item.SizeGuid); if (size == null) { size = new shSetSize(); } // 5.. Tạo chi tiết hóa đơn xuất hàng hóa shGoodReceiptIsuueDetailService _receiptDetail = new shGoodReceiptIsuueDetailService(); shGoodReceiptIsuueDetail receiptDetail = _receiptDetail.Insert_Update( null, null, receipt.ReceiptIsuueGuid, size.ProductGuid, size.SectionGuid, size.SizeGuid, item.Number, Status, CreateDate, Phieu); // 6.Update số lượng tồn ở bảng size size.Inventory = size.Inventory - item.Number; _size.Update(size); } // 5. Thông báo cho Khach hàng biết đơn hàng đã xử lý shMemberService _member = new shMemberService(); shMember member = _member.FindByKey(order.MemberGuid); int MemberId = member != null ? member.MemberId : 0; ThongBaoService _thongbao = new ThongBaoService(); _thongbao.InsertOrUpdate( null, "Thông báo đơn hàng đang trong quá trình xử lý", "Đơn hàng của bạn đang trong quá trình vận chuyển. Vui lòng kiểm tra thông tin cá nhân trong quá trình chúng tôi vận chuyển sản phẩm", null, UserId, MemberId, DateTime.Now, false, Config.THONG_BAO_DA_XU_LY_DON_HANG, null ); // 6. Gửi Email báo xử lý đơn hàng string noidungdonhang = EmailHelper.NoiDungDonHang(order, new List <CartItem>()); string noidungEmail = EmailHelper.NoiDungMailThongBaoXuLyDatHang(noidungdonhang); EmailHelper.ThongBaoEmailDonHangMoiToiNguoiDatHang(member.Email, noidungEmail); } return(receipt); }