From 1d5a23f63fac34f29e90bbfa2dcbc96402feb9c5 Mon Sep 17 00:00:00 2001 From: eduveks Date: Thu, 8 Apr 2021 00:09:18 +0000 Subject: [PATCH] =?UTF-8?q?Sess=C3=A3o=209?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dbs/social_ma.mv.db | Bin 57344 -> 57344 bytes server/services/register.post.js | 54 ++++++++++++++++++++++++++ server/setup/_schema-form-3-pessoa.js | 34 ++-------------- website/src/pages/Register/index.js | 38 +++++++++++++++++- 4 files changed, 93 insertions(+), 33 deletions(-) diff --git a/dbs/social_ma.mv.db b/dbs/social_ma.mv.db index 9a69659416c3c061e3a0926f8970665ccc885a6b..afb04b2e4a2b44fef1ee462f5de98422158dc550 100644 GIT binary patch delta 4495 zcmcgv4Rq7i6_#a-n29962BVTJkq{>#2|tCj z7hJeKB}fT*h8nM!p{X=O#8zI@xE?A&AoL5AF@FdeEZ7 z?0Wo&#bUFfLDMDFgb7f{w>1Z|Ao`=%ELJQ-pB+JMSWZ+785@%y=Y$u0h1vEs7*$4g zOF?$-?PNv9{AlcW%!(yrT`*ht%it7K_;&Dl46LuVhi6UC#L!>e2X(WbK@Ze|KhBm> zmkT^O=OfQvA{9gIsFQ+!AN(`$&)QKJ4cCuc?zi3p1+{(Ctw#@9((DLD`xutgQyZ7bs4V zX_kj6%JD2EDIzIQ0g4GQG~*X(RrV)9 zMNb=4iLlXJ-a8Q=k@U9e;Z2Y7!>xu#}bNo#jbqW74SZ(w0UwpGH`Q24!E98@B9|9*;6?*`1yp0eh%j>F3r?=|e>KFZjag z1}7FdESMW3!WS3KN}FWwY;iljYPx-S`J_T_=a4I}4DNZR$mQzt%F6uTU2o6X-j?LT zJ?UaCKBH!aSY285bM^fw>wvW=Di90&lO$N;S=?FKpFoC#<{R@|sUV_Ee7}wB>rkgux?gSE2hSewy|1 zxQN>h!$6(?o5MA-8j9)=_tG!k(J#I6Ep>e`L@P&+aNZKl2Blu4#%a za{_vQ-pl5y8@Y&veQ!QmrY!v3 zGNUzRX?t}ceXBzyI2YT>F7+?b}8`Sx*Nb)9Vf4;p>`BXs`-=w%&^d z`+|%OUUT`$_rc~311!1a_dn1k=G^ifVABRKTK+jWwPB^X;zBV9ZOlL`TEX0nnOPM( zCYm+7HJjnib1@MJrgfEF!mS(En9!0-VD#o5=8_A40rNL!no2-ub5CCOy#~Tx{pE_5|NR+(@!qGNYm_ z7j{chd~-XE+uJmi42Fg9YDcr zExkc`OP^##4v5gN4Wb3KwbY?vdwBRxr@51P)ZE2L|8VK<3R90Ht*gwXnCQqxM-F_n z=ZP58AAQJ2M*&z`{UHe77VAbS-Y?6%ffW3tXdoqprQ@WcByd%Vl*u?(g$;s{q)8@$ zguc>*LwXxbsjz=Bumz5m4VnZ_;te*1dP)fRDWyXPr9i*P29lv=Bk31- zBPo$goYa$vjlW9^v=I+2`D9-QH$;;hYw#0I@{+;l&@q(JbW-peT}}tMfWcJQP8z*P z(lQyhoF;vKgCk&QeUKZ9r4gi+1U3u1!48-d8{lLvPO5M%gSS+HGYYGMnm~$t0x3~( zayUt;QlchBG%n5g61W@;gaH=ENP^f_RcLK+c6wYpdU>T_rCgSmu=~~cX;JoxloSZC zpzY9)d+7(sh`j6#DiwKD>;wp$?OJV+nTOQ|tsccsdnyIj8kDb{_Ns2+dSx73fFMtP z_>d=9a?)hQ&%S$H&gZbjOic ztH1DipnyuGv4Ea`M~`)eVS?xPnA?qxjE6}OM3ol;bSzACR6g)vnDi1ZKeU8P zlrafZZLL_CT#+!%`wzl&8ir}?zX}uee-2Z}R}Cg%%bDm`?R#V{49e7$0WcnM{~F>! Q8{#3#K3)uf) zY6L4>c~`MK+E5-+2OljIYEvXJXb}|?(L_W=f`E@itN!uMY`c3GTMa+7$?TbP&$;J* z_nf)kJzdprU)67aDaWA*s=j_&Ub-oLdX?6wJf_tL6rB_NJi~O${VD(AV#uj`EFTpX z4NNMRHJS2NRWxb$%8zOd0l(y1D%S=iQA2WhAjmP4uQp@}`s!7g&m-7>W;y zlCQC1sTN>WPL?!*_cdwt4HY%j0fbJ4-N*Ba5(t8rd9v8#y&*Qi?{qlw-0r0P0REWoHEx$K0vl~insEw% zPg~))GaHdsKI_#u8)y7JcbOfWpJ&w18%_dOAAnU4o+CLly#hKPC@`AJ&!$Y=v<^7p ziL!VTV;Fbk5<>mWdIiD~QdNm~ee+Pe-5Yuf2& zNk?)VsIr|0Hc~=PGuK`uNx~Xxb;Odck+(Q9-Fh1YNoWaYWqPa|IkRi`!NN+)mF!w` zJSLvF_r9|G7n5;h0+~oA8MT!sV`6HxhK3p$7T3>#LcJ3{Upocvt6yv6)=iHAuTF;Y zviV>~03KSV!26cFVE*zG)7ma2k%SYtY4kAY@uP=D4~NzZ{dwC4p>sucYJC32&XhEQ zX8bJ23uGLuZE+c8D}to2!1a-*ws*xZvuEsgA1K@W$+fRN$%#tM(#NYSR9V#;k`wO? zEAZpyLc6QgVH{d{s~yf+IWZ}B5G0!`)$HO^)8L=0r`Qr;>Y7pq@yad(2G?wjCw|>| zBn_a2VeB)PGm)pOz4Ru4K<6OP9>zkM(s%HWED!wNT>xK1usT|nrNkk_Q1@Ng9$42t z6;fMU*4O2cLx))Rbpsc3Jn-t)Sy0&aLc-ATvmTEX85VDu48Pmx7ntato{L* z9u{&GGdEOVl%bN&E3kC;BwGobzk7-~@% zT4+h{mNHA`&OPJJjxF@Uulo7S*Nc}DULrwx?D6W#B1Aq?Hq8G9HXnEilnxrsgKm2a zI5rOuUPI`vw!ywP3L!9rW)vrRl&EQmp(znl{fZ)ED%!6SQ8k{$t(vHb6lRr>H?C?F zuF9NZsg>3ZL2I&#PnKjFS9ML6B9j@4!>vdavCv4xaiF`0qbPy^#}+;XpFTX?JaQ+| zlFUokW>kq&a8;2+T-8+;Q#C)0CBiBo7uhN!F)WrfCMYQWuobNzWGKw6t3oIfp+x9v zRGxH=#k0t$Dh^twbSy7uXQIf2SE6;1rJ__FS)0SP)}>&SS?2M{JkN-HB$gKBq7tC# zSjuTlMY5$^e6(7&X%Eur$kwip-)8V^Ie3*GK#nUzJuJphr6x=q#c@(3f>nPUr zS!TCVcXC3Aiuws+&J9zMkTD=fF_9W!BAB@6=fo$&ykYfU+JD!7HHBBwVAnuF@hI!@ z;%H09L^?Wj*v80_5X38B{M4}z82u;Si#LlDNjlc_VJ#`kYMiL4!bp)cYNSZ&^+mEs zGqnESNK?c~Q=_mV`K=-iqk`RVkxmOY56m8~NIJSMe)=D)6uC!q*mY*)9=U<<7TqID aCZKv?`Hj>A4Tk?kphaHbB-xL0So#-q)r}nh diff --git a/server/services/register.post.js b/server/services/register.post.js index e69de29..3a48bb2 100644 --- a/server/services/register.post.js +++ b/server/services/register.post.js @@ -0,0 +1,54 @@ + +const name = _req.getString("name") +const surname = _req.getString("surname") +const username = _req.getString("username") +const password = _req.getString("password") +const email = _req.getString("email") +const cityUid = _req.getString("city_uid") + +const dbCidade = _db.get("cidade", cityUid) + +const emailExists = _user.firstByMail(email) +const usernameExists = _user.firstByUser(username) + +if (dbCidade == null) { + _header.status(409) + _out.json( + _val.map() + .set("error", true) + .set("message", "city-not-found") + ) +} else if (emailExists != null) { + _out.json( + _val.map() + .set("result", false) + .set("error", "email-exists") + ) +} else if (usernameExists != null) { + _out.json( + _val.map() + .set("result", false) + .set("error", "user-exists") + ) +} else { + const group = _group.firstByCode("user") + const user_id = _user.create( + _val.map() + .set("name", `${name} ${surname}`) + .set("user", username) + .set("pass", password) + .set("mail", email) + .set("group_id", group.getInt("id")) + ) + _db.insertIfNotExists( + 'pessoa', + _val.map() + .set("nome", name) + .set("sobrenome", surname) + .set("email", email) + .set("cidade_id", dbCidade.getInt("id")) + .set("usuario_id", user_id) + ) + _log.info("Novo usuario criado com o id: "+ user_id) + _out.json(_val.map().set("result", true)) +} diff --git a/server/setup/_schema-form-3-pessoa.js b/server/setup/_schema-form-3-pessoa.js index 1de81aa..c313629 100644 --- a/server/setup/_schema-form-3-pessoa.js +++ b/server/setup/_schema-form-3-pessoa.js @@ -20,10 +20,12 @@ _form.createIfNotExists( .set("export_xls", true) .set("export_xml", true) .set("firebase", "") + .set("group_uid", "4cb2df92-ddae-4426-b054-50b53b5eec6f") .set("name", "pessoa") .set("report", false) .set("show_id", true) .set("uid", "262e9f17-3d70-4067-b28d-bafc98f56d80") + .set("user_uid", "658660bc-efe4-4236-8114-31cd19fc3c80") ) _form.createComponentIfNotExists( "262e9f17-3d70-4067-b28d-bafc98f56d80", @@ -55,36 +57,6 @@ _form.createComponentIfNotExists( .set("x", 1) .set("y", 4) ) -_form.createComponentIfNotExists( - "262e9f17-3d70-4067-b28d-bafc98f56d80", - _val.init() - .set("colspan", 0) - .set("displayname", "Comunidades") - .set("firebase", "") - .set("group_id", 0) - .set("height", 0) - .set("max", 0) - .set("min", 0) - .set("name", "comunidades") - .set("notnull", false) - .set("primarykey", false) - .set("properties", "{\"ITEM_SEPARATOR\":{\"default\":\" # \",\"type\":\"STRING\",\"value\":\" # \"},\"MAX_COLUMN_LENGTH\":{\"default\":\"0\",\"type\":\"INTEGER\",\"value\":\"0\"},\"COLUMN_SEPARATOR\":{\"default\":\" - \",\"type\":\"LINK_SEPARATOR\",\"value\":\" - \"},\"REFERENCE\":{\"default\":\"\",\"type\":\"LINK\",\"value\":\"pessoa_comunidade:pessoa_id\"},\"LINK\":{\"default\":\"\",\"type\":\"LINK\",\"value\":\"pessoa_comunidade:comunidade_id\"},\"SERVICE\":{\"default\":\"com/MultiSelect.netuno\",\"type\":\"STRING\",\"value\":\"com/MultiSelect.netuno\"},\"ONLY_ACTIVES\":{\"default\":\"false\",\"type\":\"BOOLEAN\",\"value\":\"false\"}}") - .set("rowspan", 0) - .set("tdheight", 0) - .set("tdwidth", 0) - .set("type", "multiselect") - .set("uid", "d12270ba-79f3-403c-ac20-ad5297d4efe2") - .set("user_id", 0) - .set("whenedit", true) - .set("whenexport", true) - .set("whenfilter", false) - .set("whennew", true) - .set("whenresult", false) - .set("whenview", true) - .set("width", 0) - .set("x", 1) - .set("y", 5) -) _form.createComponentIfNotExists( "262e9f17-3d70-4067-b28d-bafc98f56d80", _val.init() @@ -186,7 +158,7 @@ _form.createComponentIfNotExists( .set("max", 0) .set("min", 0) .set("name", "usuario_id") - .set("notnull", false) + .set("notnull", true) .set("primarykey", false) .set("properties", "{\"ALLOW_USER_LOGGED\":{\"default\":\"false\",\"type\":\"BOOLEAN\",\"value\":\"false\"},\"GROUPS\":{\"default\":\"\",\"type\":\"STRING\",\"value\":\"\"},\"GROUPS_MODE\":{\"default\":\"all|exclude|only\",\"type\":\"CHOICE\",\"value\":\"all\"},\"USERS_MODE\":{\"default\":\"all|exclude|only\",\"type\":\"CHOICE\",\"value\":\"all\"},\"USERS\":{\"default\":\"\",\"type\":\"STRING\",\"value\":\"\"}}") .set("rowspan", 0) diff --git a/website/src/pages/Register/index.js b/website/src/pages/Register/index.js index 5fa146a..cb66eec 100644 --- a/website/src/pages/Register/index.js +++ b/website/src/pages/Register/index.js @@ -1,6 +1,6 @@ import React, { useEffect, useState} from 'react'; -import { Form, Input, Button, Select } from 'antd'; +import { Form, Input, Button, Select, notification } from 'antd'; import _service from '@netuno/service-client'; @@ -31,7 +31,41 @@ export default ()=> { }, []); const onFinish = (values) => { - console.log('Success:', values); + _service({ + method: 'POST', + url: "register", + data: values, + success: (response) => { + if (response.json) { + const { result, error } = response.json; + if (result === true) { + notification["success"]({ + message: 'Conta criada com Sucesso', + description: 'A sua conta foi criada com sucesso, pode efetuar o login.', + }); + } else if (error) { + if (error == "email-exists") { + notification["error"]({ + message: 'E-mail já existe', + description: 'O e-mail já foi registrado.', + }); + } else if (error == "user-exists") { + notification["error"]({ + message: 'Usuário já existe', + description: 'O usuário já foi registrado.', + }); + } + } + } + }, + fail: (e) => { + console.log("Service Error", e); + notification["error"]({ + message: 'Não foi possível Criar a Conta', + description: 'Tente mais tarde.', + }); + } + }); }; const onFinishFailed = (errorInfo) => {