Jack.Peng
2021-03-14 6cb3ad78c7a43f76e29d784bedb87dcc790e3b1f
1.新增后处理结果输出到报表中。
1个文件已修改
227 ■■■■ 已修改文件
P066.Data/Form1.cs 227 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
P066.Data/Form1.cs
@@ -123,22 +123,7 @@
                }
                #endregion  
                #region//测试输出设备判断结果
                //var title12 = $"时间戳,设备判断结果";
                //var file12 = $"{directoryInfo1.Parent.FullName}\\{filename + (i + 111)}.csv";
                //File.AppendAllText(file12, title12, Encoding.UTF8);
                //File.AppendAllText(file12, "\r\n");
                //foreach (var item in JudgeListSum)
                //{
                //    var conrent12 = $"{item.TimeTip},{item.JudgmentResult}";
                //    File.AppendAllText(file12, conrent12, Encoding.UTF8);
                //    File.AppendAllText(file12, "\r\n");
                //}
                #endregion
                var title1 = $"时间戳,文件名,判断,可能性,不确定性,高,宽,X,Y,最大尺寸,位置,R,角度";
                var file1 = $"{subPath}\\{filename}.csv";
@@ -181,7 +166,7 @@
            #region//将设备判断结果输出到CSV报表中
            var title12 = $"时间戳,相机序号,设备判断结果,缺陷类型,最大尺寸,位置,X,Y,R,角度";
            var title12 = $"时间戳,相机序号,设备判断结果,缺陷类型,设备后处理结果,最大尺寸,位置,X,Y,R,角度";
            var file12 = $"{directoryInfo1.Parent.FullName}\\{filenameDir + "设备判断结果"}.csv";
            File.AppendAllText(file12, title12, Encoding.UTF8);
            File.AppendAllText(file12, "\r\n");
@@ -258,24 +243,6 @@
            #region //将时间戳相同的分为一组并排序
            //var dataGroup1 = dataList1.GroupBy(a => a.TimeTip);
            //var dataGroup2 = dataList2.GroupBy(a => a.TimeTip);
            //var dataListSum = new List<string>();
            //foreach (var item in dataGroup1)
            //{
            //    dataListSum.Add(item.Key);
            //}
            //foreach (var item in dataGroup2)
            //{
            //    dataListSum.Add(item.Key);
            //}
            //dataListSum = dataListSum.Distinct().ToList();
            //dataListSum.Sort();
            #endregion
            var dataList = new List<ResultData>();
            var dataList11 = new List<ResultData>();
            var dataList22 = new List<ResultData>();
@@ -343,77 +310,6 @@
        private List<ResultData> JudgeCompareFile(FileInfo fileInfo1, FileInfo fileInfo2,List<string> DataTipsor)
        {
            #region  //屏蔽
            //var allLines1 = File.ReadAllLines(fileInfo1.FullName,Encoding.Default);
            //var allLines2 = File.ReadAllLines(fileInfo2.FullName, Encoding.Default);
            ////var dataJudgeList1 = GetJudgeData(allLines1);
            ////var dataJudgeList2 = GetJudgeData(allLines2);
            //List<ResultData> dataJudgeList1 = new List<ResultData>();
            //List<ResultData> dataJudgeList2 = new List<ResultData>();
            //if (allLines1.Length > 1)
            //{
            //    dataJudgeList1 = GetData(allLines1);
            //}
            //if (allLines2.Length > 1)
            //{
            //     dataJudgeList2 = GetData(allLines2);
            //}
            //var dataGroup1 = dataJudgeList1.GroupBy(a => a.TimeTip);
            //var dataGroup2 = dataJudgeList2.GroupBy(a => a.TimeTip);
            //var dataListSum = new List<string>();
            //foreach (var item in dataGroup1)
            //{
            //    dataListSum.Add(item.Key);
            //}
            //foreach (var item in dataGroup2)
            //{
            //    dataListSum.Add(item.Key);
            //}
            //dataListSum = dataListSum.Distinct().ToList();
            //dataListSum.Sort();
            //var dataList = new List<ResultData>();
            //var itemToRemove = new List<ResultData>();
            //foreach (var item in dataListSum)
            //{
            //        var list1 = dataJudgeList1.FindAll(a => a.TimeTip == item && a.JudgmentResult=="NG"&&!a.Result);
            //        var list2 = dataJudgeList2.FindAll(a => a.TimeTip == item && a.JudgmentResult == "NG"&&!a.Result);
            //    for (int i = 0; i < list1.Count; i++)
            //    {
            //        for (int j = 0; j < list2.Count; j++)
            //        {
            //            if (list1[i].JudgmentResult != list2[j].JudgmentResult)
            //            {
            //                list1[i].JudgmentResult = "NG";
            //                list2[j].JudgmentResult = "NG";
            //                itemToRemove.Add(list2[j]);
            //            }
            //            if (list1[i].JudgmentResult == list2[j].JudgmentResult)
            //            {
            //                itemToRemove.Add(list2[j]);
            //            }
            //        }
            //    }
            //    //if (list1.Count ==0&&list2.Count==0)
            //    //{
            //    //    dataList.Add(new ResultData()
            //    //    {
            //    //        TimeTip = item,
            //    //        JudgmentResult = "OK",
            //    //         }); ; ;
            //    //}
            //    dataList.AddRange(list1);
            //    dataList.AddRange(list2);
            //}
            //for (int i = 0; i < itemToRemove.Count; i++)
            //{
            //    dataList.Remove(itemToRemove[i]);
            //}
            #endregion
            var allLines1 = File.ReadAllLines(fileInfo1.FullName, Encoding.Default);
            var allLines2 = File.ReadAllLines(fileInfo2.FullName, Encoding.Default);
@@ -429,24 +325,6 @@
            }
            #region //将时间戳相同的分为一组并排序
            //var dataGroup1 = dataList1.GroupBy(a => a.TimeTip);
            //var dataGroup2 = dataList2.GroupBy(a => a.TimeTip);
            //var dataListSum = new List<string>();
            //foreach (var item in dataGroup1)
            //{
            //    dataListSum.Add(item.Key);
            //}
            //foreach (var item in dataGroup2)
            //{
            //    dataListSum.Add(item.Key);
            //}
            //dataListSum = dataListSum.Distinct().ToList();
            //dataListSum.Sort();
            #endregion
            var dataList = new List<ResultData>();
            var dataList11 = new List<ResultData>();
@@ -518,30 +396,10 @@
                var list1 = dataList11.FindAll(a => a.TimeTip == item/* && a.JudgmentResult == "NG"*/ );        //不管OK、NG都要输出
                var list2 = dataList22.FindAll(a => a.TimeTip == item /*&& a.JudgmentResult == "NG"*/);         //不管OK、NG都要输出
                //for (int i = 0; i < list1.Count; i++)
                //{
                //    for (int j = 0; j < list2.Count; j++)
                //    {
                //        if (list1[i].JudgmentResult != list2[j].JudgmentResult)
                //        {
                //            list1[i].JudgmentResult = "NG";
                //            list2[j].JudgmentResult = "NG";
                //            itemToRemove.Add(list2[j]);
                //        }
                //        if (list1[i].JudgmentResult == list2[j].JudgmentResult)
                //        {
                //            itemToRemove.Add(list2[j]);
                //        }
                //    }
                //}
                dataList.AddRange(list1);
                dataList.AddRange(list2);
            }
            //for (int i = 0; i < itemToRemove.Count; i++)
            //{
            //    dataList.Remove(itemToRemove[i]);
            //}
            return dataList;
@@ -557,39 +415,42 @@
            //{
            //     Ptr = allLines[1].Split(',')[10];
            //}
            string defectType = "";
            string judgmentresult = "";
            for (int i = 1; i < allLines.Length; i++)
            {
                var data = allLines[i].Split(',');
                if (data.Length>10)
                {
                    Ptr = data[10];
                }
                //if (data.Length>10)
                //{
                //    Ptr = data[10];
                //}
                string defectType = "";
                string bbb = "";
                //string Ptr = "";
                if (data[0] == "")
                {
                    data[0] = nametemp;
                    data[1] = resulttemp;
                    //data[10] = Ptr;
                    if (data[3] != "刮白")
                    {
                        data[10] = Ptr;
                    }
                }
                if (data[1]== "刮白")
                if (data[3]== "刮白")
                {
                    defectType = "刮白";
                    bbb = "NG";
                    Ptr = "";
                    judgmentresult = "NG";
                    Ptr = "刮白";
                }
                else
                {
                    defectType = "白点";
                    bbb = data[1];
                    judgmentresult = data[1];
                    
                }
@@ -597,7 +458,6 @@
                if (data[6] == "-")
                {
                   
                    dataList.Add(new ResultData()
                    {
                        TimeTip = data[0].Split('-')[0],
@@ -605,15 +465,12 @@
                        JudgmentResult = data[1],
                        Result = data[3] == "OK",
                        DefectType = defectType,
                        PostTreatmentResults = Ptr,
                    }); ; ;
                    continue;
                }
                var data6 = data[6].Split('#').ToList();
                data6.Remove("");
                var temp6 = Convert.ToInt32(data6[0]);
@@ -637,12 +494,20 @@
                    }
                }
                data[7] = Convert.ToString(temp7);
                if (data[3]=="NG")
                {
                    Ptr = data[10];
                }
                else
                {
                    Ptr = "";
                }
                dataList.Add(new ResultData()
                {
                    TimeTip = data[0].Split('-')[0],
                    ImageFileName = data[0],
                    JudgmentResult = bbb,
                    JudgmentResult = judgmentresult,
                    Result = data[3] == "OK",
                    Probability = Convert.ToDouble(data[4]),
                    Uncertainty = Convert.ToDouble(data[5]),
@@ -665,39 +530,7 @@
            return dataList;
        }
        //private List<ResultData> GetJudgeData(string[] allLines)
        //{
        //    var dataList = new List<ResultData>();
        //    for (int i = 1; i < allLines.Length; i++)
        //    {
        //        var data = allLines[i].Split(',');
        //        string defectType = "";
        //        string aaa = "";
        //        if (data[0] != "")
        //        {
        //            try
        //            {
        //                defectType = data[10];
        //            }
        //            catch (Exception)
        //            {
        //                defectType = "刮白";
        //                aaa = "NG";
        //            }
        //            dataList.Add(new ResultData()
        //            {
        //                TimeTip = data[0].Split('-')[0],
        //                JudgmentResult = aaa,
        //                DefectType= defectType,
        //            }); ; ;
        //        }
        //    }
        //    return dataList;
        //}
        private List<ResultData> GetLocation(List<ResultData> list)
        {
@@ -829,13 +662,13 @@
                    {
                        if (Lens[i].DefectType == "刮白")
                        {
                            var content111 = $"{""},{""},{""},{""},{Lens[i].ex},{Lens[i].location},{Lens[i].X},{Lens[i].Y},{(int)(Lens[i].R)},{(int)(Lens[i].angle)}";
                            var content111 = $"{""},{""},{""},{""},{""},{Lens[i].ex},{Lens[i].location},{Lens[i].X},{Lens[i].Y},{(int)(Lens[i].R)},{(int)(Lens[i].angle)}";
                            File.AppendAllText(file12, content111, Encoding.UTF8);
                            File.AppendAllText(file12, "\r\n");
                        }
                        else
                        {
                            var content111 = $"{""},{""},{""},{Lens[i].DefectType},{Lens[i].ex},{Lens[i].location},{Lens[i].X},{Lens[i].Y},{(int)(Lens[i].R)},{(int)(Lens[i].angle)}";
                            var content111 = $"{""},{""},{""},{Lens[i].DefectType},{""},{Lens[i].ex},{Lens[i].location},{Lens[i].X},{Lens[i].Y},{(int)(Lens[i].R)},{(int)(Lens[i].angle)}";
                            File.AppendAllText(file12, content111, Encoding.UTF8);
                            File.AppendAllText(file12, "\r\n");
                        }
@@ -844,12 +677,12 @@
                }
                else
                {
                    var content11 = $"{item},{LensNumb},{Lens[0].JudgmentResult},{Lens[0].DefectType}";
                    var content11 = $"{item},{LensNumb},{Lens[0].JudgmentResult},{Lens[0].DefectType},{Lens[0].PostTreatmentResults}";
                    File.AppendAllText(file12, content11, Encoding.UTF8);
                    File.AppendAllText(file12, "\r\n");
                    for (int i = 0; i < Lens.Count; i++)
                    {
                        var content111 = $"{""},{""},{""},{""},{Lens[i].ex},{Lens[i].location},{Lens[i].X},{Lens[i].Y},{(int)(Lens[i].R)},{(int)(Lens[i].angle)}";
                        var content111 = $"{""},{""},{""},{""},{""},{Lens[i].ex},{Lens[i].location},{Lens[i].X},{Lens[i].Y},{(int)(Lens[i].R)},{(int)(Lens[i].angle)}";
                        File.AppendAllText(file12, content111, Encoding.UTF8);
                        File.AppendAllText(file12, "\r\n");
                    }