Subversion Repositories SmartDukaan

Rev

Rev 27009 | Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
27007 amit.gupta 1
package com.smartdukaan.cron.scheduled.leadsync;
2
 
3
import java.io.File;
4
import java.time.LocalDateTime;
5
import java.util.List;
6
 
7
import org.apache.commons.io.input.XmlStreamReader;
8
import org.apache.logging.log4j.LogManager;
9
import org.apache.logging.log4j.Logger;
10
import org.springframework.beans.factory.annotation.Autowired;
11
import org.springframework.stereotype.Component;
12
import org.springframework.transaction.annotation.Transactional;
13
 
14
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
15
import com.spice.profitmandi.dao.entity.user.Lead;
16
import com.spice.profitmandi.dao.enumuration.dtr.LeadStatus;
17
import com.spice.profitmandi.dao.repository.dtr.LeadRepository;
18
 
19
@Component
20
@Transactional(rollbackFor = Throwable.class)
21
public class LeadSyncRunner {
22
 
23
	@Autowired
24
	LeadRepository leadRepository;
25
 
26
	private static final Logger LOGGER = LogManager.getLogger(LeadSyncRunner.class);
27
 
28
	public void syncLeads() throws Exception {
29
		XmlMapper xmlMapper = new XmlMapper();
30
		XmlStreamReader xmlStreamReader = new XmlStreamReader(new File("/root/leads.xml"));
31
		Items items = xmlMapper.readValue(xmlStreamReader, Items.class);
32
		List<Item> itemList = items.getItems();
33
		for (Item item : itemList) {
34
			Lead lead = new Lead();
35
			lead.setAddress(item.getLocation().trim());
36
			lead.setLeadMobile(item.getNumber().trim());
37
			lead.setCity(item.getLocation().trim());
38
			lead.setAuthId(0);
39
			lead.setState(item.getState());
40
			lead.setLastName(item.getBusiness().trim());
41
			if(lead.getState().equals("Uttar Pradesh")) {
42
				lead.setAssignTo(25);
43
			} else if (lead.getState().equals("Haryana")) {
44
				lead.setAssignTo(14);
45
			} else if (lead.getState().equals("Delhi")) {
46
				lead.setAssignTo(14);
47
			} else {
48
				lead.setAssignTo(0);
49
			}
50
			lead.setCreatedBy("admin-sync");
51
			lead.setSource("SMARTDUKAAN");
52
			lead.setFirstName(item.getName().trim());
53
			lead.setStatus(LeadStatus.pending);
54
			lead.setColor("yellow");
55
			lead.setUpdatedTimestamp(LocalDateTime.now());
56
			leadRepository.persist(lead);
57
		}
58
	}
59
}