浏览代码

Adding list interface

Andrej Studen 5 年之前
父节点
当前提交
2fa22052c2
共有 1 个文件被更改,包括 23 次插入0 次删除
  1. 23 0
      labkeySlicerPythonExtension/slicerNetwork.py

+ 23 - 0
labkeySlicerPythonExtension/slicerNetwork.py

@@ -527,3 +527,26 @@ class labkeyURIHandler(slicer.vtkURIHandler):
         url=self.GetLabkeyUrl()+'/'+project
         url+='/query-'+method+'Rows.api?'
         return self.post(url,json.dumps(data))
+
+    def filterList(self,project,dataset,filter):
+        schemaName='lists'
+        debug=True
+        url=self.GetLabkeyUrl()+'/'+project
+        url+='/query-selectRows.api?schemaName='+schemaName+'&query.queryName='+dataset
+        for f in filter:
+            url+="&query."+f['variable']+"~"+f['oper']+"="+f['value']
+        if debug:
+            print("Sending {}").format(url)
+        return json.load(self.get(url))
+
+
+    def modifyList(self,method,project,dataset,rows):
+        #method can be insert or update
+        data={}
+        schemaName='lists'
+        data['schemaName']=schemaName
+        data['queryName']=dataset
+        data['rows']=rows
+        url=self.GetLabkeyUrl()+'/'+project
+        url+='/query-'+method+'Rows.api?'
+        return self.post(url,json.dumps(data))