修改发送逻辑

master
bynt 1 year ago
parent bfee172d2b
commit 92559d4007

@ -19,7 +19,7 @@ public enum MailRequestEnum {
/**
*
*/
GG("GG", "dmp::gender::"),
GG("GG", "mail::gender::"),
/**

@ -33,4 +33,30 @@ public interface DeliveryRecordRepository extends
*/
@Query("select sum(d.num) from DeliveryRecord d where d.createTime >= ?1 and d.status = ?2 and d.userId = ?3")
Integer queryNumberByDateAndUser(DateTime dateTime, Integer status, Long userId);
/**
*
*
* @param userId
* @param beginTime
* @param endTime
* @param num
* @return
*/
@Query("select count(t) from TaskImei t where userId = ?1 and status = ?4 and updateTime between ?2 and ?3")
Integer countByUserId(Long userId, DateTime beginTime, DateTime endTime, Integer num);
/**
*
*
* @param dateTime
* @param time
* @param userId
* @return
*/
@Query("select sum(d.num) from DeliveryRecord d where d.userId = ?3 and d.createTime between ?1 and ?2 ")
Integer queryNumberByDateAndUser(DateTime dateTime, DateTime time, Long userId);
}

@ -53,4 +53,14 @@ public interface DeliveryRecordService {
* @return
*/
Boolean exchangeByInterFace(List<ImeiDTO> imeiDTOList, String taskImeiName, String publicKey, String privateKey);
/**
*
*
* @param userId
* @param beginOfDay
* @param endOfDay
* @return
*/
Integer countByUserIdAndDate(Long userId, DateTime beginOfDay, DateTime endOfDay);
}

@ -69,4 +69,10 @@ public class DeliveryRecordServiceImpl implements DeliveryRecordService {
HttpUtil.post("https://www.baidu.com/", JSONUtil.toJsonStr(stripsDTO));
return Boolean.TRUE;
}
@Override
public Integer countByUserIdAndDate(Long userId, DateTime beginOfDay, DateTime dateTime) {
Integer num = deliveryRecordRepository.queryNumberByDateAndUser(beginOfDay, dateTime, userId);
return num != null ? num : DefaultNumberConstants.ZERO_NUMBER;
}
}

@ -109,12 +109,16 @@ public class DeliveryBalanceTask {
&& dmpLimitNum > DefaultNumberConstants.ZERO_NUMBER) {
DateTime now = DateUtil.date();
// 统计今天数量
Integer count = taskImeiService.countByUserIdAndDate
(userId, DateUtil.beginOfDay(now), DateUtil.endOfDay(now), DefaultNumberConstants.ONE_NUMBER);
downList = CollUtil.sub(list, count >=
dmpLimitNum ? DefaultNumberConstants.ZERO_NUMBER : dmpLimitNum, list.size());
list = CollUtil.sub(list, DefaultNumberConstants.ZERO_NUMBER,
count >= dmpLimitNum ? DefaultNumberConstants.ZERO_NUMBER : dmpLimitNum);
Integer count = deliveryRecordService.countByUserIdAndDate(userId, DateUtil.beginOfDay(now), DateUtil.endOfDay(now));
int sum = count + list.size();
// 下载统计
downList = CollUtil.sub(list, sum >= dmpLimitNum
? DefaultNumberConstants.ZERO_NUMBER : list.size(), dmpLimitNum > sum
? list.size() : sum - dmpLimitNum);
// 发送统计
list = CollUtil.sub(list, sum >= dmpLimitNum
? Math.min(sum - dmpLimitNum, list.size())
: DefaultNumberConstants.ZERO_NUMBER, list.size());
}
// 最大数量不能大于剩余数量
if (list.size() >= channelCustom.getSurplusNum()) {

@ -5,6 +5,8 @@ package com.baiye.service;
* @date : 2021/12/17
*/
import cn.hutool.core.collection.CollUtil;
import com.baiye.constant.DefaultNumberConstants;
import com.google.common.collect.Lists;
import org.apache.commons.lang3.tuple.Pair;
@ -40,6 +42,7 @@ public class WeightRandomStrategyX<K, V extends Number> {
public static void main(String[] args) {
List<String> list = Lists.newArrayList("a", "b", "c", "d", "e", "f", "7");
List<String> sub = CollUtil.sub(list, 10, 7);
List<List<String>> lists = averageAssign(list, 3);
}

Loading…
Cancel
Save