Bläddra i källkod

订单查询支持互联平台筛选,订单编号复制

skyline 3 veckor sedan
förälder
incheckning
0377531a7d

+ 31 - 0
admin-web/src/views/admin/ordering/index.vue

@@ -23,6 +23,27 @@
   background-color: #fff;
   height: 24px;
 }
+
+.copy-icon {
+  cursor: pointer;
+  margin-left: 4px;
+  vertical-align: middle;
+  color: #409eff;
+}
+
+.copy-icon:hover {
+  color: #66b1ff;
+}
+
+.copy-text {
+  cursor: pointer;
+  color: #409eff;
+}
+
+.copy-text:hover {
+  color: #66b1ff;
+  text-decoration: underline;
+}
 </style>
 <template>
   <div class="system-container layout-padding">
@@ -227,6 +248,10 @@
               </div>
             </template>
 
+            <template v-else-if="'startChargeSeq'===field.prop">
+              <span class="copy-text" @click.stop="copyText(row[field.prop])">{{ row[field.prop] }}</span>
+            </template>
+
             <template v-else-if="'stationId'===field.prop">
               <div >
                 {{ (row.stationId) }}
@@ -416,6 +441,12 @@ const handleTableSortChange = (column, prop, order) => {
   // emit("on-sort-change", column)
 }
 
+const copyText = (text: string) => {
+  navigator.clipboard.writeText(text).then(() => {
+    Msg.message("已复制", 'success')
+  })
+}
+
 
 //endregion
 

+ 0 - 10
mapper/src/main/resources/mappers/miniapp/ChargeOrderMapper.xml

@@ -111,11 +111,6 @@
             <if test="params.endDate != null">
                 and t1.start_time &lt;= #{params.endDate}
             </if>
-            <if test="params.platformName != null and params.platformName != ''">
-                and t1.station_id IN (
-                    SELECT station_id FROM t_equipment_relation WHERE platform_name = #{params.platformName}
-                )
-            </if>
             <if test="params.stationIds != null and params.stationIds.size() > 0">
                 and t1.station_id IN
                 <foreach collection="params.stationIds" item="stationId" index="index" open="(" close=")" separator=",">
@@ -182,11 +177,6 @@
             <if test="params.stopReason != null">
                 and t1.stop_reason = #{params.stopReason}
             </if>
-            <if test="params.platformName != null and params.platformName != ''">
-                and t1.station_id IN (
-                    SELECT station_id FROM t_equipment_relation WHERE platform_name = #{params.platformName}
-                )
-            </if>
             <if test="params.stationIds != null and params.stationIds.size() > 0">
                 and t1.station_id IN
                 <foreach collection="params.stationIds" item="stationId" index="index" open="(" close=")" separator=",">

+ 4 - 0
service/src/main/java/com/kym/service/admin/EquipmentRelationService.java

@@ -4,6 +4,8 @@ import com.kym.entity.admin.EquipmentRelation;
 import com.kym.entity.admin.dto.BatchBindEquipmentRelation;
 import com.kym.service.mybatisplus.MyBaseService;
 
+import java.util.List;
+
 /**
  * <p>
  * 服务类
@@ -20,4 +22,6 @@ public interface EquipmentRelationService extends MyBaseService<EquipmentRelatio
     void batchBind(BatchBindEquipmentRelation equipmentRelation);
 
     EquipmentRelation getByEquipmentId(String equipmentId);
+
+    List<String> getStationIdsByPlatformName(String platformName);
 }

+ 12 - 0
service/src/main/java/com/kym/service/admin/impl/EquipmentRelationServiceImpl.java

@@ -11,6 +11,7 @@ import com.kym.service.cache.KymCache;
 import com.kym.service.mybatisplus.MyBaseServiceImpl;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
 import java.util.Map;
 import java.util.stream.Collectors;
 
@@ -66,5 +67,16 @@ public class EquipmentRelationServiceImpl extends MyBaseServiceImpl<EquipmentRel
         );
     }
 
+    @Override
+    public List<String> getStationIdsByPlatformName(String platformName) {
+        return lambdaQuery()
+                .select(EquipmentRelation::getStationId)
+                .eq(EquipmentRelation::getPlatformName, platformName)
+                .groupBy(EquipmentRelation::getStationId)
+                .list()
+                .stream()
+                .map(EquipmentRelation::getStationId)
+                .collect(Collectors.toList());
+    }
 
 }

+ 18 - 1
service/src/main/java/com/kym/service/miniapp/impl/ChargeOrderServiceImpl.java

@@ -22,6 +22,7 @@ import com.kym.entity.miniapp.ChargeOrder;
 import com.kym.entity.miniapp.queryParams.OrderQueryParams;
 import com.kym.entity.miniapp.vo.ChargeOrderVo;
 import com.kym.mapper.miniapp.ChargeOrderMapper;
+import com.kym.service.admin.EquipmentRelationService;
 import com.kym.service.admin.ExportService;
 import com.kym.service.admin.StationStatDayService;
 import com.kym.service.admin.StationStatMonthService;
@@ -65,6 +66,7 @@ public class ChargeOrderServiceImpl extends MyBaseServiceImpl<ChargeOrderMapper,
 
 
     private final ExportService exportService;
+    private final EquipmentRelationService equipmentRelationService;
     private final UserCouponService userCouponService;
     private final UserRechargeRightsService userRechargeRightsService;
     private final StationStatDayService stationStatDayService;
@@ -76,9 +78,11 @@ public class ChargeOrderServiceImpl extends MyBaseServiceImpl<ChargeOrderMapper,
     public String saasClose;
 
 
-    public ChargeOrderServiceImpl(ExportService exportService, @Lazy UserCouponService userCouponService, UserRechargeRightsService userRechargeRightsService,
+    public ChargeOrderServiceImpl(ExportService exportService, EquipmentRelationService equipmentRelationService,
+                                  @Lazy UserCouponService userCouponService, UserRechargeRightsService userRechargeRightsService,
                                   StationStatDayService stationStatDayService, StationStatMonthService stationStatMonthService, StringRedisTemplate redisTemplate) {
         this.exportService = exportService;
+        this.equipmentRelationService = equipmentRelationService;
         this.userCouponService = userCouponService;
         this.userRechargeRightsService = userRechargeRightsService;
         this.stationStatDayService = stationStatDayService;
@@ -106,6 +110,7 @@ public class ChargeOrderServiceImpl extends MyBaseServiceImpl<ChargeOrderMapper,
             var connectorId = KymCache.INSTANCE.getConnectorId(params.getConnectorId());
             params.setConnectorId(connectorId);
         }
+        resolvePlatformStationIds(params);
         // 判断数据权限
         if (params.getStationIds() == null) {
             params.setStationIds(CommUtil.isEmptyOrNull(KymCache.INSTANCE.getAdminUserStationIds(StpUtil.getLoginIdAsLong())) ? null : KymCache.INSTANCE.getAdminUserStationIds(StpUtil.getLoginIdAsLong()));
@@ -122,6 +127,17 @@ public class ChargeOrderServiceImpl extends MyBaseServiceImpl<ChargeOrderMapper,
         return page.setExtraData(map);
     }
 
+    private void resolvePlatformStationIds(CustomChargeOrdersQueryParam params) {
+        if (params.getPlatformName() != null && !params.getPlatformName().isEmpty()) {
+            var platformStationIds = equipmentRelationService.getStationIdsByPlatformName(params.getPlatformName());
+            if (params.getStationIds() == null) {
+                params.setStationIds(platformStationIds);
+            } else {
+                params.getStationIds().retainAll(platformStationIds);
+            }
+        }
+    }
+
     @SneakyThrows
     @Override
     public void exportCustomChargeOrders(CustomChargeOrdersQueryParam params, HttpServletResponse response) {
@@ -130,6 +146,7 @@ public class ChargeOrderServiceImpl extends MyBaseServiceImpl<ChargeOrderMapper,
             var connectorId = KymCache.INSTANCE.getConnectorId(params.getConnectorId());
             params.setConnectorId(connectorId);
         }
+        resolvePlatformStationIds(params);
         // 判断数据权限
         if (params.getStationIds() == null) {
             params.setStationIds(CommUtil.isEmptyOrNull(KymCache.INSTANCE.getAdminUserStationIds(StpUtil.getLoginIdAsLong())) ? null : KymCache.INSTANCE.getAdminUserStationIds(StpUtil.getLoginIdAsLong()));