فهرست منبع

完善顺丰同城所有回调业务

jlutt@163.com 2 سال پیش
والد
کامیت
9dd843a01b
2فایلهای تغییر یافته به همراه27 افزوده شده و 1 حذف شده
  1. 1 1
      conf/KeyId.xml
  2. 26 0
      conf/script/1000/sync/BE_BusinessOrder_SyncDataBase2ES.groovy

+ 1 - 1
conf/KeyId.xml

@@ -419,7 +419,7 @@
     <Item>
         <IDName>deOrderRiderItems.id</IDName>
         <Table>
-            <TableName>v_deOrderRiderItems1000</TableName>
+            <TableName>v_deOrderRiderItems</TableName>
             <IDFieldName>id</IDFieldName>
             <TableWhere/>
         </Table>

+ 26 - 0
conf/script/1000/sync/BE_BusinessOrder_SyncDataBase2ES.groovy

@@ -58,6 +58,7 @@ class BE_BusinessOrder_SyncDataBase2ES implements BusinessExecutor<ProcessString
                 Utility.ofMap(ESKeys.ES_DELIVER_BUSINESS_ORDER_TYPE, "businessorder.json",
                         ESKeys.ES_DELIVER_ORDER_DELIVERY_INFO_TYPE, "orderdeliveryinfo.json",
                         ESKeys.ES_DELIVER_ORDER_FINANCES_TYPE, "orderfinances.json",
+                        ESKeys.ES_DELIVER_ORDER_DISCOUNT_TYPE, "orderdiscount.json",
                         ESKeys.ES_DELIVER_ORDER_DETAIL_ITEM_TYPE, "orderdetailitem.json",
                         ESKeys.ES_DELIVER_ORDER_AFTER_SALE_BILL_TYPE, "orderaftersalebill.json",
                         ESKeys.ES_DELIVER_ORDER_RIDER_ITEM_TYPE, "orderrideritem.json"))
@@ -162,6 +163,31 @@ class BE_BusinessOrder_SyncDataBase2ES implements BusinessExecutor<ProcessString
         })
 
         ExecPageFlipper.execute(500, { PageFlipper p ->
+            List<OrderDiscount> dbList = dbService.<OrderDiscount> getList(dataSourceId, "select * from deOrderDiscount${supplierCode}_Current", OrderDiscount.class, p)
+            if (!dbList.isEmpty()) {
+                BulkRequestBuilder bulkRequest = esClient.getClient().prepareBulk().setRefreshPolicy(WriteRequest.RefreshPolicy.IMMEDIATE)
+
+                dbList.each { info ->
+                    IndexRequestBuilder esRequest = esClient.getClient()
+                            .prepareIndex(supplierService.getDateYearESIndex(source.supplierCode, ESKeys.ES_DELIVER_BUSINESS_ORDER_INDEX, 1), ESKeys.ES_DELIVER_ORDER_DISCOUNT_TYPE)
+                            .setParent(String.valueOf(info.idOrder))
+                            .setId(String.valueOf(info.id))
+                            .setSource(jsonConvert.convertTo(info), XContentType.JSON)
+                    bulkRequest.add(esRequest)
+                }
+
+                BulkResponse bulkResponse = bulkRequest.execute().actionGet()
+
+                if (bulkResponse.hasFailures()) {
+                    logger.error("索引订单OrderDiscount:" + bulkResponse.buildFailureMessage())
+                } else {
+                    logger.info("索引订单OrderDiscount共" + dbList.size() + "条记录")
+                }
+
+            }
+        })
+
+        ExecPageFlipper.execute(500, { PageFlipper p ->
             List<OrderRiderItem> dbList = dbService.<OrderRiderItem> getList(dataSourceId, "select * from deOrderRiderItem${supplierCode}_Current", OrderRiderItem.class, p)
             if (!dbList.isEmpty()) {
                 BulkRequestBuilder bulkRequest = esClient.getClient().prepareBulk().setRefreshPolicy(WriteRequest.RefreshPolicy.IMMEDIATE)