From ee940e0f7c7f00471976bc151319e2e2baf1062b Mon Sep 17 00:00:00 2001 From: wells.liu <wells.liu@broconcentric.com> Date: 星期三, 08 七月 2020 13:54:43 +0800 Subject: [PATCH] 数据查询功能 --- src/Bro.M071.DBManager/MeasurementUnitResultManager.cs | 57 +++++++++++++++---- src/Bro.M071.Model/Model/ProductionMeasurementRecords.cs | 2 src/Bro.M071.DBManager/ProductionMeasurementRecordsManager.cs | 34 +++++++---- src/Bro.M071.Model/Model/MeasurementUnitResult.cs | 33 ++++++++++ 4 files changed, 98 insertions(+), 28 deletions(-) diff --git a/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs b/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs index 6e7a08e..346af64 100644 --- a/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs +++ b/src/Bro.M071.DBManager/MeasurementUnitResultManager.cs @@ -29,23 +29,56 @@ { } - 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 + { + ProductionMeasurementRecord= productionMeasurementRecords, + MeasurementUnitResult= measurementUnitResult + + }; + var pageList = query.OrderBy(u => u.ProductionMeasurementRecord.OperationStartTime).ToPagedList(request); + request.TotalNum = mList.Count(); + return pageList; } } diff --git a/src/Bro.M071.DBManager/ProductionMeasurementRecordsManager.cs b/src/Bro.M071.DBManager/ProductionMeasurementRecordsManager.cs index 0551fda..1526b59 100644 --- a/src/Bro.M071.DBManager/ProductionMeasurementRecordsManager.cs +++ b/src/Bro.M071.DBManager/ProductionMeasurementRecordsManager.cs @@ -29,23 +29,31 @@ { } - public List<ProductionMeasurementRecords> GetProductionMeasurementRecords() + public List<ProductionMeasurementRecords> GetProductionMeasurementRecords(ProductionMeasurementRecordsRequest request) { using (DBModel context = new DBModel()) { - var list = context.ProductionMeasurementRecords.Where(u => u.IS_DELETED == 0); + var pList = context.ProductionMeasurementRecords.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); + } - //if (!string.IsNullOrWhiteSpace(productionBatchNO)) - //{ - // list = list.Where(u => u.ProductionBatchNO.Contains(productionBatchNO)); - //} - //if (!string.IsNullOrWhiteSpace(pid)) - //{ - // list = list.Where(u => u.PId.Contains(pid)); - //} - - var resultList = list.ToList(); - return resultList; + var pageList = pList.OrderBy(u => u.OperationStartTime).ToPagedList(request); + request.TotalNum = pList.Count(); + return pageList; } } diff --git a/src/Bro.M071.Model/Model/MeasurementUnitResult.cs b/src/Bro.M071.Model/Model/MeasurementUnitResult.cs index 955f8a0..3d39b4c 100644 --- a/src/Bro.M071.Model/Model/MeasurementUnitResult.cs +++ b/src/Bro.M071.Model/Model/MeasurementUnitResult.cs @@ -24,7 +24,7 @@ /// <summary> /// 妫�娴嬬粨鏋滅被鍨� (Slant Alignment... ) /// </summary> - [StringLength(64)] + [StringLength(64)] public string MeasurementType { get; set; } /// <summary> @@ -43,6 +43,16 @@ public class MeasurementUnitResultRequest : BaseRequest { /// <summary> + /// 浜у搧缂栫爜 + /// </summary> + public string ProductionCode { get; set; } + + /// <summary> + /// 浜у搧鏉$爜 + /// </summary> + public string ProductionBarcode { get; set; } + + /// <summary> /// 妫�娴嬪悕绉� /// </summary> public string MeasurementName { get; set; } @@ -50,7 +60,26 @@ /// <summary> /// 妫�娴嬪拰鏍囧噯绫诲瀷 /// </summary> - public string MeasureType { get; set; } + public string MeasurementType { get; set; } + + /// <summary> + /// 妫�娴嬬粨鏋� ok ng + /// </summary> + public string MeasurementResult { get; set; } + } + + public class MeasurementUnitResult_DTO + { + /// <summary> + /// 浜у搧璁板綍 + /// </summary> + public ProductionMeasurementRecords ProductionMeasurementRecord { get; set; } + + /// <summary> + /// 妫�娴嬬粨鏋� + /// </summary> + public MeasurementUnitResult MeasurementUnitResult { get; set; } + } } diff --git a/src/Bro.M071.Model/Model/ProductionMeasurementRecords.cs b/src/Bro.M071.Model/Model/ProductionMeasurementRecords.cs index ab65e8b..d8b9251 100644 --- a/src/Bro.M071.Model/Model/ProductionMeasurementRecords.cs +++ b/src/Bro.M071.Model/Model/ProductionMeasurementRecords.cs @@ -55,7 +55,7 @@ /// <summary> /// 浜у搧缁撴灉 /// </summary> - public OutputResult ProductionResult { get; set; } + public string ProductionResult { get; set; } } } -- Gitblit v1.8.0