Esempio n. 1
0
        private static LibraryTextInfo GetLibraryTextInfo(IDataRecord rdr)
        {
            if (rdr == null)
            {
                return(null);
            }

            var libraryGroupInfo = new LibraryTextInfo();

            var i = 0;

            libraryGroupInfo.Id = rdr.IsDBNull(i) ? 0 : rdr.GetInt32(i);
            i++;
            libraryGroupInfo.Title = rdr.IsDBNull(i) ? string.Empty : rdr.GetString(i);
            i++;
            libraryGroupInfo.GroupId = rdr.IsDBNull(i) ? 0 : rdr.GetInt32(i);
            i++;
            libraryGroupInfo.ImageUrl = rdr.IsDBNull(i) ? string.Empty : rdr.GetString(i);
            i++;
            libraryGroupInfo.Summary = rdr.IsDBNull(i) ? string.Empty : rdr.GetString(i);
            i++;
            libraryGroupInfo.Content = rdr.IsDBNull(i) ? string.Empty : rdr.GetString(i);

            return(libraryGroupInfo);
        }
        public LibraryTextInfo Create([FromBody] LibraryTextInfo library)
        {
            var auth = new AuthenticatedRequest();

            if (!auth.IsAdminLoggin ||
                !auth.AdminPermissionsImpl.HasSitePermissions(auth.SiteId,
                                                              ConfigManager.SitePermissions.Library))
            {
                return(Request.Unauthorized <LibraryTextInfo>());
            }

            if (string.IsNullOrEmpty(library.Title))
            {
                return(Request.BadRequest <LibraryTextInfo>("请填写图文标题"));
            }
            if (string.IsNullOrEmpty(library.Content))
            {
                return(Request.BadRequest <LibraryTextInfo>("请填写图文正文"));
            }

            library.Content = PathUtils.SaveLibraryImage(library.Content);
            library.Id      = DataProvider.LibraryTextDao.Insert(library);

            return(library);
        }
        public LibraryTextInfo Create()
        {
            var auth = new AuthenticatedRequest();

            if (!auth.IsAdminLoggin ||
                !auth.AdminPermissionsImpl.HasSitePermissions(auth.SiteId,
                                                              ConfigManager.SitePermissions.Library))
            {
                return(Request.Unauthorized <LibraryTextInfo>());
            }

            var library = new LibraryTextInfo
            {
                GroupId = auth.GetQueryInt("groupId")
            };

            var fileName  = auth.HttpRequest["fileName"];
            var fileCount = auth.HttpRequest.Files.Count;

            if (fileCount == 0)
            {
                return(Request.BadRequest <LibraryTextInfo>("请选择有效的文件上传"));
            }

            var file = auth.HttpRequest.Files[0];

            if (string.IsNullOrEmpty(fileName))
            {
                fileName = Path.GetFileName(file.FileName);
            }

            var sExt = PathUtils.GetExtension(fileName);

            if (!StringUtils.EqualsIgnoreCase(sExt, ".doc") && !StringUtils.EqualsIgnoreCase(sExt, ".docx") && !StringUtils.EqualsIgnoreCase(sExt, ".wps"))
            {
                return(Request.BadRequest <LibraryTextInfo>("文件只能是 Word 格式,请选择有效的文件上传!"));
            }

            var libraryFileName      = PathUtils.GetLibraryFileName(fileName);
            var virtualDirectoryPath = PathUtils.GetLibraryVirtualPath(EUploadType.Image, libraryFileName);

            var directoryPath = PathUtils.Combine(WebConfigUtils.PhysicalApplicationPath, virtualDirectoryPath);
            var filePath      = PathUtils.Combine(directoryPath, libraryFileName);

            DirectoryUtils.CreateDirectoryIfNotExists(filePath);
            file.SaveAs(filePath);

            var wordContent = WordUtils.Parse(auth.SiteId, filePath, true, true, true, true, false);

            FileUtils.DeleteFileIfExists(filePath);

            library.Title   = fileName;
            library.Content = wordContent;
            library.Id      = DataProvider.LibraryTextDao.Insert(library);

            return(library);
        }
        public LibraryTextInfo Update([FromUri] int id, [FromBody] LibraryTextInfo library)
        {
            var auth = new AuthenticatedRequest();

            if (!auth.IsAdminLoggin ||
                !auth.AdminPermissionsImpl.HasSitePermissions(auth.SiteId,
                                                              ConfigManager.SitePermissions.Library))
            {
                return(Request.Unauthorized <LibraryTextInfo>());
            }

            var lib = DataProvider.LibraryTextDao.Get(id);

            lib.GroupId = library.GroupId;
            DataProvider.LibraryTextDao.Update(lib);

            return(library);
        }
Esempio n. 5
0
        public void Update(LibraryTextInfo group)
        {
            var sqlString = $@"UPDATE {TableName} SET
                   {nameof(LibraryTextInfo.Title)} = @{nameof(LibraryTextInfo.Title)},
                    {nameof(LibraryTextInfo.GroupId)} = @{nameof(LibraryTextInfo.GroupId)},
                    {nameof(LibraryTextInfo.ImageUrl)} = @{nameof(LibraryTextInfo.ImageUrl)},
                    {nameof(LibraryTextInfo.Summary)} = @{nameof(LibraryTextInfo.Summary)},
                    {nameof(LibraryTextInfo.Content)} = @{nameof(LibraryTextInfo.Content)}
               WHERE {nameof(LibraryTextInfo.Id)} = @{nameof(LibraryTextInfo.Id)}";

            IDataParameter[] parameters =
            {
                GetParameter(nameof(LibraryTextInfo.Title),    DataType.VarChar,            500, group.Title),
                GetParameter(nameof(LibraryTextInfo.GroupId),  DataType.Integer, group.GroupId),
                GetParameter(nameof(LibraryTextInfo.ImageUrl), DataType.VarChar,            500, group.ImageUrl),
                GetParameter(nameof(LibraryTextInfo.Summary),  DataType.VarChar,            500, group.Summary),
                GetParameter(nameof(LibraryTextInfo.Content),  DataType.Text,    group.Content),
                GetParameter(nameof(LibraryTextInfo.Id),       DataType.Integer, group.Id)
            };

            ExecuteNonQuery(sqlString, parameters);
        }
Esempio n. 6
0
        public int Insert(LibraryTextInfo group)
        {
            var sqlString = $@"INSERT INTO {TableName}
              ({nameof(LibraryTextInfo.Title)}, 
                {nameof(LibraryTextInfo.GroupId)},
               {nameof(LibraryTextInfo.ImageUrl)}, {nameof(LibraryTextInfo.Summary)}, {nameof(LibraryTextInfo.Content)})
        VALUES
              (@{nameof(LibraryTextInfo.Title)}, 
            @{nameof(LibraryTextInfo.GroupId)},
           @{nameof(LibraryTextInfo.ImageUrl)}, @{nameof(LibraryTextInfo.Summary)}, @{nameof(LibraryTextInfo.Content)})";

            IDataParameter[] parameters =
            {
                GetParameter(nameof(LibraryTextInfo.Title),    DataType.VarChar,            500, group.Title),
                GetParameter(nameof(LibraryTextInfo.GroupId),  DataType.Integer, group.GroupId),
                GetParameter(nameof(LibraryTextInfo.ImageUrl), DataType.VarChar,            500, group.ImageUrl),
                GetParameter(nameof(LibraryTextInfo.Summary),  DataType.VarChar,            500, group.Summary),
                GetParameter(nameof(LibraryTextInfo.Content),  DataType.Text,    group.Content),
            };

            return(ExecuteNonQueryAndReturnId(TableName, nameof(LibraryTextInfo.Id), sqlString, parameters));
        }
Esempio n. 7
0
        public LibraryTextInfo Get(int libraryId)
        {
            LibraryTextInfo accessTokenInfo = null;

            var sqlString = $@"SELECT {nameof(LibraryTextInfo.Id)}, 
                       {nameof(LibraryTextInfo.Title)}, 
                        {nameof(LibraryTextInfo.GroupId)},
                       {nameof(LibraryTextInfo.ImageUrl)},
                        {nameof(LibraryTextInfo.Summary)},
                        {nameof(LibraryTextInfo.Content)}
                   FROM {TableName} WHERE {nameof(LibraryTextInfo.Id)} = {libraryId}";

            using (var rdr = ExecuteReader(sqlString))
            {
                if (rdr.Read())
                {
                    accessTokenInfo = GetLibraryTextInfo(rdr);
                }
                rdr.Close();
            }

            return(accessTokenInfo);
        }