Rev 11992 | Rev 12112 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
package in.shop2020.creation.controllers;import in.shop2020.metamodel.util.ContentPojo;import in.shop2020.metamodel.util.ItemPojo;import in.shop2020.metamodel.util.PrivateDealPojo;import in.shop2020.model.v1.catalog.CatalogService.Client;import in.shop2020.model.v1.catalog.Item;import in.shop2020.storage.mongo.StorageManager;import in.shop2020.thrift.clients.CatalogClient;import in.shop2020.thrift.clients.config.ConfigClient;import java.io.BufferedWriter;import java.io.File;import java.io.FileNotFoundException;import java.io.FileWriter;import java.io.IOException;import java.net.UnknownHostException;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Scanner;import org.apache.thrift.TException;import org.apache.thrift.transport.TTransportException;import org.bson.BasicBSONObject;import com.mongodb.BasicDBObject;import com.mongodb.DB;import com.mongodb.DBCollection;import com.mongodb.DBObject;import com.mongodb.MongoClient;import com.mongodb.MongoClientURI;public class NewsLetterController {List<Item> privateDealItems;public List<Item> getPrivateDealItems() {return privateDealItems;}public void setPrivateDealItems(List<Item> privateDealItems) {this.privateDealItems = privateDealItems;}List<Item> aliveItems;public Map<Long, Item> privateDealItemMap = new HashMap<Long,Item>();public NewsLetterController() {try {Client CatalogClient = new CatalogClient().getClient();privateDealItems = CatalogClient.getPrivateDealItems(0,0);System.out.println("Init Private Deals Map");for(Item privateDealItem:privateDealItems){System.out.println("Putting "+ privateDealItem.getId());privateDealItemMap.put(privateDealItem.getId(),privateDealItem);}aliveItems = CatalogClient.getAllAliveItems();setPrivateDealItems(privateDealItems);} catch (TTransportException e) {e.printStackTrace();} catch (TException e) {e.printStackTrace();}}public String index() {return "index";}public ContentPojo getProductAttributes(long catalog_item_id){return StorageManager.getById(StorageManager.views.siteContent, new Long(catalog_item_id),ContentPojo.class);}public void createPrivateDealsNewsLetter(String[] itemids) throws IOException{File file = new File("/home/newsletter.html");BufferedWriter fileWriter = new BufferedWriter(new FileWriter(file));ContentPojo cp;Map<Long,ItemPojo> ItemPojoMap = new HashMap<Long,ItemPojo>();Map<Long,ContentPojo> ContentPojoMap = new HashMap<Long,ContentPojo>();for(String itemid:itemids){System.out.println("Item ID "+itemid);System.out.println("Catalog Item ID "+privateDealItemMap.get(Long.parseLong(itemid)).getCatalogItemId());cp = getProductAttributes(privateDealItemMap.get(Long.parseLong(itemid)).getCatalogItemId());if(cp==null){continue;}System.out.println("Content Pojo "+cp.getTitle());for(ItemPojo itemPojo:cp.getItems()){System.out.println("Item ID in list "+Long.parseLong(itemid) +" Item ID in item pojo "+itemPojo.getId().longValue());if(Long.parseLong(itemid)==itemPojo.getId().longValue()){ItemPojoMap.put(itemPojo.getId(),itemPojo);}}ContentPojoMap.put(new Long(itemid),cp);}CreateHeader(fileWriter);int i=1;fileWriter.write("<div id=\"partition\" style=\"width:652; float:left; background-color: white;\">");for(ItemPojo itemPojo:ItemPojoMap.values()){cp = ContentPojoMap.get(itemPojo.getId());itemPojo.getColor();cp.getIconImageUrl();cp.getUrl();if(i%2==1){//fileWriter.write("<div class=\"box\">");fileWriter.write("<div class=\"box\">");fileWriter.write("<div><a style=\"text-decoration: none; color:#0088cc;\" target=\"_blank\" href=\""+cp.getUrl()+"\">");fileWriter.write("<h1 style=\"padding: 12px 0px 0px 66px; font-family:Lucida Grande, sans-serif; font-size:18px; font-style:regular; color:black;\">"+cp.getTitle()+"</h1>");fileWriter.write("<p style=\"padding: 0px 0px 0px 0px; font-family:Lucida Grande, sans-serif; font-size:14px; font-style:regular; color:#666666; text-align:center;\">");fileWriter.write("<strike>MRP</strike> | <strike>Regular Price</strike> |<span class=\"special\"> Special Price</span>");fileWriter.write("<br>");fileWriter.write("<strike> <img src=\"http://static0.saholic.com/images/rupee-icon-6427.png\" alt=\"rupees\" style=\"height:11px\">"+itemPojo.getMrp()+"</strike> | <strike><img src=\"http://static0.saholic.com/images/rupee-icon-6427.png\" alt=\"rupees\" style=\"height:11px\">"+itemPojo.getSellingPrice()+"</strike> | <img src=\"http://static0.saholic.com/images/rupee-icon-6427.png\" alt=\"rupees\" style=\"height:11px\"> <span class=\"special\">"+itemPojo.getDealPojo().getDealPrice()+"</span><br>");fileWriter.write("Use Coupon:<b><span class=\"coupon\"> ASDFG</span></b></p>");fileWriter.write("<img height=\"140\" style=\"padding: 8px 0px 0px 112px;\" alt=\"headphones\" src=\""+cp.getIconImageUrl()+"\">");fileWriter.write("</a></div><a style=\"text-decoration: none; color:#0088cc;\" target=\"_blank\" href=\""+cp.getUrl()+"/\">");fileWriter.write("</a></div>");}else{//fileWriter.write("<div class=\"box\">");fileWriter.write("<div class=\"box\">");fileWriter.write("<div><a style=\"text-decoration: none; color:#0088cc;\" target=\"_blank\" href=\""+cp.getUrl()+"\">");fileWriter.write("<h1 style=\"padding: 12px 0px 0px 66px; font-family:Lucida Grande, sans-serif; font-size:18px; font-style:regular; color:black;\">"+cp.getTitle()+"</h1>");fileWriter.write("<p style=\"padding: 0px 0px 0px 0px; font-family:Lucida Grande, sans-serif; font-size:14px; font-style:regular; color:#666666; text-align:center;\">");fileWriter.write("<strike>MRP</strike> | <strike>Regular Price</strike> |<span class=\"special\"> Special Price</span>");fileWriter.write("<br>");fileWriter.write("<strike> <img src=\"http://static0.saholic.com/images/rupee-icon-6427.png\" alt=\"rupees\" style=\"height:11px\">"+itemPojo.getMrp()+"</strike> | <strike><img src=\"http://static0.saholic.com/images/rupee-icon-6427.png\" alt=\"rupees\" style=\"height:11px\">"+itemPojo.getSellingPrice()+"</strike> | <img src=\"http://static0.saholic.com/images/rupee-icon-6427.png\" alt=\"rupees\" style=\"height:11px\"> <span class=\"special\">"+itemPojo.getDealPojo().getDealPrice()+"</span><br>");fileWriter.write("Use Coupon:<b><span class=\"coupon\"> ASDFG</span></b></p>");fileWriter.write("<img height=\"140\" style=\"padding: 8px 0px 0px 112px;\" alt=\"headphones\" src=\""+cp.getIconImageUrl()+"\">");fileWriter.write("</a></div><a style=\"text-decoration: none; color:#0088cc;\" target=\"_blank\" href=\""+cp.getUrl()+"/\">");fileWriter.write("</a></div>");}}fileWriter.write("</div>");CreateFooter(fileWriter);fileWriter.close();}public void CreateHeader(BufferedWriter fileWriter) throws IOException{File input = new File("/home/header.html");Scanner sc = new Scanner(input);while (sc.hasNextLine()) {String s = sc.nextLine();fileWriter.write(s);}}public void CreateFooter(BufferedWriter fileWriter) throws IOException{File input = new File("/home/footer.html");Scanner sc = new Scanner(input);while (sc.hasNextLine()) {String s = sc.nextLine();fileWriter.write(s);}}public static void main(String... str) throws IOException{String [] itemids = {"2287","5880","7940","8577","8603"};NewsLetterController newsLetterController = new NewsLetterController();newsLetterController.createPrivateDealsNewsLetter(itemids);}}