提交 c95a0604 编写于 作者: 街头小贩's avatar 街头小贩

更新MemberVipExchangeRecords API方法

上级 9276eaf1
......@@ -312,6 +312,10 @@ public class MemberServiceImpl implements MemberService{
@Override
public Optional<Boolean> exchangeVIP(long memberId, int duration, ForumCalendarUnitEnum unit)throws IllegalStateException, IllegalArgumentException {
return exchangeVIP(memberId, duration, unit, null);
}
@Override
public Optional<Boolean> exchangeVIP(long memberId, int duration, ForumCalendarUnitEnum unit, String transerial) throws IllegalStateException, IllegalArgumentException {
if(memberId<=1){
return Optional.empty();
}
......@@ -325,6 +329,9 @@ public class MemberServiceImpl implements MemberService{
int limit = duration<=1?1:duration;
try{
MemberVipExchangeRecords ver = new MemberVipExchangeRecords(memberId, m.getNickname(), limit, unit);
if(Commons.isNotBlank(transerial)){
ver.setSerial(transerial);
}
memberVipExchangeRecordsDao.save(ver);
if(ver.getId()>0) {
memberEventPublisher.publishVipExchangeEvent(new VipExchangeEvent(this, ver));
......
......@@ -162,14 +162,29 @@ public interface MemberService {
/**
* 将会员的默认组(CARD)提升至VIP
*
* @deprecated
* @param memberId 会员ID
* @param duration 有效日期时长
* @param unit 有效日期单位,只接受ForumCalendarUnitEnum.MONTH(月),只接受ForumCalendarUnitEnum.YEAR(年)
* @throws IllegalStateException
* @throws IllegalArgumentException
* @return
*/
Optional<Boolean> exchangeVIP(long memberId, int duration, ForumCalendarUnitEnum unit)throws IllegalStateException, IllegalArgumentException;
/**
* 将会员的默认组(CARD)提升至VIP
*
* @param memberId 会员ID
* @param duration 有效日期时长
* @param unit 有效日期单位,只接受ForumCalendarUnitEnum.MONTH(月),只接受ForumCalendarUnitEnum.YEAR(年)
* @param transerial 交易流水号
* @return
* @throws IllegalStateException
* @throws IllegalArgumentException
*/
Optional<Boolean> exchangeVIP(long memberId, int duration, ForumCalendarUnitEnum unit, String transerial)throws IllegalStateException, IllegalArgumentException;
/**
* 查看指定的会员
*
......
......@@ -74,7 +74,7 @@ public class AdminMemberVipExchangeRecordsController {
Member m = memberService.get(form.getMemberId()).orElseThrow(()->new ResourceNotFoundException("会员不存在或暂时无法访问"));
String errMsg = "创建VIP交易记录操作失败";
try {
boolean symbol = memberService.exchangeVIP(m.getId(), form.getIntegerLimit(), form.getEnumUnit()).orElse(false);
boolean symbol = memberService.exchangeVIP(m.getId(), form.getIntegerLimit(), form.getEnumUnit(), form.getSerial()).orElse(false);
if (symbol) {
return "redirect:/member/exchange/";
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册