From 58723309804cd6afa11e086ccac5346bcad61c0d Mon Sep 17 00:00:00 2001 From: liujie <1793218484@qq.com> Date: 星期五, 08 八月 2025 18:48:42 +0800 Subject: [PATCH] update --- ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java | 65 +++++++++++++++++++++++++++++++- 1 files changed, 63 insertions(+), 2 deletions(-) diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java index 86ca34a..68ff4bb 100644 --- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java +++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java @@ -136,7 +136,22 @@ List<TbLicence> page1 = licenceService.list(new LambdaQueryWrapper<TbLicence>().eq(TbLicence::getDelFlag,0).orderByDesc(TbLicence::getOrderNum)); return R.ok(page1); } + private static boolean checkName(String name,String sign) { + Object report = getReport(sign); + JSONObject jsonObject = JSONObject.parseObject(report.toString()); + Object data = jsonObject.get("data"); + JSONObject jsonObject1 = JSONObject.parseObject(data.toString()); + String company = jsonObject1.get("company").toString(); + if(name.equals(company)){ + return false; + } + return true; + } + public static void main(String[] args) { + Object report = getReport("ZZE2025070102412440776825"); + System.out.println(report); + } @ApiOperation(value = "立即发布",tags = {"发布模块"}) @PostMapping("/pushCompany") public synchronized R<?> pushCompany(@Valid @RequestBody PushCompanyDto dto) { @@ -149,6 +164,14 @@ if (count > 0) { return R.fail("该公司已发布"); } + // 判断水母报告和 公司名称是否一致 + String link = dto.getLink(); + String sign = extractSnFromUrl(link); + boolean b = checkName(dto.getCompanyName(), sign); + if(b){ + return R.fail("水母报告和公司名称不一致"); + } + String companyId = tbCompanyService.pushCompany(dto, userId); return R.ok(companyId); } @@ -200,7 +223,13 @@ if (count > 0) { return R.fail("订单状态不能修改"); } - + // 判断水母报告和 公司名称是否一致 + String link = dto.getLink(); + String sign = extractSnFromUrl(link); + boolean b = checkName(dto.getCompanyName(), sign); + if(b){ + return R.fail("水母报告和公司名称不一致"); + } tbCompanyService.editCompany(dto,company,userId); return R.ok(dto.getId()); } @@ -358,6 +387,7 @@ return jsonObject; } + @ApiOperation(value = "已完成",tags = {"发布模块"}) @PostMapping("/saleSuccessOrder") public R<?> saleSuccessOrder(String orderId) { @@ -428,12 +458,43 @@ } TbCompany company = tbCompanyService.getById(companyId); String link = company.getLink(); - String sign = link.split("=")[1]; + String[] split = link.split("="); + String sign =split [split.length-1]; Object report = getReport(sign); return R.ok(report); } + /** + * 从URL中提取sn参数 + * @param url 包含sn参数的URL + * @return sn参数值 + */ + public static String extractSnFromUrl(String url) { + if (url == null || url.isEmpty()) { + return null; + } + + // 查找sn参数的位置 + String snParam = "sn="; + int startIndex = url.indexOf(snParam); + + if (startIndex == -1) { + return null; // 未找到sn参数 + } + + // 计算sn值的起始位置 + startIndex += snParam.length(); + + // 查找sn值的结束位置(遇到&或字符串结束) + int endIndex = url.indexOf("&", startIndex); + if (endIndex == -1) { + endIndex = url.length(); + } + + // 提取并返回sn值 + return url.substring(startIndex, endIndex); + } -- Gitblit v1.7.1