private ReportsSettingsView CreateReportsSettingsEntity(ReportsSettings defaultReportSettings) { var dropDownsQuery = new ReportsSettingsView(); // Group By Date as default. dropDownsQuery.GroupById = defaultReportSettings?.GroupById ?? (int)Constants.ReportsGroupBy.Date; // Show all columns as default. dropDownsQuery.ShowColumnIds = defaultReportSettings?.FilterShowColumnIds == null ? new[] { (int)ReportsExportService.ShowColumnModelIds.ShowEstimatedTime, (int)ReportsExportService.ShowColumnModelIds.ShowDate, (int)ReportsExportService.ShowColumnModelIds.ShowNotes, (int)ReportsExportService.ShowColumnModelIds.ShowStartFinish } : ConvertStringToArrayOfInts(defaultReportSettings.FilterShowColumnIds); if (defaultReportSettings != null) { dropDownsQuery.DateFrom = defaultReportSettings.DateFrom; dropDownsQuery.DateTo = defaultReportSettings.DateTo; dropDownsQuery.ClientIds = ConvertStringToArrayOfNullableInts(defaultReportSettings.FilterClientIds); dropDownsQuery.ProjectIds = ConvertStringToArrayOfInts(defaultReportSettings.FilterProjectIds); dropDownsQuery.MemberIds = ConvertStringToArrayOfInts(defaultReportSettings.FilterMemberIds); dropDownsQuery.QueryName = defaultReportSettings.QueryName; dropDownsQuery.QueryId = defaultReportSettings.Id; } return(dropDownsQuery); }
private void CheckCustomQueryForThisMember(int?id, ReportsSettings reportsSettings) { if (reportsSettings == null) { throw new CoralTimeEntityNotFoundException($"There is no record for this member by id = {id}"); } }
public void SaveCustomQuery(ReportsSettingsView reportsSettingsView) { if (!IsDefaultQuery(reportsSettingsView.QueryName)) { var memberId = MemberImpersonated.Id; var reportsSettings = Uow.ReportsSettingsRepository.GetEntityFromContext_ByMemberIdQueryName(memberId, reportsSettingsView.QueryName); if (reportsSettings == null) { ResetIsCustomQueryForAllQueryThisMember(memberId); reportsSettings = new ReportsSettings().GetModel(reportsSettingsView, memberId); Uow.ReportsSettingsRepository.Insert(reportsSettings); Uow.Save(); Uow.ReportsSettingsRepository.LinkedCacheClear(); } else { throw new CoralTimeDangerException("You try to save existed custom query"); } } else { throw new CoralTimeDangerException("You try to save not custom query"); } }
public static ReportsSettings CreateModelForInsert(this ReportsSettings reportsSettings, ReportsSettingsView reportsSettingsView, int memberId) { var modelForInsert = new ReportsSettings(); MapViewToModel(modelForInsert, reportsSettingsView, memberId); return(modelForInsert); }
public WorkLogUpdater(ReportsSettings reportsSettings, IJiraApi jiraApi) { _reportsSettings = reportsSettings; _jiraApi = jiraApi; _timer = new DispatcherTimer(); _timer.Interval = TimeSpan.FromSeconds(30); _timer.Tick += CheckIfWorkShouldBeLogged; _timer.Start(); LogWorkCommand = new RelayCommand(LogWork); }
private static void MapViewToModel(ReportsSettings reportsSettings, ReportsSettingsView reportsSettingsView, int memberId) { reportsSettings.QueryName = reportsSettingsView.QueryName; reportsSettings.MemberId = memberId; reportsSettings.GroupById = reportsSettingsView.GroupById ?? (int)Constants.ReportsGroupBy.Date; reportsSettings.DateFrom = reportsSettingsView.DateFrom; reportsSettings.DateTo = reportsSettingsView.DateTo; reportsSettings.FilterProjectIds = CommonHelpers.ConvertFromArrayOfIntsToString(reportsSettingsView.ProjectIds); reportsSettings.FilterMemberIds = CommonHelpers.ConvertFromArrayOfIntsToString(reportsSettingsView.MemberIds); reportsSettings.FilterClientIds = CommonHelpers.ConvertFromArrayOfNullableIntsToString(reportsSettingsView.ClientIds); reportsSettings.FilterShowColumnIds = CommonHelpers.ConvertFromArrayOfIntsToString(reportsSettingsView.ShowColumnIds); }
public IssuesUpdatesChecker(ReportsSettings reportsSettings, IJiraApi jiraApi, JiraSessionViewModel jiraSession, IMessenger messenger) { _reportsSettings = reportsSettings; _jiraApi = jiraApi; _jiraSession = jiraSession; _messenger = messenger; SystemEvents.SessionSwitch += (sender, args) => { _isStationLocked = args.Reason == SessionSwitchReason.SessionLock; }; _timer = new DispatcherTimer(); _timer.Interval = TimeSpan.FromSeconds(30); _timer.Tick += TimerTick; _timer.Start(); }
public static ReportsSettingsView GetView(this ReportsSettings reportsSettings) { return(new ReportsSettingsView { GroupById = reportsSettings?.GroupById, ShowColumnIds = CommonHelpers.ConvertStringToArrayOfInts(reportsSettings.FilterShowColumnIds), DateStaticId = reportsSettings.DateStaticId, DateFrom = reportsSettings.DateFrom, DateTo = reportsSettings.DateTo, ClientIds = CommonHelpers.ConvertStringToArrayOfNullableInts(reportsSettings.FilterClientIds), ProjectIds = CommonHelpers.ConvertStringToArrayOfInts(reportsSettings.FilterProjectIds), MemberIds = CommonHelpers.ConvertStringToArrayOfInts(reportsSettings.FilterMemberIds), QueryName = reportsSettings.QueryName, QueryId = reportsSettings.Id, }); }
private ReportsSettingsView CreateQueryWithDefaultValues(int memberImpersonatedId) { var reportsSettingsView = new ReportsSettingsView().GetViewWithDefaultValues(); var dateStaticExtend = CreateDateStaticExtend(reportsSettingsView.DateStaticId); reportsSettingsView.DateFrom = dateStaticExtend.DateFrom; reportsSettingsView.DateTo = dateStaticExtend.DateTo; var reportsSettings = new ReportsSettings().GetModel(reportsSettingsView, memberImpersonatedId); Uow.ReportsSettingsRepository.Insert(reportsSettings); Uow.Save(); Uow.ReportsSettingsRepository.LinkedCacheClear(); reportsSettingsView = reportsSettings.GetView(); return(reportsSettingsView); }
public static ReportsSettings GetModel(this ReportsSettings reportsSettings, ReportsSettingsView reportsSettingsView, int memberId) { reportsSettings.QueryName = reportsSettingsView.QueryName; reportsSettings.MemberId = memberId; reportsSettings.IsCurrentQuery = true; reportsSettings.GroupById = reportsSettingsView.GroupById; reportsSettings.DateFrom = reportsSettingsView.DateFrom; reportsSettings.DateTo = reportsSettingsView.DateTo; reportsSettings.DateStaticId = reportsSettingsView.DateStaticId; reportsSettings.FilterProjectIds = CommonHelpers.ConvertFromArrayOfIntsToString(reportsSettingsView.ProjectIds); reportsSettings.FilterMemberIds = CommonHelpers.ConvertFromArrayOfIntsToString(reportsSettingsView.MemberIds); reportsSettings.FilterClientIds = CommonHelpers.ConvertFromArrayOfNullableIntsToString(reportsSettingsView.ClientIds); reportsSettings.FilterShowColumnIds = CommonHelpers.ConvertFromArrayOfIntsToString(reportsSettingsView.ShowColumnIds); return(reportsSettings); }
private void SetIsCurrentQueryTrue(ReportsSettings queryFromReportsSettings) { queryFromReportsSettings.IsCurrentQuery = true; }
public static ReportsSettings UpdateModelForUpdates(this ReportsSettings reportsSettings, ReportsSettingsView reportsSettingsView, int memberId) { MapViewToModel(reportsSettings, reportsSettingsView, memberId); return(reportsSettings); }