采集器虚拟机心跳包运维界面

gaoming_branch
ALW 3 years ago
parent 1a13005b82
commit 85f0a952c7

@ -238,6 +238,11 @@
<version>${lombok.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-core</artifactId>
<version>3.4.2</version>
</dependency>
</dependencies>
<build>

@ -0,0 +1,48 @@
package com.emr.controller;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.ICollectorService;
import com.emr.util.ExceptionPrintUtil;
import com.emr.vo.Collector;
import com.emr.vo.CollectorVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
import java.text.ParseException;
import java.text.SimpleDateFormat;
@RequestMapping("/collector")
@Controller
public class CollectorController {
@Autowired
private ICollectorService collectorService;
@PostMapping("/setCollectors")
@ResponseBody
public String setCollectors(@RequestBody CollectorVo collectorVo){
collectorService.setCollectors(collectorVo);
return "成功";
}
@ResponseBody
@RequestMapping(value = "/getCollectors")
public OffsetLimitPage getCollectors(Collector collector,Integer offset, Integer limit, HttpServletRequest request){
try {
return collectorService.getCollectors(collector, offset, limit,request);
} catch (Exception e) {
ExceptionPrintUtil.printException(e);
e.printStackTrace();
return null;
}
}
}

@ -0,0 +1,44 @@
package com.emr.controller;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.ICollectorService;
import com.emr.service.IVirtualService;
import com.emr.util.ExceptionPrintUtil;
import com.emr.vo.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.servlet.http.HttpServletRequest;
@RequestMapping("/virtual")
@Controller
public class VirtualController {
@Autowired
IVirtualService iVirtualService;
@PostMapping("/setVirtual")
@ResponseBody
public String setVirtual(@RequestBody VirtualVo virtualVo){
iVirtualService.setVirtual(virtualVo);
return "成功";
}
@ResponseBody
@RequestMapping(value = "/getVirtual")
public OffsetLimitPage getVirtual(VirtualReq virtualReq, Integer offset, Integer limit, HttpServletRequest request){
try {
return iVirtualService.getVirtual(virtualReq, offset, limit,request);
} catch (Exception e) {
ExceptionPrintUtil.printException(e);
e.printStackTrace();
return null;
}
}
}

@ -163,13 +163,10 @@ public class beHospitaledController {
@ResponseBody
@RequestMapping(value = "/beHospList1")
@RequestMapping(value = "/beHospListTwo")
public OffsetLimitPage beHospList1(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit,Integer isSearch,HttpServletRequest request){
//判断是否是初始化查询,是初始化查询把开始结束时间置空
archiveMasterVo.setStartDateTo(null);
archiveMasterVo.setEndDateTo(null);
try {
return archiveMasterService.selectByColumn(archiveMasterVo, offset, limit,request);
return archiveMasterService.selectByColumnTwo(archiveMasterVo, offset, limit,request);
} catch (Exception e) {
ExceptionPrintUtil.printException(e);
e.printStackTrace();

@ -22,6 +22,8 @@ public interface Archive_MasterMapper {
List<Archive_Master_Vo> selectByColumn(Archive_Master_Vo record);
List<Archive_Master_Vo> selectStatisColumn(Archive_Master_Vo record);
List<Archive_Master_Vo> selectByLast(Archive_Master_Vo record);
List<Archive_Master_Vo> selectByUnfile(Archive_Master_Vo record);

@ -0,0 +1,36 @@
package com.emr.dao;
import com.emr.entity.Emr_Picture;
import com.emr.vo.Collector;
import org.apache.ibatis.annotations.Param;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* <p>
* Mapper
* </p>
*
* @author jiashi
* @since 2022-08-30
*/
public interface CollectorMapper {
List<Collector> selectCollectors(Collector collector);
Integer selectCount(String key);
Integer update(Collector collector );
Integer insert(Collector collector);
List<Collector> getCollectors(Collector collector);
}

@ -0,0 +1,36 @@
package com.emr.dao;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.emr.vo.Disk;
import com.emr.vo.Virtual;
import com.emr.vo.VirtualVo;
import java.util.List;
/**
* <p>
* Mapper
* </p>
*
* @author jiashi
* @since 2022-08-30
*/
public interface DiskMapper {
List<VirtualVo> selectVirtuals(VirtualVo virtualVo) ;
Long selectVirtuaidIdlByIp(String ip);
int updateById(Virtual virtual);
int delete(String virtualId);
int saveBatch(List<Disk> disks);
}

@ -0,0 +1,39 @@
package com.emr.dao;
import com.emr.vo.Collector;
import com.emr.vo.Virtual;
import com.emr.vo.VirtualReq;
import com.emr.vo.VirtualVo;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
* Mapper
* </p>
*
* @author jiashi
* @since 2022-08-30
*/
public interface VirtualMapper {
List<VirtualReq> getVirtual(VirtualReq virtualReq) ;
Long selectVirtuaidIdlByIp(String ip);
int updateById(Virtual virtual);
int insert(Virtual virtual);
}

@ -58,6 +58,16 @@ public interface Archive_MasterService {
OffsetLimitPage selectByColumn(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit,HttpServletRequest request);
/**
*
*
* @param archiveMasterVo
* @return
*/
OffsetLimitPage selectByColumnTwo(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit,HttpServletRequest request);
List<Archive_Master_Vo> selectStatisColumn(Integer offset, Integer limit, Archive_Master_Vo archiveMasterVo, HttpServletRequest request);
/**
*
*

@ -0,0 +1,18 @@
package com.emr.service;
import com.emr.entity.Archive_Master_Vo;
import com.emr.entity.OffsetLimitPage;
import com.emr.vo.Collector;
import com.emr.vo.CollectorVo;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
public interface ICollectorService {
// public void setCollectors(CollectorVo collectorVo);
public void setCollectors(CollectorVo collectorVo);
// List<CollectorVo> setCollectors(CollectorVo collectorVo);
OffsetLimitPage getCollectors(Collector collector, Integer offset, Integer limit, HttpServletRequest request);
}

@ -0,0 +1,12 @@
package com.emr.service;
import com.emr.entity.OffsetLimitPage;
import com.emr.vo.*;
import javax.servlet.http.HttpServletRequest;
public interface IVirtualService {
public void setVirtual(VirtualVo virtualVo);
OffsetLimitPage getVirtual(VirtualReq virtualReq, Integer offset, Integer limit, HttpServletRequest request);
}

@ -88,6 +88,58 @@ public class Archive_MasterServiceImpl implements Archive_MasterService {
return new OffsetLimitPage((Page) list);
}
/**
*
* */
@Override
public OffsetLimitPage selectByColumnTwo(Archive_Master_Vo archiveMasterVo, Integer offset, Integer limit,HttpServletRequest request) {
//设置查询条件审核角色
setInfoId(archiveMasterVo);
//设置登录用户
Power_User user = (Power_User)request.getSession().getAttribute("CURRENT_USER");
if(user.getRoleId() != -100 && user.getRoleId() != 0){
archiveMasterVo.setUserName(user.getUserName());
}
List<Archive_Master_Vo> list = selectStatisColumn(offset, limit,archiveMasterVo,request);
return new OffsetLimitPage((Page) list);
}
@Override
public List<Archive_Master_Vo> selectStatisColumn(Integer offset, Integer limit, Archive_Master_Vo archiveMasterVo, HttpServletRequest request) {
List<Archive_Master_Vo> list = null;
if(null != offset && null != limit) {
PageHelper.offsetPage(offset, limit);
}
list = archiveMasterMapper.selectStatisColumn(archiveMasterVo);
selectByColumnChange(list);
List<ArchiveFlowRole> flowRoles = flowRoleMapper.selectAll();
//计算属于哪种审核角色
Msg role = getRole();
if(null != role) {
for (Archive_Master_Vo masterVo : list) {
String archivestate = masterVo.getArchivestate();
if (StringUtils.isNotBlank(archivestate)) {
//转换中文状态
boolean numeric = isNumeric(archivestate);
if (numeric) {
Integer status = Integer.valueOf(archivestate);
//组织已经审核的状态
archivestate = EnumVerify.DocState.GetStepName(status, role.getCode());
//组织未审核的状态
String currentArchivestate = EnumVerify.DocState.GetCurrentStepName(status, role.getCode());
masterVo.setStatus(archivestate);
masterVo.setCurrentStatus(currentArchivestate);
//根据角色
//获取审核按钮和退回按钮集合
getBtns(status, flowRoles, masterVo.getId(), masterVo.getPatientId(), masterVo);
}
}
}
}
return list;
}
/**
* //循环遍历list集合判断是否完整完整isCheck赋值1且批量更新LockInfo字段为完整
* @param list
@ -296,15 +348,15 @@ public class Archive_MasterServiceImpl implements Archive_MasterService {
for (Archive_Master_Vo masterVo : list) {
String archivestate = masterVo.getArchivestate();
String inpNo = masterVo.getPatientId();
String sql = "SELECT FISZH FROM V_JSWZH_EMR_CALLBACK WHERE JZH='"+inpNo+"'";
try {
String select = OracleConnect.select(sql);
masterVo.setHisStatic(select);
// String hisStatic = masterVo.getHisStatic();
} catch (Exception e) {
ExceptionPrintUtil.printException(e);
e.printStackTrace();
}
// String sql = "SELECT FISZH FROM V_JSWZH_EMR_CALLBACK WHERE JZH='"+inpNo+"'";
// try {
// String select = OracleConnect.select(sql);
// masterVo.setHisStatic(select);
//// String hisStatic = masterVo.getHisStatic();
// } catch (Exception e) {
// ExceptionPrintUtil.printException(e);
// e.printStackTrace();
//
if (StringUtils.isNotBlank(archivestate)) {
//转换中文状态
boolean numeric = isNumeric(archivestate);
@ -327,6 +379,11 @@ public class Archive_MasterServiceImpl implements Archive_MasterService {
return list;
}
/**
*
* @param archiveMasterVo

@ -0,0 +1,50 @@
package com.emr.service.ipml;
import com.emr.dao.CollectorMapper;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.ICollectorService;
import com.emr.vo.Collector;
import com.emr.vo.CollectorVo;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.apache.cxf.service.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
@Service
public class CollectorServiceImpl implements ICollectorService {
@Autowired
private CollectorMapper collectorMapper;
@Override
public void setCollectors(CollectorVo collectorVo) {
//获取Collector对象集合
List<Collector> collectors = collectorVo.getCollectors();
for (Collector collector : collectors) {
//设置操作地址
collector.setStopUrl(collectorVo.getUrlMap().get(0));
collector.setStartUrl(collectorVo.getUrlMap().get(1));
collector.setRestartUrl(collectorVo.getUrlMap().get(2));
//判断采集器信息是否存在
if (collectorMapper.selectCount(collector.getKey()) != 0) {
//存在
collectorMapper.update(collector);
} else {
//不存在
collectorMapper.insert(collector);
}
}
}
@Override
public OffsetLimitPage getCollectors(Collector collector, Integer offset, Integer limit, HttpServletRequest request) {
if(null != offset && null != limit) {
PageHelper.offsetPage(offset, limit);
}
List<Collector> list = collectorMapper.getCollectors(collector);
return new OffsetLimitPage((Page) list);
}
}

@ -0,0 +1,84 @@
package com.emr.service.ipml;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.emr.dao.CollectorMapper;
import com.emr.dao.DiskMapper;
import com.emr.dao.VirtualMapper;
import com.emr.entity.OffsetLimitPage;
import com.emr.service.ICollectorService;
import com.emr.service.IVirtualService;
import com.emr.vo.*;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
@Service
public class VirtualServiceImpl implements IVirtualService {
@Autowired
private VirtualMapper virtualMapper;
@Autowired
private DiskMapper diskMapper;
@Override
public void setVirtual(VirtualVo virtualVo) {
//获取虚拟机信息
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date=new Date();
Virtual virtual=new Virtual(null, virtualVo.getCpuUtilization(), virtualVo.getMemoryTotal(),
virtualVo.getMemoryAllowance(), virtualVo.getUplinkRate(), virtualVo.getDescendingRate(),
virtualVo.getIp(),virtualVo.getUrl(),simpleDateFormat.format(date));
//获取磁盘信息
List<Disk> disks = virtualVo.getDisks();
//判断该虚拟机是否存在
String ip = virtual.getIp();
Long id =virtualMapper.selectVirtuaidIdlByIp(ip);
if(id!=null){
//存在则修改
virtual.setId(id);
int update=virtualMapper.updateById(virtual);
//删除虚拟机对应磁盘信息
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("virtual_id",id);//满足的条件
queryWrapper.or();
String virtualId = virtual.getId().toString();
diskMapper.delete(virtualId);
//重新添加磁盘信息
for(Disk disk:disks){
disk.setId(null);
disk.setVirtualId(virtual.getId().toString());
}
diskMapper.saveBatch(disks);
}else{
//不存在则添加
int insert = virtualMapper.insert(virtual);
//把虚拟机id给磁盘对象
for(Disk disk:disks){
disk.setId(null);
disk.setVirtualId(virtual.getId().toString());
}
//添加磁盘信息
diskMapper.saveBatch(disks);
}
}
@Override
public OffsetLimitPage getVirtual(VirtualReq virtualReq, Integer offset, Integer limit, HttpServletRequest request) {
if(null != offset && null != limit) {
PageHelper.offsetPage(offset, limit);
}
List<VirtualReq> list = virtualMapper.getVirtual(virtualReq);
return new OffsetLimitPage((Page) list);
}
}

@ -0,0 +1,53 @@
package com.emr.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @BelongsProject: docus_inspection
* @BelongsPackage: com.docus.services.system.entity
* @Author: chierhao
* @CreateTime: 2022-08-30 09:03
* @Description:
* @Version: 1.0
*/
@Data
public class Collector implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private String virtualId;
private String key;
private String type;
private String beforeTime;
private String state;
private String stopUrl;
private String startUrl;
private String restartUrl;
}

@ -0,0 +1,25 @@
package com.emr.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
import java.util.Map;
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class CollectorVo implements Serializable {
private static final long serialVersionUID = 1L;
private List<Collector> collectors;
private Map<Integer,String> urlMap;
}

@ -0,0 +1,38 @@
package com.emr.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @BelongsProject: docus_inspection
* @BelongsPackage: com.docus.services.system.entity
* @Author: chierhao
* @CreateTime: 2022-08-30 08:57
* @Description:
* @Version: 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Disk implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private String virtualId;
private String diskName;
private String totalSize;
private String availableSize;
private String diskFormat;
private String diskType;
}

@ -0,0 +1,42 @@
package com.emr.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @BelongsProject: docus_inspection
* @BelongsPackage: com.docus.services.system.entity
* @Author: chierhao
* @CreateTime: 2022-08-30 08:41
* @Description:
* @Version: 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Virtual implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private String cpuUtilization;
private String memoryTotal;
private String memoryAllowance;
private String uplinkRate;
private String descendingRate;
private String ip;
private String url;
private String updateTime;
}

@ -0,0 +1,40 @@
package com.emr.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class VirtualReq {
private Long id;
private String cpuUtilization;
private String memoryTotal;
private String memoryAllowance;
private String uplinkRate;
private String descendingRate;
private String ip;
private String url;
private String updateTime;
private String virtualId;
private String diskName;
private String totalSize;
private String availableSize;
private String diskFormat;
private String diskType;
}

@ -0,0 +1,40 @@
package com.emr.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class VirtualVo implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
private String cpuUtilization;
private String memoryTotal;
private String memoryAllowance;
private String uplinkRate;
private String descendingRate;
private String ip;
private String url;
private List<Disk> disks;
private String updateTime;
}

@ -21,8 +21,11 @@
/font/**=anon
/login=anon
/static/**=anon
/statistics/**=anon
/jspf/**=anon
/img/**=anon
/collector/**=anon
/virtual/**=anon
/styles/**=anon
/batch/**=anon
/css/**=anon

@ -699,6 +699,25 @@
ORDER BY archive_master.discharge_date_time desc
</select>
<select id="selectStatisColumn" parameterType="com.emr.entity.Archive_Master_Vo" resultMap="BaseResultMap2">
select * from archive_master <where>
discharge_date_time != '1801-02-03 00:00:00.000'
AND discharge_date_time is not NULL
<if test="deptName!= null and deptName!= ''">
and dept_name in (${deptName})
</if>
<if test="startDateTo != null and startDateTo != ''">
and discharge_date_time >= CONVERT(VARCHAR(10),#{startDateTo,jdbcType=NCHAR},120)
</if>
<if test="endDateTo != null and endDateTo != ''">
and discharge_date_time &lt;= #{endDateTo,jdbcType=NCHAR}+ ' 23:59:59'
</if>
</where>
ORDER BY archive_master.discharge_date_time desc
</select>
<!--终审-->
<select id="selectByLast" parameterType="com.emr.entity.Archive_Master_Vo" resultMap="BaseResultMap2">
select m.id,m.patient_id,m.inp_no,m.visit_id,m.name,m.sex,

@ -0,0 +1,72 @@
<?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.emr.dao.CollectorMapper" >
<insert id="insert" parameterType="com.emr.vo.Collector">
insert into collector
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="virtualId != null" >
virtualId,
</if>
<if test="type != null" >
type,
</if>
<if test="beforeTime != null" >
beforeTime,
</if>
<if test="state != null" >
state,
</if>
<if test="stopUrl != null" >
stopUrl,
</if>
<if test="startUrl != null" >
startUrl,
</if>
<if test="restartUrl != null" >
restartUrl,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="virtualId != null" >
#{virtual_id},
</if>
<if test="type != null" >
#{type},
</if>
<if test="beforeTime != null" >
#{before_time},
</if>
<if test="state != null" >
#{state},
</if>
<if test="stopUrl != null" >
#{stop_url},
</if>
<if test="startUrl != null" >
#{start_url},
</if>
<if test="restartUrl != null" >
#{restart_url},
</if>
</trim>
</insert>
<update id="update" parameterType="com.emr.vo.Collector">
UPDATE collector
SET `virtual_id`=#{virtualId}, `type`=#{type}, `before_time`=#{beforeTime},
`state`=#{state}, `stop_url`=#{stopUrl}, `start_url`=#{startUrl}, `restart_url`=#{restartUrl}
WHERE `key`=#{key}
</update>
<select id="selectCollectors" resultType="com.emr.vo.Collector" parameterType="com.emr.vo.Collector">
SELECT *
FROM collector
</select>
<select id="selectCount" resultType="java.lang.Integer" parameterType="java.lang.String">
SELECT count(1)
FROM collector
WHERE `key`=#{key}
</select>
<select id="getCollectors" resultType="com.emr.vo.Collector" parameterType="com.emr.vo.Collector">
select * from collector
</select>
</mapper>

@ -0,0 +1,23 @@
<?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.emr.dao.DiskMapper">
<insert id="saveBatch" parameterType="java.util.List">
insert into disk ( virtual_id, disk_name, total_size,available_size,disk_format,
disk_type)
values
<foreach collection="list" item="item" separator=",">
(#{item.virtualId},
#{item.diskName},
#{item.totalSize},
#{item.availableSize},
#{item.diskFormat},
#{item.diskType}
</foreach>
</insert>
<delete id="delete" parameterType="java.lang.String">
delete from disk
where virtual_id = #{virtualId}
</delete>
</mapper>

@ -0,0 +1,97 @@
<?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.emr.dao.VirtualMapper">
<insert id="insert" parameterType="com.emr.vo.Virtual">
insert into virtual
<trim prefix="(" suffix=")" suffixOverrides="," >
<if test="cpuUtilization != null" >
cpuUtilization,
</if>
<if test="memoryTotal != null" >
memoryTotal,
</if>
<if test="memoryAllowance != null" >
memoryAllowance,
</if>
<if test="uplinkRate != null" >
uplinkRate,
</if>
<if test="descendingRate != null" >
descendingRate,
</if>
<if test="ip != null" >
ip,
</if>
<if test="url != null" >
url,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides="," >
<if test="cpuUtilization != null" >
#{cpu_utilization},
</if>
<if test="memoryTotal != null" >
#{memory_total},
</if>
<if test="memoryAllowance != null" >
#{memory_allowance},
</if>
<if test="uplinkRate != null" >
#{uplink_rate},
</if>
<if test="descendingRate != null" >
#{descending_rate},
</if>
<if test="ip != null" >
#{ip},
</if>
<if test="url != null" >
#{url},
</if>
</trim>
</insert>
<update id="updateById" parameterType="com.emr.vo.Virtual">
update virtual
<set >
<if test="cpuUtilization != null" >
cpu_utilization = #{cpuUtilization},
</if>
<if test="memoryTotal != null" >
memory_total = #{memoryTotal},
</if>
<if test="memoryAllowance != null" >
memory_allowance = #{memoryAllowance},
</if>
<if test="uplinkRate != null" >
uplink_rate = #{uplinkRate},
</if>
<if test="descendingRate != null" >
descending_rate = #{descendingRate},
</if>
<if test="ip != null" >
ip = #{ip},
</if>
<if test="url != null" >
url = #{url},
</if>
</set>
where id = #{id}
</update>
<select id="selectVirtuaidIdlByIp" resultType="java.lang.Long" parameterType="java.lang.String">
select * from virtual where ip =#{ip}
</select>
<select id="getVirtual" resultType="com.emr.vo.VirtualReq" parameterType="com.emr.vo.VirtualReq">
SELECT
a.*,
b.available_size,
b.disk_format,
b.disk_name,
b.disk_type,
b.total_size,
b.virtual_id
FROM
virtual a
LEFT JOIN DISK b ON a.id= b.virtual_id
</select>
</mapper>

@ -3,7 +3,7 @@
<c:set value="${pageContext.request.contextPath}" var="path" scope="page"/>
<html>
<head>
<title>采集器任务记录统计报表</title>
<title>采集器运维界面</title>
<meta charset="utf-8">
<!-- 解决部分兼容性问题如果安装了GCF则使用GCF来渲染页面如果未安装GCF则使用最高版本的IE内核进行渲染。 -->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
@ -49,45 +49,45 @@
<div class="headDiv">
<div class="headSpanDiv">
<span class="headspan">
采集器任务记录统计报表
采集器运维界面
</span>
</div>
</div>
<div class="mainDiv">
<!--搜索-->
<form style="margin-top:5px;margin-bottom: 0!important;">
<div class="form-inline">
<div class="form-group divCss">
<label>产生日期:</label>
<div class="input-group" id="datepicker">
<input type="text" class="input-sm form-control" name="start" id="startTime1"
style="text-align: center" maxlength="10" autocomplete="off"/>
<span class="input-group-addon">-</span>
<input type="text" class="input-sm form-control" name="end" id="endTime1"
maxlength="10" style="text-align: center" autocomplete="off"/>
</div>
</div>
<div class="form-group divCss">
<label>业务系统:</label>
<select class="form-control input-sm" id="sysflag">
<option value="">全部</option>
<option value="1">移动护理系统采集服务</option>
<option value="2">电子病历系统采集服务</option>
<option value="3">PACS系统采集服务</option>
<option value="4">心电系统采集服务</option>
<option value="5">手麻系统采集服务</option>
<option value="6">LIS系统采集服务</option>
<option value="7">电子病历系统采集服务-首页</option>
<option value="8">电子病历系统采集服务-长临医嘱</option>
<option value="9">广东省病案上报统计系统采集服务</option>
<option value="10">输血系统采集服务</option>
<option value="11">电子病历系统采集服务-会诊单</option>
<option value="-300">按需采集系统采集服务</option>
</select>
</div>
<button type="button" class="btn btn-primary btn-sm divCss" id="searchBtn">查询</button>
<button type="button" class="btn btn-info btn-sm divCss" id="excelBtn">条件导出</button>
</div>
<%--<div class="form-inline">--%>
<%--<div class="form-group divCss">--%>
<%--<label>产生日期:</label>--%>
<%--<div class="input-group" id="datepicker">--%>
<%--<input type="text" class="input-sm form-control" name="start" id="startTime1"--%>
<%--style="text-align: center" maxlength="10" autocomplete="off"/>--%>
<%--<span class="input-group-addon">-</span>--%>
<%--<input type="text" class="input-sm form-control" name="end" id="endTime1"--%>
<%--maxlength="10" style="text-align: center" autocomplete="off"/>--%>
<%--</div>--%>
<%--</div>--%>
<%--<div class="form-group divCss">--%>
<%--<label>业务系统:</label>--%>
<%--<select class="form-control input-sm" id="sysflag">--%>
<%--<option value="">全部</option>--%>
<%--<option value="1">移动护理系统采集服务</option>--%>
<%--<option value="2">电子病历系统采集服务</option>--%>
<%--<option value="3">PACS系统采集服务</option>--%>
<%--<option value="4">心电系统采集服务</option>--%>
<%--<option value="5">手麻系统采集服务</option>--%>
<%--<option value="6">LIS系统采集服务</option>--%>
<%--<option value="7">电子病历系统采集服务-首页</option>--%>
<%--<option value="8">电子病历系统采集服务-长临医嘱</option>--%>
<%--<option value="9">广东省病案上报统计系统采集服务</option>--%>
<%--<option value="10">输血系统采集服务</option>--%>
<%--<option value="11">电子病历系统采集服务-会诊单</option>--%>
<%--<option value="-300">按需采集系统采集服务</option>--%>
<%--</select>--%>
<%--</div>--%>
<%--<button type="button" class="btn btn-primary btn-sm divCss" id="searchBtn">查询</button>--%>
<%--<button type="button" class="btn btn-info btn-sm divCss" id="excelBtn">条件导出</button>--%>
<%--</div>--%>
</form>
<!--数据表格-->
<table id="table" class="table table-striped"></table>

@ -3,7 +3,7 @@
<c:set value="${pageContext.request.contextPath}" var="path" scope="page"/>
<html>
<head>
<title>采集器未采集任务统计报表</title>
<title>虚拟机运行状态</title>
<meta charset="utf-8">
<!-- 解决部分兼容性问题如果安装了GCF则使用GCF来渲染页面如果未安装GCF则使用最高版本的IE内核进行渲染。 -->
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
@ -49,46 +49,46 @@
<div class="headDiv">
<div class="headSpanDiv">
<span class="headspan">
采集器未采集任务统计报表
虚拟机运行状态
</span>
</div>
</div>
<div class="mainDiv">
<!--搜索-->
<form style="margin-top:5px;margin-bottom: 0!important;">
<div class="form-inline">
<%--<div class="form-inline">--%>
<%--&lt;%&ndash;<div class="form-group divCss">&ndash;%&gt;--%>
<%--&lt;%&ndash;<label>产生日期:</label>&ndash;%&gt;--%>
<%--&lt;%&ndash;<div class="input-group" id="datepicker">&ndash;%&gt;--%>
<%--&lt;%&ndash;<input type="text" class="input-sm form-control" name="start" id="startTime1"&ndash;%&gt;--%>
<%--&lt;%&ndash;style="text-align: center" maxlength="10" autocomplete="off"/>&ndash;%&gt;--%>
<%--&lt;%&ndash;<span class="input-group-addon">-</span>&ndash;%&gt;--%>
<%--&lt;%&ndash;<input type="text" class="input-sm form-control" name="end" id="endTime1"&ndash;%&gt;--%>
<%--&lt;%&ndash;maxlength="10" style="text-align: center" autocomplete="off"/>&ndash;%&gt;--%>
<%--&lt;%&ndash;</div>&ndash;%&gt;--%>
<%--&lt;%&ndash;</div>&ndash;%&gt;--%>
<%--<div class="form-group divCss">--%>
<%--<label>产生日期:</label>--%>
<%--<div class="input-group" id="datepicker">--%>
<%--<input type="text" class="input-sm form-control" name="start" id="startTime1"--%>
<%--style="text-align: center" maxlength="10" autocomplete="off"/>--%>
<%--<span class="input-group-addon">-</span>--%>
<%--<input type="text" class="input-sm form-control" name="end" id="endTime1"--%>
<%--maxlength="10" style="text-align: center" autocomplete="off"/>--%>
<%--</div>--%>
<%--<label>业务系统:</label>--%>
<%--<select class="form-control input-sm" id="sysflag">--%>
<%--<option value="">全部</option>--%>
<%--<option value="1">移动护理系统采集服务</option>--%>
<%--<option value="2">电子病历系统采集服务</option>--%>
<%--<option value="3">PACS系统采集服务</option>--%>
<%--<option value="4">心电系统采集服务</option>--%>
<%--<option value="5">手麻系统采集服务</option>--%>
<%--<option value="6">LIS系统采集服务</option>--%>
<%--<option value="7">电子病历系统采集服务-首页</option>--%>
<%--<option value="8">电子病历系统采集服务-长临医嘱</option>--%>
<%--<option value="9">广东省病案上报统计系统采集服务</option>--%>
<%--<option value="10">输血系统采集服务</option>--%>
<%--<option value="11">电子病历系统采集服务-会诊单</option>--%>
<%--<option value="-200">手麻系统病例</option>--%>
<%--<option value="-300">按需采集系统采集服务</option>--%>
<%--</select>--%>
<%--</div>--%>
<div class="form-group divCss">
<label>业务系统:</label>
<select class="form-control input-sm" id="sysflag">
<option value="">全部</option>
<option value="1">移动护理系统采集服务</option>
<option value="2">电子病历系统采集服务</option>
<option value="3">PACS系统采集服务</option>
<option value="4">心电系统采集服务</option>
<option value="5">手麻系统采集服务</option>
<option value="6">LIS系统采集服务</option>
<option value="7">电子病历系统采集服务-首页</option>
<option value="8">电子病历系统采集服务-长临医嘱</option>
<option value="9">广东省病案上报统计系统采集服务</option>
<option value="10">输血系统采集服务</option>
<option value="11">电子病历系统采集服务-会诊单</option>
<option value="-200">手麻系统病例</option>
<option value="-300">按需采集系统采集服务</option>
</select>
</div>
<button type="button" class="btn btn-primary btn-sm divCss" id="searchBtn">查询</button>
<button type="button" class="btn btn-info btn-sm divCss" id="excelBtn">条件导出</button>
</div>
<%--<button type="button" class="btn btn-primary btn-sm divCss" id="searchBtn">查询</button>--%>
<%--<button type="button" class="btn btn-info btn-sm divCss" id="excelBtn">条件导出</button>--%>
<%--</div>--%>
</form>
<!--数据表格-->
<table id="table" class="table table-striped"></table>

File diff suppressed because one or more lines are too long

@ -4,7 +4,7 @@ var maxHeight = 0;
function initTable() {
if(tipLoad == 1){
$("#table").bootstrapTable({ // 对应table标签的id
url: path+"/statistics/getCollectorTaskNum", // 获取表格数据的url
url: path+"/collector/getCollectors", // 获取表格数据的url
contentType: "application/x-www-form-urlencoded",//一种编码。好像在post请求的时候需要用到。这里用的get请求注释掉这句话也能拿到数据
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
@ -69,42 +69,47 @@ function initTable() {
valign: 'middle',
},
{
title: '业务系统',
field: 'sysFlagStr',
title: '序号',
field: 'id',
align: 'center',
valign: 'middle',
},
{
title: '产生日期',
field: 'produceDate',
title: '采集器key',
field: 'key',
align: 'center',
valign: 'middle',
},
{
title: '产生的数量',
field: 'produceNum',
title: '采集器类型',
field: 'type',
align: 'center',
valign: 'middle',
},
{
title: '采集完成',
field: 'completeNum',
title: '上条任务采集完成时间',
field: 'beforeTime',
align: 'center',
valign: 'middle',
},
{
title: '相差数量',
field: 'differ',
align: 'center',
valign: 'middle',
},
{
title: '采错数量',
field: 'errorNum',
title: '状态',
field: 'state',
align: 'center',
valign: 'middle',
formatter: function (value) {
if(value == '1'){
return '<span style="color: #d5ff30">'+'空闲状态'+'</span>';
}
if(value == '2'){
return '<span style="color: red">'+'关闭状态'+'</span>';
}
if(value == '3'){
return '<span style="color: #006400">'+'任务状态'+'</span>';
}
return value;
}
}
],
onLoadSuccess: function (result) { //加载成功时执行
$(".page-list").show();

@ -4,7 +4,7 @@ var maxHeight = 0;
function initTable() {
if(tipLoad == 1){
$("#table").bootstrapTable({ // 对应table标签的id
url: path+"/statistics/getNotStartedNum", // 获取表格数据的url
url: path+"/virtual/getVirtual", // 获取表格数据的url
contentType: "application/x-www-form-urlencoded",//一种编码。好像在post请求的时候需要用到。这里用的get请求注释掉这句话也能拿到数据
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
@ -69,18 +69,89 @@ function initTable() {
valign: 'middle',
},
{
title: '业务系统',
field: 'sysFlagStr',
title: '序号',
field: 'id',
align: 'center',
valign: 'middle',
},
{
title: '任务剩余数量',
field: 'notStarted',
title: 'IP地址',
field: 'ip',
align: 'center',
valign: 'middle',
},
{
title: 'CPU使用率',
field: 'cpuUtilization',
align: 'center',
valign: 'middle',
},
{
title: '物理内存总量',
field: 'memoryTotal',
align: 'center',
valign: 'middle',
},
{
title: '物理内存余量',
field: 'memoryAllowance',
align: 'center',
valign: 'middle',
},
{
title: '当前网络上行速率(KBPS)',
field: 'uplinkRate',
align: 'center',
valign: 'middle',
},
{
title: '当前网络下行速率(KBPS)',
field: 'descendingRate',
align: 'center',
valign: 'middle',
},
{
title: '硬盘名称',
field: 'diskName',
align: 'center',
valign: 'middle',
},
{
title: '硬盘总大小',
field: 'totalSize',
align: 'center',
valign: 'middle',
},
{
title: '可用空间大小',
field: 'availableSize',
align: 'center',
valign: 'middle',
},
{
title: '硬盘可用空间大小',
field: 'availableSize',
align: 'center',
valign: 'middle',
},
{
title: '硬盘格式',
field: 'diskFormat',
align: 'center',
valign: 'middle',
},
{
title: '硬盘类型',
field: 'diskType',
align: 'center',
valign: 'middle',
},
{
title: '最后更新时间',
field: 'diskType',
align: 'center',
valign: 'updateTime',
}
],
onLoadSuccess: function (result) { //加载成功时执行
$(".page-list").show();
@ -90,7 +161,6 @@ function initTable() {
onLoadError: function () { //加载失败时执行
tipLoad = 0;
}
});
}
}

@ -788,7 +788,7 @@ function initTable() {
//第二层,按科室分组查
function initTable1(row) {
$("#table1").bootstrapTable({ // 对应table标签的id
url: path + "/beHosp/beHospList1", // 获取表格数据的url
url: path + "/beHosp/beHospListTwo", // 获取表格数据的url
cache: false, // 设置为 false 禁用 AJAX 数据缓存, 默认为true
striped: true, //表格显示条纹默认为false
pagination: true, // 在表格底部显示分页组件默认false

Loading…
Cancel
Save