Browse Source

feat(apCheck): 新增对账单生成消息

hejq 7 years ago
parent
commit
9595b7a595

+ 6 - 0
pom.xml

@@ -378,6 +378,12 @@
             <artifactId>spring-core</artifactId>
             <version>4.1.6.RELEASE</version>
         </dependency>
+
+        <dependency>
+            <groupId>com.usoft.b2b</groupId>
+            <artifactId>usoft-b2b-post-grpc-dal</artifactId>
+            <version>1.0-SNAPSHOT</version>
+        </dependency>
     </dependencies>
     <build>
         <finalName>platform-b2b</finalName>

+ 13 - 3
src/main/java/com/uas/platform/b2b/service/impl/PurchaseApCheckServiceImpl.java

@@ -42,6 +42,7 @@ import com.uas.platform.b2b.support.CollectionUtil;
 import com.uas.platform.b2b.support.DecimalUtils;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.UsageBufferedLogger;
+import com.uas.platform.b2b.support.mq.RabbitSendService;
 import com.uas.platform.b2b.task.ApCheckTask;
 import com.uas.platform.core.exception.IllegalOperatorException;
 import com.uas.platform.core.logging.BufferedLoggerManager;
@@ -52,8 +53,11 @@ import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.ps.core.util.StringUtils;
 import com.uas.search.b2b.model.SPage;
+import com.usoft.b2b.post.grpc.dal.constants.ConstantBizType;
+import com.usoft.b2b.post.grpc.dal.constants.ConstantQueueName;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.data.domain.Page;
 import org.springframework.data.jpa.domain.Specification;
 import org.springframework.stereotype.Service;
@@ -61,6 +65,7 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.ui.ModelMap;
 import org.springframework.util.CollectionUtils;
 
+import javax.annotation.Resource;
 import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
@@ -97,8 +102,10 @@ public class PurchaseApCheckServiceImpl implements PurchaseApCheckService {
     private final VendorDao vendorDao;
     private final CommunalLogDao communalLogDao;
     private final PurcApCheckDao apCheckDao;
-    @Autowired
-    private ErpProdIODetailService erpProdIODetailService;
+    private final ErpProdIODetailService erpProdIODetailService;
+
+    @Resource
+    private RabbitSendService rabbitSendService;
 
     private final static UsageBufferedLogger LOGGER = BufferedLoggerManager.getLogger(UsageBufferedLogger.class);
 
@@ -109,7 +116,7 @@ public class PurchaseApCheckServiceImpl implements PurchaseApCheckService {
                                       PurchaseApCheckDoneDao purchaseApCheckDoneDao, PurchaseApCheckItemDao purchaseApCheckItemDao,
                                       CommonDao commonDao, OrderRedDotService redDotService, EnterpriseDao enterpriseDao,
                                       UserService userService, VendorDao vendorDao, CommunalLogDao communalLogDao,
-                                      PurcApCheckDao apCheckDao) {
+                                      PurcApCheckDao apCheckDao, ErpProdIODetailService erpProdIODetailService) {
         this.purchaseApCheckDao = purchaseApCheckDao;
         this.redDotService = redDotService;
         this.purchaseApCheckTodoDao = purchaseApCheckTodoDao;
@@ -123,6 +130,7 @@ public class PurchaseApCheckServiceImpl implements PurchaseApCheckService {
         this.apCheckDao = apCheckDao;
         ExecutorService executorService = Executors.newCachedThreadPool();
         executor = new BoundedExecutor(executorService, 1600);
+        this.erpProdIODetailService = erpProdIODetailService;
     }
 
 	@Override
@@ -330,6 +338,8 @@ public class PurchaseApCheckServiceImpl implements PurchaseApCheckService {
         purchaseApCheck.setId(apCheck.getId());
         apChecks.add(purchaseApCheck);
         saveUserOrders(apChecks);
+        // 生成消息
+        rabbitSendService.sendMessage(ConstantQueueName.QUEUE_SAAS_PURCHASE_APCHECK_NAME, ConstantBizType.POST_SALE_APCHECK, apCheck.getId());
         return purchaseApCheck;
 	}
 

+ 3 - 2
src/main/java/com/uas/platform/b2b/support/mq/RabbitSendService.java

@@ -1,6 +1,7 @@
 package com.uas.platform.b2b.support.mq;
 
 import com.alibaba.fastjson.JSON;
+import com.uas.platform.b2b.core.util.StringUtil;
 import com.uas.platform.b2b.support.mq.config.RabbitMqConfig;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -63,8 +64,8 @@ public class RabbitSendService implements RabbitTemplate.ConfirmCallback, Rabbit
 	 * @param bizId		业务id
 	 * @return
 	 */
-	public String sendMessage(String queueName, String bizType, String bizId) {
-		return sendMessage(queueName, RabbitMqConfig.RABBIT_USER_ID, RabbitMqConfig.RABBIT_APP_ID, bizType, bizId);
+	public String sendMessage(String queueName, String bizType, Long bizId) {
+		return sendMessage(queueName, RabbitMqConfig.RABBIT_USER_ID, RabbitMqConfig.RABBIT_APP_ID, bizType, String.valueOf(bizId));
 	}
 
 

+ 3 - 3
src/test/java/com/uas/platform/b2b/mq/RabbitServiceTest.java

@@ -1,7 +1,7 @@
 package com.uas.platform.b2b.mq;
 
 import com.uas.platform.b2b.BaseJunitTest;
-import com.uas.platform.b2b.support.mq.RabbitSendService;
+import com.uas.platform.b2b.support.mq.service.RabbitService;
 import org.junit.Test;
 
 import javax.annotation.Resource;
@@ -15,11 +15,11 @@ import javax.annotation.Resource;
 public class RabbitServiceTest extends BaseJunitTest {
 
     @Resource
-    private RabbitSendService rabbitSendService;
+    private RabbitService rabbitService;
 
     @Test
     public void testSendApCheck() {
-        String msgId = rabbitSendService.sendMessage("b2b_purchase_apcheck","platform_b2b", "B2B", "POST_SALE_APCHECK", "4643");
+        String msgId = rabbitService.sendMessage("b2b_purchase_apcheck", "POST_SALE_APCHECK", 4643L);
         System.out.println(msgId);
     }
 }