public async Task <ApiResult <bool> > ChangeStatus(int id) { try { var coupon = await _context.Coupons.FindAsync(id); if (coupon != null) { if (coupon.isActive) { coupon.isActive = false; } else { coupon.isActive = true; } await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } else { return(new ApiErrorResult <bool>("Không tìm thấy mã giảm giá này")); } } catch { return(new ApiErrorResult <bool>("Cập nhật thất bại")); } }
public async Task <ApiResult <bool> > Create(CreateCategoryRequest request) { try { if (request.parent_id == null) { request.parent_id = 0; } else { request.parent_id = request.parent_id; } var cate = new TechShopSolution.Data.Entities.Category { cate_name = request.cate_name, parent_id = request.parent_id, meta_descriptions = request.meta_descriptions, meta_keywords = request.meta_keywords, meta_title = request.meta_title, cate_slug = request.cate_slug, ProductInCategory = new List <Data.Entities.CategoryProduct>(), isActive = request.isActive, isDelete = false, create_at = DateTime.Now }; _context.Categories.Add(cate); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } catch { return(new ApiErrorResult <bool>("Thêm thất bại")); } }
public async Task <ApiResult <bool> > ChangeStatus(int id) { try { var result = await _context.Slides.FindAsync(id); if (result != null) { if (result.status) { result.status = false; } else { result.status = true; } await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } else { return(new ApiErrorResult <bool>("Không tìm thấy Slide này")); } } catch { return(new ApiErrorResult <bool>("Cập nhật thất bại")); } }
public async Task <ApiResult <bool> > ChangeStatus(int id) { try { var brandExist = await _context.Brands.FindAsync(id); if (brandExist != null || brandExist.isDelete) { if (brandExist.isActive) { brandExist.isActive = false; } else { brandExist.isActive = true; } brandExist.update_at = DateTime.Now; await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } else { return(new ApiErrorResult <bool>("Không tìm thấy thương hiệu này")); } } catch { return(new ApiErrorResult <bool>("Cập nhật thất bại")); } }
public async Task <ApiResult <bool> > ChangeStatus(int id) { try { var payment = await _context.PaymentMethods.FindAsync(id); if (payment != null) { if (payment.isActive) { payment.isActive = false; } else { payment.isActive = true; } await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } else { return(new ApiErrorResult <bool>("Không tìm thấy phương thức này")); } } catch { return(new ApiErrorResult <bool>("Cập nhật thất bại")); } }
public async Task <ApiResult <bool> > Create(CustomerCreateRequest request) { try { SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider(); byte[] password_bytes = Encoding.ASCII.GetBytes(request.password); byte[] encrypted_bytes = sha1.ComputeHash(password_bytes); request.password = Convert.ToBase64String(encrypted_bytes); string addressCustomer = request.House + " " + request.Ward + ", " + request.District + ", " + request.City; var customer = new TechShopSolution.Data.Entities.Customer { name = request.name, address = addressCustomer, birthday = request.birthday, email = request.email, password = request.password, phone = request.phone, sex = request.sex, isActive = request.isActive, isDelete = false, create_at = DateTime.Now }; _context.Customers.Add(customer); await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } catch { return(new ApiErrorResult <bool>("Thêm thất bại")); } }
public async Task <ApiResult <bool> > ChangeStatus(int id) { try { var result = await _context.Transporters.FindAsync(id); if (result != null) { if (result.isActive) { result.isActive = false; } else { result.isActive = true; } await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } else { return(new ApiErrorResult <bool>("Không tìm thấy đơn vị vận chuyển này")); } } catch { return(new ApiErrorResult <bool>("Cập nhật thất bại")); } }
public async Task <ApiResult <bool> > Update(ContactUpdateRequest request) { try { var result = await _context.Contacts.FindAsync(request.id); if (result != null) { if (request.company_logo != null) { await _storageService.DeleteFileAsync(result.company_logo); result.company_logo = await this.SaveFile(request.company_logo); } result.adress = request.adress; result.company_name = request.company_name; result.email = request.email; result.fax = request.fax; result.hotline = request.hotline; result.phone = request.phone; result.social_fb = request.social_fb; result.social_instagram = request.social_instagram; result.social_twitter = request.social_twitter; result.social_youtube = request.social_youtube; await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); } else { return(new ApiErrorResult <bool>("Dữ liệu liên hệ trống")); } } catch { return(new ApiErrorResult <bool>("Cập nhật thất bại")); } }
public async Task <ApiResult <bool> > Create(ProductCreateRequest request) { var product = new TechShopSolution.Data.Entities.Product { name = request.Name, best_seller = request.Best_seller, brand_id = request.Brand_id, code = request.Code, create_at = DateTime.Now, descriptions = request.Descriptions, featured = request.Featured, instock = request.Instock, meta_descriptions = request.Meta_descriptions, meta_keywords = request.Meta_keywords, meta_tittle = request.Meta_tittle, promotion_price = !string.IsNullOrWhiteSpace(request.Promotion_price) ? decimal.Parse(request.Promotion_price) : 0, short_desc = request.Short_desc, slug = request.Slug, specifications = request.Specifications, isActive = request.IsActive, isDelete = false, unit_price = decimal.Parse(request.Unit_price), warranty = request.Warranty != null ? (int)request.Warranty : 0, }; if (request.Image != null) { product.image = await this.SaveFile(request.Image); } if (request.More_images != null) { if (request.More_images.Count == 1) { product.more_images = await this.SaveFile(request.More_images[0]); } else { for (int i = 0; i < request.More_images.Count(); i++) { product.more_images += await this.SaveFile(request.More_images[i]) + ","; } } } _context.Products.Add(product); await _context.SaveChangesAsync(); string[] cateIDs = request.CateID.Split(","); foreach (string cateID in cateIDs) { if (cateID != "") { var productInCategory = new TechShopSolution.Data.Entities.CategoryProduct { cate_id = int.Parse(cateID), product_id = product.id }; _context.CategoryProducts.Add(productInCategory); } } await _context.SaveChangesAsync(); return(new ApiSuccessResult <bool>()); }
public async Task <ApiResult <string> > Create(CheckoutRequest request) { using (var dbContextTransaction = _context.Database.BeginTransaction()) { try { var customer = await _context.Customers.FindAsync(request.Order.cus_id); if (customer == null) { return(new ApiErrorResult <string>("Không tìm thấy tài khoản này của bạn trong CSDL, liên hệ QTV để biết thêm chi tiết")); } else if (customer.isDelete) { return(new ApiErrorResult <string>("Tài khoản của bạn đã bị xóa, liên hệ QTV để biết thêm chi tiết")); } else if (!customer.isActive) { return(new ApiErrorResult <string>("Tài khoản của bạn đã bị khóa, không thể mua hàng ngay bây giờ")); } else { if (customer.address == "") { customer.address = request.Order.address_receiver; } } foreach (var item in request.OrderDetails) { var product = await _context.Products.FindAsync(item.product_id); if (product != null) { if (product.isDelete) { return(new ApiErrorResult <string>("Một sản phẩm trong giỏ hàng của bạn đã bị xóa vui lòng kiểm tra lại giỏ hàng.")); } else if (!product.isActive) { return(new ApiErrorResult <string>("Một sản phẩm trong giỏ hàng của bạn đã bị khóa vui lòng kiểm tra lại giỏ hàng.")); } if (product.instock != null) { if (product.instock == 0) { return(new ApiErrorResult <string>("Một sản phẩm trong giỏ hàng của bạn đã hết hàng vui lòng bỏ sản phẩm ra khỏi giỏ hàng.")); } else { product.instock = product.instock - item.quantity; } } } else { return(new ApiErrorResult <string>("Một sản phẩm trong giỏ hàng của bạn không tồn tại vui lòng kiểm tra lại giỏ hàng.")); } } int coupon_id = 0; if (request.Order.coupon_code != null) { var coupon = await _context.Coupons.Where(x => x.code.Equals(request.Order.coupon_code)).FirstOrDefaultAsync(); if (coupon != null) { if (coupon.start_at > DateTime.Today || coupon.end_at < DateTime.Today) { return(new ApiErrorResult <string>("Mã giảm giá hiện không khả dụng, vui lòng kiểm tra lại")); } else if (!coupon.isActive) { return(new ApiErrorResult <string>("Mã giảm giá đã bị vô hiệu hóa, vui lòng kiểm tra lại")); } else if (coupon.quantity == 0) { return(new ApiErrorResult <string>("Mã giảm giá đã được sử dụng hết, vui lòng kiểm tra lại")); } coupon_id = coupon.id; if (coupon.quantity != 0 && coupon.quantity != null) { coupon.quantity = coupon.quantity - 1; } } } var order = new TechShopSolution.Data.Entities.Order { address_receiver = request.Order.address_receiver, coupon_id = coupon_id == 0 ? (int?)null : coupon_id, create_at = DateTime.Now, transport_fee = request.Order.transport_fee == null ? 0 : (decimal)request.Order.transport_fee, cus_id = request.Order.cus_id, discount = request.Order.discount, isPay = false, payment_id = (int)request.Order.payment_id, name_receiver = request.Order.name_receiver, note = request.Order.note, phone_receiver = request.Order.phone_receiver, status = 0, total = request.Order.total, }; _context.Orders.Add(order); await _context.SaveChangesAsync(); foreach (var item in request.OrderDetails) { var detail = new TechShopSolution.Data.Entities.OrderDetail { order_id = order.id, product_id = item.product_id, promotion_price = item.promotion_price, quantity = item.quantity, unit_price = item.unit_price, }; _context.OrDetails.Add(detail); } await _context.SaveChangesAsync(); dbContextTransaction.Commit(); return(new ApiSuccessResult <string>(order.id.ToString())); } catch { dbContextTransaction.Rollback(); return(new ApiErrorResult <string>("Tạo đơn đặt hàng thất bại, quý khách vui lòng thử lại sau")); } } }