From d60406e8f251a7c8343825403f5fd71de1680975 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期一, 08 八月 2022 13:31:48 +0800 Subject: [PATCH] bug解决 --- src/main/java/com/example/jz/controller/PublicityController.java | 46 ++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 42 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/example/jz/controller/PublicityController.java b/src/main/java/com/example/jz/controller/PublicityController.java index 107e9bf..7a24eb8 100644 --- a/src/main/java/com/example/jz/controller/PublicityController.java +++ b/src/main/java/com/example/jz/controller/PublicityController.java @@ -2,18 +2,27 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; - import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.example.jz.dao.UserDao; import com.example.jz.modle.PageParam; -import com.example.jz.modle.entity.Publicity; import com.example.jz.modle.R; +import com.example.jz.modle.entity.Publicity; +import com.example.jz.modle.entity.User; +import com.example.jz.modle.vo.PublicityVo; import com.example.jz.service.PublicityService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiResponse; +import lombok.SneakyThrows; +import org.springframework.beans.BeanUtils; +import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; import javax.annotation.Resource; import java.io.Serializable; +import java.util.ArrayList; import java.util.Date; /** @@ -31,6 +40,8 @@ */ @Resource private PublicityService publicityService; + @Resource + UserDao userDao; /** * 鍒嗛〉鏌ヨ鎵�鏈夋暟鎹� @@ -41,8 +52,24 @@ */ @GetMapping @ApiOperation("鍒嗛〉鏌ヨ鎵�鏈夋暟鎹�") - public R<IPage<Publicity>> selectAll(PageParam<Publicity> page, Publicity publicity) { - return R.ok(publicityService.page(page, new QueryWrapper<>(publicity))); + public R<IPage<PublicityVo>> selectAll(PageParam<Publicity> page, Publicity publicity) { + ArrayList<PublicityVo> publicityVos = new ArrayList<>(); + PageParam<Publicity> publicityPageParam ; + if (publicity.getStatus()!=null ){ + publicityPageParam = publicityService.page(page, new QueryWrapper<Publicity>().like(StringUtils.isNotBlank(publicity.getPublicityTitle()),"publicity_title",publicity.getPublicityTitle()).eq("status",publicity.getStatus()).orderByDesc("ctime")); + }else { + publicityPageParam = publicityService.page(page, new QueryWrapper<Publicity>().like(StringUtils.isNotBlank(publicity.getPublicityTitle()),"publicity_title",publicity.getPublicityTitle()).orderByDesc("ctime")); + } + publicityPageParam.getRecords().forEach(item->{ + PublicityVo publicityVo = new PublicityVo(); + BeanUtils.copyProperties(item,publicityVo); + publicityVo.setUserName(userDao.selectOne(new QueryWrapper<User>().eq("id",item.getCreator())).getRealName()); + publicityVos.add(publicityVo); + }); + PageParam<PublicityVo> publicityVoPageParam = new PageParam<>(); + BeanUtils.copyProperties(publicityPageParam,publicityVoPageParam); + publicityVoPageParam.setRecords(publicityVos); + return R.ok(publicityVoPageParam); } /** @@ -66,7 +93,9 @@ @PostMapping @ApiOperation("娣诲姞鍏叡瀹d紶") public R<Boolean> insert(@RequestBody Publicity publicity) { + publicity.setStatus(0); publicity.setCtime(new Date()); + publicity.setCreator(userDao.selectOne(new QueryWrapper<User>().eq("login_username", SecurityContextHolder.getContext().getAuthentication().getPrincipal())).getId()); return R.ok(publicityService.save(publicity)); } @@ -117,4 +146,13 @@ public R<Boolean> delete(@PathVariable Serializable id) { return R.ok(publicityService.removeById(id)); } + + @ApiOperation(httpMethod = "POST", value = "妗堜欢鍙�-妗堜欢褰曞叆-妗堜欢瀵煎叆") + @PostMapping("/upload") + @ApiResponse(message = "鎵ц鎴愬姛", code = 200) + @SneakyThrows + public R upload(@RequestParam(value = "multipartFile") MultipartFile multipartFile) { + publicityService.loadFile(multipartFile); + return R.ok(); + } } -- Gitblit v1.8.0