摊铺大屏
This commit is contained in:
parent
c6ee755132
commit
7bb4abe584
@ -1,6 +1,7 @@
|
||||
package com.zhgd.xmgl.modules.pave.controller;
|
||||
|
||||
import com.zhgd.xmgl.modules.pave.entity.PaveDev;
|
||||
import com.zhgd.xmgl.modules.pave.entity.vo.CountPaveDevVo;
|
||||
import com.zhgd.xmgl.modules.pave.service.IPaveDevService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
@ -136,4 +137,13 @@ public class PaveDevController {
|
||||
return result;
|
||||
}
|
||||
|
||||
@ApiOperation(value = "统计路面摊铺", notes = "统计路面摊铺", httpMethod = "POST")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "projectSn", value = "项目sn", paramType = "body", required = true, dataType = "String"),
|
||||
})
|
||||
@PostMapping(value = "/countPaveDev")
|
||||
public Result<CountPaveDevVo> countPaveDev(@ApiIgnore @RequestBody HashMap<String, Object> paramMap) {
|
||||
return Result.success(paveDevService.countPaveDev(paramMap));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -4,6 +4,7 @@ import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
@ -98,4 +99,15 @@ public class PaveDev implements Serializable {
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "更新时间 yyyy-MM-dd HH:mm:ss")
|
||||
private java.util.Date updateDate;
|
||||
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ApiModelProperty(value = "上次数据上传时间 yyyy-MM-dd HH:mm:ss")
|
||||
private java.util.Date lastDataTime;
|
||||
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "设备在线状态(0.离线 1.在线)")
|
||||
private java.lang.Integer devOnline;
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "最新的路面摊铺-记录")
|
||||
private PaveRecord newestRecord;
|
||||
}
|
||||
|
||||
@ -0,0 +1,12 @@
|
||||
package com.zhgd.xmgl.modules.pave.entity.vo;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class CountPaveDevVo {
|
||||
@ApiModelProperty(value = "路面摊铺设备数量")
|
||||
private java.lang.Integer devNum;
|
||||
@ApiModelProperty(value = "路面摊铺在线设备数量")
|
||||
private java.lang.Integer onlineDevNum;
|
||||
}
|
||||
@ -1,8 +1,17 @@
|
||||
package com.zhgd.xmgl.modules.pave.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.pave.entity.PaveDev;
|
||||
import com.zhgd.xmgl.modules.pave.entity.vo.CountPaveDevVo;
|
||||
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;
|
||||
|
||||
/**
|
||||
* @Description: 路面摊铺-设备
|
||||
@ -13,4 +22,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
@Mapper
|
||||
public interface PaveDevMapper extends BaseMapper<PaveDev> {
|
||||
|
||||
IPage<PaveDev> queryList(Page<PaveDev> page, @Param(Constants.WRAPPER) QueryWrapper<PaveDev> queryWrapper);
|
||||
|
||||
List<PaveDev> queryList(@Param(Constants.WRAPPER) QueryWrapper<PaveDev> queryWrapper);
|
||||
|
||||
CountPaveDevVo countPaveDev(HashMap<String, Object> paramMap);
|
||||
}
|
||||
|
||||
@ -1,4 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.zhgd.xmgl.modules.pave.mapper.PaveDevMapper">
|
||||
<resultMap id="paveDevRm" type="com.zhgd.xmgl.modules.pave.entity.PaveDev" autoMapping="true">
|
||||
<id column="id" property="id"/>
|
||||
<association property="newestRecord" javaType="com.zhgd.xmgl.modules.pave.entity.PaveRecord" columnPrefix="pr_"
|
||||
autoMapping="true">
|
||||
<id column="id" property="id"/>
|
||||
</association>
|
||||
</resultMap>
|
||||
<select id="queryList" resultMap="paveDevRm">
|
||||
select pd.*,IFNULL(((case
|
||||
when round((UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(pd.last_data_time)) / 60) <= 30 then 1
|
||||
else 0 end)), 0) devOnline,
|
||||
pr.id as pr_id,
|
||||
pr.dev_name as pr_dev_name,
|
||||
pr.dev_sn as pr_dev_sn,
|
||||
pr.pave_speed as pr_pave_speed,
|
||||
pr.average_pave_temp as pr_average_pave_temp,
|
||||
pr.average_pave_thickness as pr_average_pave_thickness,
|
||||
pr.amplitude as pr_amplitude,
|
||||
pr.frequency as pr_frequency,
|
||||
pr.geographical_longitude as pr_geographical_longitude,
|
||||
pr.geographical_latitude as pr_geographical_latitude,
|
||||
pr.pave_time as pr_pave_time,
|
||||
pr.sensor1_pave_temp as pr_sensor1_pave_temp,
|
||||
pr.sensor2_pave_temp as pr_sensor2_pave_temp,
|
||||
pr.sensor3_pave_temp as pr_sensor3_pave_temp,
|
||||
pr.sensor4_pave_temp as pr_sensor4_pave_temp,
|
||||
pr.sensor5_pave_temp as pr_sensor5_pave_temp,
|
||||
pr.sensor6_pave_temp as pr_sensor6_pave_temp,
|
||||
pr.sensor7_pave_temp as pr_sensor7_pave_temp,
|
||||
pr.sensor8_pave_temp as pr_sensor8_pave_temp,
|
||||
pr.sensor9_pave_temp as pr_sensor9_pave_temp,
|
||||
pr.sensor10_pave_temp as pr_sensor10_pave_temp,
|
||||
pr.sensor1_pave_thickness as pr_sensor1_pave_thickness,
|
||||
pr.sensor2_pave_thickness as pr_sensor2_pave_thickness,
|
||||
pr.sensor3_pave_thickness as pr_sensor3_pave_thickness,
|
||||
pr.sensor4_pave_thickness as pr_sensor4_pave_thickness,
|
||||
pr.project_sn as pr_project_sn,
|
||||
pr.create_date as pr_create_date,
|
||||
pr.update_date as pr_update_date
|
||||
from pave_dev pd
|
||||
left join (
|
||||
select t1.*
|
||||
from pave_record t1
|
||||
join (
|
||||
select dev_sn, max(id) id
|
||||
from pave_record
|
||||
group by dev_sn
|
||||
) t2 on t2.id = t1.id
|
||||
) pr on pr.dev_sn = pd.dev_sn and pd.project_sn=pd.project_sn
|
||||
${ew.customSqlSegment}
|
||||
</select>
|
||||
<select id="countPaveDev" resultType="com.zhgd.xmgl.modules.pave.entity.vo.CountPaveDevVo">
|
||||
select
|
||||
count(*) devNum,
|
||||
IFNULL((sum(case
|
||||
when round((UNIX_TIMESTAMP(now()) - UNIX_TIMESTAMP(last_data_time)) / 60) <= 30 then 1
|
||||
else 0 end)), 0) onlineDevNum
|
||||
from pave_dev
|
||||
where 1=1
|
||||
<if test="projectSn != null and projectSn != ''">
|
||||
and project_sn = #{projectSn}
|
||||
</if>
|
||||
<if test="devSn != null and devSn != ''">
|
||||
and dev_sn = #{devSn}
|
||||
</if>
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@ -3,6 +3,7 @@ package com.zhgd.xmgl.modules.pave.service;
|
||||
import com.zhgd.xmgl.modules.pave.entity.PaveDev;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.zhgd.xmgl.modules.pave.entity.vo.CountPaveDevVo;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@ -22,4 +23,6 @@ public interface IPaveDevService extends IService<PaveDev> {
|
||||
void add(PaveDev paveDev);
|
||||
|
||||
void edit(PaveDev paveDev);
|
||||
|
||||
CountPaveDevVo countPaveDev(HashMap<String, Object> paramMap);
|
||||
}
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package com.zhgd.xmgl.modules.pave.service.impl;
|
||||
|
||||
import com.zhgd.xmgl.modules.pave.entity.PaveDev;
|
||||
import com.zhgd.xmgl.modules.pave.entity.vo.CountPaveDevVo;
|
||||
import com.zhgd.xmgl.modules.pave.mapper.PaveDevMapper;
|
||||
import com.zhgd.xmgl.modules.pave.service.IPaveDevService;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -34,7 +35,7 @@ public class PaveDevServiceImpl extends ServiceImpl<PaveDevMapper, PaveDev> impl
|
||||
public IPage<PaveDev> queryPageList(HashMap<String, Object> paramMap) {
|
||||
QueryWrapper<PaveDev> queryWrapper = getQueryWrapper(paramMap);
|
||||
Page<PaveDev> page = PageUtil.getPage(paramMap);
|
||||
IPage<PaveDev> pageList = this.page(page, queryWrapper);
|
||||
IPage<PaveDev> pageList = baseMapper.queryList(page, queryWrapper);
|
||||
pageList.setRecords(dealList(pageList.getRecords()));
|
||||
return pageList;
|
||||
}
|
||||
@ -42,11 +43,11 @@ public class PaveDevServiceImpl extends ServiceImpl<PaveDevMapper, PaveDev> impl
|
||||
@Override
|
||||
public List<PaveDev> queryList(HashMap<String, Object> paramMap) {
|
||||
QueryWrapper<PaveDev> queryWrapper = getQueryWrapper(paramMap);
|
||||
return dealList(this.list(queryWrapper));
|
||||
return dealList(baseMapper.queryList(queryWrapper));
|
||||
}
|
||||
|
||||
private QueryWrapper<PaveDev> getQueryWrapper(HashMap<String, Object> paramMap) {
|
||||
String alias = "";
|
||||
String alias = "pd.";
|
||||
QueryWrapper<PaveDev> queryWrapper = QueryGenerator.initPageQueryWrapper(PaveDev.class, paramMap, alias);
|
||||
queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(PaveDev::getId));
|
||||
return queryWrapper;
|
||||
@ -66,4 +67,9 @@ public class PaveDevServiceImpl extends ServiceImpl<PaveDevMapper, PaveDev> impl
|
||||
public void edit(PaveDev paveDev) {
|
||||
baseMapper.updateById(paveDev);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CountPaveDevVo countPaveDev(HashMap<String, Object> paramMap) {
|
||||
return baseMapper.countPaveDev(paramMap);
|
||||
}
|
||||
}
|
||||
|
||||
@ -226,6 +226,7 @@ public class WeighInfoController {
|
||||
@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 = "/countWeighInfoGoodsName")
|
||||
public Result<SectorVo> countWeighInfoGoodsName(@ApiIgnore @RequestBody HashMap<String, Object> paramMap) {
|
||||
|
||||
@ -37,7 +37,7 @@
|
||||
wp.empty_pic2,
|
||||
wp.empty_pic3,
|
||||
wp.empty_pic4,
|
||||
wp.add_date_time,
|
||||
wp.gross_time,
|
||||
wp.mod_date_time,
|
||||
wp.remarks
|
||||
FROM weigh_info wi
|
||||
@ -116,6 +116,15 @@
|
||||
select goods_name name,count(*) count
|
||||
from weigh_info
|
||||
where project_sn=#{projectSn}
|
||||
<if test="type == '1'.toString()">
|
||||
and gross_time > current_date
|
||||
</if>
|
||||
<if test="type == '2'.toString()">
|
||||
and gross_time > date_sub(gross_time,interval 6 day)
|
||||
</if>
|
||||
<if test="type == '3'.toString()">
|
||||
and gross_time > date_sub(gross_time,interval 29 day)
|
||||
</if>
|
||||
group by goods_name
|
||||
order by count
|
||||
</select>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user