public int Insert_Detail_Bill(addBillAndBilldetailParam model1)
        {
            int    idbill = 0;
            string status;

            startdate = DateTime.ParseExact(model1.bill.Date, format, CultureInfo.InvariantCulture);
            using (var transaction = context.Database.BeginTransaction())
            {
                try
                {
                    var count      = context.Bill.Count();
                    int num        = count + 1;
                    var name       = "Bill-";
                    var NumberBill = name + num;
                    var bill       = new Bill()

                    {
                        PriceBefore   = model1.bill.PriceBefore,
                        TotalDiscount = model1.bill.TotalDiscount,
                        PriceAfter    = model1.bill.PriceAfter,
                        Date          = startdate,
                        NumberBill    = NumberBill,
                    };
                    context.Bill.Add(bill);
                    context.SaveChanges();

                    idbill = bill.IdBill;

                    foreach (var data in model1.detail.ToList())
                    {
                        var billdetails = new BillDetail()
                        {
                            IdProduct  = data.IdProduct,
                            Count      = data.Count,
                            Discount   = data.Discount,
                            TotalPrice = data.TotalPrice,
                            LastPrice  = data.LastPrice,
                            IdBill     = idbill
                        };
                        context.BillDetail.Add(billdetails);
                        context.SaveChanges();
                    }
                    transaction.Commit();
                }
                catch (Exception)
                {
                    transaction.Rollback();
                }
            }
            return(idbill);
        }
Esempio n. 2
0
        public IActionResult Insert_detail_bill([FromBody] addBillAndBilldetailParam model1)
        {
            string status;
            int    idbill = repository_transaction.Insert_Detail_Bill(model1);

            if (idbill == 0)
            {
                status = constant.ERROR;
            }
            else
            {
                status = constant.SUCCEES;
            }
            var objData = new { idbill, status };

            return(Json(objData));
        }