예제 #1
0
        public IActionResult GetSales()
        {
            try
            {
                SalesResponse salesResponse = new SalesResponse();
                salesResponse.Sales     = _OnBoardingDbUnitOfWork.GetSalesRepository().GetAll();
                salesResponse.Customers = _OnBoardingDbUnitOfWork.GetCustomerRepository().GetAll();
                salesResponse.Stores    = _OnBoardingDbUnitOfWork.GetStoreRepository().GetAll();
                salesResponse.Products  = _OnBoardingDbUnitOfWork.GetProductRepository().GetAll();

                return(Ok(salesResponse));
            }
            catch (Exception ex)
            {
                return(BadRequest("Error while processing request:" + ex.Message));
            }
        }
예제 #2
0
        public IActionResult GetById(int Id)
        {
            try
            {
                SalesResponse salesResponse = new SalesResponse();
                salesResponse.Sales     = _OnBoardingDbUnitOfWork.GetSalesRepository().GetAll();
                salesResponse.Customers = _OnBoardingDbUnitOfWork.GetCustomerRepository().GetAll();
                salesResponse.Stores    = _OnBoardingDbUnitOfWork.GetStoreRepository().GetAll();
                salesResponse.Products  = _OnBoardingDbUnitOfWork.GetProductRepository().GetAll();
                salesResponse.Sale      = _OnBoardingDbUnitOfWork.GetSalesRepository().GetById(Id);

                if (salesResponse == null)
                {
                    return(NotFound("The Sales record couldn't be found."));
                }
                return(Ok(salesResponse));
            }
            catch (Exception ex)
            {
                return(BadRequest("Error while processing request:" + ex.Message));
            }
        }
예제 #3
0
        /**
         * POST request that inserts a sale
         */
        public SalesResponse insertSale(sale sal)
        {
            MedicinesbySalesRepository        msrep    = new MedicinesbySalesRepository();
            MedicinesbySubsidiariesRepository mssubrep = new MedicinesbySubsidiariesRepository();
            SalesResponse res = new SalesResponse();

            res.success     = true;
            res.code        = "1";
            res.message     = "SUCCESSFUL";
            res.id_inserted = -1;
            try
            {
                var query = "SELECT addsale(" + sal.total.ToString("0.00", System.Globalization.CultureInfo.InvariantCulture) + ",'" + sal.sale_date.ToString("yyyy-MM-dd HH:mm") + "'," + sal.client + "," + sal.payment_type + "," + sal.employee + "," + sal.subsidiary + "," + sal.cash + ");";
                _context.Database.SqlQuery <Int32>(query).FirstOrDefault();
                var query2 = "SELECT getlastsaleid();";
                res.id_inserted = _context.Database.SqlQuery <Int32>(query2).FirstOrDefault();
                for (int i = 0; i < sal.medicines.Count(); i++)
                {
                    sal.medicines[i].sale = res.id_inserted;
                    msrep.insertMedicinebySale(sal.medicines[i]);
                    var query3 = "SELECT * FROM getmedicine_by_subsidiary(" + sal.medicines[i].medicine + "," + sal.subsidiary + ");";
                    medicine_by_subsidiary ms = new medicine_by_subsidiary();
                    ms = _context.Database.SqlQuery <medicine_by_subsidiary>(query3).FirstOrDefault();
                    int a      = ms.quantity - sal.medicines[i].quantity;
                    var query4 = "SELECT updatemedicine_by_subsidiary(" + sal.medicines[i].medicine + "," + sal.subsidiary + "," + a + "," + ms.stock_promedio + "," + ms.stock_minimo + ");";
                    _context.Database.SqlQuery <Int32>(query4).FirstOrDefault();
                }
            }
            catch (NpgsqlException ex)
            {
                res.success = false;
                res.code    = ex.Code;
                res.message = ex.BaseMessage;
            }
            return(res);
        }