Ejemplo n.º 1
0
        // GET: api/ProductAmount
        public HttpResponseMessage Get(string token)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Validate storeID
                        var ItemsAttributeList = database.ProductAmounts.Where(x => x.StoreID == session.StoreID).ToList();
                        var message            = Request.CreateResponse(HttpStatusCode.OK, ItemsAttributeList);
                        return(message);
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 2
0
 // GET: api/Products
 public IQueryable <ProductTable> GetProductTable()
 {
     using (CompanyPosDBContext database = new CompanyPosDBContext())
     {
         return(database.ProductTables);
     }
 }
Ejemplo n.º 3
0
        private Session saveSession(User userEntity)
        {
            using (CompanyPosDBContext database = new CompanyPosDBContext())
            {
                Session session = (database.Sessions.ToList().FirstOrDefault(x => x.UserID == userEntity.ID));

                if (session == null)
                {
                    session = new Session();
                    //Save Session
                    session.StoreID    = userEntity.StoreID;
                    session.TokenID    = DateTime.Now.GetHashCode().GetHashCode().ToString() + session.StoreID;
                    session.UserID     = userEntity.ID;
                    session.Created    = DateTime.Now;
                    session.LastUpdate = session.Created;
                    database.Sessions.Add(session);
                }
                else
                {
                    session.StoreID    = userEntity.StoreID;
                    session.TokenID    = DateTime.Now.GetHashCode().GetHashCode().ToString() + session.StoreID;
                    session.UserID     = userEntity.ID;
                    session.LastUpdate = DateTime.Now;
                    //not add because us an Update
                    //database.Sessions.Add(session);
                    database.Entry(session).State = System.Data.Entity.EntityState.Modified;
                    //2. call SaveChanges
                    database.SaveChanges();
                }
                return(session);
            }
        }
Ejemplo n.º 4
0
        public void Delete(int InvoiceID, int StoreID)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    //var Invoice = database.Invoices.FirstOrDefault(x => x.ID == InvoiceID && x.Sale.StoreID == StoreID);
                    var Invoice = database.Invoices.FirstOrDefault(x => x.ID == InvoiceID);

                    if (Invoice != null)
                    {
                        database.Invoices.Remove(Invoice);
                        database.SaveChanges();
                    }

                    //    var message = Request.CreateResponse(HttpStatusCode.OK, data);
                    //    return message;
                    //}
                    //else
                    //{
                    //    var message = Request.CreateResponse(HttpStatusCode.NotFound, "Invoice not found");
                    //    return message;
                    //}
                }
            }
            catch (Exception ex)
            {
                //  return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
            }
        }
Ejemplo n.º 5
0
        public HttpResponseMessage Get(string token, string start, string end)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    string[] startPart = start.Split('-');
                    DateTime startDate = new DateTime(Int32.Parse(startPart[0])
                                                      , Int32.Parse(startPart[1])
                                                      , Int32.Parse(startPart[2])
                                                      , Int32.Parse(startPart[3])
                                                      , Int32.Parse(startPart[4])
                                                      , Int32.Parse(startPart[5]));
                    string[] endPart = end.Split('-');
                    DateTime endDate = new DateTime(Int32.Parse(endPart[0])
                                                    , Int32.Parse(endPart[1])
                                                    , Int32.Parse(endPart[2])
                                                    , Int32.Parse(endPart[3])
                                                    , Int32.Parse(endPart[4])
                                                    , Int32.Parse(endPart[5]));

                    if (session != null)
                    {
                        //Validate storeID and FakturiID
                        var data = database.Fakturies.Where(x => (x.Date <= endDate) && (x.Date >= startDate) && (x.StoreID == session.StoreID)).ToList();
                        //le agrego la lista de c/u
                        data.ForEach(
                            x => x.Items = database.FakturiArticles.Where(y => y.FakturiID == x.ID).ToList()
                            );

                        if (data != null)
                        {
                            //Save last  update
                            session.LastUpdate = DateTime.Now;
                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.OK, data);
                            return(message);
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.NotFound, "Fakturi not found");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 6
0
        // DELETE: api/Menu/5
        // DELETE
        public HttpResponseMessage Delete(int id, string token)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Save last  update
                        session.LastUpdate = DateTime.Now;

                        Menu menu = database.Menues.ToList().FirstOrDefault(x => x.ID == id && (x.StoreID == session.StoreID));

                        if (menu == null)
                        {
                            return(Request.CreateErrorResponse(HttpStatusCode.NotFound,
                                                               "Menu with Id = " + id.ToString() + " not found to delete"));
                        }
                        else
                        {
                            database.Menues.Remove(menu);
                            //SAVE ACTIVITY
                            database.UserActivities.Add(new UserActivity()
                            {
                                StoreID = session.StoreID
                                ,
                                UserID = session.UserID
                                ,
                                Activity = "DELETE MENU",
                                Date     = DateTime.Now
                            });

                            database.SaveChanges();
                            var message = Request.CreateResponse(HttpStatusCode.OK, "Delete Success");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (DbUpdateException dbEx)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 7
0
        // GET: api/Store/5
        //READ
        //It should have permissions
        public HttpResponseMessage GetCompanyUsers(string token, int companyID)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);


                    var SessionUser = database.Users.FirstOrDefault(x => x.ID == session.UserID);

                    if (session != null)
                    {
                        if (SessionUser.UserLevel.ToLower() == "admin")
                        {
                            //Validate storeID and UserID
                            List <User> userList = database.Users.Where(x => (x.CompanyID == companyID)).ToList();
                            if (userList != null)
                            {
                                //Save last  update
                                session.LastUpdate = DateTime.Now;
                                database.SaveChanges();

                                var message = Request.CreateResponse(HttpStatusCode.OK, userList);
                                return(message);
                            }
                            else
                            {
                                var message = Request.CreateResponse(HttpStatusCode.NotFound, "Users not found");
                                return(message);
                            }
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "You don't have privileges");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 8
0
 public List <ItemPurchase> ReadAll(int StoreID, int SaleID)
 {
     try
     {
         using (CompanyPosDBContext database = new CompanyPosDBContext())
         {
             var ItemPurchaseList = database.ItemPurchases.Where(x => x.StoreID == StoreID && x.SaleID == SaleID).ToList();
             return(ItemPurchaseList);
         }
     }
     catch (Exception)
     {
         return(null);
     }
 }
Ejemplo n.º 9
0
        // POST: api/Company
        //CREATE
        public HttpResponseMessage Post([FromBody] Company Company)
        {
            string errorStatus = " ";

            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();

                    errorStatus += " Before Find similar Company || ";
                    var currentCompany = database.Companies.ToList().FirstOrDefault(x => x.Name == Company.Name);
                    if (currentCompany != null)
                    {
                        database.SaveChanges();
                        var message = Request.CreateResponse(HttpStatusCode.OK, "There is a Company with this name");
                        return(message);
                    }
                    else
                    {
                        database.Companies.Add(Company);

                        errorStatus += " Before adding in the db || ";
                        database.SaveChanges();

                        var message = Request.CreateResponse(HttpStatusCode.Created, "Create Success");
                        return(message);
                    }
                }
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               validationError.ErrorMessage);
                    }
                }
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex + " || " + errorStatus));
            }
        }
Ejemplo n.º 10
0
        // PUT: api/Session/5
        public HttpResponseMessage PutLogout([FromBody] Session Session)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    Session session = database.Sessions.ToList().LastOrDefault(x => x.TokenID.Trim().Equals(Session.TokenID.Trim()));
                    if (session != null)
                    {
                        database.Sessions.Remove(session);

                        //SAVE ACTIVITY
                        database.UserActivities.Add(new UserActivity()
                        {
                            StoreID = session.StoreID
                            ,
                            UserID = session.UserID
                            ,
                            Activity = "LOGOUT",
                            Date     = DateTime.Now
                        }
                                                    );

                        database.SaveChanges();
                        if (!string.IsNullOrEmpty(session.UUID))
                        {
                            Dispositives disp = database.Dispositives.Where(x => x.PinNumber.Equals((int)session.PinNumber) &&
                                                                            x.Active.Equals(true) &&
                                                                            x.UUID.Equals(session.UUID))
                                                .FirstOrDefault();
                            User userEntity = database.Users.Find(session.UserID);
                            removeDispositive(disp.UUID, userEntity.ID);
                        }

                        return(Request.CreateResponse(HttpStatusCode.OK, "Logout Succesfully"));
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.NoContent, "Nothing to Delete"));
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 11
0
        // GET: api/Shift
        public HttpResponseMessage Get(string token, string period)
        {
            try
            {
                string[] dPart = period.Split('-');
                DateTime date  = new DateTime(Int32.Parse(dPart[0])
                                              , Int32.Parse(dPart[1])
                                              , Int32.Parse(dPart[2])
                                              , Int32.Parse(dPart[3])
                                              , Int32.Parse(dPart[4])
                                              , Int32.Parse(dPart[5]));
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Validate storeID and ShiftID
                        var data = database.Shifts.ToList().Where(x => (x.TimeStart <= date) && (x.TimeEnd >= date) && (x.StoreID == session.StoreID));
                        if (data != null)
                        {
                            //Save last  update
                            session.LastUpdate = DateTime.Now;
                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.OK, data);
                            return(message);
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.NotFound, "Shift not found");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 12
0
 //GET
 //api/Session/
 public HttpResponseMessage GetAll(string token)
 {
     try
     {
         using (CompanyPosDBContext database = new CompanyPosDBContext())
         {
             SessionController sessionController = new SessionController();
             Session           session           = sessionController.Autenticate(token);
             if (session != null)
             {
                 var SessionUser = database.Users.FirstOrDefault(x => x.ID == session.UserID);
                 if (SessionUser.UserLevel.ToLower() == "admin")
                 {
                     var sessionList = database.Sessions.ToList();
                     var message     = Request.CreateResponse(HttpStatusCode.OK, sessionList);
                     return(message);
                 }
                 else
                 {
                     return(Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "You don't have privileges"));
                 }
             }
             else
             {
                 return(Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session"));
             }
         }
     }
     catch (DbEntityValidationException dbEx)
     {
         foreach (var validationErrors in dbEx.EntityValidationErrors)
         {
             foreach (var validationError in validationErrors.ValidationErrors)
             {
                 Trace.TraceInformation("Property: {0} Error: {1}",
                                        validationError.PropertyName,
                                        validationError.ErrorMessage);
             }
         }
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
     }
     catch (Exception ex)
     {
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
     }
 }
Ejemplo n.º 13
0
        // PUT: api/Company/5
        //UPDATE
        public HttpResponseMessage Put(int id, [FromBody] Company Company)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    var currentCompany = database.Companies.ToList().FirstOrDefault(x => x.Id == id);

                    if (currentCompany != null)
                    {
                        currentCompany.Name        = Company.Name;
                        currentCompany.Address     = Company.Address;
                        currentCompany.Email       = Company.Email;
                        currentCompany.Phone       = Company.Phone;
                        currentCompany.BankAccount = Company.BankAccount;
                        currentCompany.Bulstat_Eik = Company.Bulstat_Eik;

                        database.SaveChanges();
                        var message = Request.CreateResponse(HttpStatusCode.OK, "Update Success");
                        return(message);
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.OK, "Company Not found");
                        return(message);
                    }
                }
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               validationError.ErrorMessage);
                    }
                }
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 14
0
        public HttpResponseMessage Get(string token, string InvoiceNumber, bool active = true)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Validate storeID and FakturiID
                        var data = database.Fakturies.ToList().FirstOrDefault(x => (x.InvoiceNumber == InvoiceNumber) &&
                                                                              (x.StoreID == session.StoreID));

                        //le agrego la lista de c/u
                        data.Items = database.FakturiArticles.Where(y => y.FakturiID == data.ID).ToList();

                        if (data != null)
                        {
                            data.Items = database.FakturiArticles.Where(x => x.FakturiID == data.ID).ToList();
                            //Save last  update
                            session.LastUpdate = DateTime.Now;
                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.OK, data);
                            return(message);
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.NotFound, "Fakturi not found");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 15
0
        // GET: api/Store/5
        //READ
        public HttpResponseMessage Get(string token, int id)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        var SessionUser = database.Users.FirstOrDefault(x => x.ID == session.UserID);

                        //Validate storeID and UserID
                        User user = database.Users.ToList().FirstOrDefault(x => (x.ID == id) &&
                                                                           ((x.StoreID == session.StoreID) || ((SessionUser.Type.ToLower() == "owner") && SessionUser.CompanyID == x.CompanyID))
                                                                           );
                        if (user != null)
                        {
                            //Save last  update
                            session.LastUpdate = DateTime.Now;

                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.OK, user);
                            return(message);
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.NotFound, "User not found");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 16
0
        public List <Invoice> ReadAll(int StoreID, int SaleID)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    //var InvoiceList = database.Invoices.Where(x => x.Sale.StoreID == StoreID && x.SaleID == SaleID).ToList();
                    var InvoiceList = database.Invoices.Where(x => x.SaleID == SaleID).ToList();

                    return(InvoiceList);
                }
            }
            catch (Exception ex)
            {
                return(null);
                //  return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
            }
        }
Ejemplo n.º 17
0
        private void removeDispositive(string UUID, int UserID)
        {
            using (CompanyPosDBContext database = new CompanyPosDBContext())
            {
                var dispositives = (from disp in database.Dispositives
                                    where disp.UUID.Equals(UUID) && disp.UserID.Equals(UserID)
                                    select disp).ToList();

                foreach (var disp in dispositives)
                {
                    //1. set values
                    disp.Active = false;
                    //2. Mark entity as modified
                    database.Entry(disp).State = System.Data.Entity.EntityState.Modified;
                    //2. call SaveChanges
                    database.SaveChanges();
                }
            }
        }
Ejemplo n.º 18
0
        //// GET: api/Products
        //public IQueryable<Category> GetCategories()
        //{
        //	using (CompanyPosDBContext database = new CompanyPosDBContext())
        //	{
        //		return database.Categories;
        //	}
        //}

        // GET: api/Category
        public HttpResponseMessage Get(string token)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Validate storeID and CategoryID
                        var data = database.Categories.ToList().Where(x => (x.StoreID == session.StoreID));

                        if (data != null)
                        {
                            //Save last  update
                            session.LastUpdate = DateTime.Now;
                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.OK, data);
                            return(message);
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.NotFound, "Category not found");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 19
0
        // GET: api/ProductAmount/5
        public HttpResponseMessage Get(string token, int id)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Validate storeID
                        var ProductAmount = database.ProductAmounts.FirstOrDefault(x => (x.ID == id) && (x.StoreID == session.StoreID));

                        if (ProductAmount != null)
                        {
                            //Save last  update
                            session.LastUpdate = DateTime.Now;
                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.OK, ProductAmount);
                            return(message);
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.NotFound, "ProductAmount not found");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 20
0
        // GET: api/Company/
        //public HttpResponseMessage GetAll()
        //{
        //	try
        //	{
        //		using (CompanyPosDBContext database = new CompanyPosDBContext())
        //		{
        //			//Validate storeID and CompanyID
        //			var data = database.Companies.ToList();
        //			if (data != null)
        //			{
        //				var message = Request.CreateResponse(HttpStatusCode.OK, data);
        //				return message;
        //			}
        //			else
        //			{
        //				var message = Request.CreateResponse(HttpStatusCode.NotFound, "Companies not found");
        //				return message;
        //			}
        //		}
        //	}
        //	catch (Exception ex)
        //	{
        //		return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
        //	}
        //}

        // GET: api/Company/5
        public HttpResponseMessage GetCompany(int id, string token)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);
                    if (session != null)
                    {
                        var SessionUser = database.Users.FirstOrDefault(x => x.ID == session.UserID);
                        if (SessionUser.UserLevel.ToLower() == "admin")
                        {
                            //Validate storeID and CompanyID
                            var data = database.Companies.ToList().FirstOrDefault(x => (x.Id == id));
                            if (data != null)
                            {
                                return(Request.CreateResponse(HttpStatusCode.OK, data));
                            }
                            else
                            {
                                return(Request.CreateResponse(HttpStatusCode.NotFound, "Company not found"));
                            }
                        }
                        else
                        {
                            return(Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "You don't have privileges"));
                        }
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session"));
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 21
0
        //// GET: api/Store
        //public HttpResponseMessage Get()
        //{
        //	try
        //	{
        //		using (CompanyPosDBContext database = new CompanyPosDBContext())
        //		{
        //			List<Store> storeList = database.Stores.ToList();

        //			if (storeList != null)
        //			{
        //				var message = Request.CreateResponse(HttpStatusCode.OK, storeList);
        //				return message;
        //			}
        //			else
        //			{
        //				var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
        //				return message;
        //			}
        //		}
        //	}
        //	catch (Exception ex)
        //	{
        //		return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
        //	}
        //}

        // GET: api/Store/5
        public HttpResponseMessage GetRead(string token, int id)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        Store store = database.Stores.ToList().FirstOrDefault(x => (x.ID == id));
                        if (store != null)
                        {
                            //Save last  update
                            session.LastUpdate = DateTime.Now;

                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.OK, store);
                            return(message);
                        }
                        else
                        {
                            var message = Request.CreateResponse(HttpStatusCode.NoContent, "No asociated Store");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 22
0
        public void Create(int StoreID, int SaleID, DateTime Date, string PaymentMethod, string TotalPrice, decimal?TotalPaid, int PaymentsNumber, decimal?AmountPaid)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    database.Invoices.Add(new Invoice()
                    {
                        //StoreID = StoreID
                        //,
                        SaleID = SaleID
                        ,
                        Date = Date
                        ,
                        PaymentMethod = PaymentMethod
                        ,
                        AmountPaid = AmountPaid
                    });



                    database.SaveChanges();


                    //    var message = Request.CreateResponse(HttpStatusCode.OK, data);
                    //    return message;
                    //}
                    //else
                    //{
                    //    var message = Request.CreateResponse(HttpStatusCode.NotFound, "Invoice not found");
                    //    return message;
                    //}
                }
            }
            catch (Exception ex)
            {
                //  return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
            }
        }
Ejemplo n.º 23
0
 public Session Autenticate(string token)
 {
     try
     {
         using (CompanyPosDBContext database = new CompanyPosDBContext())
         {
             Session session = database.Sessions.ToList().FirstOrDefault(x => x.TokenID.Trim().Equals(token.Trim()));
             if (session != null)
             {
                 return(session);
             }
             else
             {
                 return(null);
             }
         }
     }
     catch (Exception ex)
     {
         return(null);
     }
 }
Ejemplo n.º 24
0
 // DELETE: api/Company/5
 //DELETE
 public HttpResponseMessage Delete(int id)
 {
     try
     {
         using (CompanyPosDBContext database = new CompanyPosDBContext())
         {
             var Company = database.Companies.ToList().FirstOrDefault(x => x.Id == id);
             if (Company == null)
             {
                 return(Request.CreateErrorResponse(HttpStatusCode.NotFound,
                                                    "Company with Id = " + id.ToString() + " not found to delete"));
             }
             else
             {
                 database.Companies.Remove(Company);
                 database.SaveChanges();
                 var message = Request.CreateResponse(HttpStatusCode.OK, "Delete Success");
                 return(message);
             }
         }
     }
     catch (DbEntityValidationException dbEx)
     {
         foreach (var validationErrors in dbEx.EntityValidationErrors)
         {
             foreach (var validationError in validationErrors.ValidationErrors)
             {
                 Trace.TraceInformation("Property: {0} Error: {1}",
                                        validationError.PropertyName,
                                        validationError.ErrorMessage);
             }
         }
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
     }
     catch (Exception ex)
     {
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
     }
 }
Ejemplo n.º 25
0
        public void Create(int StoreID, int ItemID, int SaleID, int Quantity, string Discount, string TotalPrice)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    database.ItemPurchases.Add(new ItemPurchase()
                    {
                        // StoreID = StoreID
                        // ,
                        ItemID = ItemID
                        ,
                        SaleID = SaleID
                        ,
                        Quantity = Quantity
                        ,
                        Discount = Discount
                        ,
                        TotalPrice = TotalPrice
                    });

                    database.SaveChanges();

                    //    var message = Request.CreateResponse(HttpStatusCode.OK, data);
                    //    return message;
                    //}
                    //else
                    //{
                    //    var message = Request.CreateResponse(HttpStatusCode.NotFound, "ItemPurchase not found");
                    //    return message;
                    //}
                }
            }
            catch (Exception ex)
            {
                //  return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
            }
        }
Ejemplo n.º 26
0
        public void Update(int ItemPurchaseID, int StoreID, int Quantity, string Discount, string TotalPrice)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    var ItemPurchase = database.ItemPurchases.FirstOrDefault(x => x.ID == ItemPurchaseID && x.StoreID == StoreID);

                    if (ItemPurchase != null)
                    {
                        ItemPurchase.Quantity   = Quantity;
                        ItemPurchase.Discount   = Discount;
                        ItemPurchase.TotalPrice = TotalPrice;
                        //Update
                        database.SaveChanges();
                    }
                }
            }
            catch (Exception ex)
            {
                //  return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
            }
        }
Ejemplo n.º 27
0
        public void Update(int InvoiceID, int StoreID, DateTime Date, string PaymentMethod, string TotalPrice)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    //var Invoice = database.Invoices.FirstOrDefault(x => x.ID == InvoiceID && x.Sale.StoreID == StoreID);
                    var Invoice = database.Invoices.FirstOrDefault(x => x.ID == InvoiceID);


                    if (Invoice != null)
                    {
                        Invoice.Date          = Date;
                        Invoice.PaymentMethod = PaymentMethod;
                        //Update
                        database.SaveChanges();
                    }
                }
            }
            catch (Exception ex)
            {
                //  return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex);
            }
        }
Ejemplo n.º 28
0
        // DELETE: api/Category/5
        //DELETE
        public HttpResponseMessage Delete(int id, string token)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Save last  update
                        session.LastUpdate = DateTime.Now;

                        var Category = database.Categories.ToList().FirstOrDefault(x => x.ID == id && (x.StoreID == session.StoreID));

                        if (Category == null)
                        {
                            return(Request.CreateErrorResponse(HttpStatusCode.NotFound,
                                                               "Category with Id = " + id.ToString() + " not found to delete"));
                        }
                        else
                        {
                            database.Categories.Remove(Category);
                            //SAVE ACTIVITY
                            database.UserActivities.Add(new UserActivity()
                            {
                                StoreID = session.StoreID
                                ,
                                UserID = session.UserID
                                ,
                                Activity = "DELETE Category"
                                ,
                                Date = DateTime.Now
                            });

                            database.SaveChanges();
                            var message = Request.CreateResponse(HttpStatusCode.OK, "Delete Success");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               validationError.ErrorMessage);
                    }
                }
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Ejemplo n.º 29
0
        // POST: api/Category
        //CREATE
        public HttpResponseMessage Post([FromBody] Category Category, string token)
        {
            string errorStatus = " ";

            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();

                    errorStatus += " Before Atutentication || ";
                    Session session = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Save last  update
                        session.LastUpdate = DateTime.Now;

                        errorStatus += " Before Find similar category || ";
                        var currentCategory = database.Categories.ToList().FirstOrDefault(x => x.Name.ToLower().Trim() == Category.Name.ToLower().Trim() && (x.StoreID == session.StoreID));
                        if (currentCategory != null)
                        {
                            database.SaveChanges();
                            var message = Request.CreateResponse(HttpStatusCode.OK, "There is a Category with this name");
                            return(message);
                        }
                        else
                        {
                            Category.StoreID = session.StoreID;
                            database.Categories.Add(Category);
                            //SAVE ACTIVITY
                            database.UserActivities.Add(new UserActivity()
                            {
                                StoreID = session.StoreID
                                ,
                                UserID = session.UserID
                                ,
                                Activity = "CREATE Category"
                                ,
                                Date = DateTime.Now
                            });

                            errorStatus += " Before adding in the db || ";
                            database.SaveChanges();

                            var message = Request.CreateResponse(HttpStatusCode.Created, "Create Success");
                            return(message);
                        }
                    }
                    else
                    {
                        var message = Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session");
                        return(message);
                    }
                }
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               validationError.ErrorMessage);
                    }
                }
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex + " || " + errorStatus));
            }
        }
Ejemplo n.º 30
0
        // PUT: api/Invoice/5
        //UPDATE
        public HttpResponseMessage Put(int id, [FromBody] Invoice Invoice, string token)
        {
            try
            {
                using (CompanyPosDBContext database = new CompanyPosDBContext())
                {
                    SessionController sessionController = new SessionController();
                    Session           session           = sessionController.Autenticate(token);

                    if (session != null)
                    {
                        //Save last  update
                        session.LastUpdate = DateTime.Now;

                        var currentInvoice = database.Invoices.ToList().FirstOrDefault(x => x.ID == id && (x.StoreID == session.StoreID));

                        if (currentInvoice != null)
                        {
                            currentInvoice.PaymentMethod = Invoice.PaymentMethod;

                            if (Invoice.Date == null)
                            {
                                return(Request.CreateResponse(HttpStatusCode.OK, "Date not found."));
                            }

                            //SAVE ACTIVITY
                            database.UserActivities.Add(new UserActivity()
                            {
                                StoreID = session.StoreID
                                ,
                                UserID = session.UserID
                                ,
                                Activity = "UPDATE Invoice",
                                Date     = DateTime.Now
                            });

                            //update sale



                            database.SaveChanges();
                            return(Request.CreateResponse(HttpStatusCode.OK, "Update Success"));
                        }
                        else
                        {
                            return(Request.CreateResponse(HttpStatusCode.OK, "Invoice Not found"));
                        }
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.MethodNotAllowed, "No asociated Session"));
                    }
                }
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}",
                                               validationError.PropertyName,
                                               validationError.ErrorMessage);
                    }
                }
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, dbEx));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }