This commit is contained in:
2024-02-23 10:32:23 +08:00
parent e920512509
commit 5c40cf5edd
5 changed files with 40 additions and 6 deletions

View File

@@ -93,4 +93,6 @@ public class CreateOrUpdateBillingTemplateDTO {
private String maxOccupyFee; private String maxOccupyFee;
// 集团编号
private String groupCode;
} }

View File

@@ -79,6 +79,8 @@ public interface MemberGroupService {
MemberGroupVO queryByMerchantId(String merchantId); MemberGroupVO queryByMerchantId(String merchantId);
MemberGroupVO queryByGroupCode(String groupCode);
/** /**
* 通过站点id查询当前站点是否配置集团 * 通过站点id查询当前站点是否配置集团
* @param stationId 站点信息 * @param stationId 站点信息

View File

@@ -20,6 +20,7 @@ import com.jsowell.pile.vo.web.MemberDiscountVO;
import com.jsowell.pile.vo.web.MemberGroupVO; import com.jsowell.pile.vo.web.MemberGroupVO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -298,6 +299,17 @@ public class MemberGroupServiceImpl implements MemberGroupService {
return memberGroupMapper.queryByMerchantId(merchantId); return memberGroupMapper.queryByMerchantId(merchantId);
} }
@Override
public MemberGroupVO queryByGroupCode(String groupCode) {
MemberGroupVO result = null;
MemberGroup memberGroup = memberGroupMapper.selectByGroupCode(groupCode);
if (memberGroup != null) {
result = new MemberGroupVO();
BeanUtils.copyProperties(memberGroup, result);
}
return result;
}
/** /**
* 根据站点id查询会员组 * 根据站点id查询会员组
* @param stationId 站点id * @param stationId 站点id

View File

@@ -10,16 +10,15 @@ import com.jsowell.common.core.domain.vo.AuthorizedDeptVO;
import com.jsowell.common.core.redis.RedisCache; import com.jsowell.common.core.redis.RedisCache;
import com.jsowell.common.enums.DelFlagEnum; import com.jsowell.common.enums.DelFlagEnum;
import com.jsowell.common.enums.ykc.BillingTimeTypeEnum; import com.jsowell.common.enums.ykc.BillingTimeTypeEnum;
import com.jsowell.common.exception.BusinessException;
import com.jsowell.common.util.*; import com.jsowell.common.util.*;
import com.jsowell.common.util.id.Seq; import com.jsowell.common.util.id.Seq;
import com.jsowell.pile.domain.PileBillingDetail; import com.jsowell.pile.domain.*;
import com.jsowell.pile.domain.PileBillingRelation;
import com.jsowell.pile.domain.PileBillingTemplate;
import com.jsowell.pile.domain.PileStationInfo;
import com.jsowell.pile.dto.BillingTimeDTO; import com.jsowell.pile.dto.BillingTimeDTO;
import com.jsowell.pile.dto.CreateOrUpdateBillingTemplateDTO; import com.jsowell.pile.dto.CreateOrUpdateBillingTemplateDTO;
import com.jsowell.pile.dto.ImportBillingTemplateDTO; import com.jsowell.pile.dto.ImportBillingTemplateDTO;
import com.jsowell.pile.mapper.PileBillingTemplateMapper; import com.jsowell.pile.mapper.PileBillingTemplateMapper;
import com.jsowell.pile.service.MemberGroupService;
import com.jsowell.pile.service.PileBillingTemplateService; import com.jsowell.pile.service.PileBillingTemplateService;
import com.jsowell.pile.service.PileStationInfoService; import com.jsowell.pile.service.PileStationInfoService;
import com.jsowell.pile.transaction.dto.BillingTemplateTransactionDTO; import com.jsowell.pile.transaction.dto.BillingTemplateTransactionDTO;
@@ -30,6 +29,7 @@ import com.jsowell.pile.vo.uniapp.CurrentTimePriceDetails;
import com.jsowell.pile.vo.web.BillingDetailVO; import com.jsowell.pile.vo.web.BillingDetailVO;
import com.jsowell.pile.vo.web.BillingTemplateVO; import com.jsowell.pile.vo.web.BillingTemplateVO;
import com.jsowell.pile.vo.web.EchoBillingTemplateVO; import com.jsowell.pile.vo.web.EchoBillingTemplateVO;
import com.jsowell.pile.vo.web.MemberGroupVO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
@@ -66,6 +66,9 @@ public class PileBillingTemplateServiceImpl implements PileBillingTemplateServic
@Autowired @Autowired
private RedisCache redisCache; private RedisCache redisCache;
@Autowired
private MemberGroupService memberGroupService;
/** /**
* 查询计费模板 * 查询计费模板
* *
@@ -462,6 +465,22 @@ public class PileBillingTemplateServiceImpl implements PileBillingTemplateServic
if (dto == null) { if (dto == null) {
return 0; return 0;
} }
// 站点id保存到数据库
String groupCode = dto.getGroupCode();
MemberGroupVO memberGroupVO = memberGroupService.queryByGroupCode(groupCode);
if (Objects.nonNull(memberGroupVO)) {
// 查询该站点是否已经创建过会员优惠计费模板了
List<String> stationIdList = Lists.newArrayList(StringUtils.split(memberGroupVO.getStationId(), ","));
if (CollectionUtils.isNotEmpty(stationIdList) && stationIdList.contains(dto.getStationId())) {
throw new BusinessException("", "该站点已经创建过会员优惠计费模板");
}
MemberGroup updateData = new MemberGroup();
updateData.setId(memberGroupVO.getId());
updateData.setStationId(memberGroupVO.getStationId() + "," + dto.getStationId());
memberGroupService.updateMemberGroup(updateData);
}
Long stationId = Long.parseLong(dto.getStationId()); Long stationId = Long.parseLong(dto.getStationId());
PileBillingTemplate stationBillingTemplate = new PileBillingTemplate(); PileBillingTemplate stationBillingTemplate = new PileBillingTemplate();
stationBillingTemplate.setStationId(stationId); stationBillingTemplate.setStationId(stationId);
@@ -485,7 +504,6 @@ public class PileBillingTemplateServiceImpl implements PileBillingTemplateServic
List<PileBillingDetail> stationBillingDetailList = generateBillingDetailList(templateCode, dto); List<PileBillingDetail> stationBillingDetailList = generateBillingDetailList(templateCode, dto);
// 生成备注 // 生成备注
// stationBillingTemplate.setRemark(generateTemplateDesc(stationBillingDetailList));
stationBillingTemplate.setTemplateDesc(generateTemplateDesc(stationBillingDetailList)); stationBillingTemplate.setTemplateDesc(generateTemplateDesc(stationBillingDetailList));
// 入库 // 入库

View File

@@ -8,7 +8,7 @@ import java.math.BigDecimal;
@Getter @Getter
@Setter @Setter
public class MemberGroupVO { public class MemberGroupVO {
private String id; private Long id;
/** /**
* 会员组编号 * 会员组编号