gyhlw_dotnet/网站项目/VRS/Login.aspx.cs

1996 lines
78 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Security.Cryptography;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using VRS.Util;
using static VRS.Handler.ResultDetail;
namespace VRS
{
public partial class Login : System.Web.UI.Page
{
DataService.BLL.admin_user bllUser = new DataService.BLL.admin_user();
DataService.BLL.admin_log log = new DataService.BLL.admin_log();
protected void Page_Load(object sender, EventArgs e)
{
//createJson();
ResultConfigInfo_TH th = null;
List <ResultConfigInfo_TH> list = new List<ResultConfigInfo_TH>();
th = new ResultConfigInfo_TH();
th.mark = "gywg1";
th.topic = "工业网关1";
th.total = 5;
th.score = 0;
th.field = "NetworkID";
th.field_yes = "th_wg01";
th.field_no = "th_wg02";
th.other = "其它原因";
list.Add(th);
th = new ResultConfigInfo_TH();
th.mark = "gyfhq";
th.topic = "工业防火墙";
th.total = 8;
th.score = 8;
th.field = "";
th.field_yes = "";
th.field_no = "";
th.other = "";
list.Add(th);
var json = JsonConvert.SerializeObject(list);
//phoebe杜雪莲: 网关1是db //网关2是斥候
//云端配置 网关维护
//var ydpz1 = get_ydpz_wgpz(savePath);
//云端配置 网关参数
//var ydpz2 = get_ydpz_wgcs(savePath);
//工业网闸-有线
//var value1 = get_gywz_yx(savePath);
//int x1 = 0;
//工业网闸-无线
//var value2 = get_gywz_wx(savePath);
//int y2= 0;
//db-有线 有线区网关1
//var value3 = get_db_yx(savePath);
//int y3 = 0;
//db-无线 无线区网关1
//var value4 = get_db_wx(savePath);
//int y4 = 0;
//串口有线
//var value5 = get_ck_yx(savePath);
//int y5 = 0;
//串口无线
//var value6 = get_ck_wx(savePath);
//int y6 = 0;
//斥候工业网关有线-有线区网关2
//var value7 = get_chyx(savePath);
// int y7 = 0;
//斥候工业网关无线-无线区网关2
//var value8 = get_chwx(savePath);
//int y8 = 0;
}
public class page_field_answer
{
/// <summary>
/// 页面
/// </summary>
public string page { get; set; }
/// <summary>
/// 字段
/// </summary>
public string field { get; set; }
/// <summary>
/// 默认值配置
/// </summary>
public string pz_default { get; set; }
/// <summary>
/// 答案配置
/// </summary>
public string pz_answer { get; set; }
}
#region 线1 DB
/// <summary>
/// 有线区网关1 (db)
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_db_yx(string savePath)
{
var sheet = "有线区网关1";
var dt = read_sheet(savePath, sheet);
List<DataService.Model.inport_dbyx> list = new List<DataService.Model.inport_dbyx>();
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.inport_dbyx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_db_yx(field, model, listMsg);
}
var json = JsonConvert.SerializeObject(model);
return json;
}
/// <summary>
/// 设置有线区网关1
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_db_yx(page_field_answer field, DataService.Model.inport_dbyx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
switch (page_field)
{
case "IP配置$网口":
model.ippz_wangkou = field.pz_answer;
break;
case "IP配置$IP地址":
model.ippz_ip = field.pz_answer;
break;
case "IP配置$子网掩码":
model.ippz_zwym = field.pz_answer;
break;
case "IP配置$默认网关":
model.ippz_mrwg = field.pz_answer;
break;
case "IP配置$首选DNS":
model.ippz_dns_sx = field.pz_answer;
break;
case "IP配置$备用DNS":
model.ippz_dns_by = field.pz_answer;
break;
case "IP配置$MAC地址":
model.ippz_mac = field.pz_answer;
break;
case "数据采集配置-网关配置$网关名称":
model.wgpz_wgmc = field.pz_answer; //$$$$$$$$$$$$$$$$
break;
case "数据采集配置-网关配置$网关ID":
model.wgpz_wgid = field.pz_answer;
break;
case "数据采集配置-网关配置$网关类型":
model.wgpz_wglx = field.pz_answer;
break;
case "数据采集配置-通道配置$通道名称":
model.tdpz_tdmc = field.pz_answer;
break;
case "数据采集配置-通道配置$通道":
model.tdpz_td = field.pz_answer;
break;
case "数据采集配置-通道配置$驱动名称":
model.tdpz_qdmc = field.pz_answer;
break;
case "数据采集配置-通道配置$IP地址":
model.tdpz_ip = field.pz_answer;
break;
case "数据采集配置-通道配置$端口号":
model.tdpz_port = field.pz_answer;
break;
case "数据采集配置-通道配置$超过时间":
model.tdpz_cssj = field.pz_answer;
break;
case "策略管理-策略信息$代理端口":
//model.clgl_dldk = field.pz_answer; ////////////////缺少
break;
case "数据采集配置-通道配置$间隔时间":
model.tdpz_jgsj = field.pz_answer;
break;
case "数据采集配置-通道配置$轮询时间":
model.tdpz_lxsj = field.pz_answer;
break;
case "数据采集配置-通道配置$重试次数":
model.tdpz_cfcs = field.pz_answer;
break;
case "数据采集配置-通道配置$watch time":
model.tdpz_watchtime = field.pz_answer;
break;
case "数据采集配置-通道配置$采集使用连续地址":
model.tdpz_cjsylxdz = field.pz_answer;
break;
case "数据采集配置-通道配置$读写占空比":
model.tdpz_dxzkb = field.pz_answer;
break;
case "数据采集配置-通道配置$05/0F":
model.tdpz_050F = field.pz_answer;
break;
case "数据采集配置-通道配置$06/10":
model.tdpz_0610 = field.pz_answer;
break;
case "数据采集配置-设备配置$设备ID":
model.sbpz_sbid = field.pz_answer;
break;
case "数据采集配置-设备配置$设备名称":
model.sbpz_sbmc = field.pz_answer;
break;
case "数据采集配置-设备配置$MAC地址":
model.sbpz_mac = field.pz_answer;
break;
case "数据采集配置-设备配置$禁用设备":
model.sbpz_jysb = field.pz_answer;
break;
case "数据采集配置-设备配置$基地址选择":
model.sbpz_jdzxz = field.pz_answer;
break;
case "数据采集配置-采集点配置$TagID":
model.cjdpz_tagid = field.pz_answer;
break;
case "数据采集配置-采集点配置$名称":
model.cjdpz_mc = field.pz_answer;
break;
case "数据采集配置-采集点配置$数据区":
model.cjdpz_sjq = field.pz_answer;
break;
case "数据采集配置-采集点配置$寄存器地址(10进制)":
model.cjdpz_jcqdz = field.pz_answer;
break;
case "数据采集配置-采集点配置$采集数据类型":
model.cjdpz_cjsjlx = field.pz_answer;
break;
case "数据采集配置-采集点配置$字节序":
model.cjdpz_zjx = field.pz_answer;
break;
case "数据采集配置-采集点配置$读写属性":
model.cjdpz_dxsx = field.pz_answer;
break;
case "数据采集配置-采集点配置$倍率":
model.cjdpz_beilv = field.pz_answer;
break;
case "数据上云配置$启用":
model.mqtt_qiyong = field.pz_answer;
break;
case "数据上云配置$服务器IP":
model.mqtt_ip = field.pz_answer;
break;
case "数据上云配置$端口":
model.mqtt_port = field.pz_answer;
break;
case "数据上云配置$网关sn号":
model.mqtt_wgsn = field.pz_answer;
break;
case "数据上云配置$实施数据发布主题":
model.mqtt_sssjfbzt = field.pz_answer;
break;
case "数据上云配置$qos":
model.mqtt_qos = field.pz_answer;
break;
case "数据上云配置$上传模式":
model.mqtt_scms = field.pz_answer;
break;
case "数据上云配置$上传周期":
model.mqtt_sczq = field.pz_answer;
break;
case "数据上云配置$数据过滤":
model.mqtt_sjgl = new List<string> { field.pz_answer };
break;
case "数据上云配置$设备名称":
model.mqtt_cjd_sbmc = field.pz_answer;
break;
case "数据上云配置$TagID":
model.mqtt_cjd_tagid = field.pz_answer;
break;
//页面 字段(设备名称)
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
#region 线1 DB
/// <summary>
/// 无线区网关1 (db)
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_db_wx(string savePath)
{
var sheet = "无线区网关1";
var dt = read_sheet(savePath, sheet);
List<DataService.Model.inport_dbwx> list = new List<DataService.Model.inport_dbwx>();
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.inport_dbwx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_db_wx(field, model, listMsg);
}
var json = JsonConvert.SerializeObject(model);
return json;
}
/// <summary>
/// 设置无线区网关1
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_db_wx(page_field_answer field, DataService.Model.inport_dbwx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
switch (page_field)
{
case "IP配置$联网方式":
model.ippz_lwfs = field.pz_answer;
break;
case "IP配置$网口":
model.ippz_wangkou = field.pz_answer;
break;
case "IP配置$SSID":
model.ippz_wifi_ssid = field.pz_answer;
break;
case "IP配置$密码":
model.ippz_wifi_mm = field.pz_answer;
break;
case "IP配置$IP地址":
model.ippz_ip = field.pz_answer;
break;
case "IP配置$子网掩码":
model.ippz_zwym = field.pz_answer;
break;
case "IP配置$默认网关":
model.ippz_mrwg = field.pz_answer;
break;
case "IP配置$首选DNS":
model.ippz_dns_sx = field.pz_answer;
break;
case "IP配置$备用DNS":
model.ippz_dns_by = field.pz_answer;
break;
case "IP配置$MAC地址":
model.ippz_mac = field.pz_answer;
break;
case "数据采集配置-网关配置$网关名称":
model.wgpz_wgmc = field.pz_answer; //$$$$$$$$$$$$$$$$
break;
case "数据采集配置-网关配置$网关ID":
model.wgpz_wgid = field.pz_answer;
break;
case "数据采集配置-网关配置$网关类型":
model.wgpz_wglx = field.pz_answer;
break;
case "数据采集配置-通道配置$通道名称":
model.tdpz_tdmc = field.pz_answer;
break;
case "数据采集配置-通道配置$通道":
model.tdpz_td = field.pz_answer;
break;
case "数据采集配置-通道配置$驱动名称":
model.tdpz_qdmc = field.pz_answer;
break;
case "数据采集配置-通道配置$串口号":
model.tdpz_chuankou = field.pz_answer;
break;
case "数据采集配置-通道配置$波特率":
model.tdpz_btl = field.pz_answer;
break;
case "数据采集配置-通道配置$数据位":
model.tdpz_sjw = field.pz_answer;
break;
case "数据采集配置-通道配置$停止位":
model.tdpz_tzw = field.pz_answer;
break;
case "数据采集配置-通道配置$奇偶校验":
model.tdpz_jojy = field.pz_answer;
break;
case "数据采集配置-通道配置$超过时间":
model.tdpz_cgsj = field.pz_answer;
break;
case "数据采集配置-通道配置$间隔时间":
model.tdpz_jgsj = field.pz_answer;
break;
case "数据采集配置-通道配置$轮询时间":
model.tdpz_lxsj = field.pz_answer;
break;
case "数据采集配置-通道配置$重试次数":
model.tdpz_cfcs = field.pz_answer;
break;
case "数据采集配置-通道配置$watch time":
model.tdpz_watchtime = field.pz_answer;
break;
case "数据采集配置-通道配置$采集使用连续地址":
model.tdpz_cjsylxdz = field.pz_answer;
break;
case "数据采集配置-通道配置$读写占空比":
model.tdpz_dxzkb = field.pz_answer;
break;
case "数据采集配置-通道配置$05/0F":
model.tdpz_050F = field.pz_answer;
break;
case "数据采集配置-通道配置$06/10":
model.tdpz_0610 = field.pz_answer;
break;
case "数据采集配置-设备配置$设备ID":
model.sbpz_sbid = field.pz_answer;
break;
case "数据采集配置-设备配置$设备名称":
model.sbpz_sbmc = field.pz_answer;
break;
case "数据采集配置-设备配置$设备地址":
model.sbpz_sbdz = field.pz_answer;
break;
case "数据采集配置-设备配置$禁用设备":
model.sbpz_jysb = field.pz_answer;
break;
case "数据采集配置-设备配置$基地址选择":
model.sbpz_jdzxz = field.pz_answer;
break;
case "数据采集配置-采集点配置$TagID":
model.cjdpz_tagid = field.pz_answer;
break;
case "数据采集配置-采集点配置$名称":
model.cjdpz_mc = field.pz_answer;
break;
case "数据采集配置-采集点配置$数据区":
model.cjdpz_sjq = field.pz_answer;
break;
case "数据采集配置-采集点配置$寄存器地址(10进制)":
model.cjdpz_jcqdz = field.pz_answer;
break;
case "数据采集配置-采集点配置$采集数据类型":
model.cjdpz_cjsjlx = field.pz_answer;
break;
case "数据采集配置-采集点配置$字节序":
model.cjdpz_zjx = field.pz_answer;
break;
case "数据采集配置-采集点配置$读写属性":
model.cjdpz_dxsx = field.pz_answer;
break;
case "数据采集配置-采集点配置$倍率":
model.cjdpz_beilv = field.pz_answer;
break;
case "数据上云配置$启用":
model.mqtt_qiyong = field.pz_answer;
break;
case "数据上云配置$服务器IP":
model.mqtt_ip = field.pz_answer;
break;
case "数据上云配置$端口":
model.mqtt_port = field.pz_answer;
break;
case "数据上云配置$网关ID":
model.mqtt_wgsn = field.pz_answer;
break;
case "数据上云配置$主题名称":
model.mqtt_sssjfbzt = field.pz_answer;
break;
case "数据上云配置$qos":
model.mqtt_qos = field.pz_answer;
break;
//数据上云配置 retained:
case "数据上云配置$上传模式":
model.mqtt_scms = field.pz_answer;
break;
case "数据上云配置$上传周期":
model.mqtt_sczq = field.pz_answer;
break;
case "数据上云配置$数据过滤":
model.mqtt_sjgl = new List<string> { field.pz_answer };
break;
case "数据上云配置$设备名称":
model.mqtt_cjd_sbmc = field.pz_answer;
break;
case "数据上云配置$TagID":
model.mqtt_cjd_tagid = field.pz_answer;
break;
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
#region 线--
/// <summary>
///
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_gywz_yx(string savePath)
{
var sheet = "有线网闸";
var dt = read_sheet(savePath, sheet);
List<DataService.Model.import_gywz_yx> list = new List<DataService.Model.import_gywz_yx>();
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.import_gywz_yx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_gywz_yx(field, model, listMsg);
}
//获取对象管理数据
sheet = "有线网闸-对象管理";
var dt_dxgl = read_sheet(savePath, sheet);
List<DataService.Model.gywz_yx_dxgl> list_dxgl = new List<DataService.Model.gywz_yx_dxgl>();
for (int i = 0; i < dt_dxgl.Rows.Count; i++)
{
var row = dt_dxgl.Rows[i];
//对象名称 IP类型 IP地址
var dx_name = row["对象名称"].ToString();
var iplx = row["IP类型"].ToString();
var ip = row["IP地址"].ToString();
var item = new DataService.Model.gywz_yx_dxgl();
if (string.IsNullOrWhiteSpace(dx_name) && string.IsNullOrWhiteSpace(iplx) && string.IsNullOrWhiteSpace(ip))
{
break;
}
item.dx_name = dx_name.Trim().ToString();
item.iplx = iplx.Trim().ToString();
item.ip = ip.Trim().ToString();
list_dxgl.Add(item);
}
model.dxgl = list_dxgl;
var json = JsonConvert.SerializeObject(model);
return json;
//var json = JsonConvert.SerializeObject(list_page_field);
//var first = list_page_field[0];
//var value = GetPropertyValue(first, "field");
}
/// <summary>
/// 设置工业网闸有线
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_gywz_yx(page_field_answer field, DataService.Model.import_gywz_yx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
/*
网络管理 内网网卡-网卡名称
网络管理 内网网卡-IPV4地址
网络管理 内网网卡-IPV4掩码
网络管理 外网网卡-网卡名称
网络管理 外网网卡-IPV4地址
网络管理 外网网卡-IPV4掩码
策略管理-策略信息 名称
策略管理-策略信息 协议
策略管理-策略信息 工作模式
策略管理-策略信息 源对象
策略管理-策略信息 源端口
策略管理-策略信息 目的对象
策略管理-策略信息 目的端口
策略管理-策略信息 入口网关
策略管理-策略信息 入口网卡
策略管理-策略信息 入口IP
策略管理-策略信息 代理端口
策略管理-策略信息 出口网关
策略管理-策略信息 出口网卡
策略管理-策略信息 出口IP
策略管理-策略信息 未定义命令
策略管理-命令列表 命令
策略管理-命令列表 设备ID
策略管理-命令列表 起始地址
策略管理-命令列表 地址长度
策略管理-命令列表 描述
策略管理-命令列表 动作
*/
switch (page_field)
{
case "网络管理$内网网卡-网卡名称":
model.wlgl_nw_name = field.pz_answer;
break;
case "网络管理$内网网卡-IPV4地址":
model.wlgl_nw_ip = field.pz_answer;
break;
case "网络管理$内网网卡-IPV4掩码":
model.wlgl_nw_zwym = field.pz_answer;
break;
case "网络管理$外网网卡-网卡名称":
model.wlgl_ww_name = field.pz_answer;
break;
case "网络管理$外网网卡-IPV4地址":
model.wlgl_ww_ip = field.pz_answer;
break;
case "网络管理$外网网卡-IPV4掩码":
model.wlgl_ww_zwym = field.pz_answer;
break;
case "策略管理-策略信息$名称":
model.clgl_name = field.pz_answer;
break;
case "策略管理-策略信息$协议":
model.clgl_xy = new List<string> { field.pz_answer }; //$$$$$$$$$$$$$$$$
break;
case "策略管理-策略信息$工作模式":
model.clgl_gzms = field.pz_answer;
break;
case "策略管理-策略信息$源对象":
model.clgl_ydx = field.pz_answer;
break;
case "策略管理-策略信息$源端口":
model.clgl_ydk = field.pz_answer;
break;
case "策略管理-策略信息$目的对象":
model.clgl_mddx = field.pz_answer;
break;
case "策略管理-策略信息$目的端口":
model.clgl_mddk = field.pz_answer;
break;
case "策略管理-策略信息$入口网关":
model.clgl_rkwg = field.pz_answer;
break;
case "策略管理-策略信息$入口网卡":
model.clgl_rkwk = field.pz_answer;
break;
case "策略管理-策略信息$入口IP":
model.clgl_rkip = field.pz_answer;
break;
case "策略管理-策略信息$代理端口":
//model.clgl_dldk = field.pz_answer; ////////////////缺少
break;
case "策略管理-策略信息$出口网关":
model.clgl_ckwg = field.pz_answer;
break;
case "策略管理-策略信息$出口网卡":
model.clgl_ckwk = field.pz_answer;
break;
case "策略管理-策略信息$出口IP":
model.clgl_ckip = field.pz_answer;
break;
case "策略管理-策略信息$未定义命令":
model.clgl_wdyml = field.pz_answer;
break;
case "策略管理-命令列表$命令":
model.cmdlist_ml = field.pz_answer;
break;
case "策略管理-命令列表$设备ID":
model.cmdlist_sbid = field.pz_answer;
break;
case "策略管理-命令列表$起始地址":
model.cmdlist_qsdz = field.pz_answer;
break;
case "策略管理-命令列表$地址长度":
model.cmdlist_dzcd = field.pz_answer;
break;
case "策略管理-命令列表$描述":
model.cmdlist_ms = field.pz_answer;
break;
case "策略管理-命令列表$动作":
model.cmdlist_dz = field.pz_answer;
break;
//页面 字段(设备名称)
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
#region 线--
/// <summary>
/// 工业网闸有线
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_gywz_wx(string savePath)
{
var sheet = "无线网闸";
var dt = read_sheet(savePath, sheet);
List<DataService.Model.import_gywz_yx> list = new List<DataService.Model.import_gywz_yx>();
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.import_gywz_wx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_gywz_wx(field, model, listMsg);
}
//获取对象管理数据
sheet = "无线网闸-对象管理";
var dt_dxgl = read_sheet(savePath, sheet);
List<DataService.Model.gywz_wx_dxgl> list_dxgl = new List<DataService.Model.gywz_wx_dxgl>();
for (int i = 0; i < dt_dxgl.Rows.Count; i++)
{
var row = dt_dxgl.Rows[i];
//对象名称 IP类型 IP地址
var dx_name = row["对象名称"].ToString();
var iplx = row["IP类型"].ToString();
var ip = row["IP地址"].ToString();
var item = new DataService.Model.gywz_wx_dxgl();
if (string.IsNullOrWhiteSpace(dx_name) && string.IsNullOrWhiteSpace(iplx) && string.IsNullOrWhiteSpace(ip))
{
break;
}
item.dx_name = dx_name.Trim().ToString();
item.iplx = iplx.Trim().ToString();
item.ip = ip.Trim().ToString();
list_dxgl.Add(item);
}
model.dxgl = list_dxgl;
var json = JsonConvert.SerializeObject(model);
return json;
//var json = JsonConvert.SerializeObject(list_page_field);
//var first = list_page_field[0];
//var value = GetPropertyValue(first, "field");
}
/// <summary>
/// 设置工业网闸无线
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_gywz_wx(page_field_answer field, DataService.Model.import_gywz_wx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
/*
网络管理 内网网卡-网卡名称
网络管理 内网网卡-IPV4地址
网络管理 内网网卡-IPV4掩码
网络管理 外网网卡-网卡名称
网络管理 外网网卡-IPV4地址
网络管理 外网网卡-IPV4掩码
策略管理-策略信息 名称
策略管理-策略信息 协议
策略管理-策略信息 工作模式
策略管理-策略信息 源对象
策略管理-策略信息 源端口
策略管理-策略信息 目的对象
策略管理-策略信息 目的端口
策略管理-策略信息 入口网关
策略管理-策略信息 入口网卡
策略管理-策略信息 入口IP
策略管理-策略信息 代理端口
策略管理-策略信息 出口网关
策略管理-策略信息 出口网卡
策略管理-策略信息 出口IP
策略管理-策略信息 未定义命令
策略管理-命令列表 命令
策略管理-命令列表 设备ID
策略管理-命令列表 起始地址
策略管理-命令列表 地址长度
策略管理-命令列表 描述
策略管理-命令列表 动作
*/
switch (page_field)
{
case "网络管理$内网网卡-网卡名称":
model.wlgl_nw_name = field.pz_answer;
break;
case "网络管理$内网网卡-IPV4地址":
model.wlgl_nw_ip = field.pz_answer;
break;
case "网络管理$内网网卡-IPV4掩码":
model.wlgl_nw_zwym = field.pz_answer;
break;
case "网络管理$外网网卡-网卡名称":
model.wlgl_ww_name = field.pz_answer;
break;
case "网络管理$外网网卡-IPV4地址":
model.wlgl_ww_ip = field.pz_answer;
break;
case "网络管理$外网网卡-IPV4掩码":
model.wlgl_ww_zwym = field.pz_answer;
break;
case "策略管理-策略信息$名称":
model.clgl_name = field.pz_answer;
break;
case "策略管理-策略信息$协议":
model.clgl_xy = new List<string> { field.pz_answer }; //$$$$$$$$$$$$$$$$
break;
case "策略管理-策略信息$工作模式":
model.clgl_gzms = field.pz_answer;
break;
case "策略管理-策略信息$源对象":
model.clgl_ydx = field.pz_answer;
break;
case "策略管理-策略信息$源端口":
model.clgl_ydk = field.pz_answer;
break;
case "策略管理-策略信息$目的对象":
model.clgl_mddx = field.pz_answer;
break;
case "策略管理-策略信息$目的端口":
model.clgl_mddk = field.pz_answer;
break;
case "策略管理-策略信息$入口网关":
model.clgl_rkwg = field.pz_answer;
break;
case "策略管理-策略信息$入口网卡":
model.clgl_rkwk = field.pz_answer;
break;
case "策略管理-策略信息$入口IP":
model.clgl_rkip = field.pz_answer;
break;
case "策略管理-策略信息$代理端口":
//model.clgl_dldk = field.pz_answer; ////////////////缺少
break;
case "策略管理-策略信息$出口网关":
model.clgl_ckwg = field.pz_answer;
break;
case "策略管理-策略信息$出口网卡":
model.clgl_ckwk = field.pz_answer;
break;
case "策略管理-策略信息$出口IP":
model.clgl_ckip = field.pz_answer;
break;
case "策略管理-策略信息$未定义命令":
model.clgl_wdyml = field.pz_answer;
break;
case "策略管理-命令列表$命令":
model.cmdlist_ml = field.pz_answer;
break;
case "策略管理-命令列表$设备ID":
model.cmdlist_sbid = field.pz_answer;
break;
case "策略管理-命令列表$起始地址":
model.cmdlist_qsdz = field.pz_answer;
break;
case "策略管理-命令列表$地址长度":
model.cmdlist_dzcd = field.pz_answer;
break;
case "策略管理-命令列表$描述":
model.cmdlist_ms = field.pz_answer;
break;
case "策略管理-命令列表$动作":
model.cmdlist_dz = field.pz_answer;
break;
//页面 字段(设备名称)
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
#region --
public string get_ydpz_wgpz(string savePath)
{
var sheet = "云端配置-网关配置";
var dt_ydpz_wgpz = read_sheet(savePath, sheet);
List<DataService.Model.import_ydpz_wgpz> list = new List<DataService.Model.import_ydpz_wgpz>();
for (int i = 0; i < dt_ydpz_wgpz.Rows.Count; i++)
{
var row = dt_ydpz_wgpz.Rows[i];
//网关类型 网关ID 网关编号 网关名称
var lx = row["网关类型"].ToString();
var id = row["网关ID"].ToString();
var bh = row["网关编号"].ToString();
var mc = row["网关名称"].ToString();
var item = new DataService.Model.import_ydpz_wgpz();
if (string.IsNullOrWhiteSpace(lx) && string.IsNullOrWhiteSpace(id) && string.IsNullOrWhiteSpace(bh) && string.IsNullOrWhiteSpace(mc))
{
break;
}
item.wglx = lx.Trim().ToString();
item.wgid = id.Trim().ToString();
item.wgbh = bh.Trim().ToString();
item.wgmc = mc.Trim().ToString();
list.Add(item);
}
var json = JsonConvert.SerializeObject(list);
return json;
}
#endregion
#region --
public string get_ydpz_wgcs(string savePath)
{
var sheet = "云端配置-网关参数";
var dt = read_sheet(savePath, sheet);
List<DataService.Model.import_ydpz_wgwh_cs> list = new List<DataService.Model.import_ydpz_wgwh_cs>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
//所属网关 参数key 参数名称 参数名称(英文) 小数位数 设定值 偏差值
var sswg = row["所属网关"].ToString();
var cskey = row["参数key"].ToString();
var csname = row["参数名称"].ToString();
var xsws = row["小数位数"].ToString();
var sdz = row["设定值"].ToString();
var pcz = row["偏差值"].ToString();
var item = new DataService.Model.import_ydpz_wgwh_cs();
if (string.IsNullOrWhiteSpace(sswg) && string.IsNullOrWhiteSpace(cskey) && string.IsNullOrWhiteSpace(csname)
&& string.IsNullOrWhiteSpace(xsws) && string.IsNullOrWhiteSpace(sdz) && string.IsNullOrWhiteSpace(pcz))
{
break;
}
item.sswg = sswg.Trim().ToString();
item.cskey = cskey.Trim().ToString();
item.csname = csname.Trim().ToString();
item.xsws = xsws.Trim().ToString();
item.sdz = sdz.Trim().ToString();
item.pcz = pcz.Trim().ToString();
list.Add(item);
}
var json = JsonConvert.SerializeObject(list);
return json;
}
#endregion
#region 线
/// <summary>
/// 串口服务器有线
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_ck_yx(string savePath)
{
var sheet = "有线串口服务器";
var dt = read_sheet(savePath, sheet);
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.import_ckyx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_ck_yx(field, model, listMsg);
}
var json = JsonConvert.SerializeObject(model);
return json;
}
/// <summary>
/// 串口服务器有线
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_ck_yx(page_field_answer field, DataService.Model.import_ckyx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
switch (page_field)
{
case "IP配置$IP获取方式":
model.ippz_ip_hqfs = field.pz_answer;
break;
case "IP配置$DNS获取方式":
model.ippz_dns_hqfs = field.pz_answer;
break;
case "IP配置$本机IP":
model.ippz_ip = field.pz_answer;
break;
case "IP配置$子网掩码":
model.ippz_zwym = field.pz_answer;
break;
case "IP配置$网关地址":
model.ippz_mrwg = field.pz_answer;
break;
case "IP配置$主DNS服务器":
model.ippz_dns_zy = field.pz_answer;
break;
case "IP配置$备用DNS服务器":
model.ippz_dns_by = field.pz_answer;
break;
case "端口配置$波特率":
model.dkpz_btl = field.pz_answer;
break;
case "端口配置$数据位":
model.dkpz_sjw = field.pz_answer;
break;
case "端口配置$检验位":
model.dkpz_jyw = field.pz_answer;
break;
case "端口配置$停止位":
model.dkpz_tzw = field.pz_answer;
break;
case "端口配置$流控模式":
model.dkpz_lkms = field.pz_answer;
break;
case "端口配置$打包长度":
model.dkpz_dbcd = field.pz_answer;
break;
case "端口配置$打包时间":
model.dkpz_dbsj = field.pz_answer;
break;
case "端口配置$同步波特率":
model.dkpz_tbbtl = field.pz_answer;
break;
case "端口配置$使能串口心跳包":
model.dkpz_snckxtb = field.pz_answer;
break;
//页面 字段(设备名称)
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
#region 线
/// <summary>
/// 串口服务器无线
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_ck_wx(string savePath)
{
var sheet = "无线串口服务器";
var dt = read_sheet(savePath, sheet);
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.import_ckwx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_ck_wx(field, model, listMsg);
}
var json = JsonConvert.SerializeObject(model);
return json;
}
/// <summary>
/// 串口服务器无线
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_ck_wx(page_field_answer field, DataService.Model.import_ckwx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
switch (page_field)
{
case "串口及网络协议配置$波特率":
model.ckcssz_btl = field.pz_answer;
break;
case "串口及网络协议配置$数据位":
model.ckcssz_sjw = field.pz_answer;
break;
case "串口及网络协议配置$检验位":
model.ckcssz_jyw = field.pz_answer;
break;
case "串口及网络协议配置$停止位":
model.ckcssz_tzw = field.pz_answer;
break;
case "串口及网络协议配置$流控":
model.ckcssz_lk = field.pz_answer;
break;
case "串口及网络协议配置$485功能":
model.ckcssz_485 = field.pz_answer;
break;
case "串口及网络协议配置$自定义波特率(类RFC2117)":
model.ckcssz_zdybtl = field.pz_answer;
break;
case "串口及网络协议配置$串口自动成帧":
model.qtsz_ckzdcz = field.pz_answer;
break;
case "串口及网络协议配置$注册包类型":
model.qtsz_zcblx = field.pz_answer;
break;
case "串口及网络协议配置$自定义心跳包":
model.qtsz_zdyxtb = field.pz_answer;
break;
case "串口及网络协议配置$套接字分发功能":
model.qtsz_tjzffgn = field.pz_answer;
break;
case "网口配置$开启网口":
model.ytwgn_kqwk = field.pz_answer;
break;
case "网口配置$网口工作方式":
model.ytwgn_wkgzfs = field.pz_answer;
break;
case "网口配置$网口模式":
model.wkmssz_wkms = field.pz_answer;
break;
case "无线配置$工作模式":
model.wxpz_gzms = field.pz_answer;
break;
case "无线配置$网络名称":
model.wxpz_wlmc = field.pz_answer;
break;
case "无线配置$加密模式":
model.wxpz_jmms = field.pz_answer;
break;
case "无线配置$加密算法":
model.wxpz_jmsf = field.pz_answer;
break;
case "无线配置$密码":
model.wxpz_mm = field.pz_answer;
break;
//页面 字段(设备名称)
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
#region 线(线2)
/// <summary>
/// 斥候工业网关有线
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_chyx(string savePath)
{
var sheet = "有线区网关2";
var dt = read_sheet(savePath, sheet);
//List<DataService.Model.import_chyx> list = new List<DataService.Model.import_chyx>();
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.import_chyx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_ch_yx(field, model, listMsg);
}
var json = JsonConvert.SerializeObject(model);
return json;
}
/// <summary>
/// 设置斥候工业网关有线
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_ch_yx(page_field_answer field, DataService.Model.import_chyx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
switch (page_field)
{
//IP配置 网络类型
//IP配置 IP地址
//IP配置 子网掩码
//IP配置 网关
//IP配置 DNS
//IP配置 备用DNS
//数据采集配置 - 网关配置 网关名称
//数据采集配置 - 网关配置 网关ID
//数据采集配置 - 设备配置 设备名称
//数据采集配置 - 设备配置 控制器协议
//数据采集配置 - 设备配置 采集设备IP地址
//数据采集配置 - 设备配置 端口号
//数据采集配置 - 设备配置 从站地址
//数据采集配置 - 设备配置 轮询周期
//数据采集配置 - 设备配置 启用毫秒采集
//数据采集配置 - 设备配置 启用批量采集
//数据采集配置 - 设备配置 最大批量采集数
//数据采集配置 - 设备配置 采集超过时间
//数据采集配置 - 设备配置 周期上报Onchange数据
//数据采集配置 - 设备配置 通讯时间间隔
case "IP配置$网络类型":
model.ippz_wllx = field.pz_answer;
break;
case "IP配置$IP地址":
model.ippz_ip = field.pz_answer;
break;
case "IP配置$子网掩码":
model.ippz_zwym = field.pz_answer;
break;
case "IP配置$网关":
model.ippz_wg = field.pz_answer;
break;
case "IP配置$DNS":
model.ippz_dns = field.pz_answer;
break;
case "IP配置$备用DNS":
model.ippz_dns_by = field.pz_answer;
break;
case "数据采集配置-网关配置$网关名称":
model.wgpz_wgmc = field.pz_answer;
break;
case "数据采集配置-网关配置$网关ID":
model.wgpz_wgid = field.pz_answer;
break;
case "数据采集配置-设备配置$设备名称":
model.sbpz_sbmc = field.pz_answer;
break;
case "数据采集配置-设备配置$控制器协议":
model.sbpz_kzqxy = field.pz_answer;
break;
case "数据采集配置-设备配置$采集设备IP地址":
model.sbpz_ip = field.pz_answer;
break;
case "数据采集配置-设备配置$端口号":
model.sbpz_port = field.pz_answer;
break;
case "数据采集配置-设备配置$从站地址":
model.sbpz_czdz = field.pz_answer;
break;
case "数据采集配置-设备配置$轮询周期":
model.sbpz_lxzq = field.pz_answer;
break;
case "数据采集配置-设备配置$启用毫秒采集":
model.sbpz_qyhmcj = field.pz_answer;
break;
case "数据采集配置-设备配置$启用批量采集":
model.sbpz_qyplcj = field.pz_answer;
break;
case "数据采集配置-设备配置$最大批量采集数":
model.sbpz_zdplcjs = field.pz_answer;
break;
case "数据采集配置-设备配置$采集超过时间":
model.sbpz_cjcgsj = field.pz_answer;
break;
case "数据采集配置-设备配置$周期上报Onchange数据":
model.sbpz_zqsbonchange = field.pz_answer;
break;
case "数据采集配置-设备配置$通讯时间间隔":
model.sbpz_txsjjg = field.pz_answer;
break;
case "数据采集配置-设备配置$线圈寄存器写入功能码":
model.sbpz_xqjcqxr = field.pz_answer;
break;
case "数据采集配置-设备配置$保持寄存器写入功能码":
model.sbpz_bcjcqxr = field.pz_answer;
break;
case "数据采集配置-采集点配置$TagID":
model.cjdpz_tagid = field.pz_answer;
break;
case "数据采集配置-采集点配置$名称":
model.cjdpz_mc = field.pz_answer;
break;
case "数据采集配置-采集点配置$数据区":
model.cjdpz_sjq = field.pz_answer;
break;
case "数据采集配置-采集点配置$寄存器地址(10进制)":
model.cjdpz_jcqdz = field.pz_answer;
break;
case "数据采集配置-采集点配置$采集数据类型":
model.cjdpz_cjsjlx = field.pz_answer;
break;
case "数据采集配置-采集点配置$读写属性":
model.cjdpz_dxsx = field.pz_answer;
break;
case "数据采集配置-采集点配置$上传模式":
model.cjdpz_scms = field.pz_answer;
break;
// MQTT上云 服务器地址
// MQTT上云 网关sn
// MQTT上云 端口
// MQTT上云 Keep Alive
//MQTT上云 TLS加密
//MQTT上云 清除Session
//MQTT上云 实施数据发布主题
//MQTT上云 Qos(MQTT)
//MQTT上云 设备名称
//MQTT上云 TagID
case "MQTT上云$服务器地址":
model.mqtt_ip = field.pz_answer;
break;
case "MQTT上云$网关sn":
model.mqtt_wgsn = field.pz_answer;
break;
case "MQTT上云$端口":
model.mqtt_port = field.pz_answer;
break;
case "MQTT上云$Keep Alive":
model.mqtt_keepalive = field.pz_answer;
break;
case "MQTT上云$实施数据发布主题":
model.mqtt_sssjfbzt = field.pz_answer;
break;
case "MQTT上云$Qos(MQTT)":
model.mqtt_qos = field.pz_answer;
break;
case "MQTT上云$设备名称":
model.mqtt_cjd_sbmc = field.pz_answer;
break;
case "MQTT上云$TagID":
model.mqtt_cjd_tagid = field.pz_answer;
break;
//页面 字段(设备名称)
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
#region 线(线2)
/// <summary>
/// 斥候工业网关无线
/// </summary>
/// <param name="savePath"></param>
/// <returns></returns>
public string get_chwx(string savePath)
{
var sheet = "无线区网关2";
var dt = read_sheet(savePath, sheet);
List<page_field_answer> list_page_field = new List<page_field_answer>();
for (int i = 0; i < dt.Rows.Count; i++)
{
var row = dt.Rows[i];
var field = new page_field_answer();
//页面 字段(设备名称) 默认值配置 答案配置
field.page = row["页面"].ToString();
field.field = row["字段(设备名称)"].ToString();
field.pz_default = row["默认值配置"].ToString();
field.pz_answer = row["答案配置"].ToString();
list_page_field.Add(field);
}
var model = new DataService.Model.import_chwx();
List<string> listMsg = new List<string>();
foreach (var field in list_page_field)
{
set_ch_wx(field, model, listMsg);
}
var json = JsonConvert.SerializeObject(model);
return json;
}
/// <summary>
/// 设置斥候工业网关无线
/// </summary>
/// <param name="field"></param>
/// <param name="model"></param>
/// <param name="listMsg"></param>
public void set_ch_wx(page_field_answer field, DataService.Model.import_chwx model, List<string> listMsg)
{
var page_field = string.Format("{0}${1}", field.page.Trim(), field.field.Trim());
switch (page_field)
{
//IP配置 客户端SSID
//IP配置 认证方式
//IP配置 加密方式
//IP配置 密码
//数据采集配置 - 网关配置 网关名称
//数据采集配置 - 网关配置 网关ID
//数据采集配置 - 设备配置 设备名称
//数据采集配置 - 设备配置 控制器协议
//数据采集配置 - 设备配置 采集设备IP地址
//数据采集配置 - 设备配置 端口号
//数据采集配置 - 设备配置 从站地址
//数据采集配置 - 设备配置 轮询周期
//数据采集配置 - 设备配置 启用毫秒采集
//数据采集配置 - 设备配置 启用批量采集
//数据采集配置 - 设备配置 最大批量采集数
//数据采集配置 - 设备配置 采集超过时间
//数据采集配置 - 设备配置 周期上报Onchange数据
//数据采集配置 - 设备配置 通讯时间间隔
case "IP配置$客户端SSID":
model.ippz_ssid = field.pz_answer;
break;
case "IP配置$认证方式":
model.ippz_rzfs = field.pz_answer;
break;
case "IP配置$加密方式":
model.ippz_jmfs = field.pz_answer;
break;
case "IP配置$密码":
model.ippz_mm = field.pz_answer;
break;
case "数据采集配置-网关配置$网关名称":
model.wgpz_wgmc = field.pz_answer;
break;
case "数据采集配置-网关配置$网关ID":
model.wgpz_wgid = field.pz_answer;
break;
case "数据采集配置-设备配置$设备名称":
model.sbpz_sbmc = field.pz_answer;
break;
case "数据采集配置-设备配置$控制器协议":
model.sbpz_kzqxy = field.pz_answer;
break;
case "数据采集配置-设备配置$采集设备IP地址":
model.sbpz_ip = field.pz_answer;
break;
case "数据采集配置-设备配置$端口号":
model.sbpz_port = field.pz_answer;
break;
case "数据采集配置-设备配置$从站地址":
model.sbpz_czdz = field.pz_answer;
break;
case "数据采集配置-设备配置$轮询周期":
model.sbpz_lxzq = field.pz_answer;
break;
case "数据采集配置-设备配置$启用毫秒采集":
model.sbpz_qyhmcj = field.pz_answer;
break;
case "数据采集配置-设备配置$启用批量采集":
model.sbpz_qyplcj = field.pz_answer;
break;
case "数据采集配置-设备配置$最大批量采集数":
model.sbpz_zdplcjs = field.pz_answer;
break;
case "数据采集配置-设备配置$采集超过时间":
model.sbpz_cjcgsj = field.pz_answer;
break;
case "数据采集配置-设备配置$周期上报Onchange数据":
model.sbpz_zqsbonchange = field.pz_answer;
break;
case "数据采集配置-设备配置$通讯时间间隔":
model.sbpz_txsjjg = field.pz_answer;
break;
case "数据采集配置-设备配置$线圈寄存器写入功能码":
model.sbpz_xqjcqxr = field.pz_answer;
break;
case "数据采集配置-设备配置$保持寄存器写入功能码":
model.sbpz_bcjcqxr = field.pz_answer;
break;
case "数据采集配置-采集点配置$TagID":
model.cjdpz_tagid = field.pz_answer;
break;
case "数据采集配置-采集点配置$名称":
model.cjdpz_mc = field.pz_answer;
break;
case "数据采集配置-采集点配置$数据区":
model.cjdpz_sjq = field.pz_answer;
break;
case "数据采集配置-采集点配置$寄存器地址(10进制)":
model.cjdpz_jcqdz = field.pz_answer;
break;
case "数据采集配置-采集点配置$采集数据类型":
model.cjdpz_cjsjlx = field.pz_answer;
break;
case "数据采集配置-采集点配置$读写属性":
model.cjdpz_dxsx = field.pz_answer;
break;
case "数据采集配置-采集点配置$上传模式":
model.cjdpz_scms = field.pz_answer;
break;
//MQTT上云 服务器地址
//MQTT上云 网关sn
//MQTT上云 端口
//MQTT上云 Keep Alive
//MQTT上云 TLS加密
//MQTT上云 清除Session
//MQTT上云 实施数据发布主题
//MQTT上云 Qos(MQTT)
//MQTT上云 设备名称
//MQTT上云 TagID
case "MQTT上云$服务器地址":
model.mqtt_ip = field.pz_answer;
break;
case "MQTT上云$网关sn":
model.mqtt_wgsn = field.pz_answer;
break;
case "MQTT上云$端口":
model.mqtt_port = field.pz_answer;
break;
case "MQTT上云$Keep Alive":
model.mqtt_keepalive = field.pz_answer;
break;
case "MQTT上云$实施数据发布主题":
model.mqtt_sssjfbzt = field.pz_answer;
break;
case "MQTT上云$Qos(MQTT)":
model.mqtt_qos = field.pz_answer;
break;
case "MQTT上云$设备名称":
model.mqtt_cjd_sbmc = field.pz_answer;
break;
case "MQTT上云$TagID":
model.mqtt_cjd_tagid = field.pz_answer;
break;
//页面 字段(设备名称)
default:
var msg = string.Format("页面:{0},字段(设备名称):{1} ,没找到!", field.page, field.field);
listMsg.Add(msg);
break;
}
}
#endregion
public DataTable read_sheet(string savePath, string sheet)
{
var dt = BasePage.ExcelToDataTable(savePath, sheet, 0, true, true);
return dt;
}
public void createJson()
{
DataService.Model.exam_result_match match = new DataService.Model.exam_result_match();
match.user_id = "USER202307301109254198";
match.subject = "平阴华玫";
match.sjms = "实践模式";
match.score = 80;
var json = JsonConvert.SerializeObject(match);
}
protected void btnLogin_Click(object sender, EventArgs e)
{
var temp_1 = temp1.Value;
var temp_2 = temp2.Value;
if (string.IsNullOrWhiteSpace(temp_1) || string.IsNullOrWhiteSpace(temp_2))
{
//ajax.Alert("请输入账号和密码!");
span_title.InnerHtml = "请输入账号和密码!";
return;
}
var id_card = DecryptByAES(temp_1, AES_KEY);
var txtTemp2 = DecryptByAES(temp_2, AES_KEY);
if (string.IsNullOrWhiteSpace(id_card) || string.IsNullOrWhiteSpace(txtTemp2))
{
//ajax.Alert("请输入账号和密码!");
span_title.InnerHtml = "请输入账号和密码!";
return;
}
#region
if (true)
{
var strCount = Session["f_count"];
var strTime = Session["f_time"];
if (null != strCount && null != strTime)
{
var try_count = (int)(strCount);
var time = (DateTime)strTime;
var distance = DateTime.Now.Subtract(time).TotalMinutes;
if (distance < 10 && try_count >= 5 )
{
//ajax.Alert("请稍后再试!");
span_title.InnerHtml = "账号被锁定,请稍后再试!";
return;
}
if (distance > 10)
{
Session["f_count"] = null;
Session["f_time"] = null;
}
}
}
#endregion
var temp2_value = EncryptionAndDecryption.EncryptByLgzn(txtTemp2);
var user = bllUser.GetModelList(string.Format(" login_name = '{0}' and password= '{1}' ", id_card, temp2_value)).FirstOrDefault();
if (null != user)
{
if (user.role_id == "2")
{
//ajax.Alert("考生禁止登录!");
span_title.InnerHtml = "考生禁止登录!";
return;
}
if (user.is_lock == 1)
{
span_title.InnerHtml = "用户已经禁用!";
return;
}
if (user.r2 == "无效")
{
ajax.Alert("用户状态无效!");
return;
}
var dtValid = DateTime.Now.AddMinutes(120);
string user_desc = user.user_id + "|" + user.id_card + "|" + user.real_name + "|" + dtValid.ToString("yyyy-MM-dd_HH-mm-ss") + "|";
Response.Cookies["admin_user_token"].Value = EncryptionAndDecryption.EncryptByLgzn(DateTime.Now.ToString("yyyyMMddHHmmss"));// EncryptionAndDecryption.EncryptByLgzn(user.user_id);
Response.Cookies["admin_user_token"].Values.Add("admin_token", EncryptionAndDecryption.EncryptByLgzn(user_desc));
log.write_log("登录后台。");
if (true)
{
Session["f_count"] = null;
Session["f_time"] = null;
}
Response.Redirect("~/Management/Home.aspx");
/*
if (bllUser.IsAdministrator(user))
{
Response.Redirect("~/Management/Home.aspx");
}
else if (bllUser.IsTeacher(user))
{
Response.Redirect("~/Management/Home_Teacher.aspx"); //$$$$
}
else
{
ajax.Alert("没有权限登录!");
}
*/
//1.5w D12
//3.0w J200
}
else
{
//登录失败
if (true)
{
var strCount = Session["f_count"];
if (null == strCount)
{
Session["f_count"] = 1;
Session["f_time"] = DateTime.Now;
}
else
{
Session["f_count"] = (int)(strCount) + 1;
}
var f_count = Session["f_count"];
var i_count = (int)(f_count);
var desc = 5 - i_count;
if (desc > 0)
{
span_title.InnerHtml = string.Format("账号或密码错误,你还可以尝试{0}次!", desc);
}
else
{
span_title.InnerHtml = string.Format("账号被锁定,请稍后再试!", desc);
}
}
}
}
public static string AES_KEY = ConfigurationManager.AppSettings["AES_KEY"];
public static string AES_IV = ConfigurationManager.AppSettings["AES_IV"];
/// <summary>
/// AES解密
/// </summary>
/// <param name="input">密文字节数组</param>
/// <param name="key">密钥32位</param>
/// <returns>返回解密后的字符串</returns>
public static string DecryptByAES(string input, string key)
{
byte[] inputBytes = HexStringToByteArray(input);
byte[] keyBytes = Encoding.UTF8.GetBytes(key.Substring(0, 32));
using (AesCryptoServiceProvider aesAlg = new AesCryptoServiceProvider())
{
aesAlg.Key = keyBytes;
aesAlg.IV = Encoding.UTF8.GetBytes(AES_IV.Substring(0, 16));
ICryptoTransform decryptor = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV);
using (MemoryStream msEncrypt = new MemoryStream(inputBytes))
{
using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, decryptor, CryptoStreamMode.Read))
{
using (StreamReader srEncrypt = new StreamReader(csEncrypt))
{
return srEncrypt.ReadToEnd();
}
}
}
}
}
/// <summary>
/// 将指定的16进制字符串转换为byte数组
/// </summary>
/// <param name="s">16进制字符串(如“7F 2C 4A”或“7F2C4A”都可以)</param>
/// <returns>16进制字符串对应的byte数组</returns>
public static byte[] HexStringToByteArray(string s)
{
s = s.Replace(" ", "");
byte[] buffer = new byte[s.Length / 2];
for (int i = 0; i < s.Length; i += 2)
buffer[i / 2] = (byte)Convert.ToByte(s.Substring(i, 2), 16);
return buffer;
}
protected void btnLogin_Click_old(object sender, EventArgs e)
{
/*
if (string.IsNullOrWhiteSpace(txtUserId.Text.Trim()) || string.IsNullOrWhiteSpace(txtPassword.Text.Trim()))
{
ajax.Alert("请输入账号和密码!");
return;
}
var id_card = txtUserId.Text.Trim();
var password = txtPassword.Text.Trim();
var pwd = BasePage.GetMD5(password);
var user = bllUser.GetModelList(string.Format(" login_name = '{0}' and password= '{1}' ", id_card, pwd)).FirstOrDefault();
if (null != user)
{
if (bllUser.IsStudent(user))
{
ajax.Alert("学生禁止后台登录!");
return;
}
string user_desc = user.user_id + "|" + user.login_name + "|" + user.real_name + "|" + "|";
Response.Cookies["admin_user_token"].Value = user.user_id;
Response.Cookies["admin_user_token"].Values.Add("admin_token", HttpUtility.UrlEncode(user_desc));
if (bllUser.IsAdministrator(user))
{
Response.Redirect("~/Management/Home.aspx");
}
else if (bllUser.IsTeacher(user))
{
Response.Redirect("~/Management/Home_Teacher.aspx"); //$$$$
}
else if (bllUser.IsStudent(user))
{
Response.Redirect("~/Management/HomeClient.aspx");
}
else
{
ajax.Alert("没有权限登录!");
}
}
else
{
ajax.Alert("账号或密码错误!");
}
*/
}
}
}