Browse Source

联合登记, 和通知的fpd附件显示

v6
蟑螂恶霸 1 year ago
parent
commit
c65a55b7db
  1. 2
      lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppThirdLoginController.java
  2. 535
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/domain/Notice.java
  3. 358
      lib/EmergencyService/zdxtEmergencyAuthService/src/main/java/com/zdxt/auth/project/system/notice/service/NoticeServiceImpl.java
  4. 3
      lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/code/statistical/single-analysis.html
  5. 321
      lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnforcementRegistrationMapper.java
  6. 53
      lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/EnforcementRegistrationServiceImpl.java
  7. 12
      lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/StatisticalPaneServiceImpl.java
  8. 20
      lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnforcementRegistrationMapper.xml

2
lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/AppThirdLoginController.java

@ -147,7 +147,7 @@ public class AppThirdLoginController {
// 获取 用户Id // 获取 用户Id
userJson = HttpUtil.HttpSendGet(szyptUrl + "/cgi-bin/user/getuserinfo?access_token="+token+"&code="+code, null); userJson = HttpUtil.HttpSendGet(szyptUrl + "/cgi-bin/user/getuserinfo?access_token="+token+"&code="+code, null);
log.info(">>> 市认证用户信息: {}", userJson);
JSONObject userOjb = JSONObject.parseObject(userJson); JSONObject userOjb = JSONObject.parseObject(userJson);
String userId = userOjb.getString("UserId"); String userId = userOjb.getString("UserId");

535
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; package com.zdxt.auth.project.system.notice.domain;
import javax.tools.FileObject; import javax.tools.FileObject;
import javax.validation.constraints.*; import javax.validation.constraints.*;
import javax.validation.constraints.Size; import javax.validation.constraints.Size;
import com.zdxt.common.BaseDomain; import com.zdxt.common.BaseDomain;
import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle; import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
/** /**
* 通知公告表 sys_notice * 通知公告表 sys_notice
* *
* @author ruoyi * @author ruoyi
*/ */
public class Notice extends BaseDomain public class Notice extends BaseDomain
{ {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/** 通知ID */ /** 通知ID */
private String noticeId; private String noticeId;
/** 通知标题 */ /** 通知标题 */
private String noticeTitle; private String noticeTitle;
/** 发布对象(0全部 1监督端 2执法端 3 企业端) */ /** 发布对象(0全部 1监督端 2执法端 3 企业端) */
private String objectType; private String objectType;
/** 通知内容 */ /** 通知内容 */
private String noticeContent; private String noticeContent;
/** 公告状态(0正常 1关闭) */ /** 公告状态(0正常 1关闭) */
private String status; private String status;
/** 创建者id */ /** 创建者id */
private String createBy; private String createBy;
/** 创建时间 */ /** 创建时间 */
private Date createTime; private Date createTime;
/** 更新时间 */ /** 更新时间 */
private Date updateTime; private Date updateTime;
/** 更新者 */ /** 更新者 */
private String updateBy; private String updateBy;
/** 发布部门多个 */ /** 发布部门多个 */
private String bureauDeptIds; private String bureauDeptIds;
/** 发布部门名称多个 */ /** 发布部门名称多个 */
private String bureauDeptNames; private String bureauDeptNames;
/** 备注 */ /** 备注 */
private String remark; private String remark;
/** 发布部门名称列表 */ /** 发布部门名称列表 */
private List<String> bureauDeptNameList; private List<String> bureauDeptNameList;
private String beginTime; private String beginTime;
private String endTime; private String endTime;
private String createTimeStr; private String createTimeStr;
private FileObject fileObject; private FileObject fileObject;
private List<FileObject> fileObjects;
/**
* 文件对象 /**
*/ * 文件对象
public static class FileObject{ */
private String fileName; public static class FileObject{
private String fileUrl; private String fileName;
private String fileUrl;
public String getFileName() {
return fileName; public String getFileName() {
} return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName; public void setFileName(String fileName) {
} this.fileName = fileName;
}
public String getFileUrl() {
return fileUrl; public String getFileUrl() {
} return fileUrl;
}
public void setFileUrl(String fileUrl) {
this.fileUrl = fileUrl; public void setFileUrl(String fileUrl) {
} this.fileUrl = fileUrl;
} }
}
public FileObject getFileObject() {
return fileObject; public FileObject getFileObject() {
} return fileObject;
}
public void setFileObject(FileObject fileObject) {
this.fileObject = fileObject; public void setFileObject(FileObject fileObject) {
} this.fileObject = fileObject;
}
public List<FileObject> getFileObjects() {
public String getNoticeId() return fileObjects;
{ }
return noticeId;
} public void setFileObjects(List<FileObject> fileObjects) {
this.fileObjects = fileObjects;
public void setNoticeId(String noticeId) }
{
this.noticeId = noticeId;
}
public String getNoticeId()
public void setNoticeTitle(String noticeTitle) {
{ return noticeId;
this.noticeTitle = noticeTitle; }
}
public void setNoticeId(String noticeId)
@NotBlank(message = "公告标题不能为空") {
@Size(min = 0, max = 50, message = "公告标题不能超过50个字符") this.noticeId = noticeId;
public String getNoticeTitle() }
{
return noticeTitle; public void setNoticeTitle(String noticeTitle)
} {
this.noticeTitle = noticeTitle;
public String getObjectType() { }
return objectType;
} @NotBlank(message = "公告标题不能为空")
@Size(min = 0, max = 50, message = "公告标题不能超过50个字符")
public void setObjectType(String objectType) { public String getNoticeTitle()
this.objectType = objectType; {
} return noticeTitle;
}
public void setNoticeContent(String noticeContent)
{ public String getObjectType() {
this.noticeContent = noticeContent; return objectType;
} }
public String getNoticeContent() public void setObjectType(String objectType) {
{ this.objectType = objectType;
return noticeContent; }
}
public void setNoticeContent(String noticeContent)
public void setStatus(String status) {
{ this.noticeContent = noticeContent;
this.status = status; }
}
public String getNoticeContent()
public String getStatus() {
{ return noticeContent;
return status; }
}
public void setStatus(String status)
@Override {
public String getCreateBy() { this.status = status;
return createBy; }
}
public String getStatus()
@Override {
public void setCreateBy(String createBy) { return status;
this.createBy = createBy; }
}
@Override
@Override public String getCreateBy() {
public Date getCreateTime() { return createBy;
return createTime; }
}
@Override
@Override public void setCreateBy(String createBy) {
public void setCreateTime(Date createTime) { this.createBy = createBy;
this.createTime = createTime; }
}
@Override
@Override public Date getCreateTime() {
public Date getUpdateTime() { return createTime;
return updateTime; }
}
@Override
@Override public void setCreateTime(Date createTime) {
public void setUpdateTime(Date updateTime) { this.createTime = createTime;
this.updateTime = updateTime; }
}
@Override
@Override public Date getUpdateTime() {
public String getUpdateBy() { return updateTime;
return updateBy; }
}
@Override
@Override public void setUpdateTime(Date updateTime) {
public void setUpdateBy(String updateBy) { this.updateTime = updateTime;
this.updateBy = updateBy; }
}
@Override
public String getBureauDeptIds() { public String getUpdateBy() {
return bureauDeptIds; return updateBy;
} }
public void setBureauDeptIds(String bureauDeptIds) { @Override
this.bureauDeptIds = bureauDeptIds; public void setUpdateBy(String updateBy) {
} this.updateBy = updateBy;
}
public String getBureauDeptNames() {
return bureauDeptNames; public String getBureauDeptIds() {
} return bureauDeptIds;
}
public void setBureauDeptNames(String bureauDeptNames) {
this.bureauDeptNames = bureauDeptNames; public void setBureauDeptIds(String bureauDeptIds) {
} this.bureauDeptIds = bureauDeptIds;
}
@Override
public String getRemark() { public String getBureauDeptNames() {
return remark; return bureauDeptNames;
} }
@Override public void setBureauDeptNames(String bureauDeptNames) {
public void setRemark(String remark) { this.bureauDeptNames = bureauDeptNames;
this.remark = remark; }
}
@Override
public List<String> getBureauDeptNameList() { public String getRemark() {
return bureauDeptNameList; return remark;
} }
public void setBureauDeptNameList(List<String> bureauDeptNameList) { @Override
this.bureauDeptNameList = bureauDeptNameList; public void setRemark(String remark) {
} this.remark = remark;
}
public String getBeginTime() {
return beginTime; public List<String> getBureauDeptNameList() {
} return bureauDeptNameList;
}
public void setBeginTime(String beginTime) {
this.beginTime = beginTime; public void setBureauDeptNameList(List<String> bureauDeptNameList) {
} this.bureauDeptNameList = bureauDeptNameList;
}
public String getEndTime() {
return endTime; public String getBeginTime() {
} return beginTime;
}
public void setEndTime(String endTime) {
this.endTime = endTime; public void setBeginTime(String beginTime) {
} this.beginTime = beginTime;
}
public String getCreateTimeStr() {
return createTimeStr; public String getEndTime() {
} return endTime;
}
public void setCreateTimeStr(String createTimeStr) {
this.createTimeStr = createTimeStr; public void setEndTime(String endTime) {
} this.endTime = endTime;
}
@Override
public String toString() { public String getCreateTimeStr() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) return createTimeStr;
.append("noticeId", getNoticeId()) }
.append("noticeTitle", getNoticeTitle())
.append("objectType", getObjectType()) public void setCreateTimeStr(String createTimeStr) {
.append("noticeContent", getNoticeContent()) this.createTimeStr = createTimeStr;
.append("status", getStatus()) }
.append("createBy", getCreateBy())
.append("createTime", getCreateTime()) @Override
.append("updateBy", getUpdateBy()) public String toString() {
.append("updateTime", getUpdateTime()) return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("bureauDeptIds",getBureauDeptIds()) .append("noticeId", getNoticeId())
.append("bureauDeptNames",getBureauDeptNames()) .append("noticeTitle", getNoticeTitle())
.append("remark", getRemark()) .append("objectType", getObjectType())
.append("bureauDeptNameList",getBureauDeptNameList()) .append("noticeContent", getNoticeContent())
.append("beginTime",getBeginTime()) .append("status", getStatus())
.append("endTime",getEndTime()) .append("createBy", getCreateBy())
.append("createTimeStr",getCreateTimeStr()) .append("createTime", getCreateTime())
.toString(); .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();
}
}

358
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; package com.zdxt.auth.project.system.notice.service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.zdxt.auth.dto.ZdxtFileBean; import com.zdxt.auth.dto.ZdxtFileBean;
import com.zdxt.auth.feign.FileUploadApi; import com.zdxt.auth.feign.FileUploadApi;
import com.zdxt.auth.feign.ZdxtFileCommonApi; import com.zdxt.auth.feign.ZdxtFileCommonApi;
import com.zdxt.common.zdxtFile.AttFileRespDTO; import com.zdxt.common.zdxtFile.AttFileRespDTO;
import com.zdxt.common.zdxtFile.FilePreviewUtilBean; import com.zdxt.common.zdxtFile.FilePreviewUtilBean;
import com.zdxt.common.zdxtFile.ZdxtFileCommon; import com.zdxt.common.zdxtFile.ZdxtFileCommon;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.zdxt.auth.common.utils.security.ShiroUtils; import com.zdxt.auth.common.utils.security.ShiroUtils;
import com.zdxt.auth.common.utils.text.Convert; import com.zdxt.auth.common.utils.text.Convert;
import com.zdxt.auth.project.system.notice.mapper.NoticeMapper; import com.zdxt.auth.project.system.notice.mapper.NoticeMapper;
import com.zdxt.auth.project.system.notice.domain.Notice; import com.zdxt.auth.project.system.notice.domain.Notice;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
/** /**
* 公告 服务层实现 * 公告 服务层实现
* *
* @author ruoyi * @author ruoyi
* @date 2018-06-25 * @date 2018-06-25
*/ */
@Service @Service
public class NoticeServiceImpl implements INoticeService public class NoticeServiceImpl implements INoticeService
{ {
@Autowired @Autowired
private NoticeMapper noticeMapper; private NoticeMapper noticeMapper;
@Autowired @Autowired
private ZdxtFileCommonApi zdxtFileCommonApi; private ZdxtFileCommonApi zdxtFileCommonApi;
@Autowired @Autowired
private FileUploadApi fileUploadApi; private FileUploadApi fileUploadApi;
/** /**
* 查询公告信息 * 查询公告信息
* *
* @param noticeId 公告ID * @param noticeId 公告ID
* @return 公告信息 * @return 公告信息
*/ */
@Override @Override
public Notice selectNoticeById(String noticeId) public Notice selectNoticeById(String noticeId)
{ {
return noticeMapper.selectNoticeById(noticeId); Notice notice = noticeMapper.selectNoticeById(noticeId);
} List<ZdxtFileCommon> zdxtFileCommons = zdxtFileCommonApi.selectZdxtFileById(notice.getNoticeId());
List<Notice.FileObject> fs = new ArrayList<>();
/** for (ZdxtFileCommon f : zdxtFileCommons) {
* 查询公告列表 if(zdxtFileCommons != null && zdxtFileCommons.size() > 0){
* Notice.FileObject fileObject = new Notice.FileObject();
* @param notice 公告信息 fileObject.setFileName(zdxtFileCommons.get(0).getFileName());
* @return 公告集合 fileObject.setFileUrl(zdxtFileCommons.get(0).getUploadPath());
*/ fs.add(fileObject);
@Override }
public List<Notice> selectNoticeList(Notice notice) }
{ notice.setFileObjects(fs);
return noticeMapper.selectNoticeList(notice); return notice;
} }
@Override /**
public List<Notice> selectNoticeListNoPermission(Notice notice) { * 查询公告列表
List<Notice> list = *
noticeMapper.selectNoticeList(notice); * @param notice 公告信息
list.forEach(res ->{ * @return 公告集合
List<ZdxtFileCommon> zdxtFileCommons = zdxtFileCommonApi.selectZdxtFileById(res.getNoticeId()); */
if(zdxtFileCommons != null && zdxtFileCommons.size() > 0){ @Override
Notice.FileObject fileObject = new Notice.FileObject(); public List<Notice> selectNoticeList(Notice notice)
fileObject.setFileName(zdxtFileCommons.get(0).getFileName()); {
fileObject.setFileUrl(zdxtFileCommons.get(0).getUploadPath()); return noticeMapper.selectNoticeList(notice);
res.setFileObject(fileObject); }
}
}); @Override
return list; public List<Notice> selectNoticeListNoPermission(Notice notice) {
} List<Notice> list =
noticeMapper.selectNoticeList(notice);
/** list.forEach(res ->{
* 新增公告 List<ZdxtFileCommon> zdxtFileCommons = zdxtFileCommonApi.selectZdxtFileById(res.getNoticeId());
* if(zdxtFileCommons != null && zdxtFileCommons.size() > 0){
* @param notice 公告信息 Notice.FileObject fileObject = new Notice.FileObject();
* @return 结果 fileObject.setFileName(zdxtFileCommons.get(0).getFileName());
*/ fileObject.setFileUrl(zdxtFileCommons.get(0).getUploadPath());
@Override res.setFileObject(fileObject);
public int insertNotice(Notice notice) }
{ });
notice.setNoticeId(IdUtil.fastSimpleUUID()); return list;
notice.setCreateBy(ShiroUtils.getLoginName()); }
return noticeMapper.insertNotice(notice);
} /**
* 新增公告
@Override *
public int addNotice(MultipartFile[] files, Notice notice) { * @param notice 公告信息
String busId = IdUtil.fastSimpleUUID(); * @return 结果
notice.setNoticeId(busId); */
notice.setCreateBy(ShiroUtils.getLoginName()); @Override
// 上传文件,并在附件表中添加记录 public int insertNotice(Notice notice)
if (ObjectUtil.isNotEmpty(files)) { {
for (MultipartFile file : files) { notice.setNoticeId(IdUtil.fastSimpleUUID());
if(file.getOriginalFilename() != null && !"".equals(file.getOriginalFilename())){ notice.setCreateBy(ShiroUtils.getLoginName());
zdxtFileCommonApi.insertZdxtFile(file, busId, fileUploadApi.upload(file)); return noticeMapper.insertNotice(notice);
} }
}
} @Override
return noticeMapper.insertNotice(notice); public int addNotice(MultipartFile[] files, Notice notice) {
} String busId = IdUtil.fastSimpleUUID();
notice.setNoticeId(busId);
/** notice.setCreateBy(ShiroUtils.getLoginName());
* 修改公告 // 上传文件,并在附件表中添加记录
* if (ObjectUtil.isNotEmpty(files)) {
* @param notice 公告信息 for (MultipartFile file : files) {
* @return 结果 if(file.getOriginalFilename() != null && !"".equals(file.getOriginalFilename())){
*/ zdxtFileCommonApi.insertZdxtFile(file, busId, fileUploadApi.upload(file));
@Override }
public int updateNotice(Notice notice) }
{ }
notice.setUpdateBy(ShiroUtils.getLoginName()); return noticeMapper.insertNotice(notice);
return noticeMapper.updateNotice(notice); }
}
/**
@Override * 修改公告
public int editNoticeFile(MultipartFile[] files, Notice notice) { *
// 上传文件,并在附件表中添加记录 * @param notice 公告信息
if (ObjectUtil.isNotEmpty(files)) { * @return 结果
for (MultipartFile file : files) { */
if(file.getOriginalFilename() != null && !"".equals(file.getOriginalFilename())){ @Override
zdxtFileCommonApi.insertZdxtFile(file, notice.getNoticeId(), fileUploadApi.upload(file)); public int updateNotice(Notice notice)
} {
} notice.setUpdateBy(ShiroUtils.getLoginName());
} return noticeMapper.updateNotice(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) {
* @param ids 需要删除的数据ID if(file.getOriginalFilename() != null && !"".equals(file.getOriginalFilename())){
* @return 结果 zdxtFileCommonApi.insertZdxtFile(file, notice.getNoticeId(), fileUploadApi.upload(file));
*/ }
@Override }
public int deleteNoticeByIds(String ids) }
{ notice.setUpdateBy(ShiroUtils.getLoginName());
return noticeMapper.deleteNoticeByIds(Convert.toStrArray(ids)); return noticeMapper.updateNotice(notice);
} }
@Override /**
public AttFileRespDTO queryFiles(String noticeId) { * 删除公告对象
ArrayList<ZdxtFileCommon> fileList = new ArrayList<>(); *
FilePreviewUtilBean filePreviewUtilBean = new FilePreviewUtilBean(); * @param ids 需要删除的数据ID
if(noticeId ==null || "".equals(noticeId)){ * @return 结果
return filePreviewUtilBean.attachementToAttFileRespDTO(fileList); */
} @Override
ZdxtFileBean zdxtFileBeanCondition = new ZdxtFileBean(); public int deleteNoticeByIds(String ids)
zdxtFileBeanCondition.setBusinessId(noticeId); {
List<ZdxtFileBean> fileBeanList = zdxtFileCommonApi.selectZdxtFileList(zdxtFileBeanCondition); return noticeMapper.deleteNoticeByIds(Convert.toStrArray(ids));
}
for (ZdxtFileBean fileBean : fileBeanList) {
ZdxtFileCommon zdxtFileCommon = new ZdxtFileCommon(); @Override
BeanUtil.copyProperties(fileBean, zdxtFileCommon); public AttFileRespDTO queryFiles(String noticeId) {
fileList.add(zdxtFileCommon); ArrayList<ZdxtFileCommon> fileList = new ArrayList<>();
} FilePreviewUtilBean filePreviewUtilBean = new FilePreviewUtilBean();
return filePreviewUtilBean.attachementToAttFileRespDTO(fileList); if(noticeId ==null || "".equals(noticeId)){
} return filePreviewUtilBean.attachementToAttFileRespDTO(fileList);
}
@Override ZdxtFileBean zdxtFileBeanCondition = new ZdxtFileBean();
public int removeFile(String key) { zdxtFileBeanCondition.setBusinessId(noticeId);
return zdxtFileCommonApi.deleteZdxtFileById(key); 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);
}
}

3
lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/code/statistical/single-analysis.html

@ -432,7 +432,6 @@
html += ' </div>'; html += ' </div>';
html += '</div>'; html += '</div>';
} }
console.log(html.length);
$("#sixIndicators").html(html); $("#sixIndicators").html(html);
} }
}, },
@ -511,7 +510,7 @@
html += ' <span>'+datas[i].per+'</span>' html += ' <span>'+datas[i].per+'</span>'
html += '</div>' html += '</div>'
} }
$("#complaint_category").html(html); // $("#complaint_category").html(html);
} }
}, },
error: function (error) { error: function (error) {

321
lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/mapper/EnforcementRegistrationMapper.java

@ -1,160 +1,161 @@
package com.zdxt.code.mapper; package com.zdxt.code.mapper;
import com.zdxt.code.domain.EnforceRegCount; import com.zdxt.code.domain.EnforceRegCount;
import com.zdxt.code.domain.EnforcementRegistration; import com.zdxt.code.domain.EnforcementRegistration;
import com.zdxt.code.domain.SearchType; import com.zdxt.code.domain.SearchType;
import com.zdxt.code.domain.dto.EnforcementRegistrationDto; import com.zdxt.code.domain.dto.EnforcementRegistrationDto;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
* 执法端-执法登记Mapper接口 * 执法端-执法登记Mapper接口
* *
* @author chenrui * @author chenrui
* @date 2024-02-23 * @date 2024-02-23
*/ */
public interface EnforcementRegistrationMapper public interface EnforcementRegistrationMapper
{ {
/** /**
* 查询执法端-执法登记 * 查询执法端-执法登记
* *
* @param id 执法端-执法登记ID * @param id 执法端-执法登记ID
* @return 执法端-执法登记 * @return 执法端-执法登记
*/ */
EnforcementRegistration selectEnforcementRegistrationById(String id); EnforcementRegistration selectEnforcementRegistrationById(String id);
EnforcementRegistration selectEnforcementRegistrationByLawId(String id); EnforcementRegistration selectEnforcementRegistrationByLawId(String id);
/** /**
* 查询执法端-执法登记列表 * 查询执法端-执法登记列表
* *
* @param enforcementRegistration 执法端-执法登记 * @param enforcementRegistration 执法端-执法登记
* @return 执法端-执法登记集合 * @return 执法端-执法登记集合
*/ */
List<EnforcementRegistration> selectEnforcementRegistrationList(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectEnforcementRegistrationList(EnforcementRegistration enforcementRegistration);
List<EnforcementRegistration> selectEnforcementRegistrationListNew(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectEnforcementRegistrationListNew(EnforcementRegistration enforcementRegistration);
List<EnforcementRegistration> selectEnforcementRegistrationByEpId(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectEnforcementRegistrationByEpId(EnforcementRegistration enforcementRegistration);
List<EnforcementRegistration> selectEnforcementRegistrationList1(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectEnforcementRegistrationList1(EnforcementRegistration enforcementRegistration);
List<EnforcementRegistration> selectEnforcementRegistrationAndAddressList(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> 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*/ /*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<EnforcementRegistration> selectUnite(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectUnite(EnforcementRegistration enforcementRegistration);
/** /**
* 查询企业端-执法登记列表 * 查询企业端-执法登记列表
* *
* @param enforcementRegistration 企业端-执法登记 * @param enforcementRegistration 企业端-执法登记
* @return 企业端-执法登记集合 * @return 企业端-执法登记集合
*/ */
List<EnforcementRegistration> selectEnterpriseRegistrationList(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectEnterpriseRegistrationList(EnforcementRegistration enforcementRegistration);
/** /**
* 新增执法端-执法登记 * 新增执法端-执法登记
* *
* @param enforcementRegistration 执法端-执法登记 * @param enforcementRegistration 执法端-执法登记
* @return 结果 * @return 结果
*/ */
int insertEnforcementRegistration(EnforcementRegistration enforcementRegistration); int insertEnforcementRegistration(EnforcementRegistration enforcementRegistration);
/** /**
* 修改执法端-执法登记 * 修改执法端-执法登记
* *
* @param enforcementRegistration 执法端-执法登记 * @param enforcementRegistration 执法端-执法登记
* @return 结果 * @return 结果
*/ */
int updateEnforcementRegistration(EnforcementRegistration enforcementRegistration); int updateEnforcementRegistration(EnforcementRegistration enforcementRegistration);
/** /**
* 删除执法端-执法登记 * 删除执法端-执法登记
* *
* @param id 执法端-执法登记ID * @param id 执法端-执法登记ID
* @return 结果 * @return 结果
*/ */
int deleteEnforcementRegistrationById(String id); int deleteEnforcementRegistrationById(String id);
/** /**
* 批量删除执法端-执法登记 * 批量删除执法端-执法登记
* *
* @param ids 需要删除的数据ID * @param ids 需要删除的数据ID
* @return 结果 * @return 结果
*/ */
int deleteEnforcementRegistrationByIds(String[] ids); int deleteEnforcementRegistrationByIds(String[] ids);
/** /**
* 查询企业端-执法部门预约记录列表 * 查询企业端-执法部门预约记录列表
*/ */
List<EnforceRegCount> countMentByTime(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue); List<EnforceRegCount> countMentByTime(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue);
List<EnforceRegCount> countMentByTime2(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue); List<EnforceRegCount> countMentByTime2(@Param("timeMonth") Long timeMonth, @Param("searchValue") String searchValue);
/** /**
* 执法预警-统计执法部门执法数量 * 执法预警-统计执法部门执法数量
* @param beginTime * @param beginTime
* @return * @return
*/ */
List<EnforceRegCount> countMentByTimeLawNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime); List<EnforceRegCount> countMentByTimeLawNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime);
/** /**
* 执法预警-统计企业执法数量 * 执法预警-统计企业执法数量
* @param beginTime * @param beginTime
* @return * @return
*/ */
List<EnforceRegCount> countMentByTimeQyNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime); List<EnforceRegCount> countMentByTimeQyNew(@Param("beginTime") String beginTime, @Param("endTime") String endTime);
List<EnforcementRegistration> selectAllList(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectAllList(EnforcementRegistration enforcementRegistration);
/** /**
* 统计分析,统计分类列表 * 统计分析,统计分类列表
* @param enforcementRegistrationDto * @param enforcementRegistrationDto
* @return * @return
*/ */
List<EnforcementRegistrationDto> staticEnforcementRegistration(EnforcementRegistrationDto enforcementRegistrationDto); List<EnforcementRegistrationDto> staticEnforcementRegistration(EnforcementRegistrationDto enforcementRegistrationDto);
List<EnforcementRegistrationDto> staticEnforcementRegistrationLI(EnforcementRegistrationDto enforcementRegistrationDto); List<EnforcementRegistrationDto> staticEnforcementRegistrationLI(EnforcementRegistrationDto enforcementRegistrationDto);
/** /**
* 统计分析,统计分类列表 * 统计分析,统计分类列表
* @param enforcementRegistrationDto * @param enforcementRegistrationDto
* @return * @return
*/ */
List<EnforcementRegistrationDto> staticEnforcementRegistrationDetail(EnforcementRegistrationDto enforcementRegistrationDto); List<EnforcementRegistrationDto> staticEnforcementRegistrationDetail(EnforcementRegistrationDto enforcementRegistrationDto);
/** /**
* 用于移动端统计第一部分 * 用于移动端统计第一部分
* @param searchType * @param searchType
* @return * @return
*/ */
List<EnforcementRegistration> selectAppStatisticsPart1(SearchType searchType); List<EnforcementRegistration> selectAppStatisticsPart1(SearchType searchType);
/** /**
* 传入userId或bureauDeptId得符合记录的部门 * 传入userId或bureauDeptId得符合记录的部门
* @param searchType * @param searchType
* @return * @return
*/ */
List<EnforcementRegistration>selectGroupByDeptList(SearchType searchType); List<EnforcementRegistration>selectGroupByDeptList(SearchType searchType);
/** /**
* 传入联合执法批次id和本次执法id--得此次联合执法除本身外的部门 * 传入联合执法批次id和本次执法id--得此次联合执法除本身外的部门
* @param enforcementRegistration * @param enforcementRegistration
* @return * @return
*/ */
List<EnforcementRegistration>selectUniteGroupByDeptList(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration>selectUniteGroupByDeptList(EnforcementRegistration enforcementRegistration);
/** /**
* 传入联合执法批次id和本次执法id--得此次联合执法除本身外的记录 * 传入联合执法批次id和本次执法id--得此次联合执法除本身外的记录
* @param enforcementRegistration * @param enforcementRegistration
* @return * @return
*/ */
List<EnforcementRegistration>selectUniteNotItself(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration>selectUniteNotItself(EnforcementRegistration enforcementRegistration);
/** /**
* 用来 * 用来
* @param enforcementRegistration * @param enforcementRegistration
* @return * @return
*/ */
List<EnforcementRegistration> selectEnforcementRegistrationByUnion(EnforcementRegistration enforcementRegistration); List<EnforcementRegistration> selectEnforcementRegistrationByUnion(EnforcementRegistration enforcementRegistration);
int outTimeByUnion(EnforcementRegistration enforcementRegistration);
/**
* 根据联合检查 /**
* * 根据联合检查
* @param enforcementRegistration 执法端-执法登记 *
* @return 结果 * @param enforcementRegistration 执法端-执法登记
*/ * @return 结果
int updateRegToUnionFlag(EnforcementRegistration enforcementRegistration); */
} int updateRegToUnionFlag(EnforcementRegistration enforcementRegistration);
}

53
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())) { if (StringUtils.isNotEmpty(enforcementRegistration.getId())) {
EnforcementRegistration raw_data = selectEnforcementRegistrationById(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())) { if (!raw_data.getUnionNo().equals(enforcementRegistration.getUnionNo())) {
// 如果改变, 这通过原联合code查出已联合数量, 数量>2则无需修改他人数据, 2<=则将他人的联合标签hasUnion设为0 // 如果改变, 这通过原联合code查出已联合数量, 数量>2则无需修改他人数据, 2<=则将他人的联合标签hasUnion设为0
@ -436,6 +436,22 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat
enforcementRegistrationMapper.updateRegToUnionFlag(updateUnionParams2); enforcementRegistrationMapper.updateRegToUnionFlag(updateUnionParams2);
} }
} }
} else {
EnforcementRegistration er = new EnforcementRegistration();
er.setUnionNo(raw_data.getUnionNo());
List<EnforcementRegistration> 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 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(); LocalDateTime now_tmp = LocalDateTime.now();
@ -1145,24 +1161,47 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat
LocalDateTime dateTime = LocalDateTime.parse(enforcementTime, time_formatter); LocalDateTime dateTime = LocalDateTime.parse(enforcementTime, time_formatter);
// 获取登记前一个小时的时间 // 获取登记前一个小时的时间
LocalDateTime oneHourAgo_tmp = dateTime.minusHours(1); 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 oneHourAgo = oneHourAgo_tmp.format(time_formatter);
String oneHourLater = oneHourLater_tmp.format(time_formatter);
er.setBeginTime(oneHourAgo); er.setBeginTime(oneHourAgo);
er.setEndTime(now); er.setEndTime(oneHourLater);
er.setUnionNo(unionNo); // er.setUnionNo(unionNo);
} else { } else {
// 获取当前时间前一个小时的时间 // 获取当前时间前一个小时的时间
LocalDateTime oneHourAgo_tmp = now_tmp.minusHours(1); 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 oneHourAgo = oneHourAgo_tmp.format(time_formatter);
String oneHourLater = oneHourLater_tmp.format(time_formatter);
er.setBeginTime(oneHourAgo); er.setBeginTime(oneHourAgo);
er.setEndTime(now); er.setEndTime(oneHourLater);
} }
// 可能会出现 同一时间 多组人, 多组联合执法 , 所以新增的时候还是需要生成联合执法id , // 可能会出现 同一时间 多组人, 多组联合执法 , 所以新增的时候还是需要生成联合执法id ,
List<EnforcementRegistration> enforcementRegistrations = enforcementRegistrationMapper.selectEnforcementRegistrationByUnion(er); List<EnforcementRegistration> enforcementRegistrations = enforcementRegistrationMapper.selectEnforcementRegistrationByUnion(er);
/** 进行时间筛选, 按需求,查询出来的联合编码想通的时间最早的必须在规定的时间范围类, 否则踢出列表 */
// 先把联合编码做成set
Set<String> noSet = enforcementRegistrations.stream().map(EnforcementRegistration::getUnionNo).collect(Collectors.toSet());
List<String> 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<EnforcementRegistration> iterator = enforcementRegistrations.iterator();
while (iterator.hasNext()) {
EnforcementRegistration obj = iterator.next();
if (outNos.contains(obj.getUnionNo())) {
iterator.remove();
}
}
// 分组操作 // 分组操作
Map<String, List<EnforcementRegistration>> groupedByNo = enforcementRegistrations.stream() Map<String, List<EnforcementRegistration>> groupedByNo = enforcementRegistrations.stream()
.collect(Collectors.groupingBy(EnforcementRegistration::getUnionNo)); .collect(Collectors.groupingBy(EnforcementRegistration::getUnionNo));

12
lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/java/com/zdxt/code/service/impl/StatisticalPaneServiceImpl.java

@ -1115,11 +1115,15 @@ public class StatisticalPaneServiceImpl implements StatisticalPaneService {
}else { }else {
total = enterpriseComplaints.size(); total = enterpriseComplaints.size();
} }
double per = Double.parseDouble(tmpMap.get("num").toString()) / total * 100; if (total > 0) {
if (Double.isNaN(per)) { double per = Double.parseDouble(tmpMap.get("num").toString()) / total * 100;
tmpMap.put("per", 0+"%"); if (Double.isNaN(per)) {
tmpMap.put("per", 0 + "%");
} else {
tmpMap.put("per", String.format("%.2f", per) + "%");
}
} else { } else {
tmpMap.put("per", String.format("%.2f", per)+"%"); tmpMap.put("per", 0 + "%");
} }
} }
return results; return results;

20
lib/EmergencyService/zdxtLawEnforcementCodeService/src/main/resources/mapper/EnforcementRegistrationMapper.xml

@ -692,6 +692,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="lawText != null and lawText != ''"> law_text = #{lawText},</if> <if test="lawText != null and lawText != ''"> law_text = #{lawText},</if>
<if test="unionNo != null and unionNo != '' and unionNo != '-1'"> union_no = #{unionNo},</if> <if test="unionNo != null and unionNo != '' and unionNo != '-1'"> union_no = #{unionNo},</if>
<if test="unionNo != null and unionNo != '' and unionNo == '-1'"> union_no = null,</if> <if test="unionNo != null and unionNo != '' and unionNo == '-1'"> union_no = null,</if>
<if test="uniteCheck != null and uniteCheck != ''"> unite_check = #{uniteCheck},</if>
<if test="hasUnion != null"> has_union = #{hasUnion},</if> <if test="hasUnion != null"> has_union = #{hasUnion},</if>
<if test="hasAuto != null"> has_auto = #{hasAuto},</if> <if test="hasAuto != null"> has_auto = #{hasAuto},</if>
</trim> </trim>
@ -1096,17 +1097,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="enterpriseNumber != null and enterpriseNumber != ''"> and enterprise_number = #{enterpriseNumber}</if> <if test="enterpriseNumber != null and enterpriseNumber != ''"> and enterprise_number = #{enterpriseNumber}</if>
<if test="checkCss != null and checkCss != ''"> and DATE_FORMAT(enforcement_time, '%Y-%m-%d') = DATE_FORMAT(#{checkCss}, '%Y-%m-%d')</if> <if test="checkCss != null and checkCss != ''"> and DATE_FORMAT(enforcement_time, '%Y-%m-%d') = DATE_FORMAT(#{checkCss}, '%Y-%m-%d')</if>
<if test="beginTime != null and beginTime != ''"><!-- 开始时间检索 --> <if test="beginTime != null and beginTime != ''"><!-- 开始时间检索 -->
and enforcement_time &gt; #{beginTime} and enforcement_time &gt;= #{beginTime}
</if> </if>
<if test="endTime != null and endTime != ''"><!-- 结束时间检索 --> <if test="endTime != null and endTime != ''"><!-- 结束时间检索 -->
and enforcement_time &lt; #{endTime} and enforcement_time &lt;= #{endTime}
</if> </if>
<if test="unionNo != null and unionNo !=''"> or union_no = #{unionNo}</if> <if test="unionNo != null and unionNo !=''"> and union_no = #{unionNo}</if>
and union_no is not null and union_no is not null
</where> </where>
order by enforcement_time desc order by enforcement_time desc
</select> </select>
<select id="outTimeByUnion" parameterType="EnforcementRegistration" resultType="int">
select count(1) from enforcement_registration
<where>
<if test="enterpriseNumber != null and enterpriseNumber != ''"> and enterprise_number = #{enterpriseNumber}</if>
<if test="checkCss != null and checkCss != ''"> and DATE_FORMAT(enforcement_time, '%Y-%m-%d') != DATE_FORMAT(#{checkCss}, '%Y-%m-%d')</if>
<if test="beginTime != null and beginTime != '' and endTime != null and endTime != ''"><!-- 开始时间检索 -->
and (enforcement_time &lt; #{beginTime} or enforcement_time &gt; #{endTime})
</if>
<if test="unionNo != null and unionNo !=''"> and union_no = #{unionNo}</if>
and union_no is not null
</where>
order by enforcement_time desc
</select>
<update id="updateRegToUnionFlag" parameterType="EnforcementRegistration"> <update id="updateRegToUnionFlag" parameterType="EnforcementRegistration">
update enforcement_registration update enforcement_registration

Loading…
Cancel
Save