From 62ee817d705ac789e36939d967d54a6b26e0c811 Mon Sep 17 00:00:00 2001 From: Abdiel Pava Date: Thu, 23 Sep 2021 13:21:06 -0500 Subject: [PATCH 1/2] Atualizacion checkuout --- .vs/ExEcommerce/v16/.suo | Bin 0 -> 47104 bytes .vs/ProjectSettings.json | 3 + .vs/PythonSettings.json | 3 + .vs/VSWorkspaceState.json | 9 ++ .vs/slnx.sqlite | Bin 0 -> 90112 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 157 bytes .../__pycache__/settings.cpython-39.pyc | Bin 0 -> 2494 bytes ExEcommerce/__pycache__/urls.cpython-39.pyc | Bin 0 -> 407 bytes ExEcommerce/__pycache__/wsgi.cpython-39.pyc | Bin 0 -> 568 bytes ExEcommerce/settings.py | 1 + ExEcommerce/urls.py | 4 +- Productos/__pycache__/__init__.cpython-39.pyc | Bin 0 -> 155 bytes Productos/__pycache__/admin.cpython-39.pyc | Bin 0 -> 331 bytes Productos/__pycache__/apps.cpython-39.pyc | Bin 0 -> 381 bytes Productos/__pycache__/models.cpython-39.pyc | Bin 0 -> 2155 bytes .../__pycache__/serializers.cpython-39.pyc | Bin 0 -> 1281 bytes Productos/__pycache__/urls.cpython-39.pyc | Bin 0 -> 522 bytes Productos/__pycache__/views.cpython-39.pyc | Bin 0 -> 1492 bytes .../__pycache__/0001_initial.cpython-39.pyc | Bin 0 -> 1347 bytes .../0002_auto_20210916_1521.cpython-39.pyc | Bin 0 -> 652 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 166 bytes checkout_72186587/__init__.py | 0 .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 163 bytes .../__pycache__/admin.cpython-39.pyc | Bin 0 -> 340 bytes .../__pycache__/apps.cpython-39.pyc | Bin 0 -> 461 bytes .../__pycache__/models.cpython-39.pyc | Bin 0 -> 2066 bytes .../__pycache__/serializer.cpython-39.pyc | Bin 0 -> 1233 bytes .../__pycache__/urls.cpython-39.pyc | Bin 0 -> 545 bytes .../__pycache__/views.cpython-39.pyc | Bin 0 -> 3455 bytes checkout_72186587/admin.py | 8 ++ checkout_72186587/apps.py | 6 ++ checkout_72186587/migrations/0001_initial.py | 49 +++++++++ .../0002_alter_carritocompras_fecha.py | 18 ++++ .../migrations/0003_auto_20210923_1305.py | 23 ++++ checkout_72186587/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-39.pyc | Bin 0 -> 1413 bytes ..._alter_carritocompras_fecha.cpython-39.pyc | Bin 0 -> 629 bytes .../0003_auto_20210923_1305.cpython-39.pyc | Bin 0 -> 698 bytes .../__pycache__/__init__.cpython-39.pyc | Bin 0 -> 174 bytes checkout_72186587/models.py | 54 ++++++++++ checkout_72186587/serializer.py | 28 +++++ checkout_72186587/tests.py | 3 + checkout_72186587/urls.py | 18 ++++ checkout_72186587/views.py | 101 ++++++++++++++++++ db.sqlite3 | Bin 155648 -> 196608 bytes 45 files changed, 327 insertions(+), 1 deletion(-) create mode 100644 .vs/ExEcommerce/v16/.suo create mode 100644 .vs/ProjectSettings.json create mode 100644 .vs/PythonSettings.json create mode 100644 .vs/VSWorkspaceState.json create mode 100644 .vs/slnx.sqlite create mode 100644 ExEcommerce/__pycache__/__init__.cpython-39.pyc create mode 100644 ExEcommerce/__pycache__/settings.cpython-39.pyc create mode 100644 ExEcommerce/__pycache__/urls.cpython-39.pyc create mode 100644 ExEcommerce/__pycache__/wsgi.cpython-39.pyc create mode 100644 Productos/__pycache__/__init__.cpython-39.pyc create mode 100644 Productos/__pycache__/admin.cpython-39.pyc create mode 100644 Productos/__pycache__/apps.cpython-39.pyc create mode 100644 Productos/__pycache__/models.cpython-39.pyc create mode 100644 Productos/__pycache__/serializers.cpython-39.pyc create mode 100644 Productos/__pycache__/urls.cpython-39.pyc create mode 100644 Productos/__pycache__/views.cpython-39.pyc create mode 100644 Productos/migrations/__pycache__/0001_initial.cpython-39.pyc create mode 100644 Productos/migrations/__pycache__/0002_auto_20210916_1521.cpython-39.pyc create mode 100644 Productos/migrations/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout_72186587/__init__.py create mode 100644 checkout_72186587/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout_72186587/__pycache__/admin.cpython-39.pyc create mode 100644 checkout_72186587/__pycache__/apps.cpython-39.pyc create mode 100644 checkout_72186587/__pycache__/models.cpython-39.pyc create mode 100644 checkout_72186587/__pycache__/serializer.cpython-39.pyc create mode 100644 checkout_72186587/__pycache__/urls.cpython-39.pyc create mode 100644 checkout_72186587/__pycache__/views.cpython-39.pyc create mode 100644 checkout_72186587/admin.py create mode 100644 checkout_72186587/apps.py create mode 100644 checkout_72186587/migrations/0001_initial.py create mode 100644 checkout_72186587/migrations/0002_alter_carritocompras_fecha.py create mode 100644 checkout_72186587/migrations/0003_auto_20210923_1305.py create mode 100644 checkout_72186587/migrations/__init__.py create mode 100644 checkout_72186587/migrations/__pycache__/0001_initial.cpython-39.pyc create mode 100644 checkout_72186587/migrations/__pycache__/0002_alter_carritocompras_fecha.cpython-39.pyc create mode 100644 checkout_72186587/migrations/__pycache__/0003_auto_20210923_1305.cpython-39.pyc create mode 100644 checkout_72186587/migrations/__pycache__/__init__.cpython-39.pyc create mode 100644 checkout_72186587/models.py create mode 100644 checkout_72186587/serializer.py create mode 100644 checkout_72186587/tests.py create mode 100644 checkout_72186587/urls.py create mode 100644 checkout_72186587/views.py diff --git a/.vs/ExEcommerce/v16/.suo b/.vs/ExEcommerce/v16/.suo new file mode 100644 index 0000000000000000000000000000000000000000..342965db14864b2296e305c21e47510826817601 GIT binary patch literal 47104 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 literal 0 HcmV?d00001 diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json new file mode 100644 index 0000000..f8b4888 --- /dev/null +++ b/.vs/ProjectSettings.json @@ -0,0 +1,3 @@ +{ + "CurrentProjectSetting": null +} \ No newline at end of file diff --git a/.vs/PythonSettings.json b/.vs/PythonSettings.json new file mode 100644 index 0000000..722fed8 --- /dev/null +++ b/.vs/PythonSettings.json @@ -0,0 +1,3 @@ +{ + "TestFramework": "Pytest" +} \ No newline at end of file diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json new file mode 100644 index 0000000..cb4b888 --- /dev/null +++ b/.vs/VSWorkspaceState.json @@ -0,0 +1,9 @@ +{ + "ExpandedNodes": [ + "", + "\\checkout_72186587", + "\\Productos" + ], + "SelectedNode": "\\checkout_72186587\\urls.py", + "PreviewInSolutionExplorer": false +} \ No newline at end of file diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..629f09b48744f8c2a2c1331bc68d92f2e2a49ff8 GIT binary patch literal 90112 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 bpYU^hCR)#YfO(!jN%M*KPktWo!)NLrP3T@F literal 0 HcmV?d00001 diff --git a/ExEcommerce/__pycache__/urls.cpython-39.pyc b/ExEcommerce/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4782dfa88faa465cb63955786495d11aa47e6280 GIT binary patch literal 407 zcmY*W%Sr<=6ip`Sw6zahxpq6776ok)DZUEgLJHz$7?3mx?bOL+NM?$5+pq8w{H1JN z`3pk9n`%LC$jLb;m%|NVoz5PDdb_$~8#q6__*)@}3)uD+Kp=rLq;QO}=Rp=I5)(yZ zijgFONW7>m!gTJ~~ya(nO$}GT=HjKl|R=9JNYy?J{q2$3aIl_=;{V%lfK51iEn{OwDa)AH< literal 0 HcmV?d00001 diff --git a/ExEcommerce/__pycache__/wsgi.cpython-39.pyc b/ExEcommerce/__pycache__/wsgi.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..39ef7d674a8fe814bf5063a4276844bfde41b37d GIT binary patch literal 568 zcmY*XO>Yx15cN7~6Bdd%RGfW{M0YE3t58MNgb)NNQd%KJkv8snvT@|KSGJRWT>C=` zNB)vIAx``SPRu4kT1N8Nm%w&KTq%C7fN{q-D~(tyI8v|y#Wvi^ZA$YJ1e?!!RVkTs zFO8nhvEMsHDvbpuHG-Dg1Tz|&OUD*c!7Jtf;-&YMJ4sVva+in|*M<4V2}!1))7Qyy zx->W5qyj2s?n=-;y>W$18#GG#*Z}PZ#~G zkAwTeh60HL@1-tWuM;|1hBUG)P~*aj9hoG@8IroSr3e-}pf}PQ9bzmLu;6Ru!_x-p zcVg=Y-MT-g=O?o(2iDEbu7yO|KJyKq^-aF6r*N|dk^jy$UQ*qK?wg(Hr}#67>!NEv K>C$KPIsFTdnzA_n literal 0 HcmV?d00001 diff --git a/ExEcommerce/settings.py b/ExEcommerce/settings.py index 274e968..7d58a5d 100644 --- a/ExEcommerce/settings.py +++ b/ExEcommerce/settings.py @@ -38,6 +38,7 @@ 'django.contrib.messages', 'django.contrib.staticfiles', 'Productos', + 'checkout_72186587', 'rest_framework', 'rest_framework.authtoken' ] diff --git a/ExEcommerce/urls.py b/ExEcommerce/urls.py index a28b9fb..3ec218e 100644 --- a/ExEcommerce/urls.py +++ b/ExEcommerce/urls.py @@ -3,5 +3,7 @@ urlpatterns = [ path('admin/', admin.site.urls), - path('productos/api/', include('Productos.urls')) + path('productos/api/', include('Productos.urls')), + path('checkout/api/', include('checkout_72186587.urls')) + ] diff --git a/Productos/__pycache__/__init__.cpython-39.pyc b/Productos/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3d351ca10694ae87fee1445651006271232ed101 GIT binary patch literal 155 zcmYe~<>g`k0^Nrmi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6wk*(xTqIJKxa z#xW@+Gc`vcAh9el#w9=(@1fbR9Ge?_VTz)NqJ~)7QaW&EvIPOU&ff|c zz2oek5BB(QV3j|Ts`$YKQqeRL%IXe*ocbVt4KjZK5v?Ztsiz<6(h$&k<3v2If5o71%j_>$soZFES#;Kg;wpY?;C{t5Lgvy z$b_h+(L#iQ5C$u&=nsW>YGw78Nu&KBF2@NS{7e^@{N8Kl`FsOAU5(fBS@LVETBGZ| z=gXI+vc_nqG(U{vvT6LJd36l?#6$Q5A)_5%;i{+bDC@1A#5xyqUFLsm@5KX$Y})U7 K6~Ev08M0sBCt2SB literal 0 HcmV?d00001 diff --git a/Productos/__pycache__/models.cpython-39.pyc b/Productos/__pycache__/models.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c5fe88cca1f600a70d531ed9870529e915f07e6d GIT binary patch literal 2155 zcmb_dOK;;g5GM7oB}H)@=e0#&=?krZu6rqZD2hb`CutXLjRlgu2nGa3q_c7*(WRs| z3AU%?RAB$Z_PGC~zk#=+r~HMUIwQr77qt%sDnY~Ha6}G=-#29I>mGsU;h*2K&s&82 zg`LI6g3j0Q6~`br;WQ-~4Jjqx5N>euhHz8RiE(X)CRi+PgT=nHSYT=KHdxws7MnXK zByewGE)r1P$|M(Q5o34pnJ@YUSOp0wC!rzCiNz^5UeM46y~RyG%~<9q{=3(csI`(?Y0Xba2KKk?ucX zKeN%HjH^uKWidLsIErPK2^EXc6Ns&fOIeJXT=b`xx*bJDsiMfiH4PBNxO!{ZX8L!I zt0Trta)?*Cpw!VRf39J$Y6FD!^D3K1f)35H^yor~I_t+6bn>VjEqqNt<07Z|59LEx4OOpQZ* z+A$ofwyws|Z{WHLL!u2xa<~a7a)tTQ`<;Yq(E8A>!$=1J4UmS>4d`_d%z(a4&@Jw8 zmwPbMt9xsAy)CiLeZGD}u4%Z#JA4E1xXZhI6WTrA16*!tXO?M&TTwO$K#(i*2*@Bx z0eDonKh;Ko;0vg3b1`OBTHbC$UlVXaFse5}+;R}FK>%}&Uk%y^pdfFMxW58%pHqOa zaZM*CL}LzT3wU_aCqgAG4Xkiy7Gu!|AcHNr0z9jCVJ>Zz;HfRnN(N!9gQ>PJ99WI1 z7P=j!Z@_qg8zrVsuQq1$_M6ey!d}6(2D@0MmSML>48}EsYchsfr!hjzwP z%(SV*SUXcCr$UvN3b)h{@B`HDxi>Eq3c-Y@TcCmj>{18b4pI@wXi(2~%-U-;A-{)T z{~IAEeoaG)qd@E7ehY4q>?A=E=tJ=e0 zb2TpTU-cmh%(VIl#b+o!K@ot^?jb9i+8Nqo5kqDD7|fv?OMpwB@VjEV>=-`~@g5GpDaT((+imrE4M^2RO-BuyEo{Oomk5^l>Q z`Gz?03Y?fp8@1bQrIpr_M>Avlv-5p3k?nSa;dt@;o&4o6_J@Ma;bAbuX(nhCQ#@rE z4>>2_Nu4wHmMK?xKbZ0~|L9)2p@*58@-gGDGBwQ9Re+gbmGRZRQ`T?%MNHP`wrMmZ zGEFWt7!3LIm=-pNi@^}5d5T7}kSi8C2+Ng&u+F6uy2?dJ&o<7Id45{r-9X_L%Halz z#wRNt)|7+i-HYz}{NPv@($=1*dRCZd z{B0cPS*9V@(FtNM;vzTE24#c!ck9txn}}&hv4DFVI_ONUJn-qJI+=hBrPsGFy*B0O zAQgkbIzWUnzCq#bh3Hgo-6ICwGNkLCps6G!F+QNIKi7ghxQQXiJUa(%{W<73 z$!$|<6GJjbe}-&Jh^2KwPpw~+dZ2t;OxU182KsCu_I46OjNQk%MJ;sq9q8c#&5B9# z@4#elgk>}ZD~+(I2C%Qy_|gkaj6(gO|%@eMP-ss0~_9;2ih| F{(nwr1rY!M literal 0 HcmV?d00001 diff --git a/Productos/__pycache__/urls.cpython-39.pyc b/Productos/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..446eafb3c5aaca6669973c136eb1a4611f528f39 GIT binary patch literal 522 zcmYjNy-wUf5Z+z;Y@hF(T!B)jb&*RSp(qHDLKB@JX;zld;vFu&cl7?jO4@3S9Qx7yYt3t8IkdYzU>G!)4XPeOKyY|+}olK zOen)a59*PLWMpC)n?xp@LAYUZ4CBA44k5mxia{Si^r){=9YLZa9bX0%<2nHW4^CBIcZY4?0p@|5EU?vm*|j^10~dd< z)`ODmwg#F`VKtaxM}C*ApHgL7zJ#e~a-u9W%D|sdiM{^#EzjIUuT-;a=RMXI1(Csk zK)yq;-SH_>@_CED<~Y!>82aGbXDW7nR>8SNe@Kix!~`yS%ytRFva&?qg}%L;5YnFH zXzVq^nJ@70u)X`K_+bHUv2&s;sNXNtnJV_$viHl`V*g^F7BPS&6fd(2-*dkH?UHRn Ym#N{iXKsDNnV5<#5%DR#S@7oHe?JbBNB{r; literal 0 HcmV?d00001 diff --git a/Productos/__pycache__/views.cpython-39.pyc b/Productos/__pycache__/views.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e016d555bcc90f084614691eda234d75c4ccee92 GIT binary patch literal 1492 zcmbtU&2Aev5GJ|YA4@COb#0`72OqlyYUGepkrZ(qq3NN58!J651T2^(1FXu`Iwa-9 zfqil=J>(tYW1pjM!CTQ&U!kYYP~ON6&{HXJcKFR`$ZuvyF&YgBjBoyYEO<=FU%0qA zI4mB*v`Aw<3iO@F)9F!l@9y2| z`-4Z-lkv|_$H!B^>DM*>^X6c%cnH&e4nmQVN>VZvm0ZR1zh%R>d96%UYhkV5LF-tn+L=yv zt+KAEJD+yX<^WkA39WthVyVm-@cW&ZEjV5f|2#PScJ>tF+1bG}*(kktBu>TbQCBZp zwQzPeel@PUwpFH9vm*$;tX*ekAyfM&XC{F_SXzq}%qV98`5$>1_M5D7V^Tb6hGGLm zx!IdnsW3wTeb$3!gpQjiK0@)H=1Th*v274&>`zPs^4}-^5`6ngN-EhKQbsb89KKw} zP|L)R4k6_WCrpDCt+5IEfoZ{c2-EI?aAZ#3u`6=HTy)Mb;9GVPIes3^<4bIfXo9`P zTd_EU(1Ug8H95bvMz8Y_L1@pVaH8OzTcw}-)F`O9b>$EWczrzU^S*b4?97b>VQxIv zjdi=AS*$Ce1Dey<+w0AM-9Eb9qKI4L3>5Ey;>bCjQ%T>_3wF+stoaJQ(G{V@ami%V zP^1c^**td1B?H=gQc&|L{CkO8|MA-?+UmMf;^R^Rb< zAKnY4t>0ZEeTCstm-$a<{skVkW97o#4DIgI9>N3O$kTf+KD)nqiN2#q2=7!5iOQpl KWo$d%=KlhyC0U37 literal 0 HcmV?d00001 diff --git a/Productos/migrations/__pycache__/0001_initial.cpython-39.pyc b/Productos/migrations/__pycache__/0001_initial.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2e5dc6b5499ed65ba06a1d05ace70cca5e57237d GIT binary patch literal 1347 zcma)6&2HO95GI$D_#;Yj6sL9iljN#H1-GX*D1sQW-5N#G0C6vb0Aj@%(Nst-yChTF z*Y>J+NRNG!KEvLMo{T<01GMNYDcM1rLzf^iGvvYE3RnKDm?(H=q=Ly}_BhxU@2u(0T24-j_MrdPi)dvO^Ix81Ux@_n{e{C-r zI27~11#fMV=ac8RUko5vTT7N$FkG{C|LA}0zlF~0!OsR|+94}wt^eeN+k`TNG2Ce} zcgY*!t<}!TS>0ZZ;V!(lW`yiqBftMnpy$y59`FhymeL(R$RKtgD_K&W4eEct* z`x~6T#!0Mj7aox650&?HEBC3|Jxxn-lwn*;0V2n$PGg~13df3_98PQ%@TL|~ERoj; zYEa5F=kg+Yi5JSNP^LUfFHr@rP%cD;QNeRm{X*mmiC4c;yCx>Jm!C%&7D;`k?4_uM zGA5SlEizubRCdv1nev)46C9#i&^Xv#l4Xh+RLXr$%$k^X^-GCyD%1e5ie*}oU8o=? z2Fo<&+LJUI8qon<@+Pa5T~m3N_qQpk>AT7$NKX_IjUCpg7$NyHlA@@&Bs8a~8f{zw zMs>d;`0+o=xs5H)>UiBIQRBO?#6e*+CS2 z-|$SAPM(t%X-(Ry0I`eb8=LvRp za6^6gLX!Xs<+jRbv7On$i`l{9k@5~{95xw5 ziJPDI7ejtdeA>sGZ)cC@-_e9r^MeHtw};R9D?UFIaigWJ=11p8vB-0jG0wO0RP&pY zV7|Y<|7o<*VOm~DebmqqWK@so;WC@qwrw)DYmUtEU+iz&-Fm+1n`4UZ{YlZ_COV?{ z-W!Vj(dL@;mDg1{g+(iEr{=xu;Iuo7rrY}EXSzDg|9>e>Rd`(sOdn zgY=bjD?RNi1WG${cAFhB!+i52%{P*Jdl4gf{p+(la2fk;!LE1&4oUSZGQhy8S>t3* z<7TeIJ~42C-!kCnEcp%3ICx)K?60Yo#jc5(s#LPCx>lP>(*f4Hu&G@M2pp2?Q!>ah z2UzBUQ#u((Z|U0yaI&0&2R=;hT$tW%5n*`V=8>n|#- z!El9(HBj$a9GXCk6+)Ou2g`k0^Nrmi6Hthh(HF6K#l_t7qb9~6oz01O-8?!3`HPe1o6w;*(xTqIJKxa z#xW@+Gc`vcAh9el#w9g`kf9j7xrUX>Mv>NpXy8g==ztZf&ryk0@&Ee@O9{FKt1R6CFjpMjVG0EELRKmY&$ literal 0 HcmV?d00001 diff --git a/checkout_72186587/__pycache__/admin.cpython-39.pyc b/checkout_72186587/__pycache__/admin.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..175ebeb870abc33e1d522b79b3f8d71971bda12f GIT binary patch literal 340 zcmZXO!AiqG5QcY?R8vWN_UJVp0t(tHMJzEF4`*7wOJ`@s3xEt?hMa*k~$D1r!D6Gcl(I}YmLmH=IZ zuMza#@b<@B8@%1I2yaLleW3$MsqZnNWP?EWuhO_2iUn)tI^()=M$SxtU*#@;1pcI3 zcRxBj7#|;vN14(BYU?8_9r)P5Tv`Xl4|8UWbUN2+X_)o#)Huo8TKm3i9(2*Hq<$x+ zkFIO^De}|m&VsSkbS5O!d)I8mste6q1&y;+@mz4N6c`TGzZBIvd$xS>@dN|4HJnj& NwlPXV<0zpC{RIyZTt)x@ literal 0 HcmV?d00001 diff --git a/checkout_72186587/__pycache__/apps.cpython-39.pyc b/checkout_72186587/__pycache__/apps.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..953ae824824e9c5b1012b1040aadddcfd8902586 GIT binary patch literal 461 zcmZWlOH0E*5Z=wEQ2RJ2;!Wr^mw*8Y2Mb#}dK!C<1p#i1jjDQ2|g#eTE znFS8Gm&B`lAc}a@Z1l2hpwj7l7TL_YPz<`LdK---0R@8HG+^KaE-++q&CcLjMz^Xg z+WUK*!-GzH$@R1gHzJ)WA0~dHK*rkd&u6`|P^WVlgV~H$ZTz=y>{U#a^Hd~~b5r9S z+sfGb4bJaM5w9v+Ag7{?3oek1PZw;it-X@m9%x~{hJ&N{+!nRqE13X6!LjU#(}6xnsYz*uMdmULA9$ Pdc54^#GX@IY=iv(dzy3u literal 0 HcmV?d00001 diff --git a/checkout_72186587/__pycache__/models.cpython-39.pyc b/checkout_72186587/__pycache__/models.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..17622153e7daa22f1fbcb0c627e16130f738e03f GIT binary patch literal 2066 zcmb_d&5qne5ca=&JTtqq%O-mO#PTOJ0#*V6i4a0rW_J*Rj3RBgSR+iYt7q1O?H<~8 zNFq**}9sSAA9H{eECz`(^hVZhMCDCk-~6 zgM(Yxi|#G1d$eqdS6JH3Z9P>kphm{9VMZPOBvJB&1U1^7WU$M z6v7BiFhWb%3kOWF9-E z=;#i=$ET+CA#q{j{SuC?ms8~$nOA-Gdt1`Or;RiQA`S|9IY2)VO<%8OfqM}q$ zG$7*^3d4MO{hwcWyjt?&OA}WBudKQV^!-$Sjp(|Hj<4NPmOMQ`*jhSx&XQj6pY3>g zm7S>aaKq5G=L|I~Cd0j&MN!T(5k++nMd+6*CESamA1j_VGm89DcSe_7X*#MNjr*s( z6nB$MXkG2jM10BXV4O-`YE|d}^0n@Lm6u{Jnyq0F^Sr#B-Xv@joAIw>5%behl@6XUnw zcO&eA1vV1D*W`8B2M-g#uNnF_iK~=2*^zmK87oS0C2Hg}O=_UlcG}4}W6VGf(G-&VhzY&!c)rF?wI~!*9)@It- z$#6#zo7FWE*GXum1Y@a0GS9yj4|G&&e{^y_IypU4uhANci8>hq=tr`WMGN#l`;;cSbQ@6~h(>x=1=&Plb_T{Ao>Z1NS%Z z4i!;dD18hot2;?PlV|z8M5&JtrU}Tf1BnuGoX9+Mmz*aBrh!;;Rbs8k zOBs4`QmtdQEnIKoq3>c}CF`I~R(e~CW+%g-?!bcQb9oFGnmXa(dVIX9(KGr17EP@f rv_HXOHLJN)ySM4D*?bkTM4!HmLpA%Xsc@f@(>0NF5pnhp_6L6h#Ga_I literal 0 HcmV?d00001 diff --git a/checkout_72186587/__pycache__/serializer.cpython-39.pyc b/checkout_72186587/__pycache__/serializer.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f28d56c856450548943ae8dc1174ceb525ad42d4 GIT binary patch literal 1233 zcmbtU&2G~`5Z?8F(>N)CL*c|V93p`Ptx$zpg$RLYgjBd#mR5^*BTVhM?Air-Eicp8 z;kZ{$TzCLZ%s8%+G%c!>m3Fi<o~_J!PhJsW3+D$Bj-;RMb31at;tCHeUSn~=;)?(*L1Xd6#u4eaegh`yQ?se1 zN_m!^Nu@!hj}mk&E*q46*!lqoNg^spWC1J{7QkBPR%8nsARQA9xl(Ca9MzC3K=cym z-U5(>s0EE&VF84F)?0!Y9Lka#pD~_gjE(!A2^gF5Try@_jOB%>GCa2#`%>|&@pKxD zVUeFGu8j-d$;^0@RAxe75Y>kFYw`EZ@Ok_J7|`*-M*;4K@AxT?UlvJ~%W0|O(YH}j zaPr+a80;oMYb;zq9jZET7+*Nb!v}p70SYwF zgP5H{wBbeU2@UN42(`XKUM9HwR$&qfxwtk> z%)bZw3Q?+i(}gW?+`$VCFQ~7f{+=7t%nBQ{e+)N0v zx4l3J>f^p|I!fx2O%#mC*FqgDD)m*5!!SQaWZD(ihqE*;S{o~5b?U=nP6`= Sb}z80HTHAc3ap;r^Zx;I@9bd! literal 0 HcmV?d00001 diff --git a/checkout_72186587/__pycache__/urls.cpython-39.pyc b/checkout_72186587/__pycache__/urls.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..00bcadd3a12458ba1410995f204722b22e60017a GIT binary patch literal 545 zcmZXQ&1xGl5XYt6_3qkh7oXZwp;!0d&_X^aA;iR{q=!)2 z`yhQKU3*Vlp05tVF&?)>BZ;J%RFu&w zVi64->9|T*vhicxIVX^;2}>cp$z%e#?8x+YOv#2b=*s*VccCY{Tc)xH5oQ%@x{el< z^=0v$jQaQ3m5d^vEO~S7GgS-SN*GZ;n8KX5y7^|>1}p~XdzPJWYgJ=>CLSFO=U3c8 z%`5Qv#5PK_+OV8&J>OOJ+|25gGQT>)wsPleH1LJI;q}6dTdSSLKOr_o<6m2F&E?!; ztvh3H$9B`%*#s}y8*vTd79*GYA3q%I?H=rpR|@W&Pao5KZegJuN@cyR%E?l(;z?70 z{^^q#B%g%#zCeqkqs}kC`x4 m1y(@$LR%SXkC#7vepngVYB&lLx=?sX`!r8dIt)90_5T6J-<(wd literal 0 HcmV?d00001 diff --git a/checkout_72186587/__pycache__/views.cpython-39.pyc b/checkout_72186587/__pycache__/views.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e735be90dc0c03d9c1432f44801c5e17cbdfc20c GIT binary patch literal 3455 zcmcIn-H+Qu5ck@Sj@#yfqDl*)=9?o?zK*xI2~`U z?J4(keeEmH?PH$#3-~wo6$z>T0#D4Ws14$zHY z;!3ybRZ%Z5;*gM7dKxw7drP)Oa0x>f@ee>}l|2>{%Z7 zGHFBPQU9P7^* z8p00t5sKDrA^qf5M}+tT{`s@#LwZl~vhd~_w)6%HVR(!ip2-wuJ@zRM6>xtnV`0gEnP(+jShQa zJ~a+ZX$|#TADai3w1-xwbjY@hk+r#vVc6ZE_pt4##@Oz9((OZ#s&W=us;nT6Ree0V zB>({g7ws#X2Qp~e%1%YR3-oT!4KwFbRZI2EXg}Zyj0|`MhyU7G|8nO?97uPr-{O&o zSAPihf}I;lIOvL=Om{XOY=lX-D2CK3f+h3mIvPR=G;7}r{X>iV>B8?&IFwP#c19ND0OgJ+%pIA=~W=NZx+=>`M zgkYItutfGx= zpf#bEu7`4f`5^X<-1%4uX?TqUIjxfgZ=g1s4;|jY-U+F<<`dT#*Asux$E6_N#mQ+6 zg@FldA_kPi{Zj=TX6GM4W0J|sXk!r?hvo!{wFwfYX6h6PD?aT~s18f>+U6v068C!?=yTgmMk1bWCuLB6;3&hc{_- znn9gB%CzS7TqRy9I{dGtn2O8n0zNc!A=Zl(PUG;%E|ewhCzaqM)fYa;-i5Fd9lynv z!D`W-v46biWnOiW@goOlrNbJDPf5(tdWyo7$Fxs=g-yR8<1tX*3u18Xo8E4+(c6n& z9EB@UZnD7PD!u0)`D@c-3o#~?wsHu@2aQ(I@0ZA3+64YPcYh{t=eT=p#^V=3UO11h zIm*>9$mIn`99=qpA0)I?w}XSB#Bd? zimH})C+OWy*6v8z*Jm%)9QUMm5|H6Qra;FJ)xeX!^mhR_g8K>F1#(gEKI-J`$XfnM zkR9);`3V<~d32ak<)85LVGEB#v;pXq0_5DHNR)de+itGX7ez`3t{R^A@;^NLl~&HK GocJ5r-l@s} literal 0 HcmV?d00001 diff --git a/checkout_72186587/admin.py b/checkout_72186587/admin.py new file mode 100644 index 0000000..4c6dfd2 --- /dev/null +++ b/checkout_72186587/admin.py @@ -0,0 +1,8 @@ +from django.contrib import admin +from checkout_72186587.models import * + + +# Register your models here. +admin.site.register(CarritoCompras) +admin.site.register(Articulo) +admin.site.register(infoEnvio) \ No newline at end of file diff --git a/checkout_72186587/apps.py b/checkout_72186587/apps.py new file mode 100644 index 0000000..7dc4556 --- /dev/null +++ b/checkout_72186587/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class Checkout72186587Config(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'checkout_72186587' diff --git a/checkout_72186587/migrations/0001_initial.py b/checkout_72186587/migrations/0001_initial.py new file mode 100644 index 0000000..aaaf1bd --- /dev/null +++ b/checkout_72186587/migrations/0001_initial.py @@ -0,0 +1,49 @@ +# Generated by Django 3.2.7 on 2021-09-20 20:48 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ('Productos', '0002_auto_20210916_1521'), + ] + + operations = [ + migrations.CreateModel( + name='CarritoCompras', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('usuario', models.CharField(max_length=200)), + ('fecha', models.DateField()), + ('dcto', models.FloatField(default=0)), + ('cantMinima', models.IntegerField()), + ('pagado', models.BooleanField()), + ], + ), + migrations.CreateModel( + name='infoEnvio', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('nombre', models.CharField(max_length=200)), + ('apellido', models.CharField(max_length=200)), + ('direccion', models.CharField(max_length=300)), + ('paais', models.CharField(max_length=300)), + ('departamento', models.CharField(max_length=300)), + ('ciudad', models.CharField(max_length=300)), + ('carrito', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='checkout_72186587.carritocompras')), + ], + ), + migrations.CreateModel( + name='Articulo', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('cantidad', models.IntegerField()), + ('carrito', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='checkout_72186587.carritocompras')), + ('producto', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='Productos.producto')), + ], + ), + ] diff --git a/checkout_72186587/migrations/0002_alter_carritocompras_fecha.py b/checkout_72186587/migrations/0002_alter_carritocompras_fecha.py new file mode 100644 index 0000000..468ea60 --- /dev/null +++ b/checkout_72186587/migrations/0002_alter_carritocompras_fecha.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.7 on 2021-09-21 20:27 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('checkout_72186587', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='carritocompras', + name='fecha', + field=models.DateTimeField(auto_now_add=True), + ), + ] diff --git a/checkout_72186587/migrations/0003_auto_20210923_1305.py b/checkout_72186587/migrations/0003_auto_20210923_1305.py new file mode 100644 index 0000000..31d28ef --- /dev/null +++ b/checkout_72186587/migrations/0003_auto_20210923_1305.py @@ -0,0 +1,23 @@ +# Generated by Django 3.2.7 on 2021-09-23 18:05 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('checkout_72186587', '0002_alter_carritocompras_fecha'), + ] + + operations = [ + migrations.AlterField( + model_name='carritocompras', + name='cantMinima', + field=models.IntegerField(default=0), + ), + migrations.AlterField( + model_name='carritocompras', + name='pagado', + field=models.BooleanField(default=False), + ), + ] diff --git a/checkout_72186587/migrations/__init__.py b/checkout_72186587/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/checkout_72186587/migrations/__pycache__/0001_initial.cpython-39.pyc b/checkout_72186587/migrations/__pycache__/0001_initial.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..82a716ae194050a407721e125bf2468edf718465 GIT binary patch literal 1413 zcmZ`(&2HO95GGfYNKusRIBw$f*X>O}AxHueJ3&!ck?b}o90W*<0)zl!#aYp-kX&_1 z8nLhG)$hJN=^v#6$#MGF?HQ)NefErle8(=YWQGZeM>p-3w-TF)X#^@5| zCOncf=OWEiBN4#j>~W~yy*aiJ9O2A-(=eFfn_&0^Ouq&sGJT8H7Y%(1vlkAS_|%~R z_LVg!;2_t8Cb(B7q877%aDOz=@{n&q8#*Pwg}hht+i1156*b_-6)8RMyw&r~4bQt9 z=$#VXTAg}(1MO{~I~(X-L>;!Z*k0I+8;c!y58l5b7>jcq%Li|b<-_av|HlJ-^e@l* zE6p|m|rsGoijNT84FUH zFl856K_wS2f5CcpP3#Z)JcwBuxrZ9adRi?uTbAd?t!KI2aBN@7+B-=&fFbl^|M1kp|ePLmrK=o+nxx)f}HuxiTkMugY{!VnOrD_8z4N6@37&gn*Q7L0d#*OIroOB3N%iV3_8dZWEKtI+OTwt+#y% z?|h}X^~zTeq@GEYRy<)o=KSQG^L?Y|^OTVtEMMraoU!l0xoMJ|B^`I402uIwwLIr- zlt-LBXApt-!ayLe#b=QVkgr)5|DalyMLun-mDPP^I_D>?0c>0uQa5cv&XSIMK!7ag z!14(Aisu4l9ftupsW(7Ee8FLIAt;l;28~Jl^yT0FH0*YHj^$f3^lEo!d+*W1yZ-odO@6D?)>geKO}n<*`S=XWbA6I=Khr~RRA)XY4Uh@iJM5}D-J+Kx#%C2a zaGXtjqQC5fSt0e$%6U7P?pw0`o)N<4M)x z81t!F;~%NMF?)w9M)+ADJTBfiw654c1^WBmEB#&R%nyD8ttJlMQbjp2KYtBqF+$vE&hb=`VRXW{)%Jr%>x|WwzjSWHz!H Ylh<2c-R@EspFFwJ=xHGBf)tzLHw%la2LJ#7 literal 0 HcmV?d00001 diff --git a/checkout_72186587/migrations/__pycache__/0003_auto_20210923_1305.cpython-39.pyc b/checkout_72186587/migrations/__pycache__/0003_auto_20210923_1305.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..45cd0ab6a400a953c79bec65ffb7e2c5b4f16475 GIT binary patch literal 698 zcmZWnPixdb6rV}5|H4-EqToeO!d^;tm)a^KZM7A_7D2p(z%ZNlHqAE4#F<3&tk-@J zKZajpuAaPkE{MKKyL81D-s8RBym^0q6S=h&GLm24-^kcw?1u|BC7@uR)I1^s40ypx z9`n+RJCFzxc5a!8;-hXy(Nu7*X@kj!xEHX@ooJ8K&o| zZN%$(V!No)H-ies>)hRBbJz+Nqg&G)P||7nv=ZBOQ|_cIpKBy zxRhEhZ{iq76FRTjp4R?bkAsppH*zrlIH(gs`CybfGPf{IL)pT3NVDE&{Bv z0<6*;ji$$7Hau`s9=medcfj~{)nIlF+3}%L1J*dz*h+4mFd^RNLbi<(vuHMrp3LTAI*)d? z>(AQ#CVf(KpUlwr{sg^%d-R3BH@wR(?{pH_5v*jDscl$vi+0O(hc|OydH1NE9X`9F N?78E>IA(79e*vb0y^jC@ literal 0 HcmV?d00001 diff --git a/checkout_72186587/migrations/__pycache__/__init__.cpython-39.pyc b/checkout_72186587/migrations/__pycache__/__init__.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..63323a048921c5cb6c00b19a7076d6d292469ab6 GIT binary patch literal 174 zcmYe~<>g`kf9j7xrUX>Mv>NpXy8g==ztZf convertir en diccionarios Python +# los objetos CRUD + +from rest_framework import serializers + +from checkout_72186587.models import * + +class CarritoSerial(serializers.ModelSerializer): + class Meta: + model = CarritoCompras + fields = '__all__' + #fields = ["nombre", "foto"] + + +class ArticuloSerial(serializers.ModelSerializer): + class Meta: + model = Articulo + fields = '__all__' + #fields = ["nombre", "precio", "descripcion", "marca", "ref", "tipoEl"] + + +class InfoSerial(serializers.ModelSerializer): + class Meta: + model = infoEnvio + fields = '__all__' + \ No newline at end of file diff --git a/checkout_72186587/tests.py b/checkout_72186587/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/checkout_72186587/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/checkout_72186587/urls.py b/checkout_72186587/urls.py new file mode 100644 index 0000000..6fb5b7e --- /dev/null +++ b/checkout_72186587/urls.py @@ -0,0 +1,18 @@ +#Especificamos las direcciones de las API's + +from django.urls import path, include +from rest_framework.routers import DefaultRouter +from checkout_72186587.views import * + +#CarritoComprasAPI, ArticuloAPI, infoEnvioAPI + +router = DefaultRouter() +router.register('Carrito', CarritoApi, basename="carrito") +router.register('Articulo', ArticuloApi, basename="articulo") +router.register('infoEnvio', InfoEnvioApi, basename="infoEnvio") + +urlpatterns = [ + path('crud/', include(router.urls)) +] + +#localhost:8000/.../api/crud/tipos \ No newline at end of file diff --git a/checkout_72186587/views.py b/checkout_72186587/views.py new file mode 100644 index 0000000..1da8660 --- /dev/null +++ b/checkout_72186587/views.py @@ -0,0 +1,101 @@ +from functools import partial +from django.http import request +from django.shortcuts import render +from rest_framework import viewsets +from rest_framework import response +from rest_framework.response import Response +from .serializer import * +from django.shortcuts import get_object_or_404 + + +# Create your views here. + +class CarritoApi(viewsets.ViewSet): + def list(self, request): + carritos = CarritoCompras.objects.all() + serializador = CarritoSerial(carritos, many=True) + return Response(serializador.data) + + def create(self, request): + # nuevoCarrito = CarritoCompras.objects.create(usuario=request.data["usuario"]) + serializador = CarritoSerial(data=request.data) + if serializador.is_valid: + serializador.save() + return Response({"Exito":True}) + return Response(serializador.errors) + + def retrieve(self, request, pk=None): + #obtner un solo registro de la base de datos + #pk es primari key + #carrito = CarritoCompras.objects.get(id=pk) + carrito = get_object_or_404(CarritoCompras, pk=pk) + serializador = CarritoSerial(carrito) + return Response(serializador.data) + + def partial_update(self, request, pk=None): + # se actualización parcial con el PATCH + carrito = get_object_or_404(CarritoCompras, pk=pk) + carritoS = CarritoSerial(carrito, request.data, partial=True) + if carritoS.is_valid(): + carritoS.save + return Response("Actualizado") + return Response(carritoS.errors) + + + def update(self, request, pk=None): + # se actualización parcial con el PUT + carrito = get_object_or_404(CarritoCompras, pk=pk) + carritoS = CarritoSerial(carrito, request.data) + if carritoS.is_valid(): + carritoS.save + return Response("Actualizado") + return Response(carritoS.errors) + + def destroy(self, request, pk=None): + carrito = CarritoCompras.objects.get(id = pk) + carrito.delete() + return response("Objeto borrado", True) + + + +class ArticuloApi(viewsets.ViewSet): + def list(self, request): + articulos = Articulo.objects.all() + serializador = ArticuloSerial(articulos, many=True) + return Response(serializador.data) + + def create(self, request): + # nuevoCarrito = CarritoCompras.objects.create(usuario=request.data["usuario"]) + serializador = ArticuloSerial(data=request.data) + if serializador.is_valid: + serializador.save() + return Response({"Exito":True}) + return Response(serializador.errors) + + def retrieve(self, request, pk=None): + #obtner un solo registro de la base de datos + #pk es primari key + articulos = get_object_or_404(CarritoCompras, pk=pk) + serializador = ArticuloSerial() + return Response(pk) + +class InfoEnvioApi(viewsets.ViewSet): + def list(self, request): + info = infoEnvio.objects.all() + serializador = InfoSerial(info, many=True) + return Response(serializador.data) + + def create(self, request): + # nuevoCarrito = CarritoCompras.objects.create(usuario=request.data["usuario"]) + serializador = InfoSerial(data=request.data) + if serializador.is_valid: + serializador.save() + return Response({"Exito":True}) + return Response(serializador.errors) + + def retrieve(self, request, pk=None): + #obtner un solo registro de la base de datos + #pk es primari key + info = get_object_or_404(CarritoCompras, pk=pk) + serializador = ArticuloSerial() + return Response(pk) \ No newline at end of file diff --git a/db.sqlite3 b/db.sqlite3 index 65d1360ab65e3341196663233d13fa26c78092c7..a87b7c48da230679c95e52a824fe6211a5168212 100644 GIT binary patch delta 6229 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 delta 704 zcmXw$ZAep57{|{!cXxMpZs+lCY?d$Wj)vss=H1M;6jQ-o3@k(aR51Erx(}iFQlKB4 zng#ixr@-GcZ`kUJlPWhv#|ze>l(YB$Kw} zWASpH6hH_S{@a+{Cq|1)T>%uTn&(-DVUwN61)H|So$f)9PMKI#&|FuDgnOiqJ*WWG=)`NzXIoW; z$vQT|b(_9=+s&CVoknz;Deh6rUqX3a(?;MXCj> z@LZ5VmGBQ_&)A!6PqNmt{8l0sTZYZ^<{M@QzsUPcpG^&9lu7m@WQ3~m5LTbr3$?sj z>@f{&J17|5K2k(9e=QCf$^qO=NO+$%(@&JF?4hDcA;;sv=e_DOxu&^$Nxk}(+o|T7 zK)cdQPN_dRrv`n58pDTh|4qt63c)6!!*3na#@GM= From 3edeb4f32bc1928f15fbc6942c3a3266d1b77010 Mon Sep 17 00:00:00 2001 From: Abdiel Pava Date: Thu, 23 Sep 2021 14:41:03 -0500 Subject: [PATCH 2/2] =?UTF-8?q?Fixes=20#35=20Atualizaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db.sqlite3 | Bin 196608 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 db.sqlite3 diff --git a/db.sqlite3 b/db.sqlite3 deleted file mode 100644 index a87b7c48da230679c95e52a824fe6211a5168212..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 196608 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