Selaa lähdekoodia

POST模糊查询接口,只是把GET改成POST提交,路由不变

一次计量表和结净计量表,按车号和时间过滤车号,URL示例如下
/v1/meterworkcaractuals/distinctCarNo/?carNo=&startTime=2021-12-1&endTime=2021-12-1
BourneCao 4 vuotta sitten
vanhempi
commit
52e2f353c4

+ 19 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractual/controller/MeterWorkCarActualController.java

@@ -479,4 +479,23 @@ throw new MarkerMetException(500, "操作异常!!");
         }
         return rm;
     }
+
+    @ApiOperation(value = "车号汇总统计汇总", notes = "根据传入时间和车号,查询给定时间段去重车号")
+    @GetMapping(value = "/distinctCarNo")
+    public RESTfulResult distinctCarNo(String carNo, String startTime, String endTime) {
+        RESTfulResult rm = failed();
+        try {
+            List<String> rows = meterWorkCarActualService.distinctCarNo(carNo, startTime, endTime);
+            return success(rows);
+        } catch (MarkerMetException e) {
+            e.printStackTrace();
+            rm.setMessage(e.getMessage());
+        } catch (Exception e) {
+            e.printStackTrace();
+            rm.setMessage("操作异常,请确认!");
+        } finally {
+
+        }
+        return rm;
+    }
 }

+ 9 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractual/mapper/MeterWorkCarActualMapper.java

@@ -2,9 +2,11 @@ package com.steerinfo.meterwork.meterworkcaractual.mapper;
 
 import com.steerinfo.framework.mapper.IBaseMapper;
 import com.steerinfo.meterwork.meterworkcaractual.model.MeterWorkCarActual;
+import com.steerinfo.meterwork.meterworkcaractualfirst.model.MeterWorkCarActualFirst;
 import feign.Param;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
@@ -31,4 +33,11 @@ public interface MeterWorkCarActualMapper extends IBaseMapper<MeterWorkCarActual
 
     //查询车号今天是第几次出现
     List<MeterWorkCarActual> selectRepeatCarNO(Map<String, Object> map);
+
+    /**
+     * 根据传入时间和车号,查询给定时间段去重车号
+     * @param obj
+     * @return
+     */
+    List<MeterWorkCarActual> distinctCarNo(HashMap<String, Object> obj);
 }

+ 10 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractual/mapper/MeterWorkCarActualMapper.xml

@@ -2601,6 +2601,16 @@
         where CAR_NO = #{carNo} and instr(ACTUAL_NO,#{startTime})>0 order by NET_TIME asc
     </select>
 
+    <!-- 查询:根据传入时间和车号,查询给定时间段去重车号 -->
+    <select id="distinctCarNo" parameterType="java.lang.String" resultMap="BaseResultMap">
+        SELECT distinct car_No
+        from METER_WORK_CAR_ACTUAL
+        where VALUE_FLAG != '1' and CAR_NO like '%${carNo}%'
+        <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
+            and  NET_TIME  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and NET_TIME  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+        </if>
+    </select>
+
     <!--  <select id="selectRepeatCarNO" parameterType="java.util.HashMap" resultMap="BaseResultMap">
           <include refid="select"/>
           where CAR_NO = #{carNo} and NET_TIME between to_date(#{startTime},'yyyy-mm-dd hh24:mi:ss')

+ 3 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractual/service/IMeterWorkCarActualService.java

@@ -57,4 +57,7 @@ public interface IMeterWorkCarActualService extends IBaseService<MeterWorkCarAct
 
     //批量修改驻外检测的计量数据
     int updateByZhuWai(List<MeterWorkCarActual> models);
+
+    //根据传入时间和车号,查询给定时间段去重车号
+    List<String> distinctCarNo(String carNo, String startTime, String endTime);
 }

+ 12 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractual/service/impl/MeterWorkCarActualServiceImpl.java

@@ -43,6 +43,7 @@ import javax.sql.DataSource;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * MeterWorkCarActual服务实现:
@@ -895,4 +896,15 @@ public class MeterWorkCarActualServiceImpl extends BaseServiceImpl<MeterWorkCarA
         }
         return num;
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public List<String> distinctCarNo(String carNo, String startTime, String endTime) {
+        HashMap<String, Object> obj = new HashMap<>();
+        obj.put("carNo", carNo);
+        obj.put("startTime", startTime);
+        obj.put("endTime", endTime);
+        List<String> list = meterWorkCarActualMapper.distinctCarNo(obj).stream().map(MeterWorkCarActual::getCarNo).collect(Collectors.toList());
+        return list;
+    }
 }

+ 21 - 1
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/controller/MeterWorkCarActualFirstController.java

@@ -98,6 +98,7 @@ public class MeterWorkCarActualFirstController extends BaseRESTfulController {
         }
     }
 
+
     @ApiOperation(value = "创建", notes = "根据MeterWorkCarActualFirst对象创建")
     @ApiImplicitParam(name = "meterWorkCarActualFirst", value = "详细实体meterWorkCarActualFirst", required = true, dataType = "MeterWorkCarActualFirst")
     //@RequiresPermissions("meterworkcaractualfirst:create")
@@ -258,7 +259,7 @@ public class MeterWorkCarActualFirstController extends BaseRESTfulController {
     }
 
     /*
-    By BourneCao 20211222 和杨秀东确认,不再需要一次计量历史查询表和相关视图
+    // By BourneCao 20211222 和杨秀东确认,不再需要一次计量历史查询表和相关视图
 
     @ApiOperation(value = "历史查询", notes = "根据传入参数进行查询")
     @GetMapping(value = "/selectView")
@@ -782,4 +783,23 @@ public class MeterWorkCarActualFirstController extends BaseRESTfulController {
         }
         return rm;
     }
+
+    @ApiOperation(value = "车号汇总统计汇总", notes = "根据传入时间和车号,查询给定时间段去重车号")
+    @GetMapping(value = "/distinctCarNo")
+    public RESTfulResult distinctCarNo(String carNo, String startTime, String endTime) {
+        RESTfulResult rm = failed();
+        try {
+            List<String> rows = meterWorkCarActualFirstService.distinctCarNo(carNo, startTime, endTime);
+            return success(rows);
+        } catch (MarkerMetException e) {
+            e.printStackTrace();
+            rm.setMessage(e.getMessage());
+        } catch (Exception e) {
+            e.printStackTrace();
+            rm.setMessage("操作异常,请确认!");
+        } finally {
+
+        }
+        return rm;
+    }
 }

+ 7 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/mapper/MeterWorkCarActualFirstMapper.java

@@ -61,4 +61,11 @@ public interface MeterWorkCarActualFirstMapper extends IBaseMapper<MeterWorkCarA
      * @return
      */
     List<MeterWorkCarActualFirst> queryOrderByTime(HashMap parmas);
+
+    /**
+     * 根据传入时间和车号,查询给定时间段去重车号
+     * @param obj
+     * @return
+     */
+    List<MeterWorkCarActualFirst> distinctCarNo(HashMap<String, Object> obj);
 }

+ 9 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/mapper/MeterWorkCarActualFirstMapper.xml

@@ -2186,4 +2186,13 @@
         order by create_time desc
     </select>
 
+    <!-- 查询:根据传入时间和车号,查询给定时间段去重车号 -->
+    <select id="distinctCarNo" parameterType="java.lang.String" resultMap="BaseResultMap">
+        SELECT distinct car_No
+        from METER_WORK_CAR_ACTUAL_FIRST
+        where VALUE_FLAG != '0' and CAR_NO like '%${carNo}%'
+        <if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
+            and  CREATE_TIME  >= TO_DATE(#{startTime}, 'yyyy-MM-dd HH24:mi:ss') and CREATE_TIME  &lt;=  TO_DATE(#{endTime}, 'yyyy-MM-dd HH24:mi:ss')
+        </if>
+    </select>
 </mapper>

+ 3 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/IMeterWorkCarActualFirstService.java

@@ -92,4 +92,7 @@ public interface IMeterWorkCarActualFirstService extends IBaseService<MeterWorkC
     RESTfulResult doCraneDbWf(MeterWorkCarActualFirst one, MeterMonitorNote two) throws Exception;
 
     RESTfulResult doCraneNetDbWf(MeterWorkCarActualFirst one, MeterWorkCarActual two, MeterMonitorNote three) throws Exception;
+
+    //根据传入时间和车号,查询给定时间段去重车号
+    List<String> distinctCarNo(String carNo, String startTime, String endTime);
 }

+ 12 - 0
src/main/java/com/steerinfo/meterwork/meterworkcaractualfirst/service/impl/MeterWorkCarActualFirstServiceImpl.java

@@ -67,6 +67,7 @@ import java.lang.reflect.Field;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * MeterWorkCarActualFirst服务实现:
@@ -2160,5 +2161,16 @@ public class MeterWorkCarActualFirstServiceImpl extends BaseServiceImpl<MeterWor
         rm.setMessage(enStr);
         return rm;
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public List<String> distinctCarNo(String carNo, String startTime, String endTime) {
+        HashMap<String, Object> obj = new HashMap<>();
+        obj.put("carNo", carNo);
+        obj.put("startTime", startTime);
+        obj.put("endTime", endTime);
+        List<String> list = meterWorkCarActualFirstMapper.distinctCarNo(obj).stream().map(MeterWorkCarActualFirst::getCarNo).collect(Collectors.toList());
+        return list;
+    }
 }