示例#1
0
        public async Task <string> ToeicQues(string content, string idmessenger)
        {
            ChatfuelJson result       = new ChatfuelJson();
            MessJson     messPron     = new MessJson();
            MessJson     messPron2    = new MessJson();
            var          userMakeQues = _service.listUserID().Where(x => x.Id_Messenger == idmessenger).ToList();

            if (userMakeQues.Count != 0)
            {
                Post newPost = new Model.Post();
                newPost.Content  = content;
                newPost.DatePost = DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc)).TotalMilliseconds.ToString();
                newPost.Id_User  = userMakeQues.FirstOrDefault().Id;
                newPost.Id_Type  = 8; // TOIEC
                //Send lên nhóm fb

                {
                    //post to fb toiec
                    //Gửi cho admin trước khi dc duyệt

                    //
                    //var IdPost = await _fbService.PostingToGroupFB(newPost.Content);
                    //  newPost.Id_PostFB = IdPost.id;
                }
                _postService.Add(newPost);
                _postService.Save();
                await NotifyForAdminToApprove(newPost.Id);

                //Send notify
                List <ApplicationUser> userSubQues = getNormalUserBasedOnType(newPost);
                foreach (var itemUser in userSubQues)
                {
                    await sendNofityToMessenger(newPost, itemUser);

                    HaveSendQuestion haveSendQues = new HaveSendQuestion();
                    haveSendQues.QuesID    = newPost.Id;
                    haveSendQues.UserID    = itemUser.Id;
                    haveSendQues.Status    = false;
                    haveSendQues.Protected = false;
                    _haveSendQuesService.Add(haveSendQues);
                    _haveSendQuesService.Save();
                }
                messPron.text = "Câu hỏi của bạn đã được gửi đi cho mọi người !";
                result.messages.Add(messPron);
                // messPron2.text = "https://www.facebook.com/" + newPost.Id_PostFB;
                //result.messages.Add(messPron2);
                return(JsonConvert.SerializeObject(result));
            }
            else
            {
                messPron.text = "Hình như bạn chưa có tài khoản trên Olympus English";
                result.messages.Add(messPron);
                return(JsonConvert.SerializeObject(result));
            }
        }
示例#2
0
        //make question directly from Messenger
        public async Task <string> IeltsQues(string content, string messengerid)
        {
            ChatfuelJson result   = new ChatfuelJson();
            MessJson     messPron = new MessJson();

            var userMakeQues = _service.listUserID().Where(x => x.Id_Messenger == messengerid).ToList();

            if (userMakeQues.Count != 0)
            {
                Post newPost = new Model.Post();
                newPost.Content  = content;
                newPost.DatePost = DateTime.Now.Ticks.ToString();
                newPost.Id_User  = userMakeQues.FirstOrDefault().Id;
                newPost.Id_Type  = 9; // TOIEC
                _postService.Add(newPost);
                _postService.Save();
                //Send notify
                List <ApplicationUser> userSubQues = getNormalUserBasedOnType(newPost);
                foreach (var itemUser in userSubQues)
                {
                    await sendNofityToMessenger(newPost, itemUser);

                    HaveSendQuestion haveSendQues = new HaveSendQuestion();
                    haveSendQues.QuesID    = newPost.Id;
                    haveSendQues.UserID    = itemUser.Id;
                    haveSendQues.Status    = false;
                    haveSendQues.Protected = false;
                    _haveSendQuesService.Add(haveSendQues);
                    _haveSendQuesService.Save();
                }
                messPron.text = "Câu hỏi của bạn đã được gửi đi cho mọi người";
                result.messages.Add(messPron);
                return(JsonConvert.SerializeObject(result));
            }
            else
            {
                messPron.text = "Hình như bạn chưa có tài khoản trên Olympus English";
                result.messages.Add(messPron);
                return(JsonConvert.SerializeObject(result));
            }
        }
示例#3
0
        public async Task checkTimeOfPost()
        {
            List <Post> listPost = getPost();

            //
            foreach (var post in listPost)
            {
                //Get expert user list
                List <ApplicationUser> appUser = getExpertUserBasedOnType(post);
                //Update status

                //
                foreach (var expertUser in appUser)
                {
                    if (_haveSendQuesService.GetAll().Where(x => x.QuesID == post.Id && x.UserID == expertUser.Id).ToList().Count == 0)
                    {
                        post.Status      = false; // have send
                        post.CreatedDate = DateTime.Now;
                        _postService.Update(post);
                        _postService.Save();
                        await Task.Delay(300);
                        await sendNofityToMessenger(post, expertUser);

                        HaveSendQuestion haveSendQues = new HaveSendQuestion();
                        haveSendQues.QuesID    = post.Id;
                        haveSendQues.UserID    = expertUser.Id;
                        haveSendQues.Status    = false;
                        haveSendQues.Protected = false;
                        _haveSendQuesService.Add(haveSendQues);
                        _haveSendQuesService.Save();
                        break;
                    }
                }
                //
            }
        }