public bool Execute() { try { if (_content.Length < 14) { MyLibrary.Log.Debug(NAME + "长度无效:原始代码:" + OriginalCode); return(true); } if (FileManagement.Commands.MenJin.Filter_Bll.IsRepeat(this.OriginalCode)) { MyLibrary.Log.RepeatDataInfo("基站编号:" + StationId.ToString() + " 原始代码:" + OriginalCode); return(true); } DateTime time = ConverUtil.Time(_content, 0); string devstatus = Convert.ToString(_content[6], 2).PadLeft(8, '0'); //设备状态[1] //各类型卡库的数量[6] int xj_cardNum = (int)(_content[7] << 8 | _content[8]); //协警卡数量[2] int fd_cardNum = 1; //(int)(_content[9] << 8 | _content[10]);//房东卡数量[2] int yh_cardNum = (int)(_content[11] << 8 | _content[12]); //用户卡数量[2] int version = (int)(_content[9] << 8 | _content[10]); //版本号 int gprs = _content[13]; //GPRS信号[1] XinTiaoInfo xtInfo = new XinTiaoInfo(); xtInfo.LISTID = Guid.NewGuid().ToString("N"); xtInfo.MJDEVICEID = StationId.ToString(); //设备编号 xtInfo.LASTUPDATETIME = time; //更新时间 xtInfo.EQUIPMENTTIME = time; //设备时间 xtInfo.POLICECARDCOUNT = xj_cardNum.ToString(); //警察卡数 xtInfo.VERSION = version.ToString(); //版本 xtInfo.USERCARDCOUNT = yh_cardNum.ToString(); //用户卡数量 xtInfo.CARDREADERSTATE = devstatus.Substring(7, 1); //读卡器状态 xtInfo.LOCKSTATE = devstatus.Substring(6, 1); //门锁状态 xtInfo.SDCARDSTATE = devstatus.Substring(5, 1); //SD卡状态 xtInfo.HOARESTATE = devstatus.Substring(4, 1); //霍尔状态 xtInfo.POWERSTATE = devstatus.Substring(3, 1); //电源状态 xtInfo.CAMERA1STATE = devstatus.Substring(2, 1); //摄像头1 xtInfo.CAMERA2STATE = devstatus.Substring(1, 1); //摄像头2 xtInfo.MODULE433STATE = devstatus.Substring(0, 1); //433模块状态 xtInfo.LASTUPDATETIME_Update = PlatformTime; xtInfo.POWERSTATE_Update = (devstatus[3] - 48).ToString(); xtInfo.CARDREADERSTATE_Update = (devstatus[6] - 48).ToString(); xtInfo.SDCARDSTATE_Update = (devstatus[4] - 48).ToString(); xtInfo.SighLevel_Update = gprs.ToString(); xtInfo.LandroadCardCount_Update = fd_cardNum.ToString(); MjDal.InsertXinTiao(xtInfo); } catch (Exception ex) { MyLibrary.Log.Error(NAME + "错误:" + ex.Message + " 原始代码:" + OriginalCode); } return(true); }
public static void InsertXinTiao(XinTiaoInfo info) { Database db = DataConnect.GetConnect; DbCommand cmd; cmd = db.GetSqlStringCommand(@"UPDATE TB_MJDEVICEINFO set POWERSTATE = :POWERSTATE,CARDREADERSTATE = :CARDREADERSTATE,SDCARDSTATE = :SDCARDSTATE,SIGHLEVEL = :SIGHLEVEL,USERCARDCOUNT = :USERCARDCOUNT,LASTUPDATETIME = :LASTUPDATETIME,LANDROADCARDCOUNT = :LANDROADCARDCOUNT,POLICECARDCOUNT = :POLICECARDCOUNT ,EQUIPMENTTIME = :EQUIPMENTTIME,VERSION = :VERSION WHERE MJDEVICEID = :MJDEVICEID"); db.AddInParameter(cmd, ":POWERSTATE", DbType.String, info.POWERSTATE_Update); db.AddInParameter(cmd, ":CARDREADERSTATE", DbType.String, info.CARDREADERSTATE_Update); db.AddInParameter(cmd, ":SDCARDSTATE", DbType.String, info.SDCARDSTATE_Update); db.AddInParameter(cmd, ":SIGHLEVEL", DbType.String, info.SighLevel_Update); db.AddInParameter(cmd, ":USERCARDCOUNT", DbType.String, info.USERCARDCOUNT); db.AddInParameter(cmd, ":LASTUPDATETIME", DbType.Date, info.LASTUPDATETIME_Update); db.AddInParameter(cmd, ":LANDROADCARDCOUNT", DbType.String, info.LandroadCardCount_Update); db.AddInParameter(cmd, ":POLICECARDCOUNT", DbType.String, info.POLICECARDCOUNT); db.AddInParameter(cmd, ":EQUIPMENTTIME", DbType.Date, info.EQUIPMENTTIME); db.AddInParameter(cmd, ":VERSION", DbType.String, info.VERSION); db.AddInParameter(cmd, ":MJDEVICEID", DbType.String, info.MJDEVICEID); db.ExecuteNonQuery(cmd); cmd = db.GetSqlStringCommand(@"insert into tb_mjdeviceheart(LISTID, MJDEVICEID, LASTUPDATETIME, EQUIPMENTTIME, POLICECARDCOUNT, VERSION, USERCARDCOUNT, CARDREADERSTATE, LOCKSTATE, SDCARDSTATE, HOARESTATE, POWERSTATE, CAMERA1STATE, CAMERA2STATE, MODULE433STATE) values (:LISTID, :MJDEVICEID, :LASTUPDATETIME, :EQUIPMENTTIME, :POLICECARDCOUNT, :VERSION, :USERCARDCOUNT, :CARDREADERSTATE, :LOCKSTATE, :SDCARDSTATE,:HOARESTATE,:POWERSTATE,:CAMERA1STATE,:CAMERA2STATE,:MODULE433STATE )"); db.AddInParameter(cmd, ":LISTID", DbType.String, info.LISTID); db.AddInParameter(cmd, ":MJDEVICEID", DbType.String, info.MJDEVICEID); db.AddInParameter(cmd, ":LASTUPDATETIME", DbType.Date, info.LASTUPDATETIME); db.AddInParameter(cmd, ":EQUIPMENTTIME", DbType.Date, info.EQUIPMENTTIME); db.AddInParameter(cmd, ":POLICECARDCOUNT", DbType.String, info.POLICECARDCOUNT); db.AddInParameter(cmd, ":VERSION", DbType.String, info.VERSION); db.AddInParameter(cmd, ":USERCARDCOUNT", DbType.String, info.USERCARDCOUNT); db.AddInParameter(cmd, ":CARDREADERSTATE", DbType.String, info.CARDREADERSTATE); db.AddInParameter(cmd, ":LOCKSTATE", DbType.String, info.LOCKSTATE); db.AddInParameter(cmd, ":SDCARDSTATE", DbType.String, info.SDCARDSTATE); db.AddInParameter(cmd, ":HOARESTATE", DbType.String, info.HOARESTATE); db.AddInParameter(cmd, ":POWERSTATE", DbType.String, info.POWERSTATE); db.AddInParameter(cmd, ":CAMERA1STATE", DbType.String, info.CAMERA1STATE); db.AddInParameter(cmd, ":CAMERA2STATE", DbType.String, info.CAMERA2STATE); db.AddInParameter(cmd, ":MODULE433STATE", DbType.String, info.MODULE433STATE); db.ExecuteNonQuery(cmd); }