Beispiel #1
0
        /// <summary>
        ///     Gets a new BabyDiaperRetentionEditViewModel
        /// </summary>
        /// <param name="retentionTestId">The Id of the Babydiaper retention test which will be edited</param>
        /// <returns>The BabyDiaperRetentionEditViewModel</returns>
        public BabyDiaperRetentionEditViewModel GetBabyDiapersRetentionEditViewModel(Int32 retentionTestId)
        {
            var testValue = TestBll.GetTestValue(retentionTestId);

            if (testValue.IsNull())
            {
                Logger.Error("TestValue mit id " + retentionTestId + "existiert nicht in DB!");
                return(null);
            }
            var babyDiapersTestValue = testValue.BabyDiaperTestValue;

            if (babyDiapersTestValue.IsNull())
            {
                Logger.Error("BabyDiaperRetentionTestValue mit id " + testValue.TestValueId + "existiert nicht in DB!");
                return(null);
            }
            if (babyDiapersTestValue.TestType != TestTypeBabyDiaper.Retention)
            {
                Logger.Error("Requestet test was not an BabyDiaperRetention Test. Id " + testValue.TestValueId);
                return(null);
            }
            var testSheetInfo = testValue.TestSheet;

            if (testSheetInfo.IsNull())
            {
                Logger.Error("TestBlatt mit id " + testValue.TestSheetId + "existiert nicht in DB!");
                return(null);
            }
            var notes      = testValue.TestValueNote;
            var errors     = TestBll.GetAllNoteCodes();
            var errorCodes = errors.Select(error => new ErrorCode {
                ErrorId = error.ErrorId, Name = error.ErrorCode + " - " + error.Value
            })
                             .ToList();

            if (notes.IsNull())
            {
                notes = new List <TestValueNote>();
            }
            var testNotes = notes.Select(note => new TestNote {
                Id = note.TestValueNoteId, ErrorCodeId = note.ErrorId, Message = note.Message
            })
                            .ToList();

            var viewModel = new BabyDiaperRetentionEditViewModel
            {
                TestValueId        = retentionTestId,
                TestSheetId        = testValue.TestSheetId,
                TestPerson         = testValue.LastEditedPerson,
                ProductionCode     = TestServiceHelper.CreateProductionCode(testSheetInfo),
                ProductionCodeDay  = testValue.DayInYearOfArticleCreation,
                ProductionCodeTime = babyDiapersTestValue.DiaperCreatedTime,
                DiaperWeight       = babyDiapersTestValue.WeightDiaperDry,
                WeightRetentionWet = babyDiapersTestValue.RetentionWetWeight,
                Notes     = testNotes,
                NoteCodes = errorCodes
            };

            return(viewModel);
        }
        /// <summary>
        ///     Gets the InkoRetentionEditViewModel for edit
        /// </summary>
        /// <param name="testSheetId">The Id of the test sheet where the Inko rewet test is for</param>
        /// <returns>The InkoRewetEditViewModel</returns>
        public InkoRetentionEditViewModel GetNewInkoRetentionEditViewModel(Int32 testSheetId)
        {
            var testSheet = TestBll.GetTestSheetInfo(testSheetId);

            if (testSheet.IsNull() || (testSheet.ArticleType != ArticleType.IncontinencePad))
            {
                Logger.Error("TestBlatt mit id " + testSheetId + "existiert nicht in DB!");
                return(null);
            }

            var errors     = TestBll.GetAllNoteCodes();
            var errorCodes = errors.Select(error => new ErrorCode {
                ErrorId = error.ErrorId, Name = error.ErrorCode + " - " + error.Value
            })
                             .ToList();

            var viewModel = new InkoRetentionEditViewModel
            {
                TestSheetId    = testSheetId,
                TestValueId    = -1,
                ProductionCode = TestServiceHelper.CreateProductionCode(testSheet),
                NoteCodes      = errorCodes,
                Notes          = new List <TestNote>()
            };

            var oldTestValue = testSheet.TestValues.Where(t => t.TestValueType == TestValueType.Single)
                               .ToList()
                               .LastOrDefault();

            if (oldTestValue == null)
            {
                return(viewModel);
            }
            viewModel.TestPerson         = oldTestValue.LastEditedPerson;
            viewModel.ProductionCodeDay  = oldTestValue.DayInYearOfArticleCreation;
            viewModel.ProductionCodeTime = oldTestValue.IncontinencePadTestValue.IncontinencePadTime;
            viewModel.ExpireMonth        = oldTestValue.IncontinencePadTestValue.ExpireMonth;
            viewModel.ExpireYear         = oldTestValue.IncontinencePadTestValue.ExpireYear;

            return(viewModel);
        }
        /// <summary>
        ///     Gets the BabyDiaperRewetEditViewModel for edit
        /// </summary>
        /// <param name="testSheetId">The Id of the test sheet where the Babydiaper rewet test is for</param>
        /// <returns>The BabyDiaperRewetEditViewModel</returns>
        public BabyDiaperRewetEditViewModel GetNewBabyDiaperRewetEditViewModel(Int32 testSheetId)
        {
            var testSheetInfo = TestBll.GetTestSheetInfo(testSheetId);

            if (testSheetInfo.IsNull())
            {
                Logger.Error("TestBlatt mit id " + testSheetId + "existiert nicht in DB!");
                return(null);
            }

            var errors     = TestBll.GetAllNoteCodes();
            var errorCodes = errors.Select(error => new ErrorCode {
                ErrorId = error.ErrorId, Name = error.ErrorCode + " - " + error.Value
            })
                             .ToList();
            var viewModel = new BabyDiaperRewetEditViewModel
            {
                TestSheetId    = testSheetId,
                TestValueId    = -1,
                ProductionCode = TestServiceHelper.CreateProductionCode(testSheetInfo),
                NoteCodes      = errorCodes,
                Notes          = new List <TestNote>()
            };

            var oldTestValue = testSheetInfo.TestValues.Where(t => t.TestValueType == TestValueType.Single)
                               .ToList()
                               .LastOrDefault();

            if (oldTestValue == null)
            {
                return(viewModel);
            }
            viewModel.TestPerson         = oldTestValue.LastEditedPerson;
            viewModel.ProductionCodeDay  = oldTestValue.DayInYearOfArticleCreation;
            viewModel.ProductionCodeTime = oldTestValue.BabyDiaperTestValue.DiaperCreatedTime;

            return(viewModel);
        }
        /// <summary>
        ///     Gets a new InkoRetentionEditViewModel
        /// </summary>
        /// <param name="rewetTestId">The Id of the Inko rewet test which will be edited</param>
        /// <returns>The InkoRewetEditViewModel</returns>
        public InkoRetentionEditViewModel GetInkoRetentionEditViewModel(Int32 rewetTestId)
        {
            var testValue = TestBll.GetTestValue(rewetTestId);

            if (testValue.IsNull())
            {
                Logger.Error("TestValue mit id " + rewetTestId + "existiert nicht in DB!");
                return(null);
            }
            var incontinencePadTestValue = testValue.IncontinencePadTestValue;

            if (incontinencePadTestValue.IsNull())
            {
                Logger.Error("IncontinencePadTestValue mit id " + testValue.TestValueId + "existiert nicht in DB!");
                return(null);
            }
            if (incontinencePadTestValue.TestType != TestTypeIncontinencePad.Retention)
            {
                Logger.Error("Requestet test was not an InkoRewet Test. Id " + testValue.TestValueId);
                return(null);
            }
            var testSheet = testValue.TestSheet;

            if (testSheet.IsNull())
            {
                Logger.Error("TestBlatt mit id " + testValue.TestSheetId + "existiert nicht in DB!");
                return(null);
            }
            var notes      = testValue.TestValueNote;
            var errors     = TestBll.GetAllNoteCodes();
            var errorCodes = errors.Select(error => new ErrorCode {
                ErrorId = error.ErrorId, Name = error.ErrorCode + " - " + error.Value
            })
                             .ToList();

            if (notes.IsNull())
            {
                notes = new List <TestValueNote>();
            }
            var testNotes = notes.Select(note => new TestNote {
                Id = note.TestValueNoteId, ErrorCodeId = note.ErrorId, Message = note.Message
            })
                            .ToList();

            var viewModel = new InkoRetentionEditViewModel
            {
                TestValueId               = rewetTestId,
                TestSheetId               = testValue.TestSheetId,
                TestPerson                = testValue.LastEditedPerson,
                ProductionCode            = TestServiceHelper.CreateProductionCode(testSheet),
                ProductionCodeDay         = testValue.DayInYearOfArticleCreation,
                ProductionCodeTime        = incontinencePadTestValue.IncontinencePadTime,
                ExpireMonth               = incontinencePadTestValue.ExpireMonth,
                ExpireYear                = incontinencePadTestValue.ExpireYear,
                InkoWeight                = incontinencePadTestValue.RetentionWeight,
                InkoWeightWet             = incontinencePadTestValue.RetentionWetValue,
                InkoWeightAfterZentrifuge = incontinencePadTestValue.RetentionAfterZentrifuge,
                Notes     = testNotes,
                NoteCodes = errorCodes
            };

            return(viewModel);
        }
        /// <summary>
        ///     Gets a new BabyDiaperRewetEditViewModel or returns null if something is wrong
        /// </summary>
        /// <param name="rewetTestId">The Id of the Babydiaper rewet test which will be edited</param>
        /// <returns>The BabyDiaperRewetEditViewModel</returns>
        public BabyDiaperRewetEditViewModel GetBabyDiaperRewetEditViewModel(Int32 rewetTestId)
        {
            var testValue = TestBll.GetTestValue(rewetTestId);

            if (testValue.IsNull())
            {
                Logger.Error("TestValue mit id " + rewetTestId + "existiert nicht in DB!");
                return(null);
            }
            var babyDiapersTestValue = testValue.BabyDiaperTestValue;

            if (babyDiapersTestValue.IsNull())
            {
                Logger.Error("BabyDiaperRetentionTestValue mit id " + testValue.TestValueId + "existiert nicht in DB!");
                return(null);
            }
            if ((babyDiapersTestValue.TestType != TestTypeBabyDiaper.Rewet) && (babyDiapersTestValue.TestType != TestTypeBabyDiaper.RewetAndPenetrationTime))
            {
                Logger.Error("Requestet test was not an BabyDiaperRetention Test. Id " + testValue.TestValueId);
                return(null);
            }
            var testSheetInfo = testValue.TestSheet;

            if (testSheetInfo.IsNull())
            {
                Logger.Error("TestBlatt mit id " + testValue.TestSheetId + "existiert nicht in DB!");
                return(null);
            }
            var notes      = testValue.TestValueNote;
            var errors     = TestBll.GetAllNoteCodes();
            var errorCodes = errors.Select(error => new ErrorCode {
                ErrorId = error.ErrorId, Name = error.ErrorCode + " - " + error.Value
            })
                             .ToList();

            if (notes.IsNull())
            {
                notes = new List <TestValueNote>();
            }
            var testNotes = notes.Select(note => new TestNote {
                Id = note.TestValueNoteId, ErrorCodeId = note.ErrorId, Message = note.Message
            })
                            .ToList();

            var viewModel = new BabyDiaperRewetEditViewModel
            {
                TestValueId        = rewetTestId,
                TestSheetId        = testValue.TestSheetId,
                TestPerson         = testValue.LastEditedPerson,
                ProductionCode     = TestServiceHelper.CreateProductionCode(testSheetInfo),
                ProductionCodeDay  = testValue.DayInYearOfArticleCreation,
                ProductionCodeTime = babyDiapersTestValue.DiaperCreatedTime,
                DiaperWeight       = babyDiapersTestValue.WeightDiaperDry,
                RewetAfter140      = babyDiapersTestValue.Rewet140Value,
                RewetAfter210      = babyDiapersTestValue.Rewet210Value,
                StrikeThrough      = babyDiapersTestValue.StrikeTroughValue,
                Distribution       = babyDiapersTestValue.DistributionOfTheStrikeTrough,
                PenetrationTime1   = babyDiapersTestValue.PenetrationTimeAdditionFirst,
                PenetrationTime2   = babyDiapersTestValue.PenetrationTimeAdditionSecond,
                PenetrationTime3   = babyDiapersTestValue.PenetrationTimeAdditionThird,
                PenetrationTime4   = babyDiapersTestValue.PenetrationTimeAdditionFourth,
                TestType           = babyDiapersTestValue.TestType,
                Notes     = testNotes,
                NoteCodes = errorCodes
            };

            return(viewModel);
        }