示例#1
0
        public static PhonebookPhone ConvertToPhonebookPhone(this PhonebookPhoneViewModel PhonebookPhoneViewModel)
        {
            PhonebookPhone PhonebookPhone = new PhonebookPhone()
            {
                Id         = PhonebookPhoneViewModel.Id,
                Identifier = PhonebookPhoneViewModel.Identifier,

                PhonebookId = PhonebookPhoneViewModel.Phonebook?.Id ?? null,

                Email   = PhonebookPhoneViewModel.Email,
                Name    = PhonebookPhoneViewModel.Name,
                SurName = PhonebookPhoneViewModel.SurName,

                PhoneNumber = PhonebookPhoneViewModel.PhoneNumber,
                ItemStatus  = PhonebookPhoneViewModel.ItemStatus,
                Active      = PhonebookPhoneViewModel.IsActive,
                CreatedById = PhonebookPhoneViewModel.CreatedBy?.Id ?? null,
                CompanyId   = PhonebookPhoneViewModel.Company?.Id ?? null,

                UpdatedAt = PhonebookPhoneViewModel.UpdatedAt,
                CreatedAt = PhonebookPhoneViewModel.CreatedAt,
            };

            return(PhonebookPhone);
        }
示例#2
0
        public PhonebookPhoneResponse Create(PhonebookPhoneViewModel PhonebookPhone)
        {
            PhonebookPhoneResponse response = new PhonebookPhoneResponse();

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

                try
                {
                    insertCommand = AddCreateParameters(insertCommand, PhonebookPhone);
                    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);
            }
        }
示例#3
0
        public static PhonebookPhoneViewModel ConvertToPhonebookPhoneViewModel(this PhonebookPhone PhonebookPhone)
        {
            PhonebookPhoneViewModel PhonebookPhoneViewModel = new PhonebookPhoneViewModel()
            {
                Id         = PhonebookPhone.Id,
                Identifier = PhonebookPhone.Identifier,

                Phonebook = PhonebookPhone.Phonebook?.ConvertToPhonebookViewModelLite(),

                Email   = PhonebookPhone.Email,
                Name    = PhonebookPhone.Name,
                SurName = PhonebookPhone.SurName,

                PhoneNumber = PhonebookPhone.PhoneNumber,


                ItemStatus = PhonebookPhone.ItemStatus,
                IsActive   = PhonebookPhone.Active,

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

                UpdatedAt = PhonebookPhone.UpdatedAt,
                CreatedAt = PhonebookPhone.CreatedAt,
            };

            return(PhonebookPhoneViewModel);
        }
示例#4
0
 private void btnCancelPhone_Click(object sender, RoutedEventArgs e)
 {
     CurrentPhonebookPhoneForm            = new PhonebookPhoneViewModel();
     CurrentPhonebookPhoneForm.Identifier = Guid.NewGuid();
     CurrentPhonebookPhoneForm.ItemStatus = ItemStatus.Added;
     CurrentPhonebookPhoneForm.IsSynced   = false;
 }
示例#5
0
        private void BtnDelete_Click(object sender, RoutedEventArgs e)
        {
            Thread th = new Thread(() =>
            {
                SubmitButtonEnabled = false;

                var response = new PhonebookPhoneSQLiteRepository().SetStatusDeleted(CurrentPhonebookPhoneDG.Identifier);
                if (response.Success)
                {
                    MainWindow.SuccessMessage = ((string)Application.Current.FindResource("Stavka_je_uspešno_obrisanaUzvičnik"));

                    PhonebookCreatedUpdated();

                    DisplayPhonebookPhoneData();

                    CurrentPhonebookPhoneForm            = new PhonebookPhoneViewModel();
                    CurrentPhonebookPhoneForm.Identifier = Guid.NewGuid();
                    CurrentPhonebookPhoneForm.ItemStatus = ItemStatus.Added;
                    CurrentPhonebookPhoneForm.IsSynced   = false;

                    CurrentPhonebookPhoneDG = null;
                }
                else
                {
                    MainWindow.ErrorMessage = response.Message;
                }

                SubmitButtonEnabled = true;
            });

            th.Start();
        }
示例#6
0
        private void btnEditPhone_Click(object sender, RoutedEventArgs e)
        {
            CurrentPhonebookPhoneForm            = new PhonebookPhoneViewModel();
            CurrentPhonebookPhoneForm.Identifier = CurrentPhonebookPhoneDG.Identifier;
            CurrentPhonebookPhoneForm.ItemStatus = ItemStatus.Edited;

            CurrentPhonebookPhoneForm.IsSynced = CurrentPhonebookPhoneDG.IsSynced;
            CurrentPhonebookPhoneForm.Name     = CurrentPhonebookPhoneDG.Name;
            CurrentPhonebookPhoneForm.SurName  = CurrentPhonebookPhoneDG.SurName;

            CurrentPhonebookPhoneForm.PhoneNumber = CurrentPhonebookPhoneDG.PhoneNumber;
            CurrentPhonebookPhoneForm.Email       = CurrentPhonebookPhoneDG.Email;

            CurrentPhonebookPhoneForm.UpdatedAt = CurrentPhonebookPhoneDG.UpdatedAt;
        }
示例#7
0
        private static PhonebookPhoneViewModel Read(SqliteDataReader query)
        {
            int counter = 0;
            PhonebookPhoneViewModel dbEntry = new PhonebookPhoneViewModel();

            dbEntry.Id          = SQLiteHelper.GetInt(query, ref counter);
            dbEntry.Identifier  = SQLiteHelper.GetGuid(query, ref counter);
            dbEntry.Phonebook   = SQLiteHelper.GetPhonebook(query, ref counter);
            dbEntry.Name        = SQLiteHelper.GetString(query, ref counter);
            dbEntry.SurName     = SQLiteHelper.GetString(query, ref counter);
            dbEntry.PhoneNumber = SQLiteHelper.GetString(query, ref counter);
            dbEntry.Email       = 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);
        }
示例#8
0
        public PhonebookPhoneListResponse GetPhonebookPhonesByPhonebook(int companyId, Guid PhonebookIdentifier)
        {
            PhonebookPhoneListResponse     response        = new PhonebookPhoneListResponse();
            List <PhonebookPhoneViewModel> PhonebookPhones = new List <PhonebookPhoneViewModel>();

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

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

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    while (query.Read())
                    {
                        PhonebookPhoneViewModel dbEntry = Read(query);
                        PhonebookPhones.Add(dbEntry);
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage  = error.Message;
                    response.Success         = false;
                    response.Message         = error.Message;
                    response.PhonebookPhones = new List <PhonebookPhoneViewModel>();
                    return(response);
                }
                db.Close();
            }
            response.Success         = true;
            response.PhonebookPhones = PhonebookPhones;
            return(response);
        }
示例#9
0
        private SqliteCommand AddCreateParameters(SqliteCommand insertCommand, PhonebookPhoneViewModel PhonebookPhone)
        {
            insertCommand.Parameters.AddWithValue("@ServerId", PhonebookPhone.Id);
            insertCommand.Parameters.AddWithValue("@Identifier", PhonebookPhone.Identifier);
            insertCommand.Parameters.AddWithValue("@PhonebookId", ((object)PhonebookPhone.Phonebook.Id) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@PhonebookIdentifier", ((object)PhonebookPhone.Phonebook.Identifier) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@PhonebookCode", ((object)PhonebookPhone.Phonebook.Code) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@PhonebookName", ((object)PhonebookPhone.Phonebook.Name) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@Name", ((object)PhonebookPhone.Name) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@SurName", ((object)PhonebookPhone.SurName) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@PhoneNumber", ((object)PhonebookPhone.PhoneNumber) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@Email", ((object)PhonebookPhone.Email) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@ItemStatus", ((object)PhonebookPhone.ItemStatus) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@IsSynced", PhonebookPhone.IsSynced);
            insertCommand.Parameters.AddWithValue("@UpdatedAt", ((object)PhonebookPhone.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);
        }
示例#10
0
        public Phonebook_Phone_AddEdit(PhonebookViewModel Phonebook)
        {
            PhonebookService      = DependencyResolver.Kernel.Get <IPhonebookService>();
            PhonebookPhoneService = DependencyResolver.Kernel.Get <IPhonebookPhoneService>();

            InitializeComponent();

            this.DataContext = this;

            CurrentPhonebook                     = Phonebook;
            CurrentPhonebookPhoneForm            = new PhonebookPhoneViewModel();
            CurrentPhonebookPhoneForm.Identifier = Guid.NewGuid();
            CurrentPhonebookPhoneForm.ItemStatus = ItemStatus.Added;
            CurrentPhonebookPhoneForm.IsSynced   = false;

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

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

            txtName.Focus();
        }
示例#11
0
        public PhonebookPhoneResponse GetPhonebookPhone(Guid identifier)
        {
            PhonebookPhoneResponse  response       = new PhonebookPhoneResponse();
            PhonebookPhoneViewModel PhonebookPhone = new PhonebookPhoneViewModel();

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

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    if (query.Read())
                    {
                        PhonebookPhoneViewModel dbEntry = Read(query);
                        PhonebookPhone = dbEntry;
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage = error.Message;
                    response.Success        = false;
                    response.Message        = error.Message;
                    response.PhonebookPhone = new PhonebookPhoneViewModel();
                    return(response);
                }
                db.Close();
            }
            response.Success        = true;
            response.PhonebookPhone = PhonebookPhone;
            return(response);
        }
示例#12
0
        private void btnAddPhone_Click(object sender, RoutedEventArgs e)
        {
            #region Validation

            if (CurrentPhonebookPhoneForm.Name == null)
            {
                MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Obavezno_poljeDvotačka_Ime"));
                return;
            }

            #endregion

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


                CurrentPhonebookPhoneForm.Phonebook = CurrentPhonebook;


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

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

                    CurrentPhonebookPhoneForm            = new PhonebookPhoneViewModel();
                    CurrentPhonebookPhoneForm.Identifier = Guid.NewGuid();
                    CurrentPhonebookPhoneForm.ItemStatus = ItemStatus.Added;
                    CurrentPhonebookPhoneForm.IsSynced   = false;
                    return;
                }

                CurrentPhonebookPhoneForm            = new PhonebookPhoneViewModel();
                CurrentPhonebookPhoneForm.Identifier = Guid.NewGuid();
                CurrentPhonebookPhoneForm.ItemStatus = ItemStatus.Added;
                CurrentPhonebookPhoneForm.IsSynced   = false;
                PhonebookCreatedUpdated();

                DisplayPhonebookPhoneData();

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