diff --git a/src/main/java/com/zhgd/xmgl/modules/rt/service/impl/RtWorkTicketServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/rt/service/impl/RtWorkTicketServiceImpl.java index 24cde61f9..87e822971 100644 --- a/src/main/java/com/zhgd/xmgl/modules/rt/service/impl/RtWorkTicketServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/rt/service/impl/RtWorkTicketServiceImpl.java @@ -110,7 +110,7 @@ public class RtWorkTicketServiceImpl extends ServiceImpl countStatus(@ApiIgnore @RequestBody HashMap paramMap) { return Result.success(smartGroutSteelBeamDataService.countStatus(paramMap)); } + + @ApiOperation(value = "统计钢束压浆合格率", notes = "统计钢束压浆合格率", httpMethod = "POST") + @ApiImplicitParams({ + @ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"), + @ApiImplicitParam(name = "type", value = "1今日2、7日3、30日", paramType = "body", required = true, dataType = "Integer"), + }) + @PostMapping(value = "/countStatusTrend") + public Result> countStatusTrend(@ApiIgnore @RequestBody HashMap paramMap) { + return Result.success(smartGroutSteelBeamDataService.countStatusTrend(paramMap)); + } } diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutSteelBeamDataMapper.java b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutSteelBeamDataMapper.java index 075434966..739c22030 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutSteelBeamDataMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/SmartGroutSteelBeamDataMapper.java @@ -1,5 +1,6 @@ package com.zhgd.xmgl.modules.smartgrout.mapper; +import com.zhgd.xmgl.base.entity.vo.TrendOneVo; import com.zhgd.xmgl.modules.smartgrout.entity.SmartGroutSteelBeamData; import org.apache.ibatis.annotations.Mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -17,4 +18,6 @@ import java.util.List; public interface SmartGroutSteelBeamDataMapper extends BaseMapper { List> countStatus(HashMap paramMap); + + List countStatusTrend(HashMap paramMap); } diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutSteelBeamDataMapper.xml b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutSteelBeamDataMapper.xml index 47ad3768b..b4f80e932 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutSteelBeamDataMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/mapper/xml/SmartGroutSteelBeamDataMapper.xml @@ -1,12 +1,37 @@ + - + select + + date_format(end_time, '%Y-%m-%d %H:00') x, + + + date_format(end_time, '%Y-%m-%d') x, + + + date_format(end_time, '%Y-%m-%d') x, + + ifnull(round(sum(if(status = 1, 1, 0))/count(*)*100,2), 0) y + from smart_grout_steel_beam_data + where project_sn = #{projectSn} + + and end_time > current_date + + + and end_time > date_sub(end_time, interval 6 day) + + + and end_time > date_sub(end_time, interval 29 day) + + group by x diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutSteelBeamDataService.java b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutSteelBeamDataService.java index a28117539..960c4ffeb 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutSteelBeamDataService.java +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/ISmartGroutSteelBeamDataService.java @@ -1,6 +1,7 @@ package com.zhgd.xmgl.modules.smartgrout.service; import com.zhgd.xmgl.base.entity.vo.FlexibleBigScreenVo; +import com.zhgd.xmgl.base.entity.vo.TrendOneVo; import com.zhgd.xmgl.modules.smartgrout.entity.SmartGroutSteelBeamData; import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -21,4 +22,6 @@ public interface ISmartGroutSteelBeamDataService extends IService queryList(HashMap paramMap); FlexibleBigScreenVo countStatus(HashMap paramMap); + + List countStatusTrend(HashMap paramMap); } diff --git a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutSteelBeamDataServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutSteelBeamDataServiceImpl.java index 4724b879d..f2e34feb0 100644 --- a/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutSteelBeamDataServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/smartgrout/service/impl/SmartGroutSteelBeamDataServiceImpl.java @@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.smartgrout.service.impl; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.TypeReference; import com.zhgd.xmgl.base.entity.vo.FlexibleBigScreenVo; +import com.zhgd.xmgl.base.entity.vo.TrendOneVo; import com.zhgd.xmgl.modules.smartgrout.entity.SmartGroutSteelBeamData; import com.zhgd.xmgl.modules.smartgrout.mapper.SmartGroutSteelBeamDataMapper; import com.zhgd.xmgl.modules.smartgrout.service.ISmartGroutSteelBeamDataService; @@ -67,6 +68,27 @@ public class SmartGroutSteelBeamDataServiceImpl extends ServiceImpl countStatusTrend(HashMap paramMap) { + Integer type = MapUtils.getInteger(paramMap, "type"); + String format = null; + List dateTimeStrList = null; + if (Objects.equals(type, 1)) { + format = "yyyy-MM-dd HH:00"; + dateTimeStrList = DateUtils.getDateTimeStrList(100, "yyyy-MM-dd HH:00"); + } else if (Objects.equals(type, 2)) { + format = "yyyy-MM-dd"; + dateTimeStrList = DateUtils.getDateTimeStrList(60, "yyyy-MM-dd"); + } else if (Objects.equals(type, 3)) { + format = "yyyy-MM-dd"; + dateTimeStrList = DateUtils.getDateTimeStrList(80, "yyyy-MM-dd"); + } else { + return null; + } + List list = baseMapper.countStatusTrend(paramMap); + return TrendOneVo.fillTrendVos(list, dateTimeStrList, format); + } + private QueryWrapper getQueryWrapper(HashMap paramMap) { QueryWrapper queryWrapper = QueryGenerator.initPageQueryWrapper(SmartGroutSteelBeamData.class, paramMap); queryWrapper.orderByDesc(RefUtil.fieldNameUlc(SmartGroutSteelBeamData::getId));