public int AddContact(BusinessPartnerContact newContact) { var query = BusinessPartnerQueries.InsertContact; var parameters = DataHelper.ExtractParameters(newContact); return(dbContext.Execute <int>(query, parameters)); }
/// <summary> /// Pega um parceiro de negócio pelo código /// </summary> /// <param name="pCode">Código do Contato</param> /// <param name="pCompanyDb">Banco de Dados</param> /// <returns>Um item preenchido</returns> /// <exception cref="ArgumentNullException">Null passado com código</exception> /// <exception cref="Exception">Não encontro o registro</exception> public static BusinessPartnerContact GetContact(int pCode, string pCompanyDb) { pCompanyDb.CheckForArgumentNull("pCompanyDb"); var bp = new BusinessPartnerContact(pCompanyDb); if (!bp.GetByKey(pCode)) { throw new Exception(string.Format(DontFindText1Key, "Contato", pCode)); } return(bp); }
/// <summary> /// Pega um parceiro de negócio pelo código /// </summary> /// <param name="pCardCode">Código do Item</param> /// <param name="pName">Nome do Contato</param> /// <param name="pCompanyDb">Banco de Dados</param> /// <returns>Um item preenchido</returns> /// <exception cref="ArgumentNullException">Null passado com código</exception> /// <exception cref="Exception">Não encontro o registro</exception> public static BusinessPartnerContact GetContactByName(string pCardCode, string pName, string pCompanyDb) { pCardCode.CheckForArgumentNull("pCardCode"); pCompanyDb.CheckForArgumentNull("pCompanyDb"); var bp = new BusinessPartnerContact(pCompanyDb); var query = new TableQuery(bp); query.Where.Add(new QueryParam(bp.Collumns[BusinessPartnerContact.FieldsName.CardCode], pCardCode)); query.Where.Add(new QueryParam(bp.Collumns[BusinessPartnerContact.FieldsName.Name], pName)); var contact = bp.FillCollection <BusinessPartnerContact>(query).SingleOrDefault(); if (contact == null) { throw new Exception(string.Format(DontFindText2Key, "Contato", pCardCode, pName)); } return(contact); }
public ProposalView() { Partner = new BusinessPartner(); IsCompany = true; Contact = new BusinessPartnerContact(); }
public int InsertProposal(APIEmpIdModel <ProposalVM> model) { try { var businessPartnerId = 0; var contactId = (model.Model.SelectedContactId == 0)?null: model.Model.SelectedContactId; var bpService = new BusinessPartnerService(dbContext); if (model.Model.CreateNew) { var bp = new BusinessPartner(); bp.Address = model.Model.Partner.Address; bp.EmailId = model.Model.Partner.EmailId; bp.MobileNo = model.Model.Partner.MobileNo; bp.VATNo = model.Model.Partner.VATNo; if (model.Model.IsCompany) { bp.Name = model.Model.Partner.Name; //bp.PointofContact = model.Model.Partner.PointofContact; bp.BusinessPartnerTypeId = (int)BusinessPartnerTypeName.Company; } else { bp.Name = model.Model.PersonName; bp.BusinessPartnerTypeId = (int)BusinessPartnerTypeName.Individual; } businessPartnerId = bpService.Add(bp); } else { if (model.Model.IsCompany) { businessPartnerId = model.Model.SelectedCompanyId.Value; } else { businessPartnerId = model.Model.SelectedPersonId.Value; } } if (!contactId.HasValue && model.Model.NewContact.Id == 0 && model.Model.NewContact.Name != "Name") { var contact = new BusinessPartnerContact(); contact.BusinessPartnerId = businessPartnerId; contact.ContactNo = model.Model.NewContact.ContactNo; contact.Email = model.Model.NewContact.Email; contact.Name = model.Model.NewContact.Name; contactId = bpService.AddContact(contact); } var proposal = new Proposal() { BusinessPartnerId = businessPartnerId, ContactMode = model.Model.ContactMode, Description = model.Model.Description, BusinessPartnerContactId = contactId, Discount = (model.Model.Discount.HasValue)? model.Model.Discount.Value:0, VAT = model.Model.VAT }; var queryAddProposal = ProposalQueries.AddProposal; var parametersAddProposal = DataHelper.ExtractParameters(proposal); var proposalId = dbContext.Get <int>(queryAddProposal, parametersAddProposal); model.Model.Items.ForEach(p => p.ProposalId = proposalId); var queries = new List <QueryWithParameters>(); var queryAddProposalItem = ProposalQueries.AddProposalItem; foreach (var item in model.Model.Items) { var parametersAddProposalItem = DataHelper.ExtractParameters(item); queries.Add(new QueryWithParameters() { Query = queryAddProposalItem, Parameters = parametersAddProposalItem }); } //Add Event var erpEvent = new ERPEventHelper().GetEventModel(model.EmployeeId, proposalId, EventTypes.EnquiryCreate); queries.Add(new QueryWithParameters() { Query = EventQueries.EventInsert, Parameters = DataHelper.ExtractParameters(erpEvent) }); dbContext.ExecuteTransaction(queries); return(1); } catch (Exception ex) { throw ex; } }