package cn.iocoder.yudao.module.mp.convert.statistics;
|
|
import cn.iocoder.yudao.module.mp.controller.admin.statistics.vo.MpStatisticsInterfaceSummaryRespVO;
|
import cn.iocoder.yudao.module.mp.controller.admin.statistics.vo.MpStatisticsUpstreamMessageRespVO;
|
import cn.iocoder.yudao.module.mp.controller.admin.statistics.vo.MpStatisticsUserCumulateRespVO;
|
import cn.iocoder.yudao.module.mp.controller.admin.statistics.vo.MpStatisticsUserSummaryRespVO;
|
import me.chanjar.weixin.mp.bean.datacube.WxDataCubeInterfaceResult;
|
import me.chanjar.weixin.mp.bean.datacube.WxDataCubeMsgResult;
|
import me.chanjar.weixin.mp.bean.datacube.WxDataCubeUserCumulate;
|
import me.chanjar.weixin.mp.bean.datacube.WxDataCubeUserSummary;
|
import org.mapstruct.Mapper;
|
import org.mapstruct.Mapping;
|
import org.mapstruct.Mappings;
|
import org.mapstruct.Named;
|
import org.mapstruct.factory.Mappers;
|
|
import java.time.LocalDate;
|
import java.time.LocalDateTime;
|
import java.time.format.DateTimeFormatter;
|
import java.util.List;
|
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
|
|
@Mapper
|
public interface MpStatisticsConvert {
|
|
MpStatisticsConvert INSTANCE = Mappers.getMapper(MpStatisticsConvert.class);
|
|
List<MpStatisticsUserSummaryRespVO> convertList01(List<WxDataCubeUserSummary> list);
|
|
List<MpStatisticsUserCumulateRespVO> convertList02(List<WxDataCubeUserCumulate> list);
|
|
List<MpStatisticsUpstreamMessageRespVO> convertList03(List<WxDataCubeMsgResult> list);
|
|
@Mappings({
|
@Mapping(target = "refDate", expression = "java(dateFormat0(bean.getRefDate()))"),
|
@Mapping(source = "msgUser", target = "messageUser"),
|
@Mapping(source = "msgCount", target = "messageCount"),
|
})
|
MpStatisticsUpstreamMessageRespVO convert(WxDataCubeMsgResult bean);
|
|
List<MpStatisticsInterfaceSummaryRespVO> convertList04(List<WxDataCubeInterfaceResult> list);
|
|
@Mapping(target = "refDate", expression = "java(dateFormat0(bean.getRefDate()))")
|
MpStatisticsInterfaceSummaryRespVO convert(WxDataCubeInterfaceResult bean);
|
|
@Named("dateFormat0")
|
default LocalDateTime dateFormat0(String date) {
|
return LocalDate.parse(date, DateTimeFormatter.ofPattern(FORMAT_YEAR_MONTH_DAY)).atStartOfDay();
|
}
|
|
}
|