Subversion Repositories SmartDukaan

Rev

Rev 27010 | Rev 27015 | Go to most recent revision | Details | Compare with Previous | 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;
27009 amit.gupta 5
import java.time.format.DateTimeFormatter;
6
import java.util.Date;
27007 amit.gupta 7
import java.util.List;
8
 
9
import org.apache.commons.io.input.XmlStreamReader;
10
import org.apache.logging.log4j.LogManager;
11
import org.apache.logging.log4j.Logger;
12
import org.springframework.beans.factory.annotation.Autowired;
13
import org.springframework.stereotype.Component;
14
import org.springframework.transaction.annotation.Transactional;
15
 
16
import com.fasterxml.jackson.dataformat.xml.XmlMapper;
27009 amit.gupta 17
import com.spice.profitmandi.common.util.FormattingUtils;
27007 amit.gupta 18
import com.spice.profitmandi.dao.entity.user.Lead;
19
import com.spice.profitmandi.dao.enumuration.dtr.LeadStatus;
20
import com.spice.profitmandi.dao.repository.dtr.LeadRepository;
21
 
22
@Component
23
@Transactional(rollbackFor = Throwable.class)
24
public class LeadSyncRunner {
25
 
26
	@Autowired
27
	LeadRepository leadRepository;
28
 
29
	private static final Logger LOGGER = LogManager.getLogger(LeadSyncRunner.class);
30
 
31
	public void syncLeads() throws Exception {
32
		XmlMapper xmlMapper = new XmlMapper();
33
		XmlStreamReader xmlStreamReader = new XmlStreamReader(new File("/root/leads.xml"));
34
		Items items = xmlMapper.readValue(xmlStreamReader, Items.class);
35
		List<Item> itemList = items.getItems();
36
		for (Item item : itemList) {
37
			Lead lead = new Lead();
38
			lead.setAddress(item.getLocation().trim());
39
			lead.setLeadMobile(item.getNumber().trim());
40
			lead.setCity(item.getLocation().trim());
41
			lead.setState(item.getState());
42
			lead.setLastName(item.getBusiness().trim());
43
			if(lead.getState().equals("Uttar Pradesh")) {
44
				lead.setAssignTo(25);
45
			} else if (lead.getState().equals("Haryana")) {
46
				lead.setAssignTo(14);
47
			} else if (lead.getState().equals("Delhi")) {
48
				lead.setAssignTo(14);
49
			} else {
27009 amit.gupta 50
				//Assign to sm
51
				lead.setAssignTo(53);
27007 amit.gupta 52
			}
27010 amit.gupta 53
			lead.setAuthId(lead.getAssignTo());
27007 amit.gupta 54
			lead.setCreatedBy("admin-sync");
55
			lead.setSource("SMARTDUKAAN");
56
			lead.setFirstName(item.getName().trim());
27012 amit.gupta 57
			lead.setStatus(LeadStatus.followUp);
27007 amit.gupta 58
			lead.setColor("yellow");
27009 amit.gupta 59
			lead.setCreatedTimestamp(LocalDateTime.parse(item.getCreated()));
27007 amit.gupta 60
			lead.setUpdatedTimestamp(LocalDateTime.now());
61
			leadRepository.persist(lead);
62
		}
63
	}
64
}