示例#1
0
        public ICollection <EmployeeDescription> GetAllEmployeesExceptForCurrentUser(string username)
        {
            SqlDataReader reader = this.ExecuteReader(
                @"SELECT Id,
                          Username,
                          Name
                     FROM Employees
                    WHERE Username != @username",
                new Dictionary <string, object>
            {
                { "@username", username }
            });

            IList <EmployeeDescription> employees = new List <EmployeeDescription>();

            using (reader)
            {
                while (reader.Read())
                {
                    int    userId                 = reader.GetInt32(0);
                    string userUsername           = reader.GetString(1);
                    string userName               = reader.GetString(2);
                    string userNameRepresentation = this.CombineUsernameAndName(userUsername, userName);

                    EmployeeDescription employee = new EmployeeDescription(userId, userNameRepresentation);
                    employees.Add(employee);
                }
            }

            return(employees);
        }
        public EmployeeWindow(EmployeeDescription e, UIClient db)
        {
            InitializeComponent();

            _currentEmployee = e;
            _db = db;
            //EmployeeWindowViewModel _viewModel = new EmployeeWindowViewModel(_currentEmployee);
            //LayoutRoot.DataContext = _viewModel;
            empUI.DataContext = new EmployeeWindowViewModel(_currentEmployee, _db);
            
        }
 public IList<WorkRecord> GetRecordsOfEmployeeNonBonuses(EmployeeDescription employee)
 {
     EnsureManager();
     return _db.GetRecordsOfEmployeeNonBonuses(employee);
 }
 public IList<Summary> GetLastSummaries(EmployeeDescription employee, int ammount)
 {
     EnsureManager();
     return _db.GetLastSummaries(employee, ammount);
 }
 public IList<Summary> GetSummariesOfEmployee(EmployeeDescription employee)
 {
     EnsureManager();
     return _db.GetSummariesOfEmployee(employee);
 }
        public void SetHourlyRate(EmployeeDescription employeeDescription, double hourlyRate)
        {
//>>>>>>>>>>// AGAIN: WHAT IS ACCESS POLICY?
// HERE: we could get a metohde:
// User ManagerForEmployeeDescription(UInt64 employeeDescription);
            EnsureManager();
            _db.SetHourlyRate(employeeDescription, hourlyRate);
        }
 public IEnumerable<WorkRecord> GetRecordsOfEmployeeF(EmployeeDescription employeeDesc, FilterFunction<WorkRecord> filter)
 {
     EnsureManager();
     return _db.GetRecordsOfEmployee(employeeDesc, filter);
 }
 public IEnumerable<WorkRecord> GetRecordsOfEmployee(EmployeeDescription employeeDesc)
 {
     // TO ASK: does a manager have access to records of all employees?
     // otherwise, we have to get all manager's projects, employees of these projects etc...
     EnsureManager();
     return _db.GetRecordsOfEmployee(employeeDesc);
 }
 public void RemoveEmployeeDescription(EmployeeDescription employeeDescription)
 {
     EnsureAdmin();
     _db.RemoveEmployeeDescription(employeeDescription);
 }
 public void SetEmployeeDescription(EmployeeDescription employeeDescription)
 {
     EnsureAdmin();
     _db.SetEmployeeDescription(employeeDescription);
 }
 public void GetLastSummariesReturnsLastSummaries()
 {
     User user = new User { PublicUserInfo = new PublicUserInfo { Login = "******" } };
     Project project = new Project { Manager = user.PublicUserInfo };
     EmployeeDescription empDesc = new EmployeeDescription { Employee = user.PublicUserInfo, Project = project };
     Summary sum1 = new Summary { Date = new DateTime(2012, 10, 01), EmployeeDescription = empDesc };
     Summary sum2 = new Summary { Date = new DateTime(2012, 09, 01), EmployeeDescription = empDesc };
     Summary sum3 = new Summary { Date = new DateTime(2013, 01, 01), EmployeeDescription = empDesc };
     Dao.SetUser(user);
     Dao.SetProject(project);
     Dao.SetEmployeeDescription(empDesc);
     Dao.SetSummary(sum1);
     Dao.SetSummary(sum2);
     Dao.SetSummary(sum3);
     var sums = Dao.GetLastSummaries(empDesc, 2);
     Assert.AreEqual(sum3, sums[0]);
     Assert.AreEqual(sum1, sums[1]);
     Assert.AreEqual(2, sums.Count);
 }
 public void RelationsFromEmployeeDescriptionMustExist2()
 {
     User manager = new User() { PublicUserInfo = new PublicUserInfo() { Login = "******" } };
     Project project = new Project() { Manager = manager.PublicUserInfo };
     Dao.SetProject(project);
     EmployeeDescription employeeDescription = new EmployeeDescription() { Project = project, Employee = null };
     Dao.SetEmployeeDescription(employeeDescription);
 }
 public void RelationsFromEmployeeDescriptionMustExist1()
 {
     User employee = new User() { PublicUserInfo = new PublicUserInfo() { Login = "******" } };
     Dao.SetUser(employee);
     EmployeeDescription employeeDescription = new EmployeeDescription() { Project = null, Employee = employee.PublicUserInfo };
     Dao.SetEmployeeDescription(employeeDescription);
 }
 private void PrepareForRemoving(String Login)
 {
     PublicUserInfo userInfo = new PublicUserInfo() { Login = "******" };
     User user = new User() { PublicUserInfo = userInfo };
     Project project = new Project() { Manager = userInfo };
     EmployeeDescription employeeDescription = new EmployeeDescription() { Employee = userInfo, Project = project };
     Contract contract = new Contract() { Creator = userInfo, Employee = userInfo, Project = project };
     WorkRecord record = new WorkRecord { EmployeeDescription = employeeDescription, MinutesWorked = 12 };
     Summary summary = new Summary { EmployeeDescription = employeeDescription };
     Dao.SetUser(user);
     Assert.IsFalse(Dao.GetEmployeeDescriptions(user).Count > 0);
     Assert.IsFalse(Dao.GetRecords(user).Count > 0);
     Assert.IsFalse(Dao.GetSummaries(user).Count > 0);
     Assert.IsFalse(Dao.GetContracts(user).Count > 0);
     Dao.SetProject(project);
     Dao.SetEmployeeDescription(employeeDescription);
     Dao.SetRecord(record);
     Dao.SetSummary(summary);
     Dao.SetContract(contract);
     Assert.IsTrue(Dao.GetEmployeeDescriptions(user).Count > 0);
     Assert.IsTrue(Dao.GetRecords(user).Count > 0);
     Assert.IsTrue(Dao.GetContracts(user).Count > 0);
     Assert.IsTrue(Dao.GetSummaries(user).Count > 0);
 }
 public void RemovedRecordIsRemovedPermanently()
 {
     PublicUserInfo userInfo = new PublicUserInfo() { Login = "******" };
     Project project = new Project() { Manager = userInfo };
     EmployeeDescription employeeDescription = new EmployeeDescription() { Employee = userInfo, Project = project };
     WorkRecord workRecord = new WorkRecord() { EmployeeDescription = employeeDescription };
     User user = new User() { PublicUserInfo = userInfo };
     Dao.SetUser(user);
     Dao.SetProject(project);
     Dao.SetEmployeeDescription(employeeDescription);
     Dao.SetRecord(workRecord);
     Assert.IsTrue(Dao.GetRecordsOfEmployee(employeeDescription).Count > 0);
     Dao.RemoveRecord(workRecord);
     Assert.IsFalse(Dao.GetRecordsOfEmployee(employeeDescription).Count > 0);
 }
 public void TestSetHourlyRate()
 {
     var robinHood = new User { PublicUserInfo = new PublicUserInfo { Login = "******", Name = "Robin" } };
     var project = new Project() { Manager = robinHood.PublicUserInfo };
     var desc = new EmployeeDescription { HourlyRate = 100, Employee = robinHood.PublicUserInfo, Project = project };
     Dao.SetUser(robinHood);
     Dao.SetProject(project);
     Dao.SetEmployeeDescription(desc);
     Dao.SetHourlyRate(desc, 200);
     Assert.AreEqual(200, Dao.GetEmployeeDescriptions(robinHood)[0].HourlyRate);
 }