예제 #1
0
 public HttpResponseMessage SaveUserDefaultSolutionDetail(UserDefaultSolutionSetupDto userDefaultSolutionSetupDto)
 {
     return(CreateHttpResponse(() =>
     {
         return Request.CreateResponse(_projectSolutionProcessor.SaveUserDefaultSolutionSetup(userDefaultSolutionSetupDto, UserID, UserName));
     }));
 }
        public void SaveUserDefaultSolutionSetup_UpdateSuccessfully(string userId, int Id, string userName)
        {
            _userDefaultSolutionSetupRepository.GetAll(u => !u.IsGlobalDefaults && u.UserID == userId).ReturnsForAnyArgs(SolutionSetupList(true));

            var UpdatedUserDefaultSolutionSetup = new UserDefaultSolutionSetup
            {
                ID     = Id,
                UserID = userId,
            };

            var userDefaultSolutionSetupDto = new UserDefaultSolutionSetupDto
            {
                AmbientTemperatureID = 6,
                ElevationID          = 2,
                VoltagePhaseID       = 2,
                FrequencyID          = 2,
                VoltageNominalID     = 23,
                VoltageSpecificID    = 148,
                UnitsID             = 1,
                MaxRunningLoadID    = 7,
                VoltageDipID        = 16,
                VoltageDipUnitsID   = 1,
                FrequencyDipID      = 1,
                FrequencyDipUnitsID = 1,
                ContinuousAllowableVoltageDistortionID = 4,
                MomentaryAllowableVoltageDistortionID  = 4,
                EngineDutyID                 = 1,
                FuelTypeID                   = 6,
                SolutionApplicationID        = 1,
                EnclosureTypeID              = 3,
                DesiredSoundID               = 7,
                FuelTankID                   = 2,
                DesiredRunTimeID             = 4,
                LoadSequenceCyclic1ID        = 14,
                LoadSequenceCyclic2ID        = 14,
                SelectedRegulatoryFilterList = new List <RegulatoryFilterDto> {
                    new RegulatoryFilterDto {
                        Id = 1,
                    }
                }
            };

            _userDefaultSolutionSetupRepository.GetSingle(
                u => !u.IsGlobalDefaults && u.UserID == userId).ReturnsForAnyArgs(SolutionSetupList(true).FirstOrDefault(x => x.ID == UpdatedUserDefaultSolutionSetup.ID));

            _userDefaultSolutionSetupRepository.Update(Arg.Any <UserDefaultSolutionSetup>()).Returns(UpdatedUserDefaultSolutionSetup);

            var actualResult = _projectSolutionProcessor.SaveUserDefaultSolutionSetup(userDefaultSolutionSetupDto, userId, userName);

            Assert.AreEqual(true, actualResult);
        }
        /// <summary>
        /// Save User Default Solution Setup details
        /// </summary>
        /// <param name="userDefaultSolutionSetupDto"></param>
        /// <param name="userID"></param>
        /// <param name="userName"></param>
        /// <returns></returns>
        public Boolean SaveUserDefaultSolutionSetup(UserDefaultSolutionSetupDto userDefaultSolutionSetupDto, string userID, string userName)
        {
            var userDefaultSetupCount = _userDefaultSolutionSetupRepository.GetAll(u => !u.IsGlobalDefaults && u.UserID == userID).Count();

            if (userDefaultSetupCount == 0)
            {
                var newUserDefaultSolutionSetup = _userDefaultSolutionSetupDtoToUserDefaultSolutionSetupEntityMapper.AddMap(userDefaultSolutionSetupDto);

                newUserDefaultSolutionSetup.UserID           = userID;
                newUserDefaultSolutionSetup.CreatedDateTime  = DateTime.UtcNow;
                newUserDefaultSolutionSetup.CreatedBy        = userName;
                newUserDefaultSolutionSetup.ModifiedDateTime = DateTime.UtcNow;
                newUserDefaultSolutionSetup.ModifiedBy       = userName;
                newUserDefaultSolutionSetup.RegulatoryFilter = string.Join(";",
                                                                           userDefaultSolutionSetupDto.SelectedRegulatoryFilterList.Select(x => x.Id + ":" + x.ItemName + ":" + x.LanguageKey).ToArray());

                var newAddResult = _userDefaultSolutionSetupRepository.Add(newUserDefaultSolutionSetup);
                _userDefaultSolutionSetupRepository.Commit();

                return(true);
            }

            var userDefaultSolutionSetup = _userDefaultSolutionSetupRepository.GetSingle(u => !u.IsGlobalDefaults && u.UserID == userID);

            _userDefaultSolutionSetupDtoToUserDefaultSolutionSetupEntityMapper.UpdateMap(userDefaultSolutionSetupDto, userDefaultSolutionSetup);

            userDefaultSolutionSetup.ModifiedDateTime = DateTime.UtcNow;
            userDefaultSolutionSetup.ModifiedBy       = userName;
            userDefaultSolutionSetup.RegulatoryFilter = string.Join(";",
                                                                    userDefaultSolutionSetupDto.SelectedRegulatoryFilterList.Select(x => x.Id + ":" + x.ItemName + ":" + x.LanguageKey).ToArray());

            var result = _userDefaultSolutionSetupRepository.Update(userDefaultSolutionSetup);

            _userDefaultSolutionSetupRepository.Commit();

            return(true);
        }