Commit Graph

223 Commits

Author SHA1 Message Date
b4eb179c8f implemented the CreateGroup, GetGroups, UpdateGroup, DeleteGroup methods.
updated GetUsers and GetUser to populate the User object with groups list.
modified UpdateUser to link the User to the Group items in the DB
#59
2017-03-08 16:27:31 +00:00
a047c20aea removed old getUSers method.
Added CreateGroup, GetGroups, UpdateGroup, DeleteGroup methods.
#59
2017-03-08 16:25:59 +00:00
ca5a5ca4cb Created Group object.
added Group list to User object for UI to bind to in order to show list of associated groups etc.
#59
2017-03-08 16:25:20 +00:00
a23bec7a5d added files to proj
#59
2017-03-08 16:24:20 +00:00
4a9a526e36 Add Joining table object to link users to groups.
#59
2017-03-08 16:23:57 +00:00
d2ff905afd create GroupDb object to hold group information
#59
2017-03-08 16:23:14 +00:00
fae6ca3244 Add Process.Start call to start browser on start (hardcoded to the 8800 localhost port and is for debug only) 2017-03-06 14:59:20 +00:00
d36645de2b Change FavIcon to a content resource type - from Resource. Will now copy to output dir.
#61
2017-03-06 14:58:36 +00:00
72799981b6 moved the string update sql statement to a constant with the other procedures in SQLiteProcedures
#56
2017-03-03 21:48:09 +00:00
abf8833ba6 add UI display for LastUsed property to show the LastUsed time on the UI with the UniqueId.
format the date at the same time
#56
2017-03-03 21:41:48 +00:00
d41b5c528c change SQLiteRepository to update last used property against the Identifiers in database (CardUniqueId table).
updated LogEventTime method to update the last used time in the db.
changed LogEventTime method to not store timelogs against unassigned cards.
updated GetUnassignedIdentifierList method to populate the Identifier LastUsed property.
#56
2017-03-03 21:39:31 +00:00
d55a1ed817 add LastUsed property
#56
2017-03-03 21:36:22 +00:00
0f7c4e62ad Add property LastUsed
#56
2017-03-03 21:36:02 +00:00
50e9d3d182 correct data binding for LastEventDateTime property
added method to convert the datetime to a display format.
created padNumber to ensure numbers below 10 get shown as two digits.
#53
2017-03-03 20:48:12 +00:00
b0b1fd4576 Refactor code to simplify methods. 2017-03-03 13:01:31 +00:00
7110e3e2fe add data bound tooltip to show the last event date time when hovering over the In/Out indicator
#53
2017-03-03 13:00:49 +00:00
69f3e502e0 Add LastEventDateTime property to User object
Add Code to populate the LastEventDateTime property in SQLiteRepository - getting the last TimeLogEvent datetime. will return min value if no logs available.
#53
2017-03-03 13:00:01 +00:00
a367cc1375 Merge remote-tracking branch 'origin/ChangeTimeDisplayUnits-_58' into Release0.1.5 2017-03-03 10:23:26 +00:00
bb1eeed231 reference ConfigurationHandler and update calls to get configurations.
removed ConfigMonitor.cs.
#54
2017-03-02 22:04:58 +00:00
bd54511d70 remove ConfigMonitor project.
#54
2017-03-02 22:01:46 +00:00
4a976f59f4 create ConfigurationHandler project to retrieve configuration settings from the app.config
#54
2017-03-02 22:00:25 +00:00
4e0a299fc5 changed convertToHours to split hours and decimal minutes into two parts.
calculating the minutes of the hour for display e.g.: 6.5 hours would be 6 hrs 30 mins.
#58
2017-03-02 20:26:06 +00:00
44b8012b27 try pulling ConfigMonitor into the same project to get it to work.
doesnt appear to work so parking it for now.
#54
2017-03-02 20:00:38 +00:00
a424260409 add ConfigMonitor instance to monitor the app.config for changes
#54
2017-03-01 16:52:19 +00:00
e9839fb19e reference ConfigMonitor project
#54
2017-03-01 16:51:58 +00:00
e246c2e47c Add ConfigMonitor instance to refresh/reload the config when it changes.
Added logger reference to increase logging around start/stop commands of the service.
#54
2017-03-01 16:51:44 +00:00
40d4d7b1f7 reference the ConfigMonitor project
#54
2017-03-01 16:50:38 +00:00
7501ca52fe create ConfigMonitor project to actively monitor the app.config file.
#54
2017-03-01 16:50:17 +00:00
4ca281d826 changed version number of installers to 0.1.4.0 2017-03-01 09:20:07 +00:00
68af89f17a remove unnecessary knockout binding root tag
#48 #45
2017-02-28 20:15:50 +00:00
7af17661f5 change about link to be a menu option in the top.
would be better as a menu option on the top right, rather than in with the menu top left, but I cant figure out how.
#48 #45
2017-02-27 22:09:15 +00:00
0ce9626622 added BugSubmissionEmailAddress config for gitlab bug email.
#48
2017-02-27 16:54:04 +00:00
be6a529afb Add modal 'about' dialog, databind to appDetails observable.
triggered off an about button in the navbar.
#48
2017-02-27 16:53:29 +00:00
c8c915d4e6 Added getAppDetails function to retrieve the application details object from the api.
Added getAppDetails endpoint to apiEndpoints object.
Set Homepage (users) to get the appdetails if the appDetails observable returns null.
#48
2017-02-27 16:52:41 +00:00
6f3c5931f4 created ApplicationController which returns an AppDetails object with the properties filled.
#48
2017-02-27 16:48:44 +00:00
f4e8f0a76f updated the AssemblyInfo properties to be the right version. 2017-02-27 16:47:51 +00:00
cb6c595c8c created AppDetails object
#48
2017-02-27 16:47:16 +00:00
e4724f2d3e Merge branch 'DefaultUserSorting-#52' into Release0.1.4 2017-02-27 15:17:29 +00:00
63a96e77cf Merge branch 'HomePageIndicator-#47' into Release0.1.4 2017-02-27 15:17:11 +00:00
e41f15eec8 reformat/reorder SQLiteProcedures file. 2017-02-27 15:16:23 +00:00
66def93ff1 added the order by arguments for GET_ALL_USERS_PAGINATE and GET_ALL_USERS procedures.
this will now order the users by LastName, then FirstName in alphabetical order (startint with a).
#52
2017-02-27 15:15:54 +00:00
eb1cb7a1b4 change in/out formatting to make uniform width
#47
2017-02-27 14:54:21 +00:00
e17568bdc5 update the html page to show the IN/OUT state as per the UI suggestion on the issue. Will conditionally show IN (green text)/OUT (red text) based on whether the system reports the user to be in or out.
#47
2017-02-27 10:25:31 +00:00
e4f987cc0b add GetUserState to decide whether the user is currently In or Out.
#47
2017-02-27 10:24:23 +00:00
07bcb40315 Added state to User object to support UI showing whether the user is in or out.
#47
2017-02-27 10:23:33 +00:00
978744896f add data binding and labels to display the user name on the TimeLog page.
#46
2017-02-24 22:20:58 +00:00
49235288d7 add implementation of the UserInformation property to populate it with the deftails for the given User
#46
2017-02-24 22:17:33 +00:00
0c88194db4 add new property to TimeLogList object to contain the user details - UserInformation
#46
2017-02-24 22:13:44 +00:00
6f9966e426 Merge branch 'InvestigateUnassociatedCardsGapBehaviour-_41' into Release0.1.3 2017-02-23 21:03:49 +00:00
fa38512c9a change code to only check the time log gap if the card is associated to a user.
This will ensure that multiple new users swiping their cards will definitely be added to the system.
#41
2017-02-23 21:02:37 +00:00
ded664cdd0 corrected rounding issue so that UI will always show hours/mins (3:32 hrs) to two dp.
#43
2017-02-23 20:54:46 +00:00
4025663db9 Change table column titles,
add data-binding for Contractor boolean to show a tick on the UI
#44
2017-02-23 21:38:40 +01:00
1560623460 Merge branch 'APIUI500Error-#39' into Release0.1.3 2017-02-23 17:04:07 +00:00
6e11ca0d2c Merge branch 'ChangeCardServicePort-#40' into Release0.1.3 2017-02-23 17:03:50 +00:00
09e74af168 add dispose for reader in monitor event. to prevent memory leak. 2017-02-23 17:03:14 +00:00
1be6465901 change port to default 8800
#40
2017-02-23 17:02:18 +00:00
9fa97e2fc9 added extra logging to trace blocked swipe data events.
#39
2017-02-23 16:56:10 +00:00
caa7408465 add mapping for ManuallyPostData method (housekeeping)
correct 20 minute swipe event blocker and change to 3 min.
2017-02-23 16:55:13 +00:00
71bb5b70af update ninject packages to fix 500 internal server error.
removed dependency resolver configuration line, seemed to be duplicating bindings.
#39
2017-02-23 16:54:15 +00:00
67eed43160 fix ticks property for SwipeTimeGap.
#36
2017-02-22 22:47:38 +01:00
f5513ce122 change all versions to 0.1.2.0 2017-02-22 22:31:31 +01:00
0e1e23a770 create GET_LOGS_IN_LAST_X_MINUTES procedure.
implement logs in last x minute check.
can be configured from app.config file using "SwipeTimeGap" configuration. defaults to 3 minutes if configuration is not there.
#36
2017-02-22 21:17:53 +00:00
4c18778a79 remove test error message code, plus some additional tidying, removing old comments.
plus removed unnecessary menu options.
#38
2017-02-22 20:53:10 +00:00
b8cd5792cf Set the default page size to a config value - "DefaultPageSize", defaults to 10 if the config value is missing.
#37
2017-02-22 20:43:48 +00:00
eb7736bafa add Ninject.Extensions.Xml to the installer components.
add Ninject.Extensions.Xml to the packages list for CardReaderService.
add NLogConfigFilePath configuration setting to the App.config file.
added extra logging around Ninject loading.
#34
2017-02-22 13:19:39 +00:00
dbd400dbb1 add start service on install component.
made conditional based on STARTSERVICEONINSTALL property (defaults to false).
#24
2017-02-19 21:05:52 +00:00
dd788790c0 update solution.
#23
2017-02-18 21:55:56 +00:00
3b7ac4aa4e fixup! rename Service1 to DataCenterService
#23
2017-02-18 21:43:59 +00:00
655ac4732d general updates to solutions etc. 2017-02-18 21:38:03 +00:00
693355380d added logging dlls and configs for card reader service.
#22
2017-02-18 21:37:46 +00:00
a63a4923a4 added missing ninject files.
made the starter configuration to start service on install optional, otherwise the services could fail to install.
Also added eventlog creation to the installer so it is ready to go when the service runs.
#24 #22
2017-02-18 21:35:39 +00:00
f1bf9de350 update the names of event log parameters. 2017-02-18 21:32:06 +00:00
9dc4832471 Added Ninject, configuration and default logger.
Made DefaultLogger use the eventlog rather than debug.writeline(..)
renamed service1 to CardReaderService
#22
2017-02-18 09:09:19 +00:00
1335dbddc7 Change Firewall exception name
#7
2017-02-17 13:08:23 +00:00
de4dd18790 create card reader service installer
#21
2017-02-17 13:07:53 +00:00
c81d5be73a Added the missing files from the Ninject cyclic dependency fix.
Added Firewall rule.
Moved URLACL to its own file for ease of reading.
Added auto service start back in now that the service is working correctly.
#7
2017-02-17 10:29:26 +00:00
62b3d07a96 Fixed ninject cyclic dependency deployment issue. 2017-02-16 22:17:48 +00:00
1babd514ce fixed path.combine null exception if the config doesnt exist 2017-02-16 22:16:37 +00:00
ebfced87ee fix relative file paths (file not found errors).
added razor engine to WindowsDataCenter project.
fixed odd logCount errors in spa.js/index.html
2017-02-16 17:07:48 +00:00
aca00e95ed add installer components.
#7
2017-02-16 17:06:22 +00:00
439dcc2154 sln/project file updates 2017-02-15 22:55:30 +00:00
fe7fda42a5 renamed WebApiServerHostInstaller project to DataCenterHostInstaller.
Started adding components.
#7
2017-02-15 22:53:55 +00:00
be37bb41be added nlog config to appsettings. getting annoying adding it into everything..
#9
2017-02-15 20:54:27 +00:00
7b5077ff5b fix data binding for the timelogs to the timelog table.
fixed formatting for convertToHours to correct for one decimal place minutes (less than 10).
added convertToDisplayTime method to convert the timelog timestamp to a logical format (hh:mm).
#15
2017-02-15 20:53:05 +00:00
78acd50ba6 added rounding for WeeklyTotal to 2DP
#15
2017-02-15 20:48:19 +00:00
79f5e392e9 test the databind for some of the timelog properties with the new Flattened TimeLogList object.
added convertToHours method to spa.js to enable WeeklyTotal(mins) to be converted to hours for ui.
#15
2017-02-15 16:53:06 +00:00
59e27c2991 Flatten the TimeLogsList object.
put DayOfWeek and Day into the DailyLogs object to help flatten.
changed GetTimeLogList to return List<DailyLogs>.
#15
2017-02-15 16:51:19 +00:00
8756964f0b add get user contracted hours procedure to supply the TimeLogList object HoursPerWeekMinutes property.
started databinding the timelogs page.

#15
2017-02-14 22:50:47 +00:00
8020cd3801 fixed today button not changing the selected date
#16
2017-02-14 22:22:18 +00:00
1a130b464d ignore csproj.user files.
add missing DailyLog.cs reference file to proj.
2017-02-14 21:03:02 +00:00
21f87c9558 removed braces.
added logging for when the selectedDate parameter is null (for current week).

#9
2017-02-14 17:07:07 +00:00
69aaf53bb4 Added method to calculate the daily logs.
extended TimeLogList object:
 > to group logs into days with the "DailyLogs" object
 > to calculate the WeeklyTotal hours automatically based on the TimeLogs.DailyLogs object for each day.

Created DailyLogs object:
 > holds the number of entries for a day.
 > holds the time "in"/"at work" for that day (dailytotal).

#15
2017-02-14 17:06:16 +00:00
eb1ba4157a fixed log formatting.
#9
2017-02-14 16:31:44 +00:00
a2cb93bf83 fixup! add foreach to group logs by the day of the week in which they are entered. #15 2017-02-14 14:04:03 +00:00
906ec10a5b fixed issue where GetLogDirection would return the first log of the day, not the latest in the DB.
fixed issue where clicking timepicker would return an absolute, incorrect url.
2017-02-13 22:23:21 +00:00
0b310f29f3 removed all page size, unsure how implementation will work in reality.
#11
2017-02-13 21:12:37 +00:00
36282ee355 added some logging to SQLiteRepository.
#9
2017-02-13 16:57:18 +00:00
00a6894197 added trace logging to the controller classes.
changed nlog config file to output trace logging.
#9
2017-02-13 14:07:09 +00:00
923e4473a9 formatting changes. corrected pagination options at the bottom of users page to be aligned correctly, both horizontally and vertically.
#11
2017-02-13 11:48:57 +00:00
cdac61b18d added pagination to the repository GetUser method.
added pagesixe to userlist object.
added total user count to enable PageCount to work correctly.
added GET_TOTAL_USER_COUNT and GET_ALL_USERS_PAGINATE sqlite procedures to support pagination.
updated methods in SQLiteRepository to support pagination procedures and pagination properties of UserList.
updated UsersController to support pagination parameters.
tidied html script tags.
added pagination buttons at the bottom of user page. including drop down to select PageSize
added setPageSize, goToUserPage and setPagination methods to the viewmodel.
updated other methods for sammy etc to work with pagesize and PageNumber params.
#11
2017-02-12 22:26:00 +00:00