Commit c7a63eb8 authored by cy's avatar cy

保证充值卡编号不重复

parent e7dbd6eb
......@@ -40,4 +40,12 @@ public interface CardMapper extends BaseMapper<CardInfo> {
* @return 子卡集合
*/
List<CardInfo> getList(@Param("batchNumber")String batchNumber);
/**
* 通过充值卡初始号模糊查询获取所有字卡
* @param cardNo 充值卡初始号
* @return 子卡集合
*/
List<CardInfo> getListByCardNo(@Param("cardNo")String cardNo);
}
......@@ -105,4 +105,15 @@
</where>
</select>
<select id="getListByCardNo" resultMap="cardMap">
select
<include refid="cols_all"/>
from
<include refid="table"/>
<where>
card_Number like #{cardNo}
and is_delete=0
</where>
</select>
</mapper>
......@@ -10,6 +10,7 @@ import cn.wisenergy.model.dto.RefillCardDto;
import cn.wisenergy.service.app.RefillCardService;
import cn.wisenergy.service.common.RefillCardManager;
import com.alibaba.excel.EasyExcel;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
......@@ -20,6 +21,7 @@ import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import javax.servlet.http.HttpServletResponse;
import java.math.BigInteger;
import java.util.*;
import java.util.stream.Collectors;
......@@ -115,8 +117,17 @@ public class RefillCardServiceImpl implements RefillCardService {
if (null==byId) {
return R.error("该充值卡不存在");
}
String cardNo=byId.getCardNo()+"%";
List<CardInfo> card = cardMapper.getListByCardNo(cardNo);
BigInteger cardNumber;
if(card.size()>0){
CardInfo maxCard=card.stream().max(Comparator.comparing(CardInfo::getCardNumber)).get();
cardNumber=new BigInteger(maxCard.getCardNumber());
}else{
cardNumber=new BigInteger(byId.getCardNo()+"0000");
}
return refillCardManager.addCardMannger(byId);
return refillCardManager.addCardMannger(byId,cardNumber);
}
@Override
......
......@@ -7,13 +7,17 @@ import cn.wisenergy.mapper.CardMapper;
import cn.wisenergy.mapper.RefillCardMapper;
import cn.wisenergy.model.app.CardInfo;
import cn.wisenergy.model.app.RefillCard;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigInteger;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
/**
* @author 86187
......@@ -29,10 +33,9 @@ public class RefillCardManager {
private CardMapper cardMapper;
@Transactional(rollbackFor = Exception.class)
public R<Boolean> addCardMannger(RefillCard byId){
public R<Boolean> addCardMannger(RefillCard byId, BigInteger cardNumber){
//获取充值卡的卡数,并生成卡片
ArrayList<CardInfo> cardInfos = new ArrayList<>();
BigInteger cardNumber=byId.getCardNo();
BigInteger num = new BigInteger("1");
//子卡添加
for (int i = 0; i < byId.getCardNumber(); i++) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment