/// <summary> /// 添加站点,不用 /// </summary> //private void Add(CEntityStation entity) //{ // String sqlStr = GetInsertSQL(entity); // ExecuteNonQuery(sqlStr); //} //private String GetInsertSQL(CEntityStation entity) //{ // String strStationID = entity.StationID; // String strSubCenterID = entity.SubCenterID.HasValue ? entity.SubCenterID.Value.ToString() : "null"; // String strCName = String.Format("'{0}'", entity.StationName); // String strCType = CEnumHelper.StationTypeToDBStr(entity.StationType); // String strWaterBase = entity.DWaterBase.HasValue ? entity.DWaterBase.ToString() : "null"; // String strWaterMax = entity.DWaterMax.HasValue ? entity.DWaterMax.ToString() : "null"; // String strWaterMin = entity.DWaterMin.HasValue ? entity.DWaterMin.ToString() : "null"; // String strWaterChange = entity.DWaterChange.HasValue ? entity.DWaterChange.ToString() : "null"; // String strRainAccuracy = entity.DRainAccuracy.ToString(); // String strRainChange =entity.DRainChange.ToString(); // String strCommParam = entity.CommParam == null ? "null" : String.Format("'{0}'", entity.CommParam); // String strGSM = entity.GSM == null ? "null" : String.Format("'{0}'", entity.GSM); // String strGprs = entity.GPRS == null ? "null" : String.Format("'{0}'", entity.GPRS); // String strPstv = entity.PSTV == null ? "null" : String.Format("'{0}'", entity.PSTV); // String strBD = entity.BDSatellite == null ? "null" : String.Format("'{0}'", entity.BDSatellite); // String strSerialPort = entity.SerialPort == null ? "null" : String.Format("'{0}'", entity.SerialPort); // return String.Format( // "INSERT INTO {0} ([{1}],[{2}],[{3}],[{4}],[{5}],[{6}],[{7}],[{8}],[{9}],[{10}],[{11}],[{12}],[{13}],[{14}],[{15}],[{16}]) VALUES ({17},{18},{19},{20},{21},{22},{23},{24},{25},{26},{27},{28},{29},{30},{31},{32})", // CT_TableName, // CN_StationID, CN_SubCenterID, CN_StationName, CN_StationType, // CN_WaterBase, CN_WaterMax, CN_WaterMin, CN_WaterChange, // CN_RainAccuracy, CN_RainChange, CN_CommParam, CN_GSM, // CN_GPRS, CN_PSTV, CN_BDSatellite, CN_SerialPort, // strStationID, strSubCenterID, strCName, strCType, // strWaterBase, strWaterMax, strWaterMin, strWaterChange, // strRainAccuracy, strRainChange, strCommParam, strGSM, // strGprs, strPstv, strBD, strSerialPort // ); //} ///// <summary> ///// 删除分站点 ///// </summary> //public void Delete(CEntityStation entity) //{ // String sqlStr = GetDeleteSQL(entity); // ExecuteNonQuery(sqlStr); //} //private String GetDeleteSQL(CEntityStation entity) //{ // return String.Format("DELETE FROM {0} WHERE [{1}]={2}", // CT_TableName, // CN_StationID, entity.StationID // ); //} /// <summary> /// 修改站点信息 /// </summary> //public void Update(CEntityStation entity) //{ // String sqlStr = GetUpdateSQL(entity); // ExecuteNonQuery(sqlStr); //} private String GetUpdateSQL(CEntityStation entity) { String strStationID = entity.StationID; String strSubCenterID = entity.SubCenterID.HasValue ? entity.SubCenterID.Value.ToString() : "null"; String strCName = String.Format("'{0}'", entity.StationName); String strCType = CEnumHelper.StationTypeToDBStr(entity.StationType); String strWaterBase = entity.DWaterBase.HasValue ? entity.DWaterBase.ToString() : "null"; String strWaterMax = entity.DWaterMax.HasValue ? entity.DWaterMax.ToString() : "null"; String strWaterMin = entity.DWaterMin.HasValue ? entity.DWaterMin.ToString() : "null"; String strWaterChange = entity.DWaterChange.HasValue ? entity.DWaterChange.ToString() : "null"; String strVoltageMin = entity.DVoltageMin.HasValue ? entity.DVoltageMin.ToString() : "null"; String strRainAccuracy = entity.DRainAccuracy.ToString(); String strRainChange = entity.DRainChange.HasValue ? entity.DRainChange.ToString() : "null"; String strGSM = entity.GSM == null ? "null" : String.Format("'{0}'", entity.GSM); String strGprs = entity.GPRS == null ? "null" : String.Format("'{0}'", entity.GPRS); String strBD = entity.BDSatellite == null ? "null" : String.Format("'{0}'", entity.BDSatellite); String strBDMember = entity.BDMemberSatellite == null ? "null" : String.Format("'{0}'", entity.BDMemberSatellite); String strMaintran = entity.Maintran == null ? "null" : String.Format("'{0}'", entity.Maintran); String strSubtran = entity.Subtran == null ? "null" : String.Format("'{0}'", entity.Subtran); String strDataprotocol = entity.Datapotocol == null ? "null" : String.Format("'{0}'", entity.Datapotocol); String strWatersensor = entity.Watersensor == null ? "null" : String.Format("'{0}'", CEnumHelper.WaterSensorTypeToDBStr(entity.Watersensor)); String strRainsensor = entity.Rainsensor == null ? "null" : String.Format("'{0}'", CEnumHelper.RainSensorTypeToDBStr(entity.Rainsensor)); String strReportinterval = entity.Reportinterval == null ? "null" : String.Format("'{0}'", entity.Reportinterval); // String strSerialPort = entity.SerialPort == null ? "null" : String.Format("'{0}'", entity.SerialPort); // string strBatchType = CEnumHelper.StationBatchTypeToDBStr(entity.BatchTranType); return(String.Format( "UPDATE {0} SET [{1}]={2},[{3}]={4},[{5}]={6},[{7}]={8},[{9}]={10},[{11}]={12},[{13}]={14},[{15}]={16},[{17}]={18},[{19}]={20},[{21}]={22},[{23}]={24},[{25}]={26},[{27}]={28},[{29}]={30},[{31}]={32},[{33}]={34} ,[{35}]={36},[{37}]={38},[{39}]={40} WHERE [{41}]='{42}';", CT_TableName, CN_SubCenterID, strSubCenterID, CN_StationName, strCName, CN_StationType, strCType, CN_WaterBase, strWaterBase, CN_WaterMax, strWaterMax, CN_WaterMin, strWaterMin, CN_WaterChange, strWaterChange, CN_RainAccuracy, strRainAccuracy, CN_RainChange, strRainChange, CN_GSM, strGSM, CN_GPRS, strGprs, CN_BDSatellite, strBD, CN_BDMember, strBDMember, CN_VoltageMin, strVoltageMin, CN_Maintran, strMaintran, CN_Subtran, strSubtran, CN_Dataprotocol, strDataprotocol, CN_Watersensor, strWatersensor, CN_Rainsensor, strRainsensor, CN_Reportinterval, strReportinterval, CN_StationID, strStationID )); }
private bool DealWithLineData(string str, int lineNumber, ref string strErroInfo, ref List <string> gprs) { Boolean flag = false; //if (str.StartsWith("(") && str.EndsWith(")")) //{ // gm 添加 //string tmp = str.Substring(1, str.Length - 2); string[] arrayStr = str.Split(','); if (arrayStr.Length == 21) { if (arrayStr[0].Length == 4) { try { string stationId = arrayStr[0].Trim(); int subcenterid = 2; try { subcenterid = CDBDataMgr.Instance.GetSubCenterByName(arrayStr[3]).SubCenterID; } #pragma warning disable CS0168 // 声明了变量“ew”,但从未使用过 catch (Exception ew) #pragma warning restore CS0168 // 声明了变量“ew”,但从未使用过 { } if (CDBDataMgr.Instance.GetStationById(stationId) != null) { strErroInfo = string.Format("行:{0} 站点不能重复\"{1}\"", lineNumber, stationId); return(false); } //int subcenterid = int.Parse(arrayStr[1]); string stationname = arrayStr[1].Trim(); EStationType stationtype = CEnumHelper.UIStrToStationType(arrayStr[2]); if (stationtype == EStationType.ERainFall) { float RAccuracy = 0.5f; try { RAccuracy = float.Parse(arrayStr[8]); } #pragma warning disable CS0168 // 声明了变量“e5”,但从未使用过 catch (Exception e5) #pragma warning restore CS0168 // 声明了变量“e5”,但从未使用过 { RAccuracy = 0.5f; } Decimal RChange = 20.0M; try { RChange = Decimal.Parse(arrayStr[9]); } #pragma warning disable CS0168 // 声明了变量“e6”,但从未使用过 catch (Exception e6) #pragma warning restore CS0168 // 声明了变量“e6”,但从未使用过 { RChange = 20.0M; } string Gsm = arrayStr[10].Trim(); string Gprs = arrayStr[11].Trim(); if (Gprs != "" && gprs.Contains(Gprs)) { strErroInfo = string.Format("行:{0} 数据格式错误,GPRS与已有站点重复", lineNumber); return(false); } else { gprs.Add(Gprs); } string BDSatellite = arrayStr[12].Trim(); string BDmember = arrayStr[13].Trim(); float VoltageMin = 11; try { VoltageMin = float.Parse(arrayStr[14]); } #pragma warning disable CS0168 // 声明了变量“er”,但从未使用过 catch (Exception er) #pragma warning restore CS0168 // 声明了变量“er”,但从未使用过 { VoltageMin = 11; } string maintran = arrayStr[15].Trim(); string subtran = arrayStr[16].Trim(); string dataprotocol = arrayStr[17].Trim(); //string watersensor = arrayStr[18].Trim(); string rainsensor = arrayStr[19].Trim(); string reportinterval = arrayStr[20].Trim(); CEntityStation tmp = new CEntityStation(); tmp.StationID = stationId; tmp.SubCenterID = subcenterid; tmp.StationName = stationname; tmp.StationType = stationtype; //tmp.DWaterBase = WBase; //tmp.DWaterMax = WMax; //tmp.DWaterMin = WMin; //tmp.DWaterChange = WChange; tmp.DRainAccuracy = RAccuracy; tmp.DRainChange = RChange; tmp.GSM = Gsm; tmp.GPRS = Gprs; tmp.BDSatellite = BDSatellite; tmp.BDMemberSatellite = BDmember; tmp.DVoltageMin = VoltageMin; //判定maintrain不能为空 if (maintran == "SX-GPRS" || maintran == "HD-GPRS" || maintran == "GSM" || maintran == "Beidou-Normal" || maintran == "Beidou-500") { tmp.Maintran = maintran; } else { strErroInfo = string.Format("行:{0} 数据格式错误,主信道不能为空", lineNumber); return(false); } //判定subtran不能为空 if (subtran == "SX-GPRS" || subtran == "HD-GPRS" || subtran == "GSM" || subtran == "Beidou-Normal" || subtran == "Beidou-500" || subtran == "无") { tmp.Subtran = subtran; } else { strErroInfo = string.Format("行:{0} 数据格式错误,备用信道不能为空", lineNumber); return(false); } //判定数据协议不能为空 if (dataprotocol == "LN" || dataprotocol == "ZYJBX") { tmp.Datapotocol = dataprotocol; } else { strErroInfo = string.Format("行:{0} 数据格式错误,数据协议出错", lineNumber); return(false); } // 判定watersensor不能为空 //if (watersensor == "浮子水位" || watersensor == "气泡水位" || watersensor == "压阻水位" || watersensor == "雷达水位" || watersensor == "无") //{ // tmp.Watersensor = CEnumHelper.WaterSensorTypeToDBStr(maintran).ToString(); //} //else //{ // strErroInfo = string.Format("行:{0} 数据格式错误,水位传感器不能为空", lineNumber); // return false; //} // 判定Rainsensor不能为空 if (rainsensor == "翻斗雨量" || rainsensor == "雨雪雨量" || rainsensor == "无") { tmp.Rainsensor = CEnumHelper.RainSensorTypeToDBStr(rainsensor).ToString(); } else { strErroInfo = string.Format("行:{0} 数据格式错误,雨量传感器不能为空", lineNumber); return(false); } //检测报讯断次 if (reportinterval == "1" || reportinterval == "4" || reportinterval == "8" || reportinterval == "12" || reportinterval == "24" || reportinterval == "48") { tmp.Reportinterval = reportinterval; } else { strErroInfo = string.Format("行:{0} 数据格式错误,报讯断次不能为空", lineNumber); return(false); } tmp.Reportinterval = reportinterval; m_listImport.Add(tmp); flag = true; } else if (stationtype == EStationType.ERiverWater) { Decimal WBase = 0.0M; try { WBase = Decimal.Parse(arrayStr[4]); } #pragma warning disable CS0168 // 声明了变量“e1”,但从未使用过 catch (Exception e1) #pragma warning restore CS0168 // 声明了变量“e1”,但从未使用过 { WBase = 0; } Decimal WMax = 100M; try { WMax = Decimal.Parse(arrayStr[5]); } #pragma warning disable CS0168 // 声明了变量“e2”,但从未使用过 catch (Exception e2) #pragma warning restore CS0168 // 声明了变量“e2”,但从未使用过 { WMax = 100M; } Decimal WMin = 0.1M; try { WMin = Decimal.Parse(arrayStr[6]); } #pragma warning disable CS0168 // 声明了变量“e3”,但从未使用过 catch (Exception e3) #pragma warning restore CS0168 // 声明了变量“e3”,但从未使用过 { WMin = 0.1M; } Decimal WChange = 2.2M; try { WChange = Decimal.Parse(arrayStr[7]); } #pragma warning disable CS0168 // 声明了变量“e4”,但从未使用过 catch (Exception e4) #pragma warning restore CS0168 // 声明了变量“e4”,但从未使用过 { WChange = 2.2M; } //float RAccuracy = 0.5f; //try //{ // RAccuracy = float.Parse(arrayStr[8]); //} //catch (Exception e5) //{ // RAccuracy = 0.5f; //} //Decimal RChange = 20.0M; //try //{ // RChange = Decimal.Parse(arrayStr[9]); //} //catch (Exception e6) //{ // RChange = 20.0M; //} string Gsm = arrayStr[10].Trim(); string Gprs = arrayStr[11].Trim(); if (Gprs != "" && gprs.Contains(Gprs)) { strErroInfo = string.Format("行:{0} 数据格式错误,GPRS与已有站点重复", lineNumber); return(false); } else { gprs.Add(Gprs); } string BDSatellite = arrayStr[12].Trim(); string BDmember = arrayStr[13].Trim(); float VoltageMin = float.Parse(arrayStr[14]); string maintran = arrayStr[15].Trim(); string subtran = arrayStr[16].Trim(); string dataprotocol = arrayStr[17].Trim(); string watersensor = arrayStr[18].Trim(); //string rainsensor = arrayStr[19].Trim(); string reportinterval = arrayStr[20].Trim(); CEntityStation tmp = new CEntityStation(); tmp.StationID = stationId; tmp.SubCenterID = subcenterid; tmp.StationName = stationname; tmp.StationType = stationtype; tmp.DWaterBase = WBase; tmp.DWaterMax = WMax; tmp.DWaterMin = WMin; tmp.DWaterChange = WChange; //tmp.DRainAccuracy = RAccuracy; //tmp.DRainChange = RChange; tmp.GSM = Gsm; tmp.GPRS = Gprs; tmp.BDSatellite = BDSatellite; tmp.BDMemberSatellite = BDmember; tmp.DVoltageMin = VoltageMin; //判定maintrain不能为空 if (maintran == "SX-GPRS" || maintran == "HD-GPRS" || maintran == "GSM" || maintran == "Beidou-Normal" || maintran == "Beidou-500") { tmp.Maintran = maintran; } else { strErroInfo = string.Format("行:{0} 数据格式错误,主信道不能为空", lineNumber); return(false); } //判定subtran不能为空 if (subtran == "SX-GPRS" || subtran == "HD-GPRS" || subtran == "GSM" || subtran == "Beidou-Normal" || subtran == "Beidou-500" || subtran == "无") { tmp.Subtran = subtran; } else { strErroInfo = string.Format("行:{0} 数据格式错误,备用信道不能为空", lineNumber); return(false); } //判定数据协议不能为空 if (dataprotocol == "LN" || dataprotocol == "ZYJBX") { tmp.Datapotocol = dataprotocol; } else { strErroInfo = string.Format("行:{0} 数据格式错误,数据协议出错", lineNumber); return(false); } // 判定watersensor不能为空 if (watersensor == "浮子水位" || watersensor == "气泡水位" || watersensor == "压阻水位" || watersensor == "雷达水位" || watersensor == "无") { tmp.Watersensor = CEnumHelper.WaterSensorTypeToDBStr(watersensor).ToString(); } else { strErroInfo = string.Format("行:{0} 数据格式错误,水位传感器不能为空", lineNumber); return(false); } // 判定Rainsensor不能为空 //if (rainsensor == "翻斗雨量" || rainsensor == "雨雪雨量" || rainsensor == "无") //{ // tmp.Rainsensor = CEnumHelper.RainSensorTypeToDBStr(maintran).ToString(); //} //else //{ // strErroInfo = string.Format("行:{0} 数据格式错误,雨量传感器不能为空", lineNumber); // return false; //} //检测报讯断次 if (reportinterval == "1" || reportinterval == "4" || reportinterval == "8" || reportinterval == "12" || reportinterval == "24" || reportinterval == "48") { tmp.Reportinterval = reportinterval; } else { strErroInfo = string.Format("行:{0} 数据格式错误,报讯断次不能为空", lineNumber); return(false); } //tmp.Reportinterval = reportinterval; m_listImport.Add(tmp); flag = true; } else if (stationtype == EStationType.EHydrology) { Decimal WBase = 0.0M; try { WBase = Decimal.Parse(arrayStr[4]); } #pragma warning disable CS0168 // 声明了变量“e1”,但从未使用过 catch (Exception e1) #pragma warning restore CS0168 // 声明了变量“e1”,但从未使用过 { WBase = 0; } Decimal WMax = 100M; try { WMax = Decimal.Parse(arrayStr[5]); } #pragma warning disable CS0168 // 声明了变量“e2”,但从未使用过 catch (Exception e2) #pragma warning restore CS0168 // 声明了变量“e2”,但从未使用过 { WMax = 100M; } Decimal WMin = 0.1M; try { WMin = Decimal.Parse(arrayStr[6]); } #pragma warning disable CS0168 // 声明了变量“e3”,但从未使用过 catch (Exception e3) #pragma warning restore CS0168 // 声明了变量“e3”,但从未使用过 { WMin = 0.1M; } Decimal WChange = 2.2M; try { WChange = Decimal.Parse(arrayStr[7]); } #pragma warning disable CS0168 // 声明了变量“e4”,但从未使用过 catch (Exception e4) #pragma warning restore CS0168 // 声明了变量“e4”,但从未使用过 { WChange = 2.2M; } float RAccuracy = 0.5f; try { RAccuracy = float.Parse(arrayStr[8]); } #pragma warning disable CS0168 // 声明了变量“e5”,但从未使用过 catch (Exception e5) #pragma warning restore CS0168 // 声明了变量“e5”,但从未使用过 { RAccuracy = 0.5f; } Decimal RChange = 20.0M; try { RChange = Decimal.Parse(arrayStr[9]); } #pragma warning disable CS0168 // 声明了变量“e6”,但从未使用过 catch (Exception e6) #pragma warning restore CS0168 // 声明了变量“e6”,但从未使用过 { RChange = 20.0M; } string Gsm = arrayStr[10].Trim(); string Gprs = arrayStr[11].Trim(); if (Gprs != "" && gprs.Contains(Gprs)) { strErroInfo = string.Format("行:{0} 数据格式错误,GPRS与已有站点重复", lineNumber); return(false); } else { gprs.Add(Gprs); } string BDSatellite = arrayStr[12].Trim(); string BDmember = arrayStr[13].Trim(); float VoltageMin = float.Parse(arrayStr[14]); string maintran = arrayStr[15].Trim(); string subtran = arrayStr[16].Trim(); string dataprotocol = arrayStr[17].Trim(); string watersensor = arrayStr[18].Trim(); string rainsensor = arrayStr[19].Trim(); string reportinterval = arrayStr[20].Trim(); CEntityStation tmp = new CEntityStation(); tmp.StationID = stationId; tmp.SubCenterID = subcenterid; tmp.StationName = stationname; tmp.StationType = stationtype; tmp.DWaterBase = WBase; tmp.DWaterMax = WMax; tmp.DWaterMin = WMin; tmp.DWaterChange = WChange; tmp.DRainAccuracy = RAccuracy; tmp.DRainChange = RChange; tmp.GSM = Gsm; tmp.GPRS = Gprs; tmp.BDSatellite = BDSatellite; tmp.BDMemberSatellite = BDmember; tmp.DVoltageMin = VoltageMin; //判定maintrain不能为空 if (maintran == "SX-GPRS" || maintran == "HD-GPRS" || maintran == "GSM" || maintran == "Beidou-Normal" || maintran == "Beidou-500") { tmp.Maintran = maintran; } else { strErroInfo = string.Format("行:{0} 数据格式错误,主信道不能为空", lineNumber); return(false); } //判定subtran不能为空 if (subtran == "SX-GPRS" || subtran == "HD-GPRS" || subtran == "GSM" || subtran == "Beidou-Normal" || subtran == "Beidou-500" || subtran == "无") { tmp.Subtran = subtran; } else { strErroInfo = string.Format("行:{0} 数据格式错误,备用信道不能为空", lineNumber); return(false); } //判定数据协议不能为空 if (dataprotocol == "LN" || dataprotocol == "ZYJBX") { tmp.Datapotocol = dataprotocol; } else { strErroInfo = string.Format("行:{0} 数据格式错误,数据协议出错", lineNumber); return(false); } // 判定watersensor不能为空 if (watersensor == "浮子水位" || watersensor == "气泡水位" || watersensor == "压阻水位" || watersensor == "雷达水位" || watersensor == "无") { tmp.Watersensor = CEnumHelper.WaterSensorTypeToDBStr(watersensor).ToString(); } else { strErroInfo = string.Format("行:{0} 数据格式错误,水位传感器不能为空", lineNumber); return(false); } // 判定Rainsensor不能为空 if (rainsensor == "翻斗雨量" || rainsensor == "雨雪雨量" || rainsensor == "无") { tmp.Rainsensor = CEnumHelper.RainSensorTypeToDBStr(rainsensor).ToString(); } else { strErroInfo = string.Format("行:{0} 数据格式错误,雨量传感器不能为空", lineNumber); return(false); } //检测报讯断次 if (reportinterval == "1" || reportinterval == "4" || reportinterval == "8" || reportinterval == "12" || reportinterval == "24" || reportinterval == "48") { tmp.Reportinterval = reportinterval; } else { strErroInfo = string.Format("行:{0} 数据格式错误,报讯断次不能为空", lineNumber); return(false); } tmp.Reportinterval = reportinterval; m_listImport.Add(tmp); flag = true; } } catch (Exception e) { strErroInfo = string.Format("行:{0} 数据格式错误", lineNumber); Debug.WriteLine(e.ToString()); return(false); } } } else { strErroInfo = string.Format("行:{0} 数据格式错误", lineNumber); return(false); } return(flag); //if (str.StartsWith("(") && str.EndsWith(")")) //{ // return false; //} //else //{ // // 格式不对 // strErroInfo = (string.Format("行:{0} 开始结束符号\"(\"\")\"格式错误", lineNumber)); // return false; //} }