Subversion Repositories SmartDukaan

Rev

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

Rev 6699 Rev 24012
Line 1... Line 1...
1
/**
1
/**
2
 * 
2
 * 
3
 */
3
 */
4
package in.shop2020.inventory.service;
4
package in.shop2020.inventory.service;
5
 
5
 
6
import in.shop2020.purchase.LineItem;
-
 
7
import in.shop2020.purchase.PurchaseOrder;
-
 
8
 
-
 
9
import java.io.BufferedWriter;
6
import java.io.BufferedWriter;
10
import java.io.File;
7
import java.io.File;
11
import java.io.FileWriter;
8
import java.io.FileWriter;
-
 
9
import java.util.List;
12
 
10
 
13
import org.apache.commons.lang.StringUtils;
11
import org.apache.commons.lang.StringUtils;
14
 
12
 
-
 
13
import in.shop2020.model.v1.inventory.InventoryService;
-
 
14
import in.shop2020.model.v1.inventory.VendorItemMapping;
-
 
15
import in.shop2020.purchase.LineItem;
-
 
16
import in.shop2020.purchase.PurchaseOrder;
-
 
17
import in.shop2020.thrift.clients.InventoryClient;
-
 
18
 
15
/**
19
/**
16
 * @author mandeep
20
 * @author mandeep
17
 *
21
 *
18
 */
22
 */
19
public class POExcelGenerator {
23
public class POExcelGenerator {
-
 
24
	public static InventoryService.Client inventoryClient = null;
-
 
25
	static {
-
 
26
		try {
-
 
27
			inventoryClient =  new InventoryClient().getClient();
-
 
28
		} catch(Exception e) {
-
 
29
			e.printStackTrace();
-
 
30
		}
-
 
31
	}
20
    public static File generateExcelSheet(PurchaseOrder purchaseOrder) {
32
    public static File generateExcelSheet(PurchaseOrder purchaseOrder) {
21
        try {
33
        try {
22
        	String tmpDir = System.getProperty("java.io.tmpdir");
34
        	String tmpDir = System.getProperty("java.io.tmpdir");
23
            File file = new File(tmpDir + "/SORL-" + purchaseOrder.getId() + ".xls");
35
            File file = new File(tmpDir + "/SORL-" + purchaseOrder.getId() + ".xls");
24
            BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file));
36
            BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(file));
25
            bufferedWriter.write(StringUtils.join(new String[]{"Brand", "Model Name", "Model Number", "Color", "Quantity Required", "Actual Quantity Fulfilled", "Other colors available"}, '\t'));
37
            bufferedWriter.write(StringUtils.join(new String[]{"Brand", "Model Name", "Model Number", "Color", "Vendor Key", "Quantity Required", "Actual Quantity Fulfilled", "Other colors available"}, '\t'));
26
 
38
 
27
            for (LineItem lineitem : purchaseOrder.getLineitems()) {
39
            for (LineItem lineitem : purchaseOrder.getLineitems()) {
-
 
40
            	String vendorKey = "";
28
                bufferedWriter.newLine();
41
                bufferedWriter.newLine();
-
 
42
                if(lineitem.getBrand()=="Samsung") {
-
 
43
                	List<VendorItemMapping> vims = getVendorItemMapping(lineitem.getItemId());
-
 
44
                	if(vims != null && vims.size() > 0) {
-
 
45
                		for(VendorItemMapping vim : vims) {
-
 
46
                			if(vim.getVendorId() == purchaseOrder.getSupplierId()) {
-
 
47
                				vendorKey = vim.getItemKey();
-
 
48
                				break;
-
 
49
                			}
-
 
50
                		}
-
 
51
                	}
-
 
52
                }
29
                bufferedWriter.write(StringUtils.join(new String[]{lineitem.getBrand(), lineitem.getModelName(), lineitem.getModelNumber(), lineitem.getColor(), String.valueOf(lineitem.getQuantity()), "0", ""}, '\t'));
53
                bufferedWriter.write(StringUtils.join(new String[]{lineitem.getBrand(), lineitem.getModelName(), lineitem.getModelNumber(), lineitem.getColor(), vendorKey, String.valueOf(lineitem.getQuantity()), "0", ""}, '\t'));
30
            }
54
            }
31
 
55
 
32
            bufferedWriter.close();
56
            bufferedWriter.close();
33
            return file;
57
            return file;
34
        } catch (Exception e) {
58
        } catch (Exception e) {
35
            return null;
59
            return null;
36
        }
60
        }
37
    }
61
    }
-
 
62
    
-
 
63
 
-
 
64
private static List<VendorItemMapping> getVendorItemMapping(long itemId) {
-
 
65
	try {
-
 
66
		
-
 
67
		return inventoryClient.getVendorItemMappings(itemId);
-
 
68
	}catch (Exception e) {
-
 
69
		try {
-
 
70
			inventoryClient =  new InventoryClient().getClient();
-
 
71
			return inventoryClient.getVendorItemMappings(itemId);
-
 
72
		} catch(Exception e1) {
-
 
73
			e1.printStackTrace();
-
 
74
		}
-
 
75
	}
-
 
76
	return null;
-
 
77
}
38
}
78
}