private void enterDataCompany(JuridicPersonDTO juridicPerson)
 {
     nudAccountCode.Value = juridicPerson.Account.Code;
     tbBusinessName.Text = juridicPerson.BusinessName;
     cbDocumentType.SelectedItem = juridicPerson.DocumentType;
     tbDocument.Text = juridicPerson.Document.ToString();
     cbLocation.SelectedItem = juridicPerson.Location;
     cbConditionRegardingVat.SelectedItem = juridicPerson.ConditionRegardingVat;
     nudZipCode.Value = juridicPerson.ZipCode;
     tbPhone.Text = juridicPerson.Phone;
     tbAddress.Text = juridicPerson.Address;
 }
 public FormModifyJuridicPerson(DataValidation dataValidation, JuridicPersonTypeEnum type, JuridicPersonDTO juridicPerson)
     : base(dataValidation, type)
 {
     InitializeComponent();
     this.juridicPerson = juridicPerson;
     this.enterDataCompany(juridicPerson);
     if (type == JuridicPersonTypeEnum.Client)
     {
         this.Text = "Modificar cliente";
     }
     else if (type == JuridicPersonTypeEnum.Provider)
     {
         this.Text = "Modificar proveedor";
     }
     this.bAccept.Text = "Modificar";
 }
 public void saveJuridicPerson(JuridicPersonDTO juridicPerson)
 {
     try
     {
         if (juridicPerson.Id == null)
             juridicPerson.Id = this.data.addJuridicPerson(juridicPerson);
         else
             this.data.modifyJuridicPerson(juridicPerson);
     }
     catch (Exception)
     {
         if (juridicPerson.Type.Equals(JuridicPersonTypeEnum.Client))
         {
             throw new ArgumentException("El documento ya está siendo utilizado por otro cliente.");
         }
         else if (juridicPerson.Type.Equals(JuridicPersonTypeEnum.Provider))
         {
             throw new ArgumentException("El documento ya está siendo utilizado por otro proveedor.");
         }
     }
 }
        private void bAccept_Click(object sender, EventArgs e)
        {
            if (validate_data())
            {
                int? id = this.juridicPerson == null ? null : this.juridicPerson.Id;
                AccountRangeTemplatesEnum accountType = AccountRangeTemplatesEnum.CREDITOS_COMERCIALES;
                if (juridicPersonType == JuridicPersonTypeEnum.Client)
                    accountType = AccountRangeTemplatesEnum.CREDITOS_COMERCIALES;
                else if (juridicPersonType == JuridicPersonTypeEnum.Provider)
                    accountType = AccountRangeTemplatesEnum.DEUDAS_COMERCIALES;

                AccountDTO account = new AccountDTO(id, (int)nudAccountCode.Value, tbBusinessName.Text, dataValidation.selectAccountRange(accountType, (int)FormSelectCompany.selectedCompanyId), false, false);
                this.dataValidation.saveAccount(account);
                this.juridicPerson = new JuridicPersonDTO(id, tbBusinessName.Text, new JuridicPersonTypeDTO(this.juridicPersonType), (DocumentTypeDTO)cbDocumentType.SelectedItem,
                    long.Parse(tbDocument.Text), (int)FormSelectCompany.selectedCompanyId, (LocationDTO)cbLocation.SelectedItem,
                    (ConditionRegardingVatDTO)cbConditionRegardingVat.SelectedItem, tbPhone.Text, (int)nudZipCode.Value, account, tbAddress.Text);
                try
                {
                    this.dataValidation.saveJuridicPerson(this.juridicPerson);
                    DialogResult = DialogResult.OK;
                    Close();
                }
                catch (Exception ex)
                {
                    this.dataValidation.deleteAccount(account);
                    MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Example #5
0
        public void modifyJuridicPerson(JuridicPersonDTO juridicPerson)
        {
            StringBuilder query = new StringBuilder();
            query.AppendLine("UPDATE JuridicPersons");
            query.AppendLine("SET JuridicPersonTypeId = @juridicPersonTypeId, DocumentTypeId = @documentTypeId, Document = @document, CompanyId = @companyId, LocationId = @locationId, ConditionRegardingVatId = @conditionRegardingVatId, BusinessName = @businessName, Phone = @phone, ZipCode = @zipCode, Address = @address");
            query.AppendLine("WHERE Id = @id;");

            SqlCommand command = new SqlCommand(query.ToString(), this.conection);
            command.CommandType = CommandType.Text;

            command.Parameters.AddWithValue("@id", juridicPerson.Id);
            command.Parameters.AddWithValue("@juridicPersonTypeId", juridicPerson.Type.Id);
            command.Parameters.AddWithValue("@documentTypeId", juridicPerson.DocumentType.Id);
            command.Parameters.AddWithValue("@document", juridicPerson.Document);
            command.Parameters.AddWithValue("@companyId", juridicPerson.CompanyId);
            command.Parameters.AddWithValue("@locationId", juridicPerson.Location.Id);
            command.Parameters.AddWithValue("@conditionRegardingVatId", juridicPerson.ConditionRegardingVat.Id);
            command.Parameters.AddWithValue("@businessName", juridicPerson.BusinessName);
            command.Parameters.AddWithValue("@phone", juridicPerson.Phone);
            command.Parameters.AddWithValue("@zipCode", juridicPerson.ZipCode);
            command.Parameters.AddWithValue("@address", juridicPerson.Address);

            try
            {
                this.conection.Open();
                command.ExecuteNonQuery();
            }
            finally
            {
                if (this.conection.State == ConnectionState.Open)
                    this.conection.Close();
            }
        }
Example #6
0
        public int addJuridicPerson(JuridicPersonDTO juridicPerson)
        {
            StringBuilder query = new StringBuilder();
            query.AppendLine("INSERT INTO JuridicPersons");
            query.AppendLine("(JuridicPersonTypeId, DocumentTypeId, Document, CompanyId, LocationId, ConditionRegardingVatId, BusinessName, Phone, ZipCode, Address, AccountId)");
            query.AppendLine("VALUES (@juridicPersonTypeId, @documentTypeId, @document, @companyId, @locationId, @conditionRegardingVatId, @businessName, @phone, @zipCode, @address, @accountId);");
            query.AppendLine("SELECT SCOPE_IDENTITY();");

            SqlCommand command = new SqlCommand(query.ToString(), this.conection);
            command.CommandType = CommandType.Text;

            command.Parameters.AddWithValue("@juridicPersonTypeId", juridicPerson.Type.Id);
            command.Parameters.AddWithValue("@documentTypeId", juridicPerson.DocumentType.Id);
            command.Parameters.AddWithValue("@document", juridicPerson.Document);
            command.Parameters.AddWithValue("@companyId", juridicPerson.CompanyId);
            command.Parameters.AddWithValue("@locationId", juridicPerson.Location.Id);
            command.Parameters.AddWithValue("@conditionRegardingVatId", juridicPerson.ConditionRegardingVat.Id);
            command.Parameters.AddWithValue("@businessName", juridicPerson.BusinessName);
            command.Parameters.AddWithValue("@phone", juridicPerson.Phone);
            command.Parameters.AddWithValue("@zipCode", juridicPerson.ZipCode);
            command.Parameters.AddWithValue("@address", juridicPerson.Address);
            command.Parameters.AddWithValue("@accountId", juridicPerson.Account.Id);

            int id;

            try
            {
                this.conection.Open();
                id = (int)(decimal)command.ExecuteScalar();
            }
            finally
            {
                if (this.conection.State == ConnectionState.Open)
                    this.conection.Close();
            }

            return id;
        }
Example #7
0
        public List<JuridicPersonDTO> selectJuridicPersonByName(JuridicPersonTypeEnum type, string name)
        {
            StringBuilder query = new StringBuilder();
            query.AppendLine("SELECT JP.Id, BusinessName, JPT.Id TypeId, JPT.Type, DT.Id DocumentTypeId, DT.Type DocumentType, Document, CompanyId, LocationId, L.Name Location, ConditionRegardingVatId, CRV.Name ConditionRegardingVat, Phone, ZipCode, Address, AccountId, A.Code AccountCode FROM JuridicPersons JP");
            query.AppendLine("INNER JOIN Accounts A ON A.Id = JP.AccountId");
            query.AppendLine("INNER JOIN JuridicPersonType JPT ON JPT.Id = JP.JuridicPersonTypeId");
            query.AppendLine("INNER JOIN DocumentType DT ON DT.Id = JP.DocumentTypeId");
            query.AppendLine("INNER JOIN Locations L ON L.Id = JP.LocationId");
            query.AppendLine("INNER JOIN ConditionRegardingVat CRV ON CRV.Id = JP.ConditionRegardingVatId");
            query.AppendLine("WHERE JPT.Id = @typeId AND (@name IS NULL OR @name = '' OR CHARINDEX(@name, BusinessName) > 0);");

            SqlCommand command = new SqlCommand(query.ToString(), this.conection);
            command.CommandType = System.Data.CommandType.Text;

            command.Parameters.AddWithValue("@typeId", (int)type);
            command.Parameters.AddWithValue("@name", name);

            List<JuridicPersonDTO> juridicPersons = new List<JuridicPersonDTO>();
            try
            {
                this.conection.Open();
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    if (reader.HasRows)
                    {
                        while (reader.Read())
                        {
                            JuridicPersonDTO juridicPerson = new JuridicPersonDTO(
                                (int)reader["Id"], reader["BusinessName"].ToString(), new JuridicPersonTypeDTO((int)reader["TypeId"], reader["Type"].ToString()),
                                new DocumentTypeDTO((int)reader["DocumentTypeId"], reader["DocumentType"].ToString()), (long)reader["Document"],
                                (int)reader["CompanyId"], new LocationDTO((int)reader["LocationId"], reader["Location"].ToString()),
                                new ConditionRegardingVatDTO((int)reader["ConditionRegardingVatId"], reader["ConditionRegardingVat"].ToString()),
                                reader["Phone"].ToString(), (int)reader["ZipCode"], new AccountDTO((int)reader["AccountId"], (int)reader["AccountCode"]), reader["Address"].ToString());
                            juridicPersons.Add(juridicPerson);
                        }
                    }
                }
            }
            finally
            {
                if (this.conection.State == ConnectionState.Open)
                    this.conection.Close();
            }

            return juridicPersons;
        }