src/main/java/com/xcong/farmer/cms/modules/system/controller/AdminUserController.java
@@ -62,6 +62,12 @@ return iUserService.userInfo(); } @ApiOperation(value = "首页", notes = "首页") @GetMapping(value = "/viewHomePage") public Result viewHomePage() { return iUserService.viewHomePage(); } @ApiOperation(value = "更新系统用户", notes = "更新系统用户") @PostMapping(value = "/updateUser") public Result updateUser(@RequestBody @Valid AdminUpdateUserDto adminUpdateUserDto) { src/main/java/com/xcong/farmer/cms/modules/system/controller/CmsTemplateController.java
@@ -48,6 +48,12 @@ @ApiOperation(value = "模板下拉列表", notes = "模板下拉列表接口") @GetMapping(value = "/dropdownList") public Result dropdownList() { return Result.ok(cmsTemplateService.dropdownList()); return cmsTemplateService.dropdownList(); } @ApiOperation(value = "查看模板", notes = "查看模板") @GetMapping(value = "/viewTemplateInfo/{id}") public Result viewTemplateInfo(@PathVariable(value = "id") Long id) { return cmsTemplateService.viewTemplateInfo(id); } } src/main/java/com/xcong/farmer/cms/modules/system/service/ICmsTemplateService.java
@@ -17,4 +17,6 @@ void delete(Long id); Result dropdownList(); Result viewTemplateInfo(Long id); } src/main/java/com/xcong/farmer/cms/modules/system/service/IUserService.java
@@ -30,4 +30,6 @@ Result updatePassword(AdminUpdatePasswordDto adminUpdatePasswordDto); Result userInfo(); Result viewHomePage(); } src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/CmsTemplateServiceImpl.java
@@ -1,6 +1,7 @@ package com.xcong.farmer.cms.modules.system.service.Impl; import cn.hutool.core.io.FileUtil; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.ZipUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -11,6 +12,7 @@ import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.common.utils.FileUtils; import com.xcong.farmer.cms.configurations.GlobalExceptionHandler; import com.xcong.farmer.cms.configurations.properties.CmsProperties; import com.xcong.farmer.cms.core.template.TemplateConfiguration; import com.xcong.farmer.cms.modules.system.dto.TemplateListDto; import com.xcong.farmer.cms.modules.system.entity.CmsTemplateEntity; @@ -25,7 +27,12 @@ import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -95,7 +102,7 @@ cmsTemplate.setType(1); } cmsTemplate.setName(StrUtil.isNotBlank(attr) ? attr : templateFile.getName()); cmsTemplate.setPath(templateFile.getName()); cmsTemplate.setPath(IdUtil.simpleUUID()+templateFile.getName()); this.baseMapper.insert(cmsTemplate); } @@ -117,7 +124,7 @@ cmsTemplate.setType(1); } cmsTemplate.setName(StrUtil.isNotBlank(attr) ? attr : file.getName()); cmsTemplate.setPath(file.getName()); cmsTemplate.setPath(IdUtil.simpleUUID()+file.getName()); this.baseMapper.insert(cmsTemplate); } @@ -150,4 +157,29 @@ List<CmsTemplateEntity> cmsTemplateEntities = this.baseMapper.selectList(objectQueryWrapper); return Result.ok(cmsTemplateEntities); } @Autowired private CmsProperties cmsProperties; @Override public Result viewTemplateInfo(Long id) { Long companyId = LoginUserUtil.getCompanyId(); CmsTemplateEntity cmsTemplateEntity = this.baseMapper.selectById(id); String baseUrl = cmsProperties.getBaseUrl(); String templatePath = cmsProperties.getTemplatePath(); String htmlUrl = baseUrl + templatePath; String pathName = htmlUrl + "\\" + cmsTemplateEntity.getPath(); byte[] bytes = new byte[0]; try { bytes = Files.readAllBytes(Paths.get(pathName)); } catch (IOException e) { e.printStackTrace(); return Result.ok("未找到模板"); } String content = new String(bytes, StandardCharsets.UTF_8); return Result.ok(content ); } } src/main/java/com/xcong/farmer/cms/modules/system/service/Impl/UserServiceImpl.java
@@ -36,6 +36,12 @@ @Resource private RoleMenuMapper roleMenuMapper; @Resource private ColumnMapper columnMapper; @Resource private ArticleMapper articleMapper; @Resource private MessageBoardMapper messageBoardMapper; @Resource private MenuMapper menuMapper; @Override @@ -393,6 +399,39 @@ return Result.ok(adminUserInfoVo); } @Override public Result viewHomePage() { UserEntity loginUser = LoginUserUtil.getLoginUser(); Long companyId = LoginUserUtil.getCompanyId(); AdminHomePageInfoVo adminHomePageInfoVo = new AdminHomePageInfoVo(); QueryWrapper<UserRoleEntity> userRoleQueryWrapper = new QueryWrapper<>(); userRoleQueryWrapper.eq("user_id",loginUser.getId()); List<UserRoleEntity> userRoleEntities = userRoleMapper.selectList(userRoleQueryWrapper); if(CollUtil.isNotEmpty(userRoleEntities)){ List<String> roleNames = new ArrayList<>(); for(UserRoleEntity userRoleEntity : userRoleEntities){ RoleEntity roleEntity = roleMapper.selectById(userRoleEntity.getRoleId()); roleNames.add(roleEntity.getRoleName()); } adminHomePageInfoVo.setRoleNames(roleNames); } QueryWrapper<ColumnEntity> columnQueryWrapper = new QueryWrapper<>(); columnQueryWrapper.eq("company_id",companyId); adminHomePageInfoVo.setColumnNum(columnMapper.selectCount(columnQueryWrapper)); QueryWrapper<ArticleEntity> articleQueryWrapper = new QueryWrapper<>(); articleQueryWrapper.eq("company_id",companyId); adminHomePageInfoVo.setArticleNum(articleMapper.selectCount(articleQueryWrapper)); QueryWrapper<MessageBoardEntity> messageQueryWrapper = new QueryWrapper<>(); messageQueryWrapper.eq("company_id",companyId); adminHomePageInfoVo.setMessageNum(messageBoardMapper.selectCount(messageQueryWrapper)); return Result.ok(adminHomePageInfoVo); } private void saveUserRole(String roleIds,Long userId) { if (StrUtil.isNotEmpty(roleIds)) { String[] roleIdList = roleIds.split(StringPool.COMMA); src/main/java/com/xcong/farmer/cms/modules/system/vo/AdminHomePageInfoVo.java
New file @@ -0,0 +1,25 @@ package com.xcong.farmer.cms.modules.system.vo; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; @Data @ApiModel(value = "AdminHomePageInfoVo", description = "首页信息返回") public class AdminHomePageInfoVo { @ApiModelProperty(value = "栏目数量") private Integer columnNum; @ApiModelProperty(value = "文章数量") private Integer articleNum; @ApiModelProperty(value = "留言数量") private Integer messageNum; @ApiModelProperty(value = "角色") private List<String> roleNames; } src/test/java/com/xcong/farmer/cms/KssframeworkApplicationTests.java
@@ -1,11 +1,25 @@ package com.xcong.farmer.cms; import cn.hutool.core.util.ObjectUtil; import com.xcong.farmer.cms.common.response.Result; import com.xcong.farmer.cms.configurations.properties.CmsProperties; import com.xcong.farmer.cms.modules.system.entity.CmsTemplateEntity; import com.xcong.farmer.cms.modules.system.mapper.CmsTemplateMapper; import com.xcong.farmer.cms.modules.test.dao.TestUserDao; import com.xcong.farmer.cms.modules.test.entity.TestUserEntity; import org.jsoup.Jsoup; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import javax.annotation.Resource; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.util.Date; @SpringBootTest @@ -13,6 +27,9 @@ @Resource private TestUserDao testUserDao; @Resource private CmsTemplateMapper cmsTemplateMapper; @Test public void testUserInsert() { @@ -35,4 +52,32 @@ System.out.println(1); } @Autowired private CmsProperties cmsProperties; @Test public void viewTemplateInfo() { Long id = 4L; CmsTemplateEntity cmsTemplateEntity = cmsTemplateMapper.selectById(id); String htmlUrl = cmsProperties.getBaseUrl() + cmsProperties.getTemplatePath(); File uploadDir = new File(htmlUrl); if (!uploadDir.isDirectory()) { uploadDir.mkdir(); } htmlUrl = "D:\\cmshtml"; String pathName = htmlUrl+"\\"+cmsTemplateEntity.getPath(); System.out.println(pathName); byte[] bytes = new byte[0]; try { bytes = Files.readAllBytes(Paths.get(pathName)); } catch (IOException e) { e.printStackTrace(); System.out.println("未找到模板"); } String content = new String(bytes, StandardCharsets.UTF_8); System.out.println(content); } }