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 }); } }
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); }