From 442b9380ff801d79f624bc0966d2bcd98a828b36 Mon Sep 17 00:00:00 2001
From: hejianhao <15708179461@qq.com>
Date: 星期三, 19 八月 2026 10:29:09 +0800
Subject: [PATCH] feat0806: 打印微赞日志
---
tcm-training-admin-backend/src/main/java/com/tcm/training/admin/app/register/service/AppRegisterService.java | 35 ++++++++++++++++++++++++++++++++++-
tcm-training-admin-backend/src/main/java/com/tcm/training/admin/agent/service/ProvincialAgentAppService.java | 5 +++--
2 files changed, 37 insertions(+), 3 deletions(-)
diff --git a/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/agent/service/ProvincialAgentAppService.java b/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/agent/service/ProvincialAgentAppService.java
index f479151..53383c7 100644
--- a/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/agent/service/ProvincialAgentAppService.java
+++ b/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/agent/service/ProvincialAgentAppService.java
@@ -108,11 +108,12 @@
try {
JsonNode vzanResponse = vzanHttpUtil.createAgent(
request.getContactInfo(), request.getAgentName(), 2, null, request.getAgentName());
- log.info("微赞创建代理成功,出参={}", JSONUtil.toJsonStr(vzanResponse));
+ log.info("微赞创建代理成功,出参={}", vzanResponse);
} catch (RuntimeException ex) {
log.error("微赞创建代理失败,本地事务将回滚,入参 agentMobile={}, agentName={}, levelCode={}, parentMobile={}, storeName={}",
request.getContactInfo(), request.getAgentName(), 1, null, request.getAgentName(), ex);
- throw ex;
+// throw ex;
+ throw new IllegalStateException("微赞创建代理失败", ex);
}
return detail(agent.getId());
}
diff --git a/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/app/register/service/AppRegisterService.java b/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/app/register/service/AppRegisterService.java
index 8e06c55..62e1752 100644
--- a/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/app/register/service/AppRegisterService.java
+++ b/tcm-training-admin-backend/src/main/java/com/tcm/training/admin/app/register/service/AppRegisterService.java
@@ -1,6 +1,7 @@
package com.tcm.training.admin.app.register.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.tcm.training.admin.app.auth.service.AppAuthSessionService;
import com.tcm.training.admin.app.auth.service.AppSmsCodeService;
@@ -20,12 +21,14 @@
import com.tcm.training.admin.app.register.vo.AppRegisterRegionDatasetVO;
import com.tcm.training.admin.app.register.vo.AppRegisterRegionOptionVO;
import com.tcm.training.admin.common.PhoneMasker;
+import com.tcm.training.admin.utils.VzanHttpUtil;
import com.tcm.training.admin.live.entity.Clinic;
import com.tcm.training.admin.live.mapper.ClinicMapper;
import com.tcm.training.admin.member.entity.AppUser;
import com.tcm.training.admin.member.mapper.UserMapper;
import cn.dev33.satoken.stp.SaTokenInfo;
import org.springframework.data.redis.core.StringRedisTemplate;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -39,6 +42,7 @@
* APP 注册服务,负责普通用户、经营者注册与海诊通资料同步。
*/
@Service
+@Slf4j
public class AppRegisterService {
private static final Pattern PHONE_PATTERN = Pattern.compile("^1\\d{10}$");
@@ -57,6 +61,7 @@
private final StringRedisTemplate stringRedisTemplate;
private final ObjectMapper objectMapper;
private final AppShareService appShareService;
+ private final VzanHttpUtil vzanHttpUtil;
/**
* 注入注册链路所需的本地库、海诊通库、验证码与缓存能力。
@@ -70,7 +75,8 @@
HztClinicMapper hztClinicMapper,
StringRedisTemplate stringRedisTemplate,
ObjectMapper objectMapper,
- AppShareService appShareService) {
+ AppShareService appShareService,
+ VzanHttpUtil vzanHttpUtil) {
this.userMapper = userMapper;
this.clinicMapper = clinicMapper;
this.appSmsCodeService = appSmsCodeService;
@@ -81,6 +87,7 @@
this.stringRedisTemplate = stringRedisTemplate;
this.objectMapper = objectMapper;
this.appShareService = appShareService;
+ this.vzanHttpUtil = vzanHttpUtil;
}
/**
@@ -187,10 +194,36 @@
user.setClinicId(clinic.getId());
userMapper.insert(user);
+ Integer provinceCode = parseRegionCode(clinic.getProvinceCode(), "省编码");
+ Integer cityCode = parseRegionCode(clinic.getCityCode(), "市编码");
+ Integer areaCode = parseRegionCode(clinic.getDistrictCode(), "区县编码");
+ log.info("调用微赞创建门店,入参 title={}, provinceCode={}, cityCode={}, areaCode={}, address={}, telephone={}",
+ clinic.getName(), provinceCode, cityCode, areaCode, clinic.getAddress(), clinic.getContactPhone());
+ try {
+ JsonNode vzanResponse = vzanHttpUtil.createStore(clinic.getName(), provinceCode, cityCode, areaCode, clinic.getAddress(), clinic.getContactPhone());
+ log.info("微赞创建门店成功,出参={}", vzanResponse);
+ } catch (RuntimeException ex) {
+ log.error("微赞创建门店失败,本地事务将回滚,入参 title={}, provinceCode={}, cityCode={}, areaCode={}, address={}, telephone={}",
+ clinic.getName(), provinceCode, cityCode, areaCode, clinic.getAddress(), clinic.getContactPhone(), ex);
+ throw new IllegalStateException("微赞创建门店失败", ex);
+ }
+
clearDraft(request.getRegisterTicket());
return createLoginResponse(user);
}
+ private Integer parseRegionCode(String code, String label) {
+ String normalized = code == null ? null : code.trim();
+ if (normalized == null || normalized.isEmpty()) {
+ throw new IllegalArgumentException(label + "不能为空");
+ }
+ try {
+ return Integer.valueOf(normalized);
+ } catch (NumberFormatException ex) {
+ throw new IllegalArgumentException(label + "格式错误", ex);
+ }
+ }
+
/**
* 使用海诊通用户快照填充本地用户资料。
*/
--
Gitblit v1.7.1