Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 

368 рядки
11 KiB

  1. {
  2. "meta": {
  3. "$_GET": [
  4. {
  5. "type": "text",
  6. "name": "id"
  7. },
  8. {
  9. "type": "text",
  10. "name": "sort"
  11. },
  12. {
  13. "type": "text",
  14. "name": "dir"
  15. }
  16. ]
  17. },
  18. "exec": {
  19. "steps": [
  20. {
  21. "name": "gettheuser",
  22. "module": "dbconnector",
  23. "action": "single",
  24. "options": {
  25. "connection": "authdb",
  26. "sql": {
  27. "type": "select",
  28. "columns": [
  29. {
  30. "table": "users",
  31. "column": "id"
  32. },
  33. {
  34. "table": "users",
  35. "column": "email"
  36. },
  37. {
  38. "table": "users",
  39. "column": "pwd"
  40. },
  41. {
  42. "table": "users",
  43. "column": "firstname"
  44. },
  45. {
  46. "table": "users",
  47. "column": "lastname"
  48. }
  49. ],
  50. "params": [],
  51. "table": {
  52. "name": "users"
  53. },
  54. "primary": "id",
  55. "joins": [],
  56. "wheres": {
  57. "condition": "AND",
  58. "rules": [
  59. {
  60. "id": "users.email",
  61. "field": "users.email",
  62. "type": "string",
  63. "operator": "equal",
  64. "value": "admin@prelub.com",
  65. "data": {
  66. "table": "users",
  67. "column": "email",
  68. "type": "text",
  69. "columnObj": {
  70. "type": "string",
  71. "maxLength": 255,
  72. "primary": false,
  73. "unique": false,
  74. "nullable": true,
  75. "name": "email"
  76. }
  77. },
  78. "operation": "="
  79. }
  80. ],
  81. "conditional": null,
  82. "valid": true
  83. },
  84. "query": "select `id`, `email`, `pwd`, `firstname`, `lastname` from `users` where `users`.`email` = ?"
  85. }
  86. },
  87. "output": true,
  88. "meta": [
  89. {
  90. "type": "number",
  91. "name": "id"
  92. },
  93. {
  94. "type": "text",
  95. "name": "email"
  96. },
  97. {
  98. "type": "text",
  99. "name": "pwd"
  100. },
  101. {
  102. "type": "text",
  103. "name": "firstname"
  104. },
  105. {
  106. "type": "text",
  107. "name": "lastname"
  108. }
  109. ],
  110. "outputType": "object"
  111. },
  112. {
  113. "name": "",
  114. "module": "core",
  115. "action": "condition",
  116. "options": {
  117. "if": "{{gettheuser}}",
  118. "then": {
  119. "steps": [
  120. {
  121. "name": "insertuser",
  122. "module": "api",
  123. "action": "send",
  124. "options": {
  125. "url": "{{$_ENV.API_BASEURL+'users/insert'}}",
  126. "method": "POST",
  127. "schema": [
  128. {
  129. "type": "object",
  130. "name": "data",
  131. "sub": [
  132. {
  133. "type": "text",
  134. "name": "updatedate"
  135. },
  136. {
  137. "type": "text",
  138. "name": "password"
  139. },
  140. {
  141. "type": "boolean",
  142. "name": "isactive"
  143. },
  144. {
  145. "type": "number",
  146. "name": "id"
  147. },
  148. {
  149. "type": "text",
  150. "name": "lastname"
  151. },
  152. {
  153. "type": "number",
  154. "name": "updateuserid"
  155. },
  156. {
  157. "type": "text",
  158. "name": "firstname"
  159. },
  160. {
  161. "type": "text",
  162. "name": "username"
  163. },
  164. {
  165. "type": "text",
  166. "name": "email"
  167. },
  168. {
  169. "type": "text",
  170. "name": "createdate"
  171. },
  172. {
  173. "type": "number",
  174. "name": "createuserid"
  175. }
  176. ]
  177. }
  178. ],
  179. "dataType": "json",
  180. "data": {
  181. "id": "{{gettheuser.id.toString()}}",
  182. "firstname": "{{gettheuser.firstname}}",
  183. "lastname": "{{gettheuser.lastname}}",
  184. "email": "{{gettheuser.email}}",
  185. "password": "{{gettheuser.password}}",
  186. "isactive": true,
  187. "createuserid": -1,
  188. "updateuserid": -1,
  189. "username": null
  190. }
  191. },
  192. "output": true,
  193. "meta": [
  194. {
  195. "type": "object",
  196. "name": "data",
  197. "sub": [
  198. {
  199. "type": "text",
  200. "name": "updatedate"
  201. },
  202. {
  203. "type": "text",
  204. "name": "password"
  205. },
  206. {
  207. "type": "boolean",
  208. "name": "isactive"
  209. },
  210. {
  211. "type": "number",
  212. "name": "id"
  213. },
  214. {
  215. "type": "text",
  216. "name": "lastname"
  217. },
  218. {
  219. "type": "number",
  220. "name": "updateuserid"
  221. },
  222. {
  223. "type": "text",
  224. "name": "firstname"
  225. },
  226. {
  227. "type": "text",
  228. "name": "username"
  229. },
  230. {
  231. "type": "text",
  232. "name": "email"
  233. },
  234. {
  235. "type": "text",
  236. "name": "createdate"
  237. },
  238. {
  239. "type": "number",
  240. "name": "createuserid"
  241. }
  242. ]
  243. }
  244. ],
  245. "outputType": "object"
  246. },
  247. {
  248. "name": "query",
  249. "module": "dbconnector",
  250. "action": "select",
  251. "options": {
  252. "connection": "authdb",
  253. "sql": {
  254. "type": "select",
  255. "columns": [
  256. {
  257. "table": "xuserrole",
  258. "column": "roleid"
  259. }
  260. ],
  261. "params": [
  262. {
  263. "operator": "equal",
  264. "type": "expression",
  265. "name": ":P1",
  266. "value": "{{$_GET.id}}",
  267. "test": ""
  268. }
  269. ],
  270. "table": {
  271. "name": "xuserrole"
  272. },
  273. "primary": "id",
  274. "joins": [],
  275. "wheres": {
  276. "condition": "AND",
  277. "rules": [
  278. {
  279. "id": "xuserrole.userid",
  280. "field": "xuserrole.userid",
  281. "type": "double",
  282. "operator": "equal",
  283. "value": "{{$_GET.id}}",
  284. "data": {
  285. "table": "xuserrole",
  286. "column": "userid",
  287. "type": "number",
  288. "columnObj": {
  289. "type": "integer",
  290. "primary": false,
  291. "unique": false,
  292. "nullable": true,
  293. "name": "userid"
  294. }
  295. },
  296. "operation": "="
  297. }
  298. ],
  299. "conditional": null,
  300. "valid": true
  301. },
  302. "query": "select `roleid` from `xuserrole` where `xuserrole`.`userid` = ?"
  303. }
  304. },
  305. "output": true,
  306. "meta": [
  307. {
  308. "type": "number",
  309. "name": "roleid"
  310. }
  311. ],
  312. "outputType": "array"
  313. },
  314. {
  315. "name": "repeat",
  316. "module": "core",
  317. "action": "repeat",
  318. "options": {
  319. "outputFilter": "exclude",
  320. "repeat": "{{query}}",
  321. "outputFields": [],
  322. "exec": {
  323. "steps": {
  324. "name": "addrole",
  325. "module": "api",
  326. "action": "send",
  327. "options": {
  328. "url": "{{$_ENV.API_BASEURL+'xuserroles/add/'+gettheuser.id+'/'+roleid}}",
  329. "method": "POST",
  330. "dataType": "json"
  331. },
  332. "output": true
  333. }
  334. }
  335. },
  336. "output": true,
  337. "meta": [
  338. {
  339. "name": "$index",
  340. "type": "number"
  341. },
  342. {
  343. "name": "$number",
  344. "type": "number"
  345. },
  346. {
  347. "name": "$name",
  348. "type": "text"
  349. },
  350. {
  351. "name": "$value",
  352. "type": "object"
  353. },
  354. {
  355. "name": "roleid",
  356. "type": "number"
  357. }
  358. ],
  359. "outputType": "array"
  360. }
  361. ]
  362. }
  363. },
  364. "outputType": "boolean"
  365. }
  366. ]
  367. }
  368. }