Files
fl-knowledge/LP/MyFunction.cs
T

2773 lines
110 KiB
C#
Raw Normal View History

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<TaskDetail> _listTaskDetail, List<XianLuData> _listXianLuData, List<GanTas> _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<TaskData> _listTaskData, List<XianLuData> _listXianLuData)
{
return "OK";
}
public string MyStart_Finished1_PuTongJiSuan(int _indexDetail, List<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _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<TGanTaData> 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("<Index_FanJi_NaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_NaiLeiShuiPing}");
streamWriter.WriteLine("</Index_FanJi_NaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绕击-耐雷水平-下标:0-规程 1-ATP");
streamWriter.WriteLine("<Index_RaoJi_NaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_NaiLeiShuiPing}");
streamWriter.WriteLine("</Index_RaoJi_NaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.WriteLine("反击-跳闸率-下标:0-无 1-规程");
streamWriter.WriteLine("<Index_FanJi_TZL>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_TZL}");
streamWriter.WriteLine("</Index_FanJi_TZL>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绕击-跳闸率-下标:0-无 1-规程 2-EGM");
streamWriter.WriteLine("<Index_RaoJi_TZL>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_TZL}");
streamWriter.WriteLine("</Index_RaoJi_TZL>");
streamWriter.WriteLine("");
streamWriter.WriteLine("海拔修正公式-下标: 0-无 1-推荐公式1 2-推荐公式2");
streamWriter.WriteLine("<Index_HaiBaXiuZhengGongShi>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi}");
streamWriter.WriteLine("</Index_HaiBaXiuZhengGongShi>");
streamWriter.WriteLine("");
streamWriter.WriteLine("感应电压公式-下标:0-公式1 1-公式2");
streamWriter.WriteLine("<Index_GanYingDianYaGongShi>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_GanYingDianYaGongShi}");
streamWriter.WriteLine("</Index_GanYingDianYaGongShi>");
streamWriter.WriteLine("");
streamWriter.WriteLine("雷电流波形:1--HeidlerINPhei),2--双斜角(INPslo),3--双指数(INPsur");
streamWriter.WriteLine("<Index_CurrentCurve>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_CurrentCurve}");
streamWriter.WriteLine("</Index_CurrentCurve>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绝缘子闪络判据-下标:0-规程法、1-相交法、2-先导发展法");
streamWriter.WriteLine("<Index_ShanLuoPanJu>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_ShanLuoPanJu}");
streamWriter.WriteLine("</Index_ShanLuoPanJu>");
streamWriter.WriteLine("");
streamWriter.WriteLine("耐雷水平选项:0-单相耐雷水平 1-多相耐雷水平");
streamWriter.WriteLine("<Index_DuoXiangNaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_DuoXiangNaiLeiShuiPing}");
streamWriter.WriteLine("</Index_DuoXiangNaiLeiShuiPing>");
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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _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("<Index_FanJi_NaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_NaiLeiShuiPing}");
streamWriter.WriteLine("</Index_FanJi_NaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绕击-耐雷水平-下标:0-规程 1-ATP");
streamWriter.WriteLine("<Index_RaoJi_NaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_NaiLeiShuiPing}");
streamWriter.WriteLine("</Index_RaoJi_NaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.WriteLine("反击-跳闸率-下标:0-无 1-规程");
streamWriter.WriteLine("<Index_FanJi_TZL>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_TZL}");
streamWriter.WriteLine("</Index_FanJi_TZL>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绕击-跳闸率-下标:0-无 1-规程 2-EGM");
streamWriter.WriteLine("<Index_RaoJi_TZL>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_TZL}");
streamWriter.WriteLine("</Index_RaoJi_TZL>");
streamWriter.WriteLine("");
streamWriter.WriteLine("海拔修正公式-下标: 0-无 1-推荐公式1 2-推荐公式2");
streamWriter.WriteLine("<Index_HaiBaXiuZhengGongShi>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi}");
streamWriter.WriteLine("</Index_HaiBaXiuZhengGongShi>");
streamWriter.WriteLine("");
streamWriter.WriteLine("感应电压公式-下标:0-公式1 1-公式2");
streamWriter.WriteLine("<Index_GanYingDianYaGongShi>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_GanYingDianYaGongShi}");
streamWriter.WriteLine("</Index_GanYingDianYaGongShi>");
streamWriter.WriteLine("");
streamWriter.WriteLine("雷电流波形:1--HeidlerINPhei),2--双斜角(INPslo),3--双指数(INPsur");
streamWriter.WriteLine("<Index_CurrentCurve>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_CurrentCurve}");
streamWriter.WriteLine("</Index_CurrentCurve>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绝缘子闪络判据-下标:0-规程法、1-相交法、2-先导发展法");
streamWriter.WriteLine("<Index_ShanLuoPanJu>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_ShanLuoPanJu}");
streamWriter.WriteLine("</Index_ShanLuoPanJu>");
streamWriter.WriteLine("");
streamWriter.WriteLine("耐雷水平选项:0-单相耐雷水平 1-多相耐雷水平");
streamWriter.WriteLine("<Index_DuoXiangNaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_DuoXiangNaiLeiShuiPing}");
streamWriter.WriteLine("</Index_DuoXiangNaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.Close();
}
fileStream.Close();
}
num4 = (num5 = 0);
List<TGanTaData> 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<TGanTaData> _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<TGanTaData> _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<TGanTaData> _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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _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("<Index_FanJi_NaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_NaiLeiShuiPing}");
streamWriter.WriteLine("</Index_FanJi_NaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绕击-耐雷水平-下标:0-规程 1-ATP");
streamWriter.WriteLine("<Index_RaoJi_NaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_NaiLeiShuiPing}");
streamWriter.WriteLine("</Index_RaoJi_NaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.WriteLine("反击-跳闸率-下标:0-无 1-规程");
streamWriter.WriteLine("<Index_FanJi_TZL>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_FanJi_TZL}");
streamWriter.WriteLine("</Index_FanJi_TZL>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绕击-跳闸率-下标:0-无 1-规程 2-EGM");
streamWriter.WriteLine("<Index_RaoJi_TZL>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_RaoJi_TZL}");
streamWriter.WriteLine("</Index_RaoJi_TZL>");
streamWriter.WriteLine("");
streamWriter.WriteLine("海拔修正公式-下标: 0-无 1-推荐公式1 2-推荐公式2");
streamWriter.WriteLine("<Index_HaiBaXiuZhengGongShi>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_HaiBaXiuZhengGongShi}");
streamWriter.WriteLine("</Index_HaiBaXiuZhengGongShi>");
streamWriter.WriteLine("");
streamWriter.WriteLine("感应电压公式-下标:0-公式1 1-公式2");
streamWriter.WriteLine("<Index_GanYingDianYaGongShi>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_GanYingDianYaGongShi}");
streamWriter.WriteLine("</Index_GanYingDianYaGongShi>");
streamWriter.WriteLine("");
streamWriter.WriteLine("雷电流波形:1--HeidlerINPhei),2--双斜角(INPslo),3--双指数(INPsur");
streamWriter.WriteLine("<Index_CurrentCurve>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_CurrentCurve}");
streamWriter.WriteLine("</Index_CurrentCurve>");
streamWriter.WriteLine("");
streamWriter.WriteLine("绝缘子闪络判据-下标:0-规程法、1-相交法、2-先导发展法");
streamWriter.WriteLine("<Index_ShanLuoPanJu>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_ShanLuoPanJu}");
streamWriter.WriteLine("</Index_ShanLuoPanJu>");
streamWriter.WriteLine("");
streamWriter.WriteLine("耐雷水平选项:0-单相耐雷水平 1-多相耐雷水平");
streamWriter.WriteLine("<Index_DuoXiangNaiLeiShuiPing>");
streamWriter.WriteLine($"{_listTaskDetail[_indexDetail].mTaskData.mIndex_DuoXiangNaiLeiShuiPing}");
streamWriter.WriteLine("</Index_DuoXiangNaiLeiShuiPing>");
streamWriter.WriteLine("");
streamWriter.Close();
}
fileStream.Close();
}
num4 = (num5 = 0);
List<TGanTaData> 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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _listXianLuData, List<GanTas> _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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _listXianLuData, List<GanTas> _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<TaskDetail> _listTaskDetail, int _indexXianLu, List<XianLuData> _listXianLuData, List<GanTas> _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;
}
}