Commit c7a63eb8 authored by cy's avatar cy

保证充值卡编号不重复

parent e7dbd6eb
...@@ -40,4 +40,12 @@ public interface CardMapper extends BaseMapper<CardInfo> { ...@@ -40,4 +40,12 @@ public interface CardMapper extends BaseMapper<CardInfo> {
* @return 子卡集合 * @return 子卡集合
*/ */
List<CardInfo> getList(@Param("batchNumber")String batchNumber); List<CardInfo> getList(@Param("batchNumber")String batchNumber);
/**
* 通过充值卡初始号模糊查询获取所有字卡
* @param cardNo 充值卡初始号
* @return 子卡集合
*/
List<CardInfo> getListByCardNo(@Param("cardNo")String cardNo);
} }
...@@ -105,4 +105,15 @@ ...@@ -105,4 +105,15 @@
</where> </where>
</select> </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> </mapper>
...@@ -10,6 +10,7 @@ import cn.wisenergy.model.dto.RefillCardDto; ...@@ -10,6 +10,7 @@ import cn.wisenergy.model.dto.RefillCardDto;
import cn.wisenergy.service.app.RefillCardService; import cn.wisenergy.service.app.RefillCardService;
import cn.wisenergy.service.common.RefillCardManager; import cn.wisenergy.service.common.RefillCardManager;
import com.alibaba.excel.EasyExcel; import com.alibaba.excel.EasyExcel;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
...@@ -20,6 +21,7 @@ import org.springframework.util.CollectionUtils; ...@@ -20,6 +21,7 @@ import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.math.BigInteger;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -115,8 +117,17 @@ public class RefillCardServiceImpl implements RefillCardService { ...@@ -115,8 +117,17 @@ public class RefillCardServiceImpl implements RefillCardService {
if (null==byId) { if (null==byId) {
return R.error("该充值卡不存在"); 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 @Override
......
...@@ -7,13 +7,17 @@ import cn.wisenergy.mapper.CardMapper; ...@@ -7,13 +7,17 @@ import cn.wisenergy.mapper.CardMapper;
import cn.wisenergy.mapper.RefillCardMapper; import cn.wisenergy.mapper.RefillCardMapper;
import cn.wisenergy.model.app.CardInfo; import cn.wisenergy.model.app.CardInfo;
import cn.wisenergy.model.app.RefillCard; import cn.wisenergy.model.app.RefillCard;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.math.BigInteger; import java.math.BigInteger;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
/** /**
* @author 86187 * @author 86187
...@@ -29,10 +33,9 @@ public class RefillCardManager { ...@@ -29,10 +33,9 @@ public class RefillCardManager {
private CardMapper cardMapper; private CardMapper cardMapper;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public R<Boolean> addCardMannger(RefillCard byId){ public R<Boolean> addCardMannger(RefillCard byId, BigInteger cardNumber){
//获取充值卡的卡数,并生成卡片 //获取充值卡的卡数,并生成卡片
ArrayList<CardInfo> cardInfos = new ArrayList<>(); ArrayList<CardInfo> cardInfos = new ArrayList<>();
BigInteger cardNumber=byId.getCardNo();
BigInteger num = new BigInteger("1"); BigInteger num = new BigInteger("1");
//子卡添加 //子卡添加
for (int i = 0; i < byId.getCardNumber(); i++) { 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