Browse Source

1.处理订单合并问题 2.商城下单处理销售id问题

wjj 1 week ago
parent
commit
a6c621a665

+ 35 - 10
fs-admin/src/main/java/com/fs/his/task/Task.java

@@ -806,12 +806,24 @@ public class Task {
                                 List<OrderQueryResponseDTO.OrderPay> pays = order1.getPays();
                                 if (pays != null && !pays.isEmpty()) {
                                     pays.forEach(pay -> {
+                                        //存在合并了商城订单
                                         FsStoreOrder fsStoreOrder = fsStoreOrderMapper.selectFsStoreOrderByOrderCode(pay.getOuterPayId());
-                                        FsStoreOrder map = new FsStoreOrder();
-                                        map.setIsMerge(1);
-                                        map.setExtendOrderId(pay.getOId().toString());
-                                        map.setOrderId(fsStoreOrder.getOrderId());
-                                        fsStoreOrderMapper.updateFsStoreOrder(map);
+                                        if (fsStoreOrder != null) {
+                                            FsStoreOrder map = new FsStoreOrder();
+                                            map.setIsMerge(1);
+                                            map.setExtendOrderId(pay.getOId().toString());
+                                            map.setOrderId(fsStoreOrder.getOrderId());
+                                            fsStoreOrderMapper.updateFsStoreOrder(map);
+                                        } else {
+                                            FsStoreOrderScrm fsStoreOrderScrm = fsStoreOrderScrmMapper.selectFsStoreOrderByOrderCode(pay.getOuterPayId());
+                                            if (fsStoreOrderScrm != null) {
+                                                FsStoreOrderScrm map = new FsStoreOrderScrm();
+                                                map.setIsMerge(1);
+                                                map.setExtendOrderId(pay.getOId().toString());
+                                                map.setId(fsStoreOrderScrm.getId());
+                                                fsStoreOrderScrmMapper.updateFsStoreOrder(map);
+                                            }
+                                        }
                                     });
                                 }
                             }
@@ -837,6 +849,7 @@ public class Task {
                     OrderQueryResponseDTO mergeOrder = null;
                     try {
                         mergeOrder = erpOrderService.getMergeOrder(request);
+                        logger.info("商城合并订单查询:{}",mergeOrder);
                         Thread.sleep(2000); // 1000毫秒 = 1秒
                     } catch (Exception e) {
                         logger.error("调用ERP接口异常:",e);
@@ -855,16 +868,28 @@ public class Task {
                                     .filter(s -> s.getIsMerge() != null && s.getIsMerge())
                                     .collect(Collectors.toList());
                             OrderQueryResponseDTO.Order order1 = collect.get(0);
+                            logger.info(":{},订单号:{}",order1,order.getOrderCode());
                             if (order1 != null){
                                 List<OrderQueryResponseDTO.OrderPay> pays = order1.getPays();
                                 if (pays != null && !pays.isEmpty()) {
                                     pays.forEach(pay -> {
                                         FsStoreOrderScrm fsStoreOrderScrm = fsStoreOrderScrmMapper.selectFsStoreOrderByOrderCode(pay.getOuterPayId());
-                                        FsStoreOrderScrm map = new FsStoreOrderScrm();
-                                        map.setIsMerge(1);
-                                        map.setExtendOrderId(pay.getOId().toString());
-                                        map.setId(fsStoreOrderScrm.getId());
-                                        fsStoreOrderScrmMapper.updateFsStoreOrder(map);
+                                        if (fsStoreOrderScrm != null){
+                                            FsStoreOrderScrm map = new FsStoreOrderScrm();
+                                            map.setIsMerge(1);
+                                            map.setExtendOrderId(pay.getOId().toString());
+                                            map.setId(fsStoreOrderScrm.getId());
+                                            fsStoreOrderScrmMapper.updateFsStoreOrder(map);
+                                        } else {
+                                            FsStoreOrder fsStoreOrder = fsStoreOrderMapper.selectFsStoreOrderByOrderCode(pay.getOuterPayId());
+                                            if (fsStoreOrder != null) {
+                                                FsStoreOrder map = new FsStoreOrder();
+                                                map.setIsMerge(1);
+                                                map.setExtendOrderId(pay.getOId().toString());
+                                                map.setOrderId(fsStoreOrder.getOrderId());
+                                                fsStoreOrderMapper.updateFsStoreOrder(map);
+                                            }
+                                        }
                                     });
                                 }
                             }

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

@@ -743,14 +743,25 @@ public class FsStoreOrderScrmServiceImpl implements IFsStoreOrderScrmService {
             storeOrder.setCompanyUserId(param.getCompanyUserId());
             //绑定销售
             FsUserScrm fsuser = userService.selectFsUserById(userId);
+//            if (param.getCompanyUserId() != null) {
+//                if (ObjectUtil.isNotEmpty(fsuser.getCompanyUserId()) && !Objects.equals(fsuser.getCompanyUserId(), param.getCompanyUserId())) {
+//                    CompanyUser companyUser = companyUserService.selectCompanyUserById(fsuser.getCompanyUserId());
+//                    return R.error(String.format("请联系%s销售进行购买商品!", companyUser.getNickName()));
+//                } else {
+//                    fsuser.setCompanyUserId(param.getCompanyUserId());
+//                    userService.updateFsUser(fsuser);
+//                }
+//                CompanyUser companyUser = companyUserService.selectCompanyUserById(param.getCompanyUserId());
+//                if (companyUser != null) {
+//                    storeOrder.setDeptId(companyUser.getDeptId());
+//                }
+//            } else {
+//                storeOrder.setCompanyUserId(fsuser.getCompanyUserId());
+//            }
+
             if (param.getCompanyUserId() != null) {
-                if (ObjectUtil.isNotEmpty(fsuser.getCompanyUserId()) && !Objects.equals(fsuser.getCompanyUserId(), param.getCompanyUserId())) {
-                    CompanyUser companyUser = companyUserService.selectCompanyUserById(fsuser.getCompanyUserId());
-                    return R.error(String.format("请联系%s销售进行购买商品!", companyUser.getNickName()));
-                } else {
-                    fsuser.setCompanyUserId(param.getCompanyUserId());
-                    userService.updateFsUser(fsuser);
-                }
+                fsuser.setCompanyUserId(param.getCompanyUserId());
+                userService.updateFsUser(fsuser);
                 CompanyUser companyUser = companyUserService.selectCompanyUserById(param.getCompanyUserId());
                 if (companyUser != null) {
                     storeOrder.setDeptId(companyUser.getDeptId());
@@ -758,6 +769,8 @@ public class FsStoreOrderScrmServiceImpl implements IFsStoreOrderScrmService {
             } else {
                 storeOrder.setCompanyUserId(fsuser.getCompanyUserId());
             }
+
+            //storeOrder.setCompanyUserId(fsUser.getCompanyUserId());
             storeOrder.setUserId(userId);
             storeOrder.setOrderCode(orderSn);
             storeOrder.setRealName(address.getRealName());