Пример #1
0
        public IActionResult getFinderByType()
        {
            int              code     = 200;
            List <Finder>    list     = new List <Finder>();
            List <Hashtable> infolist = new List <Hashtable>();
            //前端向后端发送数据
            string type  = Request.Form["type"];
            string temp  = Request.Form["index"];
            int    index = (temp == "" || type == null) ? 0 : Convert.ToInt32(temp);

            type = (temp == "" || type == null) ? null : type;
            list = service.GetFinderByType(type, index);
            var all = service.GetFinderByType(type, 0);

            if (list == null)
            {
                code = 500;
            }
            else
            {
                foreach (Finder item in list)
                {
                    String completetext = null;
                    if (item.Complete)
                    {
                        completetext = "已找到";
                    }
                    else
                    {
                        completetext = "未找到";
                    }
                    LoseType  losttype = service.GetLoseTypesBuName(item.LoseType.Name);
                    Hashtable table    = new Hashtable();
                    table.Add("id", item.User.ID);
                    table.Add("avatarURL", item.User.head);
                    table.Add("username", item.User.UserName);
                    table.Add("infoId", item.ID);
                    table.Add("infoTitle", item.Title);
                    table.Add("fatherType", losttype.FatherType.Name);
                    table.Add("type", item.LoseType.Name);
                    table.Add("hidden", item.hidden);
                    table.Add("complete", item.Complete);
                    table.Add("completetext", completetext);
                    table.Add("infourl", "/Finding/FinderDetail?id=" + item.ID.ToString());
                    infolist.Add(table);
                }
            }
            return(Ok(new
            {
                infolist = infolist,
                total = all.Count,
                code = code
            }));
        }
Пример #2
0
 public bool Create(LoseType type)
 {
     try
     {
         _context.Add(type);
         _context.SaveChanges();
         return(true);
     }
     catch (Exception e)
     {
         Console.Write(e.StackTrace);
         return(false);
     }
 }
Пример #3
0
        public List <Finder> GetFinderAndTextByType(String type, String text, int index)
        {
            LoseType loseType = null;
            var      items    = loseTypesDao.Select(null, type, null);

            if (items.Count == 1)
            {
                foreach (LoseType item in items)
                {
                    loseType = item;
                }
                return(finderDao.SearchSelect(text, text, loseType, index));
            }
            else
            {
                return(finderDao.SearchSelect(text, text, null, index));
            }
        }
Пример #4
0
        public List <Owner> GetOwnerByType(String type, int index)
        {
            LoseType loseType = null;
            var      items    = loseTypesDao.Select(null, type, null);

            if (items.Count == 1)
            {
                foreach (LoseType item in items)
                {
                    loseType = item;
                }
                return(ownerDao.Select(null, null, null, null, null, null, loseType, null, null, index));
            }
            else
            {
                return(ownerDao.Select(null, null, null, null, null, null, null, null, null, index));
            }
        }
Пример #5
0
 public List <LoseType> Select(int?id, string name, LoseType fathertype)
 {
     try
     {
         var items = from s in _context.LoseTypes.Include("FatherType")
                     where ((id == null || s.ID == id) && (name == null || s.Name == name) && (fathertype == null || s.FatherType == fathertype))
                     select s;
         List <LoseType> list = new List <LoseType>();
         foreach (var item in items)
         {
             list.Add(item);
         }
         return(list);
     }
     catch (Exception e)
     {
         Console.Write(e.StackTrace);
         return(null);
     }
 }
Пример #6
0
        public bool saveInfomation(String title, String fathertype, String type, String content, String account, String question)
        {
            bool     result     = false;
            LoseType loseType   = null;
            LoseType fatherType = fatherType = loseTypesDao.Select(null, fathertype, null)[0];
            User     user       = null;

            if (loseTypesDao.Select(null, type, fatherType).Count > 0)
            {
                loseType = loseTypesDao.Select(null, type, fatherType)[0];
            }
            else
            {
                return(result);
            }
            if (userDao.Select(null, account, null, null, null, null, null, null, null, null, null, null, null).Count > 0)
            {
                user = userDao.Select(null, account, null, null, null, null, null, null, null, null, null, null, null)[0];
            }
            else
            {
                return(result);
            }
            Finder finder = new Finder();

            finder.hidden        = false;
            finder.Complete      = false;
            finder.Time          = DateTime.Now;
            finder.LastReplyTime = finder.Time;
            finder.LoseType      = loseType;
            finder.Content       = content;
            finder.User          = user;
            finder.Question      = question;
            finder.Title         = title;
            if (finderDao.Create(finder))
            {
                result = true;
            }
            return(result);
        }
Пример #7
0
 public bool Delete(int?id)
 {
     try
     {
         LoseType type = _context.LoseTypes.Find(id);
         if (type != null)
         {
             _context.LoseTypes.Remove(type);
             _context.SaveChanges();
             return(true);
         }
         else
         {
             return(false);
         }
     }
     catch (Exception e)
     {
         Console.Write(e.StackTrace);
         return(false);
     }
 }
Пример #8
0
 public List <Finder> SearchSelect(String content, String title, LoseType losetype, int index)
 {
     try
     {
         var items = from s in _context.Finders.Include("LoseType").Include("User")
                     where (s.Content.Contains(content)) || (s.Title.Contains(title)) && ((losetype == null) || s.LoseType == losetype)
                     select s;
         if (index != 0)
         {
             items = items.OrderByDescending(u => u.LastReplyTime).Skip(10 * (index - 1)).Take(10);
         }
         List <Finder> list = new List <Finder>();
         foreach (var item in items)
         {
             list.Add(item);
         }
         return(list);
     }
     catch (Exception e)
     {
         Console.Write(e.StackTrace);
         return(null);
     }
 }
Пример #9
0
 public List <LoseType> GetChildrenLoseTypes(LoseType fathertype)
 {
     return(loseTypesDao.Select(null, null, fathertype));
 }
Пример #10
0
 public List <Finder> Select(int?id, User user, String content, bool?complete, String question, String title, DateTime?time, DateTime?lasttime, LoseType losetype, bool?hidden, int index)
 {
     try
     {
         var items = from s in _context.Finders.Include("LoseType").Include("User")
                     where ((id == null) || s.ID == id) && ((user == null) || s.User == user) && ((content == null) || s.Content == content) && ((complete == null) || s.Complete == complete) &&
                     ((question == null) || s.Question == question) && ((title == null) || s.Title == title) && ((time == null) || s.Time == time) && ((lasttime == null) || s.LastReplyTime == lasttime) &&
                     ((losetype == null) || s.LoseType == losetype) && ((hidden == null) || s.hidden == hidden)
                     select s;
         if (index != 0)
         {
             items = items.OrderByDescending(u => u.LastReplyTime).Skip(10 * (index - 1)).Take(10);
         }
         List <Finder> list = new List <Finder>();
         foreach (var item in items)
         {
             list.Add(item);
         }
         return(list);
     }
     catch (Exception e)
     {
         Console.Write(e.StackTrace);
         return(null);
     }
 }
Пример #11
0
        public IActionResult Search()
        {
            int code = 200;
            List <Hashtable> infolist = new List <Hashtable>();
            //前端向后端发送数据
            string text          = Request.Form["searchtext"];
            string temp          = Request.Form["missingorfind"];
            string type          = Request.Form["type"];
            string temp2         = Request.Form["index"];
            int    index         = (temp2 == "" || temp2 == null) ? 0 : Convert.ToInt32(temp2);
            int    missingorfind = (temp == null) ? 0 : Convert.ToInt32(temp);
            int    all           = 0;

            type = (type == "") ? null : type;
            if (missingorfind == 1)
            {
                List <Owner> list = new List <Owner>();
                if (text != "")
                {
                    list = service.GetOwnerAndTextByType(type, text, index);
                    all  = service.GetOwnerAndTextByType(type, text, 0).Count;
                    foreach (var item in list)
                    {
                        String completetext = null;
                        if (item.Complete)
                        {
                            completetext = "已找到";
                        }
                        else
                        {
                            completetext = "未找到";
                        }
                        LoseType  losttype = service.GetLoseTypesBuName(item.LoseType.Name);
                        Hashtable table    = new Hashtable();
                        table.Add("id", item.User.ID);
                        table.Add("avatarURL", item.User.head);
                        table.Add("username", item.User.UserName);
                        table.Add("infoId", item.ID);
                        table.Add("infoTitle", item.Title);
                        table.Add("fatherType", losttype.FatherType.Name);
                        table.Add("type", item.LoseType.Name);
                        table.Add("hidden", item.hidden);
                        table.Add("complete", item.Complete);
                        table.Add("completetext", completetext);
                        table.Add("infourl", "/Missing/MissingDetail?id=" + item.ID.ToString());
                        infolist.Add(table);
                    }
                }
                else
                {
                    list = service.GetOwnerByType(type, index);
                    all  = service.GetOwnerByType(type, 0).Count;
                    foreach (var item in list)
                    {
                        String completetext = null;
                        if (item.Complete)
                        {
                            completetext = "已找到";
                        }
                        else
                        {
                            completetext = "未找到";
                        }
                        LoseType  losttype = service.GetLoseTypesBuName(item.LoseType.Name);
                        Hashtable table    = new Hashtable();
                        table.Add("id", item.User.ID);
                        table.Add("avatarURL", item.User.head);
                        table.Add("username", item.User.UserName);
                        table.Add("infoId", item.ID);
                        table.Add("infoTitle", item.Title);
                        table.Add("fatherType", losttype.FatherType.Name);
                        table.Add("type", item.LoseType.Name);
                        table.Add("hidden", item.hidden);
                        table.Add("complete", item.Complete);
                        table.Add("completetext", completetext);
                        table.Add("infourl", "/Missing/MissingDetail?id=" + item.ID.ToString());
                        infolist.Add(table);
                    }
                }
                return(Ok(new
                {
                    infolist = infolist,
                    total = all,
                    code = code
                }));
            }
            else if (missingorfind == 2)
            {
                List <Finder> list = new List <Finder>();
                if (text != "")
                {
                    list = service.GetFinderAndTextByType(type, text, index);
                    all  = service.GetFinderAndTextByType(type, text, 0).Count;
                    foreach (var item in list)
                    {
                        String completetext = null;
                        if (item.Complete)
                        {
                            completetext = "已找到";
                        }
                        else
                        {
                            completetext = "未找到";
                        }
                        LoseType  losttype = service.GetLoseTypesBuName(item.LoseType.Name);
                        Hashtable table    = new Hashtable();
                        table.Add("id", item.User.ID);
                        table.Add("avatarURL", item.User.head);
                        table.Add("username", item.User.UserName);
                        table.Add("infoId", item.ID);
                        table.Add("infoTitle", item.Title);
                        table.Add("fatherType", losttype.FatherType.Name);
                        table.Add("type", item.LoseType.Name);
                        table.Add("hidden", item.hidden);
                        table.Add("complete", item.Complete);
                        table.Add("completetext", completetext);
                        table.Add("infourl", "/Finding/FinderDetail?id=" + item.ID.ToString());
                        infolist.Add(table);
                    }
                }
                else
                {
                    list = service.GetFinderByType(type, index);
                    all  = service.GetFinderByType(type, 0).Count;
                    foreach (var item in list)
                    {
                        String completetext = null;
                        if (item.Complete)
                        {
                            completetext = "已找到";
                        }
                        else
                        {
                            completetext = "未找到";
                        }
                        LoseType  losttype = service.GetLoseTypesBuName(item.LoseType.Name);
                        Hashtable table    = new Hashtable();
                        table.Add("id", item.User.ID);
                        table.Add("avatarURL", item.User.head);
                        table.Add("username", item.User.UserName);
                        table.Add("infoId", item.ID);
                        table.Add("infoTitle", item.Title);
                        table.Add("fatherType", losttype.FatherType.Name);
                        table.Add("type", item.LoseType.Name);
                        table.Add("hidden", item.hidden);
                        table.Add("complete", item.Complete);
                        table.Add("completetext", completetext);
                        table.Add("infourl", "/Finding/FinderDetail?id=" + item.ID.ToString());
                        infolist.Add(table);
                    }
                }
                return(Ok(new
                {
                    infolist = infolist,
                    total = all,
                    code = code
                }));
            }
            else
            {
                code = 500;
                return(Ok(new
                {
                    infolist = infolist,
                    total = all,
                    code = code
                }));
            }
        }