{ "meta": { "$_GET": [ { "type": "text", "name": "id" }, { "type": "text", "name": "sort" }, { "type": "text", "name": "dir" } ] }, "exec": { "steps": [ { "name": "gettheuser", "module": "dbconnector", "action": "single", "options": { "connection": "authdb", "sql": { "type": "select", "columns": [ { "table": "users", "column": "id" }, { "table": "users", "column": "email" }, { "table": "users", "column": "pwd" }, { "table": "users", "column": "firstname" }, { "table": "users", "column": "lastname" } ], "params": [], "table": { "name": "users" }, "primary": "id", "joins": [], "wheres": { "condition": "AND", "rules": [ { "id": "users.email", "field": "users.email", "type": "string", "operator": "equal", "value": "admin@prelub.com", "data": { "table": "users", "column": "email", "type": "text", "columnObj": { "type": "string", "maxLength": 255, "primary": false, "unique": false, "nullable": true, "name": "email" } }, "operation": "=" } ], "conditional": null, "valid": true }, "query": "select `id`, `email`, `pwd`, `firstname`, `lastname` from `users` where `users`.`email` = ?" } }, "output": true, "meta": [ { "type": "number", "name": "id" }, { "type": "text", "name": "email" }, { "type": "text", "name": "pwd" }, { "type": "text", "name": "firstname" }, { "type": "text", "name": "lastname" } ], "outputType": "object" }, { "name": "", "module": "core", "action": "condition", "options": { "if": "{{gettheuser}}", "then": { "steps": [ { "name": "api", "module": "api", "action": "send", "options": { "url": "{{$_ENV.API_BASEURL+'users/'+gettheuser.id}}", "schema": [ { "type": "object", "name": "data", "sub": [ { "type": "number", "name": "id" }, { "type": "text", "name": "lastname" }, { "type": "text", "name": "updatedate" }, { "type": "number", "name": "updateuserid" }, { "type": "boolean", "name": "isactive" }, { "type": "text", "name": "password" }, { "type": "text", "name": "createdate" }, { "type": "text", "name": "username" }, { "type": "text", "name": "email" }, { "type": "text", "name": "firstname" }, { "type": "number", "name": "createuserid" }, { "type": "array", "name": "roles" } ] }, { "type": "object", "name": "headers", "sub": [ { "type": "text", "name": "connection" }, { "type": "text", "name": "content-length" }, { "type": "text", "name": "content-type" }, { "type": "text", "name": "date" } ] } ] }, "output": true, "meta": [ { "type": "object", "name": "data", "sub": [ { "type": "number", "name": "id" }, { "type": "text", "name": "lastname" }, { "type": "text", "name": "updatedate" }, { "type": "number", "name": "updateuserid" }, { "type": "boolean", "name": "isactive" }, { "type": "text", "name": "password" }, { "type": "text", "name": "createdate" }, { "type": "text", "name": "username" }, { "type": "text", "name": "email" }, { "type": "text", "name": "firstname" }, { "type": "number", "name": "createuserid" }, { "type": "array", "name": "roles" } ] }, { "type": "object", "name": "headers", "sub": [ { "type": "text", "name": "connection" }, { "type": "text", "name": "content-length" }, { "type": "text", "name": "content-type" }, { "type": "text", "name": "date" } ] } ], "outputType": "object" }, { "name": "insertuser", "module": "api", "action": "send", "options": { "url": "{{$_ENV.API_BASEURL+'users/insert'}}", "method": "POST", "schema": [ { "type": "object", "name": "data", "sub": [ { "type": "text", "name": "updatedate" }, { "type": "text", "name": "password" }, { "type": "boolean", "name": "isactive" }, { "type": "number", "name": "id" }, { "type": "text", "name": "lastname" }, { "type": "number", "name": "updateuserid" }, { "type": "text", "name": "firstname" }, { "type": "text", "name": "username" }, { "type": "text", "name": "email" }, { "type": "text", "name": "createdate" }, { "type": "number", "name": "createuserid" } ] } ], "dataType": "json", "data": { "id": "{{gettheuser.id.toString()}}", "firstname": "{{gettheuser.firstname}}", "lastname": "{{gettheuser.lastname}}", "email": "{{gettheuser.email}}", "password": "{{gettheuser.password}}", "isactive": true, "createuserid": -1, "updateuserid": -1, "username": null } }, "output": true, "meta": [ { "type": "object", "name": "data", "sub": [ { "type": "text", "name": "updatedate" }, { "type": "text", "name": "password" }, { "type": "boolean", "name": "isactive" }, { "type": "number", "name": "id" }, { "type": "text", "name": "lastname" }, { "type": "number", "name": "updateuserid" }, { "type": "text", "name": "firstname" }, { "type": "text", "name": "username" }, { "type": "text", "name": "email" }, { "type": "text", "name": "createdate" }, { "type": "number", "name": "createuserid" } ] } ], "outputType": "object" }, { "name": "query", "module": "dbconnector", "action": "select", "options": { "connection": "authdb", "sql": { "type": "select", "columns": [ { "table": "xuserrole", "column": "roleid" } ], "params": [ { "operator": "equal", "type": "expression", "name": ":P1", "value": "{{insertuser.data.id}}", "test": "" } ], "table": { "name": "xuserrole" }, "primary": "id", "joins": [], "wheres": { "condition": "AND", "rules": [ { "id": "xuserrole.userid", "field": "xuserrole.userid", "type": "double", "operator": "equal", "value": "{{insertuser.data.id}}", "data": { "table": "xuserrole", "column": "userid", "type": "number", "columnObj": { "type": "integer", "primary": false, "unique": false, "nullable": true, "name": "userid" } }, "operation": "=" } ], "conditional": null, "valid": true }, "query": "select `roleid` from `xuserrole` where `xuserrole`.`userid` = ?" } }, "output": true, "meta": [ { "type": "number", "name": "roleid" } ], "outputType": "array" }, { "name": "repeat", "module": "core", "action": "repeat", "options": { "outputFilter": "exclude", "repeat": "{{query}}", "outputFields": [], "exec": { "steps": { "name": "addrole", "module": "api", "action": "send", "options": { "url": "{{$_ENV.API_BASEURL+'xuserroles/add/'+gettheuser.id+'/'+roleid}}", "method": "POST", "dataType": "json" }, "output": true } } }, "output": true, "meta": [ { "name": "$index", "type": "number" }, { "name": "$number", "type": "number" }, { "name": "$name", "type": "text" }, { "name": "$value", "type": "object" }, { "name": "roleid", "type": "number" }, { "name": "addrole", "type": "text" } ], "outputType": "array" } ] } }, "outputType": "boolean" } ] } }