S机房设备远程监控管理系统V1.0源代码

合集下载

实验二远程监控系统

实验二远程监控系统

通达学院实验报告实验名称:远程监控系统姓名:学号:专业:网络工程指导老师:王诚2010年11月20日实验名称:在线考试系统一、实验目的1.通过这次实验,了解远程控制的原理。

2.通过这次实验,掌握C/S模式MFC的通信过程及原理。

3.熟练的操作VC6.0,并利用其作出所需的软件程序。

二、实验内容制作C/S结构模式的远程控制软件,并利用其实现远程桌面显示,关机,以及重启的功能。

三、实验分析及过程1.实验采用的是TCP/IP协议中的UDP传送协议。

而Windows下,通信的实现就是要借助于Sockets(套接字)实现的。

在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。

具体的代码实现如下:服务器端://初始化套接字CServerView::CServerView(){m_bServerIsOpen = FALSE;m_hClientSocket = INVALID_SOCKET;}CServerView::~CServerView(){if (m_bServerIsOpen)closesocket(m_pDoc->m_hServerSocket);if (m_hClientSocket != INVALID_SOCKET){closesocket(m_hClientSocket);m_hClientSocket = INVALID_SOCKET;}}客户端://初始化套接字BOOL IniSock(HWND hWnd){WORD wVersionrequested;WSADATA wsaData;wVersionrequested = MAKEWORD(2,0);int err = WSAStartup(wVersionrequested,&wsaData);if (err == -1){MessageBox(0,"套接字初始化错误!", "远程控制",MB_OK|MB_APPLMODAL);return FALSE;}CONNECT = TRUE;//设置计时器SetTimer(hWnd,IDT_TIMER,US_TIME,NULL);return TRUE;}//----------------------------------------------------------------------------//连接套接字BOOL ConnectSock(){int msgsock;//分配套接字ServerSock = socket(AF_INET,SOCK_STREAM,0);if (ServerSock < 0){MessageBox(0,"套接字初始化错误!", "远程控制",MB_OK|MB_APPLMODAL);return FALSE;}//开始连接server.sin_family = PF_INET;server.sin_port = htons(4069);server.sin_addr.s_addr = inet_addr(m_csIP);msgsock = connect(ServerSock,(struct sockaddr*)&server,sizeof(server));if (msgsock!=0){return FALSE;}return TRUE;}2.关机以及重启功能的实现,获得的原理是先获得进程的控制权限,具体代码实现如下:if (strCommand=="SERVER_SHUTDOWN"){static HANDLE hToken;static TOKEN_PRIVILEGES tp;static LUID luid;if(::OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES|TOKEN_QUERY,&hToken)) //OpenProcessToken()这个函数的作用是打开一个进程的访问令牌{::LookupPrivilegeValue(NULL,SE_SHUTDOWN_NAME,&luid);//LookupPrivilegeValue()的作用是修改进程的权限tp.PrivilegeCount=1; //赋给本进程特权tp.Privileges[0].Luid =luid;tp.Privileges[0].Attributes =SE_PRIVILEGE_ENABLED;::AdjustTokenPrivileges(hToken,false,&tp,sizeof(TOKEN_PRIVILEGES),NULL, NULL); //AdjustTokenPrivileges()的作用是通知Windows NT修改本进程的权利}//发送反馈信息CString strBackMsg="SERVER_SHUTDOWN|";pServer->m_strServerMsg=strBackMsg;pServer->SendMsg();//强制关机ExitWindowsEx(EWX_POWEROFF|EWX_FORCE,0);}然后在对话框关机按钮中,赋予关机键功能即可。

远程状态监控配置指南说明书

远程状态监控配置指南说明书

62017C o p y r i g h t ãS i e m e n s A G C o p y r i g h t y e a r A l l r i g h t s r e s e r v e d目录1远程状态监控方案简介 (32)准备条件........................................................................................................... 42.1SINEMA RC 服务器准备条件 ............................................................. 42.2S615路由器准备条件 ........................................................................ 42.3SINEMA RC 客户端软件准备条件. (5)3配置步骤........................................................................................................... 63.1配置SINEMA RC 服务器.................................................................... 63.2配置S615路由器............................................................................. 103.3配置SINEMA RC 客户端 (15)4结语 (17)C o p y r i g h t ãS i e m e n s A G C o p y r i g h t y e a r A l l r i g h t s r e s e r v e d1远程状态监控方案简介SINEMA Remote Connect(下称SINEMA RC)是西门子工业通讯与识别部门最新推出的针对工业远程维护的解决方案,凭借其灵活的系统架构、安全可靠、维护方式简单、对网络运营服务商的要求低而受到广大工业客户的亲睐,其整体架构部署如图1.1所示:图1.1 SINEMA RC 整体网络架构一些行业需要对分布在各处的设备进行全天候的状态监控,以确保设备安全运行,保证运营,由于设备分布广泛,地理跨度大,必须借助Internet 或电信网络才能进行通讯连接,西门子工业通讯与识别部门推出结合WinCC 与SINEMA RC 的远程状态监控启航包,用于设备的全天候远程状态监控,应用简单,便于部署。

设备管理系统源代码及运行界面

设备管理系统源代码及运行界面

源代码及运行界面1.model类a.Depart.csusing System。

using System.Collections.Generic。

using System.Linq。

using System.Text。

namespace model{public class Depart{public Depart(){ }#region modelprivate int _departid。

private string _departname。

private int _parentid。

public int DepartID{set {_departid = value。

}get { return _departid。

}}public string DepartName{set { _departname = value。

}get { return _departname。

}}public int ParentID{set { _parentid = value。

}get { return _parentid。

}}#endregion model}}b.Device.csusing System。

using System.Collections.Generic。

using System.Linq。

using System.Text。

namespace model{public class Device{public Device(){ }#region modelprivate int _deviceid。

private string _devicetypeid。

private int _typeid。

private int _classid。

private string _devicestate。

private Single _price。

private int _useofyear。

基于JAVA CS远程监控系统软件的实现

基于JAVA CS远程监控系统软件的实现

基于JAVA CS远程监控系统软件的实现摘要近年来,网络技术的不断发展,为远程监控技术的发展创造了条件。

远程监控系统软件越来越受到人们的重视,其实用性也毋庸质疑。

基于javac/s远程监控系统软件突破了空间的限制,使用者不用亲临,在自己的电脑面前就能轻松的实现对被监控端机器的监控。

本系统采用java网络编程和java图形编程实现。

笔者在开发过程中将网络技术与远程监控理论基础相结合,实现了以下功能:能连续获得被监控端机器屏幕变化;实现被监控端硬盘文件的上传、下载;实现对鼠标、键盘的模拟;实现在远程机器上执行任意dos命令;远程关机、远程重启计算机,方便了用户监视和操作被监控端机器。

本系统从系统需求分析、概要设计、详细设计到具体的编码实现和后期的代码优化、功能测试都严格遵循了软件工程的思想。

关键词:远程监控;javarobot;屏幕截取;javasocket系统需求分析及理论基础2.1系统需求分析2.1.1系统功能需求1.连续获得被控端机器屏幕变化。

2.实现被控端硬盘文件的上传、下载。

3.实现对鼠标、键盘的模拟。

4.实现在被控端机器上执行任意dos命令。

5.远程关机、远程重启计算机。

2.1.2其他需求1.系统实用,界面操作简便。

2.被监控端自动隐藏运行。

被监控端将随电脑启动而自动运行,运行时默认无任何可见界面。

2.2系统开发原理及关键技术2.2.1系统开发原理本系统是利用类java.awt.robot中的屏幕截取和鼠标、键盘自动控制功能,然后加上网络传输功能来完成来完成截屏和远程控制的。

2.2.2系统运行概述1.启动被监控端,打开指定的udp端口号。

用于读取命令。

2.被监控端读取命令(命令格式为ordername:port)ordername为命令名字,port为主控端打开的tcp端口。

3.接到主控端连接后,被监控端就对当前用户的桌面采用屏幕截取,然后发送给主控端。

依被监控端设计的不同,可以设定屏幕截取的时间间隔,时间间隔短一点就可以获得连续屏幕变化了。

Python远程视频监控程序的实例代码

Python远程视频监控程序的实例代码

Python远程视频监控程序的实例代码⽼板由于事务繁忙⽆法经常亲临教研室,于是让我搞个监控系统,让他在办公室就能看到教研室来了多少⼈。

o(>﹏<)o|||最初我的想法是直接去⽹上下个软件,可是找来找去不是有毒就是收费,⽆奈技术不到家⽆法破解,只得另寻他法。

正当没有办法的时候,我看到⼀篇博⽂,看完茅塞顿开,觉得完全可以⾃⼰写⼀个,在此感谢作者詹姆斯。

这个程序包括⼀个服务器和⼀个客户端。

需要的库有 VideoCapture 和 pygame,⼀个⽤来得到摄像头的视频,⼀个⽤来显⽰。

Python库可以点这⾥下载:。

进去后ctrl+F找到相应的库,然后选择相应的版本即可,这⾥还有很多其他的库可提供下载。

我想到的解决⽅案是,在教研室开⼀台电脑,接⼀个USB摄像头,然后开启⼀个服务器程序,等待着⽼板使⽤客户端连接,由于是实时视频传输,使⽤UDP协议。

(主要传输部分采⽤詹姆斯的代码)。

服务器端代码如下:# -*- coding: UTF-8 -*-import socketimport timeimport tracebackfrom VideoCapture import Deviceimport threading# 全局变量is_sending = Falsecli_address = ('', 0)# 主机地址和端⼝host = ''port = 10218# 初始化UDP socketser_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)ser_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)ser_socket.bind((host, port))# 接收线程类,⽤于接收客户端发送的消息class UdpReceiver(threading.Thread):def __init__(self):threading.Thread.__init__(self)self.thread_stop = Falsedef run(self):while not self.thread_stop:# 声明全局变量,接收消息后更改global cli_addressglobal is_sendingtry:message, address = ser_socket.recvfrom(2048)except:traceback.print_exc()continue# print message,cli_addresscli_address = addressif message == 'startCam':print 'start camera',is_sending = Trueser_socket.sendto('startRcv', cli_address)if message == 'quitCam':is_sending = Falseprint 'quit camera',def stop(self):self.thread_stop = True# 创建接收线程receiveThread = UdpReceiver()receiveThread.setDaemon(True) # 该选项设置后使得主线程退出后⼦线程同时退出receiveThread.start()# 初始化摄像头cam = Device()cam.setResolution(320,240)# 主线程循环,发送视频数据while 1:if is_sending:img = cam.getImage().resize((160,120))data = img.tostring()ser_socket.sendto(data, cli_address)time.sleep(0.05)else:time.sleep(1)receiveThread.stop()ser_socket.close()服务器启动⼀个⼦线程,来监听客户端发送的消息。

设备管理系统源代码

设备管理系统源代码

设备管理系统源代码一、背景介绍设备管理系统是一种用于管理和维护企业设备的软件系统。

它可以帮助企业实现对设备的全面管理,包括设备档案信息管理、设备维修与保养管理、设备借还管理等功能。

本文将介绍一种用于设备管理的源代码设计。

二、系统概述设备管理系统源代码采用了面向对象编程的思想,使用Java语言开发。

系统采用了数据库来存储设备信息和相关数据,并通过用户界面与用户进行交互。

系统的主要模块包括设备档案管理模块、设备维修与保养管理模块、设备借还管理模块等。

三、设备档案管理模块该模块用于管理设备的档案信息,包括设备的基本信息、购买信息、保养记录等。

用户可以通过该模块对设备进行分类、筛选、查询等操作。

系统会自动记录设备的使用情况、保养情况等,并生成相应的报表供用户查看。

四、设备维修与保养管理模块该模块用于管理设备的维修与保养情况。

用户可以在系统中录入设备的维修与保养记录,并对维修与保养工作进行安排和跟踪。

系统会自动提醒用户设备下次需要进行保养的时间,并生成相应的工作任务。

五、设备借还管理模块该模块用于管理设备的借还情况。

用户可以在系统中记录设备的借出和归还情况,并对借还操作进行审核和统计。

系统会自动生成设备借还的报表,并提供相应的查询功能。

六、安全性设计设备管理系统源代码中包含了一系列的安全性设计措施,以保护系统和数据的安全。

其中包括用户身份验证、权限管理、数据备份与恢复等功能。

用户需要通过正确的用户名和密码进行登录,系统会根据用户的权限设置相应的操作权限,以保证用户只能进行其具备权限的操作。

七、系统性能优化为了提高系统的性能和响应速度,设备管理系统源代码进行了一系列的性能优化措施。

其中包括数据库索引的设计、缓存技术的使用、并行处理等。

这些优化措施使得系统能够在大量数据的情况下保持较高的性能和稳定性。

八、总结设备管理系统源代码采用了面向对象编程的思想,使用Java语言开发。

系统提供了设备档案管理、设备维护与保养管理、设备借还管理等功能模块,帮助企业实现对设备的全面管理。

设备管理系统 源代码及运行界面

设备管理系统 源代码及运行界面

源代码及运行界面1.model类a.Depart.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class Depart{public Depart(){ }#region modelprivate int _departid;private string _departname;private int _parentid;public int DepartID{set {_departid = value; }get { return _departid; }}public string DepartName{set { _departname = value; }get { return _departname; }}public int ParentID{set { _parentid = value; }get { return _parentid; }}#endregion model}}b.Device.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class Device{public Device(){ }#region modelprivate int _deviceid;private string _devicetypeid;private int _typeid;private int _classid;private string _devicestate;private Single _price;private int _useofyear;private Single _svp;private string _manufacture;private DateTime _stocktime;public int DeviceID{set { _deviceid = value; }get { return _deviceid; }}public string DeviceTypeID{set { _devicetypeid = value; }get { return _devicetypeid; }}public int TypeID{set { _typeid = value; }get { return _typeid; }}public int ClassID{set { _classid = value;}get { return _classid; }}public string DeviceState{set { _devicestate = value; }get { return _devicestate; }}public Single Price{set { _price = value; }get { return _price; }}public int UseOfYear{set { _useofyear = value; }get { return _useofyear; }}public Single SVP{set { _svp = value; }get { return _svp; }}public string Manufacture{set { _manufacture = value; }get { return _manufacture; } }public DateTime StockDate{set { _stocktime = value; }get { return _stocktime; }}#endregion model}}c.D eviceClass.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class DeviceClass{public DeviceClass(){ }#region modelprivate int _classid;private string _classname;private int _typeid;public int ClassID{set { _classid = value; }get { return _classid; }}public string ClassName{set { _classname = value;}get { return _classname; }}public int TypeID{set { _typeid = value; }get { return _typeid; }}#endregion model}}d.DeviceType.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class DeviceType{public DeviceType(){ }#region modelprivate int _typeid;private string _typename;public int TypeID{set { _typeid = value; }get { return _typeid; }}public string TypeName{set { _typename = value; }get { return _typename; }}#endregion model}}e.R epairInfo.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class RepairInfo{public RepairInfo(){ }#region modelprivate int _repairid;private int _deviceid;private string _repairpeople;private DateTime _beginrepairdate;private Single _repairprice;private int _repairoftime;private string _faultcause;private string _remark;public int RepairID{set { _repairid = value; }get { return _repairid; }}public int DeviceID{set { _deviceid = value; }get { return _deviceid; }}public string RepairPeople{set { _repairpeople = value; }get { return _repairpeople; }}public DateTime BeginRepairDate{set { _beginrepairdate = value; }get { return _beginrepairdate; } }public Single RepairPrice{set { _repairprice = value; }get { return _repairprice; }}public int RepairOfTime{set { _repairoftime = value; }get { return _repairoftime; }}public string FaultCause{set { _faultcause = value; }get { return _faultcause; }}public string Remark{set { _remark = value; }get { return _remark; }}#endregion model}}f.TransInfo.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class TransInfo{public TransInfo(){ }#region modelprivate int _transid;private int _deviceid;private int _departid;private string _usepeople;private DateTime _begintransdate;private int _useofmonth;private string _remark;public int TransID{set { _transid = value; }get { return _transid; }}public int DeviceID{set { _deviceid = value; }get { return _deviceid; }}public int DepartID{set { _departid = value; }get { return _departid; }}public string UsePeople{set { _usepeople = value; }get { return _usepeople; }}public DateTime BeginTransDate{set { _begintransdate = value; }get { return _begintransdate; }}public int UseOfMonth{set { _useofmonth = value; }get { return _useofmonth; }}public string Remark{set { _remark = value; }get { return _remark; }}#endregion model}}g.UserLevel.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class UserLevel{public UserLevel(){ }#region modelprivate string _levelid;private string _levelname;private string _description;public string LevelID{set { _levelid = value; }get { return _levelid; }}public string LevelName{set { _levelname = value; }get { return _levelname; }}public string Description{set { _description = value; }get { return _description; }}#endregion model}}h.Users.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;namespace model{public class Users{public Users(){ }#region modelprivate string _userid;private string _userpwd;private string _levelid;public string UserID{set { _userid = value; }get { return _userid; }}public string UserPwd{set { _userpwd = value; }get { return _userpwd; }}public string LevelID{set { _levelid = value; }get { return _levelid; }}#endregion model}}2.DAL类a.Depart.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Collections;using System.Data;using System.Data.SqlClient;namespace DAL{public class Depart{sqlhelp sql = new sqlhelp();public Depart(){ }#region 成员方法public ArrayList GetListByParentID(int pid){ArrayList al = new ArrayList();string s = "select * from Depart where ParentID=" + pid;DataTable dt = null;dt = sql.Execusql(s);for (int i = 0; i < dt.Rows.Count; i++){model.Depart modeldepart = new model.Depart();modeldepart.DepartID = Convert.ToInt32(dt.Rows[i]["DepartID"]);modeldepart.ParentID = Convert.ToInt32(dt.Rows[i]["ParentID"]);modeldepart.DepartName = dt.Rows[i]["DepartName"].ToString();al.Add(modeldepart);}return al;}public int Insert(model.Depart mod){int n = 0;string s = "Insert into Depart(DepartName,ParentID) values('" + mod.DepartName + "'," + mod.ParentID + ")";n = sql.Execsql(s);return n;}public ArrayList GetList(){ArrayList al = new ArrayList();string s = "select * from Depart where DepartID!=1";DataTable dt = null;dt = sql.Execusql(s);for (int i = 0; i < dt.Rows.Count; i++){model.Depart modeldepart = new model.Depart();modeldepart.DepartID = Convert.ToInt32(dt.Rows[i]["DepartID"]);modeldepart.ParentID = Convert.ToInt32(dt.Rows[i]["ParentID"]);modeldepart.DepartName = dt.Rows[i]["DepartName"].ToString();al.Add(modeldepart);}return al;}public DataTable GetDepartList(string strwhere){DataTable dt = null;string s = "select * from View2 where " + strwhere;if (strwhere == "")s = "select * from View2";dt = sql.Execusql(s);return dt;}public DataTable GetDepartByID(int id){DataTable dt = null;string s = "select * from Depart where DepartID="+id;dt = sql.Execusql(s);return dt;}public int Update(model.Depart mod){int n = 0;string s = "Update Depart Set DepartName='" + mod.DepartName + "',ParentID=" + mod.ParentID + " where DepartID=" + mod.DepartID;n = sql.Execsql(s);return n;}public int Delete(int id){int n = 0;string s = "delete from Depart where DepartID="+id;n = sql.Execsql(s);return n;}#endregion 成员方法}}b.Device.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SqlClient;namespace DAL{public class Device{sqlhelp sql = new sqlhelp();public Device(){ }#region 成员方法public DataTable GetDeviceByID(int deviceid){string s = "select * from Device where DeviceID=" + deviceid;DataTable dt = null;dt = sql.Execusql(s);return dt;}public int Insert(model.Device modeldevice){int n = 0;string s = "Insert into Device values(" + modeldevice.DeviceID + ",'" + modeldevice.DeviceTypeID + "'," + modeldevice.TypeID + ","+modeldevice.ClassID+",'" + modeldevice.DeviceState + "'," + modeldevice.Price + "," + eOfYear+ "," + modeldevice.SVP+ ",'" + modeldevice.Manufacture+ "','"+modeldevice.StockDate+"')";n = sql.Execsql(s);return n;}public DataTable GetList(string strwhere){DataTable dt = null;string s = "Select * from View1 where " + strwhere;if (strwhere == ""){s = "select * from View1";}dt = sql.Execusql(s);return dt;}public DataTable GetDeviceList(string strwhere){DataTable dt = null;string s = "Select * from Device where " + strwhere;if (strwhere == ""){s = "select * from Device";}dt = sql.Execusql(s);return dt;}public int Delete(int id){int n = 0;string s = "delete from Device where DeviceID=" +id;n = sql.Execsql(s);return n;}public int Update(model.Device mod){int n = 0;string s = "Update Device set DeviceState='" + mod.DeviceState + "',TypeID="+mod.TypeID+",ClassID="+mod.ClassID+", DeviceTypeID='" + mod.DeviceTypeID + "',Price=" + mod.Price + ",SVP=" + mod.SVP + ",StockDate='" + mod.StockDate + "',Manufacture='" + mod.Manufacture + "',UseOfYear=" + eOfYear + " where DeviceID=" + mod.DeviceID ;n = sql.Execsql(s);return n;}#endregion 成员方法}}c.DeviceClass.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SqlClient;namespace DAL{public class DeviceClass{sqlhelp sql = new sqlhelp();public DeviceClass(){ }#region 成员方法public DataTable GetClass(int id){string s = "select * from DeviceClass where TypeID=" + id;DataTable dt = null;dt = sql.Execusql(s);return dt;}/// <summary>/// 得到设备类别列表/// </summary>/// <returns></returns>public DataTable getDeviceClassList(){string sqlstr = "select * from DeviceClass";DataTable dt = sql.Execusql(sqlstr);return dt;}/// <summary>/// 条件查询/// </summary>/// <param name="strClassId"></param>/// <param name="strClassName"></param>/// <param name="strTypeID"></param>/// <returns></returns>public DataTable findDeviceClassList(string strClassId,string strClassName,string strTypeID){if (strClassId.Trim().Length == 0) {strClassId = "%";}if (strClassName.Trim().Length == 0){strClassName = "%";}if (strTypeID.Trim().Length == 0){strTypeID = "%";}string sqlstr = "select * from DeviceClass where ClassId like '%" + strClassId.Trim() + "%' and ClassName like '%" + strClassName.Trim() + "%' and TypeID like '%" + strTypeID.Trim() + "%'";DataTable dt = sql.Execusql(sqlstr);return dt;}/// <summary>/// 得到一条设备类别记录/// </summary>/// <param name="id"></param>/// <returns></returns>public model.DeviceClass getDeviceClassModel(int id){model.DeviceClass model = new model.DeviceClass();string sqlstr = "select * from DeviceClass where ClassID=" + id;DataTable dt = sql.Execusql(sqlstr);if (dt.Rows.Count > 0){if (dt.Rows[0]["ClassID"].ToString() != ""){model.ClassID = int.Parse(dt.Rows[0]["ClassID"].ToString());}model.ClassName = dt.Rows[0]["ClassName"].ToString();return model;}else{return null;}}/// <summary>/// 修改设备类别记录/// </summary>/// <param name="model"></param>/// <returns></returns>public int updateDeviceClass(model.DeviceClass model){int n = 0;string sqlstr = "update DeviceClass set ClassName='" + model.ClassName + "',TypeID="+model.TypeID+" where ClassID=" + model.ClassID;n = sql.Execsql(sqlstr);return n;}/// <summary>/// 删除一条设备类别记录/// </summary>/// <param name="id"></param>/// <returns></returns>public int deleteDeviceClass(int id){int n = 0;string sqlstr = "delete from DeviceClass where ClassID=" + id;n = sql.Execsql(sqlstr);return n;}/// <summary>/// 获得类别最大编号/// </summary>/// <returns></returns>public int getMaxId() {int n = 0;string sqlstr = "select max(ClassID) from DeviceClass";DataTable dt = sql.Execusql(sqlstr);n = Convert.ToInt32(dt.Rows[0][0]);return n;}/// <summary>/// 增加一个设备类别记录/// </summary>/// <param name="model"></param>/// <returns></returns>public int addDeviceClass(model.DeviceClass model) {int n = 0;int id = getMaxId() + 1;string sqlstr = "insert into DeviceClass(ClassID,ClassName,TypeID) values(" + id + ",'" + model.ClassName + "'," + model.TypeID + ")";n = sql.Execsql(sqlstr);return n;}#endregion 成员方法}}d.DeviceType.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SqlClient;namespace DAL{public class DeviceType{sqlhelp sql = new sqlhelp();public DeviceType(){ }#region 成员方法public DataTable GetTypeList(){DataTable dt = null;string s = "select * from DeviceType";dt = sql.Execusql(s);return dt;}/// <summary>/// 得到设备类型列表/// </summary>/// <returns></returns>public DataTable getDeviceTypeList(){string sqlstr = "select * from DeviceType";DataTable dt=sql.Execusql(sqlstr);return dt;}/// <summary>/// 得到一条设备记录/// </summary>/// <param name="id"></param>/// <returns></returns>public model.DeviceType getDeviceTypeModel(int id) {model.DeviceType model = new model.DeviceType();string sqlstr = "select * from DeviceType where TypeID="+id;DataTable dt = sql.Execusql(sqlstr);if (dt.Rows.Count > 0){if (dt.Rows[0]["TypeID"].ToString() != ""){model.TypeID = int.Parse(dt.Rows[0]["TypeID"].ToString());}model.TypeName = dt.Rows[0]["TypeName"].ToString();return model;}else{return null;}}/// <summary>/// 修改设备类型记录/// </summary>/// <param name="model"></param>/// <returns></returns>public int updateDeviceType(model.DeviceType model) {int n = 0;string sqlstr = "update DeviceType set TypeName='" + model.TypeName + "' where TypeID="+model.TypeID;n=sql.Execsql(sqlstr);return n;}/// <summary>/// 插入一条设备类型记录/// </summary>/// <param name="model"></param>/// <returns></returns>public int addDeviceType(model.DeviceType model) {int n = 0;string sqlstr = "insert into DeviceType(TypeName) values('" + model.TypeName + "')";n = sql.Execsql(sqlstr);return n;}/// <summary>/// 删除一条设备类型记录/// </summary>/// <param name="id"></param>/// <returns></returns>public int deleteDeviceType(int id) {int n = 0;string sqlstr = "delete from DeviceType where TypeID=" + id;n = sql.Execsql(sqlstr);return n;}/// <summary>/// 条件查询/// </summary>/// <param name="strUserID"></param>/// <param name="strLevelID"></param>/// <returns></returns>public DataTable findDeviceTypeList(string strTypeID, String strTypeName){string sqlstr = "";if (strTypeID.Trim().Length == 0){if (strTypeName.Trim().Length == 0){strTypeName = "%";}sqlstr = "select * from DeviceType where TypeName like '%" + strTypeName.Trim() + "%'";}else{if (strTypeName.Trim().Length == 0){strTypeName = "%";}sqlstr = "select * from DeviceType where TypeID=" +Convert.ToInt32(strTypeID.Trim()) + " and TypeName like '%" + strTypeName.Trim() + "%'";}DataTable dt = sql.Execusql(sqlstr);return dt;}#endregion 成员方法}}e.R epairInfo.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;using System.Data.SqlClient;namespace DAL{public class RepairInfo{sqlhelp sql = new sqlhelp();public RepairInfo(){ }#region 成员方法public int Insert(model.RepairInfo mod){int n = 0,m=0 ;string s = "Insert into RepairInfo(DeviceID,RepairPeople,BeginRepairDate,RepairPrice,RepairOfTime,FaultCause,Remark) values("+mod.DeviceID+",'"+mod.RepairPeople+"','"+mod.BeginRepairDate+"',"+mod.RepairPrice+","+mo d.RepairOfTime+",'"+mod.FaultCause+"','"+mod.Remark+"')";n = sql.Execsql(s);if (mod.Remark == "正在维修"){s = "Update Device set DeviceState='故障'where DeviceID=" + mod.DeviceID;m = sql.Execsql(s);}else{s = "Update Device set DeviceState='空闲' where DeviceID=" + mod.DeviceID;m = sql.Execsql(s);}if (m == 1 && n == 1){ n = 1; }else{ n = 0; }return n;}public DataTable GetList(string strwhere){DataTable dt = null;string s = "Select * from RepairInfo where " + strwhere;if (strwhere == ""){s = "select * from RepairInfo";}dt = sql.Execusql(s);return dt;}public DataTable GetRepairInfoByID(int id){DataTable dt = null;string s = "select * from RepairInfo where RepairID=" + id;dt = sql.Execusql(s);return dt;}public int Update(model.RepairInfo mod){int n = 0,m=0;string s = "update RepairInfo set DeviceID=" + mod.DeviceID + ",RepairPeople='" + mod.RepairPeople + "',BeginRepairDate='" + mod.BeginRepairDate + "',Repairprice=" + mod.RepairPrice + ",RepairOfTime=" + mod.RepairOfTime + ",FaultCause='" + mod.FaultCause + "',Remark='" + mod.Remark + "' where RepairID=" + mod.RepairID + "";n = sql.Execsql(s);if (mod.Remark == "正在维修"){s = "Update Device set DeviceState='故障'where DeviceID=" + mod.DeviceID;m = sql.Execsql(s);}else{s = "Update Device set DeviceState='空闲' where DeviceID=" + mod.DeviceID;m = sql.Execsql(s);}if (m == 1 && n == 1){ n = 1; }else{ n = 0; }return n;}public int Delete(int id){int n = 0;string s = "delete from RepairInfo where RepairID=" + id;n = sql.Execsql(s);return n;}#endregion 成员方法}}f.TransInfo.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Collections;using System.Data;using System.Data.SqlClient;namespace DAL{public class TransInfo{sqlhelp sql = new sqlhelp();public TransInfo(){ }#region 成员方法public int Insert(model.TransInfo mod){int n = 0,m=0;string s = "Insert into TransInfo(DeviceID,DepartID,UsePeople,BeginTransDate,UseOfMonth,Remark)values("+mod.DeviceID+","+mod.DepartID+",'"+ePeople+"','"+mod.BeginTransDate+"',"+e OfMonth+",'"+mod.Remark+"')";n = sql.Execsql(s);if(mod.Remark=="未归还")s = "Update Device set DeviceState='忙碌' where DeviceID="+mod.DeviceID;m = sql.Execsql(s);if (m == 1 && n == 1)n = 1;elsen = 0;return n;}public DataTable GetList(string strwhere){DataTable dt = null;string s = "select * from View3 where" + strwhere;if (strwhere == ""){s = "select * from View3";}dt = sql.Execusql(s);return dt;}public DataTable GetTransByID(int id){DataTable dt = null;string s = "select * from TransInfo where TransID=" + id;dt = sql.Execusql(s);return dt;}public int Update(model.TransInfo mod){int n = 0,m=0;string s = "update TransInfo set DepartID="+mod.DepartID+",UsePeople='"+ePeople+"',BeginTransDate='"+mod.BeginTransDate+" ',UseOfMonth="+eOfMonth+",Remark='"+mod.Remark+"' where TransID="+mod.TransID;n = sql.Execsql(s);if (mod.Remark == "未归还")s = "Update Device set DeviceState='忙碌' where DeviceID=" + mod.DeviceID;elses = "Update Device set DeviceState='空闲' where DeviceID=" + mod.DeviceID;m = sql.Execsql(s);if (m == 1 && n == 1)n = 1;elsen = 0;return n;}public int Delete(int id){int n = 0;string s = "delete from TransInfo where TransID=" + id;n = sql.Execsql(s);return n;}#endregion 成员方法}}g.UserLevel.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;namespace DAL{public class UserLevel{sqlhelp sql = new sqlhelp();public UserLevel(){ }#region 成员方法/// <summary>/// 得到用户权限列表/// </summary>/// <returns></returns>public DataTable getUsersLevelList(){string sqlstr = "select * from UserLevel";DataTable dt = sql.Execusql(sqlstr);return dt;}#endregion 成员方法}}h.Users.csusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;namespace DAL{public class Users{sqlhelp sql = new sqlhelp();public Users(){ }#region 成员方法/// <summary>/// 得到用户列表/// </summary>/// <returns></returns>public DataTable getUsersList(){string sqlstr = "select * from Users";DataTable dt = sql.Execusql(sqlstr);return dt;}/// <summary>/// 或得一条用户记录/// </summary>/// <param name="id"></param>/// <returns></returns>public ers getUsersModel(string id){ers model = new ers();string sqlstr = "select * from Users where UserID='" + id+"'";DataTable dt = sql.Execusql(sqlstr);if (dt.Rows.Count > 0){erID = dt.Rows[0]["UserID"].ToString();erPwd = dt.Rows[0]["UserPwd"].ToString();model.LevelID = dt.Rows[0]["LevelID"].ToString();return model;}else{return null;}}/// <summary>/// 获得下一个用户编号/// </summary>/// <returns></returns>public string getNextUsersId(){string idstr = "";string sqlstr = "select max(UserID) from Users";DataTable dt = sql.Execusql(sqlstr);int id1 = Convert.ToInt32(dt.Rows[0][0])+1;idstr = id1+"";return idstr;}/// <summary>/// 插入一条用户记录/// </summary>/// <param name="model"></param>/// <returns></returns>public int addUser(ers model) {int n = 0;string sqlstr = "insert into Users values('" + erID + "','" + erPwd + "','" + model.LevelID + "')";n = sql.Execsql(sqlstr);return n;}/// <summary>/// 修改一个用户/// </summary>/// <param name="model"></param>/// <returns></returns>public int updateUser(ers model) {int n = 0;string sqlstr = "update Users set UserPwd='"+erPwd+"',LevelID='"+model.LevelID+"' where UserID='"+erID+"'";n=sql.Execsql(sqlstr);return n;}/// <summary>/// 删除一个用户/// </summary>/// <param name="id"></param>/// <returns></returns>public int deleteUser(string id) {int n = 0;string sqlstr = "delete from Users where UserID='" + id + "'";n = sql.Execsql(sqlstr);return n;}/// <summary>/// 条件查询/// </summary>/// <param name="strUserID"></param>/// <param name="strLevelID"></param>/// <returns></returns>public DataTable findUsersList(string strUserID,String strLevelID){if (strUserID.Trim().Length ==0) {strUserID = "%"; }if (strLevelID.Trim().Length == 0) {strLevelID = "%";}string sqlstr = "select * from Users where UserID like '%" + strUserID.Trim() + "%' and LevelID like '%" + strLevelID.Trim() + "%'";DataTable dt = sql.Execusql(sqlstr);return dt;}。

库房监控系统软件_代码

库房监控系统软件_代码

package org.jsoup.select;123import java.util.ArrayList;4import java.util.Arrays;5import java.util.Collection;6import java.util.Collections;7import java.util.LinkedHashSet;8import java.util.List;9import java.util.Map;import java.util.Set;1011import java.util.Storage Room.Pattern;12import java.util.Storage Room.PatternSyntaxException;1314public abstract class Node15implements Cloneable{1617private static final List<Node> EMPTY_NODES = Collections.emptyList();18Node parentNode;19List<Node> childNodes;20Attributes attributes;21String baseUri;int siblingIndex;2223package org.jsoup.select;2425import java.util.ArrayList;26import java.util.List;27import java.util.Storage Room.Matcher;28import java.util.Storage Room.Pattern;29import org.jsoup.helper.StringUtil;30import org.jsoup.helper.Validate;31import org.jsoup.parser.Monitor;3233class QueryParser34{35private static final String[] combinators = { ",", ">", "+", "~", " " };36private static final String[] AttributeEvals = { "=", "!=", "^=", "$=", "*=", "~=" };37private Monitor tq;38private String query;39private List<Evaluator> evals = new ArrayList();4041private static final Pattern NTH_AB = pile("((\\+|-)?(\\d+)?)n(\\s*(\\+|-)?\\s*\\d+)?", 422);43private static final Pattern NTH_B = pile("(\\+|-)?(\\d+)");4445private QueryParser(String query)46{47this.query = query;this.tq = new Monitor(query);4849}5051public static Evaluator parse(String query)52{53QueryParser p = new QueryParser(query);54return p.parse();55}5657Evaluator parse()58{59this.tq.consumeWhitespace();6061if (this.tq.matchesAny(combinators)) {62this.evals.add(new StructuralEvaluator.Root());63combinator(this.tq.consume());64} else {65findElements();66}6768while (!this.tq.isEmpty())69{70boolean seenWhite = this.tq.consumeWhitespace();71if (this.tq.matchesAny(combinators))7273combinator(this.tq.consume());74else if (seenWhite)75combinator(' ');76else {77findElements();78}79}8081if (this.evals.size() == 1) {82return (Evaluator)this.evals.get(0);83}84return new CombiningEvaluator.And(this.evals);85}86private void combinator(char combinator) {8788this.tq.consumeWhitespace();String subQuery = consumeSubQuery();899091Evaluator newEval = parse(subQuery);92boolean replaceRightMost = false;93Evaluator currentEval;94Evaluator rootEval;95if (this.evals.size() == 1)96{97Evaluator currentEval;98Evaluator rootEval = currentEval = (Evaluator)this.evals.get(0);99100if (((rootEval instanceof CombiningEvaluator.Or)) && (combinator != ',')) {currentEval = ((CombiningEvaluator.Or)currentEval).rightMostEvaluator();101102replaceRightMost = true;103}}104105else {106rootEval = currentEval = new CombiningEvaluator.And(this.evals);107}108this.evals.clear();109110if (combinator == '>') {currentEval = new CombiningEvaluator.And(new Evaluator[] { newEval, new 111112StructuralEvaluator.ImmediateParent(currentEval) });113} else if (combinator == ' ') {currentEval = new CombiningEvaluator.And(new Evaluator[] { newEval, new 114115StructuralEvaluator.Parent(currentEval) });116} else if (combinator == '+') {117currentEval = new CombiningEvaluator.And(new Evaluator[] { newEval, new 118StructuralEvaluator.ImmediatePreviousSibling(currentEval) });119} else if (combinator == '~') {currentEval = new CombiningEvaluator.And(new Evaluator[] { newEval, new 120121StructuralEvaluator.PreviousSibling(currentEval) });122} else if (combinator == ','){123124CombiningEvaluator.Or or;125if ((currentEval instanceof CombiningEvaluator.Or)) {126CombiningEvaluator.Or or = (CombiningEvaluator.Or)currentEval;127or.add(newEval);128} else {or = new CombiningEvaluator.Or();129130or.add(currentEval);131or.add(newEval);}132133currentEval = or;134}else {135136throw new Selector.SelectorParseException("Unknown combinator: " + combinator, new 137Object[0]);138}139if (replaceRightMost)140((CombiningEvaluator.Or)rootEval).replaceRightMostEvaluator(currentEval);else rootEval = currentEval;141142this.evals.add(rootEval);143}144145private String consumeSubQuery() {146StringBuilder sq = new StringBuilder();147while (!this.tq.isEmpty())if (this.tq.matches("(")) {148149sq.append("(").append(this.tq.chompBalanced('(', ')')).append(")");150} else if (this.tq.matches("[")) {sq.append("[").append(this.tq.chompBalanced('[', ']')).append("]"); } else { 151152if (this.tq.matchesAny(combinators)) {153break;}154155sq.append(this.tq.consume());156}157return sq.toString();158}159private void findElements() {160161if (this.tq.matchChomp("#"))162byId();163else if (this.tq.matchChomp("."))164byClass();165else if (this.tq.matchesWord())166byTag();else if (this.tq.matches("["))167168byAttribute();169else if (this.tq.matchChomp("*"))170allElements();171else if (this.tq.matchChomp(":lt("))172indexLessThan();173else if (this.tq.matchChomp(":gt("))174indexGreaterThan();else if (this.tq.matchChomp(":eq("))175176indexEquals();else if (this.tq.matches(":has("))177178has();179else if (this.tq.matches(":contains("))180contains(false);181else if (this.tq.matches(":containsOwn("))182contains(true);else if (this.tq.matches(":matches("))183184matches(false);185else if (this.tq.matches(":matchesOwn("))matches(true);186187else if (this.tq.matches(":not("))188not();189else if (this.tq.matchChomp(":nth-child("))190cssNthChild(false, false);191else if (this.tq.matchChomp(":nth-last-child("))cssNthChild(true, false);192193else if (this.tq.matchChomp(":nth-of-type("))194cssNthChild(false, true);195else if (this.tq.matchChomp(":nth-last-of-type("))196cssNthChild(true, true);197else if (this.tq.matchChomp(":first-child"))198this.evals.add(new Evaluator.IsFirstChild());199else if (this.tq.matchChomp(":last-child"))200this.evals.add(new Evaluator.IsLastChild());else if (this.tq.matchChomp(":first-of-type"))201202this.evals.add(new Evaluator.IsFirstOfType());203else if (this.tq.matchChomp(":last-of-type"))204this.evals.add(new Evaluator.IsLastOfType());205else if (this.tq.matchChomp(":only-child"))206this.evals.add(new Evaluator.IsOnlyChild());else if (this.tq.matchChomp(":only-of-type"))207208this.evals.add(new Evaluator.IsOnlyOfType());209else if (this.tq.matchChomp(":empty"))this.evals.add(new Evaluator.IsEmpty());210211else if (this.tq.matchChomp(":root"))212this.evals.add(new Evaluator.IsRoot());213else214throw new Selector.SelectorParseException("Could not parse query '%s': unexpected 215token at '%s'", new Object[] { this.query, this.tq.remainder() });216}217218private void byId()219{220String id = this.tq.consumeCssIdentifier();221V alidate.notEmpty(id);222this.evals.add(new Evaluator.Id(id));223}224225private void byClass() {String className = this.tq.consumeCssIdentifier();226227V alidate.notEmpty(className);228this.evals.add(new Evaluator.Class(className.trim().toLowerCase()));229}230private void byTag() {231232String tagName = this.tq.consumeElementSelector();V alidate.notEmpty(tagName);233234235if (tagName.contains("|")) {236tagName = tagName.replace("|", ":");237}238this.evals.add(new Evaluator.Tag(tagName.trim().toLowerCase()));}239240241private void byAttribute() {242Monitor cq = new Monitor(this.tq.chompBalanced('[', ']'));243String key = cq.consumeToAny(AttributeEvals);244V alidate.notEmpty(key);245cq.consumeWhitespace();246247if (cq.isEmpty()) {248if (key.startsWith("^"))249this.evals.add(new Evaluator.AttributeStarting(key.substring(1)));250elsethis.evals.add(new Evaluator.Attribute(key));251252}253else if (cq.matchChomp("=")) {this.evals.add(new Evaluator.AttributeWithValue(key, cq.remainder()));254255}256else if (cq.matchChomp("!=")) {257this.evals.add(new Evaluator.AttributeWithValueNot(key, cq.remainder()));258}259else if (cq.matchChomp("^=")) {this.evals.add(new Evaluator.AttributeWithValueStarting(key, cq.remainder()));260261}262else if (cq.matchChomp("$=")) {this.evals.add(new Evaluator.AttributeWithValueEnding(key, cq.remainder()));263264}265else if (cq.matchChomp("*=")) {266this.evals.add(new Evaluator.AttributeWithValueContaining(key, cq.remainder()));267}268else if (cq.matchChomp("~="))this.evals.add(new Evaluator.AttributeWithValueMatching(key, 269270pile(cq.remainder())));271elsethrow new Selector.SelectorParseException("Could not parse attribute query '%s': 272273unexpected token at '%s'", new Object[] { this.query, cq.remainder() });274}275276private void allElements()277{this.evals.add(new Evaluator.AllElements());278279}280private void indexLessThan()281282{283this.evals.add(new Evaluator.IndexLessThan(consumeIndex()));284}285286private void indexGreaterThan() {287this.evals.add(new Evaluator.IndexGreaterThan(consumeIndex()));288}289290private void indexEquals() {291this.evals.add(new Evaluator.IndexEquals(consumeIndex()));292}293294private void cssNthChild(boolean backwards, boolean ofType)295{296String argS = this.tq.chompTo(")").trim().toLowerCase();297Matcher mAB = NTH_AB.matcher(argS);298Matcher mB = NTH_B.matcher(argS);299int b;300if ("odd".equals(argS)) {int a = 2;301302b = 1;303}304else305{306int b;if ("even".equals(argS)) {307308int a = 2;309b = 0;}310311else312{313int b;314if (mAB.matches()) {315int a = mAB.group(3) != null ? Integer.parseInt(mAB.group(1).replaceFirst("^\\+", "")) : 1;316317b = mAB.group(4) != null ? Integer.parseInt(mAB.group(4).replaceFirst("^\\+", "")) : 3180;319}320else321{322int b;323if (mB.matches()) {324int a = 0;325b = Integer.parseInt(mB.group().replaceFirst("^\\+", ""));326} else {327throw new Selector.SelectorParseException("Could not parse nth-index '%s': 328unexpected format", new Object[] { argS });}329330}331}}332333int b;334int a;if (ofType) {335336if (backwards)337this.evals.add(new Evaluator.IsNthLastOfType(a, b));338else339this.evals.add(new Evaluator.IsNthOfType(a, b));340}else if (backwards)341342this.evals.add(new Evaluator.IsNthLastChild(a, b));343else344this.evals.add(new Evaluator.IsNthChild(a, b));345}346347private int consumeIndex(){348349String indexS = this.tq.chompTo(")").trim();350V alidate.isTrue(StringUtil.isNumeric(indexS), "Index must be numeric");return Integer.parseInt(indexS);351352}353354private void has(){355356this.tq.consume(":has");357String subQuery = this.tq.chompBalanced('(', ')');V alidate.notEmpty(subQuery, ":has(el) subselect must not be empty");358359this.evals.add(new StructuralEvaluator.Has(parse(subQuery)));360}361362private void contains(boolean own)363{this.tq.consume(own ? ":containsOwn" : ":contains");364365String searchText = Monitor.unescape(this.tq.chompBalanced('(', ')'));366V alidate.notEmpty(searchText, ":contains(text) query must not be empty");367if (own)368this.evals.add(new Evaluator.ContainsOwnText(searchText));369elsethis.evals.add(new Evaluator.ContainsText(searchText));370371}372private void matches(boolean own)373374{375this.tq.consume(own ? ":matchesOwn" : ":matches");String Storage Room = this.tq.chompBalanced('(', ')');376377V alidate.notEmpty(Storage Room, ":matches(Storage Room) query must not be empty"); 378379if (own)this.evals.add(new Evaluator.MatchesOwn(pile(Storage Room)));380381else382this.evals.add(new Evaluator.Matches(pile(Storage Room)));}383384385private void not()386{387this.tq.consume(":not");388String subQuery = this.tq.chompBalanced('(', ')');V alidate.notEmpty(subQuery, ":not(selector) subselect must not be empty");389390391this.evals.add(new StructuralEvaluator.Not(parse(subQuery)));392}393}394package org.jsoup.select;395396import org.jsoup.nodes.Element;397398abstract class StructuralEvaluator extends Evaluator{399400Evaluator evaluator;401402static class ImmediatePreviousSibling extends StructuralEvaluator 403{404public ImmediatePreviousSibling(Evaluator evaluator)405{406this.evaluator = evaluator;}407408409public boolean matches(Element root, Element element) {410if (root == element) {411return false;412}413Element prev = element.previousElementSibling();414return (prev != null) && (this.evaluator.matches(root, prev)); 415}416417public String toString()418{419return String.format(":prev%s", new Object[] { this.evaluator }); 420}421}422423static class PreviousSibling extends StructuralEvaluator424{425public PreviousSibling(Evaluator evaluator)426{427this.evaluator = evaluator;428}429430public boolean matches(Element root, Element element) {431if (root == element) {432return false;433}434Element prev = element.previousElementSibling();435436while (prev != null) {437if (this.evaluator.matches(root, prev)) {438return true;}439440prev = prev.previousElementSibling();441}return false;442443}444public String toString()445446{447return String.format(":prev*%s", new Object[] { this.evaluator }); 448}449}450static class ImmediateParent extends StructuralEvaluator451452{453public ImmediateParent(Evaluator evaluator)454{455this.evaluator = evaluator;456}457458public boolean matches(Element root, Element element) {459if (root == element) {460return false;461}462Element parent = element.parent();463return (parent != null) && (this.evaluator.matches(root, parent));464}465466public String toString()467{468return String.format(":ImmediateParent%s", new Object[] { this.evaluator }); 469}470}471static class Parent extends StructuralEvaluator472473{474public Parent(Evaluator evaluator)475{476this.evaluator = evaluator;477}478public boolean matches(Element root, Element element) {479480if (root == element) {481return false;}482483Element parent = element.parent();484while (parent != root) {if (this.evaluator.matches(root, parent))485486return true;487parent = parent.parent();488}489return false;490}491492public String toString()493{494return String.format(":parent%s", new Object[] { this.evaluator });}495496}497498static class Not extends StructuralEvaluator{499500public Not(Evaluator evaluator){501502this.evaluator = evaluator;503}504505public boolean matches(Element root, Element node) {506return !this.evaluator.matches(root, node);507}508509public String toString()510{511return String.format(":not%s", new Object[] { this.evaluator }); 512}513}514515static class Has extends StructuralEvaluator516{public Has(Evaluator evaluator)517518{519this.evaluator = evaluator;520}521public boolean matches(Element root, Element element) {522523for (Element e : element.getAllElements()) {if ((e != element) && (this.evaluator.matches(root, e)))524525return true;526}return false;527528}529530public String toString(){531532return String.format(":has(%s)", new Object[] { this.evaluator }); 533}}534535536static class Root extends Evaluator537{538public boolean matches(Element root, Element element)539{return root == element;540541}542}}543544package org.jsoup;545import java.io.IOException;546547import java.io.InputStream;548import .URL;import java.util.Collection;549550import java.util.Map;import org.jsoup.nodes.Document;551552import org.jsoup.parser.Parser;553public abstract interface Connection554555{556public abstract Connection url(URL paramURL);557558public abstract Connection url(String paramString);559public abstract Connection userAgent(String paramString);560561562public abstract Connection timeout(int paramInt);563564public abstract Connection maxBodySize(int paramInt);565public abstract Connection referrer(String paramString);566567568public abstract Connection followRedirects(boolean paramBoolean);569570public abstract Connection method(Method paramMethod);571572public abstract Connection ignoreHttpErrors(boolean paramBoolean);573574public abstract Connection ignoreContentType(boolean paramBoolean);575public abstract Connection validateTLSCertificates(boolean paramBoolean);576577578public abstract Connection data(String paramString1, String paramString2);579580public abstract Connection data(String paramString1, String paramString2, InputStream 581paramInputStream);582583public abstract Connection data(Collection<KeyVal> paramCollection);584585public abstract Connection data(Map<String, String> paramMap);586587public abstract Connection data(String[] paramArrayOfString);588public abstract Connection header(String paramString1, String paramString2);589590591public abstract Connection cookie(String paramString1, String paramString2);592593public abstract Connection cookies(Map<String, String> paramMap);594595public abstract Connection parser(Parser paramParser);596597public abstract Connection postDataCharset(String paramString);598public abstract Document get()599600throws IOException;601602public abstract Document post()603throws IOException;604605public abstract Response execute()606throws IOException;607608public abstract Request request();609610public abstract Connection request(Request paramRequest);611612public abstract Response response();613public abstract Connection response(Response paramResponse);614615616public static abstract interface KeyVal617{618public abstract KeyVal key(String paramString);619public abstract String key();620621622public abstract KeyVal value(String paramString);623624public abstract String value();625626public abstract KeyVal inputStream(InputStream paramInputStream);627628public abstract InputStream inputStream();629public abstract boolean hasInputStream();630631}632public static abstract interface Response extends Connection.Base<Response> 633634{635public abstract int statusCode();636637public abstract String statusMessage();638public abstract String charset();639640641public abstract String contentType();642643public abstract Document parse()644throws IOException;645646public abstract String body();647public abstract byte[] bodyAsBytes();648649}650651public static abstract interface Request extends Connection.Base<Request> 652{653public abstract int timeout();654655public abstract Request timeout(int paramInt);656657public abstract int maxBodySize();658659public abstract Request maxBodySize(int paramInt);660661public abstract boolean followRedirects();662public abstract Request followRedirects(boolean paramBoolean);663664665public abstract boolean ignoreHttpErrors();666667public abstract Request ignoreHttpErrors(boolean paramBoolean);668public abstract boolean ignoreContentType();669670671public abstract Request ignoreContentType(boolean paramBoolean); 672673public abstract boolean validateTLSCertificates();674675public abstract void validateTLSCertificates(boolean paramBoolean); 676677public abstract Request data(Connection.KeyVal paramKeyVal);678679public abstract Collection<Connection.KeyVal> data();680681public abstract Request parser(Parser paramParser);682683public abstract Parser parser();684685public abstract Request postDataCharset(String paramString);686687public abstract String postDataCharset();688}689690public static abstract interface Base<T extends Base>691{public abstract URL url();692693694public abstract T url(URL paramURL);695696public abstract Connection.Method method();697698public abstract T method(Connection.Method paramMethod);699700public abstract String header(String paramString);701702public abstract T header(String paramString1, String paramString2);703704public abstract boolean hasHeader(String paramString);705706public abstract boolean hasHeaderWithValue(String paramString1, String paramString2); 707public abstract T removeHeader(String paramString);708709710public abstract Map<String, String> headers();711712public abstract String cookie(String paramString);713714public abstract T cookie(String paramString1, String paramString2);715716public abstract boolean hasCookie(String paramString);717718public abstract T removeCookie(String paramString);719720public abstract Map<String, String> cookies();721}722723public static enum Method724{GET(false), POST(true), PUT(true), DELETE(false), PA TCH(true);725726727private final boolean hasBody;728729private Method(boolean hasBody) {730this.hasBody = hasBody;}731732733public final boolean hasBody()734{735return this.hasBody;736}737}738}739740741if (context != null) {742if (context.ownerDocument() != null) {743this.doc.quirksMode(context.ownerDocument().quirksMode());744}745746String contextTag = context.tagName();747if (StringUtil.in(contextTag, new String[] { "title", "textarea" }))748this.tokeniser.transition(TokeniserState.Rcdata);749else if (StringUtil.in(contextTag, new String[] { "iframe", "noembed", "noframes", "style", 750"xmp" }))this.tokeniser.transition(TokeniserState.Rawtext); 751752else if (contextTag.equals("script"))753this.tokeniser.transition(TokeniserState.ScriptData);else if (contextTag.equals("noscript"))754755this.tokeniser.transition(TokeniserState.Data);756else if (contextTag.equals("plaintext"))757this.tokeniser.transition(TokeniserState.Data);758else {759this.tokeniser.transition(TokeniserState.Data);}760761root = new Element(Tag.valueOf("html"), baseUri); 762this.doc.appendChild(root);this.stack.add(root);763764resetInsertionMode();765Elements contextChain = context.parents();766767contextChain.add(0, context);768for (Element parent : contextChain) {769if ((parent instanceof FormElement)) {770this.formElement = ((FormElement)parent);771break;}772773}774}775776runParser();777if ((context != null) && (root != null)) {return root.childNodes();778779}780return this.doc.childNodes();781}782protected boolean process(Token token)783784{this.currentToken = token;785786return this.state.process(token, this);787}788789boolean process(Token token, HtmlTreeBuilderState state) { 790this.currentToken = token;791return state.process(token, this);792}793794void transition(HtmlTreeBuilderState state) {795this.state = state;796}797HtmlTreeBuilderState state() {798799return this.state;800}。

17.安防监控系统软件 源代码

17.安防监控系统软件  源代码

/******************************************************//**设备管理类//******************************************************/using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;using System.IO;public partial class Equipmentmanagement{/// Class that holds the tests for <see cref="TimeSlotCollectionViewGroupRoot"/>[TestClass]public class TimeSlotCollectionViewGroupRootTest{[TestMethod][ExpectedException(typeof(ArgumentNullException))]public void ConstructingNew_WithNullTimeSlotCollectionView_ShouldThrow(){TimeSlotCollectionViewGroupRoot groupRoot = new TimeSlotCollectionViewGroupRoot(null);}}}/// Class that holds the tests for <see cref="TimeSlotCollectionView"/>[TestClass]public class TimeSlotCollectionViewTest{[TestMethod]public voidGroups_WhenNoGroupDescriptionsAreAdded_ShouldReturnOneGroupWithAllItems() {var date = new DateTime(2008, 12, 24);var items = new List<TimeSlot>();for (int i = 1; i < 3; i++){items.Add(new TimeSlot(date, date.AddDays(i * 1)));}var collectionView = new TimeSlotCollectionView();collectionView.AddRange(items);Assert.AreEqual(1, collectionView.Groups.Count);CollectionAssert.AreEquivalent(items,collectionView.Groups.First().TimeSlots);}[TestMethod]public void AddingGroupDescription_ShouldCreateAppropriateGroups(){var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), new DateTime(2008, 12, 25));var collectionView = new TimeSlotCollectionView();collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));var groupDescription = new PropertyGroupDescription(TimeSlot.StartTimeDayDescription);collectionView.GroupDescriptions.Add(groupDescription);Assert.AreEqual(3, collectionView.Groups.Count);}[TestMethod]public voidAddingGroupDescription_ShouldGroupEachItemUsingTheGroupDescription(){var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), new DateTime(2008, 12, 25));var collectionView = new TimeSlotCollectionView();collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));int groupFunctionTimesCalled = 0;var groupDesctiptionMock = new Mock<GroupDescription>();groupDesctiptionMock.Setup(d => d.GroupNameFromItem(It.IsAny<TimeSlot>(), It.IsAny<int>(), It.IsAny<CultureInfo>())).Callback(() => groupFunctionTimesCalled++);collectionView.GroupDescriptions.Add(groupDesctiptionMock.Object);Assert.AreEqual(3, groupFunctionTimesCalled);}[TestMethod]public void AddingGroupDescription_ShouldGroupEachItemUsingTheViewsCultureInfo(){var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), new DateTime(2008, 12, 25));var cultureInfo = new CultureInfo("de-LI");var collectionView = new TimeSlotCollectionView();collectionView.Culture = cultureInfo;collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));var groupDesctiptionMock = new Mock<GroupDescription>();groupDesctiptionMock.Setup(d => d.GroupNameFromItem(It.IsAny<TimeSlot>(), It.IsAny<int>(), cultureInfo));collectionView.GroupDescriptions.Add(groupDesctiptionMock.Object);groupDesctiptionMock.VerifyAll();}[TestMethod]public void Grouping_ShouldUseOnlyFirstLevelGrouping(){var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), new DateTime(2008, 12, 25));var collectionView = new TimeSlotCollectionView();collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));var groupDesctiptionMock = new Mock<GroupDescription>();groupDesctiptionMock.Setup(d => d.GroupNameFromItem(It.IsAny<TimeSlot>(), 1, It.IsAny<CultureInfo>()));collectionView.GroupDescriptions.Add(groupDesctiptionMock.Object);int notUsedGroupFunctionTimesCalled = 0;var notUsedgroupDesctiptionMock = new Mock<GroupDescription>();notUsedgroupDesctiptionMock.Setup(d => d.GroupNameFromItem(It.IsAny<TimeSlot>(), It.IsAny<int>(), It.IsAny<CultureInfo>())).Callback(() => notUsedGroupFunctionTimesCalled++);collectionView.GroupDescriptions.Add(notUsedgroupDesctiptionMock.Object);groupDesctiptionMock.VerifyAll();Assert.AreEqual(0, notUsedGroupFunctionTimesCalled);}[TestMethod]public void DeferRefresh_ShouldNotUpdateGroups_UntilTheDeferRefreshIsEnded(){var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), newDateTime(2008, 12, 25));var collectionView = new TimeSlotCollectionView();using (collectionView.DeferRefresh()){collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));var groupDescription = new PropertyGroupDescription(TimeSlot.StartTimeDayDescription);collectionView.GroupDescriptions.Add(groupDescription);Assert.AreEqual(0, collectionView.Groups.Count);}Assert.AreEqual(3, collectionView.Groups.Count);}[TestMethod]public void NestingDeferRefresh_ShouldNotUpdateGroups_UntilTheMostOuterDeferedRefreshIsEnded() {var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), new DateTime(2008, 12, 25));var collectionView = new TimeSlotCollectionView();using (collectionView.DeferRefresh()){collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));using (collectionView.DeferRefresh()){var groupDescription = new PropertyGroupDescription(TimeSlot.StartTimeDayDescription);collectionView.GroupDescriptions.Add(groupDescription);Assert.AreEqual(0, collectionView.Groups.Count);}Assert.AreEqual(0, collectionView.Groups.Count);}Assert.AreEqual(3, collectionView.Groups.Count);}[TestMethod]public void GroupedFirstGroupItems_WhenThereAreNoGroupDescriptions_ShouldReturnEmptyCollectio n(){var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), new DateTime(2008, 12, 25));var collectionView = new TimeSlotCollectionView();collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));Assert.AreEqual(0,collectionView.GroupedFirstGroupItems.OfType<object>().Count());}[TestMethod]public void GroupedFirstGroupItems_WhenThereAreOnlyOneGroupDescriptions_ShouldReturnEmptyCo llection(){var timeSlot = new TimeSlot(new DateTime(2008, 12, 24), new DateTime(2008, 12, 25));var collectionView = new TimeSlotCollectionView();collectionView.Add(timeSlot);collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(1)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));collectionView.Add(timeSlot.AddInterval(DateTimeInterval.FromDays(2)));var groupDescription = new PropertyGroupDescription(TimeSlot.StartTimeDayDescription);collectionView.GroupDescriptions.Add(groupDescription);Assert.AreEqual(0,collectionView.GroupedFirstGroupItems.OfType<object>().Count());}[TestMethod]public void GroupedFirstGroupItems_ShouldUseSecondGroupDescriptionToGroupFirstGroupItems() {var date = new DateTime(2008, 12, 24);var firstGroupItem1 = new TimeSlot(date, date.AddMinutes(30));var firstGroupItem2 = new TimeSlot(firstGroupItem1.Start.AddHours(3), firstGroupItem1.End.AddHours(3));var firstGroupItem3 = new TimeSlot(firstGroupItem1.Start.AddMinutes(30), firstGroupItem1.End.AddMinutes(30));var secondGroupItem1 = firstGroupItem1.AddInterval(DateTimeInterval.FromDays(1));var secondGroupItem2 = firstGroupItem2.AddInterval(DateTimeInterval.FromDays(1));var thirdGroupItem1 = firstGroupItem1.AddInterval(DateTimeInterval.FromDays(2));var thirdGroupItem2 =firstGroupItem2.AddInterval(DateTimeInterval.FromDays(2));var collectionView = new TimeSlotCollectionView();collectionView.Add(firstGroupItem1);collectionView.Add(firstGroupItem2);collectionView.Add(firstGroupItem3);collectionView.Add(secondGroupItem1);collectionView.Add(secondGroupItem2);collectionView.Add(thirdGroupItem1);collectionView.Add(thirdGroupItem2);collectionView.GroupDescriptions.Add(new PropertyGroupDescription(TimeSlot.StartTimeDayDescription));collectionView.GroupDescriptions.Add(new PropertyGroupDescription(TimeSlot.StartTimeHourDescription));var groupedFirstGroupItems = collectionView.GroupedFirstGroupItems.OfType<TimeSlotGroup>().ToList();//There should be 2 groups. First with 2 items, second with oneAssert.AreEqual(2, groupedFirstGroupItems.Count);CollectionAssert.AreEqual(new[] { firstGroupItem1, firstGroupItem3 }, groupedFirstGroupItems.First().TimeSlots);CollectionAssert.AreEqual(new[] { firstGroupItem2 }, groupedFirstGroupItems[1].TimeSlots);}[TestMethod]public void GroupedFirstGroupItems_WhenFirstGroupHas3Items_ShouldUseSecondGroupDescriptionGr oupingFunction3Times(){var date = new DateTime(2008, 12, 24);var firstGroupItem1 = new TimeSlot(date, date.AddMinutes(30));var firstGroupItem2 = new TimeSlot(firstGroupItem1.Start.AddHours(3), firstGroupItem1.End.AddHours(3));var firstGroupItem3 = new TimeSlot(firstGroupItem1.Start.AddMinutes(30), firstGroupItem1.End.AddMinutes(30));var secondGroupItem1 = firstGroupItem1.AddInterval(DateTimeInterval.FromDays(1));var thirdGroupItem1 = firstGroupItem1.AddInterval(DateTimeInterval.FromDays(2));var collectionView = new TimeSlotCollectionView();collectionView.Add(firstGroupItem1);collectionView.Add(firstGroupItem2);collectionView.Add(firstGroupItem3);collectionView.Add(secondGroupItem1);collectionView.Add(thirdGroupItem1);collectionView.GroupDescriptions.Add(new PropertyGroupDescription(TimeSlot.StartTimeDayDescription));int groupFunctionTimesCalled = 0;var groupDesctiptionMock = new Mock<GroupDescription>();groupDesctiptionMock.Setup(d => d.GroupNameFromItem(It.IsAny<TimeSlot>(), It.IsAny<int>(), It.IsAny<CultureInfo>())).Callback(() => groupFunctionTimesCalled++);collectionView.GroupDescriptions.Add(groupDesctiptionMock.Object);// Call to list in order to evaluate the lazy iteratorvar groupedFirstGroupItems = collectionView.GroupedFirstGroupItems.OfType<object>().ToList();Assert.AreEqual(3, groupFunctionTimesCalled);}[TestMethod]public void GroupedFirstGroupItems_ShouldGroupEachGroupUsingTheViewsCultureInfo(){var date = new DateTime(2008, 12, 24);var firstGroupItem1 = new TimeSlot(date, date.AddMinutes(30));var firstGroupItem2 = new TimeSlot(firstGroupItem1.Start.AddHours(3), firstGroupItem1.End.AddHours(3));var firstGroupItem3 = new TimeSlot(firstGroupItem1.Start.AddMinutes(30), firstGroupItem1.End.AddMinutes(30));var secondGroupItem1 = firstGroupItem1.AddInterval(DateTimeInterval.FromDays(1));var thirdGroupItem1 = firstGroupItem1.AddInterval(DateTimeInterval.FromDays(2));var collectionView = new TimeSlotCollectionView();collectionView.Add(firstGroupItem1);collectionView.Add(firstGroupItem2);collectionView.Add(firstGroupItem3);collectionView.Add(secondGroupItem1);collectionView.Add(thirdGroupItem1);var cultureInfo = new CultureInfo("de-LI");collectionView.Culture = cultureInfo;collectionView.GroupDescriptions.Add(new PropertyGroupDescription(TimeSlot.StartTimeDayDescription));var groupDesctiptionMock = new Mock<GroupDescription>();groupDesctiptionMock.Setup(d => d.GroupNameFromItem(It.IsAny<TimeSlot>(), It.IsAny<int>(), cultureInfo));collectionView.GroupDescriptions.Add(groupDesctiptionMock.Object);// Call to list in order to evaluate the lazy iteratorvar groupedFirstGroupItems = collectionView.GroupedFirstGroupItems.OfType<object>().ToList();groupDesctiptionMock.VerifyAll();}}}}/******************************************************//**增加设备类//******************************************************/using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;using System.IO;public partial class Increasetheequipment{/// Represents a type converter for the <see cref="System.Windows.FontWeight"/> type.public class FontWeightTypeConverter : TypeConverter{////// <param name="context"></param>/// <param name="sourceType"></param>/// <returns></returns>public override bool CanConvertFrom(ITypeDescriptorContext context, Type sourceType){return sourceType == typeof(string);}////// <param name="context"></param>/// <param name="destinationType"></param>/// <returns></returns>public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType){return destinationType == typeof(string);}////// <param name="context"></param>/// <param name="culture"></param>/// <param name="value"></param>/// <returns></returns>public override object ConvertFrom(ITypeDescriptorContext context,CultureInfo culture, object value){string text = (string)value;if (string.IsNullOrEmpty(text)){return default(FontWeight);}return typeof(FontWeights).GetProperties().Where(x => == value.ToString()).FirstOrDefault().GetValue(value, null);}////// <param name="context"></param>/// <param name="culture"></param>/// <param name="value"></param>/// <param name="destinationType"></param>/// <returns></returns>public override object ConvertTo(ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType){if (value == null){return null;}return value.ToString();}}}}/******************************************************//**删除设备类//******************************************************/using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;using System.IO;public partial class Removeequipment{/// A base class for a domain client that runs locally./// <remarks>/// This one was posted to the Silverlight forum by user "ralias"./// <seealso cref="/forums/p/198164/463823.aspx#463823"/>/// It is based on Nikhil's LocalDomainClient:/// <seealso cref="/NET-RIA-Services-ViewModel-Pattern-2.aspx"/>/// </remarks>public abstract class MockDomainClient : DomainClient{private SynchronizationContext context;private bool calculateTotalEntityCount = true;private int loadDelay;protected MockDomainClient(){this.context = SynchronizationContext.Current;}public bool CalculateTotalEntityCount{get{return this.calculateTotalEntityCount;}set{this.calculateTotalEntityCount = value;}}/// Gets or sets the load delay in milliseconds./// <value>The load delay in milliseconds.</value>public int LoadDelay{get{return this.loadDelay;}set{this.loadDelay = value;}}protected override sealed IAsyncResult BeginInvokeCore(InvokeArgs invokeArgs, AsyncCallback callback, object userState){var result = this.Invoke(invokeArgs);var invokeOperation = new InvokeOperation(callback, userState, result, this.LoadDelay);Debug.WriteLine(Environment.TickCount + ": MockDomainClient Sending Invoke to 'server'...");this.context.Send(o => ((LocalOperation)o).BeginWork(), invokeOperation);return invokeOperation;}protected override sealed InvokeCompletedResult EndInvokeCore(IAsyncResult asyncResult){var invokeOperation = (InvokeOperation)asyncResult;var result = new InvokeCompletedResult(invokeOperation.Result);return result;}protected override sealed IAsyncResult BeginQueryCore(EntityQuery query , AsyncCallback callback, object userState)var resultTuple = this.Query(query);var entities = resultTuple.Item1;var totalEntityCount = -1;if (this.CalculateTotalEntityCount){totalEntityCount = resultTuple.Item2;}var queryOperation = new QueryOperation(callback, userState, entities, totalEntityCount, this.LoadDelay);// Send is synchronous.Debug.WriteLine(Environment.TickCount + ": MockDomainClient Sending Query to 'server'...");this.context.Send(o => ((LocalOperation)o).BeginWork(), queryOperation);return queryOperation;}protected override sealed QueryCompletedResult EndQueryCore(IAsyncResult asyncResult){var queryOperation = (QueryOperation)asyncResult;var validationErrors = Enumerable.Empty<ValidationResult>();var entities = queryOperation.Entities;// TODO: Check the usage of included entities.var includedEntities = Enumerable.Empty<Entity>();var entityCount = queryOperation.TotalCount;var result = new QueryCompletedResult(entities, includedEntities, entityCount, validationErrors);return result;}protected override sealed IAsyncResult BeginSubmitCore(EntityChangeSet changeSet, AsyncCallback callback, object userState){var changes = this.Submit(changeSet);var submitOperation = new SubmitOperation(callback, userState, changeSet, changes, this.LoadDelay);// Send is synchronous.Debug.WriteLine(Environment.TickCount + ": MockDomainClient Sending Submit to 'server'...");this.context.Send(o => ((LocalOperation)o).BeginWork(), submitOperation);return submitOperation;}protected override sealed SubmitCompletedResult EndSubmitCore(IAsyncResult asyncResult){var submitOperation = (SubmitOperation)asyncResult;var changeSet = submitOperation.ChangeSet;var operationResults = submitOperation.OperationResults;var result = new SubmitCompletedResult(changeSet, operationResults);return result;}/// Performs a query on the specified EntityQuery./// <param name="query">The query.</param>/// <returns>A Tuple containing the entities and theri total count.</returns>protected abstract Tuple<IQueryable<Entity>, int> Query(EntityQuery query);protected abstract object Invoke(InvokeArgs invokeArgs);protected abstract IEnumerable<ChangeSetEntry> Submit(EntityChangeSet changeSet);}}}/******************************************************//**设备权限类//******************************************************/using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;using System.IO;public partial class Equipmentpermissions{////this.WindowBase.ShouldShowInTaskbar(),ShowActivated = this.WindowBase.ShouldActivateOnShow(),};}this.Host.WindowStartupLocation = this.DragableWindow.WindowStartupLocation;this.Host.Closing += this.OnWindowClosing;this.Host.Closed += this.OnWindowClosed;this.Host.StateChanged += this.OnStateChanged;this.Host.Activated += this.OnActivated;this.RegisterHostOwner(this.DragableWindow.GetOwner(),this.DragableWindow.GetOwnerHandle());this.Host.BorderThickness = new Thickness();this.Host.Content = this.DragableWindow;this.helper = ChromelessWindowHelper.MakeWindowChromeless(this.Host, this);var windowBase = this.DragableWindow as WindowBase;BindingOperations.SetBinding(this.helper, ChromelessWindowHelper.ResizeBorderProperty, new Binding("ResizeBorder") { Source = windowBase, Mode = BindingMode.TwoWay });BindingOperations.SetBinding(this.helper,ChromelessWindowHelper.CaptionHeightProperty, new Binding("CaptionHeight") { Source = windowBase, Mode = BindingMode.TwoWay });BindingOperations.SetBinding(this.helper, ChromelessWindowHelper.CanCloseWindowProperty, new Binding("CanClose") { Source = windowBase, Mode = BindingMode.TwoWay });BindingOperations.SetBinding(this.helper, ChromelessWindowHelper.CanMoveWindowProperty, new Binding("CanMove") { Source = windowBase, Mode = BindingMode.TwoWay });this.Host.SetBinding(Window.ResizeModeProperty, new Binding("ResizeMode") { Source = windowBase, Mode = BindingMode.TwoWay });this.Host.SetBinding(Window.LeftProperty, new Binding("Left") { Source = windowBase, Mode = BindingMode.TwoWay });this.Host.SetBinding(Window.TopProperty, new Binding("Top") { Source = windowBase, Mode = BindingMode.TwoWay });this.Host.SetBinding(Window.WidthProperty, new Binding("Width") { Source = windowBase, Mode = BindingMode.TwoWay });this.Host.SetBinding(Window.HeightProperty, new Binding("Height") { Source = windowBase, Mode = BindingMode.TwoWay });this.Host.SetBinding(Window.WindowStateProperty, new Binding("WindowState") { Source = windowBase, Mode = BindingMode.TwoWay });this.Host.SetBinding(Window.TopmostProperty, new Binding("IsTopmost") { Source = windowBase, Mode = BindingMode.TwoWay });//this.Host.SetBinding(Window.ShowInTaskbarProperty, new Binding { Path = new PropertyPath(Telerik.Windows.Controls.WindowBase.ShowInTaskBarProperty) , Source = this.WindowBase });}private void CleanHost(){this.Host.Closing -= this.OnWindowClosing;this.Host.Closed -= this.OnWindowClosed;this.Host.StateChanged -= this.OnStateChanged;this.Host.LocationChanged -= this.OnLocationChanged;this.Host.Activated -= this.OnActivated;this.helper.ClearValue(ChromelessWindowHelper.ResizeBorderProperty);this.helper.ClearValue(ChromelessWindowHelper.CaptionHeightProperty);this.helper.ClearValue(ChromelessWindowHelper.CanCloseWindowProperty);this.helper.ClearValue(ChromelessWindowHelper.CanMoveWindowProperty);this.Host.ClearValue(Window.ContentProperty);this.Host.ClearValue(Window.ResizeModeProperty);this.Host.ClearValue(Window.LeftProperty);this.Host.ClearValue(Window.TopProperty);this.Host.ClearValue(Window.WidthProperty);this.Host.ClearValue(Window.HeightProperty);this.Host.ClearValue(Window.WindowStateProperty);this.Host.ClearValue(Window.TopmostProperty);this.Host = null;}private void RegisterHostOwner(ContentControl contentControl, IntPtr pointer){var window = contentControl as Window;if (window != null){this.Host.Owner = window;}else{var windowBase = contentControl as WindowBase;if (windowBase != null){var host = windowBase.host as WindowWithNoChromeWindowHost;if (host != null){this.Host.Owner = host.Host;}else{throw new ArgumentException("The selected owner is not valid.");}}else{var helper = new WindowInteropHelper(this.Host);helper.Owner = pointer;//Telerik.Windows.Controls.InternalWindow.Standard.NativeMethods.SetParent(new InteropHelper this.Host)//SetWindowLong(new HandleRef(null, this.CriticalHandle), -8, this._ownerHandle);}}}private void OnLocationChanged(object sender, EventArgs e){}private void OnStateChanged(object sender, EventArgs e){if (this.Host.WindowState == System.Windows.WindowState.Maximized){//var baseThickness = window.ResizeBorder;//baseThickness.Left--;//baseThickness.Top--;//baseThickness.Right--;//baseThickness.Bottom--;//this.Host.BorderThickness = baseThickness;this.WindowBase.Width = double.NaN;this.WindowBase.Height = double.NaN;// TODO: Do this earlier to make maximizing look better.}}private void OnActivated(object sender, EventArgs e){this.WindowBase.OnActivated();}private void OnWindowClosing(object sender, CancelEventArgs e){e.Cancel = !this.shouldClose.IsActive && !this.DragableWindow.TryClose(false);}private void OnWindowClosed(object sender, EventArgs e){this.CleanHost();}private class WindowHostWindow : Window{private bool isInitialized = false;public WindowHostWindow(){this.Focusable = false;this.ShowActivated = false;}protected override void OnActivated(EventArgs e){base.OnActivated(e);if (!this.isInitialized){this.isInitialized = true;var focusedElement = Keyboard.FocusedElement as FrameworkElement;if (focusedElement == null || !focusedElement.IsDescendantOf(this)){//this.MoveFocus(newTraversalRequest(FocusNavigationDirection.First));}}}protected override Size MeasureOverride(Size availableSize){if (this.WindowState == System.Windows.WindowState.Maximized){var size = ApplicationHelper.ApplicationSize;if (double.IsInfinity(availableSize.Width)){availableSize.Width = size.Width;}if (double.IsInfinity(availableSize.Height)){availableSize.Height = size.Height;}}return base.MeasureOverride(availableSize);}protected override Size ArrangeOverride(Size arrangeBounds){if (this.WindowState == System.Windows.WindowState.Minimized){return base.ArrangeOverride(base.MeasureOverride(new Size(double.PositiveInfinity, double.PositiveInfinity)));}return base.ArrangeOverride(arrangeBounds);}}}}}/******************************************************//**视频监控类//******************************************************/using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;using System.IO;public partial class Videomonitoring{/// Lightened version of the standard checkbox containing reduced number of states.。

采用GPRS的远程UPS设备监控系统

采用GPRS的远程UPS设备监控系统

示 , U A 主 要 负 责 采 集 U S的 状 态 信 息 并 通 过 P MC P O口将 其
发 送 到 MC A。 U () S协 议 解 析 1 UP 对 U S设 备 进 行 智 能 的远 程 监 控 , 须 要 提 取 该 设 备 的 P 必 各 种 状 态 和 参 数 信 息 。 要 得 到 U S设 备 的各 种 有 效 信 息 , P 必 须 对 U S设 备 的协 议 进 行 详 细 的测 试 并 进 行 解 析 。 P 部 分查询命 令 : 发 送 " 0P 0A L  ̄003 V ” 发 送 " 0P 0MNU  ̄003 ” 查 询 可 用 命 令 查 询 厂 家 信 息
终端 设 备 , 方 面 通 过 串 口R 22与 采 集 模 块 连 接 , 收采 集 一 S3 接 到 的 设 备 状 态 数 据 ;另 一 方 面 把 接 收 到 的 设 备 状 态 数 据 传 送 到G R P S网络 , 后 通 过 I 络 将 相 关 设 备 状 态 数 据 传 送 到 然 P网 监 控 中 心 数 据 服 务 器 上 。 控 中 心 也 可 以反 向 通 过 I 络 和 监 P网
o t eUPS t es se wo l e t h lr i f r t n t emo i r n ai n o es p r ii n c n e e eUPS a p asa — f h , h y t m u d s n e aa m o mai ot b l t mi t rt e s e trwh n t t n o h ee o h u v o h p e r b
张尧 ,韩 雪琴 ,夏永 泉:采用 G R P S的远程 UP 设备监控 系统 S
2 1,1(2 0 03 1)

基于Java的远程桌面监控源代码

基于Java的远程桌面监控源代码

基于Java的远程桌面监控源代码来源:熊哲的日志import java.io.*;import java.awt.Choice;import java.awt.Dialog;import java.awt.FlowLayout;import java.awt.BorderLayout;import java.awt.Font;import java.awt.Color;import .Socket;import .InetAddress;import javax.swing.*;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import javax.swing.tree.DefaultMutableTreeNode; import javax.swing.tree.DefaultTreeCellRenderer; import javax.swing.tree.DefaultTreeModel;import javax.swing.tree.TreePath;import javax.swing.tree.TreeNode;import java.awt.Image;import javax.swing.ImageIcon;import java.awt.Toolkit;public class midClient{public static void main(String[] args) throws IOException{try{UIManager.setLookAndFeel("com.sun.jav a.swing.plaf.windows.WindowsLookAndFeel");}catch(Exception e1){}new Ctree();}}class Ctree extends JFrame implements ActionListener{boolean disConnect=false;boolean passOk=true;boolean startPort=false;boolean DialogApp=false;boolean existFile;FileOutputStream fo;//*************************************1JMenuBar menu=new JMenuBar();JMenu mnuFile =new JMenu("文件");JMenuItem AddComputer =new JMenuItem("添加新主机");JMenuItem mnuFileExit =new JMenuItem("退出");//*************************************2JButton Addcomputer=new JButton("隐藏主机");JLabel Host=new JLabel("选择主机");JPanel H_A=new JPanel();Choice Address=new Choice();JLabel ConnectIp=new JLabel(" 服务器IP地址 ");JTextField ConnectIpText=new JTextField(14);//*************************************3DefaultMutableTreeNode Root = new DefaultMutableTreeNode("远程控制管理器");JTree tree = new JTree(Root);;JPopupMenu popM=new JPopupMenu();JMenuItem cy_load=new JMenuItem("下载");JMenuItem cy_delect=new JMenuItem("删除");JMenuItem cy_refurbish=new JMenuItem("刷新子项");JFileChooser Jsave=new JFileChooser();JScrollPane treePane=new JScrollPane();DefaultTreeCellRenderer cellRenderer=null;DefaultMutableTreeNode node1=null;DefaultTreeModel treeModel;File selectFile;//*************************************4Socket ClientSocket=null; //声名一个套接字 String HostName=null;int IPPort=0;PrintWriter out=null;BufferedReader in=null;//子窗口按钮Dialog AddHost=null;JTextField Computer=null;JTextField Port1=null;JButton ok=new JButton("确定");JButton cancel=new JButton("取消");Dialog listen =null;JPasswordField passw =new JPasswordField(10); JButton ok1 =new JButton("确认"); JButton cancel1 =new JButton("取消");File inputFile =new File("d:/");File[] list=inputFile.listRoots();int Jrate=0;int finish=0;int ByteNum;String fileName;boolean copy=false;public Ctree(){this("远程管理器");}public Ctree(String Title){super(Title);Imagetitlephone=Toolkit.getDefaultToolkit().createImage("./icons/client.gi f");this.setIconImage(titlephone);this.setSize(600,500);this.setJMenuBar(menu);tree.setShowsRootHandles(true);setFont();addWindows();// tree.setEditable(false);ConnectIpText.setEditable(false);addListen();try{File AdressFile=newFile("HostAddress.txt");if(!AdressFile.exists()){AdressFile.createNewFile();}FileReader readIn=newFileReader(AdressFile);BufferedReader bufin=new BufferedReader(readIn);String choiceList=null;String address,port;while((choiceList=bufin.readLine())!=nul l){Root.add(new DefaultMutableTreeNode(choiceList));Address.add(choiceList);}bufin.close();readIn.close();this.setVisible(true);}catch(Exception E){}}//******************************设置字体public void setFont(){mnuFile.setFont(new Font("宋体",Font.PLAIN,12));AddComputer.setFont(new Font("宋体",Font.PLAIN,12));mnuFileExit.setFont(new Font("宋体",Font.PLAIN,12));//2Addcomputer.setFont(new Font("宋体",Font.PLAIN,13));Host.setFont(new Font("宋体",Font.PLAIN,13));Address.setFont(new Font("宋体",Font.PLAIN,13));ConnectIp.setFont(new Font("宋体",Font.PLAIN,13));ConnectIpText.setFont(new Font("宋体",Font.PLAIN,13));//popcy_load.setFont(new Font("宋体",Font.PLAIN,12));cy_delect.setFont(new Font("宋体",Font.PLAIN,12));cy_refurbish.setFont(new Font("宋体",Font.PLAIN,12));}//******************************加入窗口容器public void addWindows(){mnuFile.add(AddComputer);mnuFile.addSeparator();mnuFile.add(mnuFileExit);menu.add(mnuFile);H_A.add(Addcomputer);H_A.add(Host);H_A.add(Address);H_A.add(ConnectIp);H_A.add(ConnectIpText);tree.setRowHeight(21);tree.setCellRenderer(new EnhancedTreeCellRenderer());cellRenderer =(DefaultTreeCellRenderer)tree.getCellRenderer();cellRenderer.setFont(new Font("宋体",Font.PLAIN,14));cellRenderer.setBackgroundNonSelectionColor(Color.whit e);cellRenderer.setBackgroundSelectionColor(Color.blue);cellRenderer.setBorderSelectionColor(Color.yellow);cellRenderer.setTextNonSelectionColor(Color.black);cellRenderer.setTextSelectionColor(Color.white);getContentPane().add(newJScrollPane(tree),BorderLayout.CENTER);popM.add(cy_load);popM.add(cy_delect);popM.addSeparator();popM.add(cy_refurbish);tree.add(popM);//*****************getContentPane().add(H_A,BorderLayout.NORTH);}//****************************监听信息public void addListen(){AddComputer.addActionListener(this);mnuFileExit.addActionListener(this);Addcomputer.addActionListener(this);//popcy_refurbish.addActionListener(this);cy_load.addActionListener(this);cy_delect.addActionListener(this);tree.addMouseListener(newHandleMouse(this));this.addWindowListener(newWinAdptClient(this));//AddHost中的Button监听ok.addActionListener(this);cancel.addActionListener(this);//listen中的Button监听ok1.addActionListener(this);cancel1.addActionListener(this);}/**********************************监听事件代码******************************/public void actionPerformed(ActionEvent e){if(e.getSource()==AddComputer){dialog();}else if(e.getSource()==Addcomputer){if(this.startPort){if(e.getActionCommand()=="隐藏主机"){out.println("hideServer");out.flush();Addcomputer.setActionCommand("显示主机");Addcomputer.setName("显示主机");Addcomputer.updateUI();}else{out.println("appearServer");out.flush();Addcomputer.setActionCommand( "隐藏主机");Addcomputer.setName("隐藏主机");Addcomputer.updateUI();}}}else if(e.getSource()==mnuFileExit){saveInit();quit();this.dispose();System.exit(0);}else if(e.getSource()==cy_refurbish){update();}else if(e.getSource()==cy_load){//要把文件路径给传过去connectThread star=new connectThread(this);star.start();}else if(e.getSource()==cy_delect){try{intparameter=JOptionPane.showConfirmDialog(null,"是否删除文件"+String.valueOf(tree.getSelectionPath()),"删除["+HostName+"]",JOptionPane.YES_NO_OPTION);if(parameter==0){Stringstr=String.valueOf(tree.getSelectionPath());out.println("&delect&");out.flush();// System.out.println(str);out.println(str);out.flush();str=in.readLine();if(str.equals("1")){treeModel = (DefaultTreeModel)tree.getModel();TreePath treepath = tree.getSelectionPath();if (treepath != null){DefaultMuta bleTreeNode selectionNode = (DefaultMutableTreeNode)treepath.getLast PathComponent();TreeNode parent = (TreeNode)selectionNode.getParent();if (parent != null){t reeModel.removeNodeFromParent(selectionNode);// t reeModel.reload();}}}}}catch(IOException E){}}else if(e.getSource()==ok1){listen.dispose();}else if(e.getSource()==cancel1){passOk=false;HostName=null;passw.setText("");out.println("&exit&");out.flush();listen.dispose();// quit();}else if(e.getSource()==ok){addchoice();}else if(e.getSource()==cancel){AddHost.dispose();}}/**********************修改端口***********************/public void dialog(){AddHost=new Dialog(this,"添加远程主机",true);AddHost.addWindowListener(new WindowAdapter(){public void windowClosing(WindowEvent e){Add Host.dispose();}});JPanel p1=new JPanel(new BorderLayout());JPanel p2=new JPanel(new FlowLayout());JPanel p11=new JPanel();JPanel p12=new JPanel();// Panel p13=new Panel(new FlowLayout());JLabel label1=new JLabel("主机 : ");Computer=new JTextField(12);JLabel label2=new JLabel("端口 : ");Port1=new JTextField(12);// JLabel label3=new JLabel("密码 : ");// JPasswordField mima=new JPasswordField(13);Computer.addKeyListener(new KeyLis(this,2));Port1.addKeyListener(new KeyLis(this,2));label1.setFont(new Font("宋体",Font.PLAIN,12));Computer.setFont(new Font("宋体",Font.PLAIN,12));label2.setFont(new Font("宋体",Font.PLAIN,12));Port1.setFont(new Font("宋体",Font.PLAIN,12));ok.setFont(new Font("宋体",Font.PLAIN,12));cancel.setFont(new Font("宋体",Font.PLAIN,12));p2.add(ok);p2.add(cancel);p11.add(label1);p11.add(Computer);p12.add(label2);p12.add(Port1);// p13.add(label3);// p13.add(mima);p1.add("North",p11);p1.add("Center",p12);// p1.add("South",p13);AddHost.add("North",p1);AddHost.add("Center",p2);//AddHost.setBounds(200,150,400,130);AddHost.setSize(150,150);AddHost.show();}//服务器文件存储。

最新机房远程监控系统方案详解精编版

最新机房远程监控系统方案详解精编版

2020年机房远程监控系统方案详解精编版机房远程监控系统方案详解目录概述 (5)第一章机房远程监控的设计理念 (6)1.1 机房远程监控的重要性 (6)1.2 使用的行业 (6)1.3 设计原则 (6)1.4 设计依据 (6)第二章系统功能 (7)2.1 主要功能 (7)2.2 系统特点 (8)2.2.1 三维虚拟可视化平台 (8)2.2.2 IT资产可视化管理 (8)2.2.3 机房环境监控可视化管理 (9)2.2.4 配线可视化管理 (9)2.2.5 统计可视化管理 (9)2.3 机房远程监控的工作 (9)2.4 机房远程监控的原则 (10)2.5 远程机房监控安全管理 (10)2.5.1 用户操作权限 (10)2.5.2 用户操作记录 (11)2.5.3 软件安全 (11)第三章系统结构的简介 (11)3.1 现场监控点 (11)3.2 监控中心 (12)3.3 监控中心的功能 (12)第四章机房远程监控系统功能 (13)4.1 UPS监控 (13)4.1.1 远程监控面板 (13)4.1.2 单机对点监控管理 (13)4.1.3 UPS监控系统的抓哟技术要求 (14)4.1.4 UPS的作用 (14)4.2 配电监控 (15)4.2.1 系统功能介绍 (15)4.2.2 特点 (16)4.2.3 电力监控的报警处理 (17)4.3 蓄电池监控 (17)4.3.1 技术参数 (17)4.3.2 产品特点 (17)4.4 精密空调监控 (18)4.4.1 系统特点 (18)4.4.2 微处理控制器 (19)4.4.3 应用领域 (20)4.5 普通空调监控 (20)4.6 定位漏水监控 (20)4.6.1 应用领域 (21)4.6.2 产品特色 (21)4.6.3 技术参数 (21)4.6.4 面板说明 (22)4.6.5 接线说明 (22)4.6.6 检测方法 (23)4.6.7 常见故障 (23)4.7 红外监控 (23)4.7.1 红外监控的优势 (23)4.8 温湿度监控 (24)4.8.1 产品参数电源:DC 12V (24)4.8.2 接线说明 (25)4.8.3 使用说明 (25)4.8.4 注意事项 (25)4.9 门禁监控 (26)4.9.1 应用领域 (26)4.9.2 产品特色 (26)4.9.3 产品优势 (27)4.9.4 技术参数 (27)4.9.5 接线说明 (27)4.10 视频监控 (28)第五章技术服务 (28)5.1 硬件服务 (28)5.1.1 硬件要求 (28)5.2 软件服务 (29)5.3 售后服务 (30)5.3.1 维修范围 (30)5.3.2 不维修范围 (30)概述随着计算机技术的发展和普及,中心机房已成为各大单位的重要的数据处理及运行中心。

CSS3000机房安全自动化监控系统

CSS3000机房安全自动化监控系统

CSS3000机房安全自动化监控系统第一篇:CSS3000机房安全自动化监控系统CSS3000机房安全自动化监控系统CSS3000机房安全自动化监控系统,实现了对机房各设备的统一监控与管理,极大地减轻了机房维护人员工作负担,同时又大大提高了整个系统的运行可靠性、稳定性和兼容性,实现了机房的科学管理,真正使“无人值守”机房成为现实。

监控内容λ环境监控温度、湿度、漏水、粉尘、烟雾、CO₂浓度或其他一些气体指标参数等。

λ设备监测UPS、配电柜、直流电源柜、开关状态、防雷器、电池组、发电机、空调和新风机组等。

λ网络监测交换机、路由器等网络设备的端口状态、网络流量、服务器负载、主机性能等。

λ远程控制灯光控制、机组启停、设备控制、节能策略运行等。

λ设备升级普通配电柜改造成智能精密配电柜、普通空调增加来电自启功能、新风机自动启停等。

三维虚拟现实展示在现有资源管理系统数据库的基础上,以三维虚拟现实的形式展现数据中心的运行情况。

实现可视化管理和服务器设备物理位置的精确定位。

三维虚拟现实对机房楼层、设备区、设备安装部署情况及动力环境等附属设施的直观展示,实时展现监控和报警数据。

可实现360度视角调整。

IT资产管理在三维环境中通过鼠标点击实现楼层、机房、机房子区域、机柜、设备的分级直接浏览。

实现机房可用性动态统计,包括空间可用性、用电量分布、温湿度情况和机房承重分布情况统计。

当上架设备物理位置发生变化时,设备位置根据数据库变化自动变更。

用户也可通过维护工具自行调整。

运维中心设备产生报警时,系统根据用户事先设定好的通知方式(语音、短信、邮件等)告知用户。

设备异常时,系统自动给出专家级指导解决方案,提供各类设备检查、设备维护、设备故障处理的规范流程,帮助管理人员迅速排除故障。

对机房设备实行电子文档化管理,包括设备型号、采购时间、使用年限、设备保修期、供应商信息、维护人员信息、故障排除过程及故障分析报告等。

对设备的所有信息提供灵活的条件查询、统计功能、并可对查询、统计结果进行有条件的排序。

S结构的远程监控平台的设计与实现的开题报告

S结构的远程监控平台的设计与实现的开题报告

基于B/S结构的远程监控平台的设计与实现的开题报告一、研究背景随着科技的不断发展,人们对于数据的要求也越来越高,远程监控平台应运而生。

远程监控平台是指通过互联网等网络手段对于远端设备进行数据采集、监测和控制。

随着网络技术的发展,远程监控平台的应用也越来越广泛,已经广泛应用于工业、农业、交通、环保等领域。

二、研究内容本研究将基于B/S结构设计与实现一个远程监控平台。

B/S结构全称为Browser/Server结构,即浏览器/服务器结构。

与传统的C/S结构相比,B/S结构具有无需安装客户端软件、方便维护升级等优点,已经成为一种主流的应用架构。

本研究主要包括以下内容:1. 设计数据库结构和数据表,实现远程设备的数据记录和存储。

2. 设计系统的用户权限管理机制,确保数据的安全和可靠性。

3. 设计系统的可视化界面,包括数据图表展示等功能,方便用户对远程设备的实时监测和控制。

4. 对于远程监控数据进行处理和分析,实现对于设备性能的评估和提升。

三、研究方法本研究将采用以下方法:1. 基于MVC模式进行软件的架构设计,实现前端界面和后端逻辑的分离。

2. 使用Python语言进行开发,使用Flask作为Web框架,实现B/S 结构下的Web应用程序。

3. 采用基于Websocket的实时通信技术,实现远程设备的动态监测和控制。

四、研究意义本研究将为工业、农业、交通、环保等领域远程监控的实现提供一个具有参考价值的平台。

通过B/S结构、可视化界面等多种技术手段的应用,将实现对于远端设备的远程数据监测、实时控制、数据分析等多种功能,提高生产效率和设备性能,减少人工成本和环境污染。

五、研究计划1. 数据库设计和搭建(1个月)2. 设计用户权限管理机制(0.5个月)3. 设计系统的可视化界面(1个月)4. 实现Websocket实时通信技术(1个月)5. 对远程监控数据进行处理和分析(1个月)6. 系统测试和优化(0.5个月)以上为初步计划,具体实施中可能会有所调整。

c课程设计机房管理系统(源代码)

c课程设计机房管理系统(源代码)

c课程设计机房管理系统(源代码)在进行C课程设计的过程中,设计一个机房管理系统是非常重要的一步。

机房管理系统的设计可以帮助学校或企业更好地管理机房资源,提高机房的利用率,保证机房的安全和稳定运行。

本文将从系统的需求分析、系统的设计、源代码实现等多个方面,详细介绍机房管理系统的设计过程。

一、系统需求分析机房管理系统的需求主要包括以下几个方面:1.1 机房资源管理:包括机房的基本信息管理(如机房编号、机房名称、机房位置等),机房设备的管理(如服务器、交换机等设备的信息管理)。

1.2 设备借还管理:包括设备借出、归还的记录管理,借出设备的有效期管理等。

1.3 机房安全管理:包括机房门禁的管理,设备的报警和监控等。

1.4 机房使用统计:包括机房的使用情况统计、设备的使用情况统计等。

1.5 系统权限管理:包括管理员权限管理、用户权限管理等。

二、系统设计2.1 数据库设计:根据系统需求,设计合适的数据库表结构来存储机房和设备的信息,设备借还记录等。

2.2 界面设计:设计用户友好的界面,方便用户进行相关操作,提高系统的易用性。

2.3 功能模块设计:根据系统需求,将系统功能进行模块化设计,并分别实现各个功能模块。

2.4 系统架构设计:设计合适的系统架构,包括前端界面与后端逻辑的交互方式,数据传输方式等。

三、源代码实现基于上述系统设计,我们使用C语言来实现机房管理系统的源代码。

以下是一个简单的示例:```c#include <stdio.h>// 定义机房结构体struct Classroom {int number;char name[100];char location[100];};// 定义设备结构体struct Device {int id;char name[100];char type[100];};// 定义设备借还记录结构体struct BorrowRecord {int deviceId;char borrower[100];char returnDate[100];};// 机房资源管理函数void manageClassroom() {// 实现机房资源管理功能的代码逻辑}// 设备借还管理函数void manageDeviceBorrow() {// 实现设备借还管理功能的代码逻辑}// 机房安全管理函数void manageClassroomSecurity() {// 实现机房安全管理功能的代码逻辑}// 机房使用统计函数void manageClassroomUsage() {// 实现机房使用统计功能的代码逻辑}// 系统权限管理函数void manageSystemPermission() {// 实现系统权限管理功能的代码逻辑}int main() {int choice;while(1) {printf("---- 机房管理系统 ----\n"); printf("1. 机房资源管理\n");printf("2. 设备借还管理\n");printf("3. 机房安全管理\n");printf("4. 机房使用统计\n");printf("5. 系统权限管理\n");printf("0. 退出系统\n");printf("请输入您的选择:");scanf("%d", &choice);switch(choice) {case 1:manageClassroom();break;case 2:manageDeviceBorrow();break;case 3:manageClassroomSecurity(); break;case 4:manageClassroomUsage(); break;case 5:manageSystemPermission();break;case 0:printf("感谢使用,再见!\n");return 0;default:printf("输入错误,请重新输入!\n");}}return 0;}```以上是一个简单的机房管理系统的C语言源代码示例,包含了机房资源管理、设备借还管理、机房安全管理、机房使用统计、系统权限管理等功能。

伟思信安互联网控制管理系统用户使用手册

伟思信安互联网控制管理系统用户使用手册

目录版权声明 (4)第一章系统介绍 (5)1.1系统背景 (5)1.2主要功能概述 (5)第二章安装与配置 (7)2.1安装步骤 (7)2.2相关配置 (8)第三章界面简要说明 (10)3.1主界面风格 (10)3.2细节说明 (10)第四章功能操作详解 (12)4.1系统登录 (12)4.2全局控制 (13)4.2.1 分类站点 (15)4.2.2 自定义分类 (15)4.2.3 即时通讯 (16)4.2.4 游戏控制 (16)4.2.5 股票软件 (17)4.2.6 P2P下载 (17)4.2.7 IP访问网页 (17)4.2.8 文件类型 (17)4.2.9 搜索关键字 (17)4.2.10 Webmail (17)4.2.11 音视频 (18)4.2.12 邮件控制 (18)4.2.13 控制方式 (19)4.3分组控制 (21)4.3.1 机器管理 (21)4.3.2 IP段分组 (24)4.3.3 机器搜索 (24)4.3.4 帐号管理 (24)4.3.3上网钥匙 (29)4.3.5 策略设置 (30)4.4内容审计 (33)4.4.1 关键字设置 (33)4.4.2 审计策略 (34)4.4.3 结果查看 (34)4.4.4 结果管理 (36)4.5黑白名单 (37)4.5.1 机器黑名单 (37)4.5.2 机器白名单 (37)4.5.3 站点黑名单 (37)4.5.4 站点白名单 (38)4.5.5帐号黑名单 (38)4.5.6帐号白名单 (39)4.5.7日志白名单 (39)4.6流量分析 (40)4.6.1 当天流量 (40)4.6.2 实时流量 (41)4.6.3 历史流量 (41)4.6.4 自定义协议 (42)4.7日志报表 (42)4.7.1 分组排名 (42)4.7.2 人员排名 (44)4.7.3 协议统计 (45)4.7.4 访问资源统计 (46)4.7.5 趋势分析 (47)4.7.6 自定义报表 (48)4.8日志管理 (49)4.8.1 上网日志 (49)4.8.2 音视频日志 (50)4.8.3 网页提交日志 (50)4.8.4 上下机日志 (50)4.8.5 游戏日志 (50)4.8.6 股票日志 (50)4.8.7 封堵日志 (50)4.8.8 搜索关键字日志 (50)4.8.9 系统操作日志 (50)4.8.10 日志策略 (51)4.8.11 日志备份 (51)4.8.12 日志文件管理 (54)4.9系统管理 (54)4.9.1 网络配置 (54)4.9.2 中心配置 (55)4.9.3 通讯配置 (55)4.9.4 内网网段 (55)4.9.5 保留地址 (56)4.9.6 自定义分类 (56)4.9.7 通知汇报 (57)4.9.8 用户权限 (57)4.9.9 修改密码 (60)4.9.10 封堵页面 (60)4.9.11 产品注册 (60)4.9.12 配置向导 (61)4.9.13 网络工具 (62)4.9.14 系统维护 (62)常见问题解答 (64)版权声明伟思信安互联网控制管理系统是珠海经济特区伟思有限公司自主开发的软硬件一体的高速数据采集和分析平台;是珠海经济特区伟思有限公司系列审计系统产品中的一种。

基于Delphi的远程监控系统的开发与实现

基于Delphi的远程监控系统的开发与实现

基于Delphi的远程监控系统的开发与实现王艳君,朱绵庆,孙彦彦(河北师范大学数学与信息科学学院河北石家庄050016)【摘要】:基于学校机房的安全性管理问题,用Delphi开发了一个远程监控系统,实现了对机房计算机的监控,可以通过屏幕捕捉查看机房内的任何一台计算机,如果有非法操作,可以向用户发送警告信息,必要时可以进行强行关闭对方计算机,以保障服务器的安全。

【关键词】:远程控制,Socket,TCP/IP,监听随着科学技术的迅速发展,监控技术的重要性正在逐渐被人们所认识和重视。

远程监控是本地计算机通过网络系统,对远端进行监视和控制,完成对分散控制网络的状态监控,使管理员坐在电脑前就可以了解整个网络的工作状态。

现在拥有校园网和网络教室的学校越来越多,网络管理和控制成了问题,因此设计一个远程监控系统是很有必要的。

利用本软件可以随时监控到机房内的任何一台机器的屏幕,可以清楚的了解学生在做什么,软件还设有实时监听功能,能监听到任何一个登录到服务器的IP地址,能过IP地址,可以截取对方屏幕,如发现对方正在进行非法操作,则可以发送信息提醒对方,如果提醒无效,可以进行远程强行关机,以保护服务器的安全。

1.远程监控系统功能分析系统开发的总体任务是实现远程监控。

机房管理人员可以通过远程监控系统对与服务器相连接的机器进行监控,执行捕获对方屏幕、发送信息、关闭对方计算机等操作。

本系统是利用TCP/IP网络传输协议进行的数据传输,以达到远程监控的目的。

由控制端向被控端机器发出连接请求,被控端接收到请求做出响应,告诉控制端已建立连接,此时再由控制端发送要执行的命令,被控端收到后执行该命令,并将执行结果返回给控制端。

2.远程监控系统的设计与实现远程监控系统由两部分组成,一个是驻留端,即运行在被控端的程序,另一个是控制端,即运行在主控端的程序。

程序的主要控件是TServerSocket和TclientSocket。

TServerSocket和TclientSocket组件的主要属性及方法如下:TclientSocket的主要属性有Address、Host、Port、Service、Ac-tive。

设备管理系统源代码

设备管理系统源代码

package com.DB;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class DBManager {private final static String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";private final static String url = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DataBaseName=bbsDB";private Connection conn;private Statement st;private ResultSet rs;/*** 创建连接* @return*/public Connection getConnection(){if(conn==null){try {Class.forName(driver);conn = DriverManager.getConnection(url,"sa","root");} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}return conn;}/*** 创建statement*/public Statement getStatement(){if(st==null){try {st = conn.createStatement();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}return st;}/*** 执行更新操作*/public int update(String sql){System.out.println(">>>>>>>>===="+sql);getConnection();int rows=0;st=getStatement();try {rows = st.executeUpdate(sql);} catch (SQLException e) {e.printStackTrace();}finally{closeAll();}return rows;}/*** 使用预处理*/public int update(String sql,String data[]){System.out.println(">>>>==="+sql);getConnection();try {int index = 0;PreparedStatement pst = conn.prepareStatement(sql);for (int i = 0; i < data.length; i++) {pst.setString(++index, data[i]);}return pst.executeUpdate();} catch (SQLException e) {e.printStackTrace();}finally{closeAll();}return 0;}/*** 执行查询操作*/public ResultSet getQuery(String sql){System.out.println(">>>>>>>>===="+sql);getConnection();st = getStatement();try {rs = st.executeQuery(sql);} catch (SQLException e) {e.printStackTrace();}return rs;}/*** 执行关闭*/public void closeAll(){if(rs!=null){try {rs.close();rs = null;} catch (SQLException e) {e.printStackTrace();}}if(st!=null){try {st.close();st = null;} catch (SQLException e) {e.printStackTrace();}}if(conn!=null){try {conn.close();conn = null;} catch (SQLException e) {e.printStackTrace();}}}}。

Somachine远程监控设置方法

Somachine远程监控设置方法
图1
注意:3G 路由器请不要选择便携式产品,且要带外置天线的路由器 图2
现在我们用图 1 中的配置图来说个体的设置步骤: 一、 用一根网线连接第二层路由器的 LAN 口与 PC 网口,首先设置 PC 网络 IP 地址,
如下图红框所示。
二、
设置完成 PC 的 IP 地址后,打开 IE 浏览器,在地址栏输入 IP 地址 192.168.1.1, 设置第二层路由器相关参数 ,所下图红框所示。
三、
设置进入路由器用户名,密码,一般默认用户名,密码都为 admin,如下图红 框所示
四、
进入路由器参数设置界面,双击左边导航的“设置向导”,设置上网帐户,密 码,上网方式,根据向导一步一步完成参数设置,器的 IP 地址不能为 192.168.1.1,要设置为 2‐254 间的数,点击路由器左边导航“网络参数”进入设置界面,所下图红框所示。
Somahcine 远程监控设置方法
目前利用远程手段来处理设备故障的 PLC 越来越多,最早的远程处理故障是经过电话连 接方法,此种方法通讯速率很慢,效率不高。随着 IT 业的快速,目前采用以太网连接,3G 通讯手段处理故障越来越常见,主要是他奇高的通讯速度,简单的设置。现在将在 Somachine 平台利用以太网来远程处理故障设置步骤,下图 1 为二层路由器有线配置图,下图 2 为 3G 无线路由器配置图。
十三、 现在利用远程网络来远程下载程序及监控 HMI 数据,打开 VJD 软件设置带 以太网接口的 HMI,如下图所示。
下载 HMI 程序
十四、 采用 3G 无线路由器远程监控及程序下载的设置步骤与设置图 1 配置中第二层 路由器步骤 1‐6 是一样的,但是由于 3G 路由器的 IP 地址不固定,为了不总是 查找路由器 IP 地址,我们引进花生壳软件,由于 IP 地址是动态,但是每个 IP 地址所对应的域名是唯一的。花生壳软件正好有些功能。如下图所示。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

using System;using System.Collections.Generic;using System.Linq;using System.Text;using Component;using System.Data;using System.Collections;namespace LinkLib{public class tb_liucheng_definition{DBExecute db = new DBExecute();/// <summary>/// 构造函数///author:/// </summary>public tb_liucheng_definition(){int Id = 0;string Streamname = "";int levelcount = 0;int Isdelete = 0;int department = 0;DateTime Updatetime = DateTime.Now;int Userids = 0;int Typeid = 0;int Userid = 0;}#region 属性和字段int m_Id = 0;public int Id{set { m_Id = value; }get { return m_Id; }}string m_Streamname = "";public string Streamname{set { m_Streamname = value; }get { return m_Streamname; }}int m_levelcount = 0;public int levelcount{set { m_levelcount = value; }get { return m_levelcount; }}int m_Isdelete = 0;public int Isdelete{set { m_Isdelete = value; }get { return m_Isdelete; }}int m_department = 0;public int department{set { m_department = value; }get { return m_department; }}DateTime m_Updatetime = DateTime.Now;public DateTime Updatetime{set { m_Updatetime = value; }get { return m_Updatetime; }}int m_Userids = 0;public int Userids{set { m_Userids = value; }get { return m_Userids; }}int m_Typeid = 0;public int Typeid{set { m_Typeid = value; }get { return m_Typeid; }}int m_Userid = 0;public int Userid{set { m_Userid = value; }get { return m_Userid; }}#endregion#region 新增记录/// <summary>/// 插入一条记录/// </summary>/// <param name="out error">返回错误信息</param>/// <returns>true成功false 失败</returns>///author:public int Insert(out string error){int lastid = 0;bool breturn = false;error = "";try{string sql = "";sql = " insert into tb_liucheng_definition (Streamname , levelcount , Isdelete , department , Updatetime , Userids , Typeid , Userid) values( @Streamname,@levelcount,@Isdelete,@department,@Updatetime,@Userids,@Typeid,@Useri d)";Hashtable hs = new Hashtable();hs.Add("@Streamname", Streamname);hs.Add("@levelcount", levelcount);hs.Add("@Isdelete", Isdelete);hs.Add("@department", department);hs.Add("@Updatetime", Updatetime);hs.Add("@Userids", Userids);hs.Add("@Typeid", Typeid);hs.Add("@Userid", Userid);lastid = db.ExecuteSQLreturnid(sql, hs);breturn = true;}catch (System.Exception ex){error = ex.ToString();}return lastid;}#endregion#region 修改记录/// <summary>/// 修改一条记录/// </summary>/// <param name="out error">返回错误信息</param>/// <returns>true成功false 失败</returns>///author:public bool update(out string error){bool breturn = false;error = "";try{string sql = "";sql = " update tb_liucheng_definition setStreamname=@Streamname,levelcount=@levelcount,Isdelete=@Isdelete,department=@departme nt,Updatetime=@Updatetime,Userids=@Userids,Typeid=@Typeid,Userid=@Userid whereId=@Id";Hashtable hs = new Hashtable();hs.Add("@Id", Id);hs.Add("@Streamname", Streamname);hs.Add("@levelcount", levelcount);hs.Add("@Isdelete", Isdelete);hs.Add("@department", department);hs.Add("@Updatetime", Updatetime);hs.Add("@Userids", Userids);hs.Add("@Typeid", Typeid);hs.Add("@Userid", Userid);db.ExecuteSQL(sql, hs);breturn = true;}catch (System.Exception ex){error = ex.ToString();}return breturn;}#endregion#region 删除记录/// <summary>/// 删除一条记录/// </summary>/// <param name="type">删除类型0 删除记录,1 标示isdelete字段</param>/// <param name="out error">返回错误信息</param>/// <returns>true成功false 失败</returns>///author:public bool delete(int type, string id, out string error){bool breturn = false;error = "";try{string sql = "";if (type == 0)sql = "delete from tb_liucheng_definition where Id=@Id";elsesql = "update tb_liucheng_definition set isdelete=1 where Id=@Id";Hashtable hs = new Hashtable();hs.Add("@Id", id);db.ExecuteSQL(sql, hs);breturn = true;}catch (System.Exception ex){error = ex.ToString();}return breturn;}#endregion#region 得到所有设备监控数据/// <summary>/// 得到所有数据/// </summary>/// <param name="out error">返回错误信息</param>/// <returns>数据列表</returns>///author:public DataTable GetList(out string error){DataTable table = new DataTable();error = "";try{string sql = "select * from tb_liucheng_definition where isdelete =0 order by Id desc"; table = db.Getdatable(sql);}catch (System.Exception ex){error = ex.ToString();}return table;}#endregion#region 得到所有监控总数/// <summary>/// 得到所有监控总数/// </summary>/// <returns>记录的集合</returns>///author:public int getcount(string where){string error;DataTable table = new DataTable();error = "";try{string sql = "select Id from tb_liucheng_definition where " + where;table = db.Getdatable(sql);}catch (System.Exception ex){error = ex.ToString();}return table.Rows.Count;}#endregion#region 根据页数得到当前页的数据/// <summary>/// 根据页数得到当前页的数据/// </summary>/// <param name="no">每页显示的数量</param>/// <param name="pageno">当前页数</param>/// <param name="order">排序字段</param>/// <param name="where">条件</param>/// <returns></returns>///author:public DataTable GetDatabyPage(int no, int pageno, string order, string where){DataTable table = new DataTable();string sql = "SELECT TOP " + no + " * FROM ( SELECT ROW_NUMBER() OVER (ORDER BY " + order + " ) AS RowNumber,* FROM tb_liucheng_definition where " + where + " ) A WHERE " + where + " and RowNumber > " + ((pageno - 1) * no);table = db.Getdatable(sql);return table;}#endregion#region 根据主键得到一条记录/// <summary>/// 根据主键得到一条记录/// </summary>/// <param name="id">主键</param>/// <param name="out error">返回错误信息</param>/// <returns>数据列表</returns>public tb_liucheng_definition GetdataByid(int id, out string error){DataTable table = new DataTable();error = "";tb_liucheng_definition obj = new tb_liucheng_definition(); try{string sql = "select * from tb_liucheng_definition where isdelete =0 and Id =@Id"; Hashtable hs = new Hashtable();hs.Add("@Id", id);table = db.Getdatable(sql, hs);if (table.Rows.Count != 0){obj.Id = Convert.ToInt32(table.Rows[0]["Id"].ToString());obj.Streamname = table.Rows[0]["Streamname"].ToString();obj.levelcount = Convert.ToInt32(table.Rows[0]["levelcount"].ToString());obj.Isdelete = Convert.ToInt32(table.Rows[0]["Isdelete"].ToString());obj.department = Convert.ToInt32(table.Rows[0]["department"].ToString());obj.Updatetime = Convert.ToDateTime(table.Rows[0]["Updatetime"].ToString());erids = Convert.ToInt32(table.Rows[0]["Userids"].ToString());obj.Typeid = Convert.ToInt32(table.Rows[0]["Typeid"].ToString());erid = Convert.ToInt32(table.Rows[0]["Userid"].ToString());}}catch (System.Exception ex){error = ex.ToString();}return obj;}#endregion#region 根据条件得到记录/// <summary>/// 根据条件得到记录/// </summary>/// <param name="sqlConditon"></param>///author:public DataTable GetDataByWhere(string sqlConditon){string sql = "SELECT * FROM tb_liucheng_definition where 1=1 and {0}";string sqlText = string.Format(sql, sqlConditon);return db.Getdatable(sqlText);}#endregion}}using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.SqlClient;namespace Component{public class Cauditmanager{public void Addaudit(Caudit cd){SqlConnection conn = Common.GetConn();string sql = "INSERT INTOAudit_table(ConferencerTitle,username,Noticeneirong,UseConfroom,Auditusername,AuditTime,i sAudit,Istongguo)VALUES(@ConferencerTitle,@username,@Noticeneirong,@UseConfroom,@Auditusername,@ AuditTime,@isAudit,@Istongguo)";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@ConferencerTitle", cd.Conferencertitle);comm.Parameters.AddWithValue("@username", erName);comm.Parameters.AddWithValue("@Noticeneirong", cd.NoticeNeirong);comm.Parameters.AddWithValue("@UseConfroom", econfroom);comm.Parameters.AddWithValue("@Auditusername", cd.AuditUsername);comm.Parameters.AddWithValue("@AuditTime", cd.Audittime);comm.Parameters.AddWithValue("@isAudit", cd.IsAudit);comm.Parameters.AddWithValue("@Istongguo", cd.IstongGuo);comm.ExecuteNonQuery();conn.Close();}public void dalete(string name){SqlConnection conn = Common.GetConn();string sql = "UPDATE Audit_table SET Istongguo=2 WHERE Isdelete=1 and ConferencerTitle=@ConferencerTitle";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@ConferencerTitle", name);comm.ExecuteNonQuery();conn.Close();}public DataTable selectcad(){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Audit_table where isAudit=0 and Isdelete=1";SqlDataAdapter sda = new SqlDataAdapter(sql, conn);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectcAudit(){SqlConnection conn = Common.GetConn();string sql = "SELECTa.AuditID,a.ConferencerTitle,ername,eConfroom,a.Istongguo,b.BookTime,b.NeedTime FROM Audit_table a,Conference_table b where (a.Istongguo=1 or a.Istongguo=2) anda.Isdelete=1 and a.isAudit=0 and a.ConferencerTitle=b.ConferencerTitle";SqlDataAdapter sda = new SqlDataAdapter(sql, conn);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectcquxiao(string name){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Conference_table a,Audit_table b wherea.ConferencerTitle=b.ConferencerTitle and ername=@username and a.Isdelete=1 andb.Istongguo<>2";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@username", name);SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}}}namespace Component{using System;using System.Data;using System.Data.SqlClient;public class Cbwangmanager{public void Addbwang(Cbwang cb){SqlConnection conn = Common.GetConn();string sql = "INSERT INTOMemorandum_table(userName,MemorandumName,Memorandumneirong,MemorandumTime,Me morandumchengdu)VALUES(@userName,@MemorandumName,@Memorandumneirong,@MemorandumTime,@M emorandumchengdu)";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@userName", ername);comm.Parameters.AddWithValue("@MemorandumName", cb.Memorandumname);comm.Parameters.AddWithValue("@Memorandumneirong", cb.MemorandumNeirong);comm.Parameters.AddWithValue("@MemorandumTime", cb.Memorandumtime);comm.Parameters.AddWithValue("@Memorandumchengdu", cb.MemorandumChengdu);comm.ExecuteNonQuery();conn.Close();}public void deletebwang(string username, string mname, DateTime mtime){SqlConnection conn = Common.GetConn();string sql = "UPDATE Memorandum_table SET Isdelete = 0 WHERE MemorandumName=@MemorandumName and userName=@userName and MemorandumTime=@MemorandumTime";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@userName", username);comm.Parameters.AddWithValue("@MemorandumName", mname);comm.Parameters.AddWithValue("@MemorandumTime", mtime);comm.ExecuteNonQuery();conn.Close();}public DataTable selectbg(string username, DateTime mstime,DateTime metime){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Memorandum_table where Isdelete=1 anduserName=@userName and MemorandumTime between @sTime AND @eTime";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@userName", username);comm.Parameters.AddWithValue("@sTime", mstime);comm.Parameters.AddWithValue("@eTime", metime);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectbwang(string username){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Memorandum_table where userName=@userName and Isdelete=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@userName", username);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectbwang(string username, DateTime time){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Memorandum_table where userName=@userName and Isdelete=1 and MemorandumTime=@MemorandumTime";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@userName", username);comm.Parameters.AddWithValue("@MemorandumTime", time);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectcb(string username, string mname, DateTime mtime){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Memorandum_table whereMemorandumName=@MemorandumName and userName=@userName and MemorandumTime=@MemorandumTime and Isdelete=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@MemorandumName", mname);comm.Parameters.AddWithValue("@userName", username);comm.Parameters.AddWithValue("@MemorandumTime", mtime);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectxiangxi(string username, string mname){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Memorandum_table where userName=@userName and Isdelete=1 and MemorandumName=@MemorandumName";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@userName", username);comm.Parameters.AddWithValue("@MemorandumName", mname);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public void updatebwang(Cbwang cb, string mname){SqlConnection conn = Common.GetConn();string sql = "UPDATE Memorandum_table SET userName =@userName,MemorandumName = @MemorandumName,Memorandumneirong =@Memorandumneirong,MemorandumTime = @MemorandumTime,Memorandumchengdu = @Memorandumchengdu WHERE Isdelete = 1 and MemorandumName=@mname";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@userName", ername);comm.Parameters.AddWithValue("@MemorandumName", cb.Memorandumname);comm.Parameters.AddWithValue("@Memorandumneirong", cb.MemorandumNeirong);comm.Parameters.AddWithValue("@MemorandumTime", cb.Memorandumtime);comm.Parameters.AddWithValue("@Memorandumchengdu", cb.MemorandumChengdu);comm.Parameters.AddWithValue("@mname", mname);comm.ExecuteNonQuery();conn.Close();}}}namespace Component{using System;using System.Data;using System.Data.SqlClient;public class CDocumentmanager{public void AddDocument(CDocument cd){SqlConnection conn = Common.GetConn();string sql = "INSERT INTODocument_table(bumenName,username,Documentbiaoti,DocumentMeSH,DocumentPriorities,Do cumentContent,DocumentAnnex,DocumentAudit,DocumentReviewed,DocumentTime) VALUES(@bumenName,@username,@Documentbiaoti,@DocumentMeSH,@DocumentPrioritie s,@DocumentContent,@DocumentAnnex,@DocumentAudit,@DocumentReviewed,@Document Time)";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@bumenName", cd.BumenName);comm.Parameters.AddWithValue("@username", erName);comm.Parameters.AddWithValue("@Documentbiaoti", cd.DocumentBiaoti);comm.Parameters.AddWithValue("@DocumentMeSH", cd.DocumentmeSH);comm.Parameters.AddWithValue("@DocumentPriorities", cd.Documentpriorities);comm.Parameters.AddWithValue("@DocumentContent", cd.Documentcontent);comm.Parameters.AddWithValue("@DocumentAnnex", cd.Documentannex);comm.Parameters.AddWithValue("@DocumentAudit", cd.Documentaudit);comm.Parameters.AddWithValue("@DocumentReviewed", cd.Documentreviewed);comm.Parameters.AddWithValue("@DocumentTime", cd.Documenttime);comm.ExecuteNonQuery();conn.Close();}public DataTable chongfu(string username, string biaoti){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Document_table where Isdelete=1 andusername=@username and Documentbiaoti=@Documentbiaoti";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@username", username);comm.Parameters.AddWithValue("@Documentbiaoti", biaoti);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public void deletecaogao(string username,string bname){SqlConnection conn = Common.GetConn();string sql = "UPDATE Document_table SET Isdelete=0 WHEREDocumentType=@DocumentType and username=@username";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@username", username);comm.Parameters.AddWithValue("@DocumentType", 1);comm.Parameters.AddWithValue("@Documentbiaoti", bname);comm.ExecuteNonQuery();conn.Close();}public DataTable selectcaogao(string username){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Document_table where DocumentType=1 and Isdelete=1 and username=@username";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@username", username);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectfa(string username){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Document_table where DocumentType=0 and Isdelete=1 and username=@username";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@username", username);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectfaID(int ID){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Document_table where DocumentType=0 and Isdelete=1 and DocumentID=@DocumentID";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@DocumentID", ID);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectFSbiaoti(string biaoti){SqlConnection conn = Common.GetConn();string sql = "SELECT top 1a.bumenName,ername,a.Documentbiaoti,a.DocumentMeSH,a.DocumentContent,a.Document Priorities,a.DocumentAnnex,b.AuditViews,b.DocumentAudit,b.DocumentReviewed FROM Document_table a,DocumentSH_table b where a.DocumentType=0 and a.Isdelete=1 anda.Documentbiaoti=@Documentbiaoti and a.Documentbiaoti=b.Documentbiaoti andb.Iszhuanfa=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@Documentbiaoti", biaoti);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectgwcaogao(int ID){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Document_table where Isdelete=1 andDocumentID=@DocumentID";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@DocumentID", ID);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectShen(string username){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Document_table where DocumentType=0 and Isdelete=1 and DocumentReviewed=@DocumentReviewed and isshenhe=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@DocumentReviewed", username);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectSHFujian(string biaoti){SqlConnection conn = Common.GetConn();string sql = "SELECT DocumentAnnex FROM Document_table where DocumentType=0 and Isdelete=1 and Documentbiaoti=@Documentbiaoti";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@Documentbiaoti", biaoti);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectSHID(int ID){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM Document_table where DocumentType=0 and Isdelete=1 and DocumentID=@DocumentID and isshenhe=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@DocumentID", ID);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public void UpdateDocument(CDocument cd, int ID){SqlConnection conn = Common.GetConn();string sql = "UPDATE Document_table SET bumenName = @bumenName,username = @username,Documentbiaoti = @Documentbiaoti,DocumentMeSH =@DocumentMeSH,DocumentPriorities = @DocumentPriorities,DocumentContent =@DocumentContent,DocumentAnnex = @DocumentAnnex,DocumentAudit =@DocumentAudit,DocumentReviewed = @DocumentReviewed,DocumentTime =@DocumentTime WHERE Isdelete=1 and DocumentID=@DocumentID";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@bumenName", cd.BumenName);comm.Parameters.AddWithValue("@username", erName);comm.Parameters.AddWithValue("@Documentbiaoti", cd.DocumentBiaoti);comm.Parameters.AddWithValue("@DocumentMeSH", cd.DocumentmeSH);comm.Parameters.AddWithValue("@DocumentPriorities", cd.Documentpriorities);comm.Parameters.AddWithValue("@DocumentContent", cd.Documentcontent);comm.Parameters.AddWithValue("@DocumentAnnex", cd.Documentannex);comm.Parameters.AddWithValue("@DocumentAudit", cd.Documentaudit);comm.Parameters.AddWithValue("@DocumentReviewed", cd.Documentreviewed);comm.Parameters.AddWithValue("@DocumentTime", cd.Documenttime);comm.Parameters.AddWithValue("@DocumentID", ID);comm.ExecuteNonQuery();conn.Close();}public void updateSH(string biaoti){SqlConnection conn = Common.GetConn();string sql = "UPDATE Document_table SET isshenhe=0 WHEREDocumentbiaoti=@Documentbiaoti and isdelete=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@Documentbiaoti", biaoti);comm.ExecuteNonQuery();conn.Close();}public void updateSHB(string biaoti){SqlConnection conn = Common.GetConn();string sql = "UPDATE Document_table SET isshenhe=2 WHEREDocumentbiaoti=@Documentbiaoti and isdelete=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@Documentbiaoti", biaoti);comm.ExecuteNonQuery();conn.Close();}public void updatetype(string biaoti){SqlConnection conn = Common.GetConn();string sql = "UPDATE Document_table SET DocumentType=0 WHERE Documentbiaoti=@Documentbiaoti and isdelete=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@Documentbiaoti", biaoti);comm.ExecuteNonQuery();conn.Close();}}}namespace Component{using System;using System.Data;using System.Data.SqlClient;public class CDocumentSHmanager{public void addDocumentSH(CDocumentSH cd){SqlConnection conn = Common.GetConn();string sql = "INSERT INTODocumentSH_table(username,Documentbiaoti,DocumentAudit,DocumentReviewed,AuditViews , DocumentTime)V ALUES(@username,@Documentbiaoti,@DocumentAudit,@DocumentReviewed,@AuditViews ,@DocumentTime)";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@username", erName);comm.Parameters.AddWithValue("@Documentbiaoti", cd.DocumentBiaoti);comm.Parameters.AddWithValue("@DocumentAudit", cd.Documentaudit);comm.Parameters.AddWithValue("@DocumentReviewed", cd.Documentreviewed);comm.Parameters.AddWithValue("@AuditViews", cd.Auditviews);comm.Parameters.AddWithValue("@DocumentTime", cd.Documenttime);comm.ExecuteNonQuery();conn.Close();}public DataTable selectFA(string username){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM DocumentSH_table whereDocumentReviewed=@DocumentReviewed and istongguo=1 and Iszhuanfa=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@DocumentReviewed", username);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public DataTable selectliulan(int ID){SqlConnection conn = Common.GetConn();string sql = "SELECT * FROM DocumentSH_table whereDocumentSHID=@DocumentSHID and Iszhuanfa=1 and Isfa=0 and Isdelete=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@DocumentSHID", ID);comm.ExecuteNonQuery();SqlDataAdapter sda = new SqlDataAdapter(comm);DataSet ds = new DataSet();sda.Fill(ds);return ds.Tables[0];conn.Close();}public void updateFAS(string biaoti){SqlConnection conn = Common.GetConn();string sql = "UPDATE DocumentSH_table SET Isfa=0 WHEREDocumentbiaoti=@Documentbiaoti and Isdelete=1";SqlCommand comm = new SqlCommand(sql, conn);comm.Parameters.AddWithValue("@Documentbiaoti", biaoti);comm.ExecuteNonQuery();conn.Close();}。

相关文档
最新文档