| | |
| | | using 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; |
| | |
| | | { |
| | | public class MeasurementUnitResultManager : ModelManager<MeasurementUnitResult> |
| | | { |
| | | DbProviderFactory Dbfactory = SQLiteFactory.Instance; |
| | | //DbProviderFactory Dbfactory = SQLiteFactory.Instance; |
| | | protected override void ActionBeforeNewModel(DBModel context, MeasurementUnitResult config) |
| | | { |
| | | CheckProductionCodeDuplicate(context, config); |
| | |
| | | { |
| | | } |
| | | |
| | | 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 |