public EmployeeCardResponse Create(EmployeeCardViewModel EmployeeCard)
        {
            EmployeeCardResponse response = new EmployeeCardResponse();

            using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db"))
            {
                db.Open();
                SqliteCommand insertCommand = db.CreateCommand();
                insertCommand.CommandText = SqlCommandInsertPart;

                try
                {
                    insertCommand = AddCreateParameters(insertCommand, EmployeeCard);
                    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);
            }
        }
Пример #2
0
        private void BtnDelete_Click(object sender, RoutedEventArgs e)
        {
            var response = new EmployeeCardSQLiteRepository().SetStatusDeleted(CurrentEmployeeCardDG.Identifier);

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

                CurrentEmployeeCardForm            = new EmployeeCardViewModel();
                CurrentEmployeeCardForm.Identifier = Guid.NewGuid();
                CurrentEmployeeCardForm.ItemStatus = ItemStatus.Added;

                CurrentEmployeeCardDG = null;

                EmployeeCreatedUpdated();

                Thread displayThread = new Thread(() => DisplayEmployeeCardData());
                displayThread.IsBackground = true;
                displayThread.Start();
            }
            else
            {
                MainWindow.ErrorMessage = response.Message;
            }
        }
Пример #3
0
        private void btnEditCard_Click(object sender, RoutedEventArgs e)
        {
            CurrentEmployeeCardForm            = new EmployeeCardViewModel();
            CurrentEmployeeCardForm.Identifier = CurrentEmployeeCardDG.Identifier;
            CurrentEmployeeCardForm.ItemStatus = ItemStatus.Edited;
            CurrentEmployeeCardForm.IsSynced   = CurrentEmployeeCardDG.IsSynced;

            CurrentEmployeeCardForm.Description = CurrentEmployeeCardDG.Description;
            CurrentEmployeeCardForm.CardDate    = CurrentEmployeeCardDG.CardDate;
            CurrentEmployeeCardForm.PlusMinus   = CurrentEmployeeCardDG.PlusMinus;
            CurrentEmployeeCardForm.UpdatedAt   = CurrentEmployeeCardDG.UpdatedAt;
        }
        private static EmployeeCardViewModel Read(SqliteDataReader query)
        {
            int counter = 0;
            EmployeeCardViewModel dbEntry = new EmployeeCardViewModel();

            dbEntry.Id          = SQLiteHelper.GetInt(query, ref counter);
            dbEntry.Identifier  = SQLiteHelper.GetGuid(query, ref counter);
            dbEntry.Employee    = SQLiteHelper.GetEmployee(query, ref counter);
            dbEntry.CardDate    = SQLiteHelper.GetDateTime(query, ref counter);
            dbEntry.Description = SQLiteHelper.GetString(query, ref counter);
            dbEntry.PlusMinus   = 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 static EmployeeCardViewModel ConvertToEmployeeCardViewModelLite(this EmployeeCard employeeCard)
        {
            EmployeeCardViewModel EmployeeCardViewModel = new EmployeeCardViewModel()
            {
                Id         = employeeCard.Id,
                Identifier = employeeCard.Identifier,

                CardDate    = employeeCard.CardDate,
                Description = employeeCard.Description,
                PlusMinus   = employeeCard.PlusMinus,
                ItemStatus  = employeeCard.ItemStatus,
                IsActive    = employeeCard.Active,

                UpdatedAt = employeeCard.UpdatedAt,
                CreatedAt = employeeCard.CreatedAt
            };

            return(EmployeeCardViewModel);
        }
        public EmployeeCardListResponse GetEmployeeCardsByEmployee(int companyId, Guid EmployeeIdentifier)
        {
            EmployeeCardListResponse     response      = new EmployeeCardListResponse();
            List <EmployeeCardViewModel> EmployeeCards = new List <EmployeeCardViewModel>();

            using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db"))
            {
                db.Open();
                try
                {
                    SqliteCommand selectCommand = new SqliteCommand(
                        SqlCommandSelectPart +
                        "FROM EmployeeCards " +
                        "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())
                    {
                        EmployeeCardViewModel dbEntry = Read(query);
                        EmployeeCards.Add(dbEntry);
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage = error.Message;
                    response.Success        = false;
                    response.Message        = error.Message;
                    response.EmployeeCards  = new List <EmployeeCardViewModel>();
                    return(response);
                }
                db.Close();
            }
            response.Success       = true;
            response.EmployeeCards = EmployeeCards;
            return(response);
        }
Пример #7
0
        public Employee_Card_AddEdit(EmployeeViewModel employee)
        {
            employeeService     = DependencyResolver.Kernel.Get <IEmployeeService>();
            employeeCardService = DependencyResolver.Kernel.Get <IEmployeeCardService>();

            InitializeComponent();

            this.DataContext = this;

            CurrentEmployee                    = employee;
            CurrentEmployeeCardForm            = new EmployeeCardViewModel();
            CurrentEmployeeCardForm.Identifier = Guid.NewGuid();
            CurrentEmployeeCardForm.ItemStatus = ItemStatus.Added;

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

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

            txtNote.Focus();
        }
        private SqliteCommand AddCreateParameters(SqliteCommand insertCommand, EmployeeCardViewModel EmployeeCard)
        {
            insertCommand.Parameters.AddWithValue("@ServerId", EmployeeCard.Id);
            insertCommand.Parameters.AddWithValue("@Identifier", EmployeeCard.Identifier);
            insertCommand.Parameters.AddWithValue("@EmployeeId", ((object)EmployeeCard.Employee.Id) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeIdentifier", ((object)EmployeeCard.Employee.Identifier) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeCode", ((object)EmployeeCard.Employee.Code) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeName", ((object)EmployeeCard.Employee.Name) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@EmployeeInternalCode", ((object)EmployeeCard.Employee.EmployeeCode) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@CardDate", ((object)EmployeeCard.CardDate) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@Description", ((object)EmployeeCard.Description) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@PlusMinus", ((object)EmployeeCard.PlusMinus) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@ItemStatus", ((object)EmployeeCard.ItemStatus) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@IsSynced", EmployeeCard.IsSynced);
            insertCommand.Parameters.AddWithValue("@UpdatedAt", ((object)EmployeeCard.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);
        }
        public EmployeeCardResponse GetEmployeeCard(Guid identifier)
        {
            EmployeeCardResponse  response     = new EmployeeCardResponse();
            EmployeeCardViewModel EmployeeCard = new EmployeeCardViewModel();

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

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    if (query.Read())
                    {
                        EmployeeCardViewModel dbEntry = Read(query);
                        EmployeeCard = dbEntry;
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage = error.Message;
                    response.Success        = false;
                    response.Message        = error.Message;
                    response.EmployeeCard   = new EmployeeCardViewModel();
                    return(response);
                }
                db.Close();
            }
            response.Success      = true;
            response.EmployeeCard = EmployeeCard;
            return(response);
        }
        public static EmployeeCard ConvertToEmployeeCard(this EmployeeCardViewModel employeeCardViewModel)
        {
            EmployeeCard EmployeeCard = new EmployeeCard()
            {
                Id         = employeeCardViewModel.Id,
                Identifier = employeeCardViewModel.Identifier,

                EmployeeId = employeeCardViewModel.Employee?.Id ?? null,

                CardDate    = (DateTime)employeeCardViewModel.CardDate,
                Description = employeeCardViewModel.Description,
                PlusMinus   = employeeCardViewModel.PlusMinus,
                ItemStatus  = employeeCardViewModel.ItemStatus,
                Active      = employeeCardViewModel.IsActive,

                CreatedById = employeeCardViewModel.CreatedBy?.Id ?? null,
                CompanyId   = employeeCardViewModel.Company?.Id ?? null,

                CreatedAt = employeeCardViewModel.CreatedAt,
                UpdatedAt = employeeCardViewModel.UpdatedAt
            };

            return(EmployeeCard);
        }
Пример #11
0
 private void btnCancelCard_Click(object sender, RoutedEventArgs e)
 {
     CurrentEmployeeCardForm            = new EmployeeCardViewModel();
     CurrentEmployeeCardForm.Identifier = Guid.NewGuid();
     CurrentEmployeeCardForm.ItemStatus = ItemStatus.Added;
 }
Пример #12
0
        private void btnAddCard_Click(object sender, RoutedEventArgs e)
        {
            #region Validation

            if (CurrentEmployeeCardForm.Description == null)
            {
                MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Obavezno_poljeDvotačka_Opis"));
                return;
            }

            #endregion

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


                CurrentEmployeeCardForm.Employee = CurrentEmployee;


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

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

                    CurrentEmployeeCardForm            = new EmployeeCardViewModel();
                    CurrentEmployeeCardForm.Identifier = Guid.NewGuid();
                    CurrentEmployeeCardForm.ItemStatus = ItemStatus.Added;
                    CurrentEmployeeCardForm.IsSynced   = false;
                    return;
                }

                CurrentEmployeeCardForm            = new EmployeeCardViewModel();
                CurrentEmployeeCardForm.Identifier = Guid.NewGuid();
                CurrentEmployeeCardForm.ItemStatus = ItemStatus.Added;
                CurrentEmployeeCardForm.IsSynced   = false;
                EmployeeCreatedUpdated();

                DisplayEmployeeCardData();

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

                SubmitButtonEnabled = true;
            });
            th.IsBackground = true;
            th.Start();
        }