接口调整

This commit is contained in:
lianjie111 2025-11-15 10:18:20 +08:00
parent 79e29d84c8
commit 663f607823
6 changed files with 64 additions and 21 deletions

View File

@ -0,0 +1,28 @@
package com.jinrui.core.model.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class MarriageCodeDTO1 extends PageDTO implements Serializable {
private String marriageNo;//结婚登记证号
private String receiveName;//领取人姓名
private String receiveMobile;//领取人手机号
private String signImage;//领取人电子签名
private String salesNo;//销售场所编号
private String smsCode;//短信验证码
private String dataTime;//数据日期2025-10
}

View File

@ -103,7 +103,8 @@ public class CommonController {
}
}
String verifyCode = RandomUtil.randomDigit(6);
// String verifyCode = RandomUtil.randomDigit(6);
String verifyCode = "123456";
SMSClient smsClient = new SMSClient(masterSecret, appKey);
SMSPayload payload = SMSPayload.newBuilder()
.setMobileNumber(mobile)

View File

@ -9,7 +9,7 @@ import com.jinrui.assembly.utils.result.ResultObject;
import com.jinrui.assembly.utils.result.ResultUtil;
import com.jinrui.core.consts.RedisCacheKey;
import com.jinrui.core.model.dto.MarriageCodeDTO;
import com.jinrui.core.model.dto.MarrigeLoginDTO;
import com.jinrui.core.model.dto.MarriageCodeDTO1;
import com.jinrui.core.model.entity.MarriageCode;
import com.jinrui.core.model.entity.MarriageSales;
import com.jinrui.core.model.entity.MarriageActivity;
@ -149,7 +149,7 @@ public class MarriageController {
}
@PostMapping("/receiveCheck2")
public ResultObject receiveCheck2(@RequestBody MarriageCodeDTO dto) {
public ResultObject receiveCheck2(@RequestBody MarriageCodeDTO1 dto) {
if (StringUtils.isBlank(dto.getMarriageNo())) {
return ResultUtil.failedMessage("结婚证字号不能为空!");
} else {
@ -168,15 +168,23 @@ public class MarriageController {
if (StringUtils.isBlank(dto.getReceiveMobile())) {
return ResultUtil.failedMessage("领取人手机号不能为空!");
}
Date now = DateTimeUtil.now();
if (StringUtils.isBlank(dto.getCode())) {
return ResultUtil.failedMessage("核验码不能为空!");
LambdaQueryWrapper<MarriageActivity> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(MarriageActivity::getStatus, 0)
.le(MarriageActivity::getActivityStartTime, now)
.ge(MarriageActivity::getActivityEndTime, now)
.orderByDesc(MarriageActivity::getCreateTime)
.last("limit 1");
MarriageActivity act = iMarriageActivityService.getOne(wrapper);
if (act == null) {
return ResultUtil.failed("活动已结束");
}
LambdaQueryWrapper<MarriageCode> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.and(wrap -> {
wrap.or().eq(MarriageCode::getMarriageNo, dto.getMarriageNo());
wrap.or().eq(MarriageCode::getReceiveMobile, dto.getReceiveMobile());
wrap.or().eq(MarriageCode::getCode, dto.getCode());
});
queryWrapper.orderByDesc(MarriageCode::getCreateTime);
queryWrapper.last("limit 1");
@ -194,21 +202,28 @@ public class MarriageController {
}
}
queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(MarriageCode::getActivityId,act.getId())
.isNull(MarriageCode::getMarriageNo);
queryWrapper.orderByDesc(MarriageCode::getCreateTime);
queryWrapper.last("limit 1");
marriageCode = iMarriageCodeService.getOne(queryWrapper);
marriageCode.setMarriageNo(dto.getMarriageNo());
marriageCode.setMarriageNo(dto.getReceiveMobile());
marriageCode.setReceiveMoney((int)(long)act.getMoney());
marriageCode.setReceiveTime(new Date());
marriageCode.setSalesNo(dto.getSalesNo());
marriageCode.setReceiveName(dto.getReceiveName());
iMarriageCodeService.saveOrUpdate(marriageCode);
String key = RedisCacheKey.VERICODE_MOBILE + "3-" + dto.getReceiveMobile();
String verifyCode = (String) redisCacheManager.getObject(RedisCacheKey.DBINDEX_DEFAULT, key);
if (!StringUtils.equals(dto.getSmsCode(), verifyCode)) {
return ResultUtil.failedMessage("验证码错误,请重新输入!");
}
Date now = DateTimeUtil.now();
marriageCode = MarriageCode.builder()
.marriageNo(dto.getMarriageNo())
.receiveName(dto.getReceiveName())
.code(dto.getCode())
.receiveMobile(dto.getReceiveMobile())
.signImage(dto.getSignImage())
.receiveTime(now)
.salesNo(dto.getSalesNo())
.build();
MarriageCodeVO vo = new MarriageCodeVO();
BeanUtils.copyProperties(marriageCode, vo);
return ResultUtil.success(vo);

View File

@ -42,7 +42,7 @@ public class OcrController {
@Value("${baidu.ocr.authUrl:https://aip.baidubce.com/oauth/2.0/token}")
private String authUrl;
@Value("${baidu.ocr.generalUrl:https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic}")
@Value("${baidu.ocr.generalUrl:https://aip.baidubce.com/rest/2.0/ocr/v1/marriage_certificate}")
private String generalUrl;
@PostMapping("/upload")

View File

@ -8,4 +8,3 @@ public class OcrParseDTO {
private String smsCode;
private String uploadId;
}

View File

@ -78,8 +78,8 @@ token:
# 百度OCR配置请在部署环境中设置实际值不要提交密钥
baidu:
ocr:
appId: ${BAIDU_OCR_APP_ID:}
apiKey: ${BAIDU_OCR_API_KEY:}
secretKey: ${BAIDU_OCR_SECRET_KEY:}
appId: ${BAIDU_OCR_APP_ID:120787041}
apiKey: ${BAIDU_OCR_API_KEY:nQnKdxJZJs6UycitAauLMcUW}
secretKey: ${BAIDU_OCR_SECRET_KEY:HTEVDoN3mN5J8usjAABt9k8euZ5cPJyr}
# 存储上传的结婚证图片目录
storagePath: ${OCR_STORAGE_PATH:data/ocr}