wudebin před 3 měsíci
rodič
revize
d14e1b75b2

+ 12 - 4
Strides-Admin/src/views/charge/Connectors.vue

@@ -243,7 +243,7 @@
       @hide="closeOverwhiteDialog"/>
     <OverwriteDetail
       :visible="overwrite.details"
-      :id="overwrite.connector"
+      :item="overwrite.row"
       @hide="closeOverwhiteDialog"/>
   </div>
 </template>
@@ -299,8 +299,7 @@ export default {
       overwrite: {
         row: {},
         manual: false,
-        details: false,
-        connector: 0,
+        details: false
       },
       enableWebPos: settings.enableWebPos,
       enableEVCPID: settings.enableEVCPID,
@@ -493,7 +492,7 @@ export default {
       this.overwrite.manual = true;
     },
     overwriteOCPIDetails(row) {
-      this.overwrite.connector = row.connectorPk;
+      this.overwrite.row = row;
       this.overwrite.details = true;
     },
     closeOverwhiteDialog(r) {
@@ -504,6 +503,15 @@ export default {
       }
     },
     refreshOCPI(row) {
+      this.$confirm('I understand this will remove the manual override and re‑sync OCPI to the current OCPP-derived value.', 'Warning', {
+        confirmButtonText: 'OK',
+        cancelButtonText: 'Cancel',
+        type: 'warning'
+      }).then(res => {
+        this.refreshOCPIStatus(row);
+      })
+    },
+    refreshOCPIStatus(row) {
       this.listLoading = true;
       api.refreshOCPIStatus(row.connectorPk).then(res => {
         this.getConnectorList()

+ 18 - 6
Strides-Admin/src/views/charge/components/OverwriteDetail.vue

@@ -2,7 +2,7 @@
   <el-dialog
     :visible="visible"
     :before-close="e => hideDialog()"
-    title="Overwrite Details"
+    :title="getTitle"
     custom-class="overwrite-detail-dialog">
     <div class="table-view" v-loading="loading">
       <el-table
@@ -77,8 +77,9 @@ export default {
       type: Boolean,
       default: false
     },
-    id: {
-      type: Number
+    item: {
+      type: Object,
+      default: () => ({})
     }
   },
   components: {Pagination},
@@ -99,11 +100,11 @@ export default {
     };
   },
   watch: {
-    id: {
-      immediate: true,
+    item: {
+      deep: true,
       handler(value) {
         if (value) {
-          this.filter.pageCriteria.connectorPk = value
+          this.filter.pageCriteria.connectorPk = value.connectorPk;
         }
       }
     },
@@ -116,6 +117,14 @@ export default {
       }
     }
   },
+  computed: {
+    getTitle() {
+      if (this.item.chargeBoxId) {
+        return "Overwrite Details (" + this.item.chargeBoxId + "-" + this.item.connectorId + ")"
+      }
+      return "Overwrite Details"
+    }
+  },
   mounted() {
     
   },
@@ -130,6 +139,9 @@ export default {
         if (res.data.totalRow && res.data.records) {
           this.table.total = res.data.totalRow;
           this.table.list = res.data.records;
+        } else {
+          this.table.total = 0;
+          this.table.list = [];
         }
       }).catch(err => {
         this.loading = false;