begin work on frontend processing
This commit is contained in:
parent
03fe3d8eb4
commit
2d5525ccce
|
@ -72,7 +72,7 @@ def fetch_import_queue(request, id):
|
|||
if queue.user_id != request.user.id:
|
||||
return JsonResponse({'success': False, 'msg': 'not authorized to view this item', 'code': 403}, status=400)
|
||||
if not lock_manager.is_locked('data_importqueue', queue.id) and (len(queue.geofeatures) or len(queue.log)):
|
||||
return JsonResponse({'success': True, 'geofeatures': queue.geofeatures, 'log': queue.log}, status=200)
|
||||
return JsonResponse({'success': True, 'geofeatures': queue.geofeatures, 'log': queue.log, 'msg': None}, status=200)
|
||||
return JsonResponse({'success': True, 'geofeatures': [], 'log': [], 'msg': 'uploaded data still processing'}, status=200)
|
||||
except ImportQueue.DoesNotExist:
|
||||
return JsonResponse({'success': False, 'msg': 'ID does not exist', 'code': 404}, status=400)
|
||||
|
@ -88,7 +88,7 @@ def fetch_queued(request):
|
|||
item['processing'] = not (len(item['geofeatures']) and len(item['log'])) and lock_manager.is_locked('data_importqueue', item['id'])
|
||||
item['feature_count'] = count
|
||||
del item['geofeatures']
|
||||
return JsonResponse({'data': data})
|
||||
return JsonResponse({'data': data, 'msg': None})
|
||||
|
||||
|
||||
@login_required_401
|
||||
|
|
|
@ -7,14 +7,15 @@
|
|||
|
||||
<div id="importMessages">
|
||||
<h2>Messages</h2>
|
||||
<li v-for="(item, index) in importResponse.log" :key="`item-${index}`">
|
||||
<li v-for="(item, index) in workerLog" :key="`item-${index}`">
|
||||
<p class="font-bold">{{ item }}</p>
|
||||
</li>
|
||||
</div>
|
||||
<div>
|
||||
<li v-for="(item, index) in importResponse.geofeatures" :key="`item-${index}`">
|
||||
<li v-for="(item, index) in itemsForUser" :key="`item-${index}`">
|
||||
<h2>{{ item.name }}</h2>
|
||||
<pre>
|
||||
{{ parseGeoJson(item) }}
|
||||
{{ item }}
|
||||
</pre>
|
||||
</li>
|
||||
</div>
|
||||
|
@ -45,8 +46,9 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
msg: "",
|
||||
importResponse: {},
|
||||
currentId: null,
|
||||
itemsForUser: [],
|
||||
workerLog: []
|
||||
}
|
||||
},
|
||||
mixins: [authMixin],
|
||||
|
@ -73,7 +75,8 @@ export default {
|
|||
next(async vm => {
|
||||
if (vm.currentId !== vm.id) {
|
||||
vm.msg = ""
|
||||
vm.importResponse = []
|
||||
vm.messages = []
|
||||
vm.itemsForUser = []
|
||||
vm.currentId = null
|
||||
axios.get('/api/data/item/import/get/' + vm.id).then(response => {
|
||||
if (!response.data.success) {
|
||||
|
@ -81,9 +84,12 @@ export default {
|
|||
} else {
|
||||
vm.currentId = vm.id
|
||||
if (Object.keys(response.data).length > 0) {
|
||||
vm.importResponse = response.data
|
||||
response.data.geofeatures.forEach((item) => {
|
||||
vm.itemsForUser.push(vm.parseGeoJson(item))
|
||||
})
|
||||
}
|
||||
vm.msg = response.data.msg
|
||||
vm.workerLog = response.data.log
|
||||
}
|
||||
}).catch(error => {
|
||||
vm.handleError(error.message)
|
||||
|
|
Loading…
Reference in New Issue