| @@ -501,6 +501,12 @@ | |||
| <Compile Include="SysUI\SysSet\SysSetFrm.Designer.cs"> | |||
| <DependentUpon>SysSetFrm.cs</DependentUpon> | |||
| </Compile> | |||
| <Compile Include="SysUI\SysSet\SysUpdataInfoFrm.cs"> | |||
| <SubType>Form</SubType> | |||
| </Compile> | |||
| <Compile Include="SysUI\SysSet\SysUpdataInfoFrm.Designer.cs"> | |||
| <DependentUpon>SysUpdataInfoFrm.cs</DependentUpon> | |||
| </Compile> | |||
| <Compile Include="SysUI\UIControl\DefectCountOfSizeControl.cs"> | |||
| <SubType>UserControl</SubType> | |||
| </Compile> | |||
| @@ -654,6 +660,9 @@ | |||
| <EmbeddedResource Include="SysUI\SysSet\SysSetFrm.resx"> | |||
| <DependentUpon>SysSetFrm.cs</DependentUpon> | |||
| </EmbeddedResource> | |||
| <EmbeddedResource Include="SysUI\SysSet\SysUpdataInfoFrm.resx"> | |||
| <DependentUpon>SysUpdataInfoFrm.cs</DependentUpon> | |||
| </EmbeddedResource> | |||
| <EmbeddedResource Include="SysUI\UIControl\DefectCountOfSizeControl.resx"> | |||
| <DependentUpon>DefectCountOfSizeControl.cs</DependentUpon> | |||
| </EmbeddedResource> | |||
| @@ -329,8 +329,11 @@ namespace MaiMuAOI.ImageProcessing | |||
| //====运行推理(必需单队列) | |||
| stopwatch.Start(); | |||
| IDisposableReadOnlyCollection<DisposableNamedOnnxValue>[] results = yolo1.RunModlel(_onnxSession, task.tensors); | |||
| liStep = 1; | |||
| task.informationList = yolo1.ScreeningResults_YD(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| liStep = 1; | |||
| if (task.modelType == "rj") | |||
| task.informationList = yolo1.ScreeningResults_YD_RJ(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| else | |||
| task.informationList = yolo1.ScreeningResults_YD(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| liStep = 2; | |||
| //当前大图上缺陷个数 | |||
| @@ -406,7 +409,10 @@ namespace MaiMuAOI.ImageProcessing | |||
| stopwatch.Start(); | |||
| IDisposableReadOnlyCollection<DisposableNamedOnnxValue>[] results = yolo2.RunModlel(_onnxSession2, task.tensors); | |||
| liStep = 1; | |||
| task.informationList = yolo2.ScreeningResults_YD(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| if (task.modelType == "rj") | |||
| task.informationList = yolo2.ScreeningResults_YD_RJ(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| else | |||
| task.informationList = yolo2.ScreeningResults_YD(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| liStep = 2; | |||
| //当前大图上缺陷个数 | |||
| @@ -482,7 +488,10 @@ namespace MaiMuAOI.ImageProcessing | |||
| stopwatch.Start(); | |||
| IDisposableReadOnlyCollection<DisposableNamedOnnxValue>[] results = yolo3.RunModlel(_onnxSession3, task.tensors); | |||
| liStep = 1; | |||
| task.informationList = yolo3.ScreeningResults_YD(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| if(task.modelType == "rj") | |||
| task.informationList = yolo3.ScreeningResults_YD_RJ(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| else | |||
| task.informationList = yolo3.ScreeningResults_YD(results, task.bmps_resize, task.thresholds, task.thresholdsClass, task.recAreaThreshold); | |||
| liStep = 2; | |||
| //当前大图上缺陷个数 | |||
| @@ -593,6 +602,9 @@ namespace MaiMuAOI.ImageProcessing | |||
| public int stepIndex; | |||
| public string processName; | |||
| //2024 03 22 加入模型类型 rj pt; | |||
| public string modelType; | |||
| public string drawingPagePath;//图纸路径bmp | |||
| //图索引 | |||
| public int index = 0; | |||
| @@ -455,7 +455,9 @@ namespace MaiMuAOI | |||
| private void tsmHelpInfo_Click(object sender, EventArgs e) | |||
| { | |||
| MessageBox.Show(SysUpdata.Updata, "更新信息"); | |||
| //MessageBox.Show(SysUpdata.Updata, "更新信息"); | |||
| SysUpdataInfoFrm frm = new SysUpdataInfoFrm(SysUpdata.Updata); | |||
| frm.ShowDialog(); | |||
| } | |||
| private void tsmSoftFile_Click(object sender, EventArgs e) | |||
| @@ -129,14 +129,14 @@ namespace MaiMuAOI.SysCtrl | |||
| yx, | |||
| [Description("斜边")] | |||
| xb, | |||
| [Description("栅线")] | |||
| sx, | |||
| [Description("断栅")] | |||
| ds, | |||
| [Description("格栅")] | |||
| gs, | |||
| [Description("钢丝断裂")] | |||
| gsdl, | |||
| [Description("残胶堵孔")] | |||
| cjdk, | |||
| [Description("正常")] | |||
| normal, | |||
| } | |||
| public enum DefectNameEnum | |||
| { | |||
| @@ -150,10 +150,10 @@ namespace MaiMuAOI.SysCtrl | |||
| 划伤, | |||
| 压线, | |||
| 斜边, | |||
| 栅线, | |||
| 断栅, | |||
| 格栅, | |||
| 钢丝断裂, | |||
| 残胶堵孔 | |||
| 残胶堵孔, | |||
| 正常 | |||
| } | |||
| public enum ValType | |||
| { | |||
| @@ -411,6 +411,8 @@ namespace MaiMuAOI.SysCtrl | |||
| XBCount, | |||
| [Description("栅线数量")] | |||
| SXCount, | |||
| [Description("断栅数量")] | |||
| DSCount, | |||
| [Description("钢丝断裂数量")] | |||
| GSDLCount, | |||
| [Description("残胶堵孔数量")] | |||
| @@ -154,6 +154,7 @@ namespace MaiMuAOI.SysCtrl | |||
| Service.ProductService PdtService; | |||
| Service.OrderService OrderService; | |||
| Service.ClassesService svcClasses; | |||
| //可用步骤 | |||
| public static Dictionary<string, string> dicDevType = new Dictionary<string, string>(); | |||
| @@ -271,6 +272,10 @@ namespace MaiMuAOI.SysCtrl | |||
| /// </summary> | |||
| private int compBmpIndex = 0;//比对777图的索引 | |||
| /// <summary> | |||
| /// 对比张数 | |||
| /// </summary> | |||
| private int compBmpNum = 0;//比对张数 | |||
| /// <summary> | |||
| /// 缺陷处理图片张数 | |||
| /// </summary> | |||
| private int defectBmpNum = 0; | |||
| @@ -297,6 +302,7 @@ namespace MaiMuAOI.SysCtrl | |||
| PdtService = new Service.ProductService(); | |||
| OrderService = new OrderService(); | |||
| webService = new WebService(); | |||
| svcClasses = new Service.ClassesService(); | |||
| init_Cloud = false; | |||
| cloudMgr = new CloudMgr(); | |||
| @@ -2335,7 +2341,7 @@ namespace MaiMuAOI.SysCtrl | |||
| errStep = 9; | |||
| AllDefectCount = 0; | |||
| SizeNGCnt = 0; | |||
| defectBmpNumResult = defectBmpNum = compBmpIndex = 0; | |||
| defectBmpNumResult = defectBmpNum = compBmpNum = compBmpIndex = 0; | |||
| IsCurrHeightBase = false; | |||
| @@ -2931,9 +2937,12 @@ namespace MaiMuAOI.SysCtrl | |||
| case "xb": | |||
| order.XBCount++; | |||
| break; | |||
| case "sx": | |||
| case "gs": //sx 变为 gs | |||
| order.SXCount++; | |||
| break; | |||
| case "ds": | |||
| // order.DSCount++; | |||
| break; | |||
| case "gsdl": | |||
| order.GSDLCount++; | |||
| break; | |||
| @@ -6032,8 +6041,16 @@ namespace MaiMuAOI.SysCtrl | |||
| //判断是否使用手动 | |||
| if(!defectParam.AutoLeft) | |||
| { | |||
| Left_X = defectParam.LeftPoint.X; | |||
| Left_Y = defectParam.LeftPoint.Y; | |||
| if (defectParam.LeftPoints.Count > 0) | |||
| { | |||
| Left_X = defectParam.LeftPoints[0].X; | |||
| Left_Y = defectParam.LeftPoints[0].Y; | |||
| } | |||
| else | |||
| { | |||
| Log($"{stepIndex + 1}-{processName}", $"设置左上角为空{defectParam.LeftPoints[0]}!", WarningEnum.High); | |||
| return stepIndex; | |||
| } | |||
| } | |||
| if (!defectParam.AutoStep) | |||
| { | |||
| @@ -6451,6 +6468,9 @@ namespace MaiMuAOI.SysCtrl | |||
| } | |||
| Log("结果", "产品测试完成,等待测试结果..."); | |||
| //等待比对显示完成 | |||
| while (compBmpNum != compBmpIndex) | |||
| Thread.Sleep(100); | |||
| //等待缺陷图显示完成 | |||
| while (defectBmpNum != defectBmpNumResult) | |||
| Thread.Sleep(100); | |||
| @@ -6673,8 +6693,10 @@ namespace MaiMuAOI.SysCtrl | |||
| return order.YXCount; | |||
| case DefectCodeEnum.xb: | |||
| return order.XBCount; | |||
| case DefectCodeEnum.sx: | |||
| case DefectCodeEnum.gs: | |||
| return order.SXCount; | |||
| //case DefectCodeEnum.ds: | |||
| // return order.DSCount; | |||
| case DefectCodeEnum.gsdl: | |||
| return order.GSDLCount; | |||
| case DefectCodeEnum.cjdk: | |||
| @@ -8295,6 +8317,7 @@ namespace MaiMuAOI.SysCtrl | |||
| } | |||
| } | |||
| }); | |||
| compBmpNum++; | |||
| //需等上面异步回调中的相对偏移校正完成再继续 | |||
| if (!asynRun) | |||
| @@ -8321,11 +8344,19 @@ namespace MaiMuAOI.SysCtrl | |||
| Log($"{stepIndex + 1}-{processName}", $"开始缺陷检测,源图索引:{defectBmpNum},图像队列数量: {scannerGBmpQueue.Count}..."); | |||
| //string[] aarCut_size = param.CutSize; | |||
| //string[] aarResize = processParam.Value<string>("Resize").Split(','); | |||
| //获取模型类型 | |||
| string modeltp; | |||
| Classes tClasses = svcClasses.GetById(md.ClassesId); | |||
| if (tClasses.Name == "乳剂") | |||
| modeltp = "rj"; | |||
| else | |||
| modeltp = "pt"; | |||
| defectLib.add(new DefectTask() | |||
| { | |||
| stepIndex = stepIndex, | |||
| processName = processName, | |||
| modelType = modeltp, | |||
| drawingPagePath = gbxBmpPath, | |||
| //index = defectBmpNum++, | |||
| index = defectBmpNum, | |||
| @@ -8613,6 +8644,16 @@ namespace MaiMuAOI.SysCtrl | |||
| CreateUserCode = SysMgr.Instance.UserMgr.LoginUser.Code, | |||
| ModifyUserCode = SysMgr.Instance.UserMgr.LoginUser.Code | |||
| }); | |||
| if (!string.IsNullOrEmpty(defectParam.ExcelDSCount)) | |||
| CurrPrintInfos.Add(new PrintInfo() | |||
| { | |||
| IsLabel = false, | |||
| IsValue = false, | |||
| PrintKey = defectParam.ExcelDSCount, | |||
| PrintCode = "ExcelDSCount", | |||
| CreateUserCode = SysMgr.Instance.UserMgr.LoginUser.Code, | |||
| ModifyUserCode = SysMgr.Instance.UserMgr.LoginUser.Code | |||
| }); | |||
| if (!string.IsNullOrEmpty(defectParam.ExcelGSDLCount)) | |||
| CurrPrintInfos.Add(new PrintInfo() | |||
| { | |||
| @@ -8756,6 +8797,16 @@ namespace MaiMuAOI.SysCtrl | |||
| CreateUserCode = SysMgr.Instance.UserMgr.LoginUser.Code, | |||
| ModifyUserCode = SysMgr.Instance.UserMgr.LoginUser.Code | |||
| }); | |||
| if (!string.IsNullOrEmpty(defectParam.LabelDSCount)) | |||
| CurrPrintInfos.Add(new PrintInfo() | |||
| { | |||
| IsLabel = true, | |||
| IsValue = false, | |||
| PrintKey = defectParam.LabelDSCount, | |||
| PrintCode = "LabelDSCount", | |||
| CreateUserCode = SysMgr.Instance.UserMgr.LoginUser.Code, | |||
| ModifyUserCode = SysMgr.Instance.UserMgr.LoginUser.Code | |||
| }); | |||
| if (!string.IsNullOrEmpty(defectParam.LabelGSDLCount)) | |||
| CurrPrintInfos.Add(new PrintInfo() | |||
| { | |||
| @@ -9411,6 +9462,9 @@ namespace MaiMuAOI.SysCtrl | |||
| case PrintDataEnum.SXCount: | |||
| value = order.SXCount.ToString(); | |||
| break; | |||
| case PrintDataEnum.DSCount: | |||
| // value = order.DSCount.ToString(); | |||
| break; | |||
| case PrintDataEnum.GSDLCount: | |||
| value = order.GSDLCount.ToString(); | |||
| break; | |||
| @@ -9577,6 +9631,9 @@ namespace MaiMuAOI.SysCtrl | |||
| case "LabelSXCount": | |||
| value = order.SXCount.ToString(); | |||
| break; | |||
| case "LabelDSCount": | |||
| //value = order.DSCount.ToString(); | |||
| break; | |||
| case "LabelGSDLCount": | |||
| value = order.GSDLCount.ToString(); | |||
| break; | |||
| @@ -9658,6 +9715,9 @@ namespace MaiMuAOI.SysCtrl | |||
| case "ExcelSXCount": | |||
| value = order.SXCount.ToString(); | |||
| break; | |||
| case "ExcelDSCount": | |||
| //value = order.DSCount.ToString(); | |||
| break; | |||
| case "ExcelGSDLCount": | |||
| value = order.GSDLCount.ToString(); | |||
| break; | |||
| @@ -54,6 +54,7 @@ namespace MaiMuAOI.SysCtrl | |||
| "\t6.加入可开启单边计算目数功能\r\n" + | |||
| "V2.0.5A:\r\n" + | |||
| "\t1.测试项加入SP2—主栅宽度\r\n" + | |||
| "\t2.缺陷项加入钢丝断裂,残胶堵孔\r\n"; | |||
| "\t2.缺陷项加入钢丝断裂,残胶堵孔\r\n" + | |||
| "\t3.缺陷项分类乳剂和PT\r\n"; | |||
| } | |||
| } | |||
| @@ -581,7 +581,8 @@ namespace MaiMuAOI.SysUI.DefectPicShow | |||
| dt.Columns.Add(new DataColumn("划伤数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("压线数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("斜边数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("栅线数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("格栅数量", typeof(int)));//在表中添加int类型的列 | |||
| //dt.Columns.Add(new DataColumn("断栅数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("钢丝断裂数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("残胶堵孔数量", typeof(int)));//在表中添加int类型的列 | |||
| @@ -796,7 +797,8 @@ namespace MaiMuAOI.SysUI.DefectPicShow | |||
| dr["划伤数量"] = item.HSCount; | |||
| dr["压线数量"] = item.YXCount; | |||
| dr["斜边数量"] = item.XBCount; | |||
| dr["栅线数量"] = item.SXCount; | |||
| dr["格栅数量"] = item.SXCount; | |||
| //dr["断栅数量"] = item.DSCount; | |||
| dr["钢丝断裂数量"] = item.GSDLCount; | |||
| dr["残胶堵孔数量"] = item.CJDKCount; | |||
| @@ -1270,7 +1272,8 @@ namespace MaiMuAOI.SysUI.DefectPicShow | |||
| dt.Columns.Add(new DataColumn("划伤数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("压线数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("斜边数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("栅线数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("格栅数量", typeof(int)));//在表中添加int类型的列 | |||
| //dt.Columns.Add(new DataColumn("断栅数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("钢丝断裂数量", typeof(int)));//在表中添加int类型的列 | |||
| dt.Columns.Add(new DataColumn("残胶堵孔数量", typeof(int)));//在表中添加int类型的列 | |||
| @@ -1322,7 +1325,8 @@ namespace MaiMuAOI.SysUI.DefectPicShow | |||
| dr["划伤数量"] = item.HSCount; | |||
| dr["压线数量"] = item.YXCount; | |||
| dr["斜边数量"] = item.XBCount; | |||
| dr["栅线数量"] = item.SXCount; | |||
| dr["格栅数量"] = item.SXCount; | |||
| //dr["断栅数量"] = item.DSCount; | |||
| dr["钢丝断裂数量"] = item.GSDLCount; | |||
| dr["残胶堵孔数量"] = item.CJDKCount; | |||
| @@ -54,6 +54,7 @@ namespace MaiMuAOI.SysUI.ProcessStep.Prop | |||
| [PropertyOrder(41), Browsable(true), Category("5 走位"), DisplayName("5.1 自动计算左上角"), Description("使用自动计算的左上角")] | |||
| public bool AutoLeft { get; set; } | |||
| [PropertyOrder(42), Browsable(true), Category("5 走位"), DisplayName("5.2 手动左上角位置"), Description("使用手动设置的左上角")] | |||
| public List<PointF> LeftPoints { get; set; } | |||
| public Point LeftPoint { get; set; } | |||
| [PropertyOrder(43), Browsable(true), Category("5 走位"), DisplayName("5.3 自动计算步进"), Description("使用自动计算的步进位置")] | |||
| public bool AutoStep { get; set; } | |||
| @@ -86,11 +87,13 @@ namespace MaiMuAOI.SysUI.ProcessStep.Prop | |||
| public string ExcelYXCount { get; set; } | |||
| [PropertyOrder(62), Browsable(true), Category("6 打印"), DisplayName("6.12 打印斜边数量"), Description("打印数据的位置")] | |||
| public string ExcelXBCount { get; set; } | |||
| [PropertyOrder(63), Browsable(true), Category("6 打印"), DisplayName("6.13 打印栅线数量"), Description("打印数据的位置")] | |||
| [PropertyOrder(63), Browsable(true), Category("6 打印"), DisplayName("6.13 打印格栅数量"), Description("打印数据的位置")] | |||
| public string ExcelSXCount { get; set; } | |||
| [PropertyOrder(64), Browsable(true), Category("6 打印"), DisplayName("6.14 打印钢丝断裂数量"), Description("打印数据的位置")] | |||
| //[PropertyOrder(63), Browsable(true), Category("6 打印"), DisplayName("6.14 打印断栅数量"), Description("打印数据的位置")] | |||
| public string ExcelDSCount { get; set; } | |||
| [PropertyOrder(64), Browsable(true), Category("6 打印"), DisplayName("6.15 打印钢丝断裂数量"), Description("打印数据的位置")] | |||
| public string ExcelGSDLCount { get; set; } | |||
| [PropertyOrder(65), Browsable(true), Category("6 打印"), DisplayName("6.15 打印残胶堵孔数量"), Description("打印数据的位置")] | |||
| [PropertyOrder(65), Browsable(true), Category("6 打印"), DisplayName("6.16 打印残胶堵孔数量"), Description("打印数据的位置")] | |||
| public string ExcelCJDKCount { get; set; } | |||
| [PropertyOrder(71), Browsable(true), Category("7 标签打印"), DisplayName("7.01 开启标签打印"), Description("启用本工序数据打印")] | |||
| @@ -117,11 +120,13 @@ namespace MaiMuAOI.SysUI.ProcessStep.Prop | |||
| public string LabelYXCount { get; set; } | |||
| [PropertyOrder(82), Browsable(true), Category("7 标签打印"), DisplayName("7.12 标签打印斜边数量"), Description("打印数据的位置")] | |||
| public string LabelXBCount { get; set; } | |||
| [PropertyOrder(83), Browsable(true), Category("7 标签打印"), DisplayName("7.13 标签打印栅线数量"), Description("打印数据的位置")] | |||
| [PropertyOrder(83), Browsable(true), Category("7 标签打印"), DisplayName("7.13 标签打印格栅数量"), Description("打印数据的位置")] | |||
| public string LabelSXCount { get; set; } | |||
| [PropertyOrder(84), Browsable(true), Category("7 标签打印"), DisplayName("7.12 标签打印钢丝断裂数量"), Description("打印数据的位置")] | |||
| //[PropertyOrder(83), Browsable(true), Category("7 标签打印"), DisplayName("7.14 标签打印断栅数量"), Description("打印数据的位置")] | |||
| public string LabelDSCount { get; set; } | |||
| [PropertyOrder(84), Browsable(true), Category("7 标签打印"), DisplayName("7.15 标签打印钢丝断裂数量"), Description("打印数据的位置")] | |||
| public string LabelGSDLCount { get; set; } | |||
| [PropertyOrder(85), Browsable(true), Category("7 标签打印"), DisplayName("7.13 标签打印残胶堵孔数量"), Description("打印数据的位置")] | |||
| [PropertyOrder(85), Browsable(true), Category("7 标签打印"), DisplayName("7.16 标签打印残胶堵孔数量"), Description("打印数据的位置")] | |||
| public string LabelCJDKCount { get; set; } | |||
| [PropertyOrder(91), Browsable(true), Category("8 控制"), DisplayName("8.1 禁用工序"), Description("禁用本工序(True-是;False-否)")] | |||
| @@ -154,6 +159,7 @@ namespace MaiMuAOI.SysUI.ProcessStep.Prop | |||
| AutoStep = true; | |||
| AutoLeft = true; | |||
| LeftPoints = new List<PointF>(); | |||
| LeftPoint = new Point(); | |||
| Xstep = 5; | |||
| Ystep = 5; | |||
| @@ -173,6 +179,7 @@ namespace MaiMuAOI.SysUI.ProcessStep.Prop | |||
| ExcelYXCount = ""; | |||
| ExcelXBCount = ""; | |||
| ExcelSXCount = ""; | |||
| ExcelDSCount = ""; | |||
| ExcelGSDLCount = ""; | |||
| ExcelCJDKCount = ""; | |||
| @@ -188,6 +195,7 @@ namespace MaiMuAOI.SysUI.ProcessStep.Prop | |||
| LabelYXCount = ""; | |||
| LabelXBCount = ""; | |||
| LabelSXCount = ""; | |||
| LabelDSCount = ""; | |||
| LabelGSDLCount = ""; | |||
| LabelCJDKCount = ""; | |||
| } | |||
| @@ -382,7 +382,7 @@ namespace MaiMuAOI.SysUI.ProcessStep | |||
| case "Mark": | |||
| this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessMarkProp.serialize(); | |||
| break; | |||
| case "SizeDefect": | |||
| case "SizeAndDefect": | |||
| this.dataGridView2.Rows[oldIndex].Cells["colProcessParams"].Value = _ProcessSizeDefectProp.serialize(); | |||
| break; | |||
| case "PointTest": | |||
| @@ -269,7 +269,7 @@ namespace MaiMuAOI.SysUI.ProductAndStep | |||
| // DefectCountOfSizeControl userCon = new DefectCountOfSizeControl(); | |||
| // userCon.Code = item.ToString(); | |||
| // userCon.Title = EnumExtension.GetEnumDescription((DefectCodeEnum)item); | |||
| // if (model != null && model.QualifiedCriterionList != null) | |||
| // { | |||
| // var qalifiedItem = model.QualifiedCriterionList.FirstOrDefault(m => m.DefectCode == userCon.Code); | |||
| @@ -283,7 +283,23 @@ namespace MaiMuAOI.SysUI.ProductAndStep | |||
| // this.flpQualifiedPannel.Controls.Add(userCon); | |||
| //} | |||
| //获取所有缺陷项 | |||
| var lstDefect = GetArrayList<DefectCodeEnum>(); | |||
| //判断是rj还是pt | |||
| if (model.ClassesId > 0) | |||
| { | |||
| Classes tClasses = svcClasses.GetById(model.ClassesId); | |||
| if(tClasses.Name == "乳剂") | |||
| { | |||
| lstDefect.RemoveAt(11); | |||
| lstDefect.RemoveAt(11); | |||
| } | |||
| else | |||
| lstDefect.RemoveAt(13); | |||
| } | |||
| foreach (DictionaryEntry item in lstDefect) | |||
| { | |||
| DefectCountOfSizeControl userCon = new DefectCountOfSizeControl(); | |||
| @@ -0,0 +1,64 @@ | |||
| namespace MaiMuAOI.SysUI.SysSet | |||
| { | |||
| partial class SysUpdataInfoFrm | |||
| { | |||
| /// <summary> | |||
| /// Required designer variable. | |||
| /// </summary> | |||
| private System.ComponentModel.IContainer components = null; | |||
| /// <summary> | |||
| /// Clean up any resources being used. | |||
| /// </summary> | |||
| /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> | |||
| protected override void Dispose(bool disposing) | |||
| { | |||
| if (disposing && (components != null)) | |||
| { | |||
| components.Dispose(); | |||
| } | |||
| base.Dispose(disposing); | |||
| } | |||
| #region Windows Form Designer generated code | |||
| /// <summary> | |||
| /// Required method for Designer support - do not modify | |||
| /// the contents of this method with the code editor. | |||
| /// </summary> | |||
| private void InitializeComponent() | |||
| { | |||
| this.textBox1 = new System.Windows.Forms.TextBox(); | |||
| this.SuspendLayout(); | |||
| // | |||
| // textBox1 | |||
| // | |||
| this.textBox1.Dock = System.Windows.Forms.DockStyle.Fill; | |||
| this.textBox1.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); | |||
| this.textBox1.Location = new System.Drawing.Point(0, 0); | |||
| this.textBox1.Multiline = true; | |||
| this.textBox1.Name = "textBox1"; | |||
| this.textBox1.ReadOnly = true; | |||
| this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Both; | |||
| this.textBox1.Size = new System.Drawing.Size(509, 453); | |||
| this.textBox1.TabIndex = 0; | |||
| // | |||
| // SysUpdataInfoFrm | |||
| // | |||
| this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); | |||
| this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | |||
| this.ClientSize = new System.Drawing.Size(509, 453); | |||
| this.Controls.Add(this.textBox1); | |||
| this.Name = "SysUpdataInfoFrm"; | |||
| this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent; | |||
| this.Text = "更新信息"; | |||
| this.ResumeLayout(false); | |||
| this.PerformLayout(); | |||
| } | |||
| #endregion | |||
| private System.Windows.Forms.TextBox textBox1; | |||
| } | |||
| } | |||
| @@ -0,0 +1,22 @@ | |||
| using System; | |||
| using System.Collections.Generic; | |||
| using System.ComponentModel; | |||
| using System.Data; | |||
| using System.Drawing; | |||
| using System.Linq; | |||
| using System.Text; | |||
| using System.Threading.Tasks; | |||
| using System.Windows.Forms; | |||
| namespace MaiMuAOI.SysUI.SysSet | |||
| { | |||
| public partial class SysUpdataInfoFrm : Form | |||
| { | |||
| public SysUpdataInfoFrm(string info) | |||
| { | |||
| InitializeComponent(); | |||
| this.textBox1.Text = info; | |||
| this.Activate(); | |||
| } | |||
| } | |||
| } | |||
| @@ -0,0 +1,120 @@ | |||
| <?xml version="1.0" encoding="utf-8"?> | |||
| <root> | |||
| <!-- | |||
| Microsoft ResX Schema | |||
| Version 2.0 | |||
| The primary goals of this format is to allow a simple XML format | |||
| that is mostly human readable. The generation and parsing of the | |||
| various data types are done through the TypeConverter classes | |||
| associated with the data types. | |||
| Example: | |||
| ... ado.net/XML headers & schema ... | |||
| <resheader name="resmimetype">text/microsoft-resx</resheader> | |||
| <resheader name="version">2.0</resheader> | |||
| <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | |||
| <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | |||
| <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | |||
| <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | |||
| <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | |||
| <value>[base64 mime encoded serialized .NET Framework object]</value> | |||
| </data> | |||
| <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | |||
| <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | |||
| <comment>This is a comment</comment> | |||
| </data> | |||
| There are any number of "resheader" rows that contain simple | |||
| name/value pairs. | |||
| Each data row contains a name, and value. The row also contains a | |||
| type or mimetype. Type corresponds to a .NET class that support | |||
| text/value conversion through the TypeConverter architecture. | |||
| Classes that don't support this are serialized and stored with the | |||
| mimetype set. | |||
| The mimetype is used for serialized objects, and tells the | |||
| ResXResourceReader how to depersist the object. This is currently not | |||
| extensible. For a given mimetype the value must be set accordingly: | |||
| Note - application/x-microsoft.net.object.binary.base64 is the format | |||
| that the ResXResourceWriter will generate, however the reader can | |||
| read any of the formats listed below. | |||
| mimetype: application/x-microsoft.net.object.binary.base64 | |||
| value : The object must be serialized with | |||
| : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | |||
| : and then encoded with base64 encoding. | |||
| mimetype: application/x-microsoft.net.object.soap.base64 | |||
| value : The object must be serialized with | |||
| : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | |||
| : and then encoded with base64 encoding. | |||
| mimetype: application/x-microsoft.net.object.bytearray.base64 | |||
| value : The object must be serialized into a byte array | |||
| : using a System.ComponentModel.TypeConverter | |||
| : and then encoded with base64 encoding. | |||
| --> | |||
| <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | |||
| <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | |||
| <xsd:element name="root" msdata:IsDataSet="true"> | |||
| <xsd:complexType> | |||
| <xsd:choice maxOccurs="unbounded"> | |||
| <xsd:element name="metadata"> | |||
| <xsd:complexType> | |||
| <xsd:sequence> | |||
| <xsd:element name="value" type="xsd:string" minOccurs="0" /> | |||
| </xsd:sequence> | |||
| <xsd:attribute name="name" use="required" type="xsd:string" /> | |||
| <xsd:attribute name="type" type="xsd:string" /> | |||
| <xsd:attribute name="mimetype" type="xsd:string" /> | |||
| <xsd:attribute ref="xml:space" /> | |||
| </xsd:complexType> | |||
| </xsd:element> | |||
| <xsd:element name="assembly"> | |||
| <xsd:complexType> | |||
| <xsd:attribute name="alias" type="xsd:string" /> | |||
| <xsd:attribute name="name" type="xsd:string" /> | |||
| </xsd:complexType> | |||
| </xsd:element> | |||
| <xsd:element name="data"> | |||
| <xsd:complexType> | |||
| <xsd:sequence> | |||
| <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | |||
| <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | |||
| </xsd:sequence> | |||
| <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | |||
| <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | |||
| <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | |||
| <xsd:attribute ref="xml:space" /> | |||
| </xsd:complexType> | |||
| </xsd:element> | |||
| <xsd:element name="resheader"> | |||
| <xsd:complexType> | |||
| <xsd:sequence> | |||
| <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | |||
| </xsd:sequence> | |||
| <xsd:attribute name="name" type="xsd:string" use="required" /> | |||
| </xsd:complexType> | |||
| </xsd:element> | |||
| </xsd:choice> | |||
| </xsd:complexType> | |||
| </xsd:element> | |||
| </xsd:schema> | |||
| <resheader name="resmimetype"> | |||
| <value>text/microsoft-resx</value> | |||
| </resheader> | |||
| <resheader name="version"> | |||
| <value>2.0</value> | |||
| </resheader> | |||
| <resheader name="reader"> | |||
| <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | |||
| </resheader> | |||
| <resheader name="writer"> | |||
| <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | |||
| </resheader> | |||
| </root> | |||
| @@ -157,7 +157,8 @@ namespace Models | |||
| public int HSCount { get; set; }//划伤数量 | |||
| public int YXCount { get; set; }//压线数量 | |||
| public int XBCount { get; set; }//斜边数量 new | |||
| public int SXCount { get; set; }//栅线数量 new | |||
| public int SXCount { get; set; }//原先断栅 换为 栅线数量 new | |||
| //public int DSCount { get; set; }//原先断栅 换为 格栅数量 new | |||
| public int GSDLCount { get; set; }//钢丝断裂 new | |||
| public int CJDKCount { get; set; }//残胶堵孔 new | |||
| #endregion | |||
| @@ -13,6 +13,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BanBoShi", "BanBoShi\BanBoS | |||
| EndProject | |||
| Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "SetupExe", "SetupExe\SetupExe.vdproj", "{9C2135D9-42B8-409C-916F-D4B2970E2370}" | |||
| EndProject | |||
| Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "SetupAssist", "SetupAssist\SetupAssist.vdproj", "{8DDDE9CA-8008-4E62-A97E-B628028FBED0}" | |||
| EndProject | |||
| Global | |||
| GlobalSection(SolutionConfigurationPlatforms) = preSolution | |||
| Debug|Any CPU = Debug|Any CPU | |||
| @@ -57,6 +59,10 @@ Global | |||
| {9C2135D9-42B8-409C-916F-D4B2970E2370}.Debug|x64.ActiveCfg = Debug | |||
| {9C2135D9-42B8-409C-916F-D4B2970E2370}.Release|Any CPU.ActiveCfg = Release | |||
| {9C2135D9-42B8-409C-916F-D4B2970E2370}.Release|x64.ActiveCfg = Release | |||
| {8DDDE9CA-8008-4E62-A97E-B628028FBED0}.Debug|Any CPU.ActiveCfg = Debug | |||
| {8DDDE9CA-8008-4E62-A97E-B628028FBED0}.Debug|x64.ActiveCfg = Debug | |||
| {8DDDE9CA-8008-4E62-A97E-B628028FBED0}.Release|Any CPU.ActiveCfg = Release | |||
| {8DDDE9CA-8008-4E62-A97E-B628028FBED0}.Release|x64.ActiveCfg = Release | |||
| EndGlobalSection | |||
| GlobalSection(SolutionProperties) = preSolution | |||
| HideSolutionNode = FALSE | |||
| @@ -325,7 +325,8 @@ namespace Service | |||
| 划伤 = SqlFunc.AggregateSum(a.HSCount), | |||
| 压线 = SqlFunc.AggregateSum(a.YXCount), | |||
| 斜边 = SqlFunc.AggregateSum(a.XBCount), | |||
| 栅线 = SqlFunc.AggregateSum(a.SXCount), | |||
| 格栅 = SqlFunc.AggregateSum(a.SXCount), | |||
| //断栅 = SqlFunc.AggregateSum(a.DSCount), | |||
| 钢丝断裂 = SqlFunc.AggregateSum(a.GSDLCount), | |||
| 残胶堵孔 = SqlFunc.AggregateSum(a.CJDKCount), | |||
| }); | |||
| @@ -359,7 +360,8 @@ namespace Service | |||
| 划伤 = SqlFunc.AggregateSum(a.HSCount), | |||
| 压线 = SqlFunc.AggregateSum(a.YXCount), | |||
| 斜边 = SqlFunc.AggregateSum(a.XBCount), | |||
| 栅线 = SqlFunc.AggregateSum(a.SXCount), | |||
| 格栅 = SqlFunc.AggregateSum(a.SXCount), | |||
| //断栅 = SqlFunc.AggregateSum(a.DSCount), | |||
| 钢丝断裂 = SqlFunc.AggregateSum(a.GSDLCount), | |||
| 残胶堵孔 = SqlFunc.AggregateSum(a.CJDKCount), | |||
| }).ToJson(); | |||