update 分润配置页面

This commit is contained in:
Guoqs
2025-01-02 14:54:57 +08:00
parent a93e987fd4
commit 236afdda33
8 changed files with 165 additions and 53 deletions

View File

@@ -4,9 +4,9 @@ import com.jsowell.common.core.controller.BaseController;
import com.jsowell.common.core.domain.AjaxResult;
import com.jsowell.common.core.page.TableDataInfo;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.pile.domain.StationSplitConfig;
import com.jsowell.pile.dto.SplitConfigDTO;
import com.jsowell.pile.service.StationSplitConfigService;
import com.jsowell.pile.vo.web.SplitConfigVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -28,7 +28,7 @@ public class StationSplitConfigController extends BaseController {
@GetMapping("/list/{stationId}")
public TableDataInfo list(@PathVariable("stationId") String stationId) {
// 权限过滤
List<StationSplitConfig> list = stationSplitConfigService.queryByStationId(stationId);
List<SplitConfigVO> list = stationSplitConfigService.querySplitConfigByStationId(stationId);
return getDataTable(list);
}

View File

@@ -59,6 +59,8 @@ public interface AdapayMemberAccountService {
*/
int deleteAdapayMemberAccountByIds(List<String> ids);
String selectAdapayMemberIdByMerchantId(String merchantId);
/**
* 根据运营商id查询汇付会员信息
* @param merchantId 运营商id
@@ -92,4 +94,5 @@ public interface AdapayMemberAccountService {
*/
int deleteAuditFailed(String merchantId);
String selectMerchantNameByAdapayMemberId(String adapayMemberId);
}

View File

@@ -3,6 +3,7 @@ package com.jsowell.pile.service;
import com.jsowell.pile.domain.StationSplitConfig;
import com.jsowell.pile.dto.SplitConfigDTO;
import com.jsowell.pile.vo.web.ShareMemberVO;
import com.jsowell.pile.vo.web.SplitConfigVO;
import java.util.List;
@@ -14,6 +15,8 @@ public interface StationSplitConfigService{
// 根据站点id查询站点分账配置信息
List<StationSplitConfig> queryByStationId(String stationId);
List<SplitConfigVO> querySplitConfigByStationId(String stationId);
/**
* 根据站点id查询站点分成用户信息
* 如果没有配置分账用户,并且站点对应的运营商设置了结算账户, 返回本站对应的结算账户, 电费和服务费分成比例都为100%

View File

@@ -8,9 +8,11 @@ import com.jsowell.common.enums.DelFlagEnum;
import com.jsowell.common.util.DateUtils;
import com.jsowell.common.util.StringUtils;
import com.jsowell.pile.domain.AdapayMemberAccount;
import com.jsowell.pile.domain.PileMerchantInfo;
import com.jsowell.pile.domain.PileStationInfo;
import com.jsowell.pile.mapper.AdapayMemberAccountMapper;
import com.jsowell.pile.service.AdapayMemberAccountService;
import com.jsowell.pile.service.PileMerchantInfoService;
import com.jsowell.pile.service.PileStationInfoService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
@@ -35,9 +37,57 @@ public class AdapayMemberAccountServiceImpl implements AdapayMemberAccountServic
@Autowired
private RedisCache redisCache;
@Autowired
private PileMerchantInfoService pileMerchantInfoService;
@Autowired
private PileStationInfoService pileStationInfoService;
@Override
public int insert(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insert(record);
}
@Override
public int insertOrUpdate(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insertOrUpdate(record);
}
@Override
public int insertOrUpdateSelective(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insertOrUpdateSelective(record);
}
@Override
public int insertSelective(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insertSelective(record);
}
@Override
public AdapayMemberAccount selectByPrimaryKey(Integer id) {
return adapayMemberAccountMapper.selectByPrimaryKey(id);
}
@Override
public int updateByPrimaryKeySelective(AdapayMemberAccount record) {
return adapayMemberAccountMapper.updateByPrimaryKeySelective(record);
}
@Override
public int updateByPrimaryKey(AdapayMemberAccount record) {
return adapayMemberAccountMapper.updateByPrimaryKey(record);
}
@Override
public int updateBatch(List<AdapayMemberAccount> list) {
return adapayMemberAccountMapper.updateBatch(list);
}
@Override
public int batchInsert(List<AdapayMemberAccount> list) {
return adapayMemberAccountMapper.batchInsert(list);
}
/**
* 查询【请填写功能名称】列表
*
@@ -82,7 +132,7 @@ public class AdapayMemberAccountServiceImpl implements AdapayMemberAccountServic
adapayMemberAccount.setUpdateTime(DateUtils.getNowDate());
int i = adapayMemberAccountMapper.updateByPrimaryKeySelective(adapayMemberAccount);
if (StringUtils.isNotBlank(adapayMemberAccount.getMerchantId())) {
String redisKey = CacheConstants.ADAPAY_MEMBER_ACCOUNT + adapayMemberAccount.getMerchantId();
String redisKey = CacheConstants.ADAPAY_MEMBER_ACCOUNT + adapayMemberAccount.getMerchantId(); // 清缓存
redisCache.deleteObject(redisKey);
}
return i;
@@ -102,6 +152,20 @@ public class AdapayMemberAccountServiceImpl implements AdapayMemberAccountServic
return adapayMemberAccountMapper.deleteAdapayMemberAccountByIds(ids);
}
/**
* 根据运营商id查询汇付会员id
* @param merchantId
* @return
*/
@Override
public String selectAdapayMemberIdByMerchantId(String merchantId) {
AdapayMemberAccount adapayMemberAccount = selectByMerchantId(merchantId);
if (adapayMemberAccount == null) {
return null;
}
return adapayMemberAccount.getAdapayMemberId();
}
@Override
public AdapayMemberAccount selectByMerchantId(String merchantId) {
if (StringUtils.isBlank(merchantId)) {
@@ -112,7 +176,7 @@ public class AdapayMemberAccountServiceImpl implements AdapayMemberAccountServic
if (adapayMemberAccount == null) {
adapayMemberAccount = adapayMemberAccountMapper.selectByMerchantId(merchantId);
if (adapayMemberAccount != null) {
redisCache.setCacheObject(redisKey, adapayMemberAccount, CacheConstants.cache_expire_time_10m);
redisCache.setCacheObject(redisKey, adapayMemberAccount, CacheConstants.cache_expire_time_12h);
}
}
return adapayMemberAccount;
@@ -169,57 +233,27 @@ public class AdapayMemberAccountServiceImpl implements AdapayMemberAccountServic
.map(x -> x.getId() + "")
.collect(Collectors.toList());
result = this.deleteAdapayMemberAccountByIds(ids);
// 清缓存
String redisKey = CacheConstants.ADAPAY_MEMBER_ACCOUNT + merchantId;
String redisKey = CacheConstants.ADAPAY_MEMBER_ACCOUNT + merchantId; // 清缓存
redisCache.deleteObject(redisKey);
}
return result;
}
/**
* 根据汇付会员id 查询运营商名称
*/
@Override
public int insert(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insert(record);
public String selectMerchantNameByAdapayMemberId(String adapayMemberId) {
AdapayMemberAccount adapayMemberAccount = selectByAdapayMemberId(adapayMemberId);
if (adapayMemberAccount == null) {
return "";
}
PileMerchantInfo pileMerchantInfo = pileMerchantInfoService.selectPileMerchantInfoById(adapayMemberAccount.getMerchantId());
if (pileMerchantInfo == null) {
return "";
}
return pileMerchantInfo.getMerchantName();
}
@Override
public int insertOrUpdate(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insertOrUpdate(record);
}
@Override
public int insertOrUpdateSelective(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insertOrUpdateSelective(record);
}
@Override
public int insertSelective(AdapayMemberAccount record) {
return adapayMemberAccountMapper.insertSelective(record);
}
@Override
public AdapayMemberAccount selectByPrimaryKey(Integer id) {
return adapayMemberAccountMapper.selectByPrimaryKey(id);
}
@Override
public int updateByPrimaryKeySelective(AdapayMemberAccount record) {
return adapayMemberAccountMapper.updateByPrimaryKeySelective(record);
}
@Override
public int updateByPrimaryKey(AdapayMemberAccount record) {
return adapayMemberAccountMapper.updateByPrimaryKey(record);
}
@Override
public int updateBatch(List<AdapayMemberAccount> list) {
return adapayMemberAccountMapper.updateBatch(list);
}
@Override
public int batchInsert(List<AdapayMemberAccount> list) {
return adapayMemberAccountMapper.batchInsert(list);
}
}

View File

@@ -15,6 +15,7 @@ import com.jsowell.pile.mapper.StationSplitConfigMapper;
import com.jsowell.pile.service.AdapayMemberAccountService;
import com.jsowell.pile.service.StationSplitConfigService;
import com.jsowell.pile.vo.web.ShareMemberVO;
import com.jsowell.pile.vo.web.SplitConfigVO;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -38,6 +39,23 @@ public class StationSplitConfigServiceImpl implements StationSplitConfigService{
return stationSplitConfigMapper.queryByStationId(stationId);
}
@Override
public List<SplitConfigVO> querySplitConfigByStationId(String stationId) {
List<StationSplitConfig> stationSplitConfigs = stationSplitConfigMapper.queryByStationId(stationId);
List<SplitConfigVO> resultList = Lists.newArrayList();
for (StationSplitConfig stationSplitConfig : stationSplitConfigs) {
SplitConfigVO vo = new SplitConfigVO();
String adapayMemberId = stationSplitConfig.getAdapayMemberId();
vo.setAdapayMemberId(adapayMemberId);
vo.setSplitName(adapayMemberAccountService.selectMerchantNameByAdapayMemberId(adapayMemberId));
vo.setElectricitySplitRatio(stationSplitConfig.getElectricitySplitRatio());
vo.setServiceSplitRatio(stationSplitConfig.getServiceSplitRatio());
vo.setFeeFlag(stationSplitConfig.getFeeFlag());
resultList.add(vo);
}
return resultList;
}
@Override
public List<ShareMemberVO> queryShareMembersByStationId(String stationId) {
List<ShareMemberVO> resultList = Lists.newArrayList();

View File

@@ -10,7 +10,7 @@ import com.jsowell.common.core.domain.vo.AuthorizedDeptVO;
import com.jsowell.common.util.SecurityUtils;
import com.jsowell.pile.domain.PileMerchantInfo;
import com.jsowell.pile.domain.PileStationInfo;
import com.jsowell.pile.service.MemberBasicInfoService;
import com.jsowell.pile.service.AdapayMemberAccountService;
import com.jsowell.pile.service.PileMerchantInfoService;
import com.jsowell.pile.service.PileStationInfoService;
import com.jsowell.pile.vo.base.LoginUserDetailVO;
@@ -33,17 +33,18 @@ import java.util.stream.Collectors;
public class UserUtils {
// 2.注入想引用的对象的静态实例
private static PileMerchantInfoService pileMerchantInfoService;
private static PileStationInfoService pileStationInfoService;
private static AdapayMemberAccountService adapayMemberAccountService;
// 3.初始化有参构造器
@Autowired
public UserUtils(MemberBasicInfoService memberBasicInfoService, PileMerchantInfoService pileMerchantInfoService,
PileStationInfoService pileStationInfoService) {
public UserUtils(PileMerchantInfoService pileMerchantInfoService,
PileStationInfoService pileStationInfoService,
AdapayMemberAccountService adapayMemberAccountService) {
UserUtils.pileMerchantInfoService = pileMerchantInfoService;
UserUtils.pileStationInfoService = pileStationInfoService;
UserUtils.adapayMemberAccountService = adapayMemberAccountService;
}
// 4.使用
@@ -171,6 +172,12 @@ public class UserUtils {
}
}
}
// 设置汇付会员id
for (MerchantInfoVO merchantInfoVO : merchantInfoVOList) {
merchantInfoVO.setAdapayMemberId(adapayMemberAccountService.selectAdapayMemberIdByMerchantId(merchantInfoVO.getMerchantId()));
}
resultVO.setMerchantInfoVOList(merchantInfoVOList);
resultVO.setFirstMerchantIdList(firstMerchantIdList);
return resultVO;

View File

@@ -45,4 +45,9 @@ public class MerchantInfoVO {
*/
private String merchantAddress;
/**
* adapay会员id
*/
private String adapayMemberId;
}

View File

@@ -0,0 +1,42 @@
package com.jsowell.pile.vo.web;
import lombok.Data;
import java.math.BigDecimal;
/**
* 分账配置信息
*/
@Data
public class SplitConfigVO {
/**
* 主键
*/
private Integer id;
/**
* 分润人名称(参与分成的运营商名称)
*/
private String splitName;
/**
* 汇付会员id(参与分成的汇付id, 自己的或者别人的)
*/
private String adapayMemberId;
/**
* 电费分成比例
*/
private BigDecimal electricitySplitRatio;
/**
* 服务费分成比例
*/
private BigDecimal serviceSplitRatio;
/**
* 是否手续费承担方N-否Y-是,手续费承担方有且只能有一个
*/
private String feeFlag;
}