Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

@@ -2,5 +2,14 @@
<packages>
<package id="ApiAiSDK" version="1.6.4" targetFramework="net452" />
<package id="EntityFramework" version="6.1.3" targetFramework="net452" />
<package id="jQuery" version="1.6.4" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR" version="2.2.1" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.Core" version="2.2.1" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.JS" version="2.2.1" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.2.1" targetFramework="net452" />
<package id="Microsoft.Owin" version="2.1.0" targetFramework="net452" />
<package id="Microsoft.Owin.Host.SystemWeb" version="2.1.0" targetFramework="net452" />
<package id="Microsoft.Owin.Security" version="2.1.0" targetFramework="net452" />
<package id="Newtonsoft.Json" version="9.0.1" targetFramework="net452" />
<package id="Owin" version="1.0" targetFramework="net452" />
</packages>
@@ -12,7 +12,7 @@ public interface IServiceUserBuisness : IMyServiceGeneric<userbuisness>
{
List<userbuisness> findByuser(int id);
List<userbuisness> findBybuisness(int id);
List<user> getMyEmployees();
List<user> getMyEmployees(int id);

skill getMostPopularSkill(List<user> users);
float getAverageSalaries();
@@ -31,11 +31,12 @@ public List<userbuisness> findBybuisness(int id)
return this.GetMany(u => u.buisness_id == id).ToList();
}

public List<user> getMyEmployees()
public List<user> getMyEmployees(int id)
{

ServiceUser serviceuser = new ServiceUser();

user user = serviceuser.GetById(1);
user user = serviceuser.GetById(id);
buisness buisness = this.GetMany(ub => (ub.user.id == user.id) && (ub.role == "HR")).ToList().ElementAt(0).buisness;
List<userbuisness> userbuisness = this.findBybuisness(buisness.id).ToList();

@@ -0,0 +1,44 @@
#chatToggle {
position: fixed;
bottom: 60px;
right: 120px;
}
#chatbox {
width: 300px;
height: 350px;
position: fixed;
bottom: 90px;
right: 5px;

}
#chatboxHeader {
padding: 10px 10px;
}
#chatboxHeader h4{

color: white;
}

#messages {
height: 284px;
overflow: auto;
border-bottom: 2px solid #00BCD4;
}

.msg {

margin: 20px 10px;
padding: 10px 5px;
width: -moz-fit-content;

max-width: 200px;
border-radius: 5px;
color: white;
}
.msg p {
margin: 0;
}
.msg-client {
right: 0px
}

@@ -1,5 +1,8 @@
using HRSmart.Domain.Entities;
using HRSmart.Models;
using HRSmart.Service.Business;
using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.Owin;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -20,45 +23,57 @@ public class UserController : Controller
// GET: User
public ActionResult Index()
{
List<user> users = serviceuser.GetMany().ToList();
ApplicationUser user =
System.Web.HttpContext.Current.GetOwinContext()
.GetUserManager<ApplicationUserManager>()
.FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());

foreach (var u in users)
if (user.Roles.ElementAt(0).RoleId == "1")
{
Console.WriteLine(u.firstName);
bool verif = false;
foreach (var ub in serviceuserbuisness.findByuser(u.id))
List<user> users = serviceuser.GetMany().ToList();

foreach (var u in users)
{
Console.WriteLine(ub.user_id);
if (ub.role == "HR")
Console.WriteLine(u.firstName);
bool verif = false;
foreach (var ub in serviceuserbuisness.findByuser(u.id))
{
u.role = "Chief Human Ressource";
verif = true;
break;
Console.WriteLine(ub.user_id);
if (ub.role == "HR")
{
u.role = "Chief Human Ressource";
verif = true;
break;

}
if (ub.role == "RM")
{
u.role = "Recruiter Manager";
verif = true;
break;
}
if (ub.role == "EMP")
{
u.role = "Employee";
verif = true;
break;
}

}
if (ub.role == "RM")
{
u.role = "Recruiter Manager";
verif = true;
break;
}
if (ub.role == "EMP")
if (verif == false)
{
u.role = "Employee";
verif = true;
break;
u.role = "Non Employed";
}

}
if (verif == false)
{
u.role = "Non Employed";
}

ViewBag.users = users;
return View();
}
else
{
return RedirectToAction("IndexHR");
}

ViewBag.users = users;
return View();
}


@@ -73,12 +88,24 @@ public ActionResult Details(int id)
// GET: User/Statistics
public ActionResult Statistics()
{
ViewBag.userEmployed = serviceuser.getNumberOfEmployedUsers();
ApplicationUser user =
System.Web.HttpContext.Current.GetOwinContext()
.GetUserManager<ApplicationUserManager>()
.FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());

if (user.Roles.ElementAt(0).RoleId == "1")
{
ViewBag.userEmployed = serviceuser.getNumberOfEmployedUsers();
ViewBag.employeecount = serviceuser.GetMany().ToList().Count;
ViewBag.skillsuser = serviceuser.getAverageNumberOfSkillsUser();
ViewBag.numberuserMonth = serviceuser.getUserPerMonth();
ViewBag.numberHR = serviceuser.getNumberofHR();
return View();
}
else
{
return RedirectToAction("StatisticHR");
}
}

public ActionResult Ban(int id)
@@ -154,14 +181,24 @@ public ActionResult NBan(int id)
}
public ActionResult IndexHR()
{
ViewBag.users = serviceuserbuisness.getMyEmployees();
ApplicationUser user =
System.Web.HttpContext.Current.GetOwinContext()
.GetUserManager<ApplicationUserManager>()
.FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());

ViewBag.users = serviceuserbuisness.getMyEmployees(user.userId);

return View();
}

public ActionResult StatisticHR()
{
ViewBag.popularskill = serviceuserbuisness.getMostPopularSkill(serviceuserbuisness.getMyEmployees());
ApplicationUser user =
System.Web.HttpContext.Current.GetOwinContext()
.GetUserManager<ApplicationUserManager>()
.FindById(System.Web.HttpContext.Current.User.Identity.GetUserId());

ViewBag.popularskill = serviceuserbuisness.getMostPopularSkill(serviceuserbuisness.getMyEmployees(user.userId));
ViewBag.averagesalary = serviceuserbuisness.getAverageSalaries();
ViewBag.averageage = serviceuserbuisness.getAverageAgeOfEmployess();
ViewBag.bestEmployee = serviceuserbuisness.getBestEmployee();
@@ -68,6 +68,14 @@
<HintPath>..\packages\Sparc.TagCloud.0.0.1\lib\net40\Lzma#.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.AspNet.SignalR.Core, Version=2.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.SignalR.Core.2.1.2\lib\net45\Microsoft.AspNet.SignalR.Core.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.AspNet.SignalR.SystemWeb, Version=2.1.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.AspNet.SignalR.SystemWeb.2.1.2\lib\net45\Microsoft.AspNet.SignalR.SystemWeb.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.2\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll</HintPath>
<Private>True</Private>
@@ -221,6 +229,7 @@
<Compile Include="Global.asax.cs">
<DependentUpon>Global.asax</DependentUpon>
</Compile>
<Compile Include="Hubs\SupportHub.cs" />
<Compile Include="Migrations\201611161204191_t.cs" />
<Compile Include="Migrations\201611161204191_t.Designer.cs">
<DependentUpon>201611161204191_t.cs</DependentUpon>
@@ -247,6 +256,7 @@
<Content Include="Content\bootstrap-theme.min.css" />
<Content Include="Content\bootstrap.css" />
<Content Include="Content\bootstrap.min.css" />
<Content Include="Content\chatStyle.css" />
<Content Include="Content\me.jpg" />
<Content Include="Content\SkillChart.js" />
<Content Include="Content\SkillStyle.css" />
@@ -281,6 +291,8 @@
<Content Include="Scripts\jquery-3.1.1.slim.min.js" />
<None Include="Scripts\jquery.validate-vsdoc.js" />
<Content Include="Scripts\jquery.sparkline.min.js" />
<Content Include="Scripts\jquery.signalR-2.1.2.js" />
<Content Include="Scripts\jquery.signalR-2.1.2.min.js" />
<Content Include="Scripts\jquery.validate.js" />
<Content Include="Scripts\jquery.validate.min.js" />
<Content Include="Scripts\jquery.validate.unobtrusive.js" />
@@ -292,7 +304,9 @@
<Content Include="Scripts\respond.matchmedia.addListener.min.js" />
<Content Include="Scripts\respond.min.js" />
<Content Include="Scripts\_references.js" />
<Content Include="Web.config" />
<Content Include="Web.config">
<SubType>Designer</SubType>
</Content>
<Content Include="Web.Debug.config">
<DependentUpon>Web.config</DependentUpon>
</Content>
@@ -0,0 +1,26 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using HRSmart.Utility;
using Microsoft.AspNet.SignalR;

namespace HRSmart.Hubs
{
public class SupportHub : Hub
{
static ApiAiUtility ai = new ApiAiUtility();
public void Send(string message)
{
var response = ai.Ai.TextRequest(message);

if (response.Result.GetStringParameter("subject") != "" &&
response.Result.GetStringParameter("description") != "")
{

}
Clients.All.echoBack(response.Result.Fulfillment.Speech);

}
}
}
BIN +108 Bytes (110%) HRSmart/Scripts/_references.js
Binary file not shown.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

@@ -9,6 +9,7 @@ public partial class Startup
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
app.MapSignalR();
}
}
}
@@ -8,12 +8,12 @@ namespace HRSmart.Utility
{
public class ApiAiUtility
{
private ApiAi ai;
public ApiAi Ai { get; set; }

public ApiAiUtility()
{
var config = new AIConfiguration("2b4219f782904d6a996efcc54b5742fe", SupportedLanguage.English);
ai = new ApiAi(config);
this.Ai = new ApiAi(config);
}
}
}

Large diffs are not rendered by default.

@@ -14,17 +14,27 @@
<package id="Microsoft.AspNet.Mvc.fr" version="5.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.Razor" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.Razor.fr" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR" version="2.1.2" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.Core" version="2.1.2" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.Core.fr" version="2.1.2" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.fr" version="2.1.2" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.JS" version="2.1.2" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.SystemWeb" version="2.1.2" targetFramework="net452" />
<package id="Microsoft.AspNet.SignalR.SystemWeb.fr" version="2.1.2" targetFramework="net452" />
<package id="Microsoft.AspNet.Web.Optimization" version="1.1.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebPages" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.AspNet.WebPages.fr" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.CodeDom.Providers.DotNetCompilerPlatform" version="1.0.2" targetFramework="net452" />
<package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.3" targetFramework="net452" />
<package id="Microsoft.Net.Compilers" version="1.3.2" targetFramework="net452" developmentDependency="true" />
<package id="Microsoft.Owin" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.fr" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Host.SystemWeb" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Host.SystemWeb.fr" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Security" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Security.Cookies" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Security.Facebook" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Security.fr" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Security.Google" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Security.MicrosoftAccount" version="3.0.1" targetFramework="net452" />
<package id="Microsoft.Owin.Security.OAuth" version="3.0.1" targetFramework="net452" />