refactor(recorder): Refactor API

This commit is contained in:
Aditya Hase 2019-02-17 15:28:33 +05:30
parent 8ba1b7e527
commit 451eb01cdc
3 changed files with 15 additions and 25 deletions

View file

@ -44,7 +44,7 @@
</div>
<div class="result-list">
<router-link class="list-row-container" v-for="request in paginated(sorted(filtered(requests)))" :key="request.index" :to="{name: 'request-detail', params: {request_uuid: request.uuid}}" tag="div" v-bind="request">
<router-link class="list-row-container" v-for="(request, index) in paginated(sorted(filtered(requests)))" :key="index" :to="{name: 'request-detail', params: {request_uuid: request.uuid}}" tag="div" v-bind="request">
<div class="level list-row small">
<div class="level-left ellipsis">
<div class="list-row-col ellipsis list-subject level ">
@ -204,13 +204,13 @@ export default {
}
},
refresh: function() {
frappe.call("frappe.recorder.get_requests").then( r => {
frappe.call("frappe.recorder.get").then( r => {
this.requests = r.message;
this.last_fetched = new Date();
});
},
clear: function() {
frappe.call("frappe.recorder.erase_requests");
frappe.call("frappe.recorder.delete");
this.refresh();
},
record: function(should_record) {

View file

@ -112,10 +112,10 @@
</div>
<div class="grid-body">
<div class="rows">
<div class="grid-row" :class="showing == index ? 'grid-row-open' : ''" v-for="(call, index) in request.calls" :key="call.index" v-bind="call">
<div class="grid-row" :class="showing == index ? 'grid-row-open' : ''" v-for="(call, index) in request.calls" :key="index" v-bind="call">
<div class="data-row row" v-if="showing != index" style="display: block;" @click="showing = index" >
<div class="row-index sortable-handle col col-xs-1">
<span>{{ call.index }}</span></div>
<span>{{ index }}</span></div>
<div class="col grid-static-col col-xs-8 " data-fieldname="code" data-fieldtype="Code">
<div class="static-area">
<span>{{ call.query }}</span>
@ -132,7 +132,7 @@
<div class="grid-form-heading" @click="showing = null">
<div class="toolbar grid-header-toolbar">
<span class="panel-title">
SQL Query #<span class="grid-form-row-index">{{ call.index }}</span></span>
SQL Query #<span class="grid-form-row-index">{{ index }}</span></span>
<div class="btn btn-default btn-xs pull-right" style="margin-left: 7px;">
<span class="hidden-xs octicon octicon-triangle-up"></span>
</div>
@ -206,7 +206,7 @@ export default {
},
mounted() {
frappe.call({
method: "frappe.recorder.get_request_data",
method: "frappe.recorder.get",
args: {
uuid: this.$route.params.request_uuid
}

View file

@ -160,26 +160,16 @@ def set_recorder_state(should_record, *args, **kwargs):
@frappe.whitelist()
@do_not_record
def get_requests(*args, **kwargs):
requests = frappe.cache().lrange("recorder-requests", 0, -1)
requests = list(map(lambda request: json.loads(request.decode()), requests))
for index, request in enumerate(requests, start=1):
request["index"] = index
return requests
def get(uuid=None, *args, **kwargs):
if uuid:
result = json.loads(frappe.cache().get("recorder-request-{}".format(uuid)).decode())
else:
requests = frappe.cache().lrange("recorder-requests", 0, -1)
result = list(map(lambda request: json.loads(request.decode()), requests))
return result
@frappe.whitelist()
@do_not_record
def erase_requests(*args, **kwargs):
def delete(*args, **kwargs):
frappe.cache().delete_value("recorder-requests")
@frappe.whitelist()
@do_not_record
def get_request_data(uuid, *args, **kwargs):
request = json.loads(frappe.cache().get("recorder-request-{}".format(uuid)).decode())
calls = request["calls"]
for index, call in enumerate(calls):
call["index"] = index
return request