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

update src/views/charge/Connectors.vue

wudebin пре 4 месеци
родитељ
комит
600317a84c
1 измењених фајлова са 70 додато и 11 уклоњено
  1. 70 11
      Strides-Admin/src/views/charge/Connectors.vue

+ 70 - 11
Strides-Admin/src/views/charge/Connectors.vue

@@ -10,7 +10,7 @@
         </div>
         <el-select
           v-if="false"
-          v-model="filter.pageVo.errorCode"
+          v-model="filter.pageCriteria.errorCode"
           placeholder="Error Code"
           @change="handleFilter"
           class="filter-view-item"
@@ -22,7 +22,7 @@
             :value="item.value"/>
         </el-select>
         <el-select
-          v-model="filter.pageVo.status"
+          v-model="filter.pageCriteria.status"
           placeholder="Status"
           @change="handleFilter"
           class="filter-view-item"
@@ -35,7 +35,7 @@
         </el-select>
         <div class="flex1" style="max-width: 500px;">
           <el-input
-            v-model="filter.pageVo.criteria"
+            v-model="filter.pageCriteria.criteria"
             prefix-icon="el-icon-search"
             placeholder="Search by Station ID, Site Name, Carpark Code, ERC, Vendor Error Code"
             @keyup.enter.native="handleFilter"
@@ -169,6 +169,14 @@
                 v-else-if="enableWebPos">
                 WebPosQR
               </el-dropdown-item>
+              <el-dropdown-item
+                command="overwriteOCPI">
+                Manual Overwrite
+              </el-dropdown-item>
+              <el-dropdown-item
+                command="overwriteOCPIDetails">
+                Manual Overwrite Details
+              </el-dropdown-item>
               <el-dropdown-item
                 command="changeToAvailable"
                 v-if='row.status == "Unavailable"'>
@@ -193,6 +201,10 @@
                 v-if='row.status == "Charging"'>
                 Remote Stop Transaction
               </el-dropdown-item>
+              <el-dropdown-item
+                command="refreshOCPI">
+                Refresh Status (Sync OCPP → OCPI)
+              </el-dropdown-item>
             </el-dropdown-menu>
           </el-dropdown>
         </template>
@@ -202,7 +214,7 @@
       <pagination
         v-show="total > 0"
         :total="total"
-        :page.sync="filter.pageNo"
+        :page.sync="filter.pageNum"
         :limit.sync="filter.pageSize"
         @pagination="getConnectorList" />
     </div>
@@ -219,6 +231,14 @@
     <LumiQRCode
       v-bind="lumiQRDialog"
       @hide="hideConnectorQR"/>
+    <OverwriteOCPI
+      :visible="overwrite.manual"
+      :item="overwrite.row"
+      @hide="closeOverwhiteDialog"/>
+    <OverwriteDetail
+      :visible="overwrite.details"
+      :id="overwrite.connector"
+      @hide="closeOverwhiteDialog"/>
   </div>
 </template>
 
@@ -229,17 +249,19 @@ import ConnectorTags from './components/ConnectorTags.vue'
 import WebPosQR from './components/WebPosQR.vue'
 import LumiQRCode from './components/LumiQRCode.vue'
 import DialogRemoteOcpp from './components/DialogRemoteOcpp.vue'
+import OverwriteOCPI from './components/OverwriteOCPI.vue'
+import OverwriteDetail from './components/OverwriteDetail.vue'
 import api from '../../http/api/charge'
 import ocpp from '../../http/api/ocpp'
 import settings from '../../settings.js'
 export default {
-  components: { Pagination, TableAction, ConnectorTags, DialogRemoteOcpp,WebPosQR,LumiQRCode },
+  components: { Pagination, TableAction, ConnectorTags, DialogRemoteOcpp,WebPosQR,LumiQRCode,OverwriteDetail,OverwriteOCPI },
   data() {
     return {
       filter: {
-        pageNo: 1,
+        pageNum: 1,
         pageSize: 10,
-        pageVo: {
+        pageCriteria: {
           criteria: '',
           status: '',
           errorCode: ''
@@ -268,6 +290,12 @@ export default {
         visible: false,
         item: {}
       },
+      overwrite: {
+        row: {},
+        manual: false,
+        details: false,
+        connector: 0,
+      },
       enableWebPos: settings.enableWebPos,
       enableEVCPID: settings.enableEVCPID,
       isLumi: settings.projectName == 'LUMI'
@@ -287,7 +315,7 @@ export default {
       })
     },
     handleFilter() {
-      this.filter.pageNo = 1;
+      this.filter.pageNum = 1;
       this.getConnectorList();
     },
     getStatusOption() {
@@ -322,10 +350,14 @@ export default {
     },
     getConnectorList() {
       this.listLoading = true;
-      api.getConnectorList(this.filter).then(res => {
+      api.getConnectorListV2(this.filter).then(res => {
         this.listLoading = false;
-        this.total = res.total;
-        this.connectorList = res.data;
+        if (res.data.totalRow) {
+          this.total = res.data.totalRow;
+        }
+        if (res.data.records) {
+          this.connectorList = res.data.records;
+        }
       }).catch(err => {
         this.$message.error(err)
         this.listLoading = false;
@@ -437,6 +469,33 @@ export default {
         //this.sendPerform("ocppOperations/remoteStopTransaction", params);
       })*/
     },
+    overwriteOCPI(row) {
+      this.overwrite.row = row;
+      this.overwrite.manual = true;
+    },
+    overwriteOCPIDetails(row) {
+      this.overwrite.connector = row.connectorPk;
+      this.overwrite.details = true;
+    },
+    closeOverwhiteDialog(r) {
+      this.overwrite.details = false;
+      this.overwrite.manual = false;
+      if (r) {
+        this.getConnectorList()
+      }
+    },
+    refreshOCPI(row) {
+      this.listLoading = true;
+      api.refreshOCPIStatus(row.connectorPk).then(res => {
+        this.getConnectorList()
+      }).catch(err => {
+        this.listLoading = false;
+        this.$message({
+          type: 'error',
+          message: err
+        })
+      });
+    },
     hideConnectorQR() {
       this.printConnector.visible = false;
       this.webPosDialog.visible = false;