From d98af68f2ea108254ec362ac2497fd619e6dd3eb Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 13 一月 2026 18:13:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/H5AICallbackController.java | 5
ruoyi-admin/src/main/resources/application-test.yml | 4
ruoyi-system/src/main/java/com/ruoyi/system/vo/TSysAppUserVO.java | 3
ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsInfoSaveDto.java | 6 +
ruoyi-system/src/main/java/com/ruoyi/system/utils/util/ObsUploadUtil.java | 15 +++
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysInspectionController.java | 25 +++++
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TSysBannerServiceImpl.java | 50 ++++++------
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxPayController.java | 15 ++-
ruoyi-applet/src/main/resources/application-test.yml | 6
ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsSetCommissionDto.java | 4 +
ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/XimaAIUtil.java | 3
ruoyi-applet/src/main/resources/application-prod.yml | 2
ruoyi-system/src/main/resources/mapper/system/TErpGoodsMapper.xml | 2
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java | 2
ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysAppUserController.java | 59 ++++++++++++--
ruoyi-system/src/main/java/com/ruoyi/system/wxPay/utils/WxV3Pay.java | 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java | 2
ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/AesUtil.java | 14 +--
18 files changed, 154 insertions(+), 65 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java
index 9ca377f..c0d9b5b 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TErpGoodsController.java
@@ -835,6 +835,8 @@
TErpGoods goods = erpGoodsService.getById(dto.getId());
goods.setClinicPurchasePrice(BigDecimal.valueOf(dto.getClinicPurchasePrice()).setScale(2, RoundingMode.HALF_UP));
goods.setPlatformCommissionPrice(BigDecimal.valueOf(dto.getPlatformCommissionPrice()).setScale(2, RoundingMode.HALF_UP));
+ goods.setRetailPrice(dto.getRetailPrice());
+ goods.setSalesAmount(dto.getRetailPrice());
erpGoodsService.updateById(goods);
}
return R.ok();
diff --git a/ruoyi-admin/src/main/resources/application-test.yml b/ruoyi-admin/src/main/resources/application-test.yml
index e49d374..233814d 100644
--- a/ruoyi-admin/src/main/resources/application-test.yml
+++ b/ruoyi-admin/src/main/resources/application-test.yml
@@ -235,6 +235,6 @@
# 证书序列号
mchSerialNo: 39C7F6152E38A62B5786634D5C1F984FB5A38AD5
# 支付成功回调地址
- notifyPayUrl: http://221.182.45.100/wx/pay/notify
+ notifyPayUrl: http://221.182.45.100:8089/wx/pay/notify
# 支付退款回调地址
- notifyRefundUrl: http://221.182.45.100/wx/refund/notify
\ No newline at end of file
+ notifyRefundUrl: http://221.182.45.100:8089/wx/refund/notify
\ No newline at end of file
diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/H5AICallbackController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/H5AICallbackController.java
index f596370..8a071b9 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/H5AICallbackController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/H5AICallbackController.java
@@ -17,6 +17,7 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -134,7 +135,7 @@
@PostMapping("/xiMaReportPush")
- public JSONObject xiMaReportPush(JSONObject json) throws Exception {
+ public JSONObject xiMaReportPush(@RequestBody JSONObject json){
TSysAiConfig sysAiConfig = sysAiConfigService.getById(1);
// 应用AES秘钥
String clientKey = sysAiConfig.getClientKey();
@@ -217,7 +218,7 @@
}
@PostMapping("/xiMaDoubleScreenReportPush")
- public JSONObject xiMaDoubleScreenReportPush(JSONObject jsonObject) throws Exception {
+ public JSONObject xiMaDoubleScreenReportPush(@RequestBody JSONObject jsonObject){
log.info("双屏仪报告推送:{}",jsonObject);
// 主体信息
String reportTime = jsonObject.getString("report_time"); // 报告时间
diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysAppUserController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysAppUserController.java
index 8ecb8d7..e451cce 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysAppUserController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysAppUserController.java
@@ -4,35 +4,37 @@
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.basic.PageInfo;
+import com.ruoyi.common.constant.WxConstant;
import com.ruoyi.common.core.controller.FileController;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.framework.web.service.TokenService;
-import com.ruoyi.system.model.TCrmClinic;
-import com.ruoyi.system.model.TSysAppUser;
-import com.ruoyi.system.model.TSysChronicDisease;
-import com.ruoyi.system.model.TSysInspection;
+import com.ruoyi.system.model.*;
import com.ruoyi.system.query.TSysAppUserQuery;
import com.ruoyi.system.service.*;
+import com.ruoyi.system.utils.util.ObsUploadUtil;
import com.ruoyi.system.utils.wx.model.WeixinProperties;
+import com.ruoyi.system.utils.wx.tools.WxAppletTools;
import com.ruoyi.system.utils.xiMaUtil.XimaAIUtil;
import com.ruoyi.system.vo.TSysAppUserVO;
import com.ruoyi.system.vo.TSysOrderVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
+import org.apache.http.entity.ContentType;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.*;
+import org.springframework.mock.web.MockMultipartFile;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.client.RestTemplate;
+import org.springframework.web.multipart.MultipartFile;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-import java.util.UUID;
+import java.io.ByteArrayInputStream;
+import java.util.*;
/**
* <p>
@@ -60,8 +62,9 @@
private final WeixinProperties wxConfig;
private final TCrmClinicService crmClinicService;
private final ISysUserService sysUserService;
+ private final TSysOtherConfigService sysOtherConfigService;
@Autowired
- public TSysAppUserController(TSysAppUserService sysAppUserService, TSysInspectionService sysInspectionService, TSysOrderService sysOrderService, TSysChronicDiseaseService sysChronicDiseaseService, TokenService tokenService, RedisCache redisCache, XimaAIUtil ximaAIUtil, RestTemplate restTemplate, FileController fileController, WeixinProperties wxConfig, TCrmClinicService crmClinicService, ISysUserService sysUserService) {
+ public TSysAppUserController(TSysAppUserService sysAppUserService, TSysInspectionService sysInspectionService, TSysOrderService sysOrderService, TSysChronicDiseaseService sysChronicDiseaseService, TokenService tokenService, RedisCache redisCache, XimaAIUtil ximaAIUtil, RestTemplate restTemplate, FileController fileController, WeixinProperties wxConfig, TCrmClinicService crmClinicService, ISysUserService sysUserService, TSysOtherConfigService sysOtherConfigService) {
this.sysAppUserService = sysAppUserService;
this.sysInspectionService = sysInspectionService;
this.sysOrderService = sysOrderService;
@@ -74,6 +77,7 @@
this.wxConfig = wxConfig;
this.crmClinicService = crmClinicService;
this.sysUserService = sysUserService;
+ this.sysOtherConfigService = sysOtherConfigService;
}
/**
@@ -123,6 +127,9 @@
}else {
sysAppUserVO.setIsClinicUser(0);
}
+ // 查询免费次数
+ TSysOtherConfig sysOtherConfig = sysOtherConfigService.getById(1);
+ sysAppUserVO.setAiFreeCount(sysOtherConfig.getAiFreeCount());
return R.ok(sysAppUserVO);
}
@@ -167,7 +174,12 @@
String userId = tokenService.getLoginUserApplet().getUserId();
TSysAppUser sysAppUser = sysAppUserService.getById(userId);
- if(StringUtils.isBlank(sysAppUser.getNickName()) || StringUtils.isBlank(sysAppUser.getPhone()) || Objects.isNull(sysAppUser.getSex()) ||Objects.isNull(sysAppUser.getUserHeight()) || Objects.isNull(sysAppUser.getUserWeight())){
+ if(StringUtils.isBlank(sysAppUser.getNickName())
+ || StringUtils.isBlank(sysAppUser.getPhone())
+ || Objects.isNull(sysAppUser.getSex())
+ || Objects.isNull(sysAppUser.getBirthTime())
+ || Objects.isNull(sysAppUser.getUserHeight())
+ || Objects.isNull(sysAppUser.getUserWeight())){
return R.fail("请先完善用户信息");
}
@@ -176,7 +188,7 @@
sysAppUser.setIdentifierNumber(identifierNumber);
sysAppUserService.updateById(sysAppUser);
}
- JSONObject authorizationH5 = ximaAIUtil.getAuthorizationH5(sysAppUser.getIdentifierNumber(), sysAppUser.getNickName(), sysAppUser.getPhone(), sysAppUser.getSex() == 1 ? "0" : "1", sysAppUser.getUserHeight(), sysAppUser.getUserWeight(), deviceType);
+ JSONObject authorizationH5 = ximaAIUtil.getAuthorizationH5(sysAppUser.getIdentifierNumber(), sysAppUser.getNickName(), sysAppUser.getPhone(), sysAppUser.getSex() == 1 ? "0" : "1",sysAppUser.getBirthTime().toString(), sysAppUser.getUserHeight(), sysAppUser.getUserWeight(), deviceType);
return R.ok(authorizationH5);
}
@@ -196,6 +208,31 @@
if(Objects.isNull(crmClinic)){
return R.fail("未找到该诊所信息");
}
+ if(StringUtils.isBlank(crmClinic.getQrCode())){
+ WxAppletTools wxAppletTools = new WxAppletTools(restTemplate, wxConfig, redisCache);
+ // 获取access_token
+ String accessToken = wxAppletTools.getAccessToken();
+ // 替换CREATE_CODE_URL
+ String url = WxConstant.CREATE_CODE_URL.replace("ACCESS_TOKEN", accessToken);
+ // 发送请求
+ try {
+ HashMap<String, String> map = new HashMap<>();
+ map.put("path", "pages/invite/invite");
+ map.put("scene", "clinicId=" + crmClinic.getId());
+ HttpHeaders headers = new HttpHeaders();
+ headers.setContentType(MediaType.APPLICATION_JSON);
+ HttpEntity requestEntity = new HttpEntity(map, headers);
+ ResponseEntity<byte[]> rep = restTemplate.exchange(url, HttpMethod.POST, requestEntity, byte[].class);
+ byte[] bytes = rep.getBody();
+ ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
+ MultipartFile file = new MockMultipartFile(ContentType.APPLICATION_OCTET_STREAM.toString(), byteArrayInputStream);
+ String stringApiResult = ObsUploadUtil.obsUploadQrCode(file,"qrcode_"+crmClinic.getId()+".jpg");
+ crmClinic.setQrCode(stringApiResult);
+ } catch (Exception e) {
+ log.error("生成小程序码失败:{}", e.getMessage());
+ }
+ crmClinicService.updateById(crmClinic);
+ }
return R.ok(crmClinic.getQrCode());
}
diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysInspectionController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysInspectionController.java
index 3743f5c..7434b62 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysInspectionController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/TSysInspectionController.java
@@ -10,9 +10,11 @@
import com.ruoyi.framework.web.service.TokenService;
import com.ruoyi.system.model.TSysAppUser;
import com.ruoyi.system.model.TSysInspection;
+import com.ruoyi.system.model.TSysOtherConfig;
import com.ruoyi.system.query.TSysInspectionQuery;
import com.ruoyi.system.service.TSysAppUserService;
import com.ruoyi.system.service.TSysInspectionService;
+import com.ruoyi.system.service.TSysOtherConfigService;
import com.ruoyi.system.utils.util.AIUtil;
import com.ruoyi.system.vo.TSysInspectionVO;
import io.swagger.annotations.Api;
@@ -40,13 +42,15 @@
private final TSysInspectionService sysInspectionService;
private final TokenService tokenService;
private final TSysAppUserService sysAppUserService;
+ private final TSysOtherConfigService sysOtherConfigService;
private final AIUtil aiUtil;
private final RedisCache redisCache;
@Autowired
- public TSysInspectionController(TSysInspectionService sysInspectionService, TokenService tokenService, TSysAppUserService sysAppUserService, AIUtil aiUtil, RedisCache redisCache) {
+ public TSysInspectionController(TSysInspectionService sysInspectionService, TokenService tokenService, TSysAppUserService sysAppUserService, TSysOtherConfigService sysOtherConfigService, AIUtil aiUtil, RedisCache redisCache) {
this.sysInspectionService = sysInspectionService;
this.tokenService = tokenService;
this.sysAppUserService = sysAppUserService;
+ this.sysOtherConfigService = sysOtherConfigService;
this.aiUtil = aiUtil;
this.redisCache = redisCache;
}
@@ -67,7 +71,24 @@
@ApiOperation(value = "查看用户检测信息管理详情")
@GetMapping(value = "/getDetailById")
public R<TSysInspection> getDetailById(@RequestParam String id) {
- return R.ok(sysInspectionService.getById(id));
+ // 查询用户信息
+ String userId = tokenService.getLoginUserApplet().getUserId();
+ TSysAppUser sysAppUser = sysAppUserService.getById(userId);
+ // 匹配免费次数
+ TSysOtherConfig sysOtherConfig = sysOtherConfigService.getById(1);
+ TSysInspection sysInspection = sysInspectionService.getById(id);
+ if(sysInspection.getIsPay() == 0 && sysInspection.getInspectionType() == 2){
+ // 匹配免费次数
+ if(Objects.equals(sysAppUser.getUseAiFreeCount(), sysOtherConfig.getAiFreeCount())){
+ return R.fail("您已使用完免费次数");
+ }
+ // 检测免费次数
+ sysAppUser.setUseAiFreeCount(sysAppUser.getUseAiFreeCount() + 1);
+ sysAppUserService.updateById(sysAppUser);
+ sysInspection.setIsPay(1);
+ sysInspectionService.updateById(sysInspection);
+ }
+ return R.ok(sysInspection);
}
/**
diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxPayController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxPayController.java
index 6efdcf4..de024d5 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxPayController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxPayController.java
@@ -66,7 +66,7 @@
*/
@ApiOperation("订单支付")
@PostMapping("orderPay")
- public R<Map<String, Object>> orderPay(@RequestParam(value = "inspectionId") String inspectionId,@RequestParam(value = "orderType") Integer orderType) {
+ public R<Map<String, Object>> orderPay(@RequestParam(value = "inspectionId",required = false) String inspectionId,@RequestParam(value = "orderType") Integer orderType) {
TSysOtherConfig sysOtherConfig = sysOtherConfigService.getById(1);
String userId = tokenService.getLoginUserApplet().getUserId();
@@ -138,8 +138,9 @@
TSysAppUser appUser = sysAppUserService.getById(appUserId);
if (sysPayRecord.getOrderType()==2){
LocalDateTime localDateTime = LocalDateTime.now().plusMonths(1L);
- localDateTime = localDateTime.withHour(23).withMinute(59).withSecond(59);
+ localDateTime = localDateTime.withHour(23).withMinute(59).withSecond(57);
appUser.setVipEndTime(localDateTime);
+ sysAppUserService.updateById(appUser);
List<TSysInspection> list = sysInspectionService.lambdaQuery().eq(TSysInspection::getAppUserId, appUserId)
.list();
if (!list.isEmpty()){
@@ -148,13 +149,13 @@
}
sysInspectionService.updateBatchById(list);
}
+ }else {
+ // 处理检测报告为可见
+ TSysInspection sysInspection = sysInspectionService.getById(sysPayRecord.getInspectionId());
+ sysInspection.setIsPay(1);
+ sysInspectionService.updateById(sysInspection);
}
sysPayRecordService.updateById(sysPayRecord);
-
- // 处理检测报告为可见
- TSysInspection sysInspection = sysInspectionService.getById(sysPayRecord.getInspectionId());
- sysInspection.setIsPay(1);
- sysInspectionService.updateById(sysInspection);
PrintWriter out = response.getWriter();
out.print("SUCCESS");
diff --git a/ruoyi-applet/src/main/resources/application-prod.yml b/ruoyi-applet/src/main/resources/application-prod.yml
index e418a60..d18b6b2 100644
--- a/ruoyi-applet/src/main/resources/application-prod.yml
+++ b/ruoyi-applet/src/main/resources/application-prod.yml
@@ -225,7 +225,7 @@
secretId: 79c234527fd3b6553679d52be5e29b19
v3:
# 加签串
- apiKey: V7mKp9qL2Rs4jU6tX8wZ0bC3eF5hN1yD4gA
+ apiKey: V7mKp9qL2Rs4jU6tX8wZ0bC3eF5hN1yD
# 加签证书地址
privateKeyPath: /usr/local/project/cert/weixin/apiclient_key.pem
# 微信支付公钥id
diff --git a/ruoyi-applet/src/main/resources/application-test.yml b/ruoyi-applet/src/main/resources/application-test.yml
index 3e37d9e..f2a3cb6 100644
--- a/ruoyi-applet/src/main/resources/application-test.yml
+++ b/ruoyi-applet/src/main/resources/application-test.yml
@@ -213,7 +213,7 @@
secretId: 79c234527fd3b6553679d52be5e29b19
v3:
# 加签串
- apiKey: V7mKp9qL2Rs4jU6tX8wZ0bC3eF5hN1yD4gA
+ apiKey: V7mKp9qL2Rs4jU6tX8wZ0bC3eF5hN1yD
# 加签证书地址
privateKeyPath: D:/app/cert/weixin/apiclient_key.pem
# 微信支付公钥id
@@ -223,6 +223,6 @@
# 证书序列号
mchSerialNo: 39C7F6152E38A62B5786634D5C1F984FB5A38AD5
# 支付成功回调地址
- notifyPayUrl: http://221.182.45.100/wx/pay/notify
+ notifyPayUrl: http://221.182.45.100:8088/wx/pay/notify
# 支付退款回调地址
- notifyRefundUrl: http://221.182.45.100/wx/refund/notify
+ notifyRefundUrl: http://221.182.45.100:8088/wx/refund/notify
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
index ed370a3..e27e800 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
@@ -126,7 +126,7 @@
"/t-sys-educational-info/list","/t-sys-educational-info/getDetailById","/t-sys-educational-info/pageList",
"/t-sys-live/list","/t-sys-live/getDetailById","/t-sys-live/pageList","/t-sys-qualifications/list",
"/open/**","/cos/get/**","/openIdByJsCode","/t-sys-order/**","/openIdByCode","/tRegion/sendTest"
- ,"/t-sys-qualifications/pageList","/t-sys-qualifications/getDetailById"
+ ,"/t-sys-qualifications/pageList","/t-sys-qualifications/getDetailById","/wx/pay/notify"
).permitAll()
// 静态资源,可匿名访问
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsInfoSaveDto.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsInfoSaveDto.java
index bb87105..2b35085 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsInfoSaveDto.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsInfoSaveDto.java
@@ -93,4 +93,10 @@
@ApiModelProperty(value = "贮藏")
private String storage;
+
+ @ApiModelProperty(value = "封面")
+ private String cover;
+
+ @ApiModelProperty(value = "详情图")
+ private String detailPictures;
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsSetCommissionDto.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsSetCommissionDto.java
index efa90ba..1353204 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsSetCommissionDto.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/TErpGoodsSetCommissionDto.java
@@ -1,5 +1,6 @@
package com.ruoyi.system.dto;
+import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -21,4 +22,7 @@
@ApiModelProperty(value = "平台分佣金额")
@NotNull(message = "平台分佣金额不能为空")
private Double platformCommissionPrice;
+ @ApiModelProperty(value = "建议零售价")
+ @NotNull(message = "建议零售价不能为空")
+ private BigDecimal retailPrice;
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TSysBannerServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TSysBannerServiceImpl.java
index 5083fdf..fe7cfc7 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TSysBannerServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TSysBannerServiceImpl.java
@@ -56,30 +56,32 @@
return pageInfo;
}
for (TSysBannerVO sysBannerVO : list) {
- switch (sysBannerVO.getJumpType()){
- case 2:
- TSysEducationalInfo educationalInfo = sysEducationalInfoMapper.selectById(sysBannerVO.getContentId());
- if(Objects.nonNull(educationalInfo)){
- sysBannerVO.setContentName(educationalInfo.getInfoTitle());
- }
- break;
- case 3:
- TSysLive sysLive = sysLiveMapper.selectById(sysBannerVO.getContentId());
- if(Objects.nonNull(sysLive)){
- sysBannerVO.setContentName(sysLive.getLiveTitle());
- }
- break;
- case 4:
- TSysProductIntroduction sysProductIntroduction = sysProductIntroductionMapper.selectById(sysBannerVO.getContentId());
- if(Objects.nonNull(sysProductIntroduction)){
- sysBannerVO.setContentName(sysProductIntroduction.getProductName());
- }
- break;
- case 5:
- TSysActivity sysActivity = sysActivityMapper.selectById(sysBannerVO.getContentId());
- if(Objects.nonNull(sysActivity)){
- sysBannerVO.setContentName(sysActivity.getActivityName());
- }
+ if(Objects.nonNull(sysBannerVO.getJumpType())){
+ switch (sysBannerVO.getJumpType()){
+ case 2:
+ TSysEducationalInfo educationalInfo = sysEducationalInfoMapper.selectById(sysBannerVO.getContentId());
+ if(Objects.nonNull(educationalInfo)){
+ sysBannerVO.setContentName(educationalInfo.getInfoTitle());
+ }
+ break;
+ case 3:
+ TSysLive sysLive = sysLiveMapper.selectById(sysBannerVO.getContentId());
+ if(Objects.nonNull(sysLive)){
+ sysBannerVO.setContentName(sysLive.getLiveTitle());
+ }
+ break;
+ case 4:
+ TSysProductIntroduction sysProductIntroduction = sysProductIntroductionMapper.selectById(sysBannerVO.getContentId());
+ if(Objects.nonNull(sysProductIntroduction)){
+ sysBannerVO.setContentName(sysProductIntroduction.getProductName());
+ }
+ break;
+ case 5:
+ TSysActivity sysActivity = sysActivityMapper.selectById(sysBannerVO.getContentId());
+ if(Objects.nonNull(sysActivity)){
+ sysBannerVO.setContentName(sysActivity.getActivityName());
+ }
+ }
}
}
pageInfo.setRecords(list);
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/utils/util/ObsUploadUtil.java b/ruoyi-system/src/main/java/com/ruoyi/system/utils/util/ObsUploadUtil.java
index 458616d..409b80b 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/utils/util/ObsUploadUtil.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/utils/util/ObsUploadUtil.java
@@ -36,6 +36,21 @@
}
return fileName;
}
+ public static String obsUploadQrCode(MultipartFile file,String originalFilename) throws IOException{
+ String fileName = "";
+ if(file!=null){
+ InputStream content = file.getInputStream();//获得指定文件的输入流
+ ObjectMetadata meta = new ObjectMetadata();// 创建上传Object的Metadata
+ meta.setContentLength(file.getSize()); // 必须设置ContentLength
+ fileName = UUID.randomUUID().toString().replaceAll("-","") + originalFilename.subSequence(originalFilename.lastIndexOf("."), originalFilename.length());
+ obsClient.putObject(bucketName,"file/"+fileName,content,meta);// 上传Object.
+ if(fileName != null && !"".equals(fileName)){
+ System.out.println(fileName);
+ fileName = oss_domain+"file/"+fileName;
+ }
+ }
+ return fileName;
+ }
/**
* 删除某个Object
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/AesUtil.java b/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/AesUtil.java
index 9bc812d..7519762 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/AesUtil.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/AesUtil.java
@@ -1,16 +1,12 @@
package com.ruoyi.system.utils.xiMaUtil;
-import java.security.Security;
+
+import org.bouncycastle.jce.provider.BouncyCastleProvider;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
-
-import org.bouncycastle.jce.provider.BouncyCastleProvider;
-
-
-
-
+import java.security.Security;
/**
*
@@ -41,8 +37,8 @@
byte[] iv = Base64.getDecoder().decode(keyStr);
byte[] key = Base64.getDecoder().decode(keyStr); */
- String key = "ciicciicciicciic";
- String iv = "ciic2022ciic2022";
+ String key = "7bc47ce80ff74c1cbebad1ced111243d";
+ String iv = "69b84732eace4e6a";
String content = "1234567890";
String encrypted = encrypt(key, iv, content);
System.out.println("加密后: " + encrypted);
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/XimaAIUtil.java b/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/XimaAIUtil.java
index 2ccc9d1..5ab011d 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/XimaAIUtil.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/utils/xiMaUtil/XimaAIUtil.java
@@ -34,7 +34,7 @@
* @param device_type 设备类型:android ios
* @return
*/
- public JSONObject getAuthorizationH5(String out_user_id,String nickname,String phone,String sex,Integer height,Integer weight,String device_type) {
+ public JSONObject getAuthorizationH5(String out_user_id,String nickname,String phone,String sex,String birthday,Integer height,Integer weight,String device_type) {
TSysAiConfig sysAiConfig = sysAiConfigService.getById(1);
JSONObject jsonObject = new JSONObject();
jsonObject.put("client_id", sysAiConfig.getClientId());
@@ -42,6 +42,7 @@
jsonObject.put("out_user_id", out_user_id);
jsonObject.put("nickname", nickname);
jsonObject.put("phone", phone);
+ jsonObject.put("birthday", birthday);
jsonObject.put("sex", sex);
jsonObject.put("height", height);
jsonObject.put("weight", weight);
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSysAppUserVO.java b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSysAppUserVO.java
index 3cf51e6..9cccab8 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSysAppUserVO.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/vo/TSysAppUserVO.java
@@ -37,4 +37,7 @@
@ApiModelProperty(value = "是否为诊所用户 1=是 0=否")
private Integer isClinicUser;
+ @ApiModelProperty(value = "系统免费次数")
+ private Integer aiFreeCount;
+
}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/wxPay/utils/WxV3Pay.java b/ruoyi-system/src/main/java/com/ruoyi/system/wxPay/utils/WxV3Pay.java
index 4ab91ce..2158760 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/wxPay/utils/WxV3Pay.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/wxPay/utils/WxV3Pay.java
@@ -134,7 +134,7 @@
JsapiPrepay.DirectAPIv3JsapiPrepayResponse response = client.run(request);
return wxTuneUp(this.privateKeySigner, this.config.getAppId(), response.prepayId);
} catch (WXPayUtility.ApiException e) {
- throw new RuntimeException("获取支付数据错误!");
+ throw new RuntimeException("获取支付数据错误!"+e.getErrorMessage());
}
}
// /**
diff --git a/ruoyi-system/src/main/resources/mapper/system/TErpGoodsMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TErpGoodsMapper.xml
index 4ad9e69..d1f6cbc 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TErpGoodsMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TErpGoodsMapper.xml
@@ -464,7 +464,7 @@
t1.instructions_use like concat('%',#{query.queryCondition},'%') or
t1.ingredient like concat('%',#{query.queryCondition},'%') or
t1.trait like concat('%',#{query.queryCondition},'%') or
- t1.indication like concat('%',#{query.queryCondition},'%') or
+ t1.indication like concat('%',#{query.queryCondition},'%')
)
</if>
<if test="query.goodsIds != null and query.goodsIds.size()>0">
--
Gitblit v1.7.1