diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/config/RuoYiConfig.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/config/RuoYiConfig.java index 9c84f50f..b136eea3 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/config/RuoYiConfig.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/config/RuoYiConfig.java @@ -1,5 +1,6 @@ package com.zdxt.enforcementcode.common.config; +import org.dromara.common.core.utils.SpringUtils; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.stereotype.Component; @@ -9,57 +10,54 @@ import org.springframework.stereotype.Component; * @author ruoyi */ @Component -@ConfigurationProperties(prefix = "ruoyi") +@ConfigurationProperties(prefix = "zdxt") public class RuoYiConfig { - /** 项目名称 */ - private String name; - - /** 版本 */ - private String version; - - /** 版权年份 */ - private String copyrightYear; + /** 上传路径配置 */ + private FileConfig file = new FileConfig(); /** 实例演示开关 */ private boolean demoEnabled; - /** 上传路径 */ - private static String profile; + /** + * 文件配置内部类 + */ + public static class FileConfig { + /** 上传路径 */ + private String uploadPath; - /** 获取地址开关 */ - private static boolean addressEnabled; + /** URL前缀 */ + private String urlPrefix; - public String getName() - { - return name; - } + /** 执法监督码地址 */ + private String qrCodeUrl; - public void setName(String name) - { - this.name = name; - } - public String getVersion() - { - return version; - } + public String getUploadPath() { + return uploadPath; + } - public void setVersion(String version) - { - this.version = version; - } + public void setUploadPath(String uploadPath) { + this.uploadPath = uploadPath; + } - public String getCopyrightYear() - { - return copyrightYear; - } + public String getUrlPrefix() { + return urlPrefix; + } - public void setCopyrightYear(String copyrightYear) - { - this.copyrightYear = copyrightYear; + public void setUrlPrefix(String urlPrefix) { + this.urlPrefix = urlPrefix; + } + + public String getQrCodeUrl() { + return qrCodeUrl; + } + public void setQrCodeUrl(String qrCodeUrl) { + this.qrCodeUrl = qrCodeUrl; + } } + public boolean isDemoEnabled() { return demoEnabled; @@ -70,24 +68,31 @@ public class RuoYiConfig this.demoEnabled = demoEnabled; } - public static String getProfile() + public FileConfig getFile() { - return profile; + return file; } - public void setProfile(String profile) + public void setFile(FileConfig file) { - RuoYiConfig.profile = profile; + this.file = file; } - public static boolean isAddressEnabled() + /** + * 获取上传路径(兼容旧代码) + */ + public static String getUploadPath() { - return addressEnabled; + // 需要通过 Spring 上下文获取 bean,这里提供静态访问方式 + return SpringUtils.getBean(RuoYiConfig.class).getFile().getUploadPath(); } - public void setAddressEnabled(boolean addressEnabled) + /** + * 获取 URL 前缀(兼容旧代码) + */ + public static String getUrlPrefix() { - RuoYiConfig.addressEnabled = addressEnabled; + return SpringUtils.getBean(RuoYiConfig.class).getFile().getUrlPrefix(); } /** @@ -95,7 +100,7 @@ public class RuoYiConfig */ public static String getAvatarPath() { - return getProfile() + "/avatar"; + return getUploadPath() + "/avatar"; } /** @@ -103,14 +108,7 @@ public class RuoYiConfig */ public static String getDownloadPath() { - return getProfile() + "/download/"; + return getUploadPath() + "/download/"; } - /** - * 获取上传路径 - */ - public static String getUploadPath() - { - return getProfile() + "/upload"; - } } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/util/file/FileUploadUtils.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/util/file/FileUploadUtils.java index 413bd0e0..5cbc3f80 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/util/file/FileUploadUtils.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/common/util/file/FileUploadUtils.java @@ -40,7 +40,7 @@ public class FileUploadUtils /** * 默认上传的地址 */ - private static String defaultBaseDir = RuoYiConfig.getProfile(); + private static String defaultBaseDir = RuoYiConfig.getUploadPath(); private static int counter = 0; @@ -150,9 +150,15 @@ public class FileUploadUtils private static final String getPathFileName(String uploadDir, String fileName) throws IOException { - int dirLastIndex = RuoYiConfig.getProfile().length() + 1; + int dirLastIndex = RuoYiConfig.getUploadPath().length() + 1; String currentDir = StringUtils.substring(uploadDir, dirLastIndex); - String pathFileName = Constants.RESOURCE_PREFIX + "/" + currentDir + "/" + fileName; + // 如果 currentDir 为空,则直接使用 RESOURCE_PREFIX + fileName + String pathFileName; + if (StringUtils.isEmpty(currentDir)) { + pathFileName = Constants.RESOURCE_PREFIX + "/" + fileName; + } else { + pathFileName = Constants.RESOURCE_PREFIX + "/" + currentDir + "/" + fileName; + } return pathFileName; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppLawEnforcementRegistrationController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppLawEnforcementRegistrationController.java new file mode 100644 index 00000000..3ffe4398 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppLawEnforcementRegistrationController.java @@ -0,0 +1,924 @@ +//package com.zdxt.enforcementcode.controller.app.enforcement; +// +// +//import com.zdxt.enforcementcode.domain.EnforcementRegistration; +//import com.zdxt.enforcementcode.service.IEnterpriseEvaluateService; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.stereotype.Controller; +//import org.springframework.ui.ModelMap; +//import org.springframework.web.bind.annotation.*; +// +//import java.time.Instant; +//import java.time.LocalDate; +//import java.time.ZoneId; +//import java.time.temporal.ChronoUnit; +//import java.util.*; +// +// +///** +// * 执法端-执法登记Controller +// * +// * @author chenrui +// * @date 2024-02-23 +// */ +//@Controller +//@RequestMapping("/app/code/registration") +//public class AppLawEnforcementRegistrationController extends BaseController +//{ +// private String prefix = "project/code/registration"; +// +// @Autowired private IEnforcementRegistrationService enforcementRegistrationService; +// @Autowired private IEnterpriseLawEnforcementService enterpriseLawEnforcementService; +// @Autowired private ILinkageDictService iLinkageDictService; +// @Autowired private IEnterpriseComplaintService enterpriseComplaintService; +// @Autowired private IEnterpriseInformationService iEnterpriseInformationService; +// @Autowired private IEnterpriseEvaluateService enterpriseEvaluateService; +// @Autowired private IZqyjjdm137344Service iZqyjjdm137344Service; +// @Autowired private UserApi userApi; +// @Autowired private DeptApi deptApi; +// @Autowired private DictDataApi dictDataApi; +// @Autowired +// private IUserService userService; +// +// @RequiresPermissions("code:registration:view") +// @GetMapping() +// public String registration() +// { +// return prefix + "/registration"; +// } +// +// /** +// * 查询执法端-执法登记列表 +// */ +// @RequiresPermissions("code:registration:list") +// @PostMapping("/list") +// @ResponseBody +// public TableDataInfo list(EnforcementRegistration enforcementRegistration) +// { +// startPage(); +// List list = enforcementRegistrationService.selectEnforcementRegistrationList(enforcementRegistration); +// return getDataTable(list); +// } +// /** +// * 查询执法端-执法登记列表 +// */ +// @GetMapping("/selectList") +// @ResponseBody +// public ZDResponse selectList(EnforcementRegistration enforcementRegistration) +// { +// List list = enforcementRegistrationService.selectEnforcementRegistrationList(enforcementRegistration); +// DictDataBean dictParams = new DictDataBean(); +// dictParams.setDictType("check_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (EnforcementRegistration ee : list) { +// // 判断是否投诉 +// EnterpriseComplaint params = new EnterpriseComplaint(); +// params.setRelId(ee.getId()); +// params.setComOrOpi(1); +// List enterpriseComplaints = enterpriseComplaintService.selectEnterpriseComplaintList(params); +// if (null!=enterpriseComplaints && enterpriseComplaints.size()>0) { +// ee.setComOrOpi(1); +// } else { +// ee.setComOrOpi(0); +// } +// +// // 执法类别 +// for (DictDataBean dict : dicts) { +// if (dict.getDictValue().equals(ee.getCheckCategory())) { +// ee.setCheckCategoryText(dict.getDictLabel()); +// } +// } +// +// // 执法人员1需要展示用户名+执法码 +// UserBean userBean = userApi.getUserByUserId(ee.getLawEnforcerId()); +// String lawCN = StringUtils.isEmpty(userBean.getLawCertificateNum())?"":userBean.getLawCertificateNum(); +// ee.setLawEnforcer(userBean.getUserName() +" "+ lawCN); +// // 执法人员2需要展示用户名+执法码 +// List lawTwoList = new ArrayList<>(); +// List userBeans = new ArrayList<>(); +// if (StringUtils.isNotEmpty(ee.getLawEnforcerIdTwo())) { +// userBeans = userApi.getUserByUserIds(ee.getLawEnforcerIdTwo()); +// } +// for (UserBean ub : userBeans) { +// String lawCertificateNum = StringUtils.isEmpty(ub.getLawCertificateNum())?"":ub.getLawCertificateNum(); +// lawTwoList.add(ub.getUserName() +" "+ lawCertificateNum); +// } +// ee.setLawEnforcer2List(lawTwoList); +// } +// +// return ZDResponse.success("获取执法登录信息",list); +// } +// +// +// /** +// * 查询执法端-执法登记列表 +// */ +//// @RequiresPermissions("code:registration:list") +// @PostMapping("/queryList") +// @ResponseBody +// public TableDataInfo queryList(@RequestBody EnforcementRegistration enforcementRegistration) +// { +//// startPage(); +// int totalNum = enforcementRegistrationService.countEnforcementRegistrationList(enforcementRegistration); +// List list = enforcementRegistrationService.selectEnforcementRegistrationList(enforcementRegistration); +// DictDataBean dictParams = new DictDataBean(); +// dictParams.setDictType("check_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (EnforcementRegistration ee : list) { +// // 判断是否投诉 +// EnterpriseComplaint params = new EnterpriseComplaint(); +// params.setRelId(ee.getId()); +// params.setComOrOpi(1); +// List enterpriseComplaints = enterpriseComplaintService.selectEnterpriseComplaintList(params); +// if (null!=enterpriseComplaints && enterpriseComplaints.size()>0) { +// ee.setComOrOpi(1); +// } else { +// ee.setComOrOpi(0); +// } +// +// // 执法类别 +// for (DictDataBean dict : dicts) { +// if (dict.getDictValue().equals(ee.getCheckCategory())) { +// ee.setCheckCategoryText(dict.getDictLabel()); +// } +// } +// +// // 执法人员1需要展示用户名+执法码 没有执法码展示加密手机号 +// UserBean userBean = userApi.getUserByUserId(ee.getLawEnforcerId()); +// String lawCN =userBean.getUserName() +" "+userBean.getLawCertificateNum(); +// if(StringUtils.isEmpty(userBean.getLawCertificateNum())){ +// lawCN=userBean.getUserName() +" "+ CommonUtil.encryptPhone(userBean.getPhonenumber()); +// } +// ee.setLawEnforcer(lawCN); +// +// // 执法人员2需要展示用户名+执法码 没有执法码展示加密手机号 +// List lawTwoList = new ArrayList<>(); +// List userBeans = new ArrayList<>(); +// if (StringUtils.isNotEmpty(ee.getLawEnforcerIdTwo())) { +// userBeans = userApi.getUserByUserIds(ee.getLawEnforcerIdTwo()); +// } +//// String tmpUserShow = ""; +// for (UserBean ub : userBeans) { +// String temp=ub.getUserName() +" "+ub.getLawCertificateNum(); +// if(StringUtils.isEmpty(ub.getLawCertificateNum())){ +// temp=ub.getUserName() +" "+ CommonUtil.encryptPhone(ub.getPhonenumber()); +// } +// lawTwoList.add(temp); +// } +//// if (tmpUserShow.length() > 0) { +//// tmpUserShow = tmpUserShow.substring(0, tmpUserShow.length()-1); +//// } +// ee.setLawEnforcer2List(lawTwoList); +// +// // 判断超时多少天 +// Instant instant = ee.getEnforcementTime().toInstant(); +// ZoneId zoneId = ZoneId.systemDefault(); +// LocalDate startDate = instant.atZone(zoneId).toLocalDate(); +// // 今天距离执法时间所差天数 +// long daysBetween = ChronoUnit.DAYS.between(startDate, LocalDate.now()); +// ee.setOutTimeDayNum(daysBetween); +// } +// +// TableDataInfo rspData = getDataTable(list); +// rspData.setCode(0); +// rspData.setRows(list); +// rspData.setTotal(totalNum); +// return rspData; +// } +// +// +// /** +// * 查询执法端-执法登记列表 +// */ +//// @RequiresPermissions("code:registration:list") +// @GetMapping("/queryListNew") +// @ResponseBody +// public TableDataInfo queryListNew(EnforcementRegistration enforcementRegistration) +// { +// if (Objects.nonNull(enforcementRegistration.getUserId()) && enforcementRegistration.getDateType()==0) { +// UserBean userByUser = userApi.getUserByUserId(enforcementRegistration.getUserId()); +// enforcementRegistration.setDeptId(userByUser == null ? null : userByUser.getDeptId()); +// +// DeptBean bureauDept = deptApi.iterationDeptParentToBureau(userByUser.getDeptId()); +// enforcementRegistration.setBureauDeptId(bureauDept.getDeptId()); +// } +// //查询检查总次数 +// List registrations = enforcementRegistrationService.selectEnforcementRegistrationListNew(enforcementRegistration); +// int count = 0; +// if (registrations.size() >0) { +// count = registrations.stream().map(item -> Integer.valueOf(item.getNum())).reduce(0, Integer::sum); +// } +// //查询列表 +// startPage(); +// List list = enforcementRegistrationService.selectEnforcementRegistrationListNew(enforcementRegistration); +// TableDataInfo dataTable = getDataTable(list); +// dataTable.setMsg(count); +// return dataTable; +// } +// +// @GetMapping("/queryByEpId") +// @ResponseBody +// public ZDResponse queryByEpId(EnforcementRegistration enforcementRegistration) +// { +// if (Objects.nonNull(enforcementRegistration.getUserId()) && enforcementRegistration.getDateType()==0) { +// UserBean userByUser = userApi.getUserByUserId(enforcementRegistration.getUserId()); +// enforcementRegistration.setDeptId(userByUser == null ? null : userByUser.getDeptId()); +// +// DeptBean bureauDept = deptApi.iterationDeptParentToBureau(userByUser.getDeptId()); +// enforcementRegistration.setBureauDeptId(bureauDept.getDeptId()); +// } +// List list = enforcementRegistrationService.selectEnforcementRegistrationByEpId(enforcementRegistration); +// return ZDResponse.success("获取当前企业本月登记信息",list); +// } +// +// /** +// * 查询企业端-执法登记列表 +// */ +// @GetMapping("/queryEnterpriseList") +// @ResponseBody +// public TableDataInfo queryEnterpriseList(EnforcementRegistration enforcementRegistration) +// { +// startPage(); +// List list = enforcementRegistrationService.selectEnterpriseRegistrationList(enforcementRegistration); +// DictDataBean dictParams = new DictDataBean(); +// dictParams.setDictType("law_enforce_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (EnforcementRegistration ee : list) { +// // 判断是否投诉 +// EnterpriseComplaint params = new EnterpriseComplaint(); +// params.setRelId(ee.getId()); +// params.setComOrOpi(1); +// List enterpriseComplaints = enterpriseComplaintService.selectEnterpriseComplaintList(params); +// if (null!=enterpriseComplaints && enterpriseComplaints.size()>0) { +// ee.setComOrOpi(1); +// } else { +// ee.setComOrOpi(0); +// } +// // 执法类别 +// for (DictDataBean dict : dicts) { +// if (dict.getDictValue().equals(ee.getLawEnforceCategory())) { +// ee.setCheckCategoryText(dict.getDictLabel()); +// } +// } +// +// // 执法人员1需要展示用户名+执法码 +// UserBean userBean = userApi.getUserByUserId(ee.getLawEnforcerId()); +// +// String lawCN = userBean.getLawCertificateNum(); +// if(StringUtils.isEmpty(lawCN)){ +// lawCN=CommonUtil.encryptPhone(userBean.getPhonenumber()); +// } +// ee.setLawEnforcer(userBean.getUserName() +" "+ lawCN); +// +// // 执法人员2需要展示用户名+执法码 +// List lawTwoList = new ArrayList<>(); +// List userBeans = new ArrayList<>(); +// if (StringUtils.isNotEmpty(ee.getLawEnforcerIdTwo())) { +// userBeans = userApi.getUserByUserIds(ee.getLawEnforcerIdTwo()); +// } +// for (UserBean ub : userBeans) { +// String temp = ub.getLawCertificateNum(); +// if(StringUtils.isEmpty(temp)){ +// temp=CommonUtil.encryptPhone(ub.getPhonenumber()); +// } +// lawTwoList.add(ub.getUserName() +" "+ temp); +// } +// ee.setLawEnforcer2List(lawTwoList); +// +// // 判断超时多少天 +// Instant instant = ee.getEnforcementTime().toInstant(); +// ZoneId zoneId = ZoneId.systemDefault(); +// LocalDate startDate = instant.atZone(zoneId).toLocalDate(); +// // 今天距离执法时间所差天数 +// long daysBetween = ChronoUnit.DAYS.between(startDate, LocalDate.now()); +// ee.setOutTimeDayNum(daysBetween); +// } +// return getDataTable(list); +// } +// +// /** 剔除执法日期距离今天超过5天的执法数据 */ +// @GetMapping("/queryList2") +// @ResponseBody +// public ZDResponse queryList2(EnforcementRegistration enforcementRegistration) +// { +// List res = new ArrayList<>(); +// List list = enforcementRegistrationService.selectEnforcementRegistrationList(enforcementRegistration); +// for (EnforcementRegistration ee : list) { +// // 判断是否投诉 +// EnterpriseComplaint params = new EnterpriseComplaint(); +// params.setRelId(ee.getId()); +// params.setComOrOpi(1); +// List enterpriseComplaints = enterpriseComplaintService.selectEnterpriseComplaintList(params); +// if (null!=enterpriseComplaints && enterpriseComplaints.size()>0) { +// ee.setComOrOpi(1); +// } else { +// ee.setComOrOpi(0); +// } +// // 判断超时多少天 +// Instant instant = ee.getEnforcementTime().toInstant(); +// ZoneId zoneId = ZoneId.systemDefault(); +// LocalDate startDate = instant.atZone(zoneId).toLocalDate(); +// // 今天距离执法时间所差天数 +// long daysBetween = ChronoUnit.DAYS.between(startDate, LocalDate.now()); +// ee.setOutTimeDayNum(daysBetween); +// if (daysBetween <= 4) { +// res.add(ee); +// } +// } +// return ZDResponse.success("查询成功",res); +// } +// +// /** 剔除执法日期距离今天超过5天的执法数据 */ +// @GetMapping("/queryListWithFiveDay") +// @ResponseBody +// public TableDataInfo queryListWithFiveDay(EnforcementRegistration enforcementRegistration) +// { +// +// startPage(); +// List res = new ArrayList<>(); +// List list = enforcementRegistrationService.selectEnforcementRegistrationList(enforcementRegistration); +// for (EnforcementRegistration ee : list) { +// // 判断是否投诉 +// EnterpriseComplaint params = new EnterpriseComplaint(); +// params.setRelId(ee.getId()); +// params.setComOrOpi(1); +// List enterpriseComplaints = enterpriseComplaintService.selectEnterpriseComplaintList(params); +// if (null!=enterpriseComplaints && enterpriseComplaints.size()>0) { +// ee.setComOrOpi(1); +// } else { +// ee.setComOrOpi(0); +// } +// // 执法人员1需要展示用户名+执法码 +// UserBean userBean = userApi.getUserByUserId(ee.getLawEnforcerId()); +// String lawCN = StringUtils.isEmpty(userBean.getLawCertificateNum())?"":userBean.getLawCertificateNum(); +// ee.setLawEnforcer(userBean.getUserName() +" "+ lawCN); +// +// // 执法人员2需要展示用户名+执法码 +// List lawTwoList = new ArrayList<>(); +// List userBeans = new ArrayList<>(); +// if (StringUtils.isNotEmpty(ee.getLawEnforcerIdTwo())) { +// userBeans = userApi.getUserByUserIds(ee.getLawEnforcerIdTwo()); +// } +// for (UserBean ub : userBeans) { +// String lawCertificateNum = StringUtils.isEmpty(ub.getLawCertificateNum())?"":ub.getLawCertificateNum(); +// lawTwoList.add(ub.getUserName() +" "+ lawCertificateNum); +// } +// ee.setLawEnforcer2List(lawTwoList); +// // 判断超时多少天 +// Instant instant = ee.getEnforcementTime().toInstant(); +// ZoneId zoneId = ZoneId.systemDefault(); +// LocalDate startDate = instant.atZone(zoneId).toLocalDate(); +// // 今天距离执法时间所差天数 +// long daysBetween = ChronoUnit.DAYS.between(startDate, LocalDate.now()); +// ee.setOutTimeDayNum(daysBetween); +// if (daysBetween <= 4) { +// res.add(ee); +// } +// } +// return getDataTable(res); +// } +// +// /** +// * 新增执法端-执法登记 +// */ +// @GetMapping("/add") +// public String add() +// { +// return prefix + "/add"; +// } +// +// /** +// * 新增保存执法端-执法登记 +// */ +//// @RequiresPermissions("code:registration:add") +// @PostMapping("/add") +// @ResponseBody +// public ZDResponse addSave(@RequestBody EnforcementRegistration enforcementRegistration) +// { +// String district = ""; +// String street = ""; +// if (StringUtils.isNotEmpty(enforcementRegistration.getEnterpriseAddress())) { +// district = extract(enforcementRegistration.getEnterpriseAddress(), "([^\\s市]+?区)"); +// street = extract(enforcementRegistration.getEnterpriseAddress(), "([^\\s区]+?街道)"); +// } +// enforcementRegistration.setDistrict(district); +// enforcementRegistration.setStreet(street); +// return enforcementRegistrationService.insertEnforcementRegistration(enforcementRegistration) > 0 +// ? ZDResponse.success("保存成功") : ZDResponse.error("保存失败"); +// } +// +// /** +// * 根据企业统一信用号, 搜索出该企业前推一小时内的联合执法. +// * 用于用户自行进行关联 +// * @param enterpriseNumber +// * @return +// */ +// @GetMapping("/queryUnionByHour/{enterpriseNumber}/{checkCss}/{enforcementTime}/{unionNo}") +// @ResponseBody +// public ZDResponse queryUnionByHour(@PathVariable String enterpriseNumber, @PathVariable String checkCss, @PathVariable String enforcementTime, @PathVariable String unionNo) +// { +// return ZDResponse.success("操作成功", enforcementRegistrationService.queryUnionByHour(enterpriseNumber, checkCss, enforcementTime, unionNo)); +// } +// +// /** +// * 修改执法端-执法登记 +// */ +// @GetMapping("/edit/{id}") +// public String edit(@PathVariable("id") String id, ModelMap mmap) +// { +// EnforcementRegistration enforcementRegistration = enforcementRegistrationService.selectEnforcementRegistrationById(id); +// mmap.put("enforcementRegistration", enforcementRegistration); +// return prefix + "/edit"; +// } +// +// /** +// * 修改保存执法端-执法登记 +// */ +//// @RequiresPermissions("code:registration:edit") +// @PostMapping("/edit") +// @ResponseBody +// public ZDResponse editSave(@RequestBody EnforcementRegistration enforcementRegistration) +// { +// int resNum = 0; +// enforcementRegistration.setIsSubmit(1); +// String district = ""; +// String street = ""; +// if (StringUtils.isNotEmpty(enforcementRegistration.getEnterpriseAddress())) { +// district = extract(enforcementRegistration.getEnterpriseAddress(), "([^\\s市]+?区)"); +// street = extract(enforcementRegistration.getEnterpriseAddress(), "([^\\s区]+?街道)"); +// } +// enforcementRegistration.setDistrict(district); +// enforcementRegistration.setStreet(street); +// if (StringUtils.isNotEmpty(enforcementRegistration.getId())) { +// resNum = enforcementRegistrationService.updateEnforcementRegistration(enforcementRegistration); +// } else { +// resNum = enforcementRegistrationService.insertEnforcementRegistration(enforcementRegistration); +// if (resNum > 0 && StringUtils.isNotEmpty(enforcementRegistration.getLawId())) { +// enforcementRegistration.setId(null); +// } +// } +// if (StringUtils.isNotEmpty(enforcementRegistration.getLawId())) { +// EnterpriseLawEnforcement law = new EnterpriseLawEnforcement(); +// law.setId(enforcementRegistration.getLawId()); +// law.setIsReg(1); +// resNum = enterpriseLawEnforcementService.updateEnterpriseLawEnforcement(law); +// } +// return resNum > 0 ? ZDResponse.success("修改成功") : ZDResponse.error("修改失败"); +// } +// +// @PostMapping("/edit2") +// @ResponseBody +// public ZDResponse editSave2(@RequestBody EnforcementRegistration enforcementRegistration) +// { +// enforcementRegistration.setIsSubmit(0); +// String district = extract(enforcementRegistration.getEnterpriseAddress(), "([^\\s市]+?区)"); +// String street = extract(enforcementRegistration.getEnterpriseAddress(), "([^\\s区]+?街道)"); +// enforcementRegistration.setDistrict(district); +// enforcementRegistration.setStreet(street); +// int resNum = enforcementRegistrationService.updateEnforcementRegistration(enforcementRegistration); +// if (StringUtils.isNotEmpty(enforcementRegistration.getLawId())) { +// EnterpriseLawEnforcement law = new EnterpriseLawEnforcement(); +// law.setId(enforcementRegistration.getLawId()); +// law.setIsReg(1); +// resNum = enterpriseLawEnforcementService.updateEnterpriseLawEnforcement(law); +// } +// return resNum > 0 ? ZDResponse.success("修改成功") : ZDResponse.error("修改失败"); +// } +// +// +// /** +// * 修改执法端-执法登记 +// */ +// @GetMapping("/detail/{id}") +// public String detail(@PathVariable("id") String id, ModelMap mmap) +// { +// EnforcementRegistration enforcementRegistration = enforcementRegistrationService.selectEnforcementRegistrationById(id); +// mmap.put("enforcementRegistration", enforcementRegistration); +// return prefix + "/detail"; +// } +// +// /** +// * 修改保存执法端-执法登记提交 +// */ +// @RequiresPermissions("code:registration:submit") +// @PostMapping("/submit") +// @ResponseBody +// public ZDResponse submit(@RequestBody EnforcementRegistration enforcementRegistration) +// { +// return enforcementRegistrationService.updateEnforcementRegistration(enforcementRegistration) > 0 ? +// ZDResponse.success("提交成功") : ZDResponse.error("提交失败"); +// } +// +// /** +// * 删除执法端-执法登记 +// */ +// @RequiresPermissions("code:registration:remove") +// @PostMapping( "/remove") +// @ResponseBody +// public ZDResponse remove(String ids) +// { +// return enforcementRegistrationService.deleteEnforcementRegistrationByIds(ids) > 0 ? +// ZDResponse.success("删除成功") : ZDResponse.error("删除失败"); +// } +// +// /** +// * 获取预警信息 +// */ +//// @RequiresPermissions("code:registration:list") +// @GetMapping("/queryEarlyWarning") +// @ResponseBody +// public ZDResponse queryEarlyWarning(EnforcementRegistration enforcementRegistration) +// { +// List list = enforcementRegistrationService.queryEarlyWarning(enforcementRegistration.getSearchValue()); +// return ZDResponse.success("查询成功",list); +// } +// +// /** +// * 执法登记详情 +// */ +// @GetMapping("/queryById/{id}") +// @ResponseBody +// public ZDResponse queryById(@PathVariable("id") String id) +// { +// EnforcementRegistration enforcementRegistration = enforcementRegistrationService.selectEnforcementRegistrationById(id); +// if (null != enforcementRegistration) { +//// LinkageDict ld1 = iLinkageDictService.selectLinkageDictById(enforcementRegistration.getLawEnforcementItem()); +//// Zqyjjdm137344 zq = new Zqyjjdm137344(); +//// try { +//// zq = iZqyjjdm137344Service.getZqyjjdmById(enforcementRegistration.getLawEnforcementBasis()); +//// } catch (Exception e) { +//// e.printStackTrace(); +//// } +//// enforcementRegistration.setLawEnforcementItemText(null==ld1?"":ld1.getTitle()); +//// enforcementRegistration.setLawEnforcementBasisText(null==zq?"":zq.getLawName()); +// +// // 执法人员1需要展示用户名+执法码 +// UserBean userBean = userApi.getUserByUserId(enforcementRegistration.getLawEnforcerId()); +// String lawCN = userBean.getUserName() +" "+userBean.getLawCertificateNum(); +// if(StringUtils.isEmpty(userBean.getLawCertificateNum())){ +// lawCN= userBean.getUserName() +" "+CommonUtil.encryptPhone(userBean.getPhonenumber()); +// } +// enforcementRegistration.setLawEnforcer(lawCN); +// +// // 执法人员2需要展示用户名+执法码 +// List userBeans = new ArrayList<>(); +// if (StringUtils.isNotEmpty(enforcementRegistration.getLawEnforcerIdTwo())) { +// userBeans = userApi.getUserByUserIds(enforcementRegistration.getLawEnforcerIdTwo()); +// } +// String tmpUserShow = ""; +// for (UserBean ub : userBeans) { +// String temp = ub.getLawCertificateNum(); +// if(StringUtils.isEmpty(temp)){ +// temp=CommonUtil.encryptPhone(ub.getPhonenumber()); +// } +// +// tmpUserShow += ub.getUserName() +" "+ temp + ","; +// } +// if (tmpUserShow.length() > 0) { +// tmpUserShow = tmpUserShow.substring(0, tmpUserShow.length()-1); +// } +// enforcementRegistration.setLawEnforcer2Show(tmpUserShow); +// +// // 字典回显 +// DictDataBean dictParams = new DictDataBean(); +// // 执法领域 +// if (StringUtils.isNotEmpty(enforcementRegistration.getLawField())) { +// dictParams.setDictType("law_field"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(enforcementRegistration.getLawField())) { +// enforcementRegistration.setLawFieldText(d.getDictLabel()); +// break; +// } +// } +// } +// // 执法类别 +// if (StringUtils.isNotEmpty(enforcementRegistration.getCheckCategory())) { +// dictParams.setDictType("check_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(enforcementRegistration.getCheckCategory())) { +// enforcementRegistration.setCheckCategoryText(d.getDictLabel()); +// break; +// } +// } +// } +// // 执法类别 +// if (StringUtils.isNotEmpty(enforcementRegistration.getLawEnforceCategory())) { +// dictParams.setDictType("law_enforce_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(enforcementRegistration.getLawEnforceCategory())) { +// enforcementRegistration.setLawEnforceCategoryText(d.getDictLabel()); +// break; +// } +// } +// } +// } +// return ZDResponse.success("查询成功",enforcementRegistration); +// } +// +// /** +// * 执法登记详情 - 联合执法版本 +// */ +// @GetMapping("/queryUniteById/{id}") +// @ResponseBody +// public ZDResponse queryUniteById(@PathVariable("id") String id) +// { +// List regResults = new ArrayList<>(); +// List lawResults = new ArrayList<>(); +// // 先获取登记数据 - 获取批次id +// EnforcementRegistration enforcementRegistration = enforcementRegistrationService.selectEnforcementRegistrationById(id); +// // 通过联合执法的批次id获取整个批次的联合执法 (查询详情这里不需要获取联合执法信息, 暂时先禁了, 省点性能) +// if (false && StringUtils.isNotEmpty(enforcementRegistration.getUnionNo()) && 1 == enforcementRegistration.getHasUnion()) { +// // 已登记联合检查 +// EnforcementRegistration regRarams = new EnforcementRegistration(); +//// regRarams.setUniteCheck(enforcementRegistration.getUniteCheck()); +// regRarams.setUnionNo((enforcementRegistration.getUnionNo())); +// regResults = enforcementRegistrationService.selectEnforcementRegistrationList(regRarams); +// // 预约未登记的 (预约没要联合检查了) +// EnterpriseLawEnforcement lawRarams = new EnterpriseLawEnforcement(); +// lawRarams.setUniteCheck(enforcementRegistration.getUniteCheck()); +// lawRarams.setIsReg(0); +// lawResults = enterpriseLawEnforcementService.selectEnterpriseLawEnforcementList2(lawRarams); +// } else { +// regResults.add(enforcementRegistration); +// } +// +// //查询行政检查评价 +// EnterpriseEvaluate enterpriseEvaluate = new EnterpriseEvaluate(); +//// if (StringUtils.isNotEmpty(regResults.get(0).getUniteCheck())) { +//// enterpriseEvaluate = enterpriseEvaluateService.selectEnterpriseEvaluateByUniteCheck(regResults.get(0).getUniteCheck()); +// if (StringUtils.isNotEmpty(regResults.get(0).getUnionNo())) { +// enterpriseEvaluate = enterpriseEvaluateService.selectEnterpriseEvaluateByUniteCheck(regResults.get(0).getUnionNo()); +// } else { +// enterpriseEvaluate = enterpriseEvaluateService.selectEnterpriseEvaluateByRelId(regResults.get(0).getId()); +// } +// +// for (EnforcementRegistration reg : regResults) { +// // 执法人员1需要展示用户名+执法码 没有执法码展示加密手机号 +// UserBean userBean = userApi.getUserByUserId(reg.getLawEnforcerId()); +// String lawCN = userBean.getUserName() +" "+userBean.getLawCertificateNum(); +// if(StringUtils.isEmpty(userBean.getLawCertificateNum())){ +// lawCN=userBean.getUserName() +" "+ CommonUtil.encryptPhone(userBean.getPhonenumber()); +// } +// reg.setLawEnforcer(lawCN); +// +// // 执法人员2需要展示用户名+执法码 没有执法码展示加密手机号 +// List userBeans = new ArrayList<>(); +// if (StringUtils.isNotEmpty(reg.getLawEnforcerIdTwo())) { +// userBeans = userApi.getUserByUserIds(reg.getLawEnforcerIdTwo()); +// } +// String tmpUserShow = ""; +// for (UserBean ub : userBeans) { +// String temp = ub.getLawCertificateNum(); +// if(StringUtils.isEmpty(temp)){ +// temp= CommonUtil.encryptPhone(ub.getPhonenumber()); +// } +// tmpUserShow += ub.getUserName() +" "+ temp + ","; +// } +// if (tmpUserShow.length() > 0) { +// tmpUserShow = tmpUserShow.substring(0, tmpUserShow.length()-1); +// } +// reg.setLawEnforcer2Show(tmpUserShow); +// +// // 字典回显 +// DictDataBean dictParams = new DictDataBean(); +// // 执法领域 +// if (StringUtils.isNotEmpty(reg.getLawField())) { +// dictParams.setDictType("law_field"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(reg.getLawField())) { +// reg.setLawFieldText(d.getDictLabel()); +// break; +// } +// } +// } +// // 任务来源 +// if (StringUtils.isNotEmpty(reg.getCheckCategory())) { +// dictParams.setDictType("check_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(reg.getCheckCategory())) { +// reg.setCheckCategoryText(d.getDictLabel()); +// break; +// } +// } +// } +// +// // 执法类别 +// if (StringUtils.isNotEmpty(reg.getLawEnforceCategory())) { +// dictParams.setDictType("law_enforce_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(reg.getLawEnforceCategory())) { +// reg.setLawEnforceCategoryText(d.getDictLabel()); +// break; +// } +// } +// } +// // 评价 +// +// //查询行政检查评价 +//// EnterpriseEvaluate enterpriseEvaluate = new EnterpriseEvaluate(); +//// if (StringUtils.isNotEmpty(enforcementRegistration.getUniteCheck())) { +//// enterpriseEvaluate = enterpriseEvaluateService.selectEnterpriseEvaluateByUniteCheck(enforcementRegistration.getUniteCheck()); +//// } else { +//// enterpriseEvaluate = enterpriseEvaluateService.selectEnterpriseEvaluateByRelId(enforcementRegistration.getId()); +//// } +// reg.setEnterpriseEvaluate(enterpriseEvaluate); +// } +// +// for (EnterpriseLawEnforcement law : lawResults) { +// // 执法人员1需要展示用户名+执法码 +// List userBeans1 = new ArrayList<>(); +// if (StringUtils.isNotEmpty(law.getLawEnforcerId())) { +// userBeans1 = userApi.getUserByUserIds(law.getLawEnforcerId()); +// } +// String tmpUserShow1 = ""; +// for (UserBean ub : userBeans1) { +// String lawCertificateNum = StringUtils.isEmpty(ub.getLawCertificateNum()) ? "" : ub.getLawCertificateNum(); +// tmpUserShow1 += ub.getUserName() + " " + lawCertificateNum + ","; +// } +// if (tmpUserShow1.length() > 0) { +// tmpUserShow1 = tmpUserShow1.substring(0, tmpUserShow1.length() - 1); +// } +// law.setLawEnforcer(tmpUserShow1); +// +// // 执法人员2需要展示用户名+执法码 +// List userBeans2 = new ArrayList<>(); +// if (StringUtils.isNotEmpty(law.getLawEnforcerTwoId())) { +// userBeans2 = userApi.getUserByUserIds(law.getLawEnforcerTwoId()); +// } +// String tmpUserShow2 = ""; +// for (UserBean ub : userBeans2) { +// String lawCertificateNum = StringUtils.isEmpty(ub.getLawCertificateNum()) ? "" : ub.getLawCertificateNum(); +// tmpUserShow2 += ub.getUserName() + " " + lawCertificateNum + ","; +// } +// if (tmpUserShow2.length() > 0) { +// tmpUserShow2 = tmpUserShow2.substring(0, tmpUserShow2.length() - 1); +// } +// law.setLawEnforcer2Show(tmpUserShow2); +// } +// Map result = new HashMap<>(); +// result.put("regResults", regResults); +// result.put("lawResults", lawResults); +// return ZDResponse.success("查询成功",result); +// } +// +// /** +// * 查询附件信息 +// * +// * @param key +// * @return +// */ +// @GetMapping("/queryFiles/{key}") +// @ResponseBody +// public ZDResponse queryFiles(@PathVariable String key) { +// HashMap map = new HashMap<>(); +// map.put("filePreview", enforcementRegistrationService.queryFiles(key)); +// return ZDResponse.success("获取成功", map); +// } +// +// /** +// * 查询附件信息 +// * +// * @param key +// * @return +// */ +// @PostMapping("/queryFilesPost") +// @ResponseBody +// public ZDResponse queryFilesPost(String key) { +// HashMap map = new HashMap<>(); +// map.put("filePreview", enforcementRegistrationService.queryFiles(key)); +// return ZDResponse.success("获取成功", map); +// } +// +// /** +// * 查看预约记录详情 +// */ +//// @GetMapping( "/getByUserIdAndZero/{userId}") +//// @ResponseBody +//// public ZDResponse getByUserIdAndZero(@PathVariable Long userId) +//// { +//// EnforcementRegistration registration = enforcementRegistrationService.getByUserIdAndZero(userId); +//// Map params = new HashMap<>(); +//// LinkageDict tmp = iLinkageDictService.selectLinkageDictById(registration.getLawEnforcementItem()); +//// params.put("lawEnforcementItemText", null!=tmp?tmp.getTitle():""); +//// tmp = iLinkageDictService.selectLinkageDictById(registration.getLawEnforcementBasis()); +//// params.put("lawEnforcementBasisText", null!=tmp?tmp.getTitle():""); +//// registration.setParams(params); +//// return ZDResponse.success("查询成功", registration); +//// } +// @GetMapping( "/getByUserIdAndEnterpriseNumber/{modth}/{userId}/{enterpriseNumber}") +// @ResponseBody +// public ZDResponse getByUserIdAndEnterpriseNumber(@PathVariable String modth, @PathVariable Long userId, @PathVariable String enterpriseNumber) +// { +// // 拿到的企业编码是加密盐的, 和登记表对不上 +// EnterpriseInformation enterpriseInformation = null; +// if ("add".equals(modth)) { +// enterpriseInformation = iEnterpriseInformationService.selectEnterpriseInformationBySalt(enterpriseNumber); +// } else { +// enterpriseInformation = iEnterpriseInformationService.selectEnterpriseInformationByNum(enterpriseNumber); +// } +// // 前端似乎没保存部门id, 所以弄个userId上来 通过userId获取其部门id +// UserBean userBean = userApi.getUserByUserId(userId); +// EnforcementRegistration registration = enforcementRegistrationService.getByDeptIdAndEnterpriseNumber(userBean.getDeptId(), enterpriseInformation.getEnterpriseNumber()); +// // 执法人员需要展示用户名+执法码 +// List userBeans = new ArrayList<>(); +// if (StringUtils.isNotEmpty(registration.getLawEnforcerIdTwo())) { +// userBeans = userApi.getUserByUserIds(registration.getLawEnforcerIdTwo()); +// } +// String tmpUserShow = ""; +// for (UserBean ub : userBeans) { +// String lawCertificateNum = StringUtils.isEmpty(ub.getLawCertificateNum())?"":ub.getLawCertificateNum(); +// tmpUserShow += ub.getUserName() +" "+ lawCertificateNum + ","; +// } +// if (tmpUserShow.length() > 0) { +// tmpUserShow = tmpUserShow.substring(0, tmpUserShow.length()-1); +// } +// registration.setLawEnforcer2Show(tmpUserShow); +// +// // 字典回显 +// DictDataBean dictParams = new DictDataBean(); +// // 执法领域 +// if (StringUtils.isNotEmpty(registration.getLawField())) { +// dictParams.setDictType("law_field"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(registration.getLawField())) { +// registration.setLawFieldText(d.getDictLabel()); +// break; +// } +// } +// } +// // 执法类别 +// if (StringUtils.isNotEmpty(registration.getCheckCategory())) { +// dictParams.setDictType("check_category"); +// List dicts = dictDataApi.getDictData(dictParams); +// for (DictDataBean d : dicts) { +// if (d.getDictValue().equals(registration.getCheckCategory())) { +// registration.setCheckCategoryText(d.getDictLabel()); +// break; +// } +// } +// } +// +// if (null!=registration && StringUtils.isNotEmpty(registration.getId())) { +// Map params = new HashMap<>(); +// LinkageDict tmp = iLinkageDictService.selectLinkageDictById(registration.getLawEnforcementItem()); +// params.put("lawEnforcementItemText", null != tmp ? tmp.getTitle() : ""); +// registration.setParams(params); +// return ZDResponse.success("查询成功", registration); +// } +// return ZDResponse.error("查询失败"); +// } +// +// /** +// * 查看预约记录详情 +// */ +// @GetMapping( "/getByIdToDataFillIn/{id}") +// @ResponseBody +// public ZDResponse getByIdToDataFillIn(@PathVariable String id) +// { +// EnforcementRegistration registration = enforcementRegistrationService.getEnforcementRegistrationById(id); +// +// //TODO 执法事项修改为手动输入 +//// Map params = new HashMap<>(); +//// LinkageDict tmp = iLinkageDictService.selectLinkageDictById(registration.getLawEnforcementItem()); +//// params.put("lawEnforcementItemText", tmp.getTitle()); +//// tmp = iLinkageDictService.selectLinkageDictById(registration.getLawEnforcementBasis()); +//// params.put("lawEnforcementBasisText", tmp.getTitle()); +//// registration.setParams(params); +// return ZDResponse.success("查询成功", registration); +// } +// +// /** +// * 获取全部执法部门 +// * @param bean +// * @return +// */ +// @PostMapping("/getAllEnforceDept") +// @ResponseBody +// public TableDataInfo getAllEnforceDept(@RequestBody DeptBean bean){ +// int count=deptApi.getAllEnforceDeptCount(bean); +// List list= deptApi.getAllEnforceDept(bean); +// TableDataInfo rspData = getDataTable(list); +// rspData.setCode(0); +// rspData.setRows(list); +// rspData.setTotal(count); +// return rspData; +// } +// +// private static String extract(String text, String regex) { +// java.util.regex.Pattern pattern = java.util.regex.Pattern.compile(regex); +// java.util.regex.Matcher matcher = pattern.matcher(text); +// if (matcher.find()) { +// return matcher.group(1); +// } +// return ""; +// } +//} +// +// diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntEnterpriseInformationController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntEnterpriseInformationController.java index f50cd0e1..4efb82d5 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntEnterpriseInformationController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEntEnterpriseInformationController.java @@ -1,15 +1,21 @@ package com.zdxt.enforcementcode.controller.app.enterprise; import cn.dev33.satoken.annotation.SaIgnore; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.zdxt.enforcementcode.domain.EnterpriseInformation; import com.zdxt.enforcementcode.domain.vo.EnterpriseInformationVo; import com.zdxt.enforcementcode.domain.vo.EnterpriseUserRefVo; import com.zdxt.enforcementcode.domain.vo.QrCodeGenerateHistoryVo; +import com.zdxt.enforcementcode.mapper.EnterpriseInformationMapper; import com.zdxt.enforcementcode.service.IEnterpriseInformationService; import com.zdxt.enforcementcode.service.IEnterpriseUserRefService; import com.zdxt.enforcementcode.service.IQrCodeGenerateHistoryService; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.R; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.satoken.utils.LoginHelper; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @@ -30,6 +36,8 @@ public class AppEntEnterpriseInformationController { private final IQrCodeGenerateHistoryService qrCodeGenerateHistoryService; private final IEnterpriseInformationService enterpriseInformationService; + private final EnterpriseInformationMapper enterpriseInformationMapper; + /** * 根据用户ID获取关联的企业信息列表 * @@ -69,20 +77,25 @@ public class AppEntEnterpriseInformationController { */ @SaIgnore @GetMapping("/getQrCode") - public R> getQrCode(String enterpriseNumber) { - if (enterpriseNumber == null || enterpriseNumber.trim().isEmpty()) { - return R.fail("企业纳税识别号不能为空"); + public R> getQrCode() { + + //根据当前登录用户部门ID 查询企业统一信用代码 + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(EnterpriseInformation::getDeptId, LoginHelper.getDeptId()); + EnterpriseInformation enterpriseInformation = enterpriseInformationMapper.selectOne(lqw); + if(enterpriseInformation == null){ + return R.fail("企业纳税识别号不存在"); } // 1. 查询最新的有效二维码记录 - QrCodeGenerateHistoryVo qrCodeVo = qrCodeGenerateHistoryService.queryLatestByEnterpriseNumber(enterpriseNumber); + QrCodeGenerateHistoryVo qrCodeVo = qrCodeGenerateHistoryService.queryLatestByEnterpriseNumber(enterpriseInformation.getEnterpriseNumber()); if (qrCodeVo == null) { return R.fail("未找到该企业的二维码记录"); } // 2. 查询企业名称(从企业信息表获取) String enterpriseName = ""; - EnterpriseInformationVo enterpriseInfo = enterpriseInformationService.queryByEnterpriseNumber(enterpriseNumber); + EnterpriseInformationVo enterpriseInfo = enterpriseInformationService.queryByEnterpriseNumber(enterpriseInformation.getEnterpriseNumber()); if (enterpriseInfo != null) { enterpriseName = enterpriseInfo.getEnterpriseName(); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java index 0bd57c58..1cfbd8ca 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java @@ -2,6 +2,7 @@ package com.zdxt.enforcementcode.controller.app.enterprise; import com.zdxt.enforcementcode.domain.bo.MssqOrderFlowBo; import com.zdxt.enforcementcode.domain.bo.enterprise.AppEnterpriseComplaintBo; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnforcementRegistrationVo; import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnterpriseComplaintVo; import com.zdxt.enforcementcode.service.enterprise.IAppEnterpriseComplaintService; import io.swagger.v3.oas.annotations.responses.ApiResponse; @@ -76,13 +77,9 @@ public class AppEnterpriseComplaintController extends BaseController { */ @ApiResponse(description = "投诉建议-行政和非行政未被投诉列表") @GetMapping("/listNotComplaint") - public TableDataInfo listNotComplaint(@ModelAttribute AppEnterpriseComplaintBo bo, PageQuery pageQuery) { + public TableDataInfo listNotComplaint(@ModelAttribute AppEnterpriseComplaintBo bo, PageQuery pageQuery) { // 校验企业信用代码 - if (StringUtils.isBlank(bo.getEnterpriseNumber())) { - throw new IllegalArgumentException("企业信用代码不能为空"); - } - - TableDataInfo list = appEnterpriseComplaintService.getAllCheckList(bo, pageQuery); + TableDataInfo list = appEnterpriseComplaintService.getAllCheckList(bo, pageQuery); return list; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/enterprise/AppEnterpriseComplaintBo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/enterprise/AppEnterpriseComplaintBo.java index 3d8af835..67a55a34 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/enterprise/AppEnterpriseComplaintBo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/enterprise/AppEnterpriseComplaintBo.java @@ -26,7 +26,6 @@ public class AppEnterpriseComplaintBo extends BaseEntity { /** * 主键ID */ - @NotBlank(message = "主键ID不能为空", groups = { EditGroup.class }) private String id; /** diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementEducationServicesVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementEducationServicesVo.java index 484f289b..e8156c3b 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementEducationServicesVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementEducationServicesVo.java @@ -106,5 +106,10 @@ public class EnforcementEducationServicesVo implements Serializable { @ExcelProperty(value = "备注") private String remark; + /** + * 是否已读 0-未读 1-已读 + */ + @ExcelProperty(value = "是否已读 0-未读 1-已读") + private Integer isRead; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnterpriseInformationVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnterpriseInformationVo.java index d3d9f70b..802fe860 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnterpriseInformationVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnterpriseInformationVo.java @@ -97,7 +97,7 @@ public class EnterpriseInformationVo implements Serializable { * 部门ID */ @ExcelProperty(value = "部门ID") - private Long deptId; + private String deptId; /** * 二维码id diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java index d6de904b..e841c5c6 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnforcementRegistrationVo.java @@ -362,4 +362,30 @@ public class AppEnforcementRegistrationVo implements Serializable { @ExcelProperty(value = "文件列表") private List fileList; + + /** + * 其他执法人员ID + */ + private String lawEnforcerOtherId; + + /** + * 其他执法人员 + */ + + private String lawEnforcerOther; + + /** + * 执法事项内容 + */ + private String title; + + /** + * 任务来源 + */ + private String lawEnforcementType; + + /** + * 数据类型 + */ + private Integer dataType; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementEducationServicesMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementEducationServicesMapper.java index 8698dffe..c590f914 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementEducationServicesMapper.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnforcementEducationServicesMapper.java @@ -5,6 +5,8 @@ import com.zdxt.enforcementcode.domain.vo.EnforcementEducationServicesVo; import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; +import java.util.List; + /** * 执法信息发布主Mapper接口 * @@ -20,5 +22,13 @@ public interface EnforcementEducationServicesMapper extends BaseMapperPlus selectReadMessageIds(@Param("messageIds") List messageIds, @Param("companyId") String companyId); +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppEnterpriseComplaintMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppEnterpriseComplaintMapper.java index 9cd2848c..41b7c393 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppEnterpriseComplaintMapper.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/enterprise/AppEnterpriseComplaintMapper.java @@ -2,6 +2,7 @@ package com.zdxt.enforcementcode.mapper.enterprise; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zdxt.enforcementcode.domain.EnterpriseComplaint; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnforcementRegistrationVo; import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnterpriseComplaintVo; import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; @@ -21,14 +22,14 @@ public interface AppEnterpriseComplaintMapper extends BaseMapperPlus selectAllCheckList( + List selectAllCheckList( @Param("enterpriseNumber") String enterpriseNumber, @Param("searchValue") String searchValue, @Param("checkCategoryCode") String checkCategoryCode, @Param("beginTime") Date beginTime, @Param("endTime") Date endTime, @Param("deptList") List deptList, - Page page + Page page ); /** diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/common/impl/FileUploadApiImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/common/impl/FileUploadApiImpl.java index 78a95949..659cec0d 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/common/impl/FileUploadApiImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/common/impl/FileUploadApiImpl.java @@ -1,9 +1,11 @@ package com.zdxt.enforcementcode.service.common.impl; +import com.zdxt.enforcementcode.common.config.RuoYiConfig; import com.zdxt.enforcementcode.common.util.file.FileUploadUtils; import com.zdxt.enforcementcode.service.common.FileUploadApi; import org.dromara.common.core.exception.base.BaseException; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; @@ -18,9 +20,11 @@ import java.io.IOException; @Service public class FileUploadApiImpl implements FileUploadApi { + @Autowired + RuoYiConfig ruoYiConfig; @Override public String upload(MultipartFile file) { - String filePath = FileUploadUtils.getDefaultBaseDir(); + String filePath = RuoYiConfig.getUploadPath(); try { return FileUploadUtils.upload(filePath, file); } catch (IOException e) { diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java index 93b89118..80651c5c 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java @@ -3,6 +3,7 @@ package com.zdxt.enforcementcode.service.enterprise; import com.zdxt.enforcementcode.domain.bo.EnterpriseComplaintBo; import com.zdxt.enforcementcode.domain.bo.MssqOrderFlowBo; import com.zdxt.enforcementcode.domain.bo.enterprise.AppEnterpriseComplaintBo; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnforcementRegistrationVo; import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnterpriseComplaintVo; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -63,7 +64,7 @@ public interface IAppEnterpriseComplaintService { * @param pageQuery 分页参数 * @return 分页结果 */ - TableDataInfo getAllCheckList(AppEnterpriseComplaintBo bo, PageQuery pageQuery); + TableDataInfo getAllCheckList(AppEnterpriseComplaintBo bo, PageQuery pageQuery); /** * 企业端-查询投诉建议处理进度 diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java index 6a21ffbe..edcaecc0 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java @@ -14,7 +14,9 @@ import com.zdxt.enforcementcode.domain.bo.MssqAddOrderBo; import com.zdxt.enforcementcode.domain.bo.MssqOrderFlowBo; import com.zdxt.enforcementcode.domain.bo.enterprise.AppEnterpriseComplaintBo; import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; +import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnforcementRegistrationVo; import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnterpriseComplaintVo; +import com.zdxt.enforcementcode.mapper.EnterpriseInformationMapper; import com.zdxt.enforcementcode.mapper.ZdxtFileMapper; import com.zdxt.enforcementcode.mapper.enterprise.AppEnforcementRegistrationMapper; import com.zdxt.enforcementcode.mapper.enterprise.AppEnterpriseComplaintMapper; @@ -68,6 +70,9 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain @Autowired private IMssqApiService mssqApiService; + @Autowired + private EnterpriseInformationMapper enterpriseInformationMapper; + /** * 企业端-投诉建议详情 * @@ -97,7 +102,7 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain @Override public TableDataInfo queryPageList(AppEnterpriseComplaintBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.eq(StringUtils.isNotBlank(bo.getRelId()), EnterpriseComplaint::getRelId, bo.getRelId()); + lqw.eq(StringUtils.isNotBlank(bo.getRelId()), EnterpriseComplaint::getRelId, bo.getRelId()).orderByDesc(EnterpriseComplaint::getCreateTime); Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); return TableDataInfo.build(result); } @@ -112,6 +117,8 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain @Transactional public Boolean insertEnterpriseComplaint(AppEnterpriseComplaintBo bo) { + log.info("接收到的投诉信息: enterpriseAddress={}, detailedAddress={}", bo.getEnterpriseAddress(), bo.getDetailedAddress()); + bo.setCreateTime(DateUtils.getNowDate()); bo.setId(IdUtil.simpleUUID()); EnterpriseComplaint add = MapstructUtils.convert(bo, EnterpriseComplaint.class); @@ -197,7 +204,20 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain * @return 投诉建议列表 */ @Override - public TableDataInfo getAllCheckList(AppEnterpriseComplaintBo bo, PageQuery pageQuery) { + public TableDataInfo getAllCheckList(AppEnterpriseComplaintBo bo, PageQuery pageQuery) { + + //根据部门查询 企业统一社会信用代码 + String deptId=LoginHelper.getDeptId(); + + + //enterprise_information + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(EnterpriseInformation::getDeptId, deptId); + EnterpriseInformation enterpriseInformation = enterpriseInformationMapper.selectOne(lqw); + if(enterpriseInformation == null){ + return TableDataInfo.build(); + } + bo.setEnterpriseNumber(enterpriseInformation.getEnterpriseNumber()); // 1. 调用 setDept() 处理部门过滤(从投诉事项编码提取信用代码查部门) List deptList = setDept(bo.getComplaintItemCodes()); @@ -208,8 +228,8 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain String checkCategoryCode = processSearchValue(bo.getSearchValue(), checkCategoryMap); // 4. 调用 Mapper 查询数据库 - Page page = pageQuery.build(); - List list = baseMapper.selectAllCheckList( + Page page = pageQuery.build(); + List list = baseMapper.selectAllCheckList( bo.getEnterpriseNumber(), bo.getSearchValue(), checkCategoryCode, @@ -219,25 +239,7 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain page ); - // 5. 设置总数 - Long total = baseMapper.countAllCheckList( - bo.getEnterpriseNumber(), - bo.getSearchValue(), - checkCategoryCode, - bo.getBeginTime(), - bo.getEndTime(), - deptList - ); - page.setRecords(list); - page.setTotal(total); - - // 6. 对返回数据进行转换 - List records = page.getRecords(); - if (records != null && !records.isEmpty()) { - convertResultData(records, checkCategoryMap); - } - - return TableDataInfo.build(page); + return TableDataInfo.build(list); } /** @@ -356,42 +358,7 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain return null; } - /** - * 转换结果数据 - * @param records 查询结果列表 - * @param checkCategoryMap 执法类别字典映射 - */ - private void convertResultData(List records, Map checkCategoryMap) { - for (AppEnterpriseComplaintVo vo : records) { - // 执法类别代码 → 中文名称 - if (StringUtils.isNotBlank(vo.getCheckCategoryCode()) && checkCategoryMap.containsKey(vo.getCheckCategoryCode())) { - vo.setCheckCategoryCode(checkCategoryMap.get(vo.getCheckCategoryCode())); - } - // 执法人员ID → 姓名+执法证号/加密手机号 - if (StringUtils.isNotBlank(vo.getLawEnforcerId())) { - vo.setLinkman(formatLawEnforcer(vo.getLawEnforcerId(), vo.getLinkman(), vo.getLinkmanTel())); - } - - // 其他执法人员ID → 姓名+证件号列表 - if (StringUtils.isNotBlank(vo.getLawEnforcerIdTwo())) { - List enforcerList = formatOtherLawEnforcers( - vo.getLawEnforcerIdTwo(), - vo.getLawEnforcerTwo(), - vo.getLinkmanTelTwo() - ); - vo.setLawEnforcer2List(enforcerList); - } - - // 查询附件列表 - if (vo.getId() != null) { - LambdaQueryWrapper fileLqw = Wrappers.lambdaQuery(); - fileLqw.eq(ZdxtFile::getBusinessId, vo.getId()); - List fileList = zdxtFileMapper.selectVoList(fileLqw); - vo.setFileList(fileList); - } - } - } /** * 格式化执法人员信息 diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseLoginServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseLoginServiceImpl.java index 70c674ca..f1a7fa59 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseLoginServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseLoginServiceImpl.java @@ -10,6 +10,7 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zdxt.enforcementcode.common.commonenum.PlatformTypeEnums; +import com.zdxt.enforcementcode.common.config.RuoYiConfig; import com.zdxt.enforcementcode.common.util.*; import com.zdxt.enforcementcode.domain.EnterpriseInformation; import com.zdxt.enforcementcode.domain.EnterpriseUser; @@ -97,11 +98,14 @@ public class AppEnterpriseLoginServiceImpl implements IAppEnterpriseLoginService SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - @Value("${sjdm.profile}") - private String filePath; +// @Value("${sjdm.profile}") +// private String filePath; +// +// @Value("${sjdm.qr_code_url}") +// private String qrCodeUrl; - @Value("${sjdm.qr_code_url}") - private String qrCodeUrl; + @Autowired + RuoYiConfig ruoYiConfig; @Value("${siq.mock.enabled:false}") private boolean mockEnabled; @@ -430,9 +434,9 @@ public class AppEnterpriseLoginServiceImpl implements IAppEnterpriseLoginService jsonMap.put("type", "zfjd"); String text = JSON.toJSONString(jsonMap); //这里设置自定义网站url - String logoPath = qrCodeUrl; + String logoPath = ruoYiConfig.getFile().getQrCodeUrl(); try { - File encode = QRCodeUtil.encodeFile(text, logoPath, filePath, true); + File encode = QRCodeUtil.encodeFile(text, logoPath, ruoYiConfig.getFile().getUploadPath(), true); MultipartFile multipartFile = QRCodeUtil.getMultipartFile(encode); String upload = fileUploadApi.upload(multipartFile); @@ -523,9 +527,13 @@ public class AppEnterpriseLoginServiceImpl implements IAppEnterpriseLoginService */ private JSONObject getMockSiqUserInfo(String code) { JSONObject userInfo = new JSONObject(); - + + // 随机生成账号:test + 6位随机数字 + String randomSuffix = String.format("%06d", (int)(Math.random() * 1000000)); + String account = "test" + randomSuffix; + userInfo.put("userId", "100001"); - userInfo.put("account", "test001" + (code != null ? code.hashCode() % 1000 : 1)); + userInfo.put("account", account); userInfo.put("userName", "测试用户"); userInfo.put("phone", IdCardCryptoUtil.symmetricEncryptIdCard(secretKey, "13800138000")); diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java index 2c4ac428..fd9c29f6 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java @@ -22,6 +22,7 @@ import com.zdxt.enforcementcode.domain.bo.SysMessageViewLogBo; import java.util.List; import java.util.Map; import java.util.Collection; +import java.util.stream.Collectors; /** * 执法信息发布主Service业务层处理 @@ -97,6 +98,12 @@ public class EnforcementEducationServicesServiceImpl implements IEnforcementEduc public TableDataInfo queryPageList(EnforcementEducationServicesBo bo, PageQuery pageQuery) { LambdaQueryWrapper lqw = buildQueryWrapper(bo); Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + + // 为每条记录设置是否已读状态 + if (result.getRecords() != null && !result.getRecords().isEmpty()) { + setReadStatus(result.getRecords()); + } + return TableDataInfo.build(result); } @@ -112,6 +119,44 @@ public class EnforcementEducationServicesServiceImpl implements IEnforcementEduc return baseMapper.selectVoList(lqw); } + /** + * 为消息列表设置是否已读状态 + * + * @param records 消息记录列表 + */ + private void setReadStatus(List records) { + // 获取当前登录用户的企业ID + String companyId = LoginHelper.getDeptId(); + + if (StringUtils.isBlank(companyId)) { + log.warn("当前用户未关联企业,无法设置已读状态"); + // 将所有记录设置为未读 + records.forEach(record -> record.setIsRead(0)); + return; + } + + // 获取所有消息ID + List messageIds = records.stream() + .map(EnforcementEducationServicesVo::getId) + .collect(Collectors.toList()); + + if (messageIds.isEmpty()) { + return; + } + + // 查询已读的消息ID列表 + List readMessageIds = baseMapper.selectReadMessageIds(messageIds, companyId); + + // 设置每条记录的已读状态 + records.forEach(record -> { + if (readMessageIds.contains(record.getId())) { + record.setIsRead(1); // 已读 + } else { + record.setIsRead(0); // 未读 + } + }); + } + private LambdaQueryWrapper buildQueryWrapper(EnforcementEducationServicesBo bo) { Map params = bo.getParams(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); @@ -191,19 +236,19 @@ public class EnforcementEducationServicesServiceImpl implements IEnforcementEduc public Long countUnreadEducationServices() { // 获取当前登录用户的企业ID String companyId = LoginHelper.getDeptId(); - + if (StringUtils.isBlank(companyId)) { log.warn("当前用户未关联企业,无法统计未读普法消息"); return 0L; } - + log.debug("统计企业未读普法消息: companyId={}", companyId); - + // 查询未读普法消息数量 Long unreadCount = baseMapper.countUnreadEducationServices(companyId); - + log.info("企业 {} 的未读普法消息数量: {}", companyId, unreadCount); - + return unreadCount != null ? unreadCount : 0L; } } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppEnterpriseComplaintMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppEnterpriseComplaintMapper.xml index 6106b1a1..71de2f10 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppEnterpriseComplaintMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/AppEnterpriseComplaintMapper.xml @@ -5,7 +5,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - SELECT * FROM ( SELECT diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementEducationServicesMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementEducationServicesMapper.xml index e0cfd0b9..ea5348f4 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementEducationServicesMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementEducationServicesMapper.xml @@ -20,4 +20,17 @@ ) + + + diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/api/enterprise/index.js b/zdxt-web-client/zdxt-efcode-enterprise-app/src/api/enterprise/index.js index b30210b0..0b620bbf 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/api/enterprise/index.js +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/api/enterprise/index.js @@ -4,7 +4,7 @@ import { _get, _post,_form,_delete } from "../../http/index"; let enterpriseAppBaseUrl = "/app-ent"; // 企业端用户登录 -export const enterpriseLogin = (params, success, error) => _post(enterpriseAppBaseUrl + "/login/do", params, success, error); +export const enterpriseLogin = (params, success, error) => _post(enterpriseAppBaseUrl + "/enterprise/login/siqLogin", params, success, error); // 获取包裹的数据 export const siqCode = (params, success, error) => _get(enterpriseAppBaseUrl+"/thirdLogin/getSiqCode",params,success,error); @@ -31,34 +31,52 @@ export const getLawDetail = (params, success, error) => _get(enterpriseAppBaseUr export const getLawCaseDetail = (params, success, error) => _get(enterpriseAppBaseUrl+"/lawEnforcementCase/lawCasedetail",params,success,error) //评价详情 -export const getEvaluateDetail = (params, success, error) => _get("/app/enterprise/evaluate", params, success, error) +export const getEvaluateDetail = (params, success, error) => _get(enterpriseAppBaseUrl +"/enterprise/evaluate", params, success, error) //提交评价 -export const submitEvaluate = (params, success, error) => _post("/app/enterprise/evaluate", params, success, error) +export const submitEvaluate = (params, success, error) => _post(enterpriseAppBaseUrl +"/enterprise/evaluate", params, success, error) //企业消息 / 执法消息详情 export const getEnforcementRegistrationDetailById = (params, success, error) => _get(enterpriseAppBaseUrl + "/enforcement_registration/queryDetailById", params, success, error) //普法服务列表 -export const getEducationServicesList = (params, success, error) => _get("/app/enterprise/todoitem/list",params,success,error) +export const getEducationServicesList = (params, success, error) => _get(enterpriseAppBaseUrl +"/enforcementcode/educationServices/list",params,success,error) + +//普法服务详情 +export const getEducationServicesDetail = (params, success, error) => _get(enterpriseAppBaseUrl +"/enforcementcode/educationServices/details",params,success,error) + +//执法预告列表 +export const getLawNoticeList = (params, success, error) => _get(enterpriseAppBaseUrl +"/enterprise/lawNotice/queryAllList",params,success,error) + +//首页轮播图列表 +export const getCarouselBannerList = (params, success, error) => _get(enterpriseAppBaseUrl +"/enterprise/carouselBanner/list",params,success,error) + +//系统通知公告列表 +export const getSystemNoticeList = (params, success, error) => _get(enterpriseAppBaseUrl +"/enterprise/noticeInfo/list",params,success,error) //获取企业信息(我的) export const getUserMine = (params, success, error) => _get(enterpriseAppBaseUrl+"/mine/userMine",params,success,error) +//修改联系电话 +export const updateContactPhone = (params, success, error) => _post(enterpriseAppBaseUrl+"/mine/updatePhone",params,success,error) + //投诉建议-查询列表 export const getComplaintList = (params, success, error) => _get(enterpriseAppBaseUrl+"/complaint/list",params,success,error) //投诉建议-详情 export const getComplaintDetail = (params, success, error) => _get(enterpriseAppBaseUrl+"/complaint/detail",params,success,error) +//投诉建议-处置进度 +export const getComplaintDisposalProgress = (params, success, error) => _get(enterpriseAppBaseUrl+"/complaint/disposalProgress",params,success,error) + //投诉建议-提交 export const addComplaint = (params, success, error) => _post(enterpriseAppBaseUrl+"/complaint/add",params,success,error) //查询字典数据(公共) -export const queryDict = (params, success, error) => _get("/common/dict/queryDict",params,success,error) +export const queryDict = (params, success, error) => _get(enterpriseAppBaseUrl +"/common/dict/queryDict",params,success,error) //执法单位(部门)列表 -export const getDeptList = (params, success, error) => _get("/enforcementcode/virtualUnit/list",params,success,error) +export const getDeptList = (params, success, error) => _get(enterpriseAppBaseUrl +"/enforcementcode/virtualUnit/list",params,success,error) //投诉事项列表 export const getComplaintItemList = (params, success, error) => _get(enterpriseAppBaseUrl +"/complaint/listNotComplaint",params,success,error) diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/http/http.js b/zdxt-web-client/zdxt-efcode-enterprise-app/src/http/http.js index 423c0ada..2216d605 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/http/http.js +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/http/http.js @@ -24,7 +24,7 @@ http.interceptors.request.use( if (token) { config.headers['Authorization'] = 'Bearer ' + token; } - config.headers['clientid'] = 'enterprise'; + config.headers['clientid'] = '9e6eb24cd4e169a98b0d2cd8034d877b'; return config }, err => { diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/util/fileUpload.js b/zdxt-web-client/zdxt-efcode-enterprise-app/src/util/fileUpload.js index cb2711a5..34fa55ce 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/util/fileUpload.js +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/util/fileUpload.js @@ -9,24 +9,20 @@ const http = axios.create({ const uploadFile = (files,callback) => { files.status = "uploading"; files.message = "上传中..."; - files.status = "uploading"; - // files.message = "上传中..."; // 需要使用 FormData 进行文件上传 let form = new FormData(); form.append("file", files.file); - axios({ method: "post", - url: baseUrl+ "/common/upload", + url: baseUrl+ "/app-enf/common/file/upload", data: form, - // headers: { - // 'Content-Type': 'multipart/form-data' - // } + headers: { + 'Content-Type': 'multipart/form-data' + } }) .then((res) => { files.status = "done"; files.message = "上传成功"; - console.log(res); callback && callback(res); }) .catch((err) => { @@ -48,7 +44,6 @@ const nameCorrect=(name)=>{ }else{ return (String(name1[0]).substr(0,1)+"\u3000"+String(name1[0]).substr(1)); } - }else{ return name; } diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluate.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluate.vue index 6ddcaab3..3ee05062 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluate.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluate.vue @@ -2,10 +2,10 @@
- @@ -426,6 +436,22 @@ const onSubmit = () => { margin-bottom: 0.25rem; padding-bottom: 0.15rem; border-bottom: 1px solid #f0f0f0; + display: flex; + align-items: baseline; + .union-tag { + color: #fff; + font-size: 0.32rem; + background: #1367fe; + width: 20px; + height: 20px; + text-align: center; + line-height: 20px; + border-radius: 50px; + margin-left: 4px; + flex-shrink: 0; + position: relative; + top: -3px; + } } .info-row { @@ -613,19 +639,25 @@ const onSubmit = () => { .option-btn { display: flex; align-items: center; - justify-content: center; - width: 0.9rem; - padding: 0.08rem 0; - border-radius: 0.13rem; - font-size: 0.26rem; - color: #666; - background: #f5f5f5; + gap: 4px; cursor: pointer; transition: all 0.2s; + img { + width: 24px; + height: 24px; + } + + span { + font-size: 0.28rem; + color: #999; + } + &.active { - background: #e3f2fd; - color: #2b7de9; + span { + color: #2b7de9; + font-weight: 600; + } } } } diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementNoticeList.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementNoticeList.vue index 78b09a3f..3981fd31 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementNoticeList.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementNoticeList.vue @@ -7,10 +7,10 @@ left-arrow @click-left="onClickLeft" > -