schangxiang@126.com
2024-09-05 16e188758b164ed959090dd5149d109b7a9adb92
10和40  上线逻辑回退
已修改4个文件
156 ■■■■ 文件已修改
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/SystemValue.cs 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP1002.cs 56 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP1003.cs 72 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/SystemValue.cs
@@ -47,7 +47,7 @@
        public static void PLCServiceReconnect(PLCService plcService)
        {
            if(plcService==null)
            if (plcService == null)
            {
                return;
            }
@@ -78,16 +78,17 @@
        public static char PLCDBADDRESS_SEPARATE = '|';
        public static List<ThreadStatusMonitor> MainList=new List<ThreadStatusMonitor>();
        public static List<ThreadStatusMonitor> MainList = new List<ThreadStatusMonitor>();
        private static object lockMainList = new object();
        public static async void UpdateMainList(ThreadStatusMonitor threadinfo)
        {
            await Task.Run(() => {
            await Task.Run(() =>
            {
                lock (lockMainList)
                {
                    var info = MainList.Where(o => o.Threadcode == threadinfo.Threadcode).FirstOrDefault();
                    if(info == null)
                    if (info == null)
                    {
                        MainList.Add(threadinfo);
                    }
@@ -96,7 +97,7 @@
                        DateTime time = DateTime.Now;
                        info.Remarks = threadinfo.Remarks;
                        info.Threadendtime = time;//每次都更新
                        info.Threadlastmodifytime = threadinfo.Threadlastmodifytime>DateTime.MinValue? threadinfo.Threadlastmodifytime: info.Threadlastmodifytime;//如果有传参则更新
                        info.Threadlastmodifytime = threadinfo.Threadlastmodifytime > DateTime.MinValue ? threadinfo.Threadlastmodifytime : info.Threadlastmodifytime;//如果有传参则更新
                        info.ThreadId = threadinfo.ThreadId;
                        info.ThreadFrequency = threadinfo.ThreadFrequency;
                        info.UpdatedTime = time;
@@ -143,10 +144,11 @@
        /// <summary>
        /// 是否允许执行监控OP05工序打码完成标记线程
        /// </summary>
        public static bool isAllowRuning_OP0501
        {
            get { return _isAllowRuning_OP0501; }
            set {
        public static bool isAllowRuning_OP0501
        {
            get { return _isAllowRuning_OP0501; }
            set
            {
                lock (lockOP0501Runing)
                {
                    _isAllowRuning_OP0501 = value;
@@ -446,11 +448,11 @@
        /// <summary>
        /// OP10工序测试完成标记值
        /// </summary>
        public static string value_OP1002 = "FALSE";//注意:默认是FALSE 【Editby shaocx,2024-09-05】
        public static string value_OP1002 = string.Empty;//注意:默认是FALSE 【Editby shaocx,2024-09-05】
        /// <summary>
        /// OP10工序推出标记值
        /// </summary>
        public static string value_OP1003 = "FALSE";//注意:默认是FALSE 【Editby shaocx,2024-09-05】
        public static string value_OP1003 = string.Empty;//注意:默认是FALSE 【Editby shaocx,2024-09-05】
        /// <summary>
        /// OP10工序SPC推出标记值
        /// </summary>
@@ -1064,7 +1066,7 @@
                }
            }
        }
        private static object lockOP3501Alert = new object();
        private static object lockOP3502Alert = new object();
        private static object lockOP3503Alert = new object();
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/BLL/WorkPieceInfoManager.cs
@@ -983,7 +983,7 @@
                        cur_db_info = db.WorkPieceInfo.Where(o => o.WorkPieceID == loginfo.WorkPieceID).FirstOrDefault();
                        if (cur_db_info == null || cur_db_info.WorkPieceID.Length < 1)
                        {//没有工件信息,不做更新
                            Log4NetHelper.WriteErrorLog(type, $"工件{loginfo.WorkPieceID} 工件推出工序{loginfo.WorkingProcedure} 没有获取到工件信息不做更新");
                            Log4NetHelper.WriteErrorLog(type, $"工件{loginfo.WorkPieceID} 工件推出NOOK工序{loginfo.WorkingProcedure} 没有获取到工件信息不做更新");
                            return;
                        }
                        else
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP1002.cs
@@ -143,46 +143,46 @@
                                //监控上线
                                MonitorHelper.MonitorTestForLine(_dataCaptureConfig, value, colConfig, wplog.WorkPieceID);
                            }
                            if (wplog != null)
                            {
                                var isRight = SystemBussinessHelper.ValidateIsRightWorkPieceID(wplog.WorkPieceID);
                                if (isRight)
                                {
                                    #region 业务处理
                            //if (wplog != null)
                            //{
                            //    var isRight = SystemBussinessHelper.ValidateIsRightWorkPieceID(wplog.WorkPieceID);
                            //    if (isRight)
                            //    {
                            #region 业务处理
                                    if (SystemValue.value_OP1002.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE"))
                                    {//当上一标记位0,当前获取标记为1时,
                                     //触发操作,  并给静态变量赋值为1
                                     //业务代码
                                        Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序测标记读取{DateTime.Now}***1****");
                            if (SystemValue.value_OP1002.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE"))
                            {//当上一标记位0,当前获取标记为1时,
                             //触发操作,  并给静态变量赋值为1
                             //业务代码
                                Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序测标记读取{DateTime.Now}***1****");
                                        //#region 工控机读取质量信息
                                //#region 工控机读取质量信息
                                        ////扫描共享目录并将新的文件扫描返回
                                        //var newFiles = FileHelper.DetectNewFilesCSV("", 10, DateTimeHelper.GetDateTime(), DateTimeHelper.GetDateTime());
                                        //foreach (System.IO.FileInfo file in newFiles)
                                        //{
                                        //    var datatable = CSVHelper.ReadCSV(file.FullName);
                                        //}
                                ////扫描共享目录并将新的文件扫描返回
                                //var newFiles = FileHelper.DetectNewFilesCSV("", 10, DateTimeHelper.GetDateTime(), DateTimeHelper.GetDateTime());
                                //foreach (System.IO.FileInfo file in newFiles)
                                //{
                                //    var datatable = CSVHelper.ReadCSV(file.FullName);
                                //}
                                        //#endregion
                                        Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序测标记读取{DateTime.Now}***3****");
                                //#endregion
                                Log4NetHelper.WriteInfoLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序测标记读取{DateTime.Now}***3****");
                                        //更新WorkPieceInfo表以及插入WorkPieceLog表和WorkPieceInfoLog表
                                        WorkPieceInfoManager.QualityInfoComplete(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
                                        threadStatusMonitor.Threadstatue = 1;
                                //更新WorkPieceInfo表以及插入WorkPieceLog表和WorkPieceInfoLog表
                                WorkPieceInfoManager.QualityInfoComplete(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
                                threadStatusMonitor.Threadstatue = 1;
                                    }
                                    SystemValue.value_OP1002 = value.ToString();
                                    #endregion
                                }
                            }
                            SystemValue.value_OP1002 = value.ToString();
                            #endregion
                            //    }
                            //}
                        }
                        SystemValue.lbl_Alert_OP1002 = $"abcdefg:{RandomHelper.GenerateRandomCode(4)}";
DataCapture/iWare_SCADA_DataCapture/iWare_SCADA_BusinessLogical/DataCaptureHandlerV2/Special/DataCaptureHandler_OP1003.cs
@@ -138,46 +138,46 @@
                                //监控上线
                                MonitorHelper.MonitorTestForLine(_dataCaptureConfig, value, colConfig, wplog.WorkPieceID);
                            }
                            if (wplog != null)
                            {
                                var isRight = SystemBussinessHelper.ValidateIsRightWorkPieceID(wplog.WorkPieceID);
                                if (isRight)
                                {
                                    #region 业务处理
                            //if (wplog != null)
                            //{
                            //    var isRight = SystemBussinessHelper.ValidateIsRightWorkPieceID(wplog.WorkPieceID);
                            //    if (isRight)
                            //    {
                            #region 业务处理
                                    if (SystemValue.value_OP1003.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE"))
                                    {//当上一标记位0,当前获取标记为1时,
                                     //触发操作,  并给静态变量赋值为1
                                     //业务代码
                            if (SystemValue.value_OP1003.ToUpper().Equals("FALSE") && value.ToString().ToUpper().Equals("TRUE"))
                            {//当上一标记位0,当前获取标记为1时,
                             //触发操作,  并给静态变量赋值为1
                             //业务代码
                                        if (wplog.WorkPieceID.Length != 22)
                                        {//获取到的工件号异常
                                            Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序监控读码标记 读取工件码数据时异常:");
                                            continue;
                                        }
                                        //#region 工控机读取质量信息
                                        ////扫描共享目录并将新的文件扫描返回
                                        //var newFiles = FileHelper.DetectNewFilesCSV("", 10, DateTimeHelper.GetDateTime(), DateTimeHelper.GetDateTime());
                                        //foreach (System.IO.FileInfo file in newFiles)
                                        //{
                                        //    var datatable = CSVHelper.ReadCSV(file.FullName);
                                        //}
                                        //#endregion
                                        //更新WorkPieceInfo表以及插入WorkPieceLog表和WorkPieceInfoLog表
                                        WorkPieceInfoManager.QualityInfoComplete(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
                                        threadStatusMonitor.Threadstatue = 1;
                                    }
                                    SystemValue.value_OP1003 = value.ToString();
                                    #endregion
                                if (wplog.WorkPieceID.Length != 22)
                                {//获取到的工件号异常
                                    Log4NetHelper.WriteErrorLog(PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure), $" {DataCapturePointCode}工序监控读码标记 读取工件码数据时异常:");
                                    continue;
                                }
                                //#region 工控机读取质量信息
                                ////扫描共享目录并将新的文件扫描返回
                                //var newFiles = FileHelper.DetectNewFilesCSV("", 10, DateTimeHelper.GetDateTime(), DateTimeHelper.GetDateTime());
                                //foreach (System.IO.FileInfo file in newFiles)
                                //{
                                //    var datatable = CSVHelper.ReadCSV(file.FullName);
                                //}
                                //#endregion
                                //更新WorkPieceInfo表以及插入WorkPieceLog表和WorkPieceInfoLog表
                                WorkPieceInfoManager.QualityInfoComplete(wplog, PLCManger.GetLogTypeForWorkingProcedure(WorkingProcedure));
                                threadStatusMonitor.Threadstatue = 1;
                            }
                            SystemValue.value_OP1003 = value.ToString();
                            #endregion
                            //    }
                            //}
                        }
                        SystemValue.lbl_Alert_OP1003 = $"abcdefg:{RandomHelper.GenerateRandomCode(4)}";