Commit c4478eb5 by yuanyuan.jing

支持储值卡状态查询,从svc查询

parent 6f150fad
package cn.freemud.entities.dto.pay;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.util.List;
/**
* @author yuanyuan.jing
*/
@Data
@AllArgsConstructor
public class SvcCardDetailRequest {
private String partnerId;
private List<String> cardCodes;
}
package cn.freemud.entities.dto.pay;
import lombok.Data;
import java.util.List;
/**
* @author yuanyuan.jing
*/
@Data
public class SvcCardDetailsResponse {
/**
* 卡号
*/
private String cardCode;
/**
* 卡状态 0|作废 1|待激活 2|有效 3|冻结 4|挂失 5|失效 6|转赠中 7|已过期
*/
private Integer cardState;
}
......@@ -31,9 +31,7 @@ import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountRequestDto;
import cn.freemud.entities.dto.calculate.ActivityCalculationDiscountResponseDto;
import cn.freemud.entities.dto.openplatform.WeixinProductRequestDto;
import cn.freemud.entities.dto.openplatform.WeixinProductResponseDto;
import cn.freemud.entities.dto.pay.CardSimpleInfo;
import cn.freemud.entities.dto.pay.SVCCardAmountRequest;
import cn.freemud.entities.dto.pay.SVCCardAmountResponse;
import cn.freemud.entities.dto.pay.*;
import cn.freemud.entities.dto.shoppingCart.SendPoint;
import cn.freemud.entities.dto.shoppingCart.ShoppingCartGoodsDto;
import cn.freemud.entities.dto.user.GetUserScoreUseDetailRequest;
......@@ -1316,6 +1314,12 @@ public class ShoppingCartNewServiceImpl implements ShoppingCartNewService {
List<GetSvcInfoByMemberIdResponse> memberCardResponses = svcInfoByMemberId.getData();
// 查询储值卡的余额
List<String> cardCodes = memberCardResponses.stream().map(GetSvcInfoByMemberIdResponse::getCardCode).collect(Collectors.toList());
if (statusFlagList!=null&&statusFlagList.size()>0&&statusFlagList.contains(0)){
//从SVC查询出有效的储值卡,状态2
SvcCardDetailRequest req= new SvcCardDetailRequest(partnerId,cardCodes);
BaseResponse<List<SvcCardDetailsResponse>> details = svcAppClient.details(req);
cardCodes=details.getResult().stream().filter(item->item.getCardState().equals(2)).map(SvcCardDetailsResponse::getCardCode).collect(toList());
}
SVCCardAmountRequest svcCardAmountRequest = new SVCCardAmountRequest();
svcCardAmountRequest.setCardCodes(cardCodes);
svcCardAmountRequest.setPartnerId(partnerId);
......
......@@ -6,10 +6,14 @@ import cn.freemud.constant.ResponseCodeConstant;
import cn.freemud.constant.ResponseCodeKeyConstant;
import cn.freemud.entities.dto.pay.SVCCardAmountRequest;
import cn.freemud.entities.dto.pay.SVCCardAmountResponse;
import cn.freemud.entities.dto.pay.SvcCardDetailRequest;
import cn.freemud.entities.dto.pay.SvcCardDetailsResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import java.util.List;
@FeignClient(name="fm-svc-app", url = "${saas.svc.app.feign.url:}")
@RequestMapping(produces = {"application/json;charset=UTF-8"})
public interface SvcAppClient {
......@@ -20,4 +24,7 @@ public interface SvcAppClient {
@IgnoreFeignLogAnnotation(logMessage = "batchQueryCardAmount",excludeStatusCodes = {ResponseCodeConstant.RESPONSE_SUCCESS_STR},statusCodeFieldName= ResponseCodeKeyConstant.STATUS_CODE,messageFieldName=ResponseCodeKeyConstant.MSG)
BaseResponse<SVCCardAmountResponse> batchQueryCardAmount(SVCCardAmountRequest svcComPayRequestDto);
@PostMapping(value = "/svc/card/details")
BaseResponse<List<SvcCardDetailsResponse>> details(SvcCardDetailRequest svcCardDetailRequest);
}
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