public async Task <ActionResult <Comment> > Excute() { AssigndataUtils AssigndataUtils = new AssigndataUtils(); var _context = new TGDDContext(); var comment = AssigndataUtils.AssignComment(commentDTO, 0); _context.Comments.Add(comment); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { bool commentExist = _context.Comments.Any(e => e.Id == comment.Id); if (commentExist) { return(Conflict()); } else { throw; } } return(CreatedAtAction("GetComments", new { id = comment.Id }, comment)); }
public async Task <ActionResult <Voucher> > Excute() { AssigndataUtils AssigndataUtils = new AssigndataUtils(); Voucher newVoucher = AssigndataUtils.AssignVoucher(voucherDTO, 0); var _context = new TGDDContext(); _context.Vouchers.Add(newVoucher); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { bool voucherExist = _context.Vouchers.Any(voucher => voucher.Id == newVoucher.Id); if (voucherExist) { return(Conflict()); } else { throw; } } return(CreatedAtAction("GetVoucher", new { id = newVoucher.Id }, newVoucher)); }
public async Task <IActionResult> Excute() { AssigndataUtils AssigndataUtils = new AssigndataUtils(); var _context = new TGDDContext(); Voucher voucherUpdate = AssigndataUtils.AssignVoucher(voucherDTO, voucherDTO.Id); _context.Entry(voucherUpdate).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { bool voucherExist = _context.Vouchers.Any(voucher => voucher.Id == voucherUpdate.Id); if (!voucherExist) { return(NotFound()); } else { throw; } } return(Ok("Update Voucher thành công !")); }
public async Task <ActionResult <Product> > Excute() { AssigndataUtils AssigndataUtils = new AssigndataUtils(); var _context = new TGDDContext(); Product newProduct = await AssigndataUtils.AssignProduct(productDTO, 0); _context.Products.Add(newProduct); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { bool productExist = _context.Products.Any(p => p.Id == newProduct.Id); if (productExist) { return(Conflict()); } else { throw; } } return(CreatedAtAction("GetProducts", new { id = newProduct.Id }, newProduct)); }
public async Task <IActionResult> Excute() { //if (id != comments.Id) //{ // return BadRequest(); //} AssigndataUtils AssigndataUtils = new AssigndataUtils(); var _context = new TGDDContext(); Comment comment = AssigndataUtils.AssignComment(CommentDTO, CommentId); _context.Entry(comment).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { bool commentExist = _context.Comments.Any(e => e.Id == CommentId); if (!commentExist) { return(NotFound("Không tìm thấy comment!")); } else { throw; } } return(Ok("Chỉnh sửa thành công !")); }
public async Task <IActionResult> Excute() { AssigndataUtils AssigndataUtils = new AssigndataUtils(); var _context = new TGDDContext(); var order = new Order(); order = await AssigndataUtils.AssignOrder(OrderDTO, Id); if (order.StatusId == 4) { ProductsAutoUpdate productsAutoUpdate = new ProductsAutoUpdate(); List <OrderDetail> orderDetails = order.OrderDetails.ToList(); foreach (OrderDetail orderDetail in orderDetails) { Product product = await _context.Products.FindAsync(orderDetail.ProductId); product.BuyingTimes -= orderDetail.Quantity; product.Stock += orderDetail.Quantity; _context.Entry(product).State = EntityState.Modified; } await _context.SaveChangesAsync(); } _context.Entry(order).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { bool orderExist = _context.Orders.Any(o => o.Id == order.Id); if (!orderExist) { return(NotFound()); } else { throw; } } return(Ok("Cập nhật thành công !")); }
public async Task <IActionResult> Excute() { AssigndataUtils AssigndataUtils = new AssigndataUtils(); var _context = new TGDDContext(); Product pro = await AssigndataUtils.AssignProduct(ProductDTO, id); //List<Description> tmp = pro.Descriptions.ToList() ; //foreach(Description description in tmp) //{ // _context.Entry((Description)description) = EntityState.Modified; //} _context.Entry(pro).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { bool productExist = _context.Products.Any(p => p.Id == pro.Id); if (!productExist) { return(NotFound()); } else { throw; } } return(StatusCode(200)); }
public async Task <ActionResult <Order> > Excute() { AssigndataUtils AssigndataUtils = new AssigndataUtils(); var _context = new TGDDContext(); var order = new Order(); order = await AssigndataUtils.AssignOrder(OrderDTO, 0); // update stock, buying time { ProductsAutoUpdate productsAutoUpdate = new ProductsAutoUpdate(); List <OrderDetail> orderDetails = order.OrderDetails.ToList(); foreach (OrderDetail orderDetail in orderDetails) { Product product = await _context.Products.FindAsync(orderDetail.ProductId); product.BuyingTimes += orderDetail.Quantity; product.Stock -= orderDetail.Quantity; _context.Entry(product).State = EntityState.Modified; } await _context.SaveChangesAsync(); } //thống kê _context.Orders.Add(order); try { await _context.SaveChangesAsync(); } catch (DbUpdateException) { bool orderExist = _context.Orders.Any(o => o.Id == order.Id); if (orderExist) { return(Conflict()); } else { throw; } } { DateTime dateTime = order.Date.Value; int day = dateTime.DayOfYear; int week = dateTime.DayOfYear / 7 - 1; if (week < 1) { week = 1; } else if (week > 52) { week = 52; } int month = dateTime.Month; int year = dateTime.Year; YearStatistical yearStatisticals = await _context.YearStatisticals.FirstOrDefaultAsync(y => y.Year == year); if (yearStatisticals != null) { yearStatisticals.TotalYear += order.Total; _context.Entry(yearStatisticals).State = EntityState.Modified; await _context.SaveChangesAsync(); MonthStatistical monthStatistical = await _context.MonthStatisticals.FirstOrDefaultAsync(m => m.Month == month && m.YearId == yearStatisticals.Id); if (monthStatistical != null) { monthStatistical.TotalMonth += order.Total; _context.Entry(monthStatistical).State = EntityState.Modified; await _context.SaveChangesAsync(); WeekStatistical weekStatistical = await _context.WeekStatisticals.FirstOrDefaultAsync(w => w.Week == week && yearStatisticals.Id == w.YearId); if (weekStatistical != null) { weekStatistical.TotalWeek += order.Total; _context.Entry(weekStatistical).State = EntityState.Modified; await _context.SaveChangesAsync(); //DayStatistical dayStatistical = await _context.DayStatisticals.FirstOrDefaultAsync(d => d.Day == day && d.YearId == yearStatisticals.Id); } else { long MonthId = _context.MonthStatisticals.Max(m => m.Id) + 1; long WeekId = _context.WeekStatisticals.Max(w => w.Id) + 1; newWeek(order, _context, yearStatisticals.Id, MonthId, week); //newday(order, _context, yearStatisticals.Id, MonthId, WeekId, day); } } else { long MonthId = _context.MonthStatisticals.Max(m => m.Id) + 1; long WeekId = _context.WeekStatisticals.Max(w => w.Id) + 1; newMonth(order, _context, yearStatisticals.Id, month); newWeek(order, _context, yearStatisticals.Id, MonthId, week); //newday(order, _context, yearStatisticals.Id, MonthId, WeekId, day); } } else { long MonthId = _context.MonthStatisticals.Max(m => m.Id) + 1; long WeekId = _context.WeekStatisticals.Max(w => w.Id) + 1; newYear(order, _context, year); newMonth(order, _context, yearStatisticals.Id, month); newWeek(order, _context, yearStatisticals.Id, MonthId, week); //newday(order, _context, yearStatisticals.Id, MonthId, WeekId, day); } } return(CreatedAtAction("GetOrders", new { id = order.Id }, order)); }