public EmployeeDetailsPage(EmployeeItemViewModel employee)
        {
            InitializeComponent();
            var empvm = new EmployeeDetailsViewModel(employee);

            BindingContext = empvm;
        }
        private void BtnDelete_Click(object sender, RoutedEventArgs e)
        {
            var response = new EmployeeItemSQLiteRepository().SetStatusDeleted(CurrentEmployeeItemDG.Identifier);

            if (response.Success)
            {
                MainWindow.SuccessMessage = ((string)Application.Current.FindResource("Stavka_je_uspešno_obrisanaUzvičnik"));

                CurrentEmployeeItemForm            = new EmployeeItemViewModel();
                CurrentEmployeeItemForm.Identifier = Guid.NewGuid();
                CurrentEmployeeItemForm.ItemStatus = ItemStatus.Added;

                CurrentEmployeeItemDG = null;

                EmployeeCreatedUpdated();

                Thread displayThread = new Thread(() => DisplayEmployeeItemData());
                displayThread.IsBackground = true;
                displayThread.Start();
            }
            else
            {
                MainWindow.ErrorMessage = response.Message;
            }
        }
        public static EmployeeItem ConvertToEmployeeItem(this EmployeeItemViewModel EmployeeItemViewModel)
        {
            EmployeeItem EmployeeItem = new EmployeeItem()
            {
                Id         = EmployeeItemViewModel.Id,
                Identifier = EmployeeItemViewModel.Identifier,

                EmployeeId     = EmployeeItemViewModel.Employee?.Id ?? null,
                FamilyMemberId = EmployeeItemViewModel.FamilyMember?.Id ?? null,

                Name = EmployeeItemViewModel.Name,

                DateOfBirth = (DateTime)EmployeeItemViewModel.DateOfBirth,
                EmbassyDate = EmployeeItemViewModel.EmbassyDate,
                ItemStatus  = EmployeeItemViewModel.ItemStatus,
                Active      = EmployeeItemViewModel.IsActive,
                CreatedById = EmployeeItemViewModel.CreatedBy?.Id ?? null,
                CompanyId   = EmployeeItemViewModel.Company?.Id ?? null,

                CreatedAt = EmployeeItemViewModel.CreatedAt,
                UpdatedAt = EmployeeItemViewModel.UpdatedAt
            };

            return(EmployeeItem);
        }
        public static EmployeeItemViewModel ConvertToEmployeeItemViewModel(this EmployeeItem EmployeeItem)
        {
            EmployeeItemViewModel EmployeeItemViewModel = new EmployeeItemViewModel()
            {
                Id         = EmployeeItem.Id,
                Identifier = EmployeeItem.Identifier,

                Employee     = EmployeeItem.Employee?.ConvertToEmployeeViewModelLite(),
                FamilyMember = EmployeeItem.FamilyMember?.ConvertToFamilyMemberViewModelLite(),

                Name = EmployeeItem.Name,

                DateOfBirth = EmployeeItem.DateOfBirth,
                EmbassyDate = EmployeeItem.EmbassyDate,
                ItemStatus  = EmployeeItem.ItemStatus,
                IsActive    = EmployeeItem.Active,

                CreatedBy = EmployeeItem.CreatedBy?.ConvertToUserViewModelLite(),
                Company   = EmployeeItem.Company?.ConvertToCompanyViewModelLite(),

                UpdatedAt = EmployeeItem.UpdatedAt,
                CreatedAt = EmployeeItem.CreatedAt
            };

            return(EmployeeItemViewModel);
        }
Example #5
0
        private SqliteCommand AddCreateParameters(SqliteCommand insertCommand, EmployeeItemViewModel EmployeeItem)
        {
            insertCommand.Parameters.AddWithValue("@ServerId", EmployeeItem.Id);
            insertCommand.Parameters.AddWithValue("@Identifier", EmployeeItem.Identifier);
            insertCommand.Parameters.AddWithValue("@EmployeeId", ((object)EmployeeItem.Employee.Id) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeIdentifier", ((object)EmployeeItem.Employee.Identifier) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeCode", ((object)EmployeeItem.Employee.Code) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeName", ((object)EmployeeItem.Employee.Name) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeInternalCode", ((object)EmployeeItem.Employee.EmployeeCode) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@FamilyMemberId", ((object)EmployeeItem.FamilyMember.Id) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@FamilyMemberIdentifier", ((object)EmployeeItem.Employee.Identifier) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@FamilyMemberCode", ((object)EmployeeItem.FamilyMember.Code) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@FamilyMemberName", ((object)EmployeeItem.FamilyMember.Name) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@Name", EmployeeItem.Name);
            insertCommand.Parameters.AddWithValue("@DateOfBirth", ((object)EmployeeItem.DateOfBirth) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmbassyDate", ((object)EmployeeItem.EmbassyDate) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@Passport", ((object)EmployeeItem.Passport) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@ItemStatus", ((object)EmployeeItem.ItemStatus) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@IsSynced", EmployeeItem.IsSynced);
            insertCommand.Parameters.AddWithValue("@UpdatedAt", ((object)EmployeeItem.UpdatedAt) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@CreatedById", MainWindow.CurrentUser.Id);
            insertCommand.Parameters.AddWithValue("@CreatedByName", MainWindow.CurrentUser.FirstName + " " + MainWindow.CurrentUser.LastName);
            insertCommand.Parameters.AddWithValue("@CompanyId", MainWindow.CurrentCompany.Id);
            insertCommand.Parameters.AddWithValue("@CompanyName", MainWindow.CurrentCompany.CompanyName);

            return(insertCommand);
        }
Example #6
0
        public static List <EmployeeItemViewModel> GetAllEmpoyee(string pDeptCode, string pStatus)
        {
            List <EmployeeItemViewModel> res = new List <EmployeeItemViewModel>();

            if (string.IsNullOrEmpty(pDeptCode))
            {
                return(res);
            }
            DataTable    dtRes   = new DataTable();
            HRInfoAccess _access = new HRInfoAccess();

            dtRes = _access.HRInfo_Query("Q", "", pDeptCode, pStatus, "en");
            foreach (DataRow dtr in dtRes.Rows)
            {
                EmployeeItemViewModel item = new EmployeeItemViewModel
                {
                    EMPID        = dtr["EMPID"].ToString(),
                    SYS_EMPID    = dtr["SYS_EMPID"].ToString(),
                    FULLNAME     = dtr["FULLNAME"].ToString(),
                    EMPNAME      = dtr["EMPNAME"].ToString(),
                    DEPARTMENT   = dtr["DEPARTMENT"].ToString(),
                    STATUS       = dtr["STATUS"].ToString(),
                    IDENTITYCARD = dtr["UID_FOR_MES"].ToString(),
                    RFID         = dtr["RFID"].ToString(),
                    DATEJOIN     = dtr["DATEJOIN"].ToString()
                };
                res.Add(item);
            }
            return(res);
        }
Example #7
0
        public EmployeeItemResponse Create(EmployeeItemViewModel EmployeeItem)
        {
            EmployeeItemResponse response = new EmployeeItemResponse();

            using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db"))
            {
                db.Open();

                SqliteCommand insertCommand = db.CreateCommand();
                insertCommand.CommandText = SqlCommandInsertPart;

                try
                {
                    insertCommand = AddCreateParameters(insertCommand, EmployeeItem);
                    insertCommand.ExecuteNonQuery();
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage = error.Message;
                    response.Success        = false;
                    response.Message        = error.Message;
                    return(response);
                }
                db.Close();

                response.Success = true;
                return(response);
            }
        }
        private void btnEditItem_Click(object sender, RoutedEventArgs e)
        {
            CurrentEmployeeItemForm            = new EmployeeItemViewModel();
            CurrentEmployeeItemForm.Identifier = CurrentEmployeeItemDG.Identifier;
            CurrentEmployeeItemForm.ItemStatus = ItemStatus.Edited;


            CurrentEmployeeItemForm.IsSynced     = CurrentEmployeeItemDG.IsSynced;
            CurrentEmployeeItemForm.FamilyMember = CurrentEmployeeItemDG.FamilyMember;
            CurrentEmployeeItemForm.Name         = CurrentEmployeeItemDG.Name;
            CurrentEmployeeItemForm.DateOfBirth  = CurrentEmployeeItemDG.DateOfBirth;
            CurrentEmployeeItemForm.Passport     = CurrentEmployeeItemDG.Passport;
            CurrentEmployeeItemForm.EmbassyDate  = CurrentEmployeeItemDG.EmbassyDate;
            CurrentEmployeeItemForm.UpdatedAt    = CurrentEmployeeItemDG.UpdatedAt;
        }
Example #9
0
        public EmployeeItemListResponse GetEmployeeItemsByEmployee(int companyId, Guid EmployeeIdentifier)
        {
            EmployeeItemListResponse     response      = new EmployeeItemListResponse();
            List <EmployeeItemViewModel> EmployeeItems = new List <EmployeeItemViewModel>();

            using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db"))
            {
                db.Open();
                try
                {
                    SqliteCommand selectCommand = new SqliteCommand(
                        SqlCommandSelectPart +
                        "FROM EmployeeItems " +
                        "WHERE EmployeeIdentifier = @EmployeeIdentifier " +
                        "AND CompanyId = @CompanyId " +
                        "ORDER BY IsSynced, Id DESC;", db);

                    selectCommand.Parameters.AddWithValue("@EmployeeIdentifier", EmployeeIdentifier);
                    selectCommand.Parameters.AddWithValue("@CompanyId", companyId);

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    while (query.Read())
                    {
                        EmployeeItemViewModel dbEntry = Read(query);
                        EmployeeItems.Add(dbEntry);
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage = error.Message;
                    response.Success        = false;
                    response.Message        = error.Message;
                    response.EmployeeItems  = new List <EmployeeItemViewModel>();
                    return(response);
                }
                db.Close();
            }
            response.Success       = true;
            response.EmployeeItems = EmployeeItems;
            return(response);
        }
        public static EmployeeItemViewModel ConvertToEmployeeItemViewModelLite(this EmployeeItem EmployeeItem)
        {
            EmployeeItemViewModel EmployeeItemViewModel = new EmployeeItemViewModel()
            {
                Id         = EmployeeItem.Id,
                Identifier = EmployeeItem.Identifier,

                Name = EmployeeItem.Name,

                DateOfBirth = EmployeeItem.DateOfBirth,
                EmbassyDate = EmployeeItem.EmbassyDate,
                ItemStatus  = EmployeeItem.ItemStatus,
                IsActive    = EmployeeItem.Active,

                UpdatedAt = EmployeeItem.UpdatedAt,
                CreatedAt = EmployeeItem.CreatedAt
            };

            return(EmployeeItemViewModel);
        }
Example #11
0
        private static EmployeeItemViewModel Read(SqliteDataReader query)
        {
            int counter = 0;
            EmployeeItemViewModel dbEntry = new EmployeeItemViewModel();

            dbEntry.Id           = SQLiteHelper.GetInt(query, ref counter);
            dbEntry.Identifier   = SQLiteHelper.GetGuid(query, ref counter);
            dbEntry.Employee     = SQLiteHelper.GetEmployee(query, ref counter);
            dbEntry.FamilyMember = SQLiteHelper.GetFamilyMember(query, ref counter);
            dbEntry.Name         = SQLiteHelper.GetString(query, ref counter);
            dbEntry.DateOfBirth  = SQLiteHelper.GetDateTime(query, ref counter);
            dbEntry.EmbassyDate  = SQLiteHelper.GetDateTime(query, ref counter);
            dbEntry.Passport     = SQLiteHelper.GetString(query, ref counter);
            dbEntry.ItemStatus   = SQLiteHelper.GetInt(query, ref counter);
            dbEntry.IsSynced     = SQLiteHelper.GetBoolean(query, ref counter);
            dbEntry.UpdatedAt    = SQLiteHelper.GetDateTime(query, ref counter);
            dbEntry.CreatedBy    = SQLiteHelper.GetCreatedBy(query, ref counter);
            dbEntry.Company      = SQLiteHelper.GetCompany(query, ref counter);
            return(dbEntry);
        }
        public Employee_Item_AddEdit(EmployeeViewModel employee)
        {
            employeeService     = DependencyResolver.Kernel.Get <IEmployeeService>();
            employeeItemService = DependencyResolver.Kernel.Get <IEmployeeItemService>();

            InitializeComponent();

            this.DataContext = this;

            CurrentEmployee                    = employee;
            CurrentEmployeeItemForm            = new EmployeeItemViewModel();
            CurrentEmployeeItemForm.Identifier = Guid.NewGuid();
            CurrentEmployeeItemForm.ItemStatus = ItemStatus.Added;

            Thread displayThread = new Thread(() => DisplayEmployeeItemData());

            displayThread.IsBackground = true;
            displayThread.Start();

            txtName.Focus();
        }
Example #13
0
        public EmployeeItemResponse GetEmployeeItem(Guid identifier)
        {
            EmployeeItemResponse  response     = new EmployeeItemResponse();
            EmployeeItemViewModel EmployeeItem = new EmployeeItemViewModel();

            using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db"))
            {
                db.Open();
                try
                {
                    SqliteCommand selectCommand = new SqliteCommand(
                        SqlCommandSelectPart +
                        "FROM EmployeeItems " +
                        "WHERE Identifier = @Identifier;", db);
                    selectCommand.Parameters.AddWithValue("@Identifier", identifier);

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    if (query.Read())
                    {
                        EmployeeItemViewModel dbEntry = Read(query);
                        EmployeeItem = dbEntry;
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage = error.Message;
                    response.Success        = false;
                    response.Message        = error.Message;
                    response.EmployeeItem   = new EmployeeItemViewModel();
                    return(response);
                }
                db.Close();
            }
            response.Success      = true;
            response.EmployeeItem = EmployeeItem;
            return(response);
        }
 private void btnCancelItem_Click(object sender, RoutedEventArgs e)
 {
     CurrentEmployeeItemForm            = new EmployeeItemViewModel();
     CurrentEmployeeItemForm.Identifier = Guid.NewGuid();
     CurrentEmployeeItemForm.ItemStatus = ItemStatus.Added;
 }
        private void btnAddItem_Click(object sender, RoutedEventArgs e)
        {
            #region Validation

            if (CurrentEmployeeItemForm.FamilyMember?.Name == null)
            {
                MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Obavezno_poljeDvotačka_clanporodice"));
                return;
            }

            #endregion

            Thread th = new Thread(() =>
            {
                SubmitButtonEnabled = false;


                CurrentEmployeeItemForm.Employee = CurrentEmployee;


                CurrentEmployeeItemForm.Company = new CompanyViewModel()
                {
                    Id = MainWindow.CurrentCompanyId
                };
                CurrentEmployeeItemForm.CreatedBy = new UserViewModel()
                {
                    Id = MainWindow.CurrentUserId
                };

                new EmployeeItemSQLiteRepository().Delete(CurrentEmployeeItemForm.Identifier);
                var response = new EmployeeItemSQLiteRepository().Create(CurrentEmployeeItemForm);
                if (!response.Success)
                {
                    MainWindow.ErrorMessage = response.Message;

                    CurrentEmployeeItemForm            = new EmployeeItemViewModel();
                    CurrentEmployeeItemForm.Identifier = Guid.NewGuid();
                    CurrentEmployeeItemForm.ItemStatus = ItemStatus.Added;
                    CurrentEmployeeItemForm.IsSynced   = false;
                    return;
                }

                CurrentEmployeeItemForm            = new EmployeeItemViewModel();
                CurrentEmployeeItemForm.Identifier = Guid.NewGuid();
                CurrentEmployeeItemForm.ItemStatus = ItemStatus.Added;
                CurrentEmployeeItemForm.IsSynced   = false;
                EmployeeCreatedUpdated();

                DisplayEmployeeItemData();

                Application.Current.Dispatcher.BeginInvoke(
                    System.Windows.Threading.DispatcherPriority.Normal,
                    new Action(() =>
                {
                    txtName.Focus();
                })
                    );

                SubmitButtonEnabled = true;
            });
            th.IsBackground = true;
            th.Start();
        }
Example #16
0
 public EmployeeItemViewModelTest()
 {
     _employeeItemViewModel = new EmployeeItemViewModel(_directoryManager);
 }