public bool CheckExists(DeviceConnection objDeviceConnection)
        {
            string sql = null;
            List<DbParameter> parameterList = new List<DbParameter>();

            sql = " select count(1) from tbl_device_connection where DeviceNumber=:DeviceNumber ";

            parameterList.Add(new OracleParameter(":DeviceNumber", objDeviceConnection.DeviceNumber));

            return int.Parse(DbHelper.ExecuteScalar(sql, CommandType.Text, parameterList.ToArray()).ToString()) > 0;
        }
        public void Save(DeviceConnection objDeviceConnection)
        {
            string sql = null;
            List<DbParameter> parameterList = new List<DbParameter>();

            if (objDeviceConnection.PkId == 0)
            {
                sql = " insert into tbl_device_connection(PkId, DeviceNumber, DeviceIp, OrgId, CollectorName, CollectorIp, ConnectTime, DisconnectTime, ConnectionStatus, UploadCount) " +
                      " values(TDC_PKID.NEXTVAL, :DeviceNumber, :DeviceIp, :OrgId, :CollectorName, :CollectorIp, :ConnectTime, :DisconnectTime, :ConnectionStatus, :UploadCount) ";

                parameterList.Add(new OracleParameter(":DeviceNumber", objDeviceConnection.DeviceNumber));
                parameterList.Add(new OracleParameter(":DeviceIp", objDeviceConnection.DeviceIp));
                parameterList.Add(new OracleParameter(":OrgId", objDeviceConnection.OrgId));
                parameterList.Add(new OracleParameter(":CollectorName", objDeviceConnection.CollectorName));
                parameterList.Add(new OracleParameter(":CollectorIp", objDeviceConnection.CollectorIp));
                parameterList.Add(new OracleParameter(":ConnectTime", objDeviceConnection.ConnectTime));
                parameterList.Add(new OracleParameter(":DisconnectTime", objDeviceConnection.DisconnectTime));
                parameterList.Add(new OracleParameter(":ConnectionStatus", objDeviceConnection.ConnectionStatus));
                parameterList.Add(new OracleParameter(":UploadCount", objDeviceConnection.UploadCount));
            }

            else
            {
                sql = " update tbl_device_connection set DeviceIp=:DeviceIp, OrgId=:OrgId, CollectorName=:CollectorName, CollectorIp=:CollectorIp, " +
                      " ConnectTime=:ConnectTime, DisconnectTime=:DisconnectTime, ConnectionStatus=:ConnectionStatus, UploadCount=:UploadCount " +
                      " where DeviceNumber=:DeviceNumber ";

                parameterList.Add(new OracleParameter(":DeviceIp", objDeviceConnection.DeviceIp));
                parameterList.Add(new OracleParameter(":OrgId", objDeviceConnection.OrgId));
                parameterList.Add(new OracleParameter(":CollectorName", objDeviceConnection.CollectorName));
                parameterList.Add(new OracleParameter(":CollectorIp", objDeviceConnection.CollectorIp));
                parameterList.Add(new OracleParameter(":ConnectTime", objDeviceConnection.ConnectTime));
                parameterList.Add(new OracleParameter(":DisconnectTime", objDeviceConnection.DisconnectTime));
                parameterList.Add(new OracleParameter(":ConnectionStatus", objDeviceConnection.ConnectionStatus));
                parameterList.Add(new OracleParameter(":UploadCount", objDeviceConnection.UploadCount));
                parameterList.Add(new OracleParameter(":DeviceNumber", objDeviceConnection.DeviceNumber));
            }

            DbHelper.ExecuteNonQuery(sql, CommandType.Text, parameterList.ToArray());
        }
Example #3
0
        public static void UpdateDeviceState(DeviceInfo deviceinfo, Device device, bool disconnected)
        {
            if (device.Updated && !disconnected)
            {
                return;
            }
            try
            {
                if (string.IsNullOrEmpty(device.Number))
                {
                    return;
                }

                var service = ServiceFactory.GetService<IDeviceService>();

                if (deviceinfo != null && deviceinfo.PkId == 0)
                {
                    deviceinfo.RegisterIp = device.RemoteIP;

                    service.Save_Info(deviceinfo);
                }

                var item = service.GetObjectByDeviceNumber_Connection(device.Number);

                if (item == null)
                {
                    item = new DeviceConnection();
                }

                item.CollectorName = CurrencyStore.Common.Configration.CurrencyStoreSection.Instance.Name;
                item.ConnectTime = device.ConnectionDate;
                item.DisconnectTime = device.DisconnectionDate;
                item.UploadCount = device.Counter;
                item.DeviceIp = device.RemoteIP;
                item.DeviceNumber = device.Number;
                item.CollectorIp = device.LocalIP;
                item.ConnectionStatus = (byte)(device.Connected ? 1 : 2);

                service.Save_Connection(item);

                device.Updated = true;
            }
            catch (Exception ex)
            {
                logger.Error("更新连接状态错误.", ex);
            }
        }
        public void Save(DeviceConnection objDeviceConnection)
        {
            string sql = null;
            List<DbParameter> parameterList = new List<DbParameter>();

            if (objDeviceConnection.PkId == 0)
            {
                sql = " insert into tbl_device_connection(DeviceNumber, DeviceIp, OrgId, CollectorName, CollectorIp, ConnectTime, DisconnectTime, ConnectionStatus, UploadCount) " +
                      " values(@DeviceNumber, @DeviceIp, @OrgId, @CollectorName, @CollectorIp, @ConnectTime, @DisconnectTime, @ConnectionStatus, @UploadCount) ";

                parameterList.Add(new MySqlParameter("@DeviceNumber", objDeviceConnection.DeviceNumber));
                parameterList.Add(new MySqlParameter("@DeviceIp", objDeviceConnection.DeviceIp));
                parameterList.Add(new MySqlParameter("@OrgId", objDeviceConnection.OrgId));
                parameterList.Add(new MySqlParameter("@CollectorName", objDeviceConnection.CollectorName));
                parameterList.Add(new MySqlParameter("@CollectorIp", objDeviceConnection.CollectorIp));
                parameterList.Add(new MySqlParameter("@ConnectTime", objDeviceConnection.ConnectTime));
                parameterList.Add(new MySqlParameter("@DisconnectTime", objDeviceConnection.DisconnectTime));
                parameterList.Add(new MySqlParameter("@ConnectionStatus", objDeviceConnection.ConnectionStatus));
                parameterList.Add(new MySqlParameter("@UploadCount", objDeviceConnection.UploadCount));
            }

            else
            {
                sql = " update tbl_device_connection set DeviceIp=@DeviceIp, OrgId=@OrgId, CollectorName=@CollectorName, CollectorIp=@CollectorIp, " +
                      " ConnectTime=@ConnectTime, DisconnectTime=@DisconnectTime, ConnectionStatus=@ConnectionStatus, UploadCount=@UploadCount " +
                      " where DeviceNumber=@DeviceNumber ";

                parameterList.Add(new MySqlParameter("@DeviceNumber", objDeviceConnection.DeviceNumber));
                parameterList.Add(new MySqlParameter("@DeviceIp", objDeviceConnection.DeviceIp));
                parameterList.Add(new MySqlParameter("@OrgId", objDeviceConnection.OrgId));
                parameterList.Add(new MySqlParameter("@CollectorName", objDeviceConnection.CollectorName));
                parameterList.Add(new MySqlParameter("@CollectorIp", objDeviceConnection.CollectorIp));
                parameterList.Add(new MySqlParameter("@ConnectTime", objDeviceConnection.ConnectTime));
                parameterList.Add(new MySqlParameter("@DisconnectTime", objDeviceConnection.DisconnectTime));
                parameterList.Add(new MySqlParameter("@ConnectionStatus", objDeviceConnection.ConnectionStatus));
                parameterList.Add(new MySqlParameter("@UploadCount", objDeviceConnection.UploadCount));
            }

            DbHelper.ExecuteNonQuery(sql, CommandType.Text, parameterList.ToArray());
        }
Example #5
0
        public bool CheckExists_Connection(DeviceConnection objDeviceConnection)
        {
            var repository = ServiceFactory.GetService<IDeviceConnectionRepository>();

            return repository.CheckExists(objDeviceConnection);
        }
Example #6
0
        public void Save_Info(DeviceInfo objDeviceInfo)
        {
            var deviceInfoRepository = ServiceFactory.GetService<IDeviceInfoRepository>();
            var deviceConnectionRepository = ServiceFactory.GetService<IDeviceConnectionRepository>();

            if (objDeviceInfo.PkId == 0)
            {
                DeviceInfo diTemp = deviceInfoRepository.GetObjectByDeviceNumber(objDeviceInfo.DeviceNumber);

                if (diTemp != null)
                {
                    objDeviceInfo.PkId = diTemp.PkId;
                }
            }

            deviceInfoRepository.Save(objDeviceInfo);

            var objDeviceConnection = deviceConnectionRepository.GetObjectByDeviceNumber(objDeviceInfo.DeviceNumber);

            if (objDeviceConnection == null)
            {
                objDeviceConnection = new DeviceConnection()
                {
                    DeviceNumber = objDeviceInfo.DeviceNumber,
                    DeviceIp = objDeviceInfo.RegisterIp,
                    OrgId = objDeviceInfo.OrgId,
                    CollectorName = String.Empty,
                    CollectorIp = String.Empty,
                    ConnectTime = DateTime.MinValue,
                    DisconnectTime = DateTime.MinValue,
                    ConnectionStatus = (int)DeviceConnection.ConnectionStatusEnum.Disconnect,
                    UploadCount = 0
                };
            }

            else
            {
                objDeviceConnection.OrgId = objDeviceInfo.OrgId;
            }

            deviceConnectionRepository.Save(objDeviceConnection);

            DeviceCache.Current.Set(objDeviceInfo);
        }
Example #7
0
        public void Save_Connection(DeviceConnection objDeviceConnection)
        {
            var repository = ServiceFactory.GetService<IDeviceConnectionRepository>();

            repository.Save(objDeviceConnection);
        }