From 78584911d0457ad9fc26d9dfc6f374b7ef531c0f Mon Sep 17 00:00:00 2001 From: xcd <834800634@qq.com> Date: 星期日, 22 十一月 2020 13:45:09 +0800 Subject: [PATCH] 1. 添加操作员输入和界面显示 2. 添加通过输入窗体 3. 添加webservice调用帮助类 4. M071添加MES数据检查和数据上传功能,添加相关界面显示和流程控制 --- src/Bro.M071.DBManager/MeasurementUnitResultManager.cs | 148 +++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 135 insertions(+), 13 deletions(-) diff --git a/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs b/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs index 6e7a08e..29a5303 100644 --- a/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs +++ b/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs @@ -1,6 +1,7 @@ 锘縰sing Bro.Common.Helper; using Bro.M071.Model; using Bro.M071.Model.Model; +using OfficeOpenXml.FormulaParsing.Excel.Functions.Math; using System; using System.Collections; using System.Collections.Generic; @@ -14,7 +15,7 @@ { public class MeasurementUnitResultManager : ModelManager<MeasurementUnitResult> { - DbProviderFactory Dbfactory = SQLiteFactory.Instance; + //DbProviderFactory Dbfactory = SQLiteFactory.Instance; protected override void ActionBeforeNewModel(DBModel context, MeasurementUnitResult config) { CheckProductionCodeDuplicate(context, config); @@ -29,26 +30,147 @@ { } - public List<MeasurementUnitResult> GetMeasurementUnitResult() + public List<MeasurementUnitResult_DTO> GetMeasurementUnitResult(MeasurementUnitResultRequest request) { using (DBModel context = new DBModel()) { - var list = context.MeasurementUnitResult.Where(u => u.IS_DELETED == 0); + var mList = context.MeasurementUnitResult.Where(u => u.IS_DELETED == 0); + var pList = context.ProductionMeasurementRecords.Where(u => u.IS_DELETED == 0); - //if (!string.IsNullOrWhiteSpace(productionBatchNO)) - //{ - // list = list.Where(u => u.ProductionBatchNO.Contains(productionBatchNO)); - //} - //if (!string.IsNullOrWhiteSpace(pid)) - //{ - // list = list.Where(u => u.PId.Contains(pid)); - //} + if (!string.IsNullOrWhiteSpace(request.ProductionBarcode)) + { + pList = pList.Where(u => u.ProductionBarcode.Contains(request.ProductionBarcode)); + } + if (!string.IsNullOrWhiteSpace(request.ProductionCode)) + { + pList = pList.Where(u => u.ProductionCode.Contains(request.ProductionCode)); + } + if (request.StartTime != null) + { + pList = pList.Where(u => u.OperationStartTime >= request.StartTime); + } + if (request.EndTime != null) + { + pList = pList.Where(u => u.OperationStartTime <= request.EndTime); + } + //mList + if (!string.IsNullOrWhiteSpace(request.MeasurementName)) + { + mList = mList.Where(u => u.MeasurementName.Contains(request.MeasurementName)); + } + if (!string.IsNullOrWhiteSpace(request.MeasurementResult)) + { + mList = mList.Where(u => u.MeasurementResult == request.MeasurementResult); + } + if (!string.IsNullOrWhiteSpace(request.MeasurementType)) + { + mList = mList.Where(u => u.MeasurementType == request.MeasurementType); + } - var resultList = list.ToList(); - return resultList; + var query = from productionMeasurementRecords in pList + join measurementUnitResult in mList + on productionMeasurementRecords.ID equals measurementUnitResult.ProductionMeasurementRecordsId + //into pmList + select new MeasurementUnitResult_DTO + { + ProductionCode = productionMeasurementRecords.ProductionCode, + ProductionBarcode = productionMeasurementRecords.ProductionBarcode, + ProductionMeasurementRecordsId = productionMeasurementRecords.ID, + OperationStartTime = productionMeasurementRecords.OperationStartTime, + OperationEndTime = productionMeasurementRecords.OperationEndTime, + + Id = measurementUnitResult.ID, + MeasurementName = measurementUnitResult.MeasurementName, + MeasurementType = measurementUnitResult.MeasurementType, + MeasurementValue = measurementUnitResult.MeasurementValue, + MeasurementResult = measurementUnitResult.MeasurementResult + }; + var pageList = query.OrderBy(u => u.OperationStartTime).ToPagedList(request); + request.TotalNum = mList.Count(); + return pageList; } } + + public ProductionMeasurementUnitResultExportDataSet GetProductionMeasurementUnitResultExportDataSet(MeasurementUnitResultRequest request) + { + ProductionMeasurementUnitResultExportDataSet productionMeasurementUnitResultExportDataSet = new ProductionMeasurementUnitResultExportDataSet(); + using (DBModel context = new DBModel()) + { + var mList = context.MeasurementUnitResult.Where(u => u.IS_DELETED == 0); + var pList = context.ProductionMeasurementRecords.Where(u => u.IS_DELETED == 0); + var kList = context.KeyUnitData.Where(u => u.IS_DELETED == 0); + + if (!string.IsNullOrWhiteSpace(request.ProductionBarcode)) + { + pList = pList.Where(u => u.ProductionBarcode.Contains(request.ProductionBarcode)); + } + if (!string.IsNullOrWhiteSpace(request.ProductionCode)) + { + pList = pList.Where(u => u.ProductionCode.Contains(request.ProductionCode)); + } + if (request.StartTime != null) + { + pList = pList.Where(u => u.OperationStartTime >= request.StartTime); + } + if (request.EndTime != null) + { + pList = pList.Where(u => u.OperationStartTime <= request.EndTime); + } + + //mList + if (!string.IsNullOrWhiteSpace(request.MeasurementName)) + { + mList = mList.Where(u => u.MeasurementName.Contains(request.MeasurementName)); + } + if (!string.IsNullOrWhiteSpace(request.MeasurementResult)) + { + mList = mList.Where(u => u.MeasurementResult == request.MeasurementResult); + } + if (!string.IsNullOrWhiteSpace(request.MeasurementType)) + { + mList = mList.Where(u => u.MeasurementType == request.MeasurementType); + } + + productionMeasurementUnitResultExportDataSet.ProductionMeasurementRecordList = pList.ToList(); + var measurementUnitResults = from productionMeasurementRecords in pList + join measurementUnitResult in mList on productionMeasurementRecords.ID equals measurementUnitResult.ProductionMeasurementRecordsId + select new MeasurementUnitResult_DTO + { + ProductionCode = productionMeasurementRecords.ProductionCode, + ProductionBarcode = productionMeasurementRecords.ProductionBarcode, + ProductionMeasurementRecordsId = productionMeasurementRecords.ID, + OperationStartTime = productionMeasurementRecords.OperationStartTime, + OperationEndTime = productionMeasurementRecords.OperationEndTime, + + Id = measurementUnitResult.ID, + MeasurementName = measurementUnitResult.MeasurementName, + MeasurementType = measurementUnitResult.MeasurementType, + MeasurementValue = measurementUnitResult.MeasurementValue, + MeasurementResult = measurementUnitResult.MeasurementResult + }; + + productionMeasurementUnitResultExportDataSet.MeasurementUnitResultList = measurementUnitResults.ToList(); + + var keyUnitDataQuery = from productionMeasurementRecords in pList + join keyUnitData in kList on productionMeasurementRecords.ID equals + keyUnitData.ProductionMeasurementRecordsId + select new KeyUnitData_DTO + { + ProductionCode = productionMeasurementRecords.ProductionCode, + ProductionBarcode = productionMeasurementRecords.ProductionBarcode, + ProductionMeasurementRecordsId = productionMeasurementRecords.ID, + + Id = keyUnitData.ID, + Key = keyUnitData.Key, + MeasurementItem = keyUnitData.MeasurementItem, + ItemValue = keyUnitData.ItemValue, + }; + productionMeasurementUnitResultExportDataSet.KeyUnitDataList = keyUnitDataQuery.ToList(); + + return productionMeasurementUnitResultExportDataSet; + } + } public void BatchAddMeasurementUnitResult(List<MeasurementUnitResult> records) { try -- Gitblit v1.8.0