use of com.axelor.apps.crm.db.Lead in project axelor-open-suite by axelor.
the class ConvertLeadWizardController method findLead.
protected Lead findLead(ActionRequest request) throws AxelorException {
Context context = request.getContext();
Lead lead = null;
if (context.getParent() != null && context.getParent().get("_model").equals("com.axelor.apps.base.db.Wizard")) {
context = context.getParent();
}
Map leadMap = (Map) context.get("_lead");
if (leadMap != null && leadMap.get("id") != null) {
lead = Beans.get(LeadRepository.class).find(Long.parseLong(leadMap.get("id").toString()));
}
if (lead == null) {
throw new AxelorException(TraceBackRepository.CATEGORY_NO_VALUE, I18n.get(IExceptionMessage.CONVERT_LEAD_MISSING));
}
return lead;
}
use of com.axelor.apps.crm.db.Lead in project axelor-open-suite by axelor.
the class EventController method assignToMeLead.
@SuppressWarnings("rawtypes")
public void assignToMeLead(ActionRequest request, ActionResponse response) {
LeadService leadService = Beans.get(LeadService.class);
LeadRepository leadRepo = Beans.get(LeadRepository.class);
if (request.getContext().get("id") != null) {
Lead lead = leadRepo.find((Long) request.getContext().get("id"));
lead.setUser(AuthUtils.getUser());
if (lead.getStatusSelect() == LeadRepository.LEAD_STATUS_NEW)
lead.setStatusSelect(LeadRepository.LEAD_STATUS_ASSIGNED);
leadService.saveLead(lead);
} else if (((List) request.getContext().get("_ids")) != null) {
for (Lead lead : leadRepo.all().filter("id in ?1", request.getContext().get("_ids")).fetch()) {
lead.setUser(AuthUtils.getUser());
if (lead.getStatusSelect() == LeadRepository.LEAD_STATUS_NEW)
lead.setStatusSelect(LeadRepository.LEAD_STATUS_ASSIGNED);
leadService.saveLead(lead);
}
}
response.setReload(true);
}
use of com.axelor.apps.crm.db.Lead in project axelor-open-suite by axelor.
the class CampaignServiceImpl method addParticipatingTargets.
@Override
@Transactional
public void addParticipatingTargets(Campaign campaign, Campaign campaignContext) {
for (Partner partner : campaignContext.getInvitedPartnerSet()) {
if (partner.isSelected()) {
campaign.addPartner(partner);
campaign.removeInvitedPartnerSetItem(partner);
}
}
for (Lead lead : campaignContext.getInvitedLeadSet()) {
if (lead.isSelected()) {
campaign.addLead(lead);
campaign.removeInvitedLeadSetItem(lead);
}
}
Beans.get(CampaignRepository.class).save(campaign);
}
use of com.axelor.apps.crm.db.Lead in project axelor-open-suite by axelor.
the class CampaignServiceImpl method inviteSelectedTargets.
@Override
@Transactional
public void inviteSelectedTargets(Campaign campaign, Campaign campaignContext) {
Set<Partner> partners = campaign.getPartners();
Set<Partner> notParticipatingPartnerSet = campaign.getNotParticipatingPartnerSet();
for (Partner partner : campaignContext.getPartnerSet()) {
if (partner.isSelected() && !partners.contains(partner) && !notParticipatingPartnerSet.contains(partner)) {
campaign.addInvitedPartnerSetItem(partner);
}
}
Set<Lead> leads = campaign.getLeads();
Set<Lead> notParticipatingLeadSet = campaign.getNotParticipatingLeadSet();
for (Lead lead : campaignContext.getLeadSet()) {
if (lead.isSelected() && !leads.contains(lead) && !notParticipatingLeadSet.contains(lead)) {
campaign.addInvitedLeadSetItem(lead);
}
}
Beans.get(CampaignRepository.class).save(campaign);
}
Aggregations