修改查询参数

master
bynt 1 year ago
parent 8e389a18c3
commit 65794ca9cf

@ -23,4 +23,6 @@ public class DmpMonitorNumDto {
private Integer version; private Integer version;
private Integer queryType;
} }

@ -32,10 +32,12 @@ public interface TbDeliveryStatisticEntityRepository extends JpaRepository<TbDel
/** /**
* tag * tag
*
* @param tagStr * @param tagStr
* @param type
* @param i * @param i
* @return * @return
*/ */
@Query(value = "from TbDeliveryStatisticEntity where tag = ?1 and dayNum > ?2") @Query(value = "from TbDeliveryStatisticEntity where tag = ?1 and type = ?2 and dayNum > ?3")
List<TbDeliveryStatisticEntity> findByTag(String tagStr, int i); List<TbDeliveryStatisticEntity> findByTag(String tagStr, Integer type, int i);
} }

@ -28,6 +28,9 @@ public class TbDeliveryStatisticEntity implements Serializable {
@Column(name = "tag") @Column(name = "tag")
private String tag; private String tag;
@Column(name = "type")
private Integer type;
@Column(name = "day_num") @Column(name = "day_num")
private Integer dayNum = 3; private Integer dayNum = 3;
} }

@ -20,9 +20,10 @@ public interface DslBaseService {
* @param endTime end time * @param endTime end time
* @param tagList tag * @param tagList tag
* @param flag num or link * @param flag num or link
* @param type
* @return * @return
*/ */
List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag(Date startTime, Date endTime, List<String> tagList, Integer flag); List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag(Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type);
/** /**
* *

@ -18,7 +18,8 @@ public interface GdtBackDateService {
* @param endTime end time * @param endTime end time
* @param tagList tag * @param tagList tag
* @param flag num or link * @param flag num or link
* @param type
* @return * @return
*/ */
List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag(Date startTime, Date endTime, List<String> tagList, Integer flag); List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag(Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type);
} }

@ -18,7 +18,8 @@ public interface VivoBackDateService {
* @param endTime end time * @param endTime end time
* @param tagList tag * @param tagList tag
* @param flag num or link * @param flag num or link
* @param type
* @return * @return
*/ */
List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag(Date startTime, Date endTime, List<String> tagList, Integer flag); List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag(Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type);
} }

@ -38,7 +38,7 @@ public class BdBackDataServiceImpl extends AbstractService<TbBdNewBackdataEntity
QTbBdNewBackdataEntity bdNewBackdata = QTbBdNewBackdataEntity.tbBdNewBackdataEntity; QTbBdNewBackdataEntity bdNewBackdata = QTbBdNewBackdataEntity.tbBdNewBackdataEntity;
@Override @Override
public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag
(Date startTime, Date endTime, List<String> tagList, Integer flag) { (Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type) {
Timestamp endTimeStamp = new Timestamp(endTime.getTime()); Timestamp endTimeStamp = new Timestamp(endTime.getTime());
Timestamp startTimeStamp = new Timestamp(startTime.getTime()); Timestamp startTimeStamp = new Timestamp(startTime.getTime());
return this.applyJPA(query -> { return this.applyJPA(query -> {
@ -48,7 +48,22 @@ public class BdBackDataServiceImpl extends AbstractService<TbBdNewBackdataEntity
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, bdNewBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, bdNewBackdata.gmtCreate);
SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag"); SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag");
SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei"); SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei");
SimpleTemplate<String> t3Oaid = Expressions.template(String.class, "t3.oaid");
SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate"); SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate");
if (type == 2){
// 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(bdNewBackdata.oaid, bdNewBackdata.tag, bdNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
(bdNewBackdata).where(bdNewBackdata.tag.in(tagList).and(bdNewBackdata.gmtCreate.gt(startTimeStamp)).and(bdNewBackdata.gmtCreate.lt(endTimeStamp)).and
(bdNewBackdata.oaid.ne(CharSequenceUtil.EMPTY)).and(bdNewBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(bdNewBackdata.oaid.ne(DataConstant.IDFA_NUM))).groupBy(bdNewBackdata.oaid, bdNewBackdata.tag);
// 结果返回
List<QueryQuantityVO> voList = query.select(Projections.bean
(QueryQuantityVO.class, bdNewBackdata.oaid.count().as("num"), bdNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).from
(bdNewBackdata).innerJoin(gmtCreate, t3).on(bdNewBackdata.oaid.eq(t3Oaid).and(bdNewBackdata.gmtCreate.eq(t3Date).and(bdNewBackdata.tag.eq(t3Tag)))).groupBy(dateExpr, bdNewBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, voList);
}
// 封装子查询 // 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(bdNewBackdata.imei, bdNewBackdata.tag, bdNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from (bdNewBackdata.imei, bdNewBackdata.tag, bdNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
@ -65,6 +80,13 @@ public class BdBackDataServiceImpl extends AbstractService<TbBdNewBackdataEntity
// 修改时间格式 // 修改时间格式
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, bdNewBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, bdNewBackdata.gmtCreate);
if (type == 2){
List<QueryImeiVO> oaidVOList = query.select(Projections.bean
(QueryImeiVO.class, bdNewBackdata.oaid.as("imei"), bdNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(bdNewBackdata).where
(bdNewBackdata.tag.in(tagList).and(bdNewBackdata.gmtCreate.gt(startTimeStamp)).and(bdNewBackdata.gmtCreate.lt(endTimeStamp)).and(bdNewBackdata.oaid.ne(CharSequenceUtil.EMPTY)).and
(bdNewBackdata.oaid.ne(DataConstant.IDFA_NUM)).and(bdNewBackdata.oaid.ne(DataConstant.IMEI_TAG))).groupBy(bdNewBackdata.oaid, bdNewBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, oaidVOList);
}
List<QueryImeiVO> imeiVOList = query.select(Projections.bean List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, bdNewBackdata.imei, bdNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(bdNewBackdata).where (QueryImeiVO.class, bdNewBackdata.imei, bdNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(bdNewBackdata).where
(bdNewBackdata.tag.in(tagList).and(bdNewBackdata.gmtCreate.gt(startTimeStamp)).and(bdNewBackdata.gmtCreate.lt(endTimeStamp)).and(bdNewBackdata.imei.ne(CharSequenceUtil.EMPTY)).and (bdNewBackdata.tag.in(tagList).and(bdNewBackdata.gmtCreate.gt(startTimeStamp)).and(bdNewBackdata.gmtCreate.lt(endTimeStamp)).and(bdNewBackdata.imei.ne(CharSequenceUtil.EMPTY)).and

@ -311,7 +311,7 @@ public class DmpMonitorNumServiceImpl implements DmpMonitorNumService {
// 查询数据 // 查询数据
List<DeliveryStatisticDTO> tagLists = List<DeliveryStatisticDTO> tagLists =
Convert.toList(DeliveryStatisticDTO.class, Convert.toList(DeliveryStatisticDTO.class,
tbDeliveryStatisticEntityRepository.findByTag(tagStr, 0)); tbDeliveryStatisticEntityRepository.findByTag(tagStr, 1, 0));
Set<DeliveryStatisticDTO> newDataSet = Sets.newHashSet(tagLists); Set<DeliveryStatisticDTO> newDataSet = Sets.newHashSet(tagLists);
// 差集去除数据 // 差集去除数据
@ -330,6 +330,8 @@ public class DmpMonitorNumServiceImpl implements DmpMonitorNumService {
CompletableFuture.runAsync(() -> { CompletableFuture.runAsync(() -> {
List<TbDeliveryStatisticEntity> deliveryStatisticEntityList = List<TbDeliveryStatisticEntity> deliveryStatisticEntityList =
Convert.toList(TbDeliveryStatisticEntity.class, saveDataList); Convert.toList(TbDeliveryStatisticEntity.class, saveDataList);
deliveryStatisticEntityList.forEach(item -> item.setType(1));
// 批量保存 // 批量保存
tbDeliveryStatisticEntityRepository.saveAll(deliveryStatisticEntityList); tbDeliveryStatisticEntityRepository.saveAll(deliveryStatisticEntityList);
}); });

@ -4,10 +4,8 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.text.CharSequenceUtil;
import com.baiyee.adcallback.api.dto.DmpMonitorJpaDto; import com.baiyee.adcallback.api.dto.DmpMonitorJpaDto;
import com.baiyee.adcallback.api.dto.DmpMonitorNumDto; import com.baiyee.adcallback.api.dto.DmpMonitorNumDto;
import com.baiyee.adcallback.common.constant.DataConstant;
import com.baiyee.adcallback.common.enums.DeliveryPlatformEnum; import com.baiyee.adcallback.common.enums.DeliveryPlatformEnum;
import com.baiyee.adcallback.config.pojo.DeliveryStatisticDTO; import com.baiyee.adcallback.config.pojo.DeliveryStatisticDTO;
import com.baiyee.adcallback.repository.TbDeliveryStatisticEntityRepository; import com.baiyee.adcallback.repository.TbDeliveryStatisticEntityRepository;
@ -78,8 +76,9 @@ public class DmpMonitorV2ServiceImpl implements DmpMonitorV2Service {
private List<DmpMonitorJpaDto> getMapData(DmpMonitorNumDto dmpMonitorNumDto, Integer flag) { private List<DmpMonitorJpaDto> getMapData(DmpMonitorNumDto dmpMonitorNumDto, Integer flag) {
Map<Integer, List<String>> talbeMap = Maps.newHashMap(); Map<Integer, List<String>> talbeMap = Maps.newHashMap();
List<DmpMonitorJpaDto> voList = Lists.newArrayList(); List<DmpMonitorJpaDto> voList = Lists.newArrayList();
Date startTime = dmpMonitorNumDto.getStartTime(); Integer type = dmpMonitorNumDto.getQueryType();
Date endTime = dmpMonitorNumDto.getEndTime(); Date endTime = dmpMonitorNumDto.getEndTime();
Date startTime = dmpMonitorNumDto.getStartTime();
for (String tag : dmpMonitorNumDto.getTags()) { for (String tag : dmpMonitorNumDto.getTags()) {
for (DeliveryPlatformEnum value : DeliveryPlatformEnum.values()) { for (DeliveryPlatformEnum value : DeliveryPlatformEnum.values()) {
if (tag.startsWith(value.getType().toLowerCase())) { if (tag.startsWith(value.getType().toLowerCase())) {
@ -101,37 +100,37 @@ public class DmpMonitorV2ServiceImpl implements DmpMonitorV2Service {
List<String> tagList = entry.getValue(); List<String> tagList = entry.getValue();
switch (index) { switch (index) {
case 1: case 1:
voList.addAll(jlV1BackDataService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag)); voList.addAll(jlV1BackDataService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag, type));
break; break;
case 7: case 7:
// v2 // v2
voList.addAll(jlV2BackDataService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag)); voList.addAll(jlV2BackDataService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag, type));
break; break;
case 2: case 2:
// 快手 // 快手
voList.addAll(ksBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag)); voList.addAll(ksBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag, type));
break; break;
case 3: case 3:
// UC // UC
voList.addAll(ucBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag)); voList.addAll(ucBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag, type));
break; break;
case 4: case 4:
// VIVO // VIVO
voList.addAll(vivoBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag)); voList.addAll(vivoBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag, type));
break; break;
case 5: case 5:
//百度 //百度
voList.addAll(bdBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag)); voList.addAll(bdBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag, type));
break; break;
case 6: case 6:
//广点通 //广点通
voList.addAll(gdtBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag)); voList.addAll(gdtBackDateService.queryByTagAndTimeAndFlag(startTime, endTime, tagList, flag, type));
break; break;
default: default:
break; break;
} }
} }
return flag == 1 ? voList : this.getDmpMonitorJpaDto(voList); return flag == 1 ? voList : this.getDmpMonitorJpaDto(voList, type);
} }
@ -163,7 +162,7 @@ public class DmpMonitorV2ServiceImpl implements DmpMonitorV2Service {
} }
private List<DmpMonitorJpaDto> getDmpMonitorJpaDto(List<DmpMonitorJpaDto> list) { private List<DmpMonitorJpaDto> getDmpMonitorJpaDto(List<DmpMonitorJpaDto> list, Integer type) {
List<DmpMonitorJpaDto> tradeList = new ArrayList<>(); List<DmpMonitorJpaDto> tradeList = new ArrayList<>();
Map<String, List<DmpMonitorJpaDto>> stringCollectionMap = Map<String, List<DmpMonitorJpaDto>> stringCollectionMap =
list.stream().collect(Collectors.groupingBy(DmpMonitorJpaDto::getTag)); list.stream().collect(Collectors.groupingBy(DmpMonitorJpaDto::getTag));
@ -177,7 +176,7 @@ public class DmpMonitorV2ServiceImpl implements DmpMonitorV2Service {
// 转换set // 转换set
Set<DeliveryStatisticDTO> rawDataSet = Convert.toSet(DeliveryStatisticDTO.class, dmpMonitorJpaDtoSet); Set<DeliveryStatisticDTO> rawDataSet = Convert.toSet(DeliveryStatisticDTO.class, dmpMonitorJpaDtoSet);
// 查询数据 // 查询数据
List<DeliveryStatisticDTO> tagLists = Convert.toList(DeliveryStatisticDTO.class, tbDeliveryStatisticEntityRepository.findByTag(tagStr, 0)); List<DeliveryStatisticDTO> tagLists = Convert.toList(DeliveryStatisticDTO.class, tbDeliveryStatisticEntityRepository.findByTag(tagStr , type, 0));
Set<DeliveryStatisticDTO> newDataSet = Sets.newHashSet(tagLists); Set<DeliveryStatisticDTO> newDataSet = Sets.newHashSet(tagLists);
// 差集去除数据 // 差集去除数据
@ -194,6 +193,7 @@ public class DmpMonitorV2ServiceImpl implements DmpMonitorV2Service {
CompletableFuture.runAsync(() -> { CompletableFuture.runAsync(() -> {
List<TbDeliveryStatisticEntity> deliveryStatisticEntityList = Convert.toList(TbDeliveryStatisticEntity.class, saveDataList); List<TbDeliveryStatisticEntity> deliveryStatisticEntityList = Convert.toList(TbDeliveryStatisticEntity.class, saveDataList);
// 批量保存 // 批量保存
deliveryStatisticEntityList.forEach(item -> item.setType(type));
tbDeliveryStatisticEntityRepository.saveAll(deliveryStatisticEntityList); tbDeliveryStatisticEntityRepository.saveAll(deliveryStatisticEntityList);
}); });
} }

@ -36,7 +36,7 @@ public class GdtBackDataServiceImpl extends AbstractService<TbGdtNewBackdataEnti
@Override @Override
public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag
(Date startTime, Date endTime, List<String> tagList, Integer flag) { (Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type) {
return this.applyJPA(query -> { return this.applyJPA(query -> {
StringPath t3 = Expressions.stringPath("t3"); StringPath t3 = Expressions.stringPath("t3");
@ -46,7 +46,23 @@ public class GdtBackDataServiceImpl extends AbstractService<TbGdtNewBackdataEnti
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, gdtNewBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, gdtNewBackdata.gmtCreate);
SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag"); SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag");
SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei"); SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei");
SimpleTemplate<String> t3Oaid = Expressions.template(String.class, "t3.oaid");
SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate"); SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate");
if (type == 2){
// 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(gdtNewBackdata.oaid, gdtNewBackdata.tag,gdtNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
(gdtNewBackdata).where(gdtNewBackdata.tag.in(tagList).and(gdtNewBackdata.oaid.ne(CharSequenceUtil.EMPTY).and
(gdtNewBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(gdtNewBackdata.oaid.ne(DataConstant.IMEI_TAG)))).groupBy(gdtNewBackdata.oaid,gdtNewBackdata.tag);
// 结果返回
List<QueryQuantityVO> voList = query.select(Projections.bean
(QueryQuantityVO.class, gdtNewBackdata.oaid.count().as("num"), gdtNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).from
(gdtNewBackdata).innerJoin(gmtCreate, t3).on(gdtNewBackdata.oaid.eq(t3Oaid).and(gdtNewBackdata.gmtCreate.eq(t3Date).and(gdtNewBackdata.tag.eq(t3Tag)))).groupBy(dateExpr, gdtNewBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, voList);
}
// 封装子查询 // 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(gdtNewBackdata.imei, gdtNewBackdata.tag,gdtNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from (gdtNewBackdata.imei, gdtNewBackdata.tag,gdtNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
@ -63,6 +79,13 @@ public class GdtBackDataServiceImpl extends AbstractService<TbGdtNewBackdataEnti
// 修改时间格式 // 修改时间格式
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, gdtNewBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, gdtNewBackdata.gmtCreate);
if (type == 2) {
List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, gdtNewBackdata.oaid.as("imei"), gdtNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(gdtNewBackdata).where
(gdtNewBackdata.tag.in(tagList).and(gdtNewBackdata.oaid.ne(CharSequenceUtil.EMPTY).and(gdtNewBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(gdtNewBackdata.oaid.ne
(DataConstant.IDFA_NUM)))).groupBy(gdtNewBackdata.oaid,gdtNewBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, imeiVOList);
}
List<QueryImeiVO> imeiVOList = query.select(Projections.bean List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, gdtNewBackdata.imei, gdtNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(gdtNewBackdata).where (QueryImeiVO.class, gdtNewBackdata.imei, gdtNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(gdtNewBackdata).where
(gdtNewBackdata.tag.in(tagList).and(gdtNewBackdata.imei.ne(CharSequenceUtil.EMPTY).and(gdtNewBackdata.imei.ne(DataConstant.IMEI_NULL_TAG)).and(gdtNewBackdata.imei.ne (gdtNewBackdata.tag.in(tagList).and(gdtNewBackdata.imei.ne(CharSequenceUtil.EMPTY).and(gdtNewBackdata.imei.ne(DataConstant.IMEI_NULL_TAG)).and(gdtNewBackdata.imei.ne

@ -21,13 +21,8 @@ import com.querydsl.core.types.dsl.StringPath;
import com.querydsl.core.types.dsl.StringTemplate; import com.querydsl.core.types.dsl.StringTemplate;
import com.querydsl.sql.SQLExpressions; import com.querydsl.sql.SQLExpressions;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -43,7 +38,7 @@ public class JlV1BackDataServiceImpl extends AbstractService<TbJLBackDataV1Entit
@Override @Override
public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag
(Date startTime, Date endTime, List<String> tagList, Integer flag) { (Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type) {
return this.applyJPA(query -> { return this.applyJPA(query -> {
StringTemplate dateExpr; StringTemplate dateExpr;
StringPath t3 = Expressions.stringPath("t3"); StringPath t3 = Expressions.stringPath("t3");
@ -51,7 +46,23 @@ public class JlV1BackDataServiceImpl extends AbstractService<TbJLBackDataV1Entit
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, v1Entity.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, v1Entity.gmtCreate);
SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag"); SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag");
SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei"); SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei");
SimpleTemplate<String> t3Oaid = Expressions.template(String.class, "t3.oaid");
SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate"); SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate");
if (type == 2){
// 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(v1Entity.oaid, v1Entity.tag, v1Entity.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
(v1Entity).where(v1Entity.tag.in(tagList).and(v1Entity.gmtCreate.gt(startTime)).and(v1Entity.gmtCreate.lt(endTime)).and
(v1Entity.oaid.ne(CharSequenceUtil.EMPTY)).and(v1Entity.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(v1Entity.oaid.ne(DataConstant.IDFA_NUM))).groupBy(v1Entity.oaid, v1Entity.tag);
// 结果返回
List<QueryQuantityVO> voList = query.select(Projections.bean
(QueryQuantityVO.class, v1Entity.oaid.count().as("num"), v1Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).from
(v1Entity).innerJoin(gmtCreate, t3).on(v1Entity.oaid.eq(t3Oaid).and(v1Entity.gmtCreate.eq(t3Date).and(v1Entity.tag.eq(t3Tag)))).groupBy(dateExpr, v1Entity.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, voList);
}
// 封装子查询 // 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(v1Entity.imei, v1Entity.tag, v1Entity.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from (v1Entity.imei, v1Entity.tag, v1Entity.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
@ -67,6 +78,13 @@ public class JlV1BackDataServiceImpl extends AbstractService<TbJLBackDataV1Entit
// 修改时间格式 // 修改时间格式
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, v1Entity.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, v1Entity.gmtCreate);
if (type == 2){
List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, v1Entity.oaid.as("imei"), v1Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(v1Entity).where
(v1Entity.tag.in(tagList).and(v1Entity.gmtCreate.gt(startTime)).and(v1Entity.gmtCreate.lt(endTime)).and(v1Entity.oaid.ne(CharSequenceUtil.EMPTY)).and
(v1Entity.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(v1Entity.oaid.ne(DataConstant.IDFA_NUM))).groupBy(v1Entity.oaid, v1Entity.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, imeiVOList);
}
List<QueryImeiVO> imeiVOList = query.select(Projections.bean List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, v1Entity.imei, v1Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(v1Entity).where (QueryImeiVO.class, v1Entity.imei, v1Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(v1Entity).where

@ -36,7 +36,7 @@ public class JlV2BackDataServiceImpl extends AbstractService<TbJLBackDataV2Entit
QTbJLBackDataV2Entity v2Entity = QTbJLBackDataV2Entity.tbJLBackDataV2Entity; QTbJLBackDataV2Entity v2Entity = QTbJLBackDataV2Entity.tbJLBackDataV2Entity;
@Override @Override
public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag
(Date startTime, Date endTime, List<String> tagList, Integer flag) { (Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type) {
return this.applyJPA(query -> { return this.applyJPA(query -> {
StringTemplate dateExpr; StringTemplate dateExpr;
StringPath t3 = Expressions.stringPath("t3"); StringPath t3 = Expressions.stringPath("t3");
@ -44,7 +44,22 @@ public class JlV2BackDataServiceImpl extends AbstractService<TbJLBackDataV2Entit
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, v2Entity.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, v2Entity.gmtCreate);
SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag"); SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag");
SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei"); SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei");
SimpleTemplate<String> t3Oaid = Expressions.template(String.class, "t3.oaid");
SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate"); SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate");
if (type == 2){
// 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(v2Entity.oaid, v2Entity.tag, v2Entity.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
(v2Entity).where(v2Entity.tag.in(tagList).and(v2Entity.gmtCreate.gt(startTime)).and(v2Entity.gmtCreate.lt(endTime)).and
(v2Entity.oaid.ne(CharSequenceUtil.EMPTY)).and(v2Entity.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(v2Entity.oaid.ne(DataConstant.IDFA_NUM))).groupBy(v2Entity.oaid, v2Entity.tag);
// 结果返回
List<QueryQuantityVO> voList = query.select(Projections.bean
(QueryQuantityVO.class, v2Entity.oaid.count().as("num"), v2Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).from
(v2Entity).innerJoin(gmtCreate, t3).on(v2Entity.oaid.eq(t3Oaid).and(v2Entity.gmtCreate.eq(t3Date).and(v2Entity.tag.eq(t3Tag)))).groupBy(dateExpr, v2Entity.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, voList);
}
// 封装子查询 // 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(v2Entity.imei, v2Entity.tag, v2Entity.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from (v2Entity.imei, v2Entity.tag, v2Entity.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
@ -61,6 +76,13 @@ public class JlV2BackDataServiceImpl extends AbstractService<TbJLBackDataV2Entit
// 修改时间格式 // 修改时间格式
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, v2Entity.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, v2Entity.gmtCreate);
if (type == 2){
List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, v2Entity.oaid.as("imei"), v2Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(v2Entity).where
(v2Entity.tag.in(tagList).and(v2Entity.gmtCreate.gt(startTime)).and(v2Entity.gmtCreate.lt(endTime)).and(v2Entity.oaid.ne(CharSequenceUtil.EMPTY)).and
(v2Entity.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(v2Entity.oaid.ne(DataConstant.IDFA_NUM))).groupBy(v2Entity.oaid, v2Entity.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, imeiVOList);
}
List<QueryImeiVO> imeiVOList = query.select(Projections.bean List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, v2Entity.imei, v2Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(v2Entity).where (QueryImeiVO.class, v2Entity.imei, v2Entity.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(v2Entity).where
(v2Entity.tag.in(tagList).and(v2Entity.gmtCreate.gt(startTime)).and(v2Entity.gmtCreate.lt(endTime)).and(v2Entity.imei.ne(CharSequenceUtil.EMPTY)).and (v2Entity.tag.in(tagList).and(v2Entity.gmtCreate.gt(startTime)).and(v2Entity.gmtCreate.lt(endTime)).and(v2Entity.imei.ne(CharSequenceUtil.EMPTY)).and

@ -38,7 +38,7 @@ public class KsBackDataServiceImpl extends AbstractService<TbKSNewBackdataEntity
QTbKSNewBackdataEntity ksNewBackdata = QTbKSNewBackdataEntity.tbKSNewBackdataEntity; QTbKSNewBackdataEntity ksNewBackdata = QTbKSNewBackdataEntity.tbKSNewBackdataEntity;
@Override @Override
public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag
(Date startTime, Date endTime, List<String> tagList, Integer flag) { (Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type) {
Timestamp endTimeStamp = new Timestamp(endTime.getTime()); Timestamp endTimeStamp = new Timestamp(endTime.getTime());
Timestamp startTimeStamp = new Timestamp(startTime.getTime()); Timestamp startTimeStamp = new Timestamp(startTime.getTime());
return this.applyJPA(query -> { return this.applyJPA(query -> {
@ -49,7 +49,22 @@ public class KsBackDataServiceImpl extends AbstractService<TbKSNewBackdataEntity
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, ksNewBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, ksNewBackdata.gmtCreate);
SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag"); SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag");
SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei"); SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei");
SimpleTemplate<String> t3Oaid = Expressions.template(String.class, "t3.oaid");
SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate"); SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate");
if (type == 2){
// 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(ksNewBackdata.oaid, ksNewBackdata.tag, ksNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
(ksNewBackdata).where(ksNewBackdata.tag.in(tagList).and(ksNewBackdata.gmtCreate.gt(startTimeStamp)).and(ksNewBackdata.gmtCreate.lt(endTimeStamp)).and
(ksNewBackdata.oaid.ne(CharSequenceUtil.EMPTY)).and(ksNewBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(ksNewBackdata.oaid.ne(DataConstant.IDFA_NUM))).groupBy(ksNewBackdata.oaid, ksNewBackdata.tag);
// 结果返回
List<QueryQuantityVO> voList = query.select(Projections.bean
(QueryQuantityVO.class, ksNewBackdata.oaid.count().as("num"), ksNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).from
(ksNewBackdata).innerJoin(gmtCreate, t3).on(ksNewBackdata.oaid.eq(t3Oaid).and(ksNewBackdata.gmtCreate.eq(t3Date).and(ksNewBackdata.tag.eq(t3Tag)))).groupBy(dateExpr, ksNewBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, voList);
}
// 封装子查询 // 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(ksNewBackdata.imei, ksNewBackdata.tag, ksNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from (ksNewBackdata.imei, ksNewBackdata.tag, ksNewBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
@ -65,6 +80,13 @@ public class KsBackDataServiceImpl extends AbstractService<TbKSNewBackdataEntity
// 修改时间格式 // 修改时间格式
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, ksNewBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, ksNewBackdata.gmtCreate);
if (type == 2){
List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, ksNewBackdata.oaid.as("imei"), ksNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(ksNewBackdata).where
(ksNewBackdata.tag.in(tagList).and(ksNewBackdata.gmtCreate.gt(startTimeStamp)).and(ksNewBackdata.gmtCreate.lt(endTimeStamp)).and(ksNewBackdata.oaid.ne(CharSequenceUtil.EMPTY)).and
(ksNewBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(ksNewBackdata.oaid.ne(DataConstant.IDFA_NUM))).groupBy(ksNewBackdata.oaid, ksNewBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, imeiVOList);
}
List<QueryImeiVO> imeiVOList = query.select(Projections.bean List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, ksNewBackdata.imei, ksNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(ksNewBackdata).where (QueryImeiVO.class, ksNewBackdata.imei, ksNewBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(ksNewBackdata).where

@ -38,7 +38,7 @@ public class UcBackDataServiceImpl extends AbstractService<TbUcBackdataEntity,Lo
QTbUcBackdataEntity ucBackdata = QTbUcBackdataEntity.tbUcBackdataEntity; QTbUcBackdataEntity ucBackdata = QTbUcBackdataEntity.tbUcBackdataEntity;
@Override @Override
public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag
(Date startTime, Date endTime, List<String> tagList, Integer flag) { (Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type) {
return this.applyJPA(query -> { return this.applyJPA(query -> {
StringTemplate dateExpr; StringTemplate dateExpr;
@ -49,7 +49,21 @@ public class UcBackDataServiceImpl extends AbstractService<TbUcBackdataEntity,Lo
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, ucBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, ucBackdata.gmtCreate);
SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag"); SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag");
SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei"); SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei");
SimpleTemplate<String> t3Oaid = Expressions.template(String.class, "t3.oaid");
SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate"); SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate");
if (type == 2){
// 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(ucBackdata.oaid, ucBackdata.tag, ucBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
(ucBackdata).where(ucBackdata.tag.in(tagList).and(ucBackdata.gmtCreate.gt(startTimeStamp)).and(ucBackdata.gmtCreate.lt(endTimeStamp)).and
(ucBackdata.oaid.ne(CharSequenceUtil.EMPTY)).and(ucBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(ucBackdata.oaid.ne(DataConstant.IDFA_NUM))).groupBy(ucBackdata.oaid, ucBackdata.tag);
// 结果返回
List<QueryQuantityVO> voList = query.select(Projections.bean
(QueryQuantityVO.class, ucBackdata.oaid.count().as("num"), ucBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).from
(ucBackdata).innerJoin(gmtCreate, t3).on(ucBackdata.oaid.eq(t3Oaid).and(ucBackdata.gmtCreate.eq(t3Date).and(ucBackdata.tag.eq(t3Tag)))).groupBy(dateExpr, ucBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, voList);
}
// 封装子查询 // 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(ucBackdata.imei, ucBackdata.tag, ucBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from (ucBackdata.imei, ucBackdata.tag, ucBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
@ -65,6 +79,13 @@ public class UcBackDataServiceImpl extends AbstractService<TbUcBackdataEntity,Lo
// 修改时间格式 // 修改时间格式
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, ucBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, ucBackdata.gmtCreate);
if (type == 2) {
List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, ucBackdata.oaid.as("imei"), ucBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(ucBackdata).where
(ucBackdata.tag.in(tagList).and(ucBackdata.gmtCreate.gt(startTimeStamp)).and(ucBackdata.gmtCreate.lt(endTimeStamp)).and(ucBackdata.oaid.ne(CharSequenceUtil.EMPTY)).and
(ucBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(ucBackdata.oaid.ne(DataConstant.IDFA_NUM))).groupBy(ucBackdata.oaid, ucBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, imeiVOList);
}
List<QueryImeiVO> imeiVOList = query.select(Projections.bean List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, ucBackdata.imei, ucBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(ucBackdata).where (QueryImeiVO.class, ucBackdata.imei, ucBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(ucBackdata).where

@ -36,7 +36,7 @@ public class VivoBackDataServiceImpl extends AbstractService<TbVivoBackdataEntit
@Override @Override
public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag public List<DmpMonitorJpaDto> queryByTagAndTimeAndFlag
(Date startTime, Date endTime, List<String> tagList, Integer flag) { (Date startTime, Date endTime, List<String> tagList, Integer flag, Integer type) {
return this.applyJPA(query -> { return this.applyJPA(query -> {
StringPath t3 = Expressions.stringPath("t3"); StringPath t3 = Expressions.stringPath("t3");
@ -46,7 +46,21 @@ public class VivoBackDataServiceImpl extends AbstractService<TbVivoBackdataEntit
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, vivoBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR, vivoBackdata.gmtCreate);
SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag"); SimpleTemplate<String> t3Tag = Expressions.template(String.class, "t3.tag");
SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei"); SimpleTemplate<String> t3Imei = Expressions.template(String.class, "t3.imei");
SimpleTemplate<String> t3Oaid = Expressions.template(String.class, "t3.oaid");
SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate"); SimpleTemplate<Date> t3Date = Expressions.template(Date.class, "t3.gmtCreate");
if (type == 2){
// 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(vivoBackdata.oaid, vivoBackdata.tag,vivoBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
(vivoBackdata).where(vivoBackdata.tag.in(tagList).and(vivoBackdata.oaid.ne(CharSequenceUtil.EMPTY).and
(vivoBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(vivoBackdata.oaid.ne(DataConstant.IDFA_NUM)))).groupBy(vivoBackdata.oaid,vivoBackdata.tag);
// 结果返回
List<QueryQuantityVO> voList = query.select(Projections.bean
(QueryQuantityVO.class, vivoBackdata.oaid.count().as("num"), vivoBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).from
(vivoBackdata).innerJoin(gmtCreate, t3).on(vivoBackdata.oaid.eq(t3Oaid).and(vivoBackdata.gmtCreate.eq(t3Date).and(vivoBackdata.tag.eq(t3Tag)))).groupBy(dateExpr, vivoBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, voList);
}
// 封装子查询 // 封装子查询
SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select SubQueryExpression<Tuple> gmtCreate = SQLExpressions.select
(vivoBackdata.imei, vivoBackdata.tag,vivoBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from (vivoBackdata.imei, vivoBackdata.tag,vivoBackdata.gmtCreate.max().as(SqlConstant.CREATE_TIME)).from
@ -63,6 +77,13 @@ public class VivoBackDataServiceImpl extends AbstractService<TbVivoBackdataEntit
// 修改时间格式 // 修改时间格式
dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, vivoBackdata.gmtCreate); dateExpr = Expressions.stringTemplate(SqlConstant.DATE_EXPR_V2, vivoBackdata.gmtCreate);
if (type == 2){
List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, vivoBackdata.oaid.as("imei"), vivoBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(vivoBackdata).where
(vivoBackdata.tag.in(tagList).and(vivoBackdata.oaid.ne(CharSequenceUtil.EMPTY).and(vivoBackdata.oaid.ne(DataConstant.IMEI_NULL_TAG)).and(vivoBackdata.imei.ne
(DataConstant.IDFA_NUM)))).groupBy(vivoBackdata.oaid,vivoBackdata.tag).fetch();
return Convert.toList(DmpMonitorJpaDto.class, imeiVOList);
}
List<QueryImeiVO> imeiVOList = query.select(Projections.bean List<QueryImeiVO> imeiVOList = query.select(Projections.bean
(QueryImeiVO.class, vivoBackdata.imei, vivoBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(vivoBackdata).where (QueryImeiVO.class, vivoBackdata.imei, vivoBackdata.tag, dateExpr.as(SqlConstant.CREATE_TIME))).distinct().from(vivoBackdata).where
(vivoBackdata.tag.in(tagList).and(vivoBackdata.imei.ne(CharSequenceUtil.EMPTY).and(vivoBackdata.imei.ne(DataConstant.IMEI_NULL_TAG)).and(vivoBackdata.imei.ne (vivoBackdata.tag.in(tagList).and(vivoBackdata.imei.ne(CharSequenceUtil.EMPTY).and(vivoBackdata.imei.ne(DataConstant.IMEI_NULL_TAG)).and(vivoBackdata.imei.ne

@ -37,9 +37,8 @@ public class DeleteDeliveryDataTask {
/** /**
* *
*/ */
@Scheduled(cron = "0 0 5 * * ?") // @Scheduled(cron = "0 0 5 * * ?")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void deleteDataTask() { public void deleteDataTask() {
for (TableEnum value : TableEnum.values()) { for (TableEnum value : TableEnum.values()) {

@ -51,7 +51,7 @@ public class TfSourceTaskNew {
@Value("${tf.source.path}") @Value("${tf.source.path}")
private String path; private String path;
@Scheduled(cron = "0 0 1 * * ? ") // @Scheduled(cron = "0 0 1 * * ? ")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void compressSourceJlV1() { public void compressSourceJlV1() {
log.info("++++++++++++++++++++++source jlv1 compress start time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++source jlv1 compress start time {} ++++++++++++++++", DateUtil.now());
@ -62,7 +62,7 @@ public class TfSourceTaskNew {
log.info("++++++++++++++++++++++TfSource jlv1 Sync end time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++TfSource jlv1 Sync end time {} ++++++++++++++++", DateUtil.now());
} }
@Scheduled(cron = "0 0 2 * * ? ") // @Scheduled(cron = "0 0 2 * * ? ")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void compressSourceJlV2() { public void compressSourceJlV2() {
log.info("++++++++++++++++++++++source jlv2 compress start time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++source jlv2 compress start time {} ++++++++++++++++", DateUtil.now());
@ -73,7 +73,7 @@ public class TfSourceTaskNew {
log.info("++++++++++++++++++++++TfSource jlv2 Sync end time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++TfSource jlv2 Sync end time {} ++++++++++++++++", DateUtil.now());
} }
@Scheduled(cron = "0 0 3 * * ? ") // @Scheduled(cron = "0 0 3 * * ? ")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void compressSourceGdt() { public void compressSourceGdt() {
log.info("++++++++++++++++++++++source gdt compress start time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++source gdt compress start time {} ++++++++++++++++", DateUtil.now());
@ -84,7 +84,7 @@ public class TfSourceTaskNew {
log.info("++++++++++++++++++++++TfSource gdt Sync end time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++TfSource gdt Sync end time {} ++++++++++++++++", DateUtil.now());
} }
@Scheduled(cron = "0 0 4 * * ? ") // @Scheduled(cron = "0 0 4 * * ? ")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void compressSourceKs() { public void compressSourceKs() {
log.info("++++++++++++++++++++++source ks compress start time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++source ks compress start time {} ++++++++++++++++", DateUtil.now());
@ -95,7 +95,7 @@ public class TfSourceTaskNew {
log.info("++++++++++++++++++++++TfSource ks Sync end time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++TfSource ks Sync end time {} ++++++++++++++++", DateUtil.now());
} }
@Scheduled(cron = "0 0 5 * * ? ") // @Scheduled(cron = "0 0 5 * * ? ")
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void compressSourceBd() { public void compressSourceBd() {
log.info("++++++++++++++++++++++source bd compress start time {} ++++++++++++++++", DateUtil.now()); log.info("++++++++++++++++++++++source bd compress start time {} ++++++++++++++++", DateUtil.now());

Loading…
Cancel
Save