Example #1
0
        ///<summary>Проверка "логического" наличия файла</summary>
        public bool FileExistanceCheck(FileProcessorInfo paramInfo /*, out Stream fileStream*/) //
        {
            lock (Lock)                                                                         //
            {
                //paramInfo.fileName = путь


                var user = BD.Users.FirstOrDefault(u => u.ID == paramInfo.userID);

                if (user == null)
                {
                    return(false);
                }


                var group = BD.Groups.FirstOrDefault(u => u.ID == paramInfo.groupID);

                if (group == null)
                {
                    return(false);
                }


                var lesson = group.Lessons.FirstOrDefault(u => u.ID == paramInfo.lessonID);

                if (lesson == null)
                {
                    return(false);
                }


                if (paramInfo.filename.Contains("/common/") && paramInfo.filename.Contains(group.GroupName))                //GroupName
                {
                    if (group.CommonFilesLinks.Contains(paramInfo.filename))
                    {
                        return(false);
                    }

                    //fileStream чёт присвоить??

                    return(true);
                }



                if ((paramInfo.filename.Contains(user.UserName) || paramInfo.filename.Contains("/common/")) && paramInfo.filename.Contains(lesson.TopicName) && paramInfo.filename.Contains(group.GroupName))               //
                {
                    if (lesson.LessonFilesLinks.Contains(paramInfo.filename))
                    {
                        return(false);
                    }


                    //fileStream чёт присвоить??

                    return(true);
                }

                return(false);
            }
        }
Example #2
0
        //private static T Work2<T>() where T:class //былоб неплохо....
        //{

        //	T v = new T();
        //	return v;
        //}

        private static string getreqContent(string Method, out string info)
        {
            info = string.Empty;

            if (Method == "CreateUser")            //+
            {
                string rndname = $"User_{new Random().Next()}";

                var newUserInfo = new User                //Info
                {
                    UserName     = rndname,
                    PasswordHash = "SomePass",                    //AuthHelper.HashPassword("SomePass"),

                    Name    = rndname.Substring(0, 7),
                    Surname = rndname.Substring(7, 3)
                };

                Console.WriteLine($" na me {newUserInfo.Name}");
                Console.WriteLine($" Surname {newUserInfo.Surname}");


                return(JsonSerializer.Serialize(newUserInfo));
            }



            if (Method == "GetBD")                       //+ запрос от рута тут же
            {
                var newUserInfo = new User               //Info
                {
                    UserName = CommonConstants.SuperUser //BD.Users[1].UserName//CommonConstants.SuperUser
                };

                return(JsonSerializer.Serialize(newUserInfo));
            }


            if (Method == "GetFullBD")            //+
            {
                var newUserInfo = new User
                {
                    UserName = CommonConstants.SuperUser
                };

                return(JsonSerializer.Serialize(newUserInfo));
            }


            if (Method == "AddGroup")            //+
            {
                string rndname = $"Group_{new Random().Next()}";

                var newGroupInfo = new Group                //Info
                {
                    GroupName = rndname
                };

                return(JsonSerializer.Serialize(newGroupInfo));
            }


            //Удаляет вторую группу если есть
            if (Method == "DelGroup")            //+
            {
                Guid gelguid = Guid.Empty;       //

                if (BD.Groups.Count > 1)
                {
                    gelguid = BD.Groups[1].ID;
                }

                var newGroupInfo = new Group
                {
                    ID = gelguid,
                };

                return(JsonSerializer.Serialize(newGroupInfo));
            }


            if (Method == "AddLesson")            //+
            {
                info = BD.Groups[0].ID.ToString();

                string rndname = $"Lesson_{new Random().Next()}";

                var newLessonInfo = new Lesson                //Info
                {
                    TopicName = rndname,

                    TestFlag = false,

                    Date = DateTime.Now,
                };

                return(JsonSerializer.Serialize(newLessonInfo));
            }



            //Удаляет последнее занятие в первой группе
            if (Method == "DelLesson")            // +
            {
                info = BD.Groups[0].ID.ToString();

                var newLessonInfo = new Lesson
                {
                    ID = BD.Groups[0].Lessons[BD.Groups[0].Lessons.Count - 1].ID,
                };

                return(JsonSerializer.Serialize(newLessonInfo));
            }



            //Перевод второго юзера в учителя
            if (Method == "Promote")            //+
            {
                Guid gelguid = Guid.Empty;      //

                //if (BD.Users.Count > 1)
                //{
                gelguid = BD.Users[1].ID;
                //}

                var newUserInfo = new User
                {
                    ID = gelguid,
                };

                return(JsonSerializer.Serialize(newUserInfo));
            }

            //Перевод второго юзера в простого юзера
            if (Method == "Demote")            //+
            {
                Guid gelguid = Guid.Empty;     //

                //if (BD.Users.Count > 1)
                //{
                gelguid = BD.Users[1].ID;
                //}

                var newUserInfo = new User
                {
                    ID = gelguid,
                };

                return(JsonSerializer.Serialize(newUserInfo));
            }



            //Добавление в первую группу и первый урок
            if (Method == "AddCommFile")            //+
            {
                var FileInfo = new FileProcessorInfo
                {
                    userID   = BD.Users[0].ID,
                    groupID  = BD.Groups[0].ID,
                    lessonID = BD.Groups[0].Lessons[0].ID,

                    filename = $"metanit_{new Random().Next()}.zip",
                };

                info = JsonSerializer.Serialize(FileInfo);

                return(JsonSerializer.Serialize(info));
            }



            //Добавление в первую группу и первый урок
            if (Method == "AddHWFile")            //+
            {
                var FileInfo = new FileProcessorInfo
                {
                    userID   = BD.Users[0].ID,
                    groupID  = BD.Groups[0].ID,
                    lessonID = BD.Groups[0].Lessons[0].ID,

                    filename = $"metanit_{new Random().Next()}.zip",
                };

                info = JsonSerializer.Serialize(FileInfo);

                return(JsonSerializer.Serialize(info));
            }



            //меняет имя второму пользователю и даёт управление над первой группой
            if (Method == "UpdUser")            //+
            {
                string rndname = $"upd_User_{new Random().Next()}";


                List <Guid> ruledGroups1 = new List <Guid>();
                ruledGroups1.Add(BD.Groups[0].ID);

                var newUserInfo = new User                //Info
                {
                    ID = BD.Users[1].ID,
                    // UserName = rndname,
                    //PasswordHash = "SomePass",//AuthHelper.HashPassword("SomePass"),

                    Name    = rndname.Substring(0, 7),
                    Surname = rndname.Substring(7, 3),

                    ruledGroups = ruledGroups1,
                };
                return(JsonSerializer.Serialize(newUserInfo));
            }

            //меняет имя группы и добавляет третьего пользователя в ней
            if (Method == "UpdGroup")            //+
            {
                string rndname = $"newGroup_{new Random().Next()}";

                List <string> usersList = new List <string>();
                usersList.Add(BD.Users[2].UserName);

                var newGroupInfo = new Group                //Info
                {
                    ID         = BD.Groups[0].ID,
                    GroupName  = rndname,
                    UserLogins = usersList
                };

                return(JsonSerializer.Serialize(newGroupInfo));
            }



            var defaultUserInfo = new User
            {
                UserName     = $"User_{new Random().Next()}",
                PasswordHash = AuthHelper.HashPassword("SomePass"),
            };

            return(JsonSerializer.Serialize(defaultUserInfo));
        }