Browse Source

通知公告改附件

v6
蟑螂恶霸 2 years ago
parent
commit
b6708f56aa
  1. 61
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/controller/NoticeController.java
  2. 6
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/domain/Notice.java
  3. 2
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/mapper/NoticeMapper.java
  4. 75
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/service/NoticeServiceImpl.java
  5. 4
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/resources/mapper/system/NoticeMapper.xml

61
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/controller/NoticeController.java

@ -1,5 +1,6 @@
package com.zdxt.auth.project.system.notice.controller;
import java.util.HashMap;
import java.util.List;
import com.zdxt.auth.framework.web.controller.BaseController;
@ -7,17 +8,15 @@ import com.zdxt.auth.framework.web.domain.AjaxResult;
import com.zdxt.auth.framework.web.page.TableDataInfo;
import com.zdxt.auth.project.system.notice.domain.Notice;
import com.zdxt.auth.project.system.notice.service.INoticeService;
import com.zdxt.common.ZDResponse;
import com.zdxt.log.aspectj.lang.annotation.Log;
import com.zdxt.log.aspectj.lang.enums.BusinessType;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
/**
* 公告 信息操作处理
@ -74,11 +73,22 @@ public class NoticeController extends BaseController
return toAjax(noticeService.insertNotice(notice));
}
/**
* 新增保存公告
*/
@RequiresPermissions("system:notice:add")
@PostMapping("/addNoticeFile")
@ResponseBody
public AjaxResult addNoticeFile(@RequestParam("files") MultipartFile[] files, Notice notice)
{
return toAjax(noticeService.addNotice(files, notice));
}
/**
* 公告详情
*/
@GetMapping("/detail/{noticeId}")
public String detail(@PathVariable("noticeId") Long noticeId, ModelMap mmap)
public String detail(@PathVariable("noticeId") String noticeId, ModelMap mmap)
{
mmap.put("notice", noticeService.selectNoticeById(noticeId));
return prefix + "/detail";
@ -88,7 +98,7 @@ public class NoticeController extends BaseController
* 修改公告
*/
@GetMapping("/edit/{noticeId}")
public String edit(@PathVariable("noticeId") Long noticeId, ModelMap mmap)
public String edit(@PathVariable("noticeId") String noticeId, ModelMap mmap)
{
mmap.put("notice", noticeService.selectNoticeById(noticeId));
return prefix + "/edit";
@ -106,6 +116,17 @@ public class NoticeController extends BaseController
return toAjax(noticeService.updateNotice(notice));
}
/**
* 修改保存现场执法
*/
@PostMapping("/editNoticeFile")
@ResponseBody
public AjaxResult editNoticeFile(@RequestParam("files") MultipartFile[] files, Notice notice)
{
return toAjax(noticeService.editNoticeFile(files, notice));
}
/**
* 删除公告
*/
@ -117,4 +138,30 @@ public class NoticeController extends BaseController
{
return toAjax(noticeService.deleteNoticeByIds(ids));
}
/**
* 附件文件查找
* @param noticeId
* @return
*/
@PostMapping( "/queryFiles")
@ResponseBody
public ZDResponse queryFiles(String noticeId){
HashMap<String, Object> map = new HashMap<>();
map.put("filePreview", noticeService.queryFiles(noticeId));
return ZDResponse.success("获取成功",map);
}
/**
* 删除附件
*/
@PostMapping("/removeFile")
@ResponseBody
public ZDResponse removeFile(String key) {
if (noticeService.removeFile(key) > 0) {
return ZDResponse.success("操作成功");
} else {
return ZDResponse.error("操作失败");
}
}
}

6
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/domain/Notice.java

@ -16,7 +16,7 @@ public class Notice extends BaseDomain
private static final long serialVersionUID = 1L;
/** 公告ID */
private Long noticeId;
private String noticeId;
/** 公告标题 */
private String noticeTitle;
@ -30,12 +30,12 @@ public class Notice extends BaseDomain
/** 公告状态(0正常 1关闭) */
private String status;
public Long getNoticeId()
public String getNoticeId()
{
return noticeId;
}
public void setNoticeId(Long noticeId)
public void setNoticeId(String noticeId)
{
this.noticeId = noticeId;
}

2
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/mapper/NoticeMapper.java

@ -16,7 +16,7 @@ public interface NoticeMapper
* @param noticeId 公告ID
* @return 公告信息
*/
public Notice selectNoticeById(Long noticeId);
public Notice selectNoticeById(String noticeId);
/**
* 查询公告列表

75
lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/service/NoticeServiceImpl.java

@ -1,12 +1,24 @@
package com.zdxt.auth.project.system.notice.service;
import java.util.ArrayList;
import java.util.List;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import com.zdxt.auth.dto.ZdxtFileBean;
import com.zdxt.auth.feign.FileUploadApi;
import com.zdxt.auth.feign.ZdxtFileCommonApi;
import com.zdxt.common.zdxtFile.AttFileRespDTO;
import com.zdxt.common.zdxtFile.FilePreviewUtilBean;
import com.zdxt.common.zdxtFile.ZdxtFileCommon;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zdxt.auth.common.utils.security.ShiroUtils;
import com.zdxt.auth.common.utils.text.Convert;
import com.zdxt.auth.project.system.notice.mapper.NoticeMapper;
import com.zdxt.auth.project.system.notice.domain.Notice;
import org.springframework.web.multipart.MultipartFile;
/**
* 公告 服务层实现
@ -20,6 +32,12 @@ public class NoticeServiceImpl implements INoticeService
@Autowired
private NoticeMapper noticeMapper;
@Autowired
private ZdxtFileCommonApi zdxtFileCommonApi;
@Autowired
private FileUploadApi fileUploadApi;
/**
* 查询公告信息
*
@ -27,7 +45,7 @@ public class NoticeServiceImpl implements INoticeService
* @return 公告信息
*/
@Override
public Notice selectNoticeById(Long noticeId)
public Notice selectNoticeById(String noticeId)
{
return noticeMapper.selectNoticeById(noticeId);
}
@ -53,10 +71,27 @@ public class NoticeServiceImpl implements INoticeService
@Override
public int insertNotice(Notice notice)
{
notice.setNoticeId(IdUtil.fastSimpleUUID());
notice.setCreateBy(ShiroUtils.getLoginName());
return noticeMapper.insertNotice(notice);
}
@Override
public int addNotice(MultipartFile[] files, Notice notice) {
String busId = IdUtil.fastSimpleUUID();
notice.setNoticeId(busId);
notice.setCreateBy(ShiroUtils.getLoginName());
// 上传文件,并在附件表中添加记录
if (ObjectUtil.isNotEmpty(files)) {
for (MultipartFile file : files) {
if(file.getOriginalFilename() != null && !"".equals(file.getOriginalFilename())){
zdxtFileCommonApi.insertZdxtFile(file, busId, fileUploadApi.upload(file));
}
}
}
return noticeMapper.insertNotice(notice);
}
/**
* 修改公告
*
@ -70,6 +105,20 @@ public class NoticeServiceImpl implements INoticeService
return noticeMapper.updateNotice(notice);
}
@Override
public int editNoticeFile(MultipartFile[] files, Notice notice) {
// 上传文件,并在附件表中添加记录
if (ObjectUtil.isNotEmpty(files)) {
for (MultipartFile file : files) {
if(file.getOriginalFilename() != null && !"".equals(file.getOriginalFilename())){
zdxtFileCommonApi.insertZdxtFile(file, notice.getNoticeId(), fileUploadApi.upload(file));
}
}
}
notice.setUpdateBy(ShiroUtils.getLoginName());
return noticeMapper.updateNotice(notice);
}
/**
* 删除公告对象
*
@ -81,4 +130,28 @@ public class NoticeServiceImpl implements INoticeService
{
return noticeMapper.deleteNoticeByIds(Convert.toStrArray(ids));
}
@Override
public AttFileRespDTO queryFiles(String noticeId) {
ArrayList<ZdxtFileCommon> fileList = new ArrayList<>();
FilePreviewUtilBean filePreviewUtilBean = new FilePreviewUtilBean();
if(noticeId ==null || "".equals(noticeId)){
return filePreviewUtilBean.attachementToAttFileRespDTO(fileList);
}
ZdxtFileBean zdxtFileBeanCondition = new ZdxtFileBean();
zdxtFileBeanCondition.setBusinessId(noticeId);
List<ZdxtFileBean> fileBeanList = zdxtFileCommonApi.selectZdxtFileList(zdxtFileBeanCondition);
for (ZdxtFileBean fileBean : fileBeanList) {
ZdxtFileCommon zdxtFileCommon = new ZdxtFileCommon();
BeanUtil.copyProperties(fileBean, zdxtFileCommon);
fileList.add(zdxtFileCommon);
}
return filePreviewUtilBean.attachementToAttFileRespDTO(fileList);
}
@Override
public int removeFile(String key) {
return zdxtFileCommonApi.deleteZdxtFileById(key);
}
}

4
lib/EmergencyService/zdxtEmergencyAuthService/src/main/resources/mapper/system/NoticeMapper.xml

@ -22,7 +22,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
from sys_notice
</sql>
<select id="selectNoticeById" parameterType="Long" resultMap="NoticeResult">
<select id="selectNoticeById" parameterType="string" resultMap="NoticeResult">
<include refid="selectNoticeVo"/>
where notice_id = #{noticeId}
</select>
@ -44,6 +44,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<insert id="insertNotice" parameterType="Notice">
insert into sys_notice (
<if test="noticeId != null and noticeId != '' ">notice_id, </if>
<if test="noticeTitle != null and noticeTitle != '' ">notice_title, </if>
<if test="noticeType != null and noticeType != '' ">notice_type, </if>
<if test="noticeContent != null and noticeContent != '' ">notice_content, </if>
@ -52,6 +53,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="createBy != null and createBy != ''">create_by,</if>
create_time
)values(
<if test="noticeId != null and noticeId != '' ">#{noticeId}, </if>
<if test="noticeTitle != null and noticeTitle != ''">#{noticeTitle}, </if>
<if test="noticeType != null and noticeType != ''">#{noticeType}, </if>
<if test="noticeContent != null and noticeContent != ''">#{noticeContent}, </if>

Loading…
Cancel
Save