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