commit
5f91c1afce
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
[assembly: AssemblyVersion("0.1.2.0")]
|
||||
[assembly: AssemblyFileVersion("0.1.2.0")]
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<Product Id="{DA4797C8-E60E-499F-95A3-B7BD9D19D6DA}"
|
||||
Name="CardReaderServiceInstaller"
|
||||
Language="1033"
|
||||
Version="1.0.0.0"
|
||||
Version="0.1.2.0"
|
||||
Manufacturer="ChrisWatts"
|
||||
UpgradeCode="3b61e4ae-d717-4c95-9ce5-a53a1c180bf6">
|
||||
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
|
||||
|
||||
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
[assembly: AssemblyVersion("0.1.2.0")]
|
||||
[assembly: AssemblyFileVersion("0.1.2.0")]
|
||||
|
||||
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
[assembly: AssemblyVersion("0.1.2.0")]
|
||||
[assembly: AssemblyFileVersion("0.1.2.0")]
|
||||
|
||||
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
[assembly: AssemblyVersion("0.1.2.0")]
|
||||
[assembly: AssemblyFileVersion("0.1.2.0")]
|
||||
|
||||
@ -2,6 +2,7 @@ namespace SQLiteRepository
|
||||
{
|
||||
internal static class SQLiteProcedures
|
||||
{
|
||||
public const string GET_LOGS_IN_LAST_X_MINUTES= "select * from TimeLogDb where "+nameof(TimeLogDb.SwipeEventDateTime)+" > ? AND "+nameof(TimeLogDb.UserId_FK)+"=?";
|
||||
public const string GET_TIMELOGS = "select * from "+nameof(TimeLogDb)+ " where (" + nameof(TimeLogDb.UserId_FK) + "=? AND " + nameof(TimeLogDb.CalendarWeek) + "=? and " + nameof(TimeLogDb.Year) + "=?)";
|
||||
public const string GET_ALL_USERS = "select * from " + nameof(UserIdentity);
|
||||
public const string GET_USER_BY_ID = "select * from " + nameof(UserIdentity) + " where " + nameof(UserIdentity.Id) + "=?";
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
@ -349,6 +350,21 @@ namespace SQLiteRepository
|
||||
// Get The User Direction (are they going in or out)?
|
||||
var logDirection = GetLogDirection(ident.UserId_FK);
|
||||
|
||||
#region Check the user hasnt registered an event in the last few minutes..
|
||||
|
||||
var hysteresisThresholdMinutes = Convert.ToInt32(ConfigurationManager.AppSettings["SwipeTimeGap"] ?? "3");
|
||||
var threshold = DateTime.UtcNow.AddMinutes(0 - hysteresisThresholdMinutes);
|
||||
var logs = _connection.Query<TimeLogDb>(
|
||||
SQLiteProcedures.GET_LOGS_IN_LAST_X_MINUTES,
|
||||
threshold, ident.UserId_FK);
|
||||
if (logs.Any())
|
||||
{
|
||||
logId = -1;
|
||||
return OperationResponse.FAILED;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region Get the current time (for swiping). and calendar week/year to help recall the data.
|
||||
var logTime = DateTime.UtcNow;
|
||||
var calendarWeek = GetIso8601CalendarWeek(logTime);
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<Product Id="{52F7296E-1C7E-497E-9B25-4FE715D7AD1C}"
|
||||
Name="DataCentreHostInstaller"
|
||||
Language="1033"
|
||||
Version="0.0.1.0"
|
||||
Version="0.1.2.0"
|
||||
Manufacturer="ChrisWatts"
|
||||
UpgradeCode="7282166b-691e-4caa-9a80-f348b8e5ffef">
|
||||
<Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />
|
||||
|
||||
@ -2,6 +2,8 @@
|
||||
<configuration>
|
||||
<appSettings>
|
||||
<add key="NLogConfigFilePath" value="Configs/NLogConfig.xml" />
|
||||
<add key="DefaultPageSize" value="20"/>
|
||||
<add key="SwipeTimeGap" value="20"/>
|
||||
</appSettings>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using System.Configuration;
|
||||
using System.Net;
|
||||
using System.Net.Http;
|
||||
using System.Net.Http.Headers;
|
||||
@ -29,8 +30,9 @@ namespace WindowsDataCenter
|
||||
public IHttpActionResult GetUsers([FromUri] string query = "",[FromUri] int pageSize = -1, [FromUri] int pageNumber =-1)
|
||||
{
|
||||
_logger.Trace("GetUsers called with arguments >> query: {0}, pageSize: {1}, pageNumber: {2}", query, pageSize, pageNumber);
|
||||
|
||||
pageNumber = pageNumber == -1 ? 1 : pageNumber;
|
||||
pageSize = pageSize == -1 ? 1 : pageSize;
|
||||
pageSize = GetPageSize(pageSize);
|
||||
var userList = query == string.Empty ? _repo.GetUsers(pageNumber, pageSize) : _repo.Search(query);
|
||||
_logger.Trace("Got UserList from Repository, UserCount: {0}", userList.UserCount);
|
||||
if (query != string.Empty)
|
||||
@ -50,6 +52,15 @@ namespace WindowsDataCenter
|
||||
return ResponseMessage(msg);
|
||||
}
|
||||
|
||||
private int GetPageSize(int pageSize)
|
||||
{
|
||||
var cfgPageSize = ConfigurationManager.AppSettings["DefaultPageSize"] ?? 10.ToString();
|
||||
|
||||
return pageSize == -1
|
||||
? Convert.ToInt32(cfgPageSize)
|
||||
: pageSize;
|
||||
}
|
||||
|
||||
[HttpGet]
|
||||
[Route("{id:int}")]
|
||||
[CacheControl(MaxAge = 0)]
|
||||
|
||||
@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
|
||||
// You can specify all the values or you can default the Build and Revision Numbers
|
||||
// by using the '*' as shown below:
|
||||
// [assembly: AssemblyVersion("1.0.*")]
|
||||
[assembly: AssemblyVersion("1.0.0.0")]
|
||||
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||
[assembly: AssemblyVersion("0.1.2.0")]
|
||||
[assembly: AssemblyFileVersion("0.1.2.0")]
|
||||
|
||||
@ -110,6 +110,7 @@
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||
<Reference Include="System.Configuration" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Data.SQLite, Version=1.0.104.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
||||
<HintPath>..\packages\System.Data.SQLite.Core.1.0.104.0\lib\net451\System.Data.SQLite.dll</HintPath>
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
function DataVM() {
|
||||
"use strict";
|
||||
var self = this;
|
||||
self.menuOptions = ["Users", "Data", "Stats", "Other"];
|
||||
self.menuOptions = ["Home"];
|
||||
self.chosenMenuItemId = ko.observable();
|
||||
self.userList = ko.observable(null);
|
||||
self.chosenUserDetails = ko.observable(null);
|
||||
@ -12,11 +12,11 @@
|
||||
self.errorData = ko.observable(null);
|
||||
self.apiEndpoints = {
|
||||
root: "http://localhost:8800",
|
||||
getUserList: "/api/users",//"/userstest",
|
||||
getUserDetails: "/api/users",//"/users",
|
||||
editUser: "/api/users/edit",//"/users/edit",
|
||||
getTimeLogs: "/api/timelogs",//"/timelogs",
|
||||
getUnassignedCards: "/api/cards/unassigned"//"/unassignedcards"
|
||||
getUserList: "/api/users",
|
||||
getUserDetails: "/api/users",
|
||||
editUser: "/api/users/edit",
|
||||
getTimeLogs: "/api/timelogs",
|
||||
getUnassignedCards: "/api/cards/unassigned"
|
||||
};
|
||||
self.uiPages = {
|
||||
users: "users",
|
||||
@ -200,10 +200,6 @@
|
||||
if (!data.events.changeDate) {
|
||||
$("#weeklyDatePicker").on("changeDate", function (e) {
|
||||
var kk = e.date;
|
||||
//console.log(
|
||||
// "1: Iso Week Number: " + moment(kk).isoWeek() + " of " +
|
||||
// moment(kk).weeksInYear()
|
||||
//);
|
||||
self.selectedCalendarWeek(moment(kk).isoWeek());
|
||||
self.goToTimeLogs(self.chosenTimeLogUserId, null, [{ key: "selectedDate", value: moment(kk).format("MM-DD-YYYY") }]);
|
||||
});
|
||||
@ -313,8 +309,6 @@
|
||||
self.searchUsers(query);
|
||||
else
|
||||
self.getUserList(pageSize, pageNumber);
|
||||
self.assignErrorObject(101, "An Error has occurred.. run away!!!", "test");
|
||||
//$.get("http://localhost:3000", { menu: this.params.menu }, self.chosenMenuData);
|
||||
});
|
||||
this.get("#userData/:userId", function () {
|
||||
self.chosenMenuItemId("Data");
|
||||
@ -322,7 +316,6 @@
|
||||
self.getUserDetails(this.params.userId);
|
||||
self.userTimeLogData(null);
|
||||
self.getUnassignedCardData();
|
||||
//$.get("http://localhost:3000", { menu: this.params.menu }, self.chosenMenuData);
|
||||
});
|
||||
this.get("#timelogs/:userId", function () {
|
||||
var selectedDate = this.params.selectedDate;
|
||||
@ -330,9 +323,6 @@
|
||||
self.userList(null);
|
||||
self.chosenUserDetails(null);
|
||||
self.chosenTimeLogUserId = this.params.userId;
|
||||
//if (!selectedDate) {
|
||||
// selectedDate = new Date();
|
||||
//}
|
||||
self.getTimeLogData(this.params.userId, selectedDate);
|
||||
});
|
||||
this.get("#newUser", function () {
|
||||
|
||||
@ -2,6 +2,8 @@
|
||||
<configuration>
|
||||
<appSettings>
|
||||
<add key="NLogConfigFilePath" value="Configs/NLogConfig.xml" />
|
||||
<add key="DefaultPageSize" value="20"/>
|
||||
<add key="SwipeTimeGap" value="20"/>
|
||||
</appSettings>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
|
||||
|
||||
Loading…
Reference in New Issue
Block a user