Advertisement
Guest User

FINAL GET CONS

a guest
May 30th, 2018
279
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.64 KB | None | 0 0
  1. public static void sendMessagesConsumptie(int orderIdFromTrigger) throws XmlRpcException, ParseException, IOException, TimeoutException {
  2.         final String url = "http://10.3.50.39:8069",
  3.                 db = "kassagroepb",
  4.                 username = "matheo.dexelle@student.ehb.be",
  5.                 password = "admin";
  6.         final XmlRpcClient client = new XmlRpcClient();
  7.         final XmlRpcClientConfigImpl common_config = new XmlRpcClientConfigImpl();
  8.         common_config.setServerURL(new URL(String.format("%s/xmlrpc/2/common", url)));
  9.         int uid;
  10.         uid = (int)client.execute(common_config, "authenticate", Arrays.asList(db, username, password, Collections.emptyMap()));   
  11.         XmlRpcClient models = null;
  12.         try {
  13.             models = new XmlRpcClient() {
  14.                 {
  15.                 setConfig (new XmlRpcClientConfigImpl() {
  16.                     {
  17.                     setServerURL(new URL (String.format("%s/xmlrpc/2/object", url)));
  18.                     }
  19.                 });
  20.             }
  21.     };
  22.         } catch (MalformedURLException e) {
  23.             e.printStackTrace();
  24.         }
  25.         final List orderinfo = Arrays.asList((Object[])models.execute(
  26.                 "execute_kw", Arrays.asList(
  27.                     db, uid, password,
  28.                     "pos.order", "search_read",
  29.                     Arrays.asList(Arrays.asList(
  30.                             Arrays.asList("id","=", orderIdFromTrigger)
  31.                         )), new HashMap() {
  32.                         {
  33.                             put("fields", Arrays.asList(/*"amount_paid",*/
  34.                                     "id",
  35.                                     "amount_paid",
  36.                                     "partner_id",
  37.                                     "user_id",
  38.                                     "x_UUIDMedewerker"));
  39.                             //bepalen info van de order
  40.                         }
  41.                     })));
  42.         String getId = String.valueOf(orderinfo);
  43.         int startId;
  44.         int eindId;
  45.         startId = getId.indexOf(", id=")+5;
  46.         eindId = getId.indexOf(", x_UUIDMedewerker");
  47.         String orderIdS = getId.substring(startId, eindId);
  48.        
  49.         int orderId = Integer.parseInt(orderIdS);
  50.         final List orderlineinfo = Arrays.asList((Object[])models.execute(
  51.                 "execute_kw", Arrays.asList(
  52.                     db, uid, password,
  53.                     "pos.order.line", "search_read",
  54.                     Arrays.asList(Arrays.asList(
  55.                             //bepalen welke payment
  56.                             Arrays.asList("order_id", "=", orderId)
  57.                         )), new HashMap( ) {
  58.                         {
  59.                             put("fields", Arrays.asList("id",
  60.                                     "product_id",
  61.                                     "qty",
  62.                                     "order_id",
  63.                                     "price_subtotal_incl"));
  64.                             //info per verkocht product
  65.                         }
  66.                     })));
  67.         System.out.println(orderlineinfo);
  68.         System.out.println(orderinfo);
  69.         HashMap tempOrderInfo = (HashMap) orderinfo.get(0);
  70.         List orderKlant = Arrays.asList((Object[]) tempOrderInfo.get("partner_id"));
  71.         List orderSales = Arrays.asList((Object[]) tempOrderInfo.get("user_id"));
  72.         System.out.println(orderSales.get(0));
  73.         final List userinfo = Arrays.asList((Object[])models.execute(
  74.                 "execute_kw", Arrays.asList(
  75.                     db, uid, password,
  76.                     "res.users", "search_read",
  77.                     Arrays.asList(Arrays.asList(
  78.                             Arrays.asList("id", "=", orderSales.get(0))
  79.                         )), new HashMap( ) {
  80.                         {
  81.                             put("fields", Arrays.asList("id","x_UUIDbezoeker", "x_UUIDMedewerker"));
  82.                         }
  83.                     })));
  84.        
  85.         HashMap tempUserInfo = (HashMap) userinfo.get(0);
  86.         System.out.println("test" + userinfo);
  87.        
  88.         List medUUID = Arrays.asList((String) tempUserInfo.get("x_UUIDMedewerker"));
  89.         //List medNaam = Arrays.asList((String) tempUserInfo.get("name"));
  90.         List medLocalId = Arrays.asList((int) tempUserInfo.get("id"));
  91.  
  92.        
  93.         final List klantinfo = Arrays.asList((Object[])models.execute(
  94.                 "execute_kw", Arrays.asList(
  95.                     db, uid, password,
  96.                     "res.partner", "search_read",
  97.                     Arrays.asList(Arrays.asList(
  98.                             Arrays.asList("id", "=", orderKlant.get(0))
  99.                         )), new HashMap( ) {
  100.                         {
  101.                             put("fields", Arrays.asList("id","x_UUIDbezoeker","name", "email"));
  102.                         }
  103.                     })));
  104.         HashMap tempKlantInfo = (HashMap) klantinfo.get(0);
  105.         List klantUUID = Arrays.asList((String) tempKlantInfo.get("x_UUIDbezoeker"));
  106.         List klantOfArt = Arrays.asList((String) tempKlantInfo.get("x_isStudent"));
  107.         ArrayList<String> allMessages = new ArrayList<String>();
  108.         for(int i = 0; i < orderlineinfo.size(); i++) {
  109.            
  110.             HashMap tempOrderLineInfo = (HashMap) orderlineinfo.get(i);
  111.             List prodInOrderLine = Arrays.asList((Object[]) tempOrderLineInfo.get("product_id"));
  112.             List qtyProds = Arrays.asList((double) tempOrderLineInfo.get("qty"));
  113.             List orderSubTotal = Arrays.asList((double) tempOrderLineInfo.get("price_subtotal_incl"));
  114.             final List prodinfo = Arrays.asList((Object[])models.execute(
  115.                     "execute_kw", Arrays.asList(
  116.                         db, uid, password,
  117.                         "product.product", "search_read",
  118.                         Arrays.asList(Arrays.asList(
  119.                                 Arrays.asList("id", "=", (int)prodInOrderLine.get(0))
  120.                             )), new HashMap( ) {
  121.                             {
  122.                                 put("fields", Arrays.asList("x_Soort", "x_UUIDProduct"));
  123.                             }
  124.                         })));
  125.             HashMap tempProdInfo = (HashMap) prodinfo.get(0);
  126.             System.out.println(tempProdInfo);
  127.             List prodSoort= Arrays.asList((String) tempProdInfo.get("x_Soort"));
  128.             List prodUUID = Arrays.asList((String) tempProdInfo.get("x_UUIDProduct"));
  129.             Item item =  new Item();
  130.             String valuesBez = String.valueOf(userinfo);
  131.             String valuesOrd = String.valueOf(orderinfo);
  132.             String valuesOLI = String.valueOf(orderlineinfo);
  133.             int startpositie;
  134.             int eindpositie;
  135.            
  136.             item.setUUIDAankoop("" + orderIdS + "");
  137.             try {
  138.                 item.setUUIDBezoeker(klantUUID.get(0).toString());
  139.             }catch(NullPointerException e) {
  140.                 item.setUUIDArtiest(klantUUID.get(0).toString());
  141.             }
  142.             item.setUUIDMedewerker(medUUID.get(0).toString());
  143.             item.setUUIDProduct((String)prodUUID.get(0));
  144.             item.setSoort((String) prodSoort.get(0));
  145.             double aantal = (double) qtyProds.get(0);
  146.             item.setAantal(aantal);
  147.             item.setTotalePrijs((double)orderSubTotal.get(0));
  148.             item.setTimestamp(convertToFormat(getTodayDate()));
  149.             ConnectionFactory factory = new ConnectionFactory();
  150.             factory.setHost("10.3.50.39");
  151.             factory.setPort(5672);
  152.             factory.setUsername("radmin");
  153.             factory.setPassword("radmin1");
  154.             Connection connection = factory.newConnection();
  155.             Channel channel = connection.createChannel();
  156.  
  157.             channel.exchangeDeclare(EXCHANGE_NAME, BuiltinExchangeType.FANOUT);
  158.             String message = javaNaarXml(item);
  159.  
  160.             channel.basicPublish(EXCHANGE_NAME, "", null, message.getBytes("UTF-8"));
  161.             System.out.println(" [x] Sent '" + message + "'");
  162.  
  163.             channel.close();
  164.             connection.close();
  165.         }
  166.        
  167.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement