修改通知 添加修改上传附件
This commit is contained in:
@@ -4,14 +4,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.PutMapping;
|
|
||||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
import com.vetti.common.annotation.Log;
|
import com.vetti.common.annotation.Log;
|
||||||
import com.vetti.common.core.controller.BaseController;
|
import com.vetti.common.core.controller.BaseController;
|
||||||
import com.vetti.common.core.domain.AjaxResult;
|
import com.vetti.common.core.domain.AjaxResult;
|
||||||
@@ -22,6 +15,7 @@ import com.vetti.hotake.domain.HotakeSysNotice;
|
|||||||
import com.vetti.hotake.service.IHotakeSysNoticeService;
|
import com.vetti.hotake.service.IHotakeSysNoticeService;
|
||||||
import com.vetti.common.utils.poi.ExcelUtil;
|
import com.vetti.common.utils.poi.ExcelUtil;
|
||||||
import com.vetti.common.core.page.TableDataInfo;
|
import com.vetti.common.core.page.TableDataInfo;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通知Controller
|
* 通知Controller
|
||||||
@@ -45,6 +39,7 @@ public class HotakeSysNoticeController extends BaseController {
|
|||||||
public AjaxResult listView(HotakeSysNotice hotakeSysNotice) {
|
public AjaxResult listView(HotakeSysNotice hotakeSysNotice) {
|
||||||
return AjaxResult.success(hotakeSysNoticeService.selectHotakeSysNoticeViewList(hotakeSysNotice));
|
return AjaxResult.success(hotakeSysNoticeService.selectHotakeSysNoticeViewList(hotakeSysNotice));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取通知详细信息
|
* 获取通知详细信息
|
||||||
*/
|
*/
|
||||||
@@ -54,6 +49,7 @@ public class HotakeSysNoticeController extends BaseController {
|
|||||||
public AjaxResult viewInfo(@PathVariable("id") Long id) {
|
public AjaxResult viewInfo(@PathVariable("id") Long id) {
|
||||||
return AjaxResult.success(hotakeSysNoticeService.selectHotakeSysNoticeViewById(id));
|
return AjaxResult.success(hotakeSysNoticeService.selectHotakeSysNoticeViewById(id));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ApiOperation("全部已读")
|
@ApiOperation("全部已读")
|
||||||
@PreAuthorize("@ss.hasPermi('hotake:sysNotice:query')")
|
@PreAuthorize("@ss.hasPermi('hotake:sysNotice:query')")
|
||||||
@GetMapping(value = "/allread")
|
@GetMapping(value = "/allread")
|
||||||
@@ -101,8 +97,8 @@ public class HotakeSysNoticeController extends BaseController {
|
|||||||
@PreAuthorize("@ss.hasPermi('hotake:sysNotice:add')")
|
@PreAuthorize("@ss.hasPermi('hotake:sysNotice:add')")
|
||||||
@Log(title = "通知", businessType = BusinessType.INSERT)
|
@Log(title = "通知", businessType = BusinessType.INSERT)
|
||||||
@PostMapping
|
@PostMapping
|
||||||
public AjaxResult add(@RequestBody HotakeSysNotice hotakeSysNotice) {
|
public AjaxResult add(@RequestPart(value = "files", required = false) List<MultipartFile> files, HotakeSysNotice hotakeSysNotice) {
|
||||||
return toAjax(hotakeSysNoticeService.insertHotakeSysNotice(hotakeSysNotice));
|
return toAjax(hotakeSysNoticeService.insertHotakeSysNotice(files, hotakeSysNotice));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -112,8 +108,8 @@ public class HotakeSysNoticeController extends BaseController {
|
|||||||
@PreAuthorize("@ss.hasPermi('hotake:sysNotice:edit')")
|
@PreAuthorize("@ss.hasPermi('hotake:sysNotice:edit')")
|
||||||
@Log(title = "通知", businessType = BusinessType.UPDATE)
|
@Log(title = "通知", businessType = BusinessType.UPDATE)
|
||||||
@PutMapping
|
@PutMapping
|
||||||
public AjaxResult edit(@RequestBody HotakeSysNotice hotakeSysNotice) {
|
public AjaxResult edit(@RequestPart(value = "files", required = false) List<MultipartFile> files, HotakeSysNotice hotakeSysNotice) {
|
||||||
return toAjax(hotakeSysNoticeService.updateHotakeSysNotice(hotakeSysNotice));
|
return toAjax(hotakeSysNoticeService.updateHotakeSysNotice(files, hotakeSysNotice));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ public interface IHotakeSysFileService {
|
|||||||
*/
|
*/
|
||||||
public List<HotakeSysFileDto> selectHotakeSysFileList(HotakeSysFile hotakeSysFile);
|
public List<HotakeSysFileDto> selectHotakeSysFileList(HotakeSysFile hotakeSysFile);
|
||||||
|
|
||||||
|
public HotakeSysFile uploadFile(MultipartFile file,String minioBucketName);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增文件管理
|
* 新增文件管理
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import java.util.List;
|
|||||||
import com.vetti.hotake.domain.HotakeSysNotice;
|
import com.vetti.hotake.domain.HotakeSysNotice;
|
||||||
import com.vetti.hotake.domain.dto.HotakeSysNoticeDto;
|
import com.vetti.hotake.domain.dto.HotakeSysNoticeDto;
|
||||||
import com.vetti.hotake.domain.dto.HotakeSysNoticeViewDto;
|
import com.vetti.hotake.domain.dto.HotakeSysNoticeViewDto;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通知Service接口
|
* 通知Service接口
|
||||||
@@ -35,7 +36,7 @@ public interface IHotakeSysNoticeService
|
|||||||
* @param hotakeSysNotice 通知
|
* @param hotakeSysNotice 通知
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int insertHotakeSysNotice(HotakeSysNotice hotakeSysNotice);
|
public int insertHotakeSysNotice(List<MultipartFile> files, HotakeSysNotice hotakeSysNotice);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改通知
|
* 修改通知
|
||||||
@@ -43,7 +44,7 @@ public interface IHotakeSysNoticeService
|
|||||||
* @param hotakeSysNotice 通知
|
* @param hotakeSysNotice 通知
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int updateHotakeSysNotice(HotakeSysNotice hotakeSysNotice);
|
public int updateHotakeSysNotice(List<MultipartFile> files,HotakeSysNotice hotakeSysNotice);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量删除通知
|
* 批量删除通知
|
||||||
|
|||||||
@@ -75,6 +75,15 @@ public class HotakeSysFileServiceImpl extends BaseServiceImpl implements IHotake
|
|||||||
return l;
|
return l;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
@Override
|
||||||
|
public HotakeSysFile uploadFile(MultipartFile file, String minioBucketName) {
|
||||||
|
HotakeSysFile hotakeSysFile = new HotakeSysFile();
|
||||||
|
hotakeSysFile.setCode(System.currentTimeMillis() + "");
|
||||||
|
hotakeSysFile.setMinioBucketName(minioBucketName);
|
||||||
|
return insertHotakeSysFile(file, hotakeSysFile);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增文件管理
|
* 新增文件管理
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -5,10 +5,12 @@ import java.util.HashMap;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
import com.vetti.common.core.domain.entity.SysDictData;
|
import com.vetti.common.core.domain.entity.SysDictData;
|
||||||
import com.vetti.common.core.service.BaseServiceImpl;
|
import com.vetti.common.core.service.BaseServiceImpl;
|
||||||
import com.vetti.common.enums.FillTypeEnum;
|
import com.vetti.common.enums.FillTypeEnum;
|
||||||
import com.vetti.common.utils.DateUtils;
|
import com.vetti.common.utils.DateUtils;
|
||||||
|
import com.vetti.hotake.domain.HotakeSysFile;
|
||||||
import com.vetti.hotake.domain.dto.HotakeSysNoticeDto;
|
import com.vetti.hotake.domain.dto.HotakeSysNoticeDto;
|
||||||
import com.vetti.hotake.domain.dto.HotakeSysNoticeTypeNameDto;
|
import com.vetti.hotake.domain.dto.HotakeSysNoticeTypeNameDto;
|
||||||
import com.vetti.hotake.domain.dto.HotakeSysNoticeViewDto;
|
import com.vetti.hotake.domain.dto.HotakeSysNoticeViewDto;
|
||||||
@@ -23,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import com.vetti.hotake.mapper.HotakeSysNoticeMapper;
|
import com.vetti.hotake.mapper.HotakeSysNoticeMapper;
|
||||||
import com.vetti.hotake.domain.HotakeSysNotice;
|
import com.vetti.hotake.domain.HotakeSysNotice;
|
||||||
import com.vetti.hotake.service.IHotakeSysNoticeService;
|
import com.vetti.hotake.service.IHotakeSysNoticeService;
|
||||||
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import static com.vetti.common.utils.SecurityUtils.getLoginUser;
|
import static com.vetti.common.utils.SecurityUtils.getLoginUser;
|
||||||
|
|
||||||
@@ -44,6 +47,8 @@ public class HotakeSysNoticeServiceImpl extends BaseServiceImpl implements IHota
|
|||||||
|
|
||||||
private final String DICT_DATA_TYPE_KEY = "hotake_sys_notice_type";
|
private final String DICT_DATA_TYPE_KEY = "hotake_sys_notice_type";
|
||||||
|
|
||||||
|
private final String MINIO_BUCKET_NAME = "noticetype-fs";//数据字典minio_bucket_name 类型下的
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询通知
|
* 查询通知
|
||||||
*
|
*
|
||||||
@@ -76,8 +81,16 @@ public class HotakeSysNoticeServiceImpl extends BaseServiceImpl implements IHota
|
|||||||
*/
|
*/
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
@Override
|
@Override
|
||||||
public int insertHotakeSysNotice(HotakeSysNotice hotakeSysNotice) {
|
public int insertHotakeSysNotice(List<MultipartFile> files, HotakeSysNotice hotakeSysNotice) {
|
||||||
fill(FillTypeEnum.INSERT.getCode(), hotakeSysNotice);
|
fill(FillTypeEnum.INSERT.getCode(), hotakeSysNotice);
|
||||||
|
if (CollectionUtil.isNotEmpty(files)) {
|
||||||
|
List<String> l = new ArrayList();
|
||||||
|
for (MultipartFile file : files) {
|
||||||
|
HotakeSysFile sf = hotakeSysFileService.uploadFile(file, MINIO_BUCKET_NAME);
|
||||||
|
l.add(sf.getId() + "");
|
||||||
|
}
|
||||||
|
hotakeSysNotice.setImagePath(l);
|
||||||
|
}
|
||||||
return hotakeSysNoticeMapper.insertHotakeSysNotice(hotakeSysNotice);
|
return hotakeSysNoticeMapper.insertHotakeSysNotice(hotakeSysNotice);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -89,8 +102,16 @@ public class HotakeSysNoticeServiceImpl extends BaseServiceImpl implements IHota
|
|||||||
*/
|
*/
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
@Override
|
@Override
|
||||||
public int updateHotakeSysNotice(HotakeSysNotice hotakeSysNotice) {
|
public int updateHotakeSysNotice(List<MultipartFile> files, HotakeSysNotice hotakeSysNotice) {
|
||||||
fill(FillTypeEnum.UPDATE.getCode(), hotakeSysNotice);
|
fill(FillTypeEnum.UPDATE.getCode(), hotakeSysNotice);
|
||||||
|
if (CollectionUtil.isNotEmpty(files)) {//传附件就更新,不传不更新,传一个更新之前的所有
|
||||||
|
List<String> l = new ArrayList();
|
||||||
|
for (MultipartFile file : files) {
|
||||||
|
HotakeSysFile sf = hotakeSysFileService.uploadFile(file, MINIO_BUCKET_NAME);
|
||||||
|
l.add(sf.getId() + "");
|
||||||
|
}
|
||||||
|
hotakeSysNotice.setImagePath(l);
|
||||||
|
}
|
||||||
return hotakeSysNoticeMapper.updateHotakeSysNotice(hotakeSysNotice);
|
return hotakeSysNoticeMapper.updateHotakeSysNotice(hotakeSysNotice);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user