/// <summary> /// Populate business objects from the data reader /// </summary> /// <param name="dataReader">data reader</param> /// <returns>list of CCompany_person</returns> internal List <CCompany_person> PopulateObjectsFromReader(IDataReader dataReader) { List <CCompany_person> list = new List <CCompany_person>(); while (dataReader.Read()) { CCompany_person businessObject = new CCompany_person(); PopulateBusinessObjectFromReader(businessObject, dataReader); list.Add(businessObject); } return(list); }
/// <summary> /// Populate business object from data reader /// </summary> /// <param name="businessObject">business object</param> /// <param name="dataReader">data reader</param> internal void PopulateBusinessObjectFromReader(CCompany_person businessObject, IDataReader dataReader) { businessObject.Idcompany_person = dataReader.GetInt32(dataReader.GetOrdinal(CCompany_person.CCompany_personFields.Idcompany_person.ToString())); if (!dataReader.IsDBNull(dataReader.GetOrdinal(CCompany_person.CCompany_personFields.Idcompany.ToString()))) { businessObject.Idcompany = (short?)dataReader.GetInt16(dataReader.GetOrdinal(CCompany_person.CCompany_personFields.Idcompany.ToString())); } if (!dataReader.IsDBNull(dataReader.GetOrdinal(CCompany_person.CCompany_personFields.Idperson.ToString()))) { businessObject.Idperson = (short?)dataReader.GetInt16(dataReader.GetOrdinal(CCompany_person.CCompany_personFields.Idperson.ToString())); } }
/// <summary> /// Select by primary key /// </summary> /// <param name="keys">primary keys</param> /// <returns>CCompany_person business object</returns> public CCompany_person SelectByPrimaryKey(CCompany_personKeys keys) { NpgsqlCommand sqlCommand = new NpgsqlCommand(); sqlCommand.CommandText = "public.sp_company_person_SelectByPrimaryKey"; sqlCommand.CommandType = CommandType.StoredProcedure; // Use connection object of base class sqlCommand.Connection = MainConnection; try { sqlCommand.Parameters.Add(new NpgsqlParameter("p_idcompany_person", NpgsqlDbType.Integer, 4, "", ParameterDirection.Input, false, 0, 0, DataRowVersion.Proposed, keys.Idcompany_person)); MainConnection.Open(); NpgsqlDataReader dataReader = sqlCommand.ExecuteReader(); if (dataReader.Read()) { CCompany_person businessObject = new CCompany_person(); PopulateBusinessObjectFromReader(businessObject, dataReader); return(businessObject); } else { return(null); } } catch (Exception ex) { throw new Exception("CCompany_person::SelectByPrimaryKey::Error occured.", ex); } finally { MainConnection.Close(); sqlCommand.Dispose(); } }
/// <summary> /// insert new row in the table /// </summary> /// <param name="businessObject">business object</param> /// <returns>true of successfully insert</returns> public bool Insert(CCompany_person businessObject) { NpgsqlCommand sqlCommand = new NpgsqlCommand(); sqlCommand.CommandText = "public.sp_company_person_Insert"; sqlCommand.CommandType = CommandType.StoredProcedure; // Use connection object of base class sqlCommand.Connection = MainConnection; try { sqlCommand.Parameters.AddWithValue("p_idcompany_person", businessObject.Idcompany_person); sqlCommand.Parameters["p_idcompany_person"].NpgsqlDbType = NpgsqlDbType.Integer; sqlCommand.Parameters["p_idcompany_person"].Direction = ParameterDirection.InputOutput; sqlCommand.Parameters.AddWithValue("p_idcompany", businessObject.Idcompany); sqlCommand.Parameters["p_idcompany"].NpgsqlDbType = NpgsqlDbType.Smallint; sqlCommand.Parameters.AddWithValue("p_idperson", businessObject.Idperson); sqlCommand.Parameters["p_idperson"].NpgsqlDbType = NpgsqlDbType.Smallint; MainConnection.Open(); sqlCommand.ExecuteNonQuery(); businessObject.Idcompany_person = Convert.ToInt32(sqlCommand.Parameters["p_idcompany_person"].Value); return(true); } catch (Exception ex) { throw new Exception("CCompany_person::Insert::Error occured.", ex); } finally { MainConnection.Close(); sqlCommand.Dispose(); } }
/// <summary> /// update row in the table /// </summary> /// <param name="businessObject">business object</param> /// <returns>true for successfully updated</returns> public bool Update(CCompany_person businessObject) { NpgsqlCommand sqlCommand = new NpgsqlCommand(); sqlCommand.CommandText = "public.sp_company_person_Update"; sqlCommand.CommandType = CommandType.StoredProcedure; // Use connection object of base class sqlCommand.Connection = MainConnection; try { sqlCommand.Parameters.AddWithValue("p_idcompany_person", businessObject.Idcompany_person); sqlCommand.Parameters["p_idcompany_person"].NpgsqlDbType = NpgsqlDbType.Integer; sqlCommand.Parameters.AddWithValue("p_idcompany", businessObject.Idcompany); sqlCommand.Parameters["p_idcompany"].NpgsqlDbType = NpgsqlDbType.Smallint; sqlCommand.Parameters.AddWithValue("p_idperson", businessObject.Idperson); sqlCommand.Parameters["p_idperson"].NpgsqlDbType = NpgsqlDbType.Smallint; MainConnection.Open(); if (Convert.ToInt32(sqlCommand.ExecuteScalar()) > 0) { return(true); } return(false); } catch (Exception ex) { throw new Exception("CCompany_person::Update::Error occured.", ex); } finally { MainConnection.Close(); sqlCommand.Dispose(); } }
protected override bool Grabar_Registro() { // --- save company bool result_company = false; CCompany oCompany = new CCompany(); if (cbCompany.EditValue != null) { CCorr_modulesFactory faCorr_modules = new CCorr_modulesFactory(); CCompanyFactory faCompany = new CCompanyFactory(); oCompany.Idcompany = Convert.ToInt16(cbCompany.EditValue); //oCompany.Cod_company = faCorr_modules.GetCorrModule(Comun.Formulario.fmEmpresa.ToString()); oCompany.Ruc = tbClientRuc.Text; oCompany.Business_name = cbCompany.Text; oCompany.Domicile = tbClientDomicile.Text; oCompany.Type_company = 'C'; // --- client oCompany.Phone_client = tbClientPhone.Text; if (!(result_company = faCompany.Update(oCompany))) { result_company = faCompany.Insert(oCompany); } } bool result_price = false; if (oPrice == null) { oPrice = new CPrice(); } CPriceFactory faPrice = new CPriceFactory(); if (!(loadData == LoadData.FromPrice_ToNewVersion)) { oPrice.Cod_price = new ModCorrelatives().GetCorrelative(Comun.Correlative.Price); } // --- person if (ckDispatchPerson.Checked) { oPrice.Dispatch_person = 1; } else { oPrice.Dispatch_person = 0; } // --- curier if (ckDispatchCurier.Checked) { oPrice.Dispatch_curier = 1; } else { oPrice.Dispatch_curier = 0; } // --- transport if (ckDispatchTransport.Checked) { oPrice.Dispatch_transport = 1; } else { oPrice.Dispatch_transport = 0; } // --- fax if (ckDispatchFax.Checked) { oPrice.Dispatch_fax = 1; } else { oPrice.Dispatch_fax = 0; } if (!(result_price = faPrice.Update(oPrice))) { result_price = faPrice.Insert(oPrice); } // --- save contacts CPerson oContact = new CPerson(); CPersonFactory faPerson = new CPersonFactory(); CPrice_company_person oPrice_company_person = new CPrice_company_person(); CPrice_company_personFactory faPrice_company_person = new CPrice_company_personFactory(); // --- delete all if (result_price) { oPrice_version = new CPrice_version(); CPrice_versionFactory faPrice_version = new CPrice_versionFactory(); oPrice_version.Idprice = oPrice.Idprice; oPrice_version.Idcompany = null; if (cbCompany.EditValue != null) { oPrice_version.Idcompany = Convert.ToInt16(cbCompany.EditValue); } oPrice_version.Cod_type_sample = cbTypeSample.EditValue.ToString(); oPrice_version.Num_version = new ModPrice().GetNextNumVersion(oPrice.Idprice); oPrice_version.Date_creation = deDateCreation.DateTime; oPrice_version.Num_days_valid = Convert.ToInt16(tbNumDaysValid.Value); oPrice_version.Observation = tbObservation.Text; oPrice_version.Iduser = Comun.User_system.Iduser; oPrice_version.Status_price = 1; bool result_price_version = false; if (!(result_price_version = faPrice_version.Update(oPrice_version))) { result_price_version = faPrice_version.Insert(oPrice_version); } if (result_price_version) { //guardar párrafos iniciales CMemo_price oMemoPrice; CMemo_priceFactory faMemo_price = new CMemo_priceFactory(); //guardando el parrafo inicial oMemoPrice = new CMemo_price(); oMemoPrice.Idprice_version = oPrice_version.Idprice_version; oMemoPrice.Paragraph = richTextIni.RichTextBox.Rtf; oMemoPrice.Memo_type = 1; faMemo_price.Insert(oMemoPrice); //guardando el parrafo final oMemoPrice = new CMemo_price(); oMemoPrice.Idprice_version = oPrice_version.Idprice_version; oMemoPrice.Paragraph = richTextEnd.RichTextBox.Rtf; oMemoPrice.Memo_type = 2; faMemo_price.Insert(oMemoPrice); if (ckSaveHistoryIni.Checked) { CMemo_template oMemo_template = new CMemo_template(); CMemo_templateFactory faMemo_template = new CMemo_templateFactory(); oMemo_template.Paragraph = richTextIni.RichTextBox.Text; oMemo_template.Paragraph_rtf = richTextIni.RichTextBox.Rtf.ToString(); oMemo_template.Memo_type = 1; faMemo_template.Insert(oMemo_template); } //guardar párrafos finales if (ckSaveHistoryEnd.Checked) { CMemo_template oMemo_template = new CMemo_template(); CMemo_templateFactory faMemo_template = new CMemo_templateFactory(); oMemo_template.Paragraph_rtf = richTextEnd.RichTextBox.Rtf; oMemo_template.Paragraph = richTextEnd.RichTextBox.Text.ToString(); oMemo_template.Memo_type = 2; faMemo_template.Insert(oMemo_template); } } if (result_price) { CCompany_person oCompany_person = new CCompany_person(); CCompany_personFactory faCompany_person = new CCompany_personFactory(); for (int i = 0; i < gvContact.RowCount; i++) { oContact.Idperson = Convert.ToInt16(gvContact.GetRowCellValue(i, gcCon_Idperson)); oContact.Phone = gvContact.GetRowCellValue(i, gcCon_Phone).ToString(); oContact.Cellphone = gvContact.GetRowCellValue(i, gcCon_Cellphone).ToString(); oContact.Mail = gvContact.GetRowCellValue(i, gcCon_Mail).ToString(); oContact.Allname = gvContact.GetRowCellValue(i, gcCon_Allname).ToString(); bool result_contact = false; if (!(result_contact = faPerson.Update(oContact))) { result_contact = faPerson.Insert(oContact); } if (result_contact) { oPrice_company_person = new CPrice_company_person(); oPrice_company_person.Idprice_company_person = 0; oPrice_company_person.Idcompany = oCompany.Idcompany; oPrice_company_person.Idprice = oPrice.Idprice; oPrice_company_person.Idperson = oContact.Idperson; oPrice_company_person.Idprice_version = oPrice_version.Idprice_version; oPrice_company_person.Person_type = Convert.ToInt16(gvContact.GetRowCellValue(i, gcCon_Person_type)); if (!faPrice_company_person.Update(oPrice_company_person)) { faPrice_company_person.Insert(oPrice_company_person); } } // --- save history company person if (!faCompany_person.GetAll().Exists(c => c.Idcompany == oCompany.Idcompany && c.Idperson == oContact.Idperson)) { oCompany_person = new CCompany_person(); oCompany_person.Idcompany = oCompany.Idcompany; oCompany_person.Idperson = oContact.Idperson; if (!faCompany_person.Update(oCompany_person)) { faCompany_person.Insert(oCompany_person); } } } } if (result_price_version) { // guardar detalle CPrice_version_detail oPrice_version_detail = new CPrice_version_detail(); CPrice_version_detailFactory faPrice_version_detail = new CPrice_version_detailFactory(); for (int i = 0; i < gvPrice.RowCount; i++) { oPrice_version_detail = new CPrice_version_detail(); oPrice_version_detail.Idprice_version = oPrice_version.Idprice_version; oPrice_version_detail.Idtemplate_method = Convert.ToInt32(gvPrice.GetRowCellValue(i, gcolItem_Idtemplate_method)); oPrice_version_detail.Num_item = Convert.ToInt32(gvPrice.GetRowCellValue(i, gcolItem_Num_item)); oPrice_version_detail.Amount_item = Convert.ToInt32(gvPrice.GetRowCellValue(i, gcolItem_Amount_item)); oPrice_version_detail.Sale_price = Convert.ToDecimal(gvPrice.GetRowCellValue(i, gcolItem_Sale_price)); oPrice_version_detail.Unit_price = Convert.ToDecimal(gvPrice.GetRowCellValue(i, gcolItem_Unit_price)); if (!faPrice_version_detail.Update(oPrice_version_detail)) { faPrice_version_detail.Insert(oPrice_version_detail); } } } if (result_price_version) { if (gvAnexos.RowCount > 0) { // guardar adjuntos ListCopy lstCopySave = new ListCopy(); List <Anexos> lstAnexos = (gcAnexos.DataSource as BindingList <Anexos>).ToList(); if (lstAnexos != null && lstAnexos.Count > 0) { foreach (Anexos item in lstAnexos) { if (item.Source_filename.Trim().Length > 0) { string destiny_directory = oSettings.GetPathAttachPrice(); lstCopySave.Add( new CItemCopy() { Filename = item.Filename, Source_file = item.Source_filename, Destiny_directory = destiny_directory }); } } lstCopySave.Save(oPrice, oPrice_version); } } } } return(true); }