public string Delete(string token)
        {
            //int Id, int userId, bool final
            string message = "";



            token = TokenManager.readToken(HttpContext.Current.Request);
            var strP = TokenManager.GetPrincipal(token);

            if (strP != "0") //invalid authorization
            {
                return(TokenManager.GenerateToken(strP));
            }
            else
            {
                int  Id     = 0;
                int  userId = 0;
                bool final  = false;

                IEnumerable <Claim> claims = TokenManager.getTokenClaims(token);
                foreach (Claim c in claims)
                {
                    if (c.Type == "Id")
                    {
                        Id = int.Parse(c.Value);
                    }
                    else if (c.Type == "userId")
                    {
                        userId = int.Parse(c.Value);
                    }
                    else if (c.Type == "final")
                    {
                        final = bool.Parse(c.Value);
                    }
                }

                if (final)
                {
                    try
                    {
                        using (incposdbEntities entity = new incposdbEntities())
                        {
                            groupObject Deleterow = entity.groupObject.Find(Id);
                            entity.groupObject.Remove(Deleterow);
                            message = entity.SaveChanges().ToString();
                            //  return Ok("OK");
                            return(TokenManager.GenerateToken(message));
                        }
                    }
                    catch
                    {
                        return(TokenManager.GenerateToken("0"));
                    }
                }
                else
                {
                    try
                    {
                        using (incposdbEntities entity = new incposdbEntities())
                        {
                            groupObject Obj = entity.groupObject.Find(Id);
                            Obj.isActive     = 0;
                            Obj.updateUserId = userId;
                            Obj.updateDate   = DateTime.Now;
                            message          = entity.SaveChanges().ToString();
                            //  return Ok("OK");
                            return(TokenManager.GenerateToken(message));
                        }
                    }
                    catch
                    {
                        return(TokenManager.GenerateToken("0"));
                    }
                }
            }



            //var re = Request;
            //var headers = re.Headers;
            //string token = "";
            //if (headers.Contains("APIKey"))
            //{
            //    token = headers.GetValues("APIKey").First();
            //}

            //Validation validation = new Validation();
            //bool valid = validation.CheckApiKey(token);
            //if (valid)
            //{

            //    if (final)
            //    {
            //        try
            //        {
            //            using (incposdbEntities entity = new incposdbEntities())
            //            {

            //                groupObject Deleterow = entity.groupObject.Find(Id);
            //                entity.groupObject.Remove(Deleterow);
            //                entity.SaveChanges();
            //                return Ok("OK");
            //            }
            //        }
            //        catch
            //        {
            //            return NotFound();
            //        }
            //    }
            //    else
            //    {
            //        try
            //        {
            //            using (incposdbEntities entity = new incposdbEntities())
            //            {

            //                groupObject Obj = entity.groupObject.Find(Id);
            //                Obj.isActive = 0;
            //                Obj.updateUserId = userId;
            //                Obj.updateDate = DateTime.Now;
            //                entity.SaveChanges();
            //                return Ok("Ok");
            //            }
            //        }
            //        catch
            //        {
            //            return NotFound();
            //        }
            //    }



            //}
            //else
            //    return NotFound();
        }
Ejemplo n.º 2
0
        public string addObjects(int groupId)
        {
            string         message     = "";
            List <objects> ListObjects = new List <objects>();

            try
            {
                using (incposdbEntities entity = new incposdbEntities())
                {
                    List <objects> Listtmp = entity.objects.ToList();

                    ListObjects = Listtmp.Select(c => new objects
                    {
                        objectId       = c.objectId,
                        name           = c.name,
                        note           = c.note,
                        createDate     = c.createDate,
                        updateDate     = c.updateDate,
                        createUserId   = c.createUserId,
                        updateUserId   = c.updateUserId,
                        parentObjectId = c.parentObjectId,
                        objectType     = c.objectType,
                    })
                                  .ToList();
                }
            }
            catch
            {
                message = "0";
                return(message);
                //return ex.ToString();
            }
            groupObject        groupObjectitem  = new groupObject();
            List <groupObject> groupObjectsList = new List <groupObject>();

            foreach (var item in ListObjects)
            {
                groupObjectitem          = new groupObject();
                groupObjectitem.groupId  = groupId;
                groupObjectitem.objectId = item.objectId;
                if (item.objectType == "one" || item.objectType == "alert")
                {
                    groupObjectitem.showOb   = 0;
                    groupObjectitem.addOb    = 2;
                    groupObjectitem.updateOb = 2;
                    groupObjectitem.deleteOb = 2;
                    groupObjectitem.reportOb = 2;
                }
                else
                {
                    groupObjectitem.showOb   = 0;
                    groupObjectitem.addOb    = 0;
                    groupObjectitem.updateOb = 0;
                    groupObjectitem.deleteOb = 0;
                    groupObjectitem.reportOb = 0;
                }
                groupObjectitem.levelOb = 0;
                groupObjectitem.notes   = "";
                // groupObjectitem.createUserId = MainWindow.userID;
                // groupObjectitem.updateUserId = MainWindow.userID;
                groupObjectitem.isActive = 1;
                groupObjectsList.Add(groupObjectitem);
            }

            using (incposdbEntities entity = new incposdbEntities())
            {
                if (groupObjectsList.Count > 0)
                {
                    for (int i = 0; i < groupObjectsList.Count; i++)
                    {
                        groupObjectsList[i].createDate = DateTime.Now;
                        groupObjectsList[i].updateDate = DateTime.Now;
                        entity.groupObject.Add(groupObjectsList[i]);
                        try
                        {
                            message = entity.SaveChanges().ToString();
                        }
                        catch
                        {
                            message = "0";
                            return(message);
                            //return ex.ToString();
                        }
                    }
                }
            }
            return(message);
        }
        public String Save(string token)
        {
            //string Object
            string message = "";



            token = TokenManager.readToken(HttpContext.Current.Request);
            var strP = TokenManager.GetPrincipal(token);

            if (strP != "0") //invalid authorization
            {
                return(TokenManager.GenerateToken(strP));
            }
            else
            {
                string              Object    = "";
                groupObject         newObject = null;
                IEnumerable <Claim> claims    = TokenManager.getTokenClaims(token);
                foreach (Claim c in claims)
                {
                    if (c.Type == "Object")
                    {
                        Object    = c.Value.Replace("\\", string.Empty);
                        Object    = Object.Trim('"');
                        newObject = JsonConvert.DeserializeObject <groupObject>(Object, new IsoDateTimeConverter {
                            DateTimeFormat = "dd/MM/yyyy"
                        });
                        break;
                    }
                }
                if (newObject != null)
                {
                    //   bondes tmpObject = null;


                    try
                    {
                        if (newObject.groupId == 0 || newObject.groupId == null)
                        {
                            Nullable <int> id = null;
                            newObject.groupId = id;
                        }

                        if (newObject.objectId == 0 || newObject.objectId == null)
                        {
                            Nullable <int> id = null;
                            newObject.objectId = id;
                        }


                        if (newObject.updateUserId == 0 || newObject.updateUserId == null)
                        {
                            Nullable <int> id = null;
                            newObject.updateUserId = id;
                        }
                        if (newObject.createUserId == 0 || newObject.createUserId == null)
                        {
                            Nullable <int> id = null;
                            newObject.createUserId = id;
                        }
                        using (incposdbEntities entity = new incposdbEntities())
                        {
                            var sEntity = entity.Set <groupObject>();
                            if (newObject.id == 0)
                            {
                                newObject.createDate   = DateTime.Now;
                                newObject.updateDate   = DateTime.Now;
                                newObject.updateUserId = newObject.createUserId;



                                sEntity.Add(newObject);
                                message = newObject.groupId.ToString();
                                entity.SaveChanges();
                            }
                            else
                            {
                                var tmps = entity.groupObject.Where(p => p.id == newObject.id).FirstOrDefault();
                                tmps.id       = newObject.id;
                                tmps.groupId  = newObject.groupId;
                                tmps.objectId = newObject.objectId;
                                tmps.notes    = newObject.notes;
                                tmps.addOb    = newObject.addOb;
                                tmps.updateOb = newObject.updateOb;
                                tmps.deleteOb = newObject.deleteOb;
                                tmps.showOb   = newObject.showOb;
                                //tmps.isActive = newObject.isActive;
                                tmps.reportOb = newObject.reportOb;
                                tmps.levelOb  = newObject.levelOb;

                                tmps.createDate   = newObject.createDate;
                                tmps.updateDate   = DateTime.Now;// server current date
                                tmps.updateUserId = newObject.updateUserId;
                                entity.SaveChanges();
                                message = tmps.id.ToString();
                            }
                        }
                        //return message;

                        return(TokenManager.GenerateToken(message));
                    }
                    catch
                    {
                        message = "0";
                        return(TokenManager.GenerateToken(message));
                    }
                }

                return(TokenManager.GenerateToken(message));
            }


            //var re = Request;
            //var headers = re.Headers;
            //string token = "";
            //string message ="";
            //if (headers.Contains("APIKey"))
            //{
            //    token = headers.GetValues("APIKey").First();
            //}
            //Validation validation = new Validation();
            //bool valid = validation.CheckApiKey(token);

            //if (valid)
            //{
            //    newObject = newObject.Replace("\\", string.Empty);
            //    newObject = newObject.Trim('"');
            //   groupObject Object = JsonConvert.DeserializeObject<groupObject>(newObject, new JsonSerializerSettings { DateParseHandling = DateParseHandling.None });
            //    try
            //    {

            //        if (Object.groupId == 0 || Object.groupId == null)
            //        {
            //            Nullable<int> id = null;
            //            Object.groupId = id;
            //        }

            //        if (Object.objectId == 0 || Object.objectId == null)
            //        {
            //            Nullable<int> id = null;
            //            Object.objectId = id;
            //        }


            //        if (Object.updateUserId == 0 || Object.updateUserId == null)
            //        {
            //            Nullable<int> id = null;
            //            Object.updateUserId = id;
            //        }
            //        if (Object.createUserId == 0 || Object.createUserId == null)
            //        {
            //            Nullable<int> id = null;
            //            Object.createUserId = id;
            //        }
            //        using (incposdbEntities entity = new incposdbEntities())
            //        {
            //            var sEntity = entity.Set<groupObject>();
            //            if (Object.id == 0)
            //            {
            //                Object.createDate = DateTime.Now;
            //                Object.updateDate = DateTime.Now;
            //                Object.updateUserId = Object.createUserId;



            //                sEntity.Add(Object);
            //                 message = Object.groupId.ToString();
            //                entity.SaveChanges();
            //            }
            //            else
            //            {

            //                var tmps = entity.groupObject.Where(p => p.id == Object.id).FirstOrDefault();
            //                tmps.id = Object.id;
            //                tmps.groupId = Object.groupId;
            //                tmps.objectId = Object.objectId;
            //                tmps.notes = Object.notes;
            //                tmps.addOb = Object.addOb;
            //                tmps.updateOb = Object.updateOb;
            //                tmps.deleteOb = Object.deleteOb;
            //                tmps.showOb = Object.showOb;
            //                //tmps.isActive = Object.isActive;
            //                tmps.reportOb = Object.reportOb;
            //                tmps.levelOb = Object.levelOb;

            //                tmps.createDate=Object.createDate;
            //                tmps.updateDate = DateTime.Now;// server current date
            //                tmps.updateUserId = Object.updateUserId;
            //                entity.SaveChanges();
            //                message = tmps.id.ToString();
            //            }


            //        }
            //        return message; ;
            //    }

            //    catch
            //    {
            //        return "-1";
            //    }
            //}
            //else
            //    return "-1";
        }