package com.yeshi.fanli.service.impl.order;
|
|
import java.util.Date;
|
import java.util.List;
|
|
import javax.annotation.Resource;
|
|
import org.springframework.stereotype.Service;
|
|
import com.yeshi.fanli.dao.order.OrderMoneyDailyCountDao;
|
import com.yeshi.fanli.entity.order.OrderMoneyDailyCount;
|
import com.yeshi.fanli.service.inter.order.OrderMoneyDailyCountService;
|
import com.yeshi.fanli.util.StringUtil;
|
import com.yeshi.fanli.util.TimeUtil;
|
import com.yeshi.fanli.util.annotation.RequestSerializableByKeyService;
|
|
@Service
|
public class OrderMoneyDailyCountServiceImpl implements OrderMoneyDailyCountService {
|
|
@Resource
|
private OrderMoneyDailyCountDao orderMoneyDailyCountDao;
|
|
|
@Override
|
@RequestSerializableByKeyService(key = "#record.uid")
|
public void saveDailyCount(OrderMoneyDailyCount record) {
|
if (record.getUid() == null || record.getCountDay() == null || StringUtil.isNullOrEmpty(record.getSourceType())) {
|
return; // 参数不全
|
}
|
String gernalTime = TimeUtil.getGernalTime(record.getCountDay().getTime());
|
String id = StringUtil.Md5(record.getUid() + record.getSourceType() + gernalTime);
|
|
// id
|
record.setId(id);
|
// 统计日期-年月日
|
record.setCountDay(new Date(TimeUtil.convertDateToTemp(gernalTime)));
|
|
OrderMoneyDailyCount dailyCount = orderMoneyDailyCountDao.getById(id);
|
if (dailyCount == null) {
|
// 选择性更新
|
orderMoneyDailyCountDao.save(record);
|
} else {
|
// 选择性插入
|
orderMoneyDailyCountDao.updateSelective(record);
|
}
|
}
|
|
@Override
|
public List<OrderMoneyDailyCount> query(Long uid, Date minDay, Date maxDay) {
|
return orderMoneyDailyCountDao.query(uid, minDay, maxDay);
|
}
|
|
}
|