using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Windows.Forms; using Invoke_CircuitLightningProtection_Base; namespace LP; public class MyFunction { public FormDesktop desktop = null; public string MyStart(int _ID_Detail, List _listTaskDetail, List _listXianLuData, List _listGanTas) { string text = "OK"; if (_listTaskDetail == null) { return "MyStart()参数2 任务变量_listTaskDetail为空."; } bool flag = false; TaskData taskData = new TaskData(); int num = -1; for (int i = 0; i < _listTaskDetail.Count; i++) { if (_listTaskDetail[i].mTaskID_Detail == _ID_Detail) { flag = true; num = i; taskData.copyFrom_TaskData(_listTaskDetail[num].mTaskData); break; } } if (!flag) { return $"MyStart()参数1 任务编号_ID_Detail={_ID_Detail}无匹配任务."; } XianLuData xianLuData = new XianLuData(); int indexXianLu = -1; for (int j = 0; j < _listXianLuData.Count; j++) { if (_listXianLuData[j].mName_XianLu.Equals(_listTaskDetail[num].mTaskData.mXianLuName_Task)) { xianLuData.CopyFrom_XianLuData(_listXianLuData[j]); indexXianLu = j; break; } } string result = ""; switch (taskData.mTypeCode_Task) { case 1: result = MyStart_Finished1_PuTongJiSuan(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 2: result = MyStart_Finished2_FengXianPingGu(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 3: result = MyStart_Finished3_CuoShiTuiJian(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 302: result = MyStart_Finished3_CuoShiTuiJian(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 4: result = MyStart_Finished1_PuTongJiSuan(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 5: result = MyStart_Finished5_Report(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 6: result = MyStart_Finished6_AnZhuangBLQ(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 602: result = MyStart_Finished6_AnZhuangBLQ(num, _listTaskDetail, indexXianLu, _listXianLuData); break; case 11: result = MyStart_mPrepare11_LightingCurrent(num, _listTaskDetail, indexXianLu, _listXianLuData, _listGanTas); break; case 12: result = MyStart_mPrepare12_DiShanMiDu(num, _listTaskDetail, indexXianLu, _listXianLuData, _listGanTas); break; case 13: result = MyStart_mPrepare13_DiMianQingJiao(num, _listTaskDetail, indexXianLu, _listXianLuData, _listGanTas); break; } return result; } public string MyLook(int _ID_Task, List _listTaskData, List _listXianLuData) { return "OK"; } public string MyStart_Finished1_PuTongJiSuan(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData) { string text = "OK"; int num = 0; int num2 = 0; bool flag = false; bool flag2 = false; try { if (_indexDetail < 0 || _indexDetail >= _listTaskDetail.Count) { return $"MyStart_Finished1_PuTongJiSuan()参数1 细胞下标越界_indexDetail={_indexDetail} 合法区间[0,{_listTaskDetail.Count - 1}]"; } if (_indexXianLu < 0 || _indexXianLu >= _listXianLuData.Count) { return $"MyStart_Finished1_PuTongJiSuan()参数3 线路下标越界_indexXianLu={_indexXianLu} 合法区间[0,{_listXianLuData.Count - 1}]"; } TaskGroup taskGroup = null; taskGroup = _listTaskDetail[_indexDetail].mTaskGroup; if (taskGroup == null || taskGroup.mListExTaskData.Count == 0) { return "MyStart_Finished1_PuTongJiSuan() 任务组mTaskGroup为空 缺少有效任务数据!]"; } for (int i = 0; i < taskGroup.mListExTaskData.Count; i++) { if (taskGroup.mListExTaskData[i].mID_Task == _listTaskDetail[_indexDetail].mTaskID_Detail && taskGroup.mListExTaskData[i].mTGanTas != null && taskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData != null) { num += taskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData.Count; } } num2 = 0; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); List list = null; Method method = new Method(); TGanTaData tGanTaData = null; string text2 = Application.StartupPath + "\\" + desktop.mSubPath_ATP_Setting; string text3 = ""; string text4 = ""; string[] separator = new string[3] { "|", "\r", "\n" }; string[] array = null; bool flag3 = false; double num3 = 0.0; int num4 = 0; double num5 = 0.0; string text5 = ""; string path = text2 + "\\TaskOption.txt"; string text6 = text2 + "\\ResultTips.txt"; string text7 = ""; string[] array2 = null; int num6 = 0; using (FileStream fileStream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.None)) { using (StreamWriter streamWriter = new StreamWriter(fileStream, Encoding.UTF8)) { streamWriter.WriteLine("反击-耐雷水平-下标:0-规程 1-ATP"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_NaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绕击-耐雷水平-下标:0-规程 1-ATP"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_NaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("反击-跳闸率-下标:0-无 1-规程"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_TZL}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绕击-跳闸率-下标:0-无 1-规程 2-EGM"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_TZL}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("海拔修正公式-下标: 0-无 1-推荐公式1 2-推荐公式2"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("感应电压公式-下标:0-公式1 1-公式2"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_GanYingDianYaGongShi}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("雷电流波形:1--Heidler(INPhei),2--双斜角(INPslo),3--双指数(INPsur)"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_CurrentCurve}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绝缘子闪络判据-下标:0-规程法、1-相交法、2-先导发展法"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_ShanLuoPanJu}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("耐雷水平选项:0-单相耐雷水平 1-多相耐雷水平"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_DuoXiangNaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.Close(); } fileStream.Close(); } text5 = _listTaskDetail[_indexDetail].mTaskData.mFanJi_NaiLeiShuiPing + _listTaskDetail[_indexDetail].mTaskData.mRaoJi_NaiLeiShuiPing; if (text5.IndexOf("规程") >= 0) { flag = true; } for (int j = 0; j < taskGroup.mListExTaskData.Count; j++) { if (taskGroup.mListExTaskData[j].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[j].mTGanTas == null || taskGroup.mListExTaskData[j].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[j].mTGanTas.mListTGanTaData; for (int k = 0; k < list.Count; k++) { tGanTaData = list[k]; if (tGanTaData == null) { continue; } text5 = ""; text3 = ""; num3 = tGanTaData.mJYZCD_GanTa; num3 = MyJYZCD_by_HaiBa(_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi, tGanTaData.mJYZCD_GanTa, tGanTaData.mHaiBa_GanTa); switch (tGanTaData.mTaXing_GanTa) { case "d35maotou": case "d66maotou": case "d110maotou": case "d220maotou": case "d330maotou": case "d500maotou": case "d1000maotou": case "d35jiubei": case "d66jiubei": case "d110jiubei": case "d220jiubei": case "d330jiubei": case "d500jiubei": case "d750jiubei": case "d1000jiubei": case "d35ganzi": case "d66ganzi": case "d110ganzi": case "d220ganzi": case "d330ganzi": case "d500ganzi": case "d750ganzi": case "d1000ganzi": case "d35shangzi": case "d66shangzi": case "d110shangzi": case "d220shangzi": case "d330shangzi": case "d500shangzi": case "d110menxing": case "d220menxing": case "d500menxing": text3 = text3 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text3 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num3}|{tGanTaData.mHuGao_GanTa}"; text3 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text3 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text3 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text3 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; text5 = "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; flag2 = text5.Equals("|是|是|是"); break; case "s66guxingd": text3 = text3 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text3 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num3}|{tGanTaData.mHuGao_GanTa}"; text3 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text3 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text3 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text3 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; text5 = "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; flag2 = text5.Equals("|是|是|是"); break; case "s35guxing": case "s66guxing": case "s110guxing": case "s220guxing": case "s330guxing": case "s500guxing": case "s750guxing": case "s1000guxing": text3 = text3 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mXiangXu2_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text3 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num3}|{tGanTaData.mHuGao_GanTa}"; text3 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m2ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m2ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m2ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text3 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text3 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text3 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; text5 = "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; flag2 = text5.Equals("|是|是|是"); break; case "s35sihuita": case "s110sihuita": case "s220sihuita": case "s500sihuita": text3 = text3 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mXiangXu2_GanTa + "|" + tGanTaData.mXiangXu3_GanTa + "|" + tGanTaData.mXiangXu4_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text3 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num3}|{tGanTaData.mHuGao_GanTa}"; text3 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text3 += $"|{tGanTaData.m2ZJ_Shang_GanTa}|{tGanTaData.m2ZJ_Zhong_GanTa}|{tGanTaData.m2ZJ_Xia_GanTa}|{tGanTaData.m2GD_Shang_GanTa}|{tGanTaData.m2GD_Zhong_GanTa}|{tGanTaData.m2GD_Xia_GanTa}"; text3 += $"|{tGanTaData.m3ZJ_Shang_GanTa}|{tGanTaData.m3ZJ_Zhong_GanTa}|{tGanTaData.m3ZJ_Xia_GanTa}|{tGanTaData.m3GD_Shang_GanTa}|{tGanTaData.m3GD_Zhong_GanTa}|{tGanTaData.m3GD_Xia_GanTa}"; text3 += $"|{tGanTaData.m4ZJ_Shang_GanTa}|{tGanTaData.m4ZJ_Zhong_GanTa}|{tGanTaData.m4ZJ_Xia_GanTa}|{tGanTaData.m4GD_Shang_GanTa}|{tGanTaData.m4GD_Zhong_GanTa}|{tGanTaData.m4GD_Xia_GanTa}"; text3 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text3 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text3 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; text5 = "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; flag2 = text5.Equals("|是|是|是"); break; case "zhiliu500": case "zhiliu800": case "vzhiliu500": case "vzhiliu800": text3 = text3 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text3 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num3}|{tGanTaData.mHuGao_GanTa}"; text3 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text3 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text3 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text5 = "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; flag2 = text5.Equals("|是|是"); break; } MyLog.AddLog($"k={j} gt={k} before AllCall_CS( 101, \"GBK\", path={text2}, parameters={text3} )"); if (flag && flag2) { text4 = "请换ATP方法"; tGanTaData.m_Result_PuTongJiSuan_GanTa = text4; num2++; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); continue; } text4 = method.AllCall_CS(101, "GBK", text2, text3); MyLog.AddLog("sret=" + text4); flag3 = false; array = text4.Split(separator, StringSplitOptions.RemoveEmptyEntries); if (!File.Exists(text6)) { continue; } Encoding[] array3 = new Encoding[6] { Encoding.UTF8, Encoding.Default, Encoding.ASCII, Encoding.Unicode, Encoding.UTF7, Encoding.UTF32 }; int num7 = 0; bool flag4 = false; string text8 = ""; for (int l = 0; l < array3.Length; l++) { try { using FileStream fileStream2 = new FileStream(text6, FileMode.Open, FileAccess.Read, FileShare.None); using (StreamReader streamReader = new StreamReader(fileStream2, array3[l])) { text8 = streamReader.ReadToEnd(); if (string.IsNullOrEmpty(text8) || text8.IndexOf("耐雷水平") >= 0 || text8.IndexOf("跳闸率") >= 0 || text8.IndexOf("风险等级") >= 0) { num7 = l; flag4 = true; } streamReader.Close(); } fileStream2.Close(); } catch (Exception) { } if (flag4) { break; } } MyLog.AddLog($"found={flag4} fileName_ResultTips={text6}"); using (FileStream fileStream3 = new FileStream(text6, FileMode.Open, FileAccess.Read, FileShare.None)) { using (StreamReader streamReader2 = new StreamReader(fileStream3, array3[num7])) { text7 = streamReader2.ReadToEnd().Trim(); streamReader2.Close(); } fileStream3.Close(); } if (string.IsNullOrEmpty(text7)) { tGanTaData.m_Result_PuTongJiSuan_GanTa = text4; num2++; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); continue; } num6 = 0; array2 = text7.Split(separator, StringSplitOptions.RemoveEmptyEntries); for (int m = 0; m < array2.Length; m++) { if (m == 0) { tGanTaData.mFJ_NLSP_GanTa = (tGanTaData.mFJ_TZL_GanTa = 0.0); tGanTaData.mRJ_NLSP_GanTa = (tGanTaData.mRJ_TZL_GanTa = 0.0); tGanTaData.mFXDJ_GanTa = 0; tGanTaData.mMA_RJ_NLSP_GanTa = (tGanTaData.mMB_RJ_NLSP_GanTa = (tGanTaData.mMC_RJ_NLSP_GanTa = 0.0)); tGanTaData.mM1_NLSP_GanTa = (tGanTaData.mM2_NLSP_GanTa = (tGanTaData.mM3_NLSP_GanTa = 0.0)); tGanTaData.mM1_Xiang_GanTa = (tGanTaData.mM2_Xiang_GanTa = (tGanTaData.mM3_Xiang_GanTa = "-")); tGanTaData.mM1_TZL_GanTa = (tGanTaData.mM2_TZL_GanTa = (tGanTaData.mM3_TZL_GanTa = 0.0)); tGanTaData.mM4_NLSP_GanTa = (tGanTaData.mM5_NLSP_GanTa = (tGanTaData.mM6_NLSP_GanTa = 0.0)); tGanTaData.mM4_Xiang_GanTa = (tGanTaData.mM5_Xiang_GanTa = (tGanTaData.mM6_Xiang_GanTa = "-")); tGanTaData.mM4_TZL_GanTa = (tGanTaData.mM5_TZL_GanTa = (tGanTaData.mM6_TZL_GanTa = 0.0)); } if (m >= array.Length) { break; } try { num4 = Convert.ToInt32(array[m].Trim()); } catch (Exception) { num4 = 0; } try { num5 = Convert.ToDouble(array[m].Trim()); } catch (Exception) { num5 = 0.0; } text5 = array[m].Trim(); switch (array2[m].Trim()) { case "反击耐雷水平": tGanTaData.mFJ_NLSP_GanTa = num5; break; case "反击跳闸率": tGanTaData.mFJ_TZL_GanTa = num5; break; case "绕击耐雷水平": tGanTaData.mRJ_NLSP_GanTa = num5; break; case "绕击跳闸率": tGanTaData.mRJ_TZL_GanTa = num5; break; case "雷击风险等级": tGanTaData.mFXDJ_GanTa = num4; break; case "A相绕击耐雷水平": tGanTaData.mMA_RJ_NLSP_GanTa = num5; break; case "B相绕击耐雷水平": tGanTaData.mMB_RJ_NLSP_GanTa = num5; break; case "C相绕击耐雷水平": tGanTaData.mMC_RJ_NLSP_GanTa = num5; break; case "绕击耐雷水平1": tGanTaData.mMA_RJ_NLSP_GanTa = num5; break; case "绕击耐雷水平2": tGanTaData.mMB_RJ_NLSP_GanTa = num5; break; case "单相反击耐雷水平": tGanTaData.mM1_NLSP_GanTa = num5; break; case "单相闪络相": tGanTaData.mM1_Xiang_GanTa = text5; break; case "单相反击跳闸率": tGanTaData.mM1_TZL_GanTa = num5; break; case "双相反击耐雷水平": tGanTaData.mM2_NLSP_GanTa = num5; break; case "双相闪络相": tGanTaData.mM2_Xiang_GanTa = text5; break; case "双相反击跳闸率": tGanTaData.mM2_TZL_GanTa = num5; break; case "三相反击耐雷水平": tGanTaData.mM3_NLSP_GanTa = num5; break; case "三相闪络相": tGanTaData.mM3_Xiang_GanTa = text5; break; case "三相反击跳闸率": tGanTaData.mM3_TZL_GanTa = num5; break; case "四相反击耐雷水平": tGanTaData.mM4_NLSP_GanTa = num5; break; case "四相闪络相": tGanTaData.mM4_Xiang_GanTa = text5; break; case "四相反击跳闸率": tGanTaData.mM4_TZL_GanTa = num5; break; case "五相反击耐雷水平": tGanTaData.mM5_NLSP_GanTa = num5; break; case "五相闪络相": tGanTaData.mM5_Xiang_GanTa = text5; break; case "五相反击跳闸率": tGanTaData.mM5_TZL_GanTa = num5; break; case "六相反击耐雷水平": tGanTaData.mM6_NLSP_GanTa = num5; break; case "六相闪络相": tGanTaData.mM6_Xiang_GanTa = text5; break; case "六相反击跳闸率": tGanTaData.mM6_TZL_GanTa = num5; break; case "保护角": tGanTaData.m_BaoHuJiao = num5; break; default: num6--; break; } num6++; } if (num6 >= 2) { flag3 = true; } tGanTaData.m_Result_PuTongJiSuan_GanTa = ((!flag3) ? text4 : "OK"); text4 = MyCanShu_1_HuaFenDangJi(list, k, _listXianLuData[_indexXianLu], _firstTry: true); num2++; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); text3 = ""; int num8 = -1; CanShuFenJi canShuFenJi = null; num8 = desktop.mAll_CanShuFenJi.MyFind(tGanTaData.m_ID_CanShuFenJi); if (num8 >= 0) { canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num8]; canShuFenJi.mNew_BaoHuJiao = tGanTaData.m_BaoHuJiao; if (j == 0) { canShuFenJi.mOld_BaoHuJiao = tGanTaData.m_BaoHuJiao; } } } taskGroup.mListExTaskData[j].Finished1_PuTongJiSuan = 1; taskGroup.mListExTaskData[j].Complete = 1; taskGroup.mListExTaskData[j].Finished2_FengXianPingGu = 0; } _listTaskDetail[_indexDetail].mTaskData.Finished1_PuTongJiSuan = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; _listTaskDetail[_indexDetail].mTaskData.Finished2_FengXianPingGu = 0; } catch (Exception ex4) { text = "exception=" + ex4.Message; MyLog.AddLog("MyStart_Finished1_PuTongJiSuan() " + text); } return text; } private double MyJYZCD_by_HaiBa(int _mHaiBaXiuZhengGongShi, double _mJYZCD_GanTa, double _mHaiBa_GanTa) { double num = 0.0; double num2 = 1.0; double num3 = 1.0; switch (_mHaiBaXiuZhengGongShi) { case 1: try { num3 = Math.Exp(num2 * (_mHaiBa_GanTa / 8150.0)); } catch (Exception) { num3 = 1.0; } break; case 2: try { num3 = 1.0 / (1.0 - num2 * _mHaiBa_GanTa * 0.0001); } catch (Exception) { num3 = 1.0; } break; } return _mJYZCD_GanTa / num3; } public string MyStart_Finished2_FengXianPingGu(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData) { string result = "OK"; for (int i = 0; i < _listTaskDetail[_indexDetail].mTaskGroup.mListExTaskData.Count; i++) { for (int j = 0; j < _listTaskDetail[_indexDetail].mTaskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData.Count; j++) { _listTaskDetail[_indexDetail].mTaskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData[j].m_YuanYinFenXi_GanTa = "高度过高\r\n接地电阻大\r\n绝缘子短"; } } _listTaskDetail[_indexDetail].mTaskData.Finished2_FengXianPingGu = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; _listTaskDetail[_indexDetail].mTaskData.Finished3_CuoShiTuiJian = 0; return result; } public string MyStart_Finished3_CuoShiTuiJian(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData) { string result = "OK"; try { int num = 0; int num2 = 0; int num3 = 0; int num4 = 0; int num5 = 0; int num6 = 0; if (_indexDetail < 0 || _indexDetail >= _listTaskDetail.Count) { result = $"MyStart_Finished3_CuoShiTuiJian()参数1 细胞下标越界_indexDetail={_indexDetail} 合法区间[0,{_listTaskDetail.Count - 1}]"; return result; } if (_indexXianLu < 0 || _indexXianLu >= _listXianLuData.Count) { result = $"MyStart_Finished3_CuoShiTuiJian()参数3 线路下标越界_indexXianLu={_indexXianLu} 合法区间[0,{_listXianLuData.Count - 1}]"; return result; } TaskGroup taskGroup = null; taskGroup = _listTaskDetail[_indexDetail].mTaskGroup; if (taskGroup == null || taskGroup.mListExTaskData.Count == 0) { result = "MyStart_Finished1_PuTongJiSuan() 任务组mTaskGroup为空 缺少有效任务数据!]"; return result; } for (int i = 0; i < taskGroup.mListExTaskData.Count; i++) { if (taskGroup.mListExTaskData[i].mID_Task == _listTaskDetail[_indexDetail].mTaskID_Detail && taskGroup.mListExTaskData[i].mTGanTas != null && taskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData != null) { num += taskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData.Count; } } num2 = 0; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); Method method = new Method(); TGanTaData tGanTaData = null; string text = Application.StartupPath + "\\" + desktop.mSubPath_ATP_Setting; string text2 = ""; string text3 = ""; string text4 = ""; string[] separator = new string[3] { "|", "\r", "\n" }; string[] array = null; bool flag = false; double num7 = 0.0; int num8 = 0; double num9 = 0.0; string text5 = ""; int num10 = 0; int num11 = 0; string path = text + "\\TaskOption.txt"; string path2 = text + "\\ResultTips.txt"; string text6 = ""; string[] array2 = null; int num12 = 0; using (FileStream fileStream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.None)) { using (StreamWriter streamWriter = new StreamWriter(fileStream, Encoding.UTF8)) { streamWriter.WriteLine("反击-耐雷水平-下标:0-规程 1-ATP"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_NaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绕击-耐雷水平-下标:0-规程 1-ATP"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_NaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("反击-跳闸率-下标:0-无 1-规程"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_TZL}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绕击-跳闸率-下标:0-无 1-规程 2-EGM"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_TZL}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("海拔修正公式-下标: 0-无 1-推荐公式1 2-推荐公式2"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("感应电压公式-下标:0-公式1 1-公式2"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_GanYingDianYaGongShi}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("雷电流波形:1--Heidler(INPhei),2--双斜角(INPslo),3--双指数(INPsur)"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_CurrentCurve}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绝缘子闪络判据-下标:0-规程法、1-相交法、2-先导发展法"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_ShanLuoPanJu}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("耐雷水平选项:0-单相耐雷水平 1-多相耐雷水平"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_DuoXiangNaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.Close(); } fileStream.Close(); } num4 = (num5 = 0); List list = null; for (int j = 0; j < taskGroup.mListExTaskData.Count; j++) { if (taskGroup.mListExTaskData[j].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[j].mTGanTas == null || taskGroup.mListExTaskData[j].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[j].mTGanTas.mListTGanTaData; for (int k = 0; k < list.Count; k++) { if (list[k] == null || list[k].mFXDJ_GanTa <= 2) { continue; } for (int l = 0; l < desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData.Count; l++) { if (!(desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mID_GanTa == list[k].mID_GanTa)) { continue; } list[k].mJDDZ_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mJDDZ_GanTa; list[k].mJYZCD_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mJYZCD_GanTa; list[k].mBLZJ_L_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mBLZJ_L_GanTa; list[k].mBLZJ_R_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mBLZJ_R_GanTa; if (_listTaskDetail[_indexDetail].mTaskData.mTypeCode_Task == 302) { double num13 = 0.0; num13 = list[k].mBLZJ_L_GanTa; if (num13 < list[k].mBLZJ_R_GanTa) { num13 = list[k].mBLZJ_R_GanTa; } list[k].mBLZJ_R_GanTa = (list[k].mBLZJ_L_GanTa = num13); } break; } num4++; text3 = MyCanShu_1_HuaFenDangJi(list, k, _listXianLuData[_indexXianLu], _firstTry: true); if (!text3.Equals("OK")) { result = $"MyStart_Finished3_CuoShiTuiJian()参数1 细胞下标_indexDetail={_indexDetail}\r\n" + $" mTask.mListDetails[{_indexDetail}].mTaskGroup.mListExTaskData[{j}].mTGanTas.mListTGanTaData[{k}]\r\n" + " " + text3; return result; } } } num6 = 0; for (num3 = 1; num3 > 0; num3++) { num = 0; for (int m = 0; m < taskGroup.mListExTaskData.Count; m++) { if (taskGroup.mListExTaskData[m].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[m].mTGanTas == null || taskGroup.mListExTaskData[m].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[m].mTGanTas.mListTGanTaData; for (int n = 0; n < list.Count; n++) { if (list[n] != null && list[n].mFXDJ_GanTa > 2) { text3 = MyCanShu_1_HuaFenDangJi(list, n, _listXianLuData[_indexXianLu]); if (!text3.Equals("OK")) { result = $"MyStart_Finished3_CuoShiTuiJian()参数1 细胞下标_indexDetail={_indexDetail} turn={num3} \r\n" + $" mTask.mListDetails[{_indexDetail}].mTaskGroup.mListExTaskData[{m}].mTGanTas.mListTGanTaData[{n}]\r\n" + " " + text3; return result; } num++; } } } if (num == 0) { break; } num11 = 0; for (int num14 = 0; num14 < taskGroup.mListExTaskData.Count; num14++) { if (taskGroup.mListExTaskData[num14].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[num14].mTGanTas == null || taskGroup.mListExTaskData[num14].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[num14].mTGanTas.mListTGanTaData; for (int num15 = 0; num15 < list.Count; num15++) { if (list[num15] != null && list[num15].mFXDJ_GanTa > 2) { num10 = ((_listTaskDetail[_indexDetail].mTaskData.mTypeCode_Task == 3) ? MyCanShu_2_TuiJianCuoShi(list, num15) : ((_listTaskDetail[_indexDetail].mTaskData.mTypeCode_Task != 302) ? MyCanShu_2_TuiJianCuoShi(list, num15) : MyCanShu_3_TuiJianCuoShi_FeiJianXian(list, num15))); if (num10 < 0) { text4 = $"MyStart_Finished3_CuoShiTuiJian()参数1 细胞下标_indexDetail={_indexDetail} turn={num3} \r\n" + $" mTask.mListDetails[{_indexDetail}].mTaskGroup.mListExTaskData[{num14}].mTGanTas.mListTGanTaData[{num15}]\r\n"; MyLog.AddLog(text4); num10 = 0; } num11 += num10; num6 += num10; } } } if (num11 == 0) { break; } num2 = 0; for (int num16 = 0; num16 < taskGroup.mListExTaskData.Count; num16++) { if (taskGroup.mListExTaskData[num16].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[num16].mTGanTas == null || taskGroup.mListExTaskData[num16].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[num16].mTGanTas.mListTGanTaData; for (int num17 = 0; num17 < list.Count; num17++) { if (list[num17].mFXDJ_GanTa <= 2) { continue; } tGanTaData = list[num17]; text2 = ""; num7 = tGanTaData.mJYZCD_GanTa; num7 = MyJYZCD_by_HaiBa(_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi, tGanTaData.mJYZCD_GanTa, tGanTaData.mHaiBa_GanTa); switch (tGanTaData.mTaXing_GanTa) { case "d35maotou": case "d66maotou": case "d110maotou": case "d220maotou": case "d330maotou": case "d500maotou": case "d1000maotou": case "d35jiubei": case "d66jiubei": case "d110jiubei": case "d220jiubei": case "d330jiubei": case "d500jiubei": case "d750jiubei": case "d1000jiubei": case "d35ganzi": case "d66ganzi": case "d110ganzi": case "d220ganzi": case "d330ganzi": case "d500ganzi": case "d750ganzi": case "d1000ganzi": case "d35shangzi": case "d66shangzi": case "d110shangzi": case "d220shangzi": case "d330shangzi": case "d500shangzi": case "d110menxing": case "d220menxing": case "d500menxing": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "s66guxingd": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "s35guxing": case "s66guxing": case "s110guxing": case "s220guxing": case "s330guxing": case "s500guxing": case "s750guxing": case "s1000guxing": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mXiangXu2_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m2ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m2ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m2ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "s35sihuita": case "s110sihuita": case "s220sihuita": case "s500sihuita": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mXiangXu2_GanTa + "|" + tGanTaData.mXiangXu3_GanTa + "|" + tGanTaData.mXiangXu4_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.m2ZJ_Shang_GanTa}|{tGanTaData.m2ZJ_Zhong_GanTa}|{tGanTaData.m2ZJ_Xia_GanTa}|{tGanTaData.m2GD_Shang_GanTa}|{tGanTaData.m2GD_Zhong_GanTa}|{tGanTaData.m2GD_Xia_GanTa}"; text2 += $"|{tGanTaData.m3ZJ_Shang_GanTa}|{tGanTaData.m3ZJ_Zhong_GanTa}|{tGanTaData.m3ZJ_Xia_GanTa}|{tGanTaData.m3GD_Shang_GanTa}|{tGanTaData.m3GD_Zhong_GanTa}|{tGanTaData.m3GD_Xia_GanTa}"; text2 += $"|{tGanTaData.m4ZJ_Shang_GanTa}|{tGanTaData.m4ZJ_Zhong_GanTa}|{tGanTaData.m4ZJ_Xia_GanTa}|{tGanTaData.m4GD_Shang_GanTa}|{tGanTaData.m4GD_Zhong_GanTa}|{tGanTaData.m4GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "zhiliu500": case "zhiliu800": case "vzhiliu500": case "vzhiliu800": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; break; } int num18 = -1; CanShuFenJi canShuFenJi = null; num18 = desktop.mAll_CanShuFenJi.MyFind(tGanTaData.m_ID_CanShuFenJi); if (num18 >= 0) { canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num18]; if (!canShuFenJi.mCallDLL) { num2++; desktop.MySetFormTitle(desktop, $"第{num3}轮 {num2}/{num} "); num5++; continue; } } text3 = method.AllCall_CS(101, "GBK", text, text2); flag = false; array = text3.Split(separator, StringSplitOptions.RemoveEmptyEntries); if (File.Exists(path2)) { Encoding[] array3 = new Encoding[6] { Encoding.UTF8, Encoding.Default, Encoding.ASCII, Encoding.Unicode, Encoding.UTF7, Encoding.UTF32 }; int num19 = 0; bool flag2 = false; string text7 = ""; for (int num20 = 0; num20 < array3.Length; num20++) { try { using FileStream fileStream2 = new FileStream(path2, FileMode.Open, FileAccess.Read, FileShare.None); using (StreamReader streamReader = new StreamReader(fileStream2, array3[num20])) { text7 = streamReader.ReadToEnd(); if (text7.IndexOf("耐雷水平") >= 0 || text7.IndexOf("跳闸率") >= 0 || text7.IndexOf("风险等级") >= 0) { num19 = num20; flag2 = true; } streamReader.Close(); } fileStream2.Close(); } catch (Exception) { } if (flag2) { break; } } using (FileStream fileStream3 = new FileStream(path2, FileMode.Open, FileAccess.Read, FileShare.None)) { using (StreamReader streamReader2 = new StreamReader(fileStream3, array3[num19])) { text6 = streamReader2.ReadToEnd().Trim(); streamReader2.Close(); } fileStream3.Close(); } if (string.IsNullOrEmpty(text6)) { tGanTaData.m_Result_PuTongJiSuan_GanTa = text3; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); tGanTaData = null; text2 = ""; continue; } num12 = 0; array2 = text6.Split(separator, StringSplitOptions.RemoveEmptyEntries); for (int num21 = 0; num21 < array2.Length; num21++) { if (num21 == 0) { tGanTaData.mFJ_NLSP_GanTa = (tGanTaData.mFJ_TZL_GanTa = 0.0); tGanTaData.mRJ_NLSP_GanTa = (tGanTaData.mRJ_TZL_GanTa = 0.0); tGanTaData.mFXDJ_GanTa = 0; tGanTaData.mMA_RJ_NLSP_GanTa = (tGanTaData.mMB_RJ_NLSP_GanTa = (tGanTaData.mMC_RJ_NLSP_GanTa = 0.0)); tGanTaData.mM1_NLSP_GanTa = (tGanTaData.mM2_NLSP_GanTa = (tGanTaData.mM3_NLSP_GanTa = 0.0)); tGanTaData.mM1_Xiang_GanTa = (tGanTaData.mM2_Xiang_GanTa = (tGanTaData.mM3_Xiang_GanTa = "-")); tGanTaData.mM1_TZL_GanTa = (tGanTaData.mM2_TZL_GanTa = (tGanTaData.mM3_TZL_GanTa = 0.0)); tGanTaData.mM4_NLSP_GanTa = (tGanTaData.mM5_NLSP_GanTa = (tGanTaData.mM6_NLSP_GanTa = 0.0)); tGanTaData.mM4_Xiang_GanTa = (tGanTaData.mM5_Xiang_GanTa = (tGanTaData.mM6_Xiang_GanTa = "-")); tGanTaData.mM4_TZL_GanTa = (tGanTaData.mM5_TZL_GanTa = (tGanTaData.mM6_TZL_GanTa = 0.0)); } if (num21 >= array.Length) { break; } try { num8 = Convert.ToInt32(array[num21].Trim()); } catch (Exception) { num8 = 0; } try { num9 = Convert.ToDouble(array[num21].Trim()); } catch (Exception) { num9 = 0.0; } text5 = array[num21].Trim(); switch (array2[num21].Trim()) { case "反击耐雷水平": tGanTaData.mFJ_NLSP_GanTa = num9; break; case "反击跳闸率": tGanTaData.mFJ_TZL_GanTa = num9; break; case "绕击耐雷水平": tGanTaData.mRJ_NLSP_GanTa = num9; break; case "绕击跳闸率": tGanTaData.mRJ_TZL_GanTa = num9; break; case "雷击风险等级": tGanTaData.mFXDJ_GanTa = num8; break; case "A相绕击耐雷水平": tGanTaData.mMA_RJ_NLSP_GanTa = num9; break; case "B相绕击耐雷水平": tGanTaData.mMB_RJ_NLSP_GanTa = num9; break; case "C相绕击耐雷水平": tGanTaData.mMC_RJ_NLSP_GanTa = num9; break; case "单相反击耐雷水平": tGanTaData.mM1_NLSP_GanTa = num9; break; case "单相闪络相": tGanTaData.mM1_Xiang_GanTa = text5; break; case "单相反击跳闸率": tGanTaData.mM1_TZL_GanTa = num9; break; case "双相反击耐雷水平": tGanTaData.mM2_NLSP_GanTa = num9; break; case "双相闪络相": tGanTaData.mM2_Xiang_GanTa = text5; break; case "双相反击跳闸率": tGanTaData.mM2_TZL_GanTa = num9; break; case "三相反击耐雷水平": tGanTaData.mM3_NLSP_GanTa = num9; break; case "三相闪络相": tGanTaData.mM3_Xiang_GanTa = text5; break; case "三相反击跳闸率": tGanTaData.mM3_TZL_GanTa = num9; break; case "四相反击耐雷水平": tGanTaData.mM4_NLSP_GanTa = num9; break; case "四相闪络相": tGanTaData.mM4_Xiang_GanTa = text5; break; case "四相反击跳闸率": tGanTaData.mM4_TZL_GanTa = num9; break; case "五相反击耐雷水平": tGanTaData.mM5_NLSP_GanTa = num9; break; case "五相闪络相": tGanTaData.mM5_Xiang_GanTa = text5; break; case "五相反击跳闸率": tGanTaData.mM5_TZL_GanTa = num9; break; case "六相反击耐雷水平": tGanTaData.mM6_NLSP_GanTa = num9; break; case "六相闪络相": tGanTaData.mM6_Xiang_GanTa = text5; break; case "六相反击跳闸率": tGanTaData.mM6_TZL_GanTa = num9; break; case "保护角": tGanTaData.m_BaoHuJiao = num9; break; default: num12--; break; } num12++; } if (num12 >= 2) { flag = true; } tGanTaData.m_Result_PuTongJiSuan_GanTa = ((!flag) ? text3 : "OK"); num2++; desktop.MySetFormTitle(desktop, $"第{num3}轮 {num2}/{num} "); num5++; text2 = ""; } num18 = desktop.mAll_CanShuFenJi.MyFind(tGanTaData.m_ID_CanShuFenJi); if (num18 >= 0) { canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num18]; canShuFenJi.mNew_BaoHuJiao = tGanTaData.m_BaoHuJiao; if (num3 == 1) { canShuFenJi.mOld_BaoHuJiao = tGanTaData.m_BaoHuJiao; } } } taskGroup.mListExTaskData[num16].Finished3_CuoShiTuiJian = 1; taskGroup.mListExTaskData[num16].Complete = 1; } } desktop.MySetFormTitle(desktop, $"总计{num3}轮 一共措施推荐{num6}条 杆塔{num5}塔次/涉及杆塔{num4}。"); _listTaskDetail[_indexDetail].mTaskData.Finished3_CuoShiTuiJian = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; } catch (Exception ex4) { MyLog.AddLog("MyFunction.cs MyStart_Finished3_CuoShiTuiJian() ex=" + ex4.Message); } return result; } public string MyCanShu_1_HuaFenDangJi(List _listTGanTaData, int _indexT, XianLuData _xianLuData, bool _firstTry = false) { string result = "OK"; try { int mDYDJ_XianLu = _xianLuData.mDYDJ_XianLu; string mJLZL_XianLu = _xianLuData.mJLZL_XianLu; int num = 0; double num2 = 0.0; double num3 = 0.0; num = ((_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("guxing") >= 0) ? 2 : ((_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("sihuita") < 0) ? 1 : 4)); if (mJLZL_XianLu.Equals("直流")) { switch (mDYDJ_XianLu) { case 500: num2 = 6000.0; num3 = 50.0; break; case 800: num2 = 8500.0; num3 = 77.0; break; default: num2 = 9000.0; num3 = 90.0; break; } } if (mJLZL_XianLu.Equals("交流")) { switch (mDYDJ_XianLu) { case 35: num2 = 450.0; num3 = num switch { 2 => 23, 1 => 16, _ => 40, }; break; case 66: num2 = 850.0; num3 = num switch { 2 => 25, 1 => 18, _ => 42, }; break; case 110: num2 = 1314.0; num3 = num switch { 2 => 28, 1 => 20, _ => 44, }; break; case 220: num2 = 2265.0; num3 = num switch { 2 => 45, 1 => 33, _ => 50, }; break; case 330: num2 = 3155.0; num3 = num switch { 2 => 46, 1 => 35, _ => 52, }; break; case 500: num2 = 4575.0; num3 = num switch { 2 => 67, 1 => 39, _ => 80, }; break; case 750: num2 = 6745.0; num3 = num switch { 2 => 124, 1 => 55, _ => 130, }; break; default: num2 = 9000.0; num3 = num switch { 2 => 130, 1 => 60, _ => 140, }; break; } } CanShuFenJi canShuFenJi = null; int num4 = -1; if (desktop.mAll_CanShuFenJi.MyContains(_listTGanTaData[_indexT].m_ID_CanShuFenJi)) { num4 = desktop.mAll_CanShuFenJi.MyFind(_listTGanTaData[_indexT].m_ID_CanShuFenJi); } canShuFenJi = ((num4 >= 0) ? desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num4] : new CanShuFenJi()); if (_listTGanTaData[_indexT].mJYZCD_GanTa <= num2) { canShuFenJi.mFenJi_JYZCD = 1; } else if (_listTGanTaData[_indexT].mJYZCD_GanTa <= 1.1 * num2) { canShuFenJi.mFenJi_JYZCD = 2; } else if (_listTGanTaData[_indexT].mJYZCD_GanTa <= 1.2 * num2) { canShuFenJi.mFenJi_JYZCD = 3; } else if (_listTGanTaData[_indexT].mJYZCD_GanTa <= 1.3 * num2) { canShuFenJi.mFenJi_JYZCD = 4; } else if (_listTGanTaData[_indexT].mJYZCD_GanTa > 1.3 * num2) { canShuFenJi.mFenJi_JYZCD = 5; } if (_listTGanTaData[_indexT].mJDDZ_GanTa > 20.0) { canShuFenJi.mFenJi_JDDZ = 1; } else if (_listTGanTaData[_indexT].mJDDZ_GanTa > 15.0) { canShuFenJi.mFenJi_JDDZ = 2; } else if (_listTGanTaData[_indexT].mJDDZ_GanTa > 10.0) { canShuFenJi.mFenJi_JDDZ = 3; } else if (_listTGanTaData[_indexT].mJDDZ_GanTa > 5.0) { canShuFenJi.mFenJi_JDDZ = 4; } else if (_listTGanTaData[_indexT].mJDDZ_GanTa <= 5.0) { canShuFenJi.mFenJi_JDDZ = 5; } if (_listTGanTaData[_indexT].mHuGao_GanTa > 1.3 * num3) { canShuFenJi.mFJ_HuGao = 1; } else if (_listTGanTaData[_indexT].mHuGao_GanTa > 1.2 * num3) { canShuFenJi.mFJ_HuGao = 2; } else if (_listTGanTaData[_indexT].mHuGao_GanTa > 1.1 * num3) { canShuFenJi.mFJ_HuGao = 3; } else if (_listTGanTaData[_indexT].mHuGao_GanTa > num3) { canShuFenJi.mFJ_HuGao = 4; } else if (_listTGanTaData[_indexT].mHuGao_GanTa <= num3) { canShuFenJi.mFJ_HuGao = 5; } if (_listTGanTaData[_indexT].mBLXGD_GanTa > 1.3 * num3) { canShuFenJi.mFJ_BLXGD = 1; } else if (_listTGanTaData[_indexT].mBLXGD_GanTa > 1.2 * num3) { canShuFenJi.mFJ_BLXGD = 2; } else if (_listTGanTaData[_indexT].mBLXGD_GanTa > 1.1 * num3) { canShuFenJi.mFJ_BLXGD = 3; } else if (_listTGanTaData[_indexT].mBLXGD_GanTa > num3) { canShuFenJi.mFJ_BLXGD = 4; } else if (_listTGanTaData[_indexT].mBLXGD_GanTa <= num3) { canShuFenJi.mFJ_BLXGD = 5; } double num5 = _listTGanTaData[_indexT].mDMQJ1_GanTa; if (num5 < _listTGanTaData[_indexT].mDMQJ2_GanTa) { num5 = _listTGanTaData[_indexT].mDMQJ2_GanTa; } if (num5 > 15.0) { canShuFenJi.mFJ_DMQJ = 1; } else if (num5 > 10.0) { canShuFenJi.mFJ_DMQJ = 2; } else if (num5 > 5.0) { canShuFenJi.mFJ_DMQJ = 3; } else if (num5 > 0.0) { canShuFenJi.mFJ_DMQJ = 4; } else if (num5 <= 0.0) { canShuFenJi.mFJ_DMQJ = 5; } if (_listTGanTaData[_indexT].m_BaoHuJiao > 5.0) { canShuFenJi.mFJ_BaoHuJiao = 1; } else if (_listTGanTaData[_indexT].m_BaoHuJiao > 0.0) { canShuFenJi.mFJ_BaoHuJiao = 2; } else if (_listTGanTaData[_indexT].m_BaoHuJiao > -5.0) { canShuFenJi.mFJ_BaoHuJiao = 3; } else if (_listTGanTaData[_indexT].m_BaoHuJiao > -10.0) { canShuFenJi.mFJ_BaoHuJiao = 4; } else if (_listTGanTaData[_indexT].m_BaoHuJiao <= -10.0) { canShuFenJi.mFJ_BaoHuJiao = 5; } if (_firstTry) { canShuFenJi.mState_TuiJian = 0; canShuFenJi.mNew_JYZCD = (canShuFenJi.mOld_JYZCD = _listTGanTaData[_indexT].mJYZCD_GanTa); canShuFenJi.mNew_JDDZ = (canShuFenJi.mOld_JDDZ = _listTGanTaData[_indexT].mJDDZ_GanTa); canShuFenJi.mNew_BaoHuJiao = (canShuFenJi.mOld_BaoHuJiao = _listTGanTaData[_indexT].m_BaoHuJiao); canShuFenJi.mBLQ_need = false; _listTGanTaData[_indexT].m_CuoShiTuiJian_GanTa = "不需要安装避雷器"; canShuFenJi.mNew_HuGao = (canShuFenJi.mOld_HuGao = _listTGanTaData[_indexT].mHuGao_GanTa); canShuFenJi.mNew_BLXGD = (canShuFenJi.mOld_BLXGD = _listTGanTaData[_indexT].mBLXGD_GanTa); canShuFenJi.mNew_DMQJ = (canShuFenJi.mOld_DMQJ = num5); canShuFenJi.mSTD_JYZ_mm = num2; canShuFenJi.mSTD_height_m = num3; } desktop.mAll_CanShuFenJi.MyAdd1CanShuFenJi(canShuFenJi); _listTGanTaData[_indexT].m_ID_CanShuFenJi = canShuFenJi.mID_CanShuFenJi; } catch (Exception ex) { MyLog.AddLog("MyFunction.cs MyCanShu_1_HuaFenDangJi() Exception=" + ex.Message + "."); result = "MyCanShu_1_HuaFenDangJi() ex=" + ex.Message; } return result; } private int MyCanShu_2_TuiJianCuoShi(List _listTGanTaData, int _indexT) { int num = 0; try { int num2 = -1; if (_listTGanTaData[_indexT].mFXDJ_GanTa <= 2) { return num; } CanShuFenJi canShuFenJi = null; for (int i = 0; i < desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all.Count; i++) { if (desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[i].mID_CanShuFenJi == _listTGanTaData[_indexT].m_ID_CanShuFenJi) { num2 = i; canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num2]; canShuFenJi.mCallDLL = true; break; } } if (num2 < 0) { num = -1; return num; } int num3 = 35; num3 = ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("35") >= 0) ? 35 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("66") >= 0) ? 66 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("110") >= 0) ? 110 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("220") >= 0) ? 220 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("330") >= 0) ? 330 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("500") >= 0) ? 500 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("750") >= 0) ? 750 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("800") >= 0) ? 800 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("1000") < 0) ? 35 : 1000))))))))); double num4 = 0.0; try { num4 = _listTGanTaData[_indexT].mRJ_TZL_GanTa / _listTGanTaData[_indexT].mFJ_TZL_GanTa; } catch (Exception) { num4 = -1.0; } switch (canShuFenJi.mState_TuiJian) { case 0: if (canShuFenJi.mFenJi_JYZCD <= 2 || canShuFenJi.mFenJi_JDDZ <= 2) { if (canShuFenJi.mFenJi_JYZCD <= 2) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 97.33333333333333, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.1 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 2) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 14.0); } canShuFenJi.mState_TuiJian = 1; } else if (canShuFenJi.mFenJi_JYZCD >= 3 && canShuFenJi.mFenJi_JDDZ >= 3) { if (canShuFenJi.mFenJi_JYZCD <= 4) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 292.0, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.3 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 4) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 3.0); } canShuFenJi.mState_TuiJian = 4; } if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 1: if (num4 > 1.2) { if (canShuFenJi.mFenJi_JYZCD <= 3) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 194.66666666666666, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.2 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } canShuFenJi.mState_TuiJian = 2; } else if (num4 <= 1.2) { if (canShuFenJi.mFenJi_JYZCD <= 3) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 194.66666666666666, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.2 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 3) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 5.0); } canShuFenJi.mState_TuiJian = 3; } if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 2: if (canShuFenJi.mFenJi_JYZCD <= 4) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 292.0, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.3 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } canShuFenJi.mState_TuiJian = 4; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 201: if (canShuFenJi.mFenJi_JDDZ <= 4) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 3.0); } canShuFenJi.mState_TuiJian = 4; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 3: if (canShuFenJi.mFenJi_JYZCD <= 4) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 292.0, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.3 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 4) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 3.0); } canShuFenJi.mState_TuiJian = 4; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 4: canShuFenJi.mBLQ_need = true; _listTGanTaData[_indexT].m_CuoShiTuiJian_GanTa = "需要安装避雷器"; canShuFenJi.mState_TuiJian = 5; break; } } catch (Exception ex2) { MyLog.AddLog("MyFunction.cs MyCanShu_2_TuiJianCuoShi() Exception=" + ex2.Message + "."); } return num; } private int MyCanShu_3_TuiJianCuoShi_FeiJianXian(List _listTGanTaData, int _indexT) { int num = 0; try { int num2 = -1; if (_listTGanTaData[_indexT].mFXDJ_GanTa <= 2) { return num; } CanShuFenJi canShuFenJi = null; for (int i = 0; i < desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all.Count; i++) { if (desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[i].mID_CanShuFenJi == _listTGanTaData[_indexT].m_ID_CanShuFenJi) { num2 = i; canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num2]; canShuFenJi.mCallDLL = true; break; } } if (num2 < 0) { num = -1; return num; } int num3 = 35; num3 = ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("35") >= 0) ? 35 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("66") >= 0) ? 66 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("110") >= 0) ? 110 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("220") >= 0) ? 220 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("330") >= 0) ? 330 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("500") >= 0) ? 500 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("750") >= 0) ? 750 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("800") >= 0) ? 800 : ((_listTGanTaData[_indexT].mTaXing_GanTa.IndexOf("1000") < 0) ? 35 : 1000))))))))); double num4 = 0.0; double num5 = 0.0; double num6 = 0.0; double num7 = 0.0; double num8 = 0.0; try { num8 = _listTGanTaData[_indexT].mRJ_TZL_GanTa / _listTGanTaData[_indexT].mFJ_TZL_GanTa; } catch (Exception) { num8 = -1.0; } switch (canShuFenJi.mState_TuiJian) { case 0: if (canShuFenJi.mFenJi_JYZCD <= 2 || canShuFenJi.mFenJi_JDDZ <= 2) { if (canShuFenJi.mFenJi_JYZCD <= 2) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 97.33333333333333, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.1 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 2) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 14.0); } canShuFenJi.mState_TuiJian = 1; } else if (canShuFenJi.mFenJi_JYZCD >= 3 && canShuFenJi.mFenJi_JDDZ >= 3) { if (canShuFenJi.mFenJi_JYZCD <= 4) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 292.0, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.3 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 4) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 3.0); } canShuFenJi.mState_TuiJian = 4; } if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 1: if (num8 > 1.2) { if (canShuFenJi.mFenJi_JYZCD <= 3) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 194.66666666666666, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.2 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } canShuFenJi.mState_TuiJian = 2; } else if (num8 <= 1.2) { if (canShuFenJi.mFenJi_JYZCD <= 3) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 194.66666666666666, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.2 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 3) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 5.0); } canShuFenJi.mState_TuiJian = 3; } if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 2: if (canShuFenJi.mFenJi_JYZCD <= 4) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 292.0, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.3 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } canShuFenJi.mState_TuiJian = 4; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 201: if (canShuFenJi.mFenJi_JDDZ <= 4) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 3.0); } canShuFenJi.mState_TuiJian = 4; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 3: if (canShuFenJi.mFenJi_JYZCD <= 4) { num++; if (num3 == 110 || num3 == 500) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(canShuFenJi.mOld_JYZCD + 292.0, 2)); } else { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = Math.Round(1.3 * canShuFenJi.mSTD_JYZ_mm + 0.005, 2)); } } if (canShuFenJi.mFenJi_JDDZ <= 4) { num++; canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = 3.0); } canShuFenJi.mState_TuiJian = 4; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 4: canShuFenJi.mNew_JYZCD_Step1 = canShuFenJi.mNew_JYZCD; canShuFenJi.mNew_JDDZ_Step1 = canShuFenJi.mNew_JDDZ; if (canShuFenJi.mFJ_BaoHuJiao >= 5) { if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("jiubei") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("maotou") >= 0) { num++; canShuFenJi.mNew_BaoHuJiao = -10.0; } else if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("ganzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("guxing") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("shangzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("zhiliu") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("dc") || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("nz") || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("ky")) { num++; canShuFenJi.mNew_BaoHuJiao = -18.0; } else { num++; canShuFenJi.mNew_BaoHuJiao = -10.0; } } else if (canShuFenJi.mFJ_BaoHuJiao == 4) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = canShuFenJi.mOld_JYZCD); canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = canShuFenJi.mOld_JDDZ); if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("jiubei") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("maotou") >= 0) { num++; canShuFenJi.mNew_BaoHuJiao = -10.0; } else if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("ganzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("guxing") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("shangzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("zhiliu") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("dc") || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("nz") || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("ky")) { num++; canShuFenJi.mNew_BaoHuJiao = -18.0; } else { num++; canShuFenJi.mNew_BaoHuJiao = -10.0; } } else if (canShuFenJi.mFJ_BaoHuJiao <= 3) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = canShuFenJi.mOld_JYZCD); canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = canShuFenJi.mOld_JDDZ); num++; canShuFenJi.mNew_BaoHuJiao = -5.0; } num4 = canShuFenJi.mNew_BaoHuJiao; num7 = (_listTGanTaData[_indexT].mZXNZ_GanTa.Equals("直线") ? 0.0 : ((!_listTGanTaData[_indexT].mZXNZ_GanTa.Equals("耐张")) ? 0.0 : (_listTGanTaData[_indexT].mJYZCD_GanTa / 1000.0))); if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("guxing") >= 0) { num5 = -100.0; num6 = _listTGanTaData[_indexT].m1ZJ_Shang_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Shang_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } num6 = _listTGanTaData[_indexT].m1ZJ_Zhong_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Zhong_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } num6 = _listTGanTaData[_indexT].m1ZJ_Xia_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Xia_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } else { num5 = -100.0; num6 = _listTGanTaData[_indexT].m1ZJ_Shang_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Shang_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("jiubei") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("maotou") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("ganzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("shangzi") >= 0) { num6 = _listTGanTaData[_indexT].m1ZJ_Zhong_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Zhong_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } num6 = _listTGanTaData[_indexT].m1ZJ_Xia_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Xia_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } _listTGanTaData[_indexT].mBLZJ_R_GanTa = (_listTGanTaData[_indexT].mBLZJ_L_GanTa = Math.Round(num5, 3)); if (canShuFenJi.mFJ_BaoHuJiao >= 5) { canShuFenJi.mState_TuiJian = 7; } else if (canShuFenJi.mFJ_BaoHuJiao == 4) { canShuFenJi.mState_TuiJian = 6; } else if (canShuFenJi.mFJ_BaoHuJiao <= 3) { canShuFenJi.mState_TuiJian = 5; } if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 5: if (canShuFenJi.mFJ_BaoHuJiao >= 4) { canShuFenJi.mNew_JYZCD = (_listTGanTaData[_indexT].mJYZCD_GanTa = canShuFenJi.mOld_JYZCD); canShuFenJi.mNew_JDDZ = (_listTGanTaData[_indexT].mJDDZ_GanTa = canShuFenJi.mOld_JDDZ); if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("jiubei") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("maotou") >= 0) { num++; canShuFenJi.mNew_BaoHuJiao = -10.0; } else if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("ganzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("guxing") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("shangzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("zhiliu") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("dc") || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("nz") || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().StartsWith("ky")) { num++; canShuFenJi.mNew_BaoHuJiao = -18.0; } else { num++; canShuFenJi.mNew_BaoHuJiao = -10.0; } } num4 = canShuFenJi.mNew_BaoHuJiao; num7 = (_listTGanTaData[_indexT].mZXNZ_GanTa.Equals("直线") ? 0.0 : ((!_listTGanTaData[_indexT].mZXNZ_GanTa.Equals("耐张")) ? 0.0 : (_listTGanTaData[_indexT].mJYZCD_GanTa / 1000.0))); if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("guxing") >= 0) { num5 = -100.0; num6 = _listTGanTaData[_indexT].m1ZJ_Shang_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Shang_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } num6 = _listTGanTaData[_indexT].m1ZJ_Zhong_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Zhong_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } num6 = _listTGanTaData[_indexT].m1ZJ_Xia_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Xia_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } else { num5 = -100.0; num6 = _listTGanTaData[_indexT].m1ZJ_Shang_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Shang_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("jiubei") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("maotou") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("ganzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("shangzi") >= 0) { num6 = _listTGanTaData[_indexT].m1ZJ_Zhong_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Zhong_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } num6 = _listTGanTaData[_indexT].m1ZJ_Xia_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Xia_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } _listTGanTaData[_indexT].mBLZJ_R_GanTa = (_listTGanTaData[_indexT].mBLZJ_L_GanTa = Math.Round(num5, 3)); canShuFenJi.mState_TuiJian = 6; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 6: num++; _listTGanTaData[_indexT].mJYZCD_GanTa = (canShuFenJi.mNew_JYZCD = canShuFenJi.mNew_JYZCD_Step1); _listTGanTaData[_indexT].mJDDZ_GanTa = (canShuFenJi.mNew_JDDZ = canShuFenJi.mNew_JDDZ_Step1); num4 = canShuFenJi.mNew_BaoHuJiao; num7 = 0.0; num7 = (_listTGanTaData[_indexT].mZXNZ_GanTa.Equals("直线") ? 0.0 : ((!_listTGanTaData[_indexT].mZXNZ_GanTa.Equals("耐张")) ? 0.0 : (_listTGanTaData[_indexT].mJYZCD_GanTa / 1000.0))); if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("guxing") >= 0) { num5 = -100.0; num6 = _listTGanTaData[_indexT].m1ZJ_Shang_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Shang_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } num6 = _listTGanTaData[_indexT].m1ZJ_Zhong_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Zhong_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } num6 = _listTGanTaData[_indexT].m1ZJ_Xia_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Xia_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } else { num5 = -100.0; num6 = _listTGanTaData[_indexT].m1ZJ_Shang_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Shang_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } if (_listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("jiubei") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("maotou") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("ganzi") >= 0 || _listTGanTaData[_indexT].mTaXing_GanTa.ToLower().IndexOf("shangzi") >= 0) { num6 = _listTGanTaData[_indexT].m1ZJ_Zhong_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Zhong_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } num6 = _listTGanTaData[_indexT].m1ZJ_Xia_GanTa - (_listTGanTaData[_indexT].mBLXGD_GanTa - _listTGanTaData[_indexT].m1GD_Xia_GanTa + num7) * Math.Tan(num4 * Math.PI / 180.0); if (num5 < num6) { num5 = num6; } } _listTGanTaData[_indexT].mBLZJ_R_GanTa = (_listTGanTaData[_indexT].mBLZJ_L_GanTa = Math.Round(num5, 3)); canShuFenJi.mState_TuiJian = 7; if (num == 0) { num++; canShuFenJi.mCallDLL = false; } break; case 7: canShuFenJi.mBLQ_need = true; _listTGanTaData[_indexT].m_CuoShiTuiJian_GanTa = "需要安装避雷器"; canShuFenJi.mState_TuiJian = 8; break; } } catch (Exception ex2) { MyLog.AddLog("MyFunction.cs MyCanShu_3_TuiJianCuoShi_FeiJianXian() Exception=" + ex2.Message + "."); } return num; } public string MyStart_Finished4_GaiZaoJiSuan(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData) { string result = "OK"; _listTaskDetail[_indexDetail].mTaskData.Finished4_GaiZaoJiSuan = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; return result; } public string MyStart_Finished5_Report(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData) { string text = "OK"; if (desktop.mReport == null) { desktop.mReport = new MyReport(); } desktop.mReport.mIndex_List_XL_GT = _indexXianLu; int num = -1; num = _listTaskDetail[_indexDetail].mTaskData.mID_ExTask; int num2 = 0; bool flag = false; for (num2 = 0; num2 < _listTaskDetail.Count; num2++) { if (_listTaskDetail[num2].mTaskID_Detail == num) { desktop.mReport.mIndex_ListDetail = num2; flag = true; break; } } if (!flag) { text = $"没有匹配的父任务 ={num}"; MyLog.AddLog("MyFunction.cs MyStart_Finished5_Report() " + text); return text; } text = desktop.mReport.MyBuild_JiShuanShu(); if (!text.Equals("OK")) { MyLog.AddLog("MyFunction.cs MyStart_Finished5_Report() " + text); } return text; } public string MyStart_Finished6_AnZhuangBLQ(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData) { string result = "OK"; try { int num = 0; int num2 = 0; int num3 = 0; int num4 = 0; int num5 = 0; int num6 = 0; if (_indexDetail < 0 || _indexDetail >= _listTaskDetail.Count) { result = $"MyStart_Finished6_AnZhuangBLQ()参数1 细胞下标越界_indexDetail={_indexDetail} 合法区间[0,{_listTaskDetail.Count - 1}]"; return result; } if (_indexXianLu < 0 || _indexXianLu >= _listXianLuData.Count) { result = $"MyStart_Finished6_AnZhuangBLQ()参数3 线路下标越界_indexXianLu={_indexXianLu} 合法区间[0,{_listXianLuData.Count - 1}]"; return result; } TaskGroup taskGroup = null; taskGroup = _listTaskDetail[_indexDetail].mTaskGroup; if (taskGroup == null || taskGroup.mListExTaskData.Count == 0) { result = "MyStart_Finished1_PuTongJiSuan() 任务组mTaskGroup为空 缺少有效任务数据!]"; return result; } for (int i = 0; i < taskGroup.mListExTaskData.Count; i++) { if (taskGroup.mListExTaskData[i].mID_Task == _listTaskDetail[_indexDetail].mTaskID_Detail && taskGroup.mListExTaskData[i].mTGanTas != null && taskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData != null) { num += taskGroup.mListExTaskData[i].mTGanTas.mListTGanTaData.Count; } } num2 = 0; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); Method method = new Method(); TGanTaData tGanTaData = null; string text = Application.StartupPath + "\\" + desktop.mSubPath_ATP_Setting; string text2 = ""; string text3 = ""; string text4 = ""; string[] separator = new string[3] { "|", "\r", "\n" }; string[] array = null; bool flag = false; double num7 = 0.0; int num8 = 0; double num9 = 0.0; string text5 = ""; int num10 = 0; int num11 = 0; string path = text + "\\TaskOption.txt"; string path2 = text + "\\ResultTips.txt"; string text6 = ""; string[] array2 = null; int num12 = 0; using (FileStream fileStream = new FileStream(path, FileMode.Create, FileAccess.Write, FileShare.None)) { using (StreamWriter streamWriter = new StreamWriter(fileStream, Encoding.UTF8)) { streamWriter.WriteLine("反击-耐雷水平-下标:0-规程 1-ATP"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_NaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绕击-耐雷水平-下标:0-规程 1-ATP"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_NaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("反击-跳闸率-下标:0-无 1-规程"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_TZL}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绕击-跳闸率-下标:0-无 1-规程 2-EGM"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_TZL}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("海拔修正公式-下标: 0-无 1-推荐公式1 2-推荐公式2"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("感应电压公式-下标:0-公式1 1-公式2"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_GanYingDianYaGongShi}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("雷电流波形:1--Heidler(INPhei),2--双斜角(INPslo),3--双指数(INPsur)"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_CurrentCurve}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("绝缘子闪络判据-下标:0-规程法、1-相交法、2-先导发展法"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_ShanLuoPanJu}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.WriteLine("耐雷水平选项:0-单相耐雷水平 1-多相耐雷水平"); streamWriter.WriteLine(""); streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_DuoXiangNaiLeiShuiPing}"); streamWriter.WriteLine(""); streamWriter.WriteLine(""); streamWriter.Close(); } fileStream.Close(); } num4 = (num5 = 0); List list = null; for (int j = 0; j < taskGroup.mListExTaskData.Count; j++) { if (taskGroup.mListExTaskData[j].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[j].mTGanTas == null || taskGroup.mListExTaskData[j].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[j].mTGanTas.mListTGanTaData; for (int k = 0; k < list.Count; k++) { if (list[k] == null || list[k].mFXDJ_GanTa <= 2) { continue; } for (int l = 0; l < desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData.Count; l++) { if (!(desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mID_GanTa == list[k].mID_GanTa)) { continue; } list[k].mJDDZ_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mJDDZ_GanTa; list[k].mJYZCD_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mJYZCD_GanTa; list[k].mBLZJ_L_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mBLZJ_L_GanTa; list[k].mBLZJ_R_GanTa = desktop.mXL.mListGanTas[_indexXianLu].mListGanTaData[l].mBLZJ_R_GanTa; if (_listTaskDetail[_indexDetail].mTaskData.mTypeCode_Task == 602) { double num13 = 0.0; num13 = list[k].mBLZJ_L_GanTa; if (num13 < list[k].mBLZJ_R_GanTa) { num13 = list[k].mBLZJ_R_GanTa; } list[k].mBLZJ_R_GanTa = (list[k].mBLZJ_L_GanTa = num13); } break; } num4++; text3 = MyCanShu_1_HuaFenDangJi(list, k, _listXianLuData[_indexXianLu], _firstTry: true); if (!text3.Equals("OK")) { result = $"MyStart_Finished6_AnZhuangBLQ()参数1 细胞下标_indexDetail={_indexDetail}\r\n" + $" mTask.mListDetails[{_indexDetail}].mTaskGroup.mListExTaskData[{j}].mTGanTas.mListTGanTaData[{k}]\r\n" + " " + text3; return result; } } } num6 = 0; int num14 = -1; CanShuFenJi canShuFenJi = null; for (num3 = 1; num3 > 0; num3++) { num = 0; for (int m = 0; m < taskGroup.mListExTaskData.Count; m++) { if (taskGroup.mListExTaskData[m].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[m].mTGanTas == null || taskGroup.mListExTaskData[m].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[m].mTGanTas.mListTGanTaData; for (int n = 0; n < list.Count; n++) { if (list[n] != null && list[n].mFXDJ_GanTa > 2) { text3 = MyCanShu_1_HuaFenDangJi(list, n, _listXianLuData[_indexXianLu]); if (!text3.Equals("OK")) { result = $"MyStart_Finished6_AnZhuangBLQ()参数1 细胞下标_indexDetail={_indexDetail} turn={num3} \r\n" + $" mTask.mListDetails[{_indexDetail}].mTaskGroup.mListExTaskData[{m}].mTGanTas.mListTGanTaData[{n}]\r\n" + " " + text3; return result; } num++; } } } if (num == 0) { break; } num11 = 0; if (num3 > 1) { for (int num15 = 0; num15 < taskGroup.mListExTaskData.Count; num15++) { if (taskGroup.mListExTaskData[num15].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[num15].mTGanTas == null || taskGroup.mListExTaskData[num15].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[num15].mTGanTas.mListTGanTaData; for (int num16 = 0; num16 < list.Count; num16++) { if (list[num16] != null && list[num16].mFXDJ_GanTa > 2) { num10 = MyCanShu_2_TuiJianCuoShi(list, num16); if (num10 < 0) { text4 = $"MyStart_Finished6_AnZhuangBLQ()参数1 细胞下标_indexDetail={_indexDetail} turn={num3} \r\n" + $" mTask.mListDetails[{_indexDetail}].mTaskGroup.mListExTaskData[{num15}].mTGanTas.mListTGanTaData[{num16}]\r\n"; MyLog.AddLog(text4); num10 = 0; } num11 += num10; num6 += num10; } } } if (num11 == 0) { break; } } else if (num3 == 1) { for (int num17 = 0; num17 < taskGroup.mListExTaskData.Count; num17++) { if (taskGroup.mListExTaskData[num17].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[num17].mTGanTas == null || taskGroup.mListExTaskData[num17].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[num17].mTGanTas.mListTGanTaData; for (int num18 = 0; num18 < list.Count; num18++) { if (list[num18] != null) { num10 = 1; num11 += num10; num6 += num10; } } } } num2 = 0; for (int num19 = 0; num19 < taskGroup.mListExTaskData.Count; num19++) { if (taskGroup.mListExTaskData[num19].mID_Task != _listTaskDetail[_indexDetail].mTaskID_Detail || taskGroup.mListExTaskData[num19].mTGanTas == null || taskGroup.mListExTaskData[num19].mTGanTas.mListTGanTaData == null) { continue; } list = taskGroup.mListExTaskData[num19].mTGanTas.mListTGanTaData; for (int num20 = 0; num20 < list.Count; num20++) { if (num3 > 1 && list[num20].mFXDJ_GanTa <= 2) { continue; } tGanTaData = list[num20]; text2 = ""; num7 = tGanTaData.mJYZCD_GanTa; num7 = MyJYZCD_by_HaiBa(_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi, tGanTaData.mJYZCD_GanTa, tGanTaData.mHaiBa_GanTa); switch (tGanTaData.mTaXing_GanTa) { case "d35maotou": case "d66maotou": case "d110maotou": case "d220maotou": case "d330maotou": case "d500maotou": case "d1000maotou": case "d35jiubei": case "d66jiubei": case "d110jiubei": case "d220jiubei": case "d330jiubei": case "d500jiubei": case "d750jiubei": case "d1000jiubei": case "d35ganzi": case "d66ganzi": case "d110ganzi": case "d220ganzi": case "d330ganzi": case "d500ganzi": case "d750ganzi": case "d1000ganzi": case "d35shangzi": case "d66shangzi": case "d110shangzi": case "d220shangzi": case "d330shangzi": case "d500shangzi": case "d110menxing": case "d220menxing": case "d500menxing": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "s66guxingd": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "s35guxing": case "s66guxing": case "s110guxing": case "s220guxing": case "s330guxing": case "s500guxing": case "s750guxing": case "s1000guxing": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mXiangXu2_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m2ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m2ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m2ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "s35sihuita": case "s110sihuita": case "s220sihuita": case "s500sihuita": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mXiangXu1_GanTa + "|" + tGanTaData.mXiangXu2_GanTa + "|" + tGanTaData.mXiangXu3_GanTa + "|" + tGanTaData.mXiangXu4_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_B_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Zhong_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Zhong_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.m2ZJ_Shang_GanTa}|{tGanTaData.m2ZJ_Zhong_GanTa}|{tGanTaData.m2ZJ_Xia_GanTa}|{tGanTaData.m2GD_Shang_GanTa}|{tGanTaData.m2GD_Zhong_GanTa}|{tGanTaData.m2GD_Xia_GanTa}"; text2 += $"|{tGanTaData.m3ZJ_Shang_GanTa}|{tGanTaData.m3ZJ_Zhong_GanTa}|{tGanTaData.m3ZJ_Xia_GanTa}|{tGanTaData.m3GD_Shang_GanTa}|{tGanTaData.m3GD_Zhong_GanTa}|{tGanTaData.m3GD_Xia_GanTa}"; text2 += $"|{tGanTaData.m4ZJ_Shang_GanTa}|{tGanTaData.m4ZJ_Zhong_GanTa}|{tGanTaData.m4ZJ_Xia_GanTa}|{tGanTaData.m4GD_Shang_GanTa}|{tGanTaData.m4GD_Zhong_GanTa}|{tGanTaData.m4GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mAngle_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; text2 += $"|{tGanTaData.mCurrentType_GanTa}|{tGanTaData.mCurrentHeadTime_GanTa}|{tGanTaData.mCurrentTailTime_GanTa}"; break; case "zhiliu500": case "zhiliu800": case "vzhiliu500": case "vzhiliu800": text2 = text2 + tGanTaData.mTaXing_GanTa + "|" + tGanTaData.mBLQ_A_GanTa + "|" + tGanTaData.mBLQ_C_GanTa; text2 += $"|{tGanTaData.mJDDZ_GanTa}|{tGanTaData.mBLZJ_L_GanTa}|{tGanTaData.mBLZJ_R_GanTa}|{tGanTaData.mBLXGD_GanTa}|{num7}|{tGanTaData.mHuGao_GanTa}"; text2 += $"|{tGanTaData.m1ZJ_Shang_GanTa}|{tGanTaData.m1ZJ_Xia_GanTa}|{tGanTaData.m1GD_Shang_GanTa}|{tGanTaData.m1GD_Xia_GanTa}"; text2 += $"|{tGanTaData.mXiaoHao_GanTa}|{tGanTaData.mDaHao_GanTa}|{tGanTaData.mCurrent_a_GanTa}|{tGanTaData.mCurrent_b_GanTa}"; text2 += $"|{tGanTaData.mDMQJ1_GanTa}|{tGanTaData.mDMQJ2_GanTa}|{tGanTaData.mDSMD_GanTa}|{tGanTaData.mZXNZ_GanTa}|{tGanTaData.mRaoJiFanJi_GanTa}"; break; } num14 = -1; canShuFenJi = null; if (num3 > 1) { num14 = desktop.mAll_CanShuFenJi.MyFind(tGanTaData.m_ID_CanShuFenJi); if (num14 >= 0) { canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num14]; if (!canShuFenJi.mCallDLL) { num2++; desktop.MySetFormTitle(desktop, $"第{num3}轮 {num2}/{num} "); num5++; continue; } } } text3 = method.AllCall_CS(101, "GBK", text, text2); flag = false; array = text3.Split(separator, StringSplitOptions.RemoveEmptyEntries); if (File.Exists(path2)) { Encoding[] array3 = new Encoding[6] { Encoding.UTF8, Encoding.Default, Encoding.ASCII, Encoding.Unicode, Encoding.UTF7, Encoding.UTF32 }; int num21 = 0; bool flag2 = false; string text7 = ""; for (int num22 = 0; num22 < array3.Length; num22++) { try { using FileStream fileStream2 = new FileStream(path2, FileMode.Open, FileAccess.Read, FileShare.None); using (StreamReader streamReader = new StreamReader(fileStream2, array3[num22])) { text7 = streamReader.ReadToEnd(); if (text7.IndexOf("耐雷水平") >= 0 || text7.IndexOf("跳闸率") >= 0 || text7.IndexOf("风险等级") >= 0) { num21 = num22; flag2 = true; } streamReader.Close(); } fileStream2.Close(); } catch (Exception) { } if (flag2) { break; } } using (FileStream fileStream3 = new FileStream(path2, FileMode.Open, FileAccess.Read, FileShare.None)) { using (StreamReader streamReader2 = new StreamReader(fileStream3, array3[num21])) { text6 = streamReader2.ReadToEnd().Trim(); streamReader2.Close(); } fileStream3.Close(); } if (string.IsNullOrEmpty(text6)) { tGanTaData.m_Result_PuTongJiSuan_GanTa = text3; desktop.MySetFormTitle(desktop, $" {num2}/{num}"); tGanTaData = null; text2 = ""; continue; } num12 = 0; array2 = text6.Split(separator, StringSplitOptions.RemoveEmptyEntries); for (int num23 = 0; num23 < array2.Length; num23++) { if (num23 == 0) { tGanTaData.mFJ_NLSP_GanTa = (tGanTaData.mFJ_TZL_GanTa = 0.0); tGanTaData.mRJ_NLSP_GanTa = (tGanTaData.mRJ_TZL_GanTa = 0.0); tGanTaData.mFXDJ_GanTa = 0; tGanTaData.mMA_RJ_NLSP_GanTa = (tGanTaData.mMB_RJ_NLSP_GanTa = (tGanTaData.mMC_RJ_NLSP_GanTa = 0.0)); tGanTaData.mM1_NLSP_GanTa = (tGanTaData.mM2_NLSP_GanTa = (tGanTaData.mM3_NLSP_GanTa = 0.0)); tGanTaData.mM1_Xiang_GanTa = (tGanTaData.mM2_Xiang_GanTa = (tGanTaData.mM3_Xiang_GanTa = "-")); tGanTaData.mM1_TZL_GanTa = (tGanTaData.mM2_TZL_GanTa = (tGanTaData.mM3_TZL_GanTa = 0.0)); tGanTaData.mM4_NLSP_GanTa = (tGanTaData.mM5_NLSP_GanTa = (tGanTaData.mM6_NLSP_GanTa = 0.0)); tGanTaData.mM4_Xiang_GanTa = (tGanTaData.mM5_Xiang_GanTa = (tGanTaData.mM6_Xiang_GanTa = "-")); tGanTaData.mM4_TZL_GanTa = (tGanTaData.mM5_TZL_GanTa = (tGanTaData.mM6_TZL_GanTa = 0.0)); } if (num23 >= array.Length) { break; } try { num8 = Convert.ToInt32(array[num23].Trim()); } catch (Exception) { num8 = 0; } try { num9 = Convert.ToDouble(array[num23].Trim()); } catch (Exception) { num9 = 0.0; } text5 = array[num23].Trim(); switch (array2[num23].Trim()) { case "反击耐雷水平": tGanTaData.mFJ_NLSP_GanTa = num9; break; case "反击跳闸率": tGanTaData.mFJ_TZL_GanTa = num9; break; case "绕击耐雷水平": tGanTaData.mRJ_NLSP_GanTa = num9; break; case "绕击跳闸率": tGanTaData.mRJ_TZL_GanTa = num9; break; case "雷击风险等级": tGanTaData.mFXDJ_GanTa = num8; break; case "A相绕击耐雷水平": tGanTaData.mMA_RJ_NLSP_GanTa = num9; break; case "B相绕击耐雷水平": tGanTaData.mMB_RJ_NLSP_GanTa = num9; break; case "C相绕击耐雷水平": tGanTaData.mMC_RJ_NLSP_GanTa = num9; break; case "单相反击耐雷水平": tGanTaData.mM1_NLSP_GanTa = num9; break; case "单相闪络相": tGanTaData.mM1_Xiang_GanTa = text5; break; case "单相反击跳闸率": tGanTaData.mM1_TZL_GanTa = num9; break; case "双相反击耐雷水平": tGanTaData.mM2_NLSP_GanTa = num9; break; case "双相闪络相": tGanTaData.mM2_Xiang_GanTa = text5; break; case "双相反击跳闸率": tGanTaData.mM2_TZL_GanTa = num9; break; case "三相反击耐雷水平": tGanTaData.mM3_NLSP_GanTa = num9; break; case "三相闪络相": tGanTaData.mM3_Xiang_GanTa = text5; break; case "三相反击跳闸率": tGanTaData.mM3_TZL_GanTa = num9; break; case "四相反击耐雷水平": tGanTaData.mM4_NLSP_GanTa = num9; break; case "四相闪络相": tGanTaData.mM4_Xiang_GanTa = text5; break; case "四相反击跳闸率": tGanTaData.mM4_TZL_GanTa = num9; break; case "五相反击耐雷水平": tGanTaData.mM5_NLSP_GanTa = num9; break; case "五相闪络相": tGanTaData.mM5_Xiang_GanTa = text5; break; case "五相反击跳闸率": tGanTaData.mM5_TZL_GanTa = num9; break; case "六相反击耐雷水平": tGanTaData.mM6_NLSP_GanTa = num9; break; case "六相闪络相": tGanTaData.mM6_Xiang_GanTa = text5; break; case "六相反击跳闸率": tGanTaData.mM6_TZL_GanTa = num9; break; case "保护角": tGanTaData.m_BaoHuJiao = num9; break; default: num12--; break; } num12++; } if (num12 >= 2) { flag = true; } tGanTaData.m_Result_PuTongJiSuan_GanTa = ((!flag) ? text3 : "OK"); num2++; desktop.MySetFormTitle(desktop, $"第{num3}轮 {num2}/{num} "); num5++; text2 = ""; } if (tGanTaData.mFXDJ_GanTa <= 2) { tGanTaData.m_CuoShiTuiJian_GanTa = "达标低风险"; } num14 = -1; canShuFenJi = null; num14 = desktop.mAll_CanShuFenJi.MyFind(tGanTaData.m_ID_CanShuFenJi); if (num14 >= 0) { canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num14]; canShuFenJi.mNew_BaoHuJiao = tGanTaData.m_BaoHuJiao; if (num3 == 1) { canShuFenJi.mOld_BaoHuJiao = tGanTaData.m_BaoHuJiao; } } MyLog.AddLog($"安装避雷器计算 turn={num3} k={num19} gt={num20} mFXDJ_GanTa={tGanTaData.mFXDJ_GanTa} "); MyLog.AddLog($"mID_GanTa={tGanTaData.mID_GanTa} mJYZCD_GanTa={tGanTaData.mJYZCD_GanTa} mJDDZ_GanTa={tGanTaData.mJDDZ_GanTa} mBLZJ_L_GanTa={tGanTaData.mBLZJ_L_GanTa} mBLZJ_R_GanTa={tGanTaData.mBLZJ_R_GanTa}"); } taskGroup.mListExTaskData[num19].Finished3_CuoShiTuiJian = 1; taskGroup.mListExTaskData[num19].Complete = 1; } } MyLog.AddLog("安装避雷器计算后"); for (int num24 = 0; num24 < _listTaskDetail[_indexDetail].mTaskGroup.mListExTaskData.Count; num24++) { MyLog.AddLog($"{_listTaskDetail[_indexDetail].mTaskData.mName_Task} _indexDetail={_indexDetail} k={num24}"); for (int num25 = 0; num25 < _listTaskDetail[_indexDetail].mTaskGroup.mListExTaskData[num24].mTGanTas.mListTGanTaData.Count; num25++) { tGanTaData = _listTaskDetail[_indexDetail].mTaskGroup.mListExTaskData[num24].mTGanTas.mListTGanTaData[num25]; MyLog.AddLog($"mID_GanTa={tGanTaData.mID_GanTa} mJYZCD_GanTa={tGanTaData.mJYZCD_GanTa} mJDDZ_GanTa={tGanTaData.mJDDZ_GanTa} mBLZJ_L_GanTa={tGanTaData.mBLZJ_L_GanTa} mBLZJ_R_GanTa={tGanTaData.mBLZJ_R_GanTa}"); num14 = -1; canShuFenJi = null; num14 = desktop.mAll_CanShuFenJi.MyFind(tGanTaData.m_ID_CanShuFenJi); if (num14 >= 0) { canShuFenJi = desktop.mAll_CanShuFenJi.mList_CanShuFenJi_all[num14]; MyLog.AddLog(canShuFenJi.MyToString_simple()); } } } MyLog.AddLog($"总计{num3}轮 一共措施推荐{num6}条 杆塔{num5}塔次/涉及杆塔{num4}。"); desktop.MySetFormTitle(desktop, $"总计{num3}轮 一共措施推荐{num6}条 杆塔{num5}塔次/涉及杆塔{num4}。"); _listTaskDetail[_indexDetail].mTaskData.Finished3_CuoShiTuiJian = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; } catch (Exception ex4) { MyLog.AddLog("MyFunction.cs MyStart_Finished6_AnZhuangBLQ() ex=" + ex4.Message); } return result; } public string MyStart_mPrepare11_LightingCurrent(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData, List _listGanTas) { string result = "OK"; for (int i = 0; i < _listGanTas[_indexXianLu].mListGanTaData.Count; i++) { _listGanTas[_indexXianLu].mListGanTaData[i].mCurrent_a_GanTa = 31.0; _listGanTas[_indexXianLu].mListGanTaData[i].mCurrent_b_GanTa = 31.0; } _listTaskDetail[_indexDetail].mTaskData.mPrepare11_LightingCurrent = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; _listXianLuData[_indexXianLu].mPrepare1_LightingCurrent = 1; return result; } public string MyStart_mPrepare12_DiShanMiDu(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData, List _listGanTas) { string result = "OK"; for (int i = 0; i < _listGanTas[_indexXianLu].mListGanTaData.Count; i++) { _listGanTas[_indexXianLu].mListGanTaData[i].mDSMD_GanTa = 2.8; } _listTaskDetail[_indexDetail].mTaskData.mPrepare12_DiShanMiDu = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; _listXianLuData[_indexXianLu].mPrepare2_DiShanMiDu = 1; return result; } public string MyStart_mPrepare13_DiMianQingJiao(int _indexDetail, List _listTaskDetail, int _indexXianLu, List _listXianLuData, List _listGanTas) { string result = "OK"; for (int i = 0; i < _listGanTas[_indexXianLu].mListGanTaData.Count; i++) { _listGanTas[_indexXianLu].mListGanTaData[i].mDMQJ1_GanTa = 5.0; _listGanTas[_indexXianLu].mListGanTaData[i].mDMQJ2_GanTa = 5.0; } _listTaskDetail[_indexDetail].mTaskData.mPrepare12_DiShanMiDu = 1; _listTaskDetail[_indexDetail].mTaskData.Complete = 1; _listXianLuData[_indexXianLu].mPrepare2_DiShanMiDu = 1; return result; } }