private void BtnSave_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                if (Validate())
                {
                    if (isNew)
                    {
                        if (itemService.ExistItem(txtItem.Text))
                        {
                            MessageBox.Show($"O item: { txtItem.Text } já existe!", "Aviso", MessageBoxButton.OK, MessageBoxImage.Warning);
                            return;
                        }
                        else
                        {
                            if (txtItem.Text != string.Empty)
                            {
                                MA_Items item = new MA_Items();
                                item.Item        = txtItem.Text;
                                item.Description = txtDescription.Text;
                                item.BaseUoM     = txtUoM.Text;
                                string nature = cbNature.Text;
                                if (nature.Equals("Compra", StringComparison.OrdinalIgnoreCase))
                                {
                                    item.Nature = 22413314;
                                }
                                else if (nature.Equals("Produto Acabado", StringComparison.OrdinalIgnoreCase))
                                {
                                    item.Nature = 22413313;
                                }
                                else if (nature.Equals("Semiacabado", StringComparison.OrdinalIgnoreCase))
                                {
                                    item.Nature = 22413312;
                                }

                                item.Disabled   = "0";
                                item.TBCreated  = DateTime.Now;
                                item.TBModified = DateTime.Now;

                                if (itemService.AddItem(item))
                                {
                                    MA_ItemsFiscalYearData itemFYD = new MA_ItemsFiscalYearData();
                                    itemFYD.Item         = txtItem.Text;
                                    itemFYD.StandardCost = Convert.ToDouble(txtStandardCost.Text);
                                    itemFYD.FiscalYear   = (short)DateTime.Now.Year;
                                    itemFYD.TBCreated    = DateTime.Now;
                                    itemFYD.TBModified   = DateTime.Now;

                                    if (itemService.AddItemStandardCost(itemFYD))
                                    {
                                        MA_ItemsBRTaxes itemBR = new MA_ItemsBRTaxes();
                                        itemBR.Item       = txtItem.Text;
                                        itemBR.NCM        = txtNCM.Text;
                                        itemBR.TBCreated  = DateTime.Now;
                                        itemBR.TBModified = DateTime.Now;

                                        if (itemService.AddItemNCM(itemBR))
                                        {
                                            MessageBox.Show($"Item { txtItem.Text } salvo com sucesso!", "Informação",
                                                            MessageBoxButton.OK, MessageBoxImage.Information);

                                            ClearFields();
                                        }
                                    }
                                }
                            }
                            else
                            {
                                MessageBox.Show("Insira um item!", "Aviso",
                                                MessageBoxButton.OK, MessageBoxImage.Warning);
                            }
                        }
                    }
                    else if (isEdit)
                    {
                        if (txtItem.Text != string.Empty)
                        {
                            MA_Items item = itemService.GetItem(txtItem.Text);
                            if (item != null)
                            {
                                item.Item        = txtItem.Text;
                                item.Description = txtDescription.Text;
                                item.BaseUoM     = txtUoM.Text;
                                string nature = cbNature.Text;
                                if (nature.Equals("Compra", StringComparison.OrdinalIgnoreCase))
                                {
                                    item.Nature = 22413314;
                                }
                                else if (nature.Equals("Produto Acabado", StringComparison.OrdinalIgnoreCase))
                                {
                                    item.Nature = 22413313;
                                }
                                else if (nature.Equals("Semiacabado", StringComparison.OrdinalIgnoreCase))
                                {
                                    item.Nature = 22413312;
                                }

                                item.Disabled   = "0";
                                item.TBModified = DateTime.Now;

                                if (itemService.EditItem(item))
                                {
                                    var itemFYD = itemService.GetItemFiscalYearData(txtItem.Text);
                                    itemFYD.Item         = txtItem.Text;
                                    itemFYD.StandardCost = Convert.ToDouble(txtStandardCost.Text);
                                    itemFYD.TBModified   = DateTime.Now;

                                    if (itemService.EditItemStandardCost(itemFYD))
                                    {
                                        var itemBR = itemService.GetItemBRTaxes(txtItem.Text);
                                        itemBR.Item       = txtItem.Text;
                                        itemBR.NCM        = txtNCM.Text;
                                        itemBR.TBModified = DateTime.Now;

                                        if (itemService.EditItemNCM(itemBR))
                                        {
                                            MessageBox.Show($"Item { txtItem.Text } atualizado com sucesso!", "Informação",
                                                            MessageBoxButton.OK, MessageBoxImage.Information);

                                            ClearFields();
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Erro ao salvar!" + "\n" + ex.Message, "Erro",
                                MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }