Przeglądaj źródła

倍力优 erp 推送异常抛出不停止,倍力优 erp 推送备注修改 部分推送无公司

xgb 1 miesiąc temu
rodzic
commit
93ca291d33

+ 13 - 2
fs-admin/src/main/java/com/fs/hisStore/task/MallStoreTask.java

@@ -154,7 +154,7 @@ public class MallStoreTask
     //@Autowired
     //private IFsUserOnlineStateService fsUserOnlineStateService;
 
-    public void PushErp() throws ParseException {
+    public void PushErp() {
         List<Long> ids;
         // 开启审核
         if (getAuditSwitch()) {
@@ -162,8 +162,19 @@ public class MallStoreTask
         } else {
             ids = fsStoreOrderMapper.selectFsStoreOrderNoCreateOms();
         }
+        int max=10; // 最大异常订单数,操过10个则停止推送
+        int count=0;
         for (Long id : ids) {
-            fsStoreOrderService.createOmsOrder(id);
+            // 其中一个推送异常,不影响其他订单推送
+            try {
+                fsStoreOrderService.createOmsOrder(id);
+            }catch (Exception e){
+                log.error("推送ERP失败:{}",e.getMessage());
+                count++;
+                if(count>=max){
+                    break;
+                }
+            }
         }
     }
 

+ 16 - 7
fs-service/src/main/java/com/fs/hisStore/service/impl/FsStoreOrderScrmServiceImpl.java

@@ -1800,7 +1800,7 @@ public class FsStoreOrderScrmServiceImpl implements IFsStoreOrderScrmService {
         erpOrder.setBuyer_account(order.getRealName());
 
 //      erpOrder.setPost_fee(order.getTotalPostage().doubleValue());
-        erpOrder.setSeller_memo(order.getMark());
+
         // order.setCurrency_code("JCZD");
         List<ErpOrderPayment> payments = new ArrayList<>();
         ErpOrderPayment payment = new ErpOrderPayment();
@@ -1829,15 +1829,23 @@ public class FsStoreOrderScrmServiceImpl implements IFsStoreOrderScrmService {
             order.setDeliverySn(express.getCode());
         }
         erpOrder.setPayments(payments);
-        if (order.getCompanyId() != null) {
-            Company company = companyService.selectCompanyById(order.getCompanyId());
-            if (company != null&& ObjectUtil.isEmpty(erpOrder.getSeller_memo())) {
-                erpOrder.setSeller_memo(company.getCompanyName());
-            }
-        }
+        // 订单公司id是空的部分 从销售id获取公司信息
+//        if (order.getCompanyId() != null) {
+//            Company company = companyService.selectCompanyById(order.getCompanyId());
+//            if (company != null&& ObjectUtil.isEmpty(erpOrder.getSeller_memo())) {
+//                erpOrder.setSeller_memo(company.getCompanyName());
+//            }
+//        }
+        // 订单公司id是空的部分 从销售id获取公司信息
+
         if (order.getCompanyUserId() != null) {
             CompanyUser companyUser = companyUserService.selectCompanyUserById(order.getCompanyUserId());
             if (companyUser != null) {
+                // 获取公司名称
+                Company company = companyService.selectCompanyById(companyUser.getCompanyId());
+                if(company !=null){
+                    erpOrder.setSeller_memo(company.getCompanyName());
+                }
                 CompanyDept dept = companyDeptService.selectCompanyDeptById(companyUser.getDeptId());
                 if (dept != null) {
                     List<String> names = companyDeptService.selectCompanyDeptNamesByIds(dept.getAncestors());
@@ -1867,6 +1875,7 @@ public class FsStoreOrderScrmServiceImpl implements IFsStoreOrderScrmService {
             String format = sdf.format(order.getPayTime());
             remarkDTO.setPayTime(format);
         }
+        erpOrder.setSeller_memo(erpOrder.getSeller_memo() + "-" +order.getMark());
         erpOrder.setSeller_memo(erpOrder.getSeller_memo() + JSONUtil.toJsonStr(remarkDTO));
 
         erpOrder.setOrder_type_code("order");