diff --git a/src/main/java/com/yn/bftl/thirdparty/modules/chinaums/service/impl/AuthServiceImpl.java b/src/main/java/com/yn/bftl/thirdparty/modules/chinaums/service/impl/AuthServiceImpl.java index c84c723..0044582 100644 --- a/src/main/java/com/yn/bftl/thirdparty/modules/chinaums/service/impl/AuthServiceImpl.java +++ b/src/main/java/com/yn/bftl/thirdparty/modules/chinaums/service/impl/AuthServiceImpl.java @@ -94,6 +94,7 @@ public ByxMchCreateVO getMchCreateUrl() { Company company = getUser().getCompany(); String registerNo = company.getRegisterNo(); + company = companyRepository.findById(company.getId()).orElse(null); ChinaumsAuthInfo chinaumsAuthInfo = chinaumsAuthInfoRepository.findFirstByCompanyId(company.getId()); if (chinaumsAuthInfo != null && ApplicationStatus.REGISTER_SUCCESS.equals(chinaumsAuthInfo.getApplicationStatus())) { throw new YnceErrorException(YnceError.YNCE_218002); @@ -110,7 +111,7 @@ params.put("callbackUrl", thirdPartyPaySet.getThirdPartyUrl() + "/templates/goback.html"); params.put("notifyUrl", thirdPartyPaySet.getThirdPartyUrl() + "/chinaums/call_back/byx/result"); ByxMchCreateVO byxMchCreateVO = byxChinaumsUtil.execute(ByxRouteUtil.ROUTE_GET_MERCHANT_OPEN_URL, params, ByxMchCreateVO.class, true); - company.setRegisterNo(byxMchCreateVO.getRegisterNo()); + company.setRegisterNo(registerNo); companyRepository.saveAndFlush(company); synchronized (this) { @@ -275,6 +276,7 @@ // } @Override + @Transactional(rollbackFor = Exception.class) public ChinaumsApplicationStatusVO status() { Company company = getUser().getCompany(); ChinaumsAuthInfo chinaumsAuthInfo = chinaumsAuthInfoRepository.findFirstByCompanyId(company.getId());