/// <summary> /// 检查请求信息 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="request"></param> /// <param name="langType"></param> /// <returns></returns> public string CheckRequestInfo <T>(RequstModel <T> request, string langType = "") { if (request == null) { if (langType == "EN") { return("Invoking Parameter Failed."); } else { return("请求参数缺失."); } } if (request.requestInfo == null) { if (langType == "EN") { return("requestInfo Parameter Missing."); } else { return("requestInfo参数缺失."); } } return(string.Empty); }
public Task <ResultModel <ResponseResultInfo> > PushBusTest(RequstModel <PushBusInterfaceModel> requst) { _logger.Trace(LogSource, $"Start PushBusTest Data:{ JsonConvert.SerializeObject(requst) }", "PushBusTest"); var responseInfo = new ResultModel <ResponseResultInfo>(); responseInfo.resultInfo = new ResponseResultInfo() { logId = Guid.NewGuid().ToString() }; return(Task.FromResult(responseInfo)); }
/// <summary> /// 噪音数据上报 /// </summary> public void UploadData(BaseDataModel _baseDataModel) { RequstModel requstModel = new RequstModel(); string resultStr = requstModel.ToString(new DataModel() { Humidity = _baseDataModel.humidity, Noise = _baseDataModel.noise, PM10 = _baseDataModel.PM10, PM25 = _baseDataModel.PM25, Temperature = _baseDataModel.temperature, WindDirection = _baseDataModel.windDirection, WindSpeed = _baseDataModel.windSpeed, TerminalNumber = _baseDataModel.deviceAddress, DeviceAddress = _baseDataModel.deviceAddress }); byte[] sendData = Encoding.ASCII.GetBytes(resultStr); tcpSend(sendData); int tryTimes = 0; do { Thread.Sleep(500); if (isEnd) { break; } if (tryTimes >= 6) { _client.Close(); _log.InfoFormat("{0}{1} TBJDataUploadService 设备号:{2} 服务器响应超时链接已断开", DateTime.Now, Environment.NewLine, _baseDataModel.deviceAddress); break; } tryTimes++; } while (true); _log.InfoFormat("{0}{1} TBJDataUploadService 数据上传完成 设备号:{2}", DateTime.Now, Environment.NewLine, _baseDataModel.deviceAddress); _client.Close(); _client.Dispose(); }
/// <summary> /// 噪音数据上报 /// //string.Format("&&DataTime={0};" + // "a01001-Rtd={1},a01001-Flag=N;" + // "a01002-Rtd={2},a01002-Flag=N;" + // "a01006-Rtd={3},a01006-Flag=N;" + // "a01007-Rtd={4},a01007-Flag=N;" + // "a01008-Rtd={5},a01008-Flag=N;" + // "a34001-Rtd={6},a34001-Flag=N;" + // "a34002-Rtd={7},a34002-Flag=N;" + // "a34004-Rtd={8},a34004-Flag=N;" + // "La-Rtd={9},La-Flag=N;" + // "longitude={10};latitude={11};&&", // DateTime.Now.ToString("yyyyMMddhhmmss"), // _baseDataModel.temperature, //温度 摄氏度 // _baseDataModel.humidity, //湿度 % // 0, //气压 千帕 // _baseDataModel.windSpeed, //风速 米/秒 // _baseDataModel.windDirection, //风向 角度 // _baseDataModel.TSP, //总悬浮颗粒物 TSP // _baseDataModel.PM10, //可吸入颗粒物 PM10 // _baseDataModel.PM25, //细微颗粒物 PM2.5 // _baseDataModel.noise, //噪声 分贝 // _baseDataModel.longitude, // _baseDataModel.latitude // ) /// </summary> public void UploadData(BaseDataModel _baseDataModel) { RequstModel requstModel = new RequstModel(); StringBuilder cpsb = new StringBuilder(); cpsb.Append("&&").AppendFormat("DataTime={0};", DateTime.Now.ToString("yyyyMMddhhmmss")); if (!string.IsNullOrEmpty(_baseDataModel.temperature))//温度 摄氏度 { cpsb.AppendFormat("a01001-Rtd={0},a01001-Flag=N;", _baseDataModel.temperature); } if (!string.IsNullOrEmpty(_baseDataModel.humidity))//湿度 % { cpsb.AppendFormat("a01002-Rtd={0},a01002-Flag=N;", _baseDataModel.humidity); } if (!string.IsNullOrEmpty(_baseDataModel.windSpeed))//风速 米/秒 { cpsb.AppendFormat("a01007-Rtd={0},a01007-Flag=N;", _baseDataModel.windSpeed); } if (!string.IsNullOrEmpty(_baseDataModel.windDirection))//风向 角度 { cpsb.AppendFormat("a01008-Rtd={0},a01008-Flag=N;", _baseDataModel.windDirection); } if (!string.IsNullOrEmpty(_baseDataModel.TSP))//总悬浮颗粒物 TSP { cpsb.AppendFormat("a34001-Rtd={0},a34001-Flag=N;", _baseDataModel.TSP); } if (!string.IsNullOrEmpty(_baseDataModel.PM10))//可吸入颗粒物 PM10 { cpsb.AppendFormat("a34002-Rtd={0},a34002-Flag=N;", _baseDataModel.PM10); } if (!string.IsNullOrEmpty(_baseDataModel.PM25))//细微颗粒物 PM2.5 { cpsb.AppendFormat("a34004-Rtd={0},a34004-Flag=N;", _baseDataModel.PM25); } if (!string.IsNullOrEmpty(_baseDataModel.noise))//噪声 分贝 { cpsb.AppendFormat("La-Rtd={0},La-Flag=N;", _baseDataModel.noise); } if (!string.IsNullOrEmpty(_baseDataModel.longitude))//经度 { cpsb.AppendFormat("longitude={0};", _baseDataModel.longitude); } if (!string.IsNullOrEmpty(_baseDataModel.latitude))//纬度 { cpsb.AppendFormat("latitude={0};", _baseDataModel.latitude); } cpsb.Append("&&"); string resultStr = requstModel.ToString(new DataModel() { QN = DateTime.Now.ToString("yyyyMMddHHmmssfff"), ST = "39", CN = "2011", PW = "123456", MN = _baseDataModel.deviceAddress, Flag = "5", CP = cpsb.ToString(), }); byte[] sendData = Encoding.ASCII.GetBytes(resultStr); tcpSend(sendData); //do //{ // Thread.Sleep(1000); // if (isEnd) // { // break; // } //} while (true); _log.InfoFormat("{0}{1} MonitoringPollutantsTask 数据上传完成 设备号:{2}", DateTime.Now, Environment.NewLine, _baseDataModel.deviceAddress); _client.Close(); _client.Dispose(); }
public void ToCRC16() { //string inputStr = @"QN=20160801085857223;ST=32;CN=1062;PW=100000;MN=010000A8900016F000169DC0;Flag=5;CP=&&RtdInterval=30&&"; //int length = inputStr.Length; //string result = CRC.ToCRC16(inputStr, Encoding.ASCII, false); //Console.WriteLine(result); BaseDataModel _baseDataModel = new BaseDataModel() { dataTime = DateTime.Now, deviceAddress = "11056", humidity = "12", ID = 12, latitude = "114.213452", longitude = "34.232157", noise = "12", PM10 = "12", PM25 = "12", sensorCount = "12", temperature = "12", transCode = "12", transTo = "12", TSP = "12", windDirection = "12", windPower = "12", windSpeed = "12" }; RequstModel requstModel = new RequstModel(); string resultStr = requstModel.ToString(new DataModel() { QN = DateTime.Now.ToString("yyyyMMddHHmmssfff"), ST = "39", CN = "2011", PW = "123456", MN = "11004", Flag = "5", CP = string.Format("&&DataTime={0};" + "a01001-Rtd={1},a01001-Flag=N;" + "a01002-Rtd={2},a01002-Flag=N;" + "a01006-Rtd={3},a01006-Flag=N;" + "a01007-Rtd={4},a01007-Flag=N;" + "a01008-Rtd={5},a01008-Flag=N;" + "a34001-Rtd={6},a34001-Flag=N;" + "a34002-Rtd={7},a34002-Flag=N;" + "a34004-Rtd={8},a34004-Flag=N;" + "La-Rtd={9},La-Flag=N;" + "longitude={10};latitude={11};&&", DateTime.Now.ToString("yyyyMMddhhmmss"), _baseDataModel.temperature, //温度 摄氏度 _baseDataModel.humidity, //湿度 % 0, //气压 千帕 _baseDataModel.windSpeed, //风速 米/秒 _baseDataModel.windDirection, //风向 角度 _baseDataModel.TSP, //总悬浮颗粒物 TSP _baseDataModel.PM10, //可吸入颗粒物 PM10 _baseDataModel.PM25, //细微颗粒物 PM2.5 _baseDataModel.noise, //噪声 分贝 _baseDataModel.longitude, _baseDataModel.latitude ), }); Console.WriteLine(resultStr); }
public Task <ResultModel <ResponseResultModel> > StartProcess(RequstModel <ProcessStartArgs> requst) { _logger.Trace(LogSource, $"Start StartProcess bizId:{ requst?.requestInfo?.bizId }", "StartProcess"); #region 初始化信息 System.Diagnostics.Stopwatch stopwatch_Start = new System.Diagnostics.Stopwatch(); stopwatch_Start.Start(); System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch(); TimeSpan timespan; //初始化返回信息 var responseInfo = _BPMService.InitProcessStartResponseInfo(); var serviceInfo = _BPMService.InitBPMServiceModel(); //初始化sourceId var sourceId = (requst != null && requst.requestInfo != null) ? requst.requestInfo.sourceId : string.Empty; //获取requst Json数据 var requstJson = JsonConvert.SerializeObject(requst); #endregion try { //初始化BPMServiceInfo serviceInfo = _BPMService.InitBPMServiceInfo(sourceId, requstJson); responseInfo.resultInfo = serviceInfo.ResponseInfo; //校验Esb请求参数是否为空 serviceInfo.ResponseInfo.returnMsg = _BPMService.CheckRequestInfo(requst); if (!string.IsNullOrWhiteSpace(serviceInfo.ResponseInfo.returnMsg)) { _BPMService.ProStartAddErrorInfo(serviceInfo, requst.requestInfo, 0); return(Task.FromResult(responseInfo)); } //必填参数校验 serviceInfo.ResponseInfo.returnMsg = _BPMService.VerifyRequired(ModelState); if (!string.IsNullOrWhiteSpace(serviceInfo.ResponseInfo.returnMsg)) { _BPMService.ProStartAddErrorInfo(serviceInfo, requst.requestInfo); return(Task.FromResult(responseInfo)); } var requestInfo = requst.requestInfo; //发起模式(默认值为Default) requestInfo.startMode = string.IsNullOrWhiteSpace(requestInfo.startMode) ? ProcessStartModeEnum.Default.ToString() : requestInfo.startMode; //流程发起 responseInfo.resultInfo = _BPMService.ProcessStart(serviceInfo, requestInfo); } catch (Exception ex) { _logger.Error(ex, "StartProcess");//记录日志到日志系统 responseInfo.resultInfo.returnMsg = "接口错误!" + ex.Message; //返回错误信息,记录日志 _BPMService.ProStartAddErrorInfo(serviceInfo, requst.requestInfo, 999); } stopwatch_Start.Stop(); var timespan_Start = stopwatch_Start.Elapsed; _logger.Debug("StartProcess", $"StartProcess 执行时间:{ timespan_Start.TotalMilliseconds } ms");//方法计时记录日志系统 _logger.Trace(LogSource, $"End StartProcess流程发起 bizId:{requst?.requestInfo?.bizId}"); return(Task.FromResult(responseInfo)); }