Пример #1
0
        public ReturnJasonConstruct <DTO.User> Put([FromBody] DTO.User user)
        {
            try
            {
                ReturnJasonConstruct <DTO.User> dto = new ReturnJasonConstruct <DTO.User>();
                if (CheckObjectAvalible(user, ref dto) == false)
                {
                    return(dto);
                }

                UserInformationEntities db = new UserInformationEntities();
                if (user.id.ToString() == "" || db.User.Where(p => p.ID == user.id).Count() == 0)
                {//创建用户
                    var result = db.User.Where(p => p.Tel == user.tel);
                    if (result.Count() > 0)
                    {
                        dto.status      = (int)executeStatus.warning;
                        dto.information = "该电话号码已经被注册.";
                        return(dto);
                    }

                    Models.User ac = new Models.User();
                    ac.ID         = Guid.NewGuid();
                    ac.UserName   = user.name;
                    ac.Tel        = user.tel;
                    ac.Exp        = 0;
                    ac.Level      = 0;
                    ac.password   = user.password;
                    ac.CreateDate = DateTime.Now;
                    db.User.Add(ac);
                    dto.DTOObject = ac.ToDTO();
                }
                else//更新用户
                {
                    var result = db.User.Single(p => p.ID == user.id);
                    result.UserName = user.name;
                    result.Tel      = user.tel;
                    result.password = user.password;
                    result.Exp      = user.exp;
                    result.Level    = ConvertDTO.GetLevelInt(user.level);
                    dto.DTOObject   = result.ToDTO();
                }
                db.SaveChanges();
                dto.status = (int)executeStatus.success;
                return(dto);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Пример #2
0
        public async Task <BookmarkDetailsDTO> Get(
            [FromRoute] int id
            )
        {
            var bookmark = await User.BookmarkQuery(Context)
                           .Where(b => b.Id == id)
                           .Include(b => b.Notes)
                           .FirstAsync();

            return(bookmark switch
            {
                Bookmark mark =>
                new BookmarkDetailsDTO {
                    Id = mark.Id,
                    Notes = mark.Notes?.Select(n => ConvertDTO.To(n)).ToList(),
                    Url = mark.Url,
                    Content = mark.Content
                },
                _ => new BookmarkDetailsDTO()
            });