Commit e9b9e7d2 by wuchengwu

设备管理-增加管理员对于新出现的采集点IP查询功能

parent c6992705
......@@ -4,6 +4,7 @@ package com.founder.cjqx.controller;
import com.founder.cjqx.service.SysClientCsService;
import com.founder.cjqx.service.SysClientVpService;
import com.founder.model.*;
import com.founder.utils.DateFormatUtils;
import com.founder.utils.DateUtil;
import com.founder.utils.SysUitl;
import org.apache.commons.lang.StringUtils;
......@@ -196,6 +197,18 @@ public class SysClientVpController {
return resultMap;
}
/*
新增设备查询list
*/
@GetMapping("/xzVplist")
@ResponseBody
public ResultMap xzVplist( SysClientVp sysClientVp,HttpServletRequest request){
if(StringUtils.isBlank(sysClientVp.getMaxlrsjStr())){
sysClientVp.setMaxlrsjStr(DateFormatUtils.dateToStr(DateUtil.beforeMonth()));
}
ResultMap resultMap = sysClientVpService.vpNewPageList(sysClientVp);
return resultMap;
}
/*
保存用户
......
......@@ -12,6 +12,15 @@ import java.util.List;
@Mapper
public interface SysClientVpMapper {
List<SysClientVp> selectPageList(SysClientVp sysClientVp);
/**
* 查询时间段内新增设备信息系
* @param sysClientVp
* @return
*/
List<SysClientVp> vpNewPageList(SysClientVp sysClientVp);
int vpNewPageCount(SysClientVp sysClientVp);
List<SysClientVp> selectPagejktjList(SysClientVp sysClientVp);
List<SysClientVp> selectsbztPageList(SysClientVp sysClientVp);
......
......@@ -12,6 +12,14 @@ public interface SysClientVpService {
ResultMap ClientVpjkAll(SysClientVp SysClientVp);
ResultMap ClientVpZtjk(SysClientVp SysClientVp);
/**
* 查询时间段内新增设备信息系
* @param sysClientVp
* @return
*/
ResultMap vpNewPageList(SysClientVp sysClientVp);
SysClientVp getClientVp(SysClientVp sysClientVp);
XzxtRestResult SaveClientVp(SysClientVp sysClientVp);
XzxtRestResult SelectClientVp(String id);
......
......@@ -125,6 +125,16 @@ public class SysClientVpServiceImpl implements SysClientVpService {
}
@Override
public ResultMap vpNewPageList(SysClientVp sysClientVp) {
List<SysClientVp> sysClientVplist = sysClientVpMapper.vpNewPageList(sysClientVp);
ResultMap resultMap = new ResultMap();
int totals = sysClientVpMapper.vpNewPageCount(sysClientVp);
resultMap.setCount(totals);
resultMap.setData(sysClientVplist);
return resultMap;
}
@Override
public SysClientVp getClientVp(SysClientVp sysClientVp) {
SysClientVp sysClientVprst = new SysClientVp();
List<SysClientVp> sysClientVplist = sysClientVpMapper.selectClientVp(sysClientVp);
......
......@@ -64,6 +64,7 @@ public class DefaultViewConfig implements WebMvcConfigurer {
registry.addViewController("/files").setViewName("cjqx/files");
registry.addViewController("/sbcsglform").setViewName("cjqx/sbcsglform");
registry.addViewController("/sbztjkform").setViewName("cjqx/sbztjkform");
registry.addViewController("/sbxzform").setViewName("cjqx/sbxzform");
registry.addViewController("/echarts").setViewName("cjqx/echarts");
registry.setOrder(Ordered.HIGHEST_PRECEDENCE);
WebMvcConfigurer.super.addViewControllers(registry);
......
......@@ -174,6 +174,43 @@ public class SysClientVp extends PageBean{
private String gxsjStr; //更新时间
private String bz; //备注
private String rybh; //人员编号
private String lrdwmc; //录入单位名称
private String sfzc; //是否注册
private String lrr; //录入人
public String getRybh() {
return rybh;
}
public void setRybh(String rybh) {
this.rybh = rybh;
}
public String getLrdwmc() {
return lrdwmc;
}
public void setLrdwmc(String lrdwmc) {
this.lrdwmc = lrdwmc;
}
public String getSfzc() {
return sfzc;
}
public void setSfzc(String sfzc) {
this.sfzc = sfzc;
}
public String getLrr() {
return lrr;
}
public void setLrr(String lrr) {
this.lrr = lrr;
}
private String field;
private String order;
......
......@@ -7,6 +7,9 @@ import org.springframework.context.i18n.LocaleContextHolder;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.*;
/**
......@@ -204,7 +207,6 @@ public class DateUtil {
/**
* 将字符串格式yyyy/MM/dd HH24:MI:SS、yyyy/MM/dd 、yyyy/MM/dd HH24:MI:SS、yyyy/MM/dd格式 转换日期类型
* @author zhouwei
* @param strDate
* @return Date
*/
public static Date commonStringToDate(String time){
......@@ -353,6 +355,17 @@ public class DateUtil {
String minccsj = cal.get(Calendar.YEAR)+"-"+thismonth+"-01";
return convertStringToDate("yyyy-MM-dd",minccsj);
}
/**
* 查找上一个月
* @return
*/
public static Date beforeMonth(){
LocalDate date = LocalDate.now();
date = date.minusMonths(1);
ZonedDateTime zonedDateTime = date.atStartOfDay(ZoneId.systemDefault());
return Date.from(zonedDateTime.toInstant());
}
//获取今天的日期
public static Date getDate(){
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");
......
......@@ -347,6 +347,80 @@
WHERE RN <![CDATA[ >= ]]> ${begin}
</select>
<!-- 查询时间段内新增设备信息 -->
<select id="vpNewPageList" parameterType="com.founder.model.SysClientVp" resultMap="BaseResultMap">
SELECT * FROM
(
SELECT A.*, ROWNUM RN
FROM (
select ry.ip,
ry.RYBH as rybh,
ry.lrsj,
(select name from SYS_DICTITEM where CODE = ry.LRDWDM and GROUPID = 'CODE_UNIT') as lrdwmc,
nvl(vp.IP, 0) as sfzc,
(case
when (select TRUE_NAME from SYS_USER where ry.LRR = USERNAME) is not null
then (select TRUE_NAME from SYS_USER where ry.LRR = USERNAME)
else ry.LRR end) as lrr
from TB_RY_RYCJ ry,
(select IP, RYBH, LRSJ
from (select ROW_NUMBER() OVER (PARTITION BY IP ORDER BY LRSJ DESC) rn, IP, LRSJ, RYBH
from TB_RY_RYCJ
where IP not in (select ip
from (select count(*), ip
from TB_RY_RYCJ
where (scbz is null or scbz <![CDATA[ <>]]> '1')
and LRSJ <![CDATA[ <= ]]> to_date( #{maxlrsjStr},'YYYY-MM-DD')
and ip is not null
group by ip))
and (scbz is null or scbz <![CDATA[ <>]]> '1')
order by ip
)
where rn = 1
<if test="ip!=null and ip!=''">
and ip =#{ip, jdbcType=VARCHAR }
</if>
) ip
left join SYS_CLIENT_VP vp on ip.IP = substr((select utl_raw.cast_to_varchar2(utl_encode.base64_decode(
utl_raw.cast_to_raw(utl_raw.cast_to_varchar2(
utl_encode.base64_decode(utl_raw.cast_to_raw(vp.IP)))))) as ip
from dual), 1, instr((select utl_raw.cast_to_varchar2(
utl_encode.base64_decode(
utl_raw.cast_to_raw(
utl_raw.cast_to_varchar2(
utl_encode.base64_decode(utl_raw.cast_to_raw(vp.IP)))))) as ip
from dual), '{') - 1)
where ip.RYBH = ry.RYBH
order by ry.LRSJ desc
) A
WHERE ROWNUM <![CDATA[ <= ]]> ${end}
)
WHERE RN <![CDATA[ >= ]]> ${begin}
</select>
<!-- 通过条件分页查询,返回总记录数 人员录入时间 -->
<select id="vpNewPageCount" parameterType="com.founder.model.SysClientVp" resultType="java.lang.Integer">
select count(*)
from (select ROW_NUMBER() OVER (PARTITION BY IP ORDER BY LRSJ DESC) rn, IP, LRSJ, RYBH
from TB_RY_RYCJ
where IP not in (select ip
from (select count(*), ip
from TB_RY_RYCJ
where (scbz is null or scbz <![CDATA[ <>]]> '1')
and LRSJ <![CDATA[ <= ]]> to_date( #{maxlrsjStr},'YYYY-MM-DD')
and ip is not null
group by ip))
and (scbz is null or scbz <![CDATA[ <>]]> '1')
order by ip
)
where rn = 1
<if test="ip!=null and ip!=''">
and ip =#{ip, jdbcType=VARCHAR }
</if>
</select>
<!-- 通过设备状态监控管理查询 -->
<select id="selectsbztPageList" parameterType="com.founder.model.SysClientVp" resultMap="BaseResultMap">
SELECT *
......
......@@ -86,6 +86,10 @@
<li>
<a href="javascript:void(0)" onclick="menuCAClick('sbcsglform',this,'page40001')"><i class="iconfont icon-liuchengshuoming left"></i><font>设备厂商管理</font></a>
</li>
<li>
<a href="javascript:void(0)" onclick="menuCAClick('sbxzform',this,'page50001')"><i class="iconfont icon-shouhou left"></i><font>新增设备监控</font></a>
</li>
</ul>
</div>
......
......@@ -1205,7 +1205,6 @@
groupName.push(data[j].groupName);
}
console.log(result)
if(data!=null&&data!=""){
var chartDom = document.getElementById('swCharts');
......@@ -1267,7 +1266,6 @@
groupName.push(data[j].groupName);
}
console.log(result)
if(data!=null&&data!=""){
var chartDom = document.getElementById('hmCharts');
......@@ -1329,7 +1327,6 @@
groupName.push(data[j].groupName);
}
console.log(result)
if(data!=null&&data!=""){
var chartDom = document.getElementById('zjCharts');
......
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>设备审批管理</title>
<link rel="stylesheet" href="/static//css/font.css">
<link rel="stylesheet" href="/static/fenye/font-awesome.min.css" media="all">
<script type="text/javascript" src="/static/jquery/jquery.min.js"></script>
<link rel="stylesheet" href="/static/layui/css/layui.css" media="all">
<script type="text/javascript" src="/static/js/xadmin.js"></script>
<!--<script src="/static/layui/layui.js" charset="utf-8"></script>-->
<link rel="stylesheet" type="text/css" href="/static/easyui-window/css/easyui.css">
<link rel="stylesheet" type="text/css" href="/static/easyui-window/css/icon.css">
<script type="text/javascript" src="/static/easyui-window/js/jquery.easyui.min.js"></script>
<script type="text/javascript" src="/static/easyui-window/js/function.js"></script>
<!--- 代码框-->
<link rel="stylesheet" href="/static/rygl/css/dialog.css">
<link rel="stylesheet" href="/static/fenye/fenye.css" media="all">
</head>
<body>
<!--查询条件-->
<div class="xztitle">查询条件</div>
<form class="layui-form" action="" method="post" style="display: table;width: 100%;padding-top:10px;">
<input type="hidden" name="ssdwcode" id="ssdwcode" th:value="${session.User.getUnitcode()}" class="layui-input">
<div class="layui-form-item">
<label class="layui-form-label">IP:</label>
<div class="layui-input-block">
<input type="text" name="ip" id="ip" placeholder="请输入IP" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">查询时间:</label>
<div class="layui-input-block">
<input type="text" name="maxlrsjStr" id="maxlrsjStr" placeholder="请选择查询时间" autocomplete="off" class="layui-input dateType">
</div>
</div>
<div class="layui-form-item" style="clear: both;width: 100%;text-align: center;">
<div class="layui-input-block" style="margin-left:0px !important;">
<button class="layui-btn layui-btn-normal" onclick="return false;" data-type="reload" id="selectbyCondition" >查 询</button>
<input type="button" onclick="onClear()" class="layui-btn layui-btn-primary" value="重 置"></input>
</div>
</div>
</form>
<table class="layui-hide" id="test" lay-filter="test" width="98%"></table>
<script src="/static/layui/layui.js" charset="utf-8"></script>
<script src="/static/layui/layui.all.js" charset="utf-8"></script>
<script type="text/html" id="ifsbzt">
{{# if(d.sfzc == '0'){ }}
<input type="checkbox" name="close" lay-skin="switch" lay-text="ON|OFF" disabled>
{{# } else{ }}
 <input type="checkbox" checked="" name="open" lay-skin="switch" lay-filter="switchTest" lay-text="ON|OFF" disabled>
{{# } }}
</script>
<script>
layui.use(['laydate','table', 'layer','form'], function(){
var date = new Date();
var table = layui.table
,layer = layui.layer
,laydate = layui.laydate
,form = layui.form;
table.render({
elem: '#test'
,url:'xzVplist'
,toolbar: ''
,title: '用户数据表'
,cols: [
[
{type:'numbers', title:'序号',align:'center', width:'5%'}
,{field:'ip', title:'IP地址',align:'center', width:'15%'}
,{field:'lrdwmc', title:'数据采集单位',align:'center', width:'15%'}
// ,{field:'ifythcjy', title:'是否一体化采集仪',align:'center', width:'8%'}
,{field:'lrr', title:'数据操作用户',align:'center', width:'15%'}
,{field:'rybh', title:'首次采集人员编号',align:'center', width:'20%'}
,{field:'lrsj', title:'首次采集时间',align:'center', width:'20%',templet : "<div>{{layui.util.toDateString(d.lrsj, 'yyyy-MM-dd HH:mm:ss')}}</div>"}
,{field:'sfzc', title:'是否已注册',align:'center' ,templet: '#ifsbzt', width:'10%'}
]
],
id:'testTableReload',
limit: 10,
page:true
});
function initLaydate() {
$.each($(".dateType"), function (i, dom) {
laydate.render({
elem: dom,
// type: 'datetime',
format: 'yyyy-MM-dd',
value:getRecentDay()
});
});
};
//根据条件查询表格数据重新加载
var $ = layui.$, active = {
reload: function(){
//执行重载
table.reload('testTableReload', {
page: {
curr: 1 //重新从第 1 页开始
}
//根据条件查询
,where: {
maxlrsjStr:$("#maxlrsjStr").val(),
ip: $('#ip').val()
}
});
}
};
$(function () {
initLaydate();
});
//点击搜索按钮根据用户名称查询
$('#selectbyCondition').on('click',
function(){
var type = $(this).data('type');
active[type] ? active[type].call(this) : '';
});
});
function onClear() {
$('#ip').val('');
$('#maxlrsjStr').val(getRecentDay);
}
function getRecentDay() {
var today = new Date();
var tYear = today.getFullYear();
var tMonth = today.getMonth();
var tDate = today.getDate();
return tYear + "-" + tMonth + "-" + tDate ;
}
</script>
</body>
</html>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment