package com.ks.vip.service.remote;
|
|
|
import com.ks.vip.mapper.VipCenterRecordMapper;
|
import com.ks.vip.mapper.VipOrderMapper;
|
import com.ks.vip.pojo.DO.VipCenter;
|
import com.ks.vip.pojo.DO.VipCenterRecord;
|
import com.ks.vip.pojo.DO.VipOrder;
|
import com.ks.vip.service.VipCenterRecordService;
|
import org.apache.dubbo.config.annotation.Service;
|
|
import javax.annotation.Resource;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
@Service(version = "1.0")
|
public class VipCenterRecordServiceImpl implements VipCenterRecordService {
|
|
@Resource
|
private VipCenterRecordMapper vipCenterRecordMapper;
|
|
@Resource
|
private VipOrderMapper vipOrderMapper;
|
|
|
@Override
|
public void insertSelective(VipCenterRecord t) {
|
vipCenterRecordMapper.insertSelective(t);
|
}
|
|
@Override
|
public List<VipCenterRecord> list(String uid, int page, int pageSize) {
|
VipCenterRecordMapper.DaoQuery daoQuery = new VipCenterRecordMapper.DaoQuery();
|
daoQuery.uid = uid;
|
daoQuery.start = (page - 1) * pageSize;
|
daoQuery.count = pageSize;
|
List<VipCenterRecord> list = vipCenterRecordMapper.list(daoQuery);
|
if (list == null || list.size() == 0) {
|
return new ArrayList<>();
|
}
|
List<Long> orderIds = new ArrayList<>();
|
for (VipCenterRecord record : list) {
|
orderIds.add(record.getOrderId());
|
}
|
//填充订单详情
|
List<VipOrder> orders = vipOrderMapper.listByPrimaryKeys(orderIds);
|
Map<Long, VipOrder> orderMap = new HashMap<>();
|
for (VipOrder vipOrder : orders) {
|
orderMap.put(vipOrder.getId(), vipOrder);
|
}
|
|
for (VipCenterRecord record : list) {
|
record.setVipOrder(orderMap.get(record.getOrderId()));
|
}
|
return list;
|
}
|
|
@Override
|
public long count(String uid) {
|
VipCenterRecordMapper.DaoQuery daoQuery = new VipCenterRecordMapper.DaoQuery();
|
daoQuery.uid = uid;
|
return vipCenterRecordMapper.count(daoQuery);
|
}
|
|
|
}
|