Пример #1
0
        private void SaveCategory()
        {
            if (ValidateEntry())
            {
                string errMsg = string.Empty;
                try
                {
                    if (formMode == FormMode.AddNew)
                    {
                        errMsg = "Gagal menyimpan kategori!";
                        categoryRepository.Save(AssignCategory(this.type, Guid.Empty));

                        DoubleEntryForIncomeExpense();

                        if (this.isSaveAndNew)
                        {
                            ClearForm();
                        }
                        else
                        {
                            this.Close();
                        }
                    }
                    else if (formMode == FormMode.Edit)
                    {
                        errMsg = "Gagal mengubah kategori!";

                        if (cboGroup.Text == "Hutang" || cboGroup.Text == "Piutang")
                        {
                            categoryRepository.Update(AssignCategory(this.type, new Guid(lblID.Text)));

                            Category category2 = null;

                            if (this.type == "Income")
                            {
                                category2      = categoryRepository.GetByNameAndType(lblCategory.Text, "Expense");
                                category2.Type = "Expense";
                            }
                            else if (this.type == "Expense")
                            {
                                category2      = categoryRepository.GetByNameAndType(lblCategory.Text, "Income");
                                category2.Type = "Income";
                            }

                            category2.Name = txtName.Text;

                            categoryRepository.Update(category2);
                        }
                        else
                        {
                            categoryRepository.Update(AssignCategory(this.type, new Guid(lblID.Text)));
                        }

                        this.Close();
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(errMsg, "Info", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

                frmMain.LoadCategoryByType(frmMain.CboFilterText);
                frmMain.DisableEditDelete();
            }
        }