| | |
| | | using System; |
| | | using System.Collections.Concurrent; |
| | | using System.Collections.Generic; |
| | | using System.Diagnostics; |
| | | using System.Drawing.Imaging; |
| | | using System.IO; |
| | | using System.Linq; |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | lock (StatisticRecordsFull) |
| | | { |
| | | if (numsum > 20) |
| | | { |
| | | numsum = 0; |
| | | using (FileStream fileStream = new FileStream(_statisticFilePath, FileMode.OpenOrCreate, FileAccess.Write)) |
| | | { |
| | | fileStream.Seek(0L, SeekOrigin.Begin); |
| | | string s = JsonConvert.SerializeObject(StatisticRecordsFull); |
| | | byte[] bytes = Encoding.UTF8.GetBytes(s); |
| | | fileStream.Write(bytes, 0, bytes.Length); |
| | | fileStream.SetLength(bytes.Length); |
| | | fileStream.Flush(); |
| | | fileStream.Close(); |
| | | StatisticRecordsFull.SaveSummaryRecord(); |
| | | } |
| | | } |
| | | } |
| | | //lock (StatisticRecordsFull) |
| | | //{ |
| | | // if (numsum > 20) |
| | | // { |
| | | // numsum = 0; |
| | | |
| | | |
| | | // using (FileStream fileStream = new FileStream(_statisticFilePath, FileMode.OpenOrCreate, FileAccess.Write)) |
| | | // { |
| | | // fileStream.Seek(0L, SeekOrigin.Begin); |
| | | // string s = JsonConvert.SerializeObject(StatisticRecordsFull); |
| | | // byte[] bytes = Encoding.UTF8.GetBytes(s); |
| | | // fileStream.Write(bytes, 0, bytes.Length); |
| | | // fileStream.SetLength(bytes.Length); |
| | | // fileStream.Flush(); |
| | | // fileStream.Close(); |
| | | // } |
| | | // } |
| | | //} |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | #region plc |
| | | public ResponseMessage RunImageCheck_plc(IOperationConfig config) |
| | | { |
| | | |
| | | ResponseMessage msg = new ResponseMessage(); |
| | | msg.Result = 1; |
| | | List<MeasureBind> measureBinds = new List<MeasureBind>(); |
| | |
| | | } |
| | | |
| | | CheckPositionDoneAsync_plc(measureBinds[0].WorkPosition, inputSequence, config, cameraIds); |
| | | |
| | | |
| | | return msg; |
| | | |
| | | } |
| | | |
| | | |
| | |
| | | |
| | | public async Task<List<ProductModel>> CheckPositionDoneAsync_plc(string positionName, string inputSequence, IOperationConfig config, List<string> cameraIds) |
| | | { |
| | | |
| | | string triggerSource = config.TriggerSource; |
| | | return await _taskFactory.StartNew(() => |
| | | { |
| | | try |
| | | { |
| | | |
| | | string index = config.TriggerStr.Split(',')[1]; |
| | | var positionSet = M141Config.WorkPositionCollection.FirstOrDefault(u => u.PositionName == positionName); |
| | | |
| | |
| | | |
| | | if (positionSet.IsLastPosition) |
| | | { |
| | | |
| | | |
| | | //班次统计时间划分 |
| | | if (M141Config.WorkShiftList.Count == 0) |
| | | { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | //UpdateProductResultAsync(p); |
| | | |
| | | mysqlhelper.NewForAll(p, M141Config.StationCode, M141Config.defectname); |
| | | |
| | | if (M141Config.IsfinDevice) |
| | | { |
| | | |
| | | SummaryAllprodata(p); |
| | | |
| | | } |
| | | } |
| | | }); |