|
@@ -140,31 +140,43 @@ class CronAction extends Action {
|
|
|
|
|
|
for($i=0;$i<=$total;$i++){
|
|
|
|
|
|
- $start=$i;
|
|
|
- $end=$i+1;
|
|
|
- echo '---start---'.$start.PHP_EOL;
|
|
|
- $sql = 'SELECT * FROM ( SELECT o.ID,o.PLATE_NO,o.CAR_TYPE,o.CAR_BRAND,s.ID,s.RFID_SN,s.INSTALLER,ROWNUM RN FROM DSSC3.W_DW_NON_MOTOR o,DSSC3.W_DW_RFID_TAGS s WHERE ROWNUM <= '.$end.' AND o.rfid_id = s.id ) WHERE RN >'.$start;
|
|
|
- $stid = oci_parse($conn, $sql);
|
|
|
- $r = oci_execute($stid);
|
|
|
-
|
|
|
- while($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
|
|
|
- // var_dump($row);
|
|
|
- //查询与车辆相同车牌信息
|
|
|
- $sql = 'SELECT * FROM ( SELECT o.ID,o.PLATE_NO,o.CAR_TYPE,o.CAR_BRAND,s.ID,s.RFID_SN,s.INSTALLER,ROWNUM RN FROM DSSC3.W_DW_NON_MOTOR o,DSSC3.W_DW_RFID_TAGS s WHERE ROWNUM <=100 AND o.PLATE_NO= \''.$row['PLATE_NO'].'\' AND o.rfid_id = s.id ORDER BY s.INSTALLER DESC ) WHERE RN >0';
|
|
|
- $stid = oci_parse($conn, $sql);
|
|
|
- $r = oci_execute($stid);
|
|
|
- $rows=[];
|
|
|
- while($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
|
|
|
- $rows[]=$row;
|
|
|
- }
|
|
|
- foreach($rows as $key=>$vitem){
|
|
|
- //保留第一个不删除
|
|
|
- $sql2='DELETE FROM DSSC3.W_DW_NON_MOTOR WHERE ID in ('.$vitem['ID'].')';
|
|
|
- $stid = oci_parse($conn, $sql2);
|
|
|
- $r = oci_execute($stid);
|
|
|
- }
|
|
|
- }
|
|
|
- oci_free_statement($stid);
|
|
|
+ $start=$i;
|
|
|
+ $end=$i+1;
|
|
|
+ // echo '---start---'.$start.PHP_EOL;
|
|
|
+ $sql = 'SELECT * FROM ( SELECT o.ID AS O_ID,o.PLATE_NO,o.CAR_TYPE,o.CAR_BRAND,s.ID,s.RFID_SN,s.INSTALLER,ROWNUM RN FROM DSSC3.W_DW_NON_MOTOR o,DSSC3.W_DW_RFID_TAGS s WHERE ROWNUM <= '.$end.' AND o.rfid_id = s.id Order by O_ID desc ) WHERE RN >'.$start;
|
|
|
+
|
|
|
+ $stid = oci_parse($conn, $sql);
|
|
|
+ $r = oci_execute($stid);
|
|
|
+
|
|
|
+ while($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
|
|
|
+
|
|
|
+ //查询与车辆相同车牌信息
|
|
|
+ $sql = 'SELECT * FROM ( SELECT o.ID AS O_ID,o.PLATE_NO,o.CAR_TYPE,o.CAR_BRAND,s.ID,s.RFID_SN,to_char(s.INSTA_DATE,\'yyyy-mm-dd hh24:mi:ss\') INSTA_DATE,ROWNUM RN FROM DSSC3.W_DW_NON_MOTOR o,DSSC3.W_DW_RFID_TAGS s WHERE ROWNUM <=100 AND o.PLATE_NO= \''.$row['PLATE_NO'].'\' AND o.rfid_id = s.id ORDER BY INSTA_DATE DESC ) WHERE RN >0';
|
|
|
+ $stid = oci_parse($conn, $sql);
|
|
|
+ $r = oci_execute($stid);
|
|
|
+ $rows=[];
|
|
|
+ while($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
|
|
|
+ $rows[]=$row;
|
|
|
+ }
|
|
|
+ // var_dump($rows);
|
|
|
+ if(count($rows)>1){
|
|
|
+ var_dump($rows);
|
|
|
+ foreach($rows as $key=>$vitem){
|
|
|
+ echo $vitem['PLATE_NO'].' '.$key.' '.$vitem['RFID_SN'].PHP_EOL;
|
|
|
+ $this->debug_log($vitem['PLATE_NO'].' '.$vitem['RFID_SN'].PHP_EOL,'repeatPlate');
|
|
|
+ if($key==0){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ echo 'delete key'.$key.PHP_EOL;
|
|
|
+ //保留第一个不删除
|
|
|
+ // $sql2='DELETE FROM DSSC3.W_DW_NON_MOTOR WHERE ID in ('.$vitem['O_ID'].')';
|
|
|
+ // $stid = oci_parse($conn, $sql2);
|
|
|
+ // $r = oci_execute($stid);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ oci_free_statement($stid);
|
|
|
|
|
|
|
|
|
}
|