From 46ab8d07486f265a36cdcc75b7fe5d8a9812a471 Mon Sep 17 00:00:00 2001 From: guo Date: Sat, 2 Dec 2023 17:16:10 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/entity/vo/FlexibleBigScreenVo.java | 86 +++++++++++++++++++ .../xmgl/base/entity/vo/MultiSectorVo.java | 18 ---- ...MultiSectorOne.java => MultiTrendOne.java} | 11 ++- .../xmgl/base/entity/vo/MultiTrendVo.java | 44 ++++++++++ .../controller/SmartGroutDataController.java | 52 ++--------- .../mapper/SmartGroutDataMapper.java | 3 + .../mapper/xml/SmartGroutDataMapper.xml | 11 ++- .../service/ISmartGroutDataService.java | 3 + .../impl/SmartGroutDataServiceImpl.java | 24 +++++- .../StableWaterMixStationDataController.java | 33 ------- .../entity/StableWaterMixStationData.java | 6 ++ .../entity/StableWaterMixStationDev.java | 12 +-- .../StableWaterMixStationDataMapper.java | 10 +++ .../xml/StableWaterMixStationDataMapper.xml | 5 ++ .../StableWaterMixStationDataServiceImpl.java | 14 ++- .../xmgl/task/StableWaterMixStationTask.java | 34 +++++++- .../java/com/zhgd/xmgl/util/DateUtils.java | 13 ++- 17 files changed, 268 insertions(+), 111 deletions(-) create mode 100644 src/main/java/com/zhgd/xmgl/base/entity/vo/FlexibleBigScreenVo.java delete mode 100644 src/main/java/com/zhgd/xmgl/base/entity/vo/MultiSectorVo.java rename src/main/java/com/zhgd/xmgl/base/entity/vo/{MultiSectorOne.java => MultiTrendOne.java} (61%) create mode 100644 src/main/java/com/zhgd/xmgl/base/entity/vo/MultiTrendVo.java diff --git a/src/main/java/com/zhgd/xmgl/base/entity/vo/FlexibleBigScreenVo.java b/src/main/java/com/zhgd/xmgl/base/entity/vo/FlexibleBigScreenVo.java new file mode 100644 index 000000000..fe8785dfe --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/base/entity/vo/FlexibleBigScreenVo.java @@ -0,0 +1,86 @@ +package com.zhgd.xmgl.base.entity.vo; + +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUtil; +import lombok.Data; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; + +/** + * 自己定义的灵活的大屏 + */ +@Data +public class FlexibleBigScreenVo { + /* + eg: +{ + "dimensions": [ + "月份", + "合格数", + "不合格数" + ], + "source": [ + { + "月份": "月份1", + "合格数": 120, + "不合格数": 130 + } + ] +} + */ + /** + * 维度 + */ + private List dimensions; + /** + * 源数据 + */ + private List> source; + + /** + * 补充空的日期和初始值 + * + * @param rtVo FlexibleBigScreenVo + * @param days 日期的list + * @param format 需要转换的时间格式 + * @return + */ + public static FlexibleBigScreenVo fillTrendVos(FlexibleBigScreenVo rtVo, List days, String format) { + List dimensions = rtVo.getDimensions(); + String timeKey = dimensions.get(0); + Map> voMap = rtVo.getSource().stream().collect(Collectors.toMap(o -> o.get(timeKey).toString(), Function.identity())); + List> rtList = new ArrayList<>(); + for (String day : days) { + HashMap vo = voMap.get(day); + if (vo == null) { + vo = new HashMap(); + vo.put(timeKey, day); + for (int i = 1; i < dimensions.size(); i++) { + String key = dimensions.get(i); + vo.put(key, 0); + } + } + vo.put(timeKey, DateUtil.format(parse(vo.get(timeKey).toString(), format), format)); + rtList.add(vo); + } + return rtVo; + } + + /** + * @param str + * @param format + * @return + */ + private static DateTime parse(String str, String format) { + if ("yyyy-MM".equals(format)) { + return DateUtil.parse(str, format); + } + return DateUtil.parse(str); + } +} + diff --git a/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiSectorVo.java b/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiSectorVo.java deleted file mode 100644 index 3a3eb9da2..000000000 --- a/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiSectorVo.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.zhgd.xmgl.base.entity.vo; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.List; - -/** - * 多列扇形图表 - */ -@Data -public class MultiSectorVo { - @ApiModelProperty("x轴") - private List x; - @ApiModelProperty("y轴数据") - List data; - -} diff --git a/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiSectorOne.java b/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiTrendOne.java similarity index 61% rename from src/main/java/com/zhgd/xmgl/base/entity/vo/MultiSectorOne.java rename to src/main/java/com/zhgd/xmgl/base/entity/vo/MultiTrendOne.java index f2bf260ae..c626996c8 100644 --- a/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiSectorOne.java +++ b/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiTrendOne.java @@ -1,14 +1,23 @@ package com.zhgd.xmgl.base.entity.vo; import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; import lombok.Data; +import lombok.NoArgsConstructor; import java.util.List; +/** + * 单列图表y轴 + */ @Data -public class MultiSectorOne { +@AllArgsConstructor +@NoArgsConstructor +public class MultiTrendOne { @ApiModelProperty("名称") private String name; @ApiModelProperty("数值") private List data; + + } diff --git a/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiTrendVo.java b/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiTrendVo.java new file mode 100644 index 000000000..b3775e9f2 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/base/entity/vo/MultiTrendVo.java @@ -0,0 +1,44 @@ +package com.zhgd.xmgl.base.entity.vo; + +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.function.Function; +import java.util.stream.Collectors; + +/** + * 多列图表带总数 + */ +@Data +public class MultiTrendVo { + @ApiModelProperty("x轴") + private List x; + @ApiModelProperty("y轴数据") + List data; + @ApiModelProperty("总数") + @JsonInclude(JsonInclude.Include.NON_NULL) + private String count; + + /** + * @param dataList 数据list + * @param allList x的list + * @return + */ + public static List fillData(List dataList, List allList) { + ArrayList list = new ArrayList<>(); + Map map = dataList.stream().collect(Collectors.toMap(trendVo -> trendVo.getX(), Function.identity(), (o, o2) -> o)); + for (String s : allList) { + TrendVo vo = map.get(s); + if (vo != null) { + list.add(vo.getY()); + } else { + list.add("0"); + } + } + return list; + } +} diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/controller/SmartGroutDataController.java b/src/main/java/com/zhgd/xmgl/modules/smartgrout/controller/SmartGroutDataController.java index 33cd8355b..a63e5dbd0 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/controller/SmartGroutDataController.java +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/controller/SmartGroutDataController.java @@ -1,5 +1,6 @@ package com.zhgd.xmgl.modules.smartgrout.controller; +import com.zhgd.xmgl.base.entity.vo.FlexibleBigScreenVo; import com.zhgd.xmgl.modules.smartgrout.entity.SmartGroutData; import com.zhgd.xmgl.modules.smartgrout.service.ISmartGroutDataService; import io.swagger.annotations.Api; @@ -12,27 +13,15 @@ import java.util.HashMap; import springfox.documentation.annotations.ApiIgnore; import java.util.List; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import com.zhgd.jeecg.common.api.vo.Result; -import com.zhgd.jeecg.common.system.query.QueryGenerator; -import com.zhgd.jeecg.common.util.oConvertUtils; import org.apache.commons.collections.MapUtils; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import lombok.extern.slf4j.Slf4j; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import org.springframework.web.servlet.ModelAndView; import com.alibaba.fastjson.JSON; @@ -149,37 +138,14 @@ public class SmartGroutDataController { return result; } - /** - * 导出excel - * - * @param request - * @param response - */ - @ApiOperation(value = "导出excel智能压浆-数据信息", notes = "导出excel智能压浆-数据信息", httpMethod = "POST") - @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) { - // Step.1 组装查询条件 - QueryWrapper queryWrapper = null; - try { - String paramsStr = request.getParameter("paramsStr"); - if (oConvertUtils.isNotEmpty(paramsStr)) { - String deString = URLDecoder.decode(paramsStr, "UTF-8"); - SmartGroutData smartGroutData = JSON.parseObject(deString, SmartGroutData.class); - queryWrapper = QueryGenerator.initQueryWrapper(smartGroutData, request.getParameterMap()); - } - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } - - //Step.2 AutoPoi 导出Excel - ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); - List pageList = smartGroutDataService.list(queryWrapper); - //导出文件名称 - mv.addObject(NormalExcelConstants.FILE_NAME, "智能压浆-数据列表"); - mv.addObject(NormalExcelConstants.CLASS, SmartGroutData.class); - mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("智能压浆-数据列表数据", "导出人:Jeecg", "导出信息")); - mv.addObject(NormalExcelConstants.DATA_LIST, pageList); - return mv; + @ApiOperation(value = "统计压浆合格情况", notes = "统计压浆合格情况", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "query", required = true, dataType = "String"), + @ApiImplicitParam(name = "type", value = "类型:1每月", paramType = "query", required = true, dataType = "String"), + }) + @PostMapping(value = "/countStatus") + public Result countStatus(@ApiIgnore @RequestBody HashMap paramMap) { + return Result.success(smartGroutDataService.countStatus(paramMap)); } } diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutDataMapper.java b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutDataMapper.java index ce17c1d6f..776c952ba 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutDataMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutDataMapper.java @@ -9,6 +9,7 @@ import org.apache.ibatis.annotations.Mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; +import java.util.HashMap; import java.util.List; /** @@ -23,4 +24,6 @@ public interface SmartGroutDataMapper extends BaseMapper { List queryList(QueryWrapper queryWrapper); IPage queryList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + List> countStatus(HashMap paramMap); } diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutDataMapper.xml b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutDataMapper.xml index aa5051b4d..583fcc7c6 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutDataMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutDataMapper.xml @@ -2,8 +2,17 @@ + + diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutDataService.java b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutDataService.java index cf8e77ba9..54e6c67b9 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutDataService.java +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutDataService.java @@ -1,5 +1,6 @@ package com.zhgd.xmgl.modules.smartgrout.service; +import com.zhgd.xmgl.base.entity.vo.FlexibleBigScreenVo; import com.zhgd.xmgl.modules.smartgrout.entity.SmartGroutData; import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -20,4 +21,6 @@ public interface ISmartGroutDataService extends IService { List queryList(HashMap paramMap); void add(SmartGroutData smartGroutData); + + FlexibleBigScreenVo countStatus(HashMap paramMap); } diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutDataServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutDataServiceImpl.java index e3fc18fc2..f6ed05781 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutDataServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutDataServiceImpl.java @@ -16,15 +16,18 @@ import com.zhgd.xmgl.modules.smartgrout.mapper.SmartGroutDataMapper; import com.zhgd.xmgl.modules.smartgrout.mapper.SmartGroutDevMapper; import com.zhgd.xmgl.modules.smartgrout.mapper.SmartGroutSteelBeamDataMapper; import com.zhgd.xmgl.modules.smartgrout.service.ISmartGroutDataService; -import com.zhgd.xmgl.modules.smarttension.entity.SmartTensionDev; +import com.zhgd.xmgl.util.DateUtils; import com.zhgd.xmgl.util.PageUtil; import com.zhgd.xmgl.util.RefUtil; +import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.HashMap; import java.util.List; +import java.util.Objects; /** * @Description: 智能压浆-数据 @@ -83,6 +86,25 @@ public class SmartGroutDataServiceImpl extends ServiceImpl paramMap) { + Integer type = MapUtils.getInteger(paramMap, "type"); + if (Objects.equals(1, type)) { + FlexibleBigScreenVo flexibleBigScreenVo = new FlexibleBigScreenVo(); + List> source = baseMapper.countStatus(paramMap); + List dimensions = new ArrayList<>(); + dimensions.add("月份"); + dimensions.add("合格"); + dimensions.add("不合格"); + flexibleBigScreenVo.setDimensions(dimensions); + flexibleBigScreenVo.setSource(source); + List strList = DateUtils.getDateStrList(500, "月份M"); + FlexibleBigScreenVo.fillTrendVos(flexibleBigScreenVo, strList, "月份M"); + return flexibleBigScreenVo; + } + return null; + } + private QueryWrapper getQueryWrapper(HashMap paramMap) { String alias = "sgd."; QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(SmartGroutData.class, paramMap, alias); diff --git a/src/main/java/com/zhgd/xmgl/modules/stablewater/controller/StableWaterMixStationDataController.java b/src/main/java/com/zhgd/xmgl/modules/stablewater/controller/StableWaterMixStationDataController.java index 9f8563041..5b08c79e7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/stablewater/controller/StableWaterMixStationDataController.java +++ b/src/main/java/com/zhgd/xmgl/modules/stablewater/controller/StableWaterMixStationDataController.java @@ -141,37 +141,4 @@ public class StableWaterMixStationDataController { return result; } - /** - * 导出excel - * - * @param request - * @param response - */ - @ApiOperation(value = "导出excel水稳拌合站数据信息", notes = "导出excel水稳拌合站数据信息", httpMethod = "POST") - @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) { - // Step.1 组装查询条件 - QueryWrapper queryWrapper = null; - try { - String paramsStr = request.getParameter("paramsStr"); - if (oConvertUtils.isNotEmpty(paramsStr)) { - String deString = URLDecoder.decode(paramsStr, "UTF-8"); - StableWaterMixStationData stableWaterMixStationData = JSON.parseObject(deString, StableWaterMixStationData.class); - queryWrapper = QueryGenerator.initQueryWrapper(stableWaterMixStationData, request.getParameterMap()); - } - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } - - //Step.2 AutoPoi 导出Excel - ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); - List pageList = stableWaterMixStationDataService.list(queryWrapper); - //导出文件名称 - mv.addObject(NormalExcelConstants.FILE_NAME, "水稳拌合站数据列表"); - mv.addObject(NormalExcelConstants.CLASS, StableWaterMixStationData.class); - mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("水稳拌合站数据列表数据", "导出人:Jeecg", "导出信息")); - mv.addObject(NormalExcelConstants.DATA_LIST, pageList); - return mv; - } - } diff --git a/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationData.java b/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationData.java index 986f70299..c87432381 100644 --- a/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationData.java +++ b/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationData.java @@ -191,6 +191,9 @@ public class StableWaterMixStationData implements Serializable { @Excel(name = "删除标识 Y已删除,N未删除", width = 15) @ApiModelProperty(value = "删除标识 Y已删除,N未删除") private java.lang.String scbz; + @ApiModelProperty(value = "删除标识名称") + private java.lang.String scbzName; + /** * 生产时间 / 发料时间 */ @@ -232,4 +235,7 @@ public class StableWaterMixStationData implements Serializable { @ApiModelProperty(value = "水稳拌合站盘次数据列表") private List setDataList; + @TableField(exist = false) + @ApiModelProperty(value = "设备名称") + private java.lang.String devName; } diff --git a/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationDev.java b/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationDev.java index 08778d29b..9846beb16 100644 --- a/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationDev.java +++ b/src/main/java/com/zhgd/xmgl/modules/stablewater/entity/StableWaterMixStationDev.java @@ -36,8 +36,6 @@ public class StableWaterMixStationDev implements Serializable { @Excel(name = "设备sn", width = 15) @ApiModelProperty(value = "设备sn") private java.lang.String devSn; - @ApiModelProperty(value = "站点编码") - private java.lang.String siteEncoding; /** * 设备名称 @@ -83,12 +81,10 @@ public class StableWaterMixStationDev implements Serializable { @Excel(name = "拌合站位置", width = 15) @ApiModelProperty(value = "拌合站位置") private java.lang.String mixingStationLocation; - /** - * 负责人 - */ - @Excel(name = "负责人", width = 15) - @ApiModelProperty(value = "负责人") - private java.lang.String personInCharge; + @ApiModelProperty(value = "负责人id") + private Long dutyUserId; + @ApiModelProperty(value = "负责人名称") + private String dutyUserName; /** * 负责人电话 */ diff --git a/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/StableWaterMixStationDataMapper.java b/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/StableWaterMixStationDataMapper.java index 1b7a97c5b..28662ed88 100644 --- a/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/StableWaterMixStationDataMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/StableWaterMixStationDataMapper.java @@ -1,8 +1,15 @@ package com.zhgd.xmgl.modules.stablewater.mapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zhgd.xmgl.modules.stablewater.entity.StableWaterMixStationData; import org.apache.ibatis.annotations.Mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * @Description: 水稳拌合站数据 @@ -13,4 +20,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; @Mapper public interface StableWaterMixStationDataMapper extends BaseMapper { + List queryList(@Param(Constants.WRAPPER) QueryWrapper queryWrapper); + + IPage queryList(Page page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper); } diff --git a/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/xml/StableWaterMixStationDataMapper.xml b/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/xml/StableWaterMixStationDataMapper.xml index eacea50fd..950f45056 100644 --- a/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/xml/StableWaterMixStationDataMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/stablewater/mapper/xml/StableWaterMixStationDataMapper.xml @@ -1,4 +1,9 @@ + diff --git a/src/main/java/com/zhgd/xmgl/modules/stablewater/service/impl/StableWaterMixStationDataServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/stablewater/service/impl/StableWaterMixStationDataServiceImpl.java index c8048ae79..f2a72026f 100644 --- a/src/main/java/com/zhgd/xmgl/modules/stablewater/service/impl/StableWaterMixStationDataServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/stablewater/service/impl/StableWaterMixStationDataServiceImpl.java @@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional; import java.util.HashMap; import java.util.List; +import java.util.Objects; /** * @Description: 水稳拌合站数据 @@ -48,7 +49,7 @@ public class StableWaterMixStationDataServiceImpl extends ServiceImpl queryPageList(HashMap paramMap) { QueryWrapper queryWrapper = getQueryWrapper(paramMap); Page page = PageUtil.getPage(paramMap); - IPage pageList = this.page(page, queryWrapper); + IPage pageList = baseMapper.queryList(page, queryWrapper); pageList.setRecords(dealList(pageList.getRecords())); return pageList; } @@ -56,17 +57,24 @@ public class StableWaterMixStationDataServiceImpl extends ServiceImpl queryList(HashMap paramMap) { QueryWrapper queryWrapper = getQueryWrapper(paramMap); - return dealList(this.list(queryWrapper)); + return dealList(baseMapper.queryList(queryWrapper)); } private QueryWrapper getQueryWrapper(HashMap paramMap) { - String alias = ""; + String alias = "swmsd."; QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(StableWaterMixStationData.class, paramMap, alias); queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(StableWaterMixStationData::getId)); return queryWrapper; } private List dealList(List list) { + for (StableWaterMixStationData data : list) { + if (Objects.equals(data.getScbz(), "Y")) { + data.setScbzName("已删除"); + } else if (Objects.equals(data.getScbz(), "N")) { + data.setScbzName("未删除"); + } + } return list; } diff --git a/src/main/java/com/zhgd/xmgl/task/StableWaterMixStationTask.java b/src/main/java/com/zhgd/xmgl/task/StableWaterMixStationTask.java index 9caeb5b90..48a74aa45 100644 --- a/src/main/java/com/zhgd/xmgl/task/StableWaterMixStationTask.java +++ b/src/main/java/com/zhgd/xmgl/task/StableWaterMixStationTask.java @@ -2,7 +2,12 @@ package com.zhgd.xmgl.task; import cn.hutool.core.bean.BeanUtil; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.zhgd.xmgl.modules.stablewater.entity.StableWaterMixStationData; +import com.zhgd.xmgl.modules.stablewater.entity.StableWaterMixStationRawMaterialData; +import com.zhgd.xmgl.modules.stablewater.entity.StableWaterMixStationSetData; +import com.zhgd.xmgl.modules.stablewater.service.IStableWaterMixStationDataService; import com.zhgd.xmgl.util.ThirdPartRequestUtil; import lombok.extern.log4j.Log4j; import net.javacrumbs.shedlock.core.SchedulerLock; @@ -10,6 +15,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import java.util.ArrayList; +import java.util.List; import java.util.Objects; /** @@ -20,6 +27,9 @@ import java.util.Objects; public class StableWaterMixStationTask { @Autowired ThirdPartRequestUtil thirdPartRequestUtil; + @Autowired + IStableWaterMixStationDataService stableWaterMixStationDataService; + /** * 定时拉取广联达的搅拌站数据,https://xmgl.glodon.com/wl/docs/third_help/part2/openapi/pull/mixTotal.html @@ -32,7 +42,29 @@ public class StableWaterMixStationTask { //String rs = thirdPartRequestUtil.get(url); //JSONObject jo = JSON.parseObject(rs); //if (Objects.equals(jo.getBoolean("success"), true)) { - // BeanUtil.copyProperties(); + // JSONObject dataJson = jo.getJSONObject("data"); + // JSONArray bills = dataJson.getJSONArray("Bills"); + // for (Object bill : bills) { + // StableWaterMixStationData data = new StableWaterMixStationData(); + // List setDataList = new ArrayList<>(); + // data.setSetDataList(setDataList); + // BeanUtil.copyProperties(bill, data, true); + // JSONArray pcList = ((JSONObject) bill).getJSONArray("PCList"); + // for (Object pc : pcList) { + // StableWaterMixStationSetData setData = new StableWaterMixStationSetData(); + // BeanUtil.copyProperties(pc, setData, true); + // setDataList.add(setData); + // List rawMaterialDataList = new ArrayList<>(); + // setData.setRawMaterialDataList(rawMaterialDataList); + // JSONArray ycList = ((JSONObject) pc).getJSONArray("YCList"); + // for (Object yc : ycList) { + // StableWaterMixStationRawMaterialData rawMaterialData = new StableWaterMixStationRawMaterialData(); + // BeanUtil.copyProperties(yc, rawMaterialData, true); + // rawMaterialDataList.add(rawMaterialData); + // } + // } + // stableWaterMixStationDataService.add(data); + // } //} } } diff --git a/src/main/java/com/zhgd/xmgl/util/DateUtils.java b/src/main/java/com/zhgd/xmgl/util/DateUtils.java index e3e96bb61..7c3759fc8 100644 --- a/src/main/java/com/zhgd/xmgl/util/DateUtils.java +++ b/src/main/java/com/zhgd/xmgl/util/DateUtils.java @@ -567,7 +567,7 @@ public class DateUtils { * * @param type 类型: * 10.近12小时,20.近24小时,30.近半天,40.近一天,50.近两天,60.近一周,70.近两周,80.近一个月,90.近半年,93.近一年 - * 100.今天,200.昨天,300.本周,400.本月,500.本年,600.去年 + * 100.今天,200.昨天,300.本周,400.本月,500.本年(每月),600.去年 * @param pattern 格式 如:yyyy-MM-dd HH:mm:ss * @return */ @@ -592,11 +592,20 @@ public class DateUtils { rtList.add(DateUtil.format(DateUtil.offsetMonth(beginDate, i), pattern)); } return rtList; + } else if (type == 500) { + ArrayList rtList = new ArrayList<>(); + DateTime beginDate = DateUtil.beginOfYear(DateTime.now()); + DateTime endDate = DateUtil.endOfYear(DateTime.now()); + long offset = DateUtil.betweenMonth(beginDate, endDate, true); + for (int i = 0; i < offset + 1; i++) { + rtList.add(DateUtil.format(DateUtil.offsetMonth(beginDate, i), pattern)); + } + return rtList; } return null; } public static void main(String[] args) { - System.out.println("2023-11-02".length()); + System.out.println(getDateStrList(500, "月份M")); } }