kingno
2 天以前 bdbc8b1459c415f24c3a5da0d27a05e034f7ba08
src/Bro.M141.Process/M141Process_ImageCheck.cs
@@ -502,122 +502,122 @@
            Plc1.WriteSingleAddress(1516, 1, out _);
            if (M141Config.ISupMES && (M141Config.MESchannel == -1 || M141Config.MESchannel == 1))
            {
                if (M141Config.numpro >= 50)
                {
                    M141Config.numpro = 0;
                }
            //if (M141Config.ISupMES && (M141Config.MESchannel == -1 || M141Config.MESchannel == 1))
            //{
            //    if (M141Config.numpro >= 50)
            //    {
            //        M141Config.numpro = 0;
            //    }
                if (productList[0].Result == "OK")
                {
                    M141Config.numpro++;
                }
            //    if (productList[0].Result == "OK")
            //    {
            //        M141Config.numpro++;
            //    }
                //mqtt.demes(productList[0], M141Config.zwoid);
                string Msgreceice = Task.Run(() => mqtt.MESForProduceAsync(productList[0], M141Config.zwoid, M141Config.numpro)).Result;
                if (Msgreceice == null)
                {
                    LogAsync(DateTime.Now, EnumHelper.LogLevel.Exception, $"产品{productList[0].PID}数据上传MES异常 返回数据为null");
                }
                else
                {
                    try
                    {
                        var obj = JsonConvert.DeserializeObject<AutoLineMacBarcodeQueueBak>(Msgreceice);
            //    //mqtt.demes(productList[0], M141Config.zwoid);
            //    string Msgreceice = Task.Run(() => mqtt.MESForProduceAsync(productList[0], M141Config.zwoid, M141Config.numpro)).Result;
            //    if (Msgreceice == null)
            //    {
            //        LogAsync(DateTime.Now, EnumHelper.LogLevel.Exception, $"产品{productList[0].PID}数据上传MES异常 返回数据为null");
            //    }
            //    else
            //    {
            //        try
            //        {
            //            var obj = JsonConvert.DeserializeObject<AutoLineMacBarcodeQueueBak>(Msgreceice);
                        if (obj.zstatus == "200")
                        {
                            LogAsync(DateTime.Now, EnumHelper.LogLevel.Assist, $"产品{productList[0].PID}数据上传MES成功  {Msgreceice}");
                        }
                        else
                        {
                            LogAsync(DateTime.Now, EnumHelper.LogLevel.Exception, $"产品{productList[0].PID}数据上传MES失败  {Msgreceice}");
                        }
                    }
                    catch
                    {
                        LogAsync(DateTime.Now, EnumHelper.LogLevel.Exception, $"产品{productList[0].PID}数据上传MES异常  {Msgreceice}");
                    }
                }
            //            if (obj.zstatus == "200")
            //            {
            //                LogAsync(DateTime.Now, EnumHelper.LogLevel.Assist, $"产品{productList[0].PID}数据上传MES成功  {Msgreceice}");
            //            }
            //            else
            //            {
            //                LogAsync(DateTime.Now, EnumHelper.LogLevel.Exception, $"产品{productList[0].PID}数据上传MES失败  {Msgreceice}");
            //            }
            //        }
            //        catch
            //        {
            //            LogAsync(DateTime.Now, EnumHelper.LogLevel.Exception, $"产品{productList[0].PID}数据上传MES异常  {Msgreceice}");
            //        }
            //    }
                lock (plcnumlock)
                {
                    int differ = numplca - PlcNumForAll;
                    if (differ > 1)
                    {
                        for (int i = PlcNumForAll + 1; i < numplca; i++)
                        {
                            try
                            {
                                var plist = mysqlhelper.GetProductList(i + "_1");
                                ProductModel newp = new ProductModel();
                                newp.SEQUENCE = plist[0].SEQUENCE;
                                newp.PID = plist[0].PID;
                                newp.BasketCode = plist[0].BasketCode;
                                newp.Result = "NG";
                                newp.SN = plist[0].SN;
                                var tems = Task.Run(() => mqtt.MESForProduceAsync(newp, M141Config.zwoid, M141Config.numpro)).Result;
            //    lock (plcnumlock)
            //    {
            //        int differ = numplca - PlcNumForAll;
            //        if (differ > 1)
            //        {
            //            for (int i = PlcNumForAll + 1; i < numplca; i++)
            //            {
            //                try
            //                {
            //                    var plist = mysqlhelper.GetProductList(i + "_1");
            //                    ProductModel newp = new ProductModel();
            //                    newp.SEQUENCE = plist[0].SEQUENCE;
            //                    newp.PID = plist[0].PID;
            //                    newp.BasketCode = plist[0].BasketCode;
            //                    newp.Result = "NG";
            //                    newp.SN = plist[0].SN;
            //                    var tems = Task.Run(() => mqtt.MESForProduceAsync(newp, M141Config.zwoid, M141Config.numpro)).Result;
                            }
                            catch
                            {
            //                }
            //                catch
            //                {
                            }
                        }
                    }
                    else if (differ != -29998)
                    {
                        for (int i = PlcNumForAll + 1; i <= 29999; i++)
                        {
                            try
                            {
                                var plist = mysqlhelper.GetProductList(i + "_1");
                                ProductModel newp = new ProductModel();
                                newp.SEQUENCE = plist[0].SEQUENCE;
                                newp.PID = plist[0].PID;
                                newp.BasketCode = plist[0].BasketCode;
                                newp.Result = "NG";
                                newp.SN = plist[0].SN;
                                var tems = Task.Run(() => mqtt.MESForProduceAsync(newp, M141Config.zwoid, M141Config.numpro)).Result;
            //                }
            //            }
            //        }
            //        else if (differ != -29998)
            //        {
            //            for (int i = PlcNumForAll + 1; i <= 29999; i++)
            //            {
            //                try
            //                {
            //                    var plist = mysqlhelper.GetProductList(i + "_1");
            //                    ProductModel newp = new ProductModel();
            //                    newp.SEQUENCE = plist[0].SEQUENCE;
            //                    newp.PID = plist[0].PID;
            //                    newp.BasketCode = plist[0].BasketCode;
            //                    newp.Result = "NG";
            //                    newp.SN = plist[0].SN;
            //                    var tems = Task.Run(() => mqtt.MESForProduceAsync(newp, M141Config.zwoid, M141Config.numpro)).Result;
                            }
                            catch
                            {
            //                }
            //                catch
            //                {
                            }
                        }
            //                }
            //            }
                        for (int i = 1; i < numplca; i++)
                        {
                            try
                            {
                                var plist = mysqlhelper.GetProductList(i + "_1");
                                ProductModel newp = new ProductModel();
                                newp.SEQUENCE = plist[0].SEQUENCE;
                                newp.PID = plist[0].PID;
                                newp.BasketCode = plist[0].BasketCode;
                                newp.Result = "NG";
                                newp.SN = plist[0].SN;
                                var tems = Task.Run(() => mqtt.MESForProduceAsync(newp, M141Config.zwoid, M141Config.numpro)).Result;
            //            for (int i = 1; i < numplca; i++)
            //            {
            //                try
            //                {
            //                    var plist = mysqlhelper.GetProductList(i + "_1");
            //                    ProductModel newp = new ProductModel();
            //                    newp.SEQUENCE = plist[0].SEQUENCE;
            //                    newp.PID = plist[0].PID;
            //                    newp.BasketCode = plist[0].BasketCode;
            //                    newp.Result = "NG";
            //                    newp.SN = plist[0].SN;
            //                    var tems = Task.Run(() => mqtt.MESForProduceAsync(newp, M141Config.zwoid, M141Config.numpro)).Result;
                            }
                            catch
                            {
            //                }
            //                catch
            //                {
                            }
                        }
            //                }
            //            }
                    }
                    PlcNumForAll = numplca;
                }
            //        }
            //        PlcNumForAll = numplca;
            //    }
            }
            //}
            return msg;
        }