Exemplo n.º 1
0
        public GetDeviceOperationLogResponse Process(GetDeviceOperationLogRequest request)
        {
            try
            {
                var dao     = new SLogInfoDao();
                var rawData = dao.GetLogData(new QueryLogCondictions()
                {
                    Options             = GetLogOptions.GetNewLogs,
                    BeginTime           = request.BeginTime,
                    EndTime             = request.EndTime,
                    CleanNewLogPosition = true,
                });

                var serviceData = rawData.Select(DeviceAdminLogMapper.ToModel).ToList();

                return(new GetDeviceOperationLogResponse()
                {
                    Token = request.Token, ResultType = ResultType.OK, Logs = serviceData
                });
            }
            catch (Exception ex)
            {
                Log.Error(ex);
                return(new GetDeviceOperationLogResponse()
                {
                    Token = request.Token, ResultType = ResultType.Error
                });
            }
        }
Exemplo n.º 2
0
        public IList <DeviceOperationLog> QueryNewOperationLogs(DeviceController device)
        {
            var operation = new WebSocketOperation(device.Code.ToInt32());
            var getDeviceOperationLogRequest = new GetDeviceOperationLogRequest()
            {
                Token     = operation.Token,
                BeginTime = new DateTime(2016, 1, 1),
                EndTime   = new DateTime(2099, 12, 31),
            };

            string rawRequest  = DataContractSerializationHelper.Serialize(getDeviceOperationLogRequest);
            var    rawResponse = operation.Execute(rawRequest);

            var response = DataContractSerializationHelper.Deserialize <GetDeviceOperationLogResponse>(rawResponse);

            Log.InfoFormat("GetDeviceOperationLogResponse from device id:{0}, result ={1}", device.DeviceID, response.ResultType);

            if (response.ResultType != ResultType.OK)
            {
                throw new Exception(string.Format("GetDeviceOperationLogResponse from device id:{0} fails", device.DeviceID));
            }

            var deviceOperationLogs = new List <DeviceOperationLog>();

            foreach (var rawlog in response.Logs)
            {
                deviceOperationLogs.Add(new DeviceOperationLog()
                {
                    DeviceId             = device.DeviceID,
                    OperatorId           = rawlog.AdminId,
                    DeviceUserId         = rawlog.UserId,
                    DeviceCode           = device.Code,
                    DeviceType           = device.Model,
                    OperationType        = rawlog.OperationType,
                    OperationDescription = rawlog.Message,
                    OperationContent     = rawlog.Enroll.ToInt32() != ConvertorExtension.ConvertionFailureValue ? ((AuthenticationType)rawlog.Enroll.ToInt32()).ToString() : "未知",
                    OperationTime        = rawlog.CreateTime,
                    OperationUploadTime  = DateTime.Now,
                });
            }

            return(deviceOperationLogs);
        }