TdCCouponRuleParkDaoImpl.java 2.23 KB
package com.zteits.pay.dao.impl;

import org.apache.commons.collections4.CollectionUtils;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.pay.param.QueryCouponRuleParkByCardNoRequest;
import com.zteits.pay.dao.TdCCouponRuleParkDao;
import com.zteits.pay.domain.TdCCouponRulePark;
import com.zteits.pay.domain.TdCCouponRuleParkExample;
import com.zteits.pay.mapper.TdCCouponRuleParkMapper;
import com.zteits.pay.mapper.smapper.TdCCouponRuleParkSMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;

/**
 * Copyright: Copyright (c) 2017  zteits
 *
 * @Description:
 * @version: v1.0.0
 * @author: langlw
 * @date: 2017/12/28 09
 * Modification History:
 * Date             Author          Version            Description
 * ---------------------------------------------------------*
 * 2017/12/28      langlw         v1.0.0               创建
 */
@Component
public class TdCCouponRuleParkDaoImpl implements TdCCouponRuleParkDao{

    @Autowired
    private TdCCouponRuleParkSMapper tdCCouponRuleParkSMapper;
    @Autowired
    private TdCCouponRuleParkMapper tdCCouponRuleParkMapper;

    @Override
    public Map<String, List<TdCCouponRulePark>> queryCouponRuleParkByCardNo(QueryCouponRuleParkByCardNoRequest request) {
        List<TdCCouponRulePark> list = tdCCouponRuleParkSMapper.queryCouponRuleParkByCardNo(request);
        return Optional.ofNullable(list).orElse(new ArrayList<>())
                .stream().collect(Collectors.groupingBy(TdCCouponRulePark::getCardNo));
    }

	@Override
	public List<String> queryPlNosByCardNo(String cardNo) {
		List<String> plNos = new ArrayList<>();
		TdCCouponRuleParkExample example = new TdCCouponRuleParkExample();
		example.createCriteria().andCardNoEqualTo(cardNo).andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
		List<TdCCouponRulePark> list= tdCCouponRuleParkMapper.selectByExample(example);
		if(CollectionUtils.isNotEmpty(list)){
			for (TdCCouponRulePark tdCCouponRulePark : list) {
				plNos.add(tdCCouponRulePark.getPlNo());
			}
		}
		return plNos;
	}

}