wangxiaoming hace 5 años
padre
commit
67e0e469cb

+ 4 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/SalesOrderMapper.java

@@ -556,4 +556,8 @@ public interface SalesOrderMapper {
      *查询快递策略店铺项
      */
     List<StrategyStore> selectStrategyStore(Integer strategyId);
+    /**
+     *根据第三方平台订单号(京东订单号,天猫/淘宝订单号),更新备注
+     */
+    Integer updateOrderByExOrder(SalesOrder salesOrder);
 }

+ 14 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/mapper/salesOrderMapper.xml

@@ -2595,4 +2595,18 @@
         where
         strategy_id = #{strategyId}
     </select>
+
+    <!-- 根据第三方平台订单号(京东订单号,天猫/淘宝订单号),更新备注 -->
+    <update id="updateOrderByExOrder" parameterType="SalesOrder" >
+        update tb_rst_sales_order_info
+        <set >
+            <if test="salesUserRemark != null ">
+                sales_user_remark = #{salesUserRemark}
+            </if >
+            <if test="salesAdminRemark != null ">
+                sales_admin_remark = #{salesAdminRemark}
+            </if >
+        </set>
+        where sales_ex_orderId = #{salesExOrderId}
+    </update>
 </mapper>

+ 26 - 4
watero-rst-service/src/main/java/com/iamberry/rst/service/order/OrderSyncLogServiceImpl.java

@@ -566,7 +566,9 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
             if(logisticsInfo.getLogisticsXytCode().equals("CYS0000010")){
                 //狗东专有处理操作
                 String postNum = salesOrder.getSalesPostNum();
-                postNum = postNum.substring(0,postNum.indexOf("-"));
+                if(postNum.indexOf("-")>-1){
+                    postNum = postNum.substring(0,postNum.indexOf("-"));
+                }
                 deliveryInfosMap.put("deliveryNo",postNum);//物流单号
             }else{
                 deliveryInfosMap.put("deliveryNo",salesOrder.getSalesPostNum());//物流单号
@@ -940,6 +942,7 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                         salesOrder.setSalesPayTime(sdf.parse(createTime));//支付时间
                         salesOrder.setSalesCreateTime(sdf.parse(createTime));
 
+                        String salesUserRemark = "",SalesAdminRemark="";
                         //备注
                         if(job.has("memo")){
                             String orderMemo = "",buyerMemo="",sellerMemo="",buyerMessage="";
@@ -949,16 +952,18 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                             if(memoObj.has("sellerMemo")){  //天猫,淘宝,商家备注 -- 客服
                                 sellerMemo = memoObj.getString("sellerMemo");
                             }
+
                             if(memoObj.has("buyerMemo")){   //买家留言,配送时间  -- 用户
                                 buyerMemo = memoObj.getString("buyerMemo");
                             }
                             if(memoObj.has("buyerMessage")){    //买家填写留言  -- 用户
                                 buyerMessage = memoObj.getString("buyerMessage");
                             }
-
-                            salesOrder.setSalesUserRemark(buyerMessage);//用户备注
-                            salesOrder.setSalesAdminRemark(orderMemo+"-"+sellerMemo);//后台的备注--卖家备注
+                            salesUserRemark = buyerMessage;
+                            SalesAdminRemark = orderMemo+"-"+sellerMemo;
                         }
+                        salesOrder.setSalesUserRemark(salesUserRemark);//用户备注
+                        salesOrder.setSalesAdminRemark(SalesAdminRemark);//后台的备注--卖家备注
 
                         //邮费
                         Long postFee = infoObj.getLong("postFee"); //邮费
@@ -1101,6 +1106,23 @@ public class OrderSyncLogServiceImpl implements OrderSyncLogService {
                             SalesOrder so = salesOrderMapper.getSalesOrderByIdConciseByDealCode(salesOrder.getSalesDealCode());
                             if(!generateKeyUtil.isXytBatchId(so.getSalesBatchId())){
                                 throw new RuntimeException("交易号("+ salesOrder.getSalesDealCode() +")重复,请重新生成交易号!");
+                            }else{
+                                if(so.getSalesExOrderId() != null){
+                                    boolean isUpdate = false;
+                                    SalesOrder updateMsgOrder = new SalesOrder();
+                                    updateMsgOrder.setSalesExOrderId(so.getSalesExOrderId());
+                                    if(salesUserRemark.length() > 3){
+                                        updateMsgOrder.setSalesUserRemark(salesUserRemark);
+                                        isUpdate = true;
+                                    }
+                                    if(SalesAdminRemark.length() > 3){
+                                        updateMsgOrder.setSalesAdminRemark(SalesAdminRemark);
+                                        isUpdate = true;
+                                    }
+                                    if(isUpdate){
+                                        salesOrderMapper.updateOrderByExOrder(updateMsgOrder);
+                                    }
+                                }
                             }
                             amountNum--;    //减去查询出来的数量
                             continue;

+ 19 - 7
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminOrderPlatformController.java

@@ -33,31 +33,43 @@ public class AdminOrderPlatformController {
     public ResponseJson pullOrder(HttpServletRequest request){
         Calendar calendar = Calendar.getInstance();
         calendar.set(2019,2,4);
-        orderSyncLogService.syncXYTOrder(2,calendar.getTime());
-        return  new ResponseJson();
+        Integer num = orderSyncLogService.syncXYTOrder(2,calendar.getTime());
+        ResponseJson rj = new ResponseJson();
+        rj.setResultMsg("已同步"+num+"个订单");
+        return  rj;
     }
 
     @ResponseBody
     @RequestMapping("/pullOrder")
     public ResponseJson pullOrder(HttpServletRequest request,String orderId){
-        Calendar calendar = Calendar.getInstance();
-        orderSyncLogService.syncXYTOrderOne(2,orderId);
-        return  new ResponseJson();
+        Integer num = orderSyncLogService.syncXYTOrderOne(2,orderId);
+        if(num>0){
+            ResponseJson rj = new ResponseJson();
+            rj.setResultMsg("同步成功");
+            return  rj;
+        }
+        ResponseJson rj = new ResponseJson();
+        rj.setResultMsg("同步失败");
+        return  rj;
     }
 
     @ResponseBody
     @RequestMapping("/send")
     public ResponseJson sendOrder(HttpServletRequest request,Integer orderId){
+        ResponseJson rj = ResponseJson.getFAILURE();
         Integer[] orderIds = new Integer[1];
         orderIds[0] = orderId;
         boolean flag = orderSyncLogService.syncXYTOrderShipInspec(orderId);
         if(flag){
             boolean shipFlag = orderSyncLogService.syncXYTOrderShip(orderIds);
             if(shipFlag){
-                return ResponseJson.getSUCCESS();
+                rj = ResponseJson.getSUCCESS();
+                rj.setResultMsg("上传单号成功");
+                return rj;
             }
         }
-        return  new ResponseJson();
+        rj.setResultMsg("上传订单失败");
+        return  rj;
     }
 
 }