diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/enhance/example/report/xtsy/ZhxsqkPluginHZ.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/enhance/example/report/xtsy/ZhxsqkPluginHZ.java new file mode 100644 index 0000000..7433b7e --- /dev/null +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/enhance/example/report/xtsy/ZhxsqkPluginHZ.java @@ -0,0 +1,71 @@ + +package com.lideeyunji.core.framework.enhance.example.report.xtsy; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.ListUtil; +import cn.hutool.core.util.StrUtil; +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.lideeyunji.core.framework.config.aspect.enhancereport.model.EnhanceReportContext; +import com.lideeyunji.core.framework.config.aspect.enhancereport.plugin.ReportAroundAdvicePlugin; +import com.lideeyunji.core.framework.entity.NewGrBiSaAggMonthCount; +import com.lideeyunji.core.framework.entity.NewGrBiSaAggYearCount; +import com.lideeyunji.core.framework.service.INewGrBiSaAggMonthCountService; +import com.lideeyunji.core.framework.service.INewGrBiSaAggYearCountService; +import com.lideeyunji.tool.framework.yunji.model.ResultDataModel; +import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.IntStream; + +import static com.lideeyunji.core.framework.enhance.example.report.xtsy.ZhxsqkPlugin.setMonthOrderBy; + +/** + * 报表-综合销售表_剂型-插件 + */ +@Slf4j +@Component("zhxsqkPluginHZ") +public class ZhxsqkPluginHZ implements ReportAroundAdvicePlugin { + + + @Resource + INewGrBiSaAggMonthCountService newGrBiSaAggMonthCountService; + + @Override + public ResultDataModel executeAround(EnhanceReportContext enhanceContext) { + log.info("进入=======>zhxsqkPluginJx=======>execute"); + LocalDateTime now = LocalDateTime.now(); + String currentYear = Integer.toString(now.getYear()); + int currentMonth = now.getMonthValue(); + List monthList = IntStream.rangeClosed(1, currentMonth).boxed().collect(Collectors.toList()); + Map params = enhanceContext.getParam().getParams(); + List> records = newGrBiSaAggMonthCountService.selectNewGrBiSaAggGroupHZList(params); + for(Map record : records){ + if(!record.containsKey("zone_name") || StrUtil.isEmpty(record.get("zone_name").toString())){ + record.put("zone_name","-"); + } + if(!record.containsKey("position") || StrUtil.isEmpty(record.get("position").toString())){ + record.put("position","-"); + } + if(!record.containsKey("saler_name") || StrUtil.isEmpty(record.get("saler_name").toString())){ + record.put("saler_name","-"); + } + if(!record.containsKey("year_sa_money") || StrUtil.isEmpty(record.get("year_sa_money").toString())){ + record.put("year_sa_money","-"); + } + for (Integer month : monthList){ + if(!record.containsKey("month_sa_money_" + month) || StrUtil.isEmpty(record.get("month_sa_money_" + month).toString())){ + record.put("month_sa_money_" + month,"-"); + } + } + } + return ResultDataModel.fomatList(records); + } +} diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/NewGrBiSaAggMonthCountMapper.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/NewGrBiSaAggMonthCountMapper.java index 9324bee..5a49e7c 100644 --- a/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/NewGrBiSaAggMonthCountMapper.java +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/mapper/NewGrBiSaAggMonthCountMapper.java @@ -80,6 +80,16 @@ public interface NewGrBiSaAggMonthCountMapper extends BaseMapper selectNewGrBiSaAggGroupMonthList(@Param("dataSourceType") String dataSourceType, @Param("saAggParam") SaAggParam saAggParam, @Param("params") Map params, @Param("groupFieldList")List groupFieldList); + /** + * 批量查询综合销售情况明细列表 -汇总 + * + * @param saAggParam 综合销售情况明细参数 + * @return 综合销售情况明细集合 + */ + @DataPermission(enable = false) + @DS(value = "#dataSourceType") + public List> selectNewGrBiSaAggGroupHZList(@Param("dataSourceType") String dataSourceType, @Param("saAggParam") SaAggParam saAggParam, @Param("params") Map params); + /** * 批量查询综合销售情况明细列表 -月度 * diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/INewGrBiSaAggMonthCountService.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/INewGrBiSaAggMonthCountService.java index dd88039..e10fa5c 100644 --- a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/INewGrBiSaAggMonthCountService.java +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/INewGrBiSaAggMonthCountService.java @@ -68,6 +68,8 @@ public interface INewGrBiSaAggMonthCountService public List selectNewGrBiSaAggGroupMonthList(Map params, List groupFieldList); + public List> selectNewGrBiSaAggGroupHZList(Map params); + public List selectNewGrBiSaAggGroupNoMonthNoYearList(Map params, List groupFieldList); } diff --git a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/impl/NewGrBiSaAggMonthCountServiceImpl.java b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/impl/NewGrBiSaAggMonthCountServiceImpl.java index c74e2e2..e62e9c3 100644 --- a/lidee-core/src/main/java/com/lideeyunji/core/framework/service/impl/NewGrBiSaAggMonthCountServiceImpl.java +++ b/lidee-core/src/main/java/com/lideeyunji/core/framework/service/impl/NewGrBiSaAggMonthCountServiceImpl.java @@ -104,6 +104,13 @@ public class NewGrBiSaAggMonthCountServiceImpl extends ServiceImpl> selectNewGrBiSaAggGroupHZList(Map params){ + SaAggParam saAggParam = NewGrBiSaAggServiceImpl.createParam(params); + return this.baseMapper.selectNewGrBiSaAggGroupHZList(lideeYunJiBaseConstant.DS_ERP_BI_DATA, saAggParam,params); + } + @Override public List selectNewGrBiSaAggGroupNoMonthNoYearList(Map params, List groupFieldList){ SaAggParam saAggParam = NewGrBiSaAggServiceImpl.createParam(params); diff --git a/lidee-core/src/main/resources/mapper/framework/NewGrBiSaAggMonthCountMapper.xml b/lidee-core/src/main/resources/mapper/framework/NewGrBiSaAggMonthCountMapper.xml index 5c56f04..60b4c0c 100644 --- a/lidee-core/src/main/resources/mapper/framework/NewGrBiSaAggMonthCountMapper.xml +++ b/lidee-core/src/main/resources/mapper/framework/NewGrBiSaAggMonthCountMapper.xml @@ -1159,4 +1159,162 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + \ No newline at end of file