lishiqiang vor 5 Tagen
Ursprung
Commit
f191692e1e

+ 1 - 1
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/mysql/order/TradeVisitorMapper.java

@@ -61,7 +61,7 @@ public interface TradeVisitorMapper extends BaseMapperX<TradeVisitorDO> {
     /**
      * 获取当前线路当前证件是否已经购买
      */
-    Integer queryVisitorByVovageId(@Param("voyageId") Long voyageId,@Param("credentialNo") String credentialNo);
+    Integer queryVisitorByVovageId(@Param("voyageId") Long voyageId,@Param("credentialNo") String credentialNo,@Param("orderNo") String orderNo);
 
 
     /**

+ 1 - 1
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/order/impl/TradeOrderServiceImpl.java

@@ -701,7 +701,7 @@ public class TradeOrderServiceImpl implements TradeOrderService {
                     }
                     tradeVisitorDO.setCreateTime(LocalDateTime.now());
 
-                    int num = tradeVisitorMapper.queryVisitorByVovageId(voyageId, visitor.getCredentialNo());
+                    int num = tradeVisitorMapper.queryVisitorByVovageId(voyageId, visitor.getCredentialNo(),tradeOrderDO.getOrderNo());
                     if(num>0){
                         repeatVisitor.add(visitor.getCredentialNo());
                     }

+ 2 - 2
ship-module-trade/ship-module-trade-biz/src/main/resources/mapper/order/TradeVisitorMapper.xml

@@ -195,7 +195,7 @@
 
     <select id="queryVisitorByVovageId" resultType="java.lang.Integer">
         select count(*) from trade_visitor t1 inner join trade_order t2 on t1.order_id=t2.id
-        where t1.credential_no=#{credentialNo} and t2.voyage_id=#{voyageId}
+        where t1.credential_no=#{credentialNo} and t2.voyage_id=#{voyageId} and t2.order_no!=#{orderNo}
     </select>
 
     <select id="selectListByVoyageId" resultType="com.yc.ship.module.trade.dal.dataobject.order.TradeVisitorDO">
@@ -223,7 +223,7 @@
         left join resource_room_model t5 on t4.room_model_id = t5.id and t5.deleted=0
         left join resource_room t6 on t3.room_id = t6.id and t6.deleted=0
         left join area t7 on t3.nationality = t7.id
-        where t1.order_status in (14, 13, 11, 10, 12, 9, 8, 7, 6, 5, 4, 3, 2, 1)
+        where t1.order_status in (15, 14, 13, 11, 10, 12, 9, 8, 7, 6, 5, 4, 3, 2, 1)
         <if test="vo.orderNo != null and vo.orderNo != ''">
             AND t1.order_no = #{vo.orderNo}
         </if>