Example #1
0
        private static void OnCurrentServiceDeliveryPropertyChanged(DependencyObject source, DependencyPropertyChangedEventArgs e)
        {
            ServiceDeliveryPopup     popup           = source as ServiceDeliveryPopup;
            ServiceDeliveryViewModel serviceDelivery = (ServiceDeliveryViewModel)e.NewValue;

            popup.txtServiceDelivery.Text = serviceDelivery != null ? serviceDelivery.Code + " (" + serviceDelivery.Name + ")" : "";
        }
        public ServiceDeliveryResponse Create(ServiceDeliveryViewModel serviceDelivery)
        {
            ServiceDeliveryResponse response = new ServiceDeliveryResponse();

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

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

                try
                {
                    insertCommand = AddCreateParameters(insertCommand, serviceDelivery);
                    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 BtnAdd_Click(object sender, RoutedEventArgs e)
        {
            ServiceDeliveryViewModel ServiceDelivery = new ServiceDeliveryViewModel();

            ServiceDelivery.Identifier = Guid.NewGuid();

            ServiceDelivery_AddEdit addEditForm = new ServiceDelivery_AddEdit(ServiceDelivery, true);

            addEditForm.ServiceDeliveryCreatedUpdated += new ServiceDeliveryHandler(SyncData);
            FlyoutHelper.OpenFlyout(this, ((string)Application.Current.FindResource("Podaci_o_kurirskoj_sluzbi")), 95, addEditForm);
        }
Example #4
0
        public ServiceDelivery_AddEdit(ServiceDeliveryViewModel ServiceDeliveryViewModel, bool isCreateProcess, bool isPopup = false)
        {
            ServiceDeliveryService = DependencyResolver.Kernel.Get <IServiceDeliveryService>();

            InitializeComponent();

            this.DataContext = this;

            CurrentServiceDelivery = ServiceDeliveryViewModel;
            IsCreateProcess        = isCreateProcess;
            IsPopup = isPopup;
        }
Example #5
0
        public ServiceDeliveryResponse Create(ServiceDeliveryViewModel serviceDelivery)
        {
            ServiceDeliveryResponse response = new ServiceDeliveryResponse();

            try
            {
                response = WpfApiHandler.SendToApi <ServiceDeliveryViewModel, ServiceDeliveryResponse>(serviceDelivery, "Create");
            }
            catch (Exception ex)
            {
                response.ServiceDelivery = new ServiceDeliveryViewModel();
                response.Success         = false;
                response.Message         = ex.Message;
            }

            return(response);
        }
        public SqliteCommand AddCreateParameters(SqliteCommand insertCommand, ServiceDeliveryViewModel serviceDelivery)
        {
            insertCommand.Parameters.AddWithValue("@ServerId", serviceDelivery.Id);
            insertCommand.Parameters.AddWithValue("@Identifier", serviceDelivery.Identifier);
            insertCommand.Parameters.AddWithValue("@Code", ((object)serviceDelivery.Code) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@InternalCode", ((object)serviceDelivery.InternalCode) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@Name", ((object)serviceDelivery.Name) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@URL", ((object)serviceDelivery.URL) ?? DBNull.Value);
            insertCommand.Parameters.AddWithValue("@IsSynced", serviceDelivery.IsSynced);
            insertCommand.Parameters.AddWithValue("@UpdatedAt", ((object)serviceDelivery.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);
        }
        private ServiceDeliveryViewModel Read(SqliteDataReader query)
        {
            int counter = 0;
            ServiceDeliveryViewModel dbEntry = new ServiceDeliveryViewModel();

            dbEntry.Id           = SQLiteHelper.GetInt(query, ref counter);
            dbEntry.Identifier   = SQLiteHelper.GetGuid(query, ref counter);
            dbEntry.Code         = SQLiteHelper.GetString(query, ref counter);
            dbEntry.InternalCode = SQLiteHelper.GetString(query, ref counter);
            dbEntry.Name         = SQLiteHelper.GetString(query, ref counter);
            dbEntry.URL          = SQLiteHelper.GetString(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 ServiceDeliveryListResponse GetServiceDeliverysForPopup(int companyId, string filterString)
        {
            ServiceDeliveryListResponse     response         = new ServiceDeliveryListResponse();
            List <ServiceDeliveryViewModel> serviceDeliverys = new List <ServiceDeliveryViewModel>();

            using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db"))
            {
                db.Open();
                try
                {
                    SqliteCommand selectCommand = new SqliteCommand(
                        SqlCommandSelectPart +
                        "FROM ServiceDeliverys " +
                        "WHERE (@Name IS NULL OR @Name = '' OR Name LIKE @Name OR Code LIKE @Name) " +
                        "AND CompanyId = @CompanyId " +
                        "ORDER BY IsSynced, Id DESC " +
                        "LIMIT @ItemsPerPage;", db);

                    selectCommand.Parameters.AddWithValue("@Name", ((object)filterString) != null ? "%" + filterString + "%" : "");
                    selectCommand.Parameters.AddWithValue("@CompanyId", ((object)filterString) != null ? companyId : 0);
                    selectCommand.Parameters.AddWithValue("@ItemsPerPage", 100);

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    while (query.Read())
                    {
                        ServiceDeliveryViewModel dbEntry = Read(query);
                        serviceDeliverys.Add(dbEntry);
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage   = error.Message;
                    response.Success          = false;
                    response.Message          = error.Message;
                    response.ServiceDeliverys = new List <ServiceDeliveryViewModel>();
                    return(response);
                }
                db.Close();
            }
            response.Success          = true;
            response.ServiceDeliverys = serviceDeliverys;
            return(response);
        }
Example #9
0
        public ServiceDeliveryResponse Delete(Guid identifier)
        {
            ServiceDeliveryResponse response = new ServiceDeliveryResponse();

            try
            {
                ServiceDeliveryViewModel serviceDelivery = new ServiceDeliveryViewModel();
                serviceDelivery.Identifier = identifier;
                response = WpfApiHandler.SendToApi <ServiceDeliveryViewModel, ServiceDeliveryResponse>(serviceDelivery, "Delete");
            }
            catch (Exception ex)
            {
                response.ServiceDelivery = new ServiceDeliveryViewModel();
                response.Success         = false;
                response.Message         = ex.Message;
            }

            return(response);
        }
        public static ServiceDeliveryViewModel ConvertToServiceDeliveryViewModelLite(this ServiceDelivery serviceDelivery)
        {
            ServiceDeliveryViewModel serviceDeliveryViewModel = new ServiceDeliveryViewModel()
            {
                Id         = serviceDelivery.Id,
                Identifier = serviceDelivery.Identifier,

                Code         = serviceDelivery.Code,
                InternalCode = serviceDelivery.InternalCode,
                Name         = serviceDelivery.Name,
                URL          = serviceDelivery.URL,

                IsActive = serviceDelivery.Active,

                UpdatedAt = serviceDelivery.UpdatedAt,
                CreatedAt = serviceDelivery.CreatedAt
            };

            return(serviceDeliveryViewModel);
        }
Example #11
0
        public ServiceDeliveryResponse Create(ServiceDeliveryViewModel re)
        {
            ServiceDeliveryResponse response = new ServiceDeliveryResponse();

            try
            {
                ServiceDelivery addedServiceDelivery = unitOfWork.GetServiceDeliveryRepository().Create(re.ConvertToServiceDelivery());

                unitOfWork.Save();

                response.ServiceDelivery = addedServiceDelivery.ConvertToServiceDeliveryViewModel();
                response.Success         = true;
            }
            catch (Exception ex)
            {
                response.ServiceDelivery = new ServiceDeliveryViewModel();
                response.Success         = false;
                response.Message         = ex.Message;
            }

            return(response);
        }
        public ServiceDeliveryResponse GetServiceDelivery(Guid identifier)
        {
            ServiceDeliveryResponse  response        = new ServiceDeliveryResponse();
            ServiceDeliveryViewModel serviceDelivery = null;

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

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    if (query.Read())
                    {
                        ServiceDeliveryViewModel dbEntry = Read(query);
                        serviceDelivery = dbEntry;
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage  = error.Message;
                    response.Success         = false;
                    response.Message         = error.Message;
                    response.ServiceDelivery = new ServiceDeliveryViewModel();
                    return(response);
                }
                db.Close();
            }
            response.Success         = true;
            response.ServiceDelivery = serviceDelivery;
            return(response);
        }
        public static ServiceDelivery ConvertToServiceDelivery(this ServiceDeliveryViewModel serviceDeliveryViewModel)
        {
            ServiceDelivery serviceDelivery = new ServiceDelivery()
            {
                Id         = serviceDeliveryViewModel.Id,
                Identifier = serviceDeliveryViewModel.Identifier,

                Code         = serviceDeliveryViewModel.Code,
                InternalCode = serviceDeliveryViewModel.InternalCode,
                Name         = serviceDeliveryViewModel.Name,
                URL          = serviceDeliveryViewModel.URL,

                Active = serviceDeliveryViewModel.IsActive,

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

                CreatedAt = serviceDeliveryViewModel.CreatedAt,
                UpdatedAt = serviceDeliveryViewModel.UpdatedAt,
            };

            return(serviceDelivery);
        }
        public JsonResult Delete([FromBody] ServiceDeliveryViewModel serviceDelivery)
        {
            ServiceDeliveryResponse response = new ServiceDeliveryResponse();

            try
            {
                response = this.serviceDeliveryService.Delete(serviceDelivery.Identifier);
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.Message = ex.Message;
                Console.WriteLine(ex.Message);
            }

            JsonResult result = Json(response, new Newtonsoft.Json.JsonSerializerSettings()
            {
                Formatting            = Newtonsoft.Json.Formatting.Indented,
                ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Serialize
            });

            return(result);
        }
Example #15
0
        private void BtnSubmit_Click(object sender, RoutedEventArgs e)
        {
            #region Validation

            if (String.IsNullOrEmpty(CurrentServiceDelivery.Name))
            {
                MainWindow.WarningMessage = ((string)Application.Current.FindResource("Obavezno_poljeDvotačka_Naziv"));
                return;
            }

            #endregion

            Thread th = new Thread(() =>
            {
                SubmitButtonContent = ((string)Application.Current.FindResource("Čuvanje_u_tokuTriTacke"));
                SubmitButtonEnabled = false;

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

                ServiceDeliveryResponse response = ServiceDeliveryService.Create(CurrentServiceDelivery);
                if (!response.Success)
                {
                    MainWindow.ErrorMessage = ((string)Application.Current.FindResource("Greška_kod_čuvanja_na_serveruUzvičnik"));
                    SubmitButtonContent     = ((string)Application.Current.FindResource("Proknjiži"));
                    SubmitButtonEnabled     = true;
                }

                if (response.Success)
                {
                    MainWindow.SuccessMessage = ((string)Application.Current.FindResource("Podaci_su_uspešno_sačuvaniUzvičnik"));
                    SubmitButtonContent       = ((string)Application.Current.FindResource("Proknjiži"));
                    SubmitButtonEnabled       = true;

                    ServiceDeliveryCreatedUpdated();

                    if (IsCreateProcess)
                    {
                        CurrentServiceDelivery            = new ServiceDeliveryViewModel();
                        CurrentServiceDelivery.Identifier = Guid.NewGuid();

                        Application.Current.Dispatcher.BeginInvoke(
                            System.Windows.Threading.DispatcherPriority.Normal,
                            new Action(() =>
                        {
                            txtAmount.Focus();
                        })
                            );
                    }
                    else
                    {
                        Application.Current.Dispatcher.BeginInvoke(
                            System.Windows.Threading.DispatcherPriority.Normal,
                            new Action(() =>
                        {
                            if (IsPopup)
                            {
                                FlyoutHelper.CloseFlyoutPopup(this);
                            }
                            else
                            {
                                FlyoutHelper.CloseFlyout(this);
                            }
                        })
                            );
                    }
                }
            });
            th.IsBackground = true;
            th.Start();
        }
        public ServiceDeliveryListResponse GetServiceDeliverysByPage(int companyId, ServiceDeliveryViewModel serviceDeliverySearchObject, int currentPage = 1, int itemsPerPage = 50)
        {
            ServiceDeliveryListResponse     response         = new ServiceDeliveryListResponse();
            List <ServiceDeliveryViewModel> serviceDeliverys = new List <ServiceDeliveryViewModel>();

            using (SqliteConnection db = new SqliteConnection("Filename=SirmiumERPGFC.db"))
            {
                db.Open();
                try
                {
                    SqliteCommand selectCommand = new SqliteCommand(
                        SqlCommandSelectPart +
                        "FROM ServiceDeliverys " +
                        "WHERE (@Name IS NULL OR @Name = '' OR Name LIKE @Name) " +
                        "AND CompanyId = @CompanyId " +
                        "ORDER BY IsSynced, ServerId " +
                        "LIMIT @ItemsPerPage OFFSET @Offset;", db);

                    selectCommand.Parameters.AddWithValue("@Name", ((object)serviceDeliverySearchObject.Search_Name) != null ? "%" + serviceDeliverySearchObject.Search_Name + "%" : "");
                    selectCommand.Parameters.AddWithValue("@CompanyId", companyId);
                    selectCommand.Parameters.AddWithValue("@ItemsPerPage", itemsPerPage);
                    selectCommand.Parameters.AddWithValue("@Offset", (currentPage - 1) * itemsPerPage);

                    SqliteDataReader query = selectCommand.ExecuteReader();

                    while (query.Read())
                    {
                        ServiceDeliveryViewModel dbEntry = Read(query);
                        serviceDeliverys.Add(dbEntry);
                    }

                    selectCommand = new SqliteCommand(
                        "SELECT Count(*) " +
                        "FROM ServiceDeliverys " +
                        "WHERE (@Name IS NULL OR @Name = '' OR Name LIKE @Name) " +
                        "AND CompanyId = @CompanyId;", db);

                    selectCommand.Parameters.AddWithValue("@Name", ((object)serviceDeliverySearchObject.Search_Name) != null ? "%" + serviceDeliverySearchObject.Search_Name + "%" : "");
                    selectCommand.Parameters.AddWithValue("@CompanyId", companyId);

                    query = selectCommand.ExecuteReader();

                    if (query.Read())
                    {
                        response.TotalItems = query.GetInt32(0);
                    }
                }
                catch (SqliteException error)
                {
                    MainWindow.ErrorMessage   = error.Message;
                    response.Success          = false;
                    response.Message          = error.Message;
                    response.ServiceDeliverys = new List <ServiceDeliveryViewModel>();
                    return(response);
                }
                db.Close();
            }
            response.Success          = true;
            response.ServiceDeliverys = serviceDeliverys;
            return(response);
        }