Browse Source

Merge remote-tracking branch 'origin/v5' into v5

v5
庄锐波 5 months ago
parent
commit
01ad07ca6f
  1. 164
      lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutCommonController.java
  2. 4
      lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutEnforcementRegistrationController.java
  3. 63
      lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutEnterpriseInfoController.java
  4. 4
      lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutEnterpriseLawEnforcementController.java

164
lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutCommonController.java

@ -0,0 +1,164 @@
package com.zdxt.app.controller.external.company;
import cn.hutool.core.io.FileTypeUtil;
import cn.hutool.core.io.FileUtil;
import com.google.common.collect.Lists;
import com.zdxt.auth.common.constant.Constants;
import com.zdxt.auth.common.utils.StringUtils;
import com.zdxt.auth.common.utils.file.FileUploadUtils;
import com.zdxt.auth.common.utils.file.FileUtils;
import com.zdxt.auth.dto.UserBean;
import com.zdxt.auth.feign.UserApi;
import com.zdxt.auth.framework.config.ServerConfig;
import com.zdxt.auth.framework.web.domain.AjaxResult;
import com.zdxt.common.ZDResponse;
import com.zdxt.common.config.RuoYiConfig;
import org.apache.commons.collections4.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.util.List;
import java.util.Locale;
/**
* 通用请求处理
*
* @author ruoyi
*/
@Controller
public class OutCommonController
{
private static final Logger log = LoggerFactory.getLogger(OutCommonController.class);
@Autowired
private ServerConfig serverConfig;
@Autowired
private UserApi userApi;
/**
* 默认允许的文件类型
*
* @see FileTypeUtil
*/
private List<String> defaultAllowTypes = Lists.newArrayList(
"xlsx", "xls", "docx", "doc", "pdf", "txt",
"jpg", "jpeg", "png", "bmp", "mp4",
"zip");
/**
* 通用下载请求
*
* @param fileName 文件名称
* @param delete 是否删除
*/
@GetMapping("/external/common/download")
public void fileDownload(String fileName, Boolean delete, HttpServletResponse response, HttpServletRequest request)
{
try
{
if (!FileUtils.isValidFilename(fileName))
{
throw new Exception(StringUtils.format("文件名称({})非法,不允许下载。 ", fileName));
}
String realFileName = System.currentTimeMillis() + fileName.substring(fileName.indexOf("_") + 1);
String filePath = RuoYiConfig.getDownloadPath() + fileName;
response.setCharacterEncoding("utf-8");
response.setContentType("multipart/form-data");
response.setHeader("Content-Disposition",
"attachment;fileName=" + FileUtils.setFileDownloadHeader(request, realFileName));
FileUtils.writeBytes(filePath, response.getOutputStream());
if (delete)
{
FileUtils.deleteFile(filePath);
}
}
catch (Exception e)
{
log.error("下载文件失败", e);
}
}
/**
* 通用上传请求
*/
@PostMapping("/external/common/upload")
@ResponseBody
public AjaxResult uploadFile(MultipartFile file) throws Exception
{
try
{
String fileNameTmp = file.getOriginalFilename();
InputStream in = file.getInputStream();
String type = FileTypeUtil.getType(in);
if (StringUtils.isBlank(type)) {
// 无法通过文件头或者扩展名识别文件类型。
return AjaxResult.error("上传失败格式不符合要求");
}
String extType = FileUtil.extName(fileNameTmp);
if (StringUtils.isBlank(extType)) {
// 后缀读不到类型,直接拒绝
return AjaxResult.error("无法读取文件类型");
}
// 文件头类型和后缀类型都要满足白名单
if (!CollectionUtils.containsAll(defaultAllowTypes,
Lists.newArrayList(type.toLowerCase(Locale.ROOT), extType.toLowerCase(Locale.ROOT)))) {
return AjaxResult.error("文件上传失败");
}
// 上传文件路径
String filePath = RuoYiConfig.getUploadPath();
// 上传并返回新文件名称
String fileName = FileUploadUtils.upload(filePath, file);
log.info("文件上传"+fileName);
String url = fileName;
AjaxResult ajax = AjaxResult.success();
ajax.put("fileName", fileName);
ajax.put("url", url);
return ajax;
}
catch (Exception e)
{
return AjaxResult.error(e.getMessage());
}
}
/**
* 本地资源通用下载
*/
@GetMapping("/external/common/download/resource")
public void resourceDownload(String resource, HttpServletRequest request, HttpServletResponse response)
throws Exception
{
// 本地资源路径
String localPath = RuoYiConfig.getProfile();
// 数据库资源地址
String downloadPath = localPath + StringUtils.substringAfter(resource, Constants.RESOURCE_PREFIX);
// 下载名称
String downloadName = StringUtils.substringAfterLast(downloadPath, "/");
response.setCharacterEncoding("utf-8");
response.setContentType("multipart/form-data");
response.setHeader("Content-Disposition",
"attachment;fileName=" + FileUtils.setFileDownloadHeader(request, downloadName));
FileUtils.writeBytes(downloadPath, response.getOutputStream());
}
@GetMapping("/external/getUserInfo")
@ResponseBody
public ZDResponse getUserInfo(){
UserBean user = userApi.getCurrentUser();
return ZDResponse.success("查询成功",user);
}
}

4
lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutEnforcementRegistrationController.java

@ -636,9 +636,9 @@ public class OutEnforcementRegistrationController extends BaseController
/**
* 执法登记详情 - 联合执法版本
*/
@GetMapping("/queryUniteById/{id}")
@GetMapping("/queryUniteById")
@ResponseBody
public ZDResponse queryUniteById(@PathVariable("id") String id)
public ZDResponse queryUniteById(String id)
{
List<EnforcementRegistration> regResults = new ArrayList<>();
List<EnterpriseLawEnforcement> lawResults = new ArrayList<>();

63
lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutEnterpriseInfoController.java

@ -0,0 +1,63 @@
package com.zdxt.app.controller.external.company;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import com.zdxt.auth.dto.DictDataBean;
import com.zdxt.auth.feign.DictDataApi;
import com.zdxt.auth.feign.ZdxtFileCommonApi;
import com.zdxt.code.domain.*;
import com.zdxt.code.mapper.EnforcementRegistrationMapper;
import com.zdxt.code.service.*;
import com.zdxt.common.ZDResponse;
import com.zdxt.common.controller.BaseController;
import com.zdxt.common.util.StringUtils;
import com.zdxt.common.util.TableDataInfo;
import com.zdxt.common.zdxtFile.ZdxtFileCommon;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.*;
/**
* 外部接口-企业执法-在线投诉Controller
*
* @author kylin
* @date 2026-04-15
*/
//@Tag(name = "外部接口", description = "企业信息")
@Controller
@RequestMapping("/external/enterprise/info")
public class OutEnterpriseInfoController extends BaseController {
@Autowired private IEnterpriseInformationService enterpriseInformationService;
@Autowired private IQrCodeGenerateHistoryService iQrCodeGenerateHistoryService;
@GetMapping("/getQrCode")
@ResponseBody
public ZDResponse getQrCode(String enterpriseNumber)
{
//查询企业二维码信息
QrCodeGenerateHistory qrCodeGenerateHistory = iQrCodeGenerateHistoryService.selectQrCodeGenerateHistoryByNewest(enterpriseNumber);
//查询企业信息
EnterpriseInformation enterpriseInformation =
enterpriseInformationService.selectEnterpriseInformationByNum(enterpriseNumber);
if(BeanUtil.isNotEmpty(enterpriseInformation) &&
StrUtil.isNotEmpty(enterpriseInformation.getEnterpriseNumber())){
qrCodeGenerateHistory.setEnterpriseName(enterpriseInformation.getEnterpriseName());
}
return ZDResponse.success("查询成功",qrCodeGenerateHistory);
}
/**
* 新增保存企业信息登记
*/
@PostMapping("/addEnterprise")
@ResponseBody
public ZDResponse addEnterprise(@RequestBody EnterpriseInformation enterpriseInformation)
{
return enterpriseInformationService.insertEnterpriseInformation(enterpriseInformation) > 0
? ZDResponse.success("登记成功"): ZDResponse.error("登记失败");
}
}

4
lib/EmergencyService/zdxtEmergencyAppService/src/main/java/com/zdxt/app/controller/external/company/OutEnterpriseLawEnforcementController.java

@ -78,9 +78,9 @@ public class OutEnterpriseLawEnforcementController extends BaseController
/**
* 查看预约记录详情
*/
@GetMapping( "/getById/{id}")
@GetMapping( "/getById")
@ResponseBody
public ZDResponse getById(@PathVariable("id") String id)
public ZDResponse getById(String id)
{
EnterpriseLawEnforcement enterpriseLawEnforcement =
enterpriseLawEnforcementService.selectEnterpriseLawEnforcementById(id);

Loading…
Cancel
Save