Subversion Repositories SmartDukaan

Rev

Rev 21234 | Rev 21242 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 21234 Rev 21237
Line 1... Line 1...
1
package in.shop2020.hotspot.dashbaord.server;
1
package in.shop2020.hotspot.dashbaord.server;
2
 
2
 
-
 
3
import in.shop2020.model.v1.order.Order;
-
 
4
import in.shop2020.model.v1.order.TransactionService.Client;
3
import in.shop2020.thrift.clients.TransactionClient;
5
import in.shop2020.thrift.clients.TransactionClient;
4
 
6
 
5
import java.io.File;
7
import java.io.File;
6
import java.io.FileInputStream;
8
import java.io.FileInputStream;
7
import java.util.ArrayList;
9
import java.util.ArrayList;
Line 12... Line 14...
12
import org.slf4j.Logger;
14
import org.slf4j.Logger;
13
import org.slf4j.LoggerFactory;
15
import org.slf4j.LoggerFactory;
14
 
16
 
15
public class ProcessBulkBilling{
17
public class ProcessBulkBilling{
16
	private static  Logger logger = LoggerFactory.getLogger(ProcessBulkBilling.class);
18
	private static  Logger logger = LoggerFactory.getLogger(ProcessBulkBilling.class);
-
 
19
	
-
 
20
	private String fileName;
-
 
21
	private String logisticsTransactionId;
-
 
22
	private String packageDimensions;
-
 
23
	private ArrayList<String> imei_list = new ArrayList<String>();
-
 
24
	
-
 
25
	
-
 
26
	ProcessBulkBilling(String fileName, String logisticsTransactionId, String packageDimensions) {
-
 
27
		logger.info("FileName "+fileName+" logisticsTransactionId "+logisticsTransactionId+" packageDimension "+packageDimensions);
-
 
28
		this.fileName = fileName;
-
 
29
		this.logisticsTransactionId = logisticsTransactionId;
-
 
30
		this.packageDimensions = packageDimensions;
-
 
31
	}
17
 
32
 
18
	public boolean processReport(String fileName) {
33
	public boolean processReport() {
19
		
-
 
20
		logger.info("Inside bulk billing process");
34
		logger.info("Inside bulk billing process");
21
 
-
 
22
		try{
35
		try{
23
 
36
 
24
			FileInputStream iFile = new FileInputStream(new File(fileName));
37
			FileInputStream iFile = new FileInputStream(new File(fileName));
25
			HSSFWorkbook workbook = new HSSFWorkbook(iFile);
38
			HSSFWorkbook workbook = new HSSFWorkbook(iFile);
26
			HSSFSheet sheet = workbook.getSheetAt(0);
39
			HSSFSheet sheet = workbook.getSheetAt(0);
27
 
40
 
28
			for (int iterator=sheet.getFirstRowNum()+1;iterator<=sheet.getLastRowNum();iterator++){
41
			for (int iterator=sheet.getFirstRowNum()+1;iterator<=sheet.getLastRowNum();iterator++){
-
 
42
				String imei = (sheet.getRow(iterator).getCell(0).getStringCellValue()).trim();
-
 
43
				if (imei == null || imei.isEmpty()){
-
 
44
					break;
29
				;
45
				}
-
 
46
				imei_list.add(imei);
30
			}
47
			}
31
			return true;
48
			return true;
32
		}
49
		}
33
		catch(Exception e){
50
		catch(Exception e){
34
			e.printStackTrace();
51
			e.printStackTrace();
35
			return false;
52
			return false;
36
		}
53
		}
37
	}
54
	}
-
 
55
	
-
 
56
	public String checkBillingDetails(){
-
 
57
		List<Order> orders_list;
-
 
58
		try{
-
 
59
		Client tc = new TransactionClient().getClient();
-
 
60
		orders_list = tc.getGroupOrdersByLogisticsTxnId(logisticsTransactionId);
-
 
61
		}
-
 
62
		catch(Exception e){
-
 
63
			e.printStackTrace();
-
 
64
			return "Service Error!!!";
-
 
65
		}
-
 
66
		long total_quantity = 0;
-
 
67
		for (Order o : orders_list){
-
 
68
			total_quantity = (long) (total_quantity + o.getLineitems().get(0).getQuantity());
-
 
69
		}
-
 
70
		if (total_quantity != imei_list.size()){
-
 
71
			return "Quantity and imei mismatch.Supplied imei's not equal to quantity to bill";
-
 
72
		}
-
 
73
		return "Success";
-
 
74
	}
38
 
75
 
39
}
76
}
40
77