From c65a55b7dbf62c3e044f0f47f709e6e5039ecf67 Mon Sep 17 00:00:00 2001 From: shil <452061493@qq.com> Date: Thu, 5 Jun 2025 20:21:42 +0800 Subject: [PATCH] =?UTF-8?q?=E8=81=94=E5=90=88=E7=99=BB=E8=AE=B0,=20?= =?UTF-8?q?=E5=92=8C=E9=80=9A=E7=9F=A5=E7=9A=84fpd=E9=99=84=E4=BB=B6?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AppThirdLoginController.java | 2 +- .../project/system/notice/domain/Notice.java | 535 +++++++++--------- .../notice/service/NoticeServiceImpl.java | 358 ++++++------ .../code/statistical/single-analysis.html | 3 +- .../mapper/EnforcementRegistrationMapper.java | 321 +++++------ .../EnforcementRegistrationServiceImpl.java | 53 +- .../impl/StatisticalPaneServiceImpl.java | 12 +- .../mapper/EnforcementRegistrationMapper.xml | 20 +- 8 files changed, 691 insertions(+), 613 deletions(-) diff --git a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppThirdLoginController.java b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppThirdLoginController.java index 8ceeeeee..799886de 100644 --- a/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppThirdLoginController.java +++ b/lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppThirdLoginController.java @@ -147,7 +147,7 @@ public class AppThirdLoginController { // 获取 用户Id userJson = HttpUtil.HttpSendGet(szyptUrl + "/cgi-bin/user/getuserinfo?access_token="+token+"&code="+code, null); - + log.info(">>> 市认证用户信息: {}", userJson); JSONObject userOjb = JSONObject.parseObject(userJson); String userId = userOjb.getString("UserId"); diff --git a/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/domain/Notice.java b/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/domain/Notice.java index 308c37f6..47cc5be0 100644 --- a/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/domain/Notice.java +++ b/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/domain/Notice.java @@ -1,263 +1,272 @@ -package com.zdxt.auth.project.system.notice.domain; - -import javax.tools.FileObject; -import javax.validation.constraints.*; -import javax.validation.constraints.Size; -import com.zdxt.common.BaseDomain; -import org.apache.commons.lang3.builder.ToStringBuilder; -import org.apache.commons.lang3.builder.ToStringStyle; - -import java.util.Date; -import java.util.List; - -/** - * 通知公告表 sys_notice - * - * @author ruoyi - */ -public class Notice extends BaseDomain -{ - private static final long serialVersionUID = 1L; - - /** 通知ID */ - private String noticeId; - - /** 通知标题 */ - private String noticeTitle; - - /** 发布对象(0全部 1监督端 2执法端 3 企业端) */ - private String objectType; - - /** 通知内容 */ - private String noticeContent; - - /** 公告状态(0正常 1关闭) */ - private String status; - /** 创建者id */ - private String createBy; - /** 创建时间 */ - private Date createTime; - /** 更新时间 */ - private Date updateTime; - /** 更新者 */ - private String updateBy; - /** 发布部门多个 */ - private String bureauDeptIds; - /** 发布部门名称多个 */ - private String bureauDeptNames; - /** 备注 */ - private String remark; - /** 发布部门名称列表 */ - private List bureauDeptNameList; - private String beginTime; - private String endTime; - private String createTimeStr; - - private FileObject fileObject; - - - /** - * 文件对象 - */ - public static class FileObject{ - private String fileName; - private String fileUrl; - - public String getFileName() { - return fileName; - } - - public void setFileName(String fileName) { - this.fileName = fileName; - } - - public String getFileUrl() { - return fileUrl; - } - - public void setFileUrl(String fileUrl) { - this.fileUrl = fileUrl; - } - } - - public FileObject getFileObject() { - return fileObject; - } - - public void setFileObject(FileObject fileObject) { - this.fileObject = fileObject; - } - - - - public String getNoticeId() - { - return noticeId; - } - - public void setNoticeId(String noticeId) - { - this.noticeId = noticeId; - } - - public void setNoticeTitle(String noticeTitle) - { - this.noticeTitle = noticeTitle; - } - - @NotBlank(message = "公告标题不能为空") - @Size(min = 0, max = 50, message = "公告标题不能超过50个字符") - public String getNoticeTitle() - { - return noticeTitle; - } - - public String getObjectType() { - return objectType; - } - - public void setObjectType(String objectType) { - this.objectType = objectType; - } - - public void setNoticeContent(String noticeContent) - { - this.noticeContent = noticeContent; - } - - public String getNoticeContent() - { - return noticeContent; - } - - public void setStatus(String status) - { - this.status = status; - } - - public String getStatus() - { - return status; - } - - @Override - public String getCreateBy() { - return createBy; - } - - @Override - public void setCreateBy(String createBy) { - this.createBy = createBy; - } - - @Override - public Date getCreateTime() { - return createTime; - } - - @Override - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } - - @Override - public Date getUpdateTime() { - return updateTime; - } - - @Override - public void setUpdateTime(Date updateTime) { - this.updateTime = updateTime; - } - - @Override - public String getUpdateBy() { - return updateBy; - } - - @Override - public void setUpdateBy(String updateBy) { - this.updateBy = updateBy; - } - - public String getBureauDeptIds() { - return bureauDeptIds; - } - - public void setBureauDeptIds(String bureauDeptIds) { - this.bureauDeptIds = bureauDeptIds; - } - - public String getBureauDeptNames() { - return bureauDeptNames; - } - - public void setBureauDeptNames(String bureauDeptNames) { - this.bureauDeptNames = bureauDeptNames; - } - - @Override - public String getRemark() { - return remark; - } - - @Override - public void setRemark(String remark) { - this.remark = remark; - } - - public List getBureauDeptNameList() { - return bureauDeptNameList; - } - - public void setBureauDeptNameList(List bureauDeptNameList) { - this.bureauDeptNameList = bureauDeptNameList; - } - - public String getBeginTime() { - return beginTime; - } - - public void setBeginTime(String beginTime) { - this.beginTime = beginTime; - } - - public String getEndTime() { - return endTime; - } - - public void setEndTime(String endTime) { - this.endTime = endTime; - } - - public String getCreateTimeStr() { - return createTimeStr; - } - - public void setCreateTimeStr(String createTimeStr) { - this.createTimeStr = createTimeStr; - } - - @Override - public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("noticeId", getNoticeId()) - .append("noticeTitle", getNoticeTitle()) - .append("objectType", getObjectType()) - .append("noticeContent", getNoticeContent()) - .append("status", getStatus()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .append("bureauDeptIds",getBureauDeptIds()) - .append("bureauDeptNames",getBureauDeptNames()) - .append("remark", getRemark()) - .append("bureauDeptNameList",getBureauDeptNameList()) - .append("beginTime",getBeginTime()) - .append("endTime",getEndTime()) - .append("createTimeStr",getCreateTimeStr()) - .toString(); - } - -} +package com.zdxt.auth.project.system.notice.domain; + +import javax.tools.FileObject; +import javax.validation.constraints.*; +import javax.validation.constraints.Size; +import com.zdxt.common.BaseDomain; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; +import java.util.List; + +/** + * 通知公告表 sys_notice + * + * @author ruoyi + */ +public class Notice extends BaseDomain +{ + private static final long serialVersionUID = 1L; + + /** 通知ID */ + private String noticeId; + + /** 通知标题 */ + private String noticeTitle; + + /** 发布对象(0全部 1监督端 2执法端 3 企业端) */ + private String objectType; + + /** 通知内容 */ + private String noticeContent; + + /** 公告状态(0正常 1关闭) */ + private String status; + /** 创建者id */ + private String createBy; + /** 创建时间 */ + private Date createTime; + /** 更新时间 */ + private Date updateTime; + /** 更新者 */ + private String updateBy; + /** 发布部门多个 */ + private String bureauDeptIds; + /** 发布部门名称多个 */ + private String bureauDeptNames; + /** 备注 */ + private String remark; + /** 发布部门名称列表 */ + private List bureauDeptNameList; + private String beginTime; + private String endTime; + private String createTimeStr; + + private FileObject fileObject; + + private List fileObjects; + + /** + * 文件对象 + */ + public static class FileObject{ + private String fileName; + private String fileUrl; + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileUrl() { + return fileUrl; + } + + public void setFileUrl(String fileUrl) { + this.fileUrl = fileUrl; + } + } + + public FileObject getFileObject() { + return fileObject; + } + + public void setFileObject(FileObject fileObject) { + this.fileObject = fileObject; + } + + public List getFileObjects() { + return fileObjects; + } + + public void setFileObjects(List fileObjects) { + this.fileObjects = fileObjects; + } + + + + public String getNoticeId() + { + return noticeId; + } + + public void setNoticeId(String noticeId) + { + this.noticeId = noticeId; + } + + public void setNoticeTitle(String noticeTitle) + { + this.noticeTitle = noticeTitle; + } + + @NotBlank(message = "公告标题不能为空") + @Size(min = 0, max = 50, message = "公告标题不能超过50个字符") + public String getNoticeTitle() + { + return noticeTitle; + } + + public String getObjectType() { + return objectType; + } + + public void setObjectType(String objectType) { + this.objectType = objectType; + } + + public void setNoticeContent(String noticeContent) + { + this.noticeContent = noticeContent; + } + + public String getNoticeContent() + { + return noticeContent; + } + + public void setStatus(String status) + { + this.status = status; + } + + public String getStatus() + { + return status; + } + + @Override + public String getCreateBy() { + return createBy; + } + + @Override + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + @Override + public Date getCreateTime() { + return createTime; + } + + @Override + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public Date getUpdateTime() { + return updateTime; + } + + @Override + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + @Override + public String getUpdateBy() { + return updateBy; + } + + @Override + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public String getBureauDeptIds() { + return bureauDeptIds; + } + + public void setBureauDeptIds(String bureauDeptIds) { + this.bureauDeptIds = bureauDeptIds; + } + + public String getBureauDeptNames() { + return bureauDeptNames; + } + + public void setBureauDeptNames(String bureauDeptNames) { + this.bureauDeptNames = bureauDeptNames; + } + + @Override + public String getRemark() { + return remark; + } + + @Override + public void setRemark(String remark) { + this.remark = remark; + } + + public List getBureauDeptNameList() { + return bureauDeptNameList; + } + + public void setBureauDeptNameList(List bureauDeptNameList) { + this.bureauDeptNameList = bureauDeptNameList; + } + + public String getBeginTime() { + return beginTime; + } + + public void setBeginTime(String beginTime) { + this.beginTime = beginTime; + } + + public String getEndTime() { + return endTime; + } + + public void setEndTime(String endTime) { + this.endTime = endTime; + } + + public String getCreateTimeStr() { + return createTimeStr; + } + + public void setCreateTimeStr(String createTimeStr) { + this.createTimeStr = createTimeStr; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("noticeId", getNoticeId()) + .append("noticeTitle", getNoticeTitle()) + .append("objectType", getObjectType()) + .append("noticeContent", getNoticeContent()) + .append("status", getStatus()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("bureauDeptIds",getBureauDeptIds()) + .append("bureauDeptNames",getBureauDeptNames()) + .append("remark", getRemark()) + .append("bureauDeptNameList",getBureauDeptNameList()) + .append("beginTime",getBeginTime()) + .append("endTime",getEndTime()) + .append("createTimeStr",getCreateTimeStr()) + .toString(); + } + +} diff --git a/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/service/NoticeServiceImpl.java b/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/service/NoticeServiceImpl.java index 0f0d08a8..94e9032d 100644 --- a/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/service/NoticeServiceImpl.java +++ b/lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/service/NoticeServiceImpl.java @@ -1,173 +1,185 @@ -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; - -/** - * 公告 服务层实现 - * - * @author ruoyi - * @date 2018-06-25 - */ -@Service -public class NoticeServiceImpl implements INoticeService -{ - @Autowired - private NoticeMapper noticeMapper; - - @Autowired - private ZdxtFileCommonApi zdxtFileCommonApi; - - @Autowired - private FileUploadApi fileUploadApi; - - /** - * 查询公告信息 - * - * @param noticeId 公告ID - * @return 公告信息 - */ - @Override - public Notice selectNoticeById(String noticeId) - { - return noticeMapper.selectNoticeById(noticeId); - } - - /** - * 查询公告列表 - * - * @param notice 公告信息 - * @return 公告集合 - */ - @Override - public List selectNoticeList(Notice notice) - { - return noticeMapper.selectNoticeList(notice); - } - - @Override - public List selectNoticeListNoPermission(Notice notice) { - List list = - noticeMapper.selectNoticeList(notice); - list.forEach(res ->{ - List zdxtFileCommons = zdxtFileCommonApi.selectZdxtFileById(res.getNoticeId()); - if(zdxtFileCommons != null && zdxtFileCommons.size() > 0){ - Notice.FileObject fileObject = new Notice.FileObject(); - fileObject.setFileName(zdxtFileCommons.get(0).getFileName()); - fileObject.setFileUrl(zdxtFileCommons.get(0).getUploadPath()); - res.setFileObject(fileObject); - } - }); - return list; - } - - /** - * 新增公告 - * - * @param notice 公告信息 - * @return 结果 - */ - @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); - } - - /** - * 修改公告 - * - * @param notice 公告信息 - * @return 结果 - */ - @Override - public int updateNotice(Notice notice) - { - notice.setUpdateBy(ShiroUtils.getLoginName()); - 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); - } - - /** - * 删除公告对象 - * - * @param ids 需要删除的数据ID - * @return 结果 - */ - @Override - public int deleteNoticeByIds(String ids) - { - return noticeMapper.deleteNoticeByIds(Convert.toStrArray(ids)); - } - - @Override - public AttFileRespDTO queryFiles(String noticeId) { - ArrayList fileList = new ArrayList<>(); - FilePreviewUtilBean filePreviewUtilBean = new FilePreviewUtilBean(); - if(noticeId ==null || "".equals(noticeId)){ - return filePreviewUtilBean.attachementToAttFileRespDTO(fileList); - } - ZdxtFileBean zdxtFileBeanCondition = new ZdxtFileBean(); - zdxtFileBeanCondition.setBusinessId(noticeId); - List 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); - } -} +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; + +/** + * 公告 服务层实现 + * + * @author ruoyi + * @date 2018-06-25 + */ +@Service +public class NoticeServiceImpl implements INoticeService +{ + @Autowired + private NoticeMapper noticeMapper; + + @Autowired + private ZdxtFileCommonApi zdxtFileCommonApi; + + @Autowired + private FileUploadApi fileUploadApi; + + /** + * 查询公告信息 + * + * @param noticeId 公告ID + * @return 公告信息 + */ + @Override + public Notice selectNoticeById(String noticeId) + { + Notice notice = noticeMapper.selectNoticeById(noticeId); + List zdxtFileCommons = zdxtFileCommonApi.selectZdxtFileById(notice.getNoticeId()); + List fs = new ArrayList<>(); + for (ZdxtFileCommon f : zdxtFileCommons) { + if(zdxtFileCommons != null && zdxtFileCommons.size() > 0){ + Notice.FileObject fileObject = new Notice.FileObject(); + fileObject.setFileName(zdxtFileCommons.get(0).getFileName()); + fileObject.setFileUrl(zdxtFileCommons.get(0).getUploadPath()); + fs.add(fileObject); + } + } + notice.setFileObjects(fs); + return notice; + } + + /** + * 查询公告列表 + * + * @param notice 公告信息 + * @return 公告集合 + */ + @Override + public List selectNoticeList(Notice notice) + { + return noticeMapper.selectNoticeList(notice); + } + + @Override + public List selectNoticeListNoPermission(Notice notice) { + List list = + noticeMapper.selectNoticeList(notice); + list.forEach(res ->{ + List zdxtFileCommons = zdxtFileCommonApi.selectZdxtFileById(res.getNoticeId()); + if(zdxtFileCommons != null && zdxtFileCommons.size() > 0){ + Notice.FileObject fileObject = new Notice.FileObject(); + fileObject.setFileName(zdxtFileCommons.get(0).getFileName()); + fileObject.setFileUrl(zdxtFileCommons.get(0).getUploadPath()); + res.setFileObject(fileObject); + } + }); + return list; + } + + /** + * 新增公告 + * + * @param notice 公告信息 + * @return 结果 + */ + @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); + } + + /** + * 修改公告 + * + * @param notice 公告信息 + * @return 结果 + */ + @Override + public int updateNotice(Notice notice) + { + notice.setUpdateBy(ShiroUtils.getLoginName()); + 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); + } + + /** + * 删除公告对象 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + @Override + public int deleteNoticeByIds(String ids) + { + return noticeMapper.deleteNoticeByIds(Convert.toStrArray(ids)); + } + + @Override + public AttFileRespDTO queryFiles(String noticeId) { + ArrayList fileList = new ArrayList<>(); + FilePreviewUtilBean filePreviewUtilBean = new FilePreviewUtilBean(); + if(noticeId ==null || "".equals(noticeId)){ + return filePreviewUtilBean.attachementToAttFileRespDTO(fileList); + } + ZdxtFileBean zdxtFileBeanCondition = new ZdxtFileBean(); + zdxtFileBeanCondition.setBusinessId(noticeId); + List 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); + } +} diff --git a/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/code/statistical/single-analysis.html b/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/code/statistical/single-analysis.html index 81950e15..b5808d9d 100644 --- a/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/code/statistical/single-analysis.html +++ b/lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/code/statistical/single-analysis.html @@ -432,7 +432,6 @@ html += ' '; html += ''; } - console.log(html.length); $("#sixIndicators").html(html); } }, @@ -511,7 +510,7 @@ html += ' '+datas[i].per+'' html += '' } - $("#complaint_category").html(html); + // $("#complaint_category").html(html); } }, error: function (error) { diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnforcementRegistrationMapper.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnforcementRegistrationMapper.java index cf95aa80..5d87996e 100644 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnforcementRegistrationMapper.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnforcementRegistrationMapper.java @@ -1,160 +1,161 @@ -package com.zdxt.code.mapper; - -import com.zdxt.code.domain.EnforceRegCount; -import com.zdxt.code.domain.EnforcementRegistration; -import com.zdxt.code.domain.SearchType; -import com.zdxt.code.domain.dto.EnforcementRegistrationDto; -import org.apache.ibatis.annotations.Param; - -import java.util.List; -import java.util.Map; - -/** - * 执法端-执法登记Mapper接口 - * - * @author chenrui - * @date 2024-02-23 - */ -public interface EnforcementRegistrationMapper -{ - /** - * 查询执法端-执法登记 - * - * @param id 执法端-执法登记ID - * @return 执法端-执法登记 - */ - EnforcementRegistration selectEnforcementRegistrationById(String id); - EnforcementRegistration selectEnforcementRegistrationByLawId(String id); - - /** - * 查询执法端-执法登记列表 - * - * @param enforcementRegistration 执法端-执法登记 - * @return 执法端-执法登记集合 - */ - List selectEnforcementRegistrationList(EnforcementRegistration enforcementRegistration); - - List selectEnforcementRegistrationListNew(EnforcementRegistration enforcementRegistration); - - List selectEnforcementRegistrationByEpId(EnforcementRegistration enforcementRegistration); - List selectEnforcementRegistrationList1(EnforcementRegistration enforcementRegistration); - List selectEnforcementRegistrationAndAddressList(EnforcementRegistration enforcementRegistration); - /*substring(i.enterprise_address,INSTR(i.enterprise_address, '深圳市')+3,INSTR(i.enterprise_address, '区')-3)as qy,substring(i.enterprise_address,INSTR(i.enterprise_address, '区')+1,INSTR(i.enterprise_address, '街道')-INSTR(i.enterprise_address, '区')+1)as jd*/ - List selectUnite(EnforcementRegistration enforcementRegistration); - /** - * 查询企业端-执法登记列表 - * - * @param enforcementRegistration 企业端-执法登记 - * @return 企业端-执法登记集合 - */ - List selectEnterpriseRegistrationList(EnforcementRegistration enforcementRegistration); - - /** - * 新增执法端-执法登记 - * - * @param enforcementRegistration 执法端-执法登记 - * @return 结果 - */ - int insertEnforcementRegistration(EnforcementRegistration enforcementRegistration); - - /** - * 修改执法端-执法登记 - * - * @param enforcementRegistration 执法端-执法登记 - * @return 结果 - */ - int updateEnforcementRegistration(EnforcementRegistration enforcementRegistration); - - /** - * 删除执法端-执法登记 - * - * @param id 执法端-执法登记ID - * @return 结果 - */ - int deleteEnforcementRegistrationById(String id); - - /** - * 批量删除执法端-执法登记 - * - * @param ids 需要删除的数据ID - * @return 结果 - */ - int deleteEnforcementRegistrationByIds(String[] ids); - - /** - * 查询企业端-执法部门预约记录列表 - */ - List countMentByTime(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue); - List countMentByTime2(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue); - - /** - * 执法预警-统计执法部门执法数量 - * @param beginTime - * @return - */ - List countMentByTimeLawNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime); - /** - * 执法预警-统计企业执法数量 - * @param beginTime - * @return - */ - List countMentByTimeQyNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime); - - List selectAllList(EnforcementRegistration enforcementRegistration); - - /** - * 统计分析,统计分类列表 - * @param enforcementRegistrationDto - * @return - */ - List staticEnforcementRegistration(EnforcementRegistrationDto enforcementRegistrationDto); - List staticEnforcementRegistrationLI(EnforcementRegistrationDto enforcementRegistrationDto); - - /** - * 统计分析,统计分类列表 - * @param enforcementRegistrationDto - * @return - */ - List staticEnforcementRegistrationDetail(EnforcementRegistrationDto enforcementRegistrationDto); - - /** - * 用于移动端统计第一部分 - * @param searchType - * @return - */ - List selectAppStatisticsPart1(SearchType searchType); - - /** - * 传入userId或bureauDeptId得符合记录的部门 - * @param searchType - * @return - */ - ListselectGroupByDeptList(SearchType searchType); - /** - * 传入联合执法批次id和本次执法id--得此次联合执法除本身外的部门 - * @param enforcementRegistration - * @return - */ - ListselectUniteGroupByDeptList(EnforcementRegistration enforcementRegistration); - /** - * 传入联合执法批次id和本次执法id--得此次联合执法除本身外的记录 - * @param enforcementRegistration - * @return - */ - ListselectUniteNotItself(EnforcementRegistration enforcementRegistration); - - /** - * 用来 - * @param enforcementRegistration - * @return - */ - List selectEnforcementRegistrationByUnion(EnforcementRegistration enforcementRegistration); - - /** - * 根据联合检查 - * - * @param enforcementRegistration 执法端-执法登记 - * @return 结果 - */ - int updateRegToUnionFlag(EnforcementRegistration enforcementRegistration); -} +package com.zdxt.code.mapper; + +import com.zdxt.code.domain.EnforceRegCount; +import com.zdxt.code.domain.EnforcementRegistration; +import com.zdxt.code.domain.SearchType; +import com.zdxt.code.domain.dto.EnforcementRegistrationDto; +import org.apache.ibatis.annotations.Param; + +import java.util.List; +import java.util.Map; + +/** + * 执法端-执法登记Mapper接口 + * + * @author chenrui + * @date 2024-02-23 + */ +public interface EnforcementRegistrationMapper +{ + /** + * 查询执法端-执法登记 + * + * @param id 执法端-执法登记ID + * @return 执法端-执法登记 + */ + EnforcementRegistration selectEnforcementRegistrationById(String id); + EnforcementRegistration selectEnforcementRegistrationByLawId(String id); + + /** + * 查询执法端-执法登记列表 + * + * @param enforcementRegistration 执法端-执法登记 + * @return 执法端-执法登记集合 + */ + List selectEnforcementRegistrationList(EnforcementRegistration enforcementRegistration); + + List selectEnforcementRegistrationListNew(EnforcementRegistration enforcementRegistration); + + List selectEnforcementRegistrationByEpId(EnforcementRegistration enforcementRegistration); + List selectEnforcementRegistrationList1(EnforcementRegistration enforcementRegistration); + List selectEnforcementRegistrationAndAddressList(EnforcementRegistration enforcementRegistration); + /*substring(i.enterprise_address,INSTR(i.enterprise_address, '深圳市')+3,INSTR(i.enterprise_address, '区')-3)as qy,substring(i.enterprise_address,INSTR(i.enterprise_address, '区')+1,INSTR(i.enterprise_address, '街道')-INSTR(i.enterprise_address, '区')+1)as jd*/ + List selectUnite(EnforcementRegistration enforcementRegistration); + /** + * 查询企业端-执法登记列表 + * + * @param enforcementRegistration 企业端-执法登记 + * @return 企业端-执法登记集合 + */ + List selectEnterpriseRegistrationList(EnforcementRegistration enforcementRegistration); + + /** + * 新增执法端-执法登记 + * + * @param enforcementRegistration 执法端-执法登记 + * @return 结果 + */ + int insertEnforcementRegistration(EnforcementRegistration enforcementRegistration); + + /** + * 修改执法端-执法登记 + * + * @param enforcementRegistration 执法端-执法登记 + * @return 结果 + */ + int updateEnforcementRegistration(EnforcementRegistration enforcementRegistration); + + /** + * 删除执法端-执法登记 + * + * @param id 执法端-执法登记ID + * @return 结果 + */ + int deleteEnforcementRegistrationById(String id); + + /** + * 批量删除执法端-执法登记 + * + * @param ids 需要删除的数据ID + * @return 结果 + */ + int deleteEnforcementRegistrationByIds(String[] ids); + + /** + * 查询企业端-执法部门预约记录列表 + */ + List countMentByTime(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue); + List countMentByTime2(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue); + + /** + * 执法预警-统计执法部门执法数量 + * @param beginTime + * @return + */ + List countMentByTimeLawNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime); + /** + * 执法预警-统计企业执法数量 + * @param beginTime + * @return + */ + List countMentByTimeQyNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime); + + List selectAllList(EnforcementRegistration enforcementRegistration); + + /** + * 统计分析,统计分类列表 + * @param enforcementRegistrationDto + * @return + */ + List staticEnforcementRegistration(EnforcementRegistrationDto enforcementRegistrationDto); + List staticEnforcementRegistrationLI(EnforcementRegistrationDto enforcementRegistrationDto); + + /** + * 统计分析,统计分类列表 + * @param enforcementRegistrationDto + * @return + */ + List staticEnforcementRegistrationDetail(EnforcementRegistrationDto enforcementRegistrationDto); + + /** + * 用于移动端统计第一部分 + * @param searchType + * @return + */ + List selectAppStatisticsPart1(SearchType searchType); + + /** + * 传入userId或bureauDeptId得符合记录的部门 + * @param searchType + * @return + */ + ListselectGroupByDeptList(SearchType searchType); + /** + * 传入联合执法批次id和本次执法id--得此次联合执法除本身外的部门 + * @param enforcementRegistration + * @return + */ + ListselectUniteGroupByDeptList(EnforcementRegistration enforcementRegistration); + /** + * 传入联合执法批次id和本次执法id--得此次联合执法除本身外的记录 + * @param enforcementRegistration + * @return + */ + ListselectUniteNotItself(EnforcementRegistration enforcementRegistration); + + /** + * 用来 + * @param enforcementRegistration + * @return + */ + List selectEnforcementRegistrationByUnion(EnforcementRegistration enforcementRegistration); + int outTimeByUnion(EnforcementRegistration enforcementRegistration); + + /** + * 根据联合检查 + * + * @param enforcementRegistration 执法端-执法登记 + * @return 结果 + */ + int updateRegToUnionFlag(EnforcementRegistration enforcementRegistration); +} diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnforcementRegistrationServiceImpl.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnforcementRegistrationServiceImpl.java index cc5a5f31..63cd1522 100644 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnforcementRegistrationServiceImpl.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnforcementRegistrationServiceImpl.java @@ -415,7 +415,7 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat if (StringUtils.isNotEmpty(enforcementRegistration.getId())) { EnforcementRegistration raw_data = selectEnforcementRegistrationById(enforcementRegistration.getId()); // 如果是联合执法 - if (1 == raw_data.getHasUnion()) { + if (1 == raw_data.getHasUnion() && 1 == enforcementRegistration.getHasUnion()) { // 如果联合的部门没改变, 则无需处理! if (!raw_data.getUnionNo().equals(enforcementRegistration.getUnionNo())) { // 如果改变, 这通过原联合code查出已联合数量, 数量>2则无需修改他人数据, 2<=则将他人的联合标签hasUnion设为0 @@ -436,6 +436,22 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat enforcementRegistrationMapper.updateRegToUnionFlag(updateUnionParams2); } } + } else { + EnforcementRegistration er = new EnforcementRegistration(); + er.setUnionNo(raw_data.getUnionNo()); + List raw_unions = enforcementRegistrationMapper.selectEnforcementRegistrationByUnion(er); + if (raw_unions.size() <= 2) { + // 将原自身 union_no 清空 将所有关联的 has_union 置 0 + EnforcementRegistration updateUnionParams1 = new EnforcementRegistration(); + updateUnionParams1.setUnionNo("-1"); + updateUnionParams1.setId(raw_data.getId()); + enforcementRegistrationMapper.updateEnforcementRegistration(updateUnionParams1); + + EnforcementRegistration updateUnionParams2 = new EnforcementRegistration(); + updateUnionParams2.setUnionNo(raw_data.getUnionNo()); + updateUnionParams2.setHasUnion(0); + enforcementRegistrationMapper.updateRegToUnionFlag(updateUnionParams2); + } } } // 然后开始走新增联合执法的流程 @@ -1130,7 +1146,7 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat // 定义时间格式 DateTimeFormatter time_formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); // 定义时间格式 - DateTimeFormatter date_formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); +// DateTimeFormatter date_formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); // 获取当前时间 LocalDateTime now_tmp = LocalDateTime.now(); @@ -1145,24 +1161,47 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat LocalDateTime dateTime = LocalDateTime.parse(enforcementTime, time_formatter); // 获取登记前一个小时的时间 LocalDateTime oneHourAgo_tmp = dateTime.minusHours(1); + LocalDateTime oneHourLater_tmp = dateTime.plusHours(1); // 格式化时间 - String now = dateTime.format(time_formatter); String oneHourAgo = oneHourAgo_tmp.format(time_formatter); + String oneHourLater = oneHourLater_tmp.format(time_formatter); er.setBeginTime(oneHourAgo); - er.setEndTime(now); - er.setUnionNo(unionNo); + er.setEndTime(oneHourLater); +// er.setUnionNo(unionNo); } else { // 获取当前时间前一个小时的时间 LocalDateTime oneHourAgo_tmp = now_tmp.minusHours(1); + LocalDateTime oneHourLater_tmp = now_tmp.plusHours(1); // 格式化时间 - String now = now_tmp.format(time_formatter); String oneHourAgo = oneHourAgo_tmp.format(time_formatter); + String oneHourLater = oneHourLater_tmp.format(time_formatter); er.setBeginTime(oneHourAgo); - er.setEndTime(now); + er.setEndTime(oneHourLater); } // 可能会出现 同一时间 多组人, 多组联合执法 , 所以新增的时候还是需要生成联合执法id , List enforcementRegistrations = enforcementRegistrationMapper.selectEnforcementRegistrationByUnion(er); + + /** 进行时间筛选, 按需求,查询出来的联合编码想通的时间最早的必须在规定的时间范围类, 否则踢出列表 */ + // 先把联合编码做成set + Set noSet = enforcementRegistrations.stream().map(EnforcementRegistration::getUnionNo).collect(Collectors.toSet()); + List outNos = new ArrayList<>(); + for (String no: noSet) { + er.setUnionNo(no); + int resNum = enforcementRegistrationMapper.outTimeByUnion(er); + if (resNum > 0) { + outNos.add(no); + } + } + // 使用迭代器移除enforcementRegistrations中unionNo在outNo中存在的对象 + Iterator iterator = enforcementRegistrations.iterator(); + while (iterator.hasNext()) { + EnforcementRegistration obj = iterator.next(); + if (outNos.contains(obj.getUnionNo())) { + iterator.remove(); + } + } + // 分组操作 Map> groupedByNo = enforcementRegistrations.stream() .collect(Collectors.groupingBy(EnforcementRegistration::getUnionNo)); diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/StatisticalPaneServiceImpl.java b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/StatisticalPaneServiceImpl.java index 51a44cc1..b2927d9a 100644 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/StatisticalPaneServiceImpl.java +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/StatisticalPaneServiceImpl.java @@ -1115,11 +1115,15 @@ public class StatisticalPaneServiceImpl implements StatisticalPaneService { }else { total = enterpriseComplaints.size(); } - double per = Double.parseDouble(tmpMap.get("num").toString()) / total * 100; - if (Double.isNaN(per)) { - tmpMap.put("per", 0+"%"); + if (total > 0) { + double per = Double.parseDouble(tmpMap.get("num").toString()) / total * 100; + if (Double.isNaN(per)) { + tmpMap.put("per", 0 + "%"); + } else { + tmpMap.put("per", String.format("%.2f", per) + "%"); + } } else { - tmpMap.put("per", String.format("%.2f", per)+"%"); + tmpMap.put("per", 0 + "%"); } } return results; diff --git a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnforcementRegistrationMapper.xml b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnforcementRegistrationMapper.xml index 58b0e7d7..d21f3982 100644 --- a/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnforcementRegistrationMapper.xml +++ b/lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnforcementRegistrationMapper.xml @@ -692,6 +692,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" law_text = #{lawText}, union_no = #{unionNo}, union_no = null, + unite_check = #{uniteCheck}, has_union = #{hasUnion}, has_auto = #{hasAuto}, @@ -1096,17 +1097,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and enterprise_number = #{enterpriseNumber} and DATE_FORMAT(enforcement_time, '%Y-%m-%d') = DATE_FORMAT(#{checkCss}, '%Y-%m-%d') - and enforcement_time > #{beginTime} + and enforcement_time >= #{beginTime} - and enforcement_time < #{endTime} + and enforcement_time <= #{endTime} - or union_no = #{unionNo} + and union_no = #{unionNo} and union_no is not null order by enforcement_time desc + update enforcement_registration