Преглед изворни кода

订单自动评价的 逻辑修改

wangdy пре 8 година
родитељ
комит
55d106b7cc

+ 6 - 5
src/main/java/com/uas/platform/b2c/trade/order/dao/OrderDao.java

@@ -69,13 +69,14 @@ public interface OrderDao extends JpaSpecificationExecutor<Order>, JpaRepository
 	List<Order> findByOrderIds(@Param("orderids") List<String> orderids);
 
 	/**
-	 * 根据某个状态之后的订单
-	 *
-	 * @param status the status
+	 * 查询未评价的订单
 	 * @return  orders
 	 */
-	@Query(nativeQuery = true, value="selcet * from trade$order a where a.or_status >=:status ")
-	List<Order> findByAfterStatus(@Param("status") Integer status);
+	@Query(nativeQuery = true, value=" select o.* from trade$order o " +
+							     	 " left join b2c$rate$vendor v " +
+									 " on o.or_id = v.order_id where locate('405',o.or_statushistory)>0  and v.id is null;")
+	List<Order> findByNotRate();
+
 
 	/**
 	 * Gets count by buyeruu and status.

+ 7 - 6
src/main/java/com/uas/platform/b2c/trade/order/dao/PurchaseDao.java

@@ -29,14 +29,15 @@ public interface PurchaseDao extends JpaSpecificationExecutor<Purchase>, JpaRepo
 	 */
 	List<Purchase> findByStatus(Integer status);
 
+
 	/**
-	 * 根据之后的状态查找采购单
-	 *
-	 * @param status the status
-	 * @return list
+	 * 查询未评价的订单
+	 * @return  orders
 	 */
-	@Query(nativeQuery = true, value = "select * from trade$purchase where pu_status >= :status")
-	List<Purchase> findByAfterStatus(@Param("status") Integer status);
+	@Query(nativeQuery = true, value=" select o.* from trade$purchase o " +
+			" left join b2c$rate$buyer v " +
+			" on o.or_id = v.order_id left join trade$order t on o.or_id = t.or_orderid where locate('405',t.or_statushistory)>0  and v.id is null;")
+	List<Purchase> findByNotRate();
 
 	/**
 	 * 根据状态和企业UU查询采购单

+ 3 - 6
src/main/java/com/uas/platform/b2c/trade/order/service/OrderService.java

@@ -288,13 +288,10 @@ public interface OrderService {
 	List<Order> findByStatus(Integer status);
 
 	/**
-	 * 根据类别查找
-	 *
-	 * @param status the status
-	 * @return list list
-	 * @TODO 查找某个状态之后的订单
+	 * 查找买家未评价的订单
 	 */
-	List<Order> findByAfterStatus(Integer status);
+	List<Order> findByNotRateVendor();
+
 
 	/**
 	 * 通过批次号查询到对应商品

+ 2 - 5
src/main/java/com/uas/platform/b2c/trade/order/service/PurchaseService.java

@@ -140,12 +140,9 @@ public interface PurchaseService {
 	List<Purchase> findByStatus(Integer status);
 
 	/**
-	 * 根据之后的状态查找采购单
-	 *
-	 * @param status the status
-	 * @return list
+	 * 查找买家未评价的订单
 	 */
-	List<Purchase> findByAfterStatus(Integer status);
+	List<Purchase> findByNotRateVendor();
 
 	/**
 	 * 平台管理员获取采购单

+ 2 - 2
src/main/java/com/uas/platform/b2c/trade/order/service/impl/OrderServiceImpl.java

@@ -1533,8 +1533,8 @@ public class OrderServiceImpl implements OrderService {
     }
 
     @Override
-    public List<Order> findByAfterStatus(Integer status) {
-        return orderDao.findByAfterStatus(status);
+    public List<Order> findByNotRateVendor() {
+        return orderDao.findByNotRate();
     }
 
     @Override

+ 2 - 2
src/main/java/com/uas/platform/b2c/trade/order/service/impl/PurchaseServiceImpl.java

@@ -664,8 +664,8 @@ public class PurchaseServiceImpl implements PurchaseService {
 	}
 
 	@Override
-	public List<Purchase> findByAfterStatus(Integer status) {
-		return purchaseDao.findByAfterStatus(status);
+	public List<Purchase> findByNotRateVendor() {
+		return purchaseDao.findByNotRate();
 	}
 
 	@Override

+ 3 - 3
src/main/java/com/uas/platform/b2c/trade/rate/task/RateTask.java

@@ -102,7 +102,7 @@ public class RateTask {
             //先写在代码上,20个工作日自动好评
             automaticReceipt = 20;
 
-            List<Order> orderList = orderService.findByAfterStatus(Status.RECEIVED.value());
+            List<Order> orderList = orderService.findByNotRateVendor();
             String ids = "-";
             for (Order order : orderList) {
                 List<StatusHistory> statusHistories = FastjsonUtils.fromJsonArray(order.getStatushistory(), StatusHistory.class);
@@ -161,7 +161,7 @@ public class RateTask {
             }
 //          //先写在代码上,180个工作日自动追评价
             automaticReceipt = 180;
-            List<Order> orderList = orderService.findByAfterStatus(Status.RECEIVED.value());
+            List<Order> orderList = orderService.findByNotRateVendor();
             String ids = "-";
             for (Order order : orderList) {
                 List<StatusHistory> statusHistories = FastjsonUtils.fromJsonArray(order.getStatushistory(), StatusHistory.class);
@@ -204,7 +204,7 @@ public class RateTask {
     private void autoVendorRate(Integer automaticReceipt,boolean isFirst) {
         try {
             //采购单的自动初评
-            List<Purchase> purchasesList = purchaseService.findByAfterStatus(Status.TOBEPAID.value());
+            List<Purchase> purchasesList = purchaseService.findByNotRateVendor();
             String pids = "-";
             for (Purchase purchase : purchasesList) {
                 List<StatusHistory> statusHistories = FastjsonUtils.fromJsonArray(purchase.getStatushistory(), StatusHistory.class);