feat:通过门店Code 查询存量客户开通基本信息
This commit is contained in:
@@ -157,4 +157,19 @@ public interface WalletService {
|
||||
* @return
|
||||
*/
|
||||
PageInfo<TradeRecordDTO> getTradeRecordList(CoolTradeRecodePageRequest request);
|
||||
|
||||
|
||||
/**
|
||||
* 通过门店Code 查询存量客户开通基本信息
|
||||
* @param storeCode
|
||||
* @return
|
||||
*/
|
||||
OpenBasicInfoDTO getOpenBasicInfo(String storeCode);
|
||||
|
||||
/**
|
||||
* 开通网商银行
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
Boolean openOnlineBankAccount(CoolOpenBasicInfoRequest request);
|
||||
}
|
||||
|
||||
@@ -5,9 +5,15 @@ import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.constants.CommonConstants;
|
||||
import com.cool.store.constants.RedisConstant;
|
||||
import com.cool.store.dao.*;
|
||||
import com.cool.store.dao.store.StoreMasterSignerInfoDAO;
|
||||
import com.cool.store.dao.wallet.OpenBankInfoDAO;
|
||||
import com.cool.store.dao.wallet.TempOpenWalletInfoDAO;
|
||||
import com.cool.store.dao.wallet.WalletPaymentOrderDAO;
|
||||
import com.cool.store.dto.wallet.*;
|
||||
import com.cool.store.entity.*;
|
||||
import com.cool.store.entity.store.StoreMasterSignerInfoDO;
|
||||
import com.cool.store.entity.wallet.OpenBankInfoDO;
|
||||
import com.cool.store.entity.wallet.TempOpenWalletInfoDO;
|
||||
import com.cool.store.entity.wallet.WalletPaymentOrderDO;
|
||||
import com.cool.store.enums.ErrorCodeEnum;
|
||||
import com.cool.store.enums.point.ShopSubStageEnum;
|
||||
@@ -31,16 +37,14 @@ import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.sql.Date;
|
||||
import java.text.MessageFormat;
|
||||
import java.time.Duration;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -63,6 +67,10 @@ public class WalletServiceImpl implements WalletService {
|
||||
private final LineInfoDAO lineInfoDAO;
|
||||
private final RedisUtilPool redisUtilPool;
|
||||
private final QualificationsInfoDAO qualificationsInfoDAO;
|
||||
private final StoreDao storeDao;
|
||||
private final StoreMasterSignerInfoDAO storeMasterSignerInfoDAO;
|
||||
private final TempOpenWalletInfoDAO tempOpenWalletInfoDAO;
|
||||
private final OpenBankInfoDAO openBankInfoDAO;
|
||||
|
||||
private final static DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
||||
|
||||
@@ -407,6 +415,93 @@ public class WalletServiceImpl implements WalletService {
|
||||
return toPageInfo(tradeRecordListDTO.getPageData(), TradeRecordDTO.class, tradeRecordListDTO.getPage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public OpenBasicInfoDTO getOpenBasicInfo(String storeCode) {
|
||||
OpenBasicInfoDTO openBasicInfoDTO = new OpenBasicInfoDTO();
|
||||
//非首次提交 获取上次提交的信息 其他情况走主数据与营账通开通数据
|
||||
OpenBankInfoDO openBankInfo = openBankInfoDAO.getOpenBankInfo(storeCode);
|
||||
if (Objects.nonNull(openBankInfo)){
|
||||
openBasicInfoDTO.setSignerName(openBankInfo.getSignerName());
|
||||
openBasicInfoDTO.setSignerIdCard(openBankInfo.getSignerIdCard());
|
||||
openBasicInfoDTO.setSignerPhone(openBankInfo.getSignerPhone());
|
||||
openBasicInfoDTO.setSignerIdCardFront(openBankInfo.getSignerIdCardFront());
|
||||
openBasicInfoDTO.setSignerIdCardBack(openBankInfo.getSignerIdCardBack());
|
||||
openBasicInfoDTO.setBusinessLicenseName(openBankInfo.getBusinessLicenseName());
|
||||
openBasicInfoDTO.setBusinessLicenseCode(openBankInfo.getBusinessLicenseCode());
|
||||
openBasicInfoDTO.setSettlementCard(openBankInfo.getSettlementCard());
|
||||
openBasicInfoDTO.setBankBranchName(openBankInfo.getBankBranchName());
|
||||
openBasicInfoDTO.setBankBranchCode(openBankInfo.getBankBranchCode());
|
||||
openBasicInfoDTO.setBankReservedPhone(openBankInfo.getBankReservedPhone());
|
||||
return openBasicInfoDTO;
|
||||
}
|
||||
//先查询当前门店
|
||||
StoreDO store = storeDao.getByStoreNum(storeCode);
|
||||
if (Objects.isNull( store)){
|
||||
return null;
|
||||
}
|
||||
Map<String, StoreMasterSignerInfoDO> signerMapByStoreIds = storeMasterSignerInfoDAO.getSignerMapByStoreIds(Collections.singletonList(store.getStoreId()));
|
||||
StoreMasterSignerInfoDO signerInfoDO = signerMapByStoreIds.get(store.getStoreId());
|
||||
|
||||
if (Objects.nonNull(signerInfoDO)){
|
||||
openBasicInfoDTO.setSignerName(signerInfoDO.getSigner1Name());
|
||||
openBasicInfoDTO.setSignerIdCard(signerInfoDO.getSigner1IdCardNo());
|
||||
openBasicInfoDTO.setSignerPhone(signerInfoDO.getSigner1Mobile());
|
||||
openBasicInfoDTO.setSignerIdCardFront(signerInfoDO.getSigner1IdCardFront());
|
||||
openBasicInfoDTO.setSignerIdCardBack(signerInfoDO.getSigner1IdCardBack());
|
||||
}
|
||||
TempOpenWalletInfoDO tempOpenWalletInfoByStoreCode = tempOpenWalletInfoDAO.getTempOpenWalletInfoByStoreCode(storeCode);
|
||||
if (Objects.nonNull(tempOpenWalletInfoByStoreCode)){
|
||||
openBasicInfoDTO.setBusinessLicenseName(tempOpenWalletInfoByStoreCode.getBusinessRegName());
|
||||
openBasicInfoDTO.setBusinessLicenseCode(tempOpenWalletInfoByStoreCode.getBusinessLicenseNo());
|
||||
openBasicInfoDTO.setSettlementCard(tempOpenWalletInfoByStoreCode.getSettlementCardNo());
|
||||
openBasicInfoDTO.setBankBranchName(tempOpenWalletInfoByStoreCode.getBankBranchName());
|
||||
openBasicInfoDTO.setBankBranchCode(tempOpenWalletInfoByStoreCode.getBankBranchNo());
|
||||
openBasicInfoDTO.setBankReservedPhone(tempOpenWalletInfoByStoreCode.getBankReservedPhone());
|
||||
}
|
||||
return openBasicInfoDTO;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public Boolean openOnlineBankAccount(CoolOpenBasicInfoRequest request) {
|
||||
//首先存储提交的信息
|
||||
OpenBankInfoDO openBankInfoDO = new OpenBankInfoDO();
|
||||
BeanUtil.copyProperties(request, openBankInfoDO);
|
||||
//查询是否有提交过
|
||||
OpenBankInfoDO openBankInfo = openBankInfoDAO.getOpenBankInfo(request.getStoreCode());
|
||||
if (Objects.isNull(openBankInfo)){
|
||||
openBankInfoDAO.insertSelective(openBankInfoDO);
|
||||
}else {
|
||||
openBankInfoDAO.updateByStoreCode(openBankInfoDO);
|
||||
}
|
||||
OldStoreAccountCreateRequest oldStoreAccountCreateRequest = new OldStoreAccountCreateRequest();
|
||||
StoreDO store = storeDao.getByStoreNum(request.getStoreCode());
|
||||
oldStoreAccountCreateRequest.setOutStoreId(store.getStoreId());
|
||||
oldStoreAccountCreateRequest.setPhoneNumber(request.getSignerPhone());
|
||||
oldStoreAccountCreateRequest.setAccountType(2);
|
||||
oldStoreAccountCreateRequest.setLicenseNo(request.getBusinessLicenseCode());
|
||||
oldStoreAccountCreateRequest.setLicenseName(request.getBusinessLicenseName());
|
||||
oldStoreAccountCreateRequest.setLegalName(request.getLegalName());
|
||||
oldStoreAccountCreateRequest.setLegalNo(request.getLegalIdCard());
|
||||
oldStoreAccountCreateRequest.setLegalPhone(request.getLegalPhone());
|
||||
//账户简称使用营业执照名称
|
||||
oldStoreAccountCreateRequest.setAccountAliasName(request.getBusinessLicenseName());
|
||||
oldStoreAccountCreateRequest.setAccountCardNo(request.getSettlementCard());
|
||||
oldStoreAccountCreateRequest.setAccountPhone(request.getBankReservedPhone());
|
||||
oldStoreAccountCreateRequest.setBankNo(request.getBankBranchCode());
|
||||
oldStoreAccountCreateRequest.setBankName(request.getBankBranchName());
|
||||
oldStoreAccountCreateRequest.setCertPhotoA(request.getLegalIdCardFront());
|
||||
oldStoreAccountCreateRequest.setCertPhotoB(request.getLegalIdCardBack());
|
||||
oldStoreAccountCreateRequest.setLicensePhoto(request.getBusinessLicensePhoto());
|
||||
oldStoreAccountCreateRequest.setSignatoryName(request.getSignerName());
|
||||
oldStoreAccountCreateRequest.setSignatoryPhone(request.getSignerPhone());
|
||||
oldStoreAccountCreateRequest.setSignatoryNo(request.getSignerIdCard());
|
||||
oldStoreAccountCreateRequest.setSignatoryPhotoA(request.getSignerIdCardFront());
|
||||
oldStoreAccountCreateRequest.setSignatoryPhotoB(request.getSignerIdCardBack());
|
||||
walletApiService.oldStoreOpenAccount(oldStoreAccountCreateRequest);
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
public String getStoreId(StoreShopRequest request) {
|
||||
String storeId = request.getStoreId();
|
||||
if (StringUtils.isBlank(storeId) && Objects.nonNull(request.getShopId())) {
|
||||
|
||||
Reference in New Issue
Block a user