From c4bd4682c8541113f51055e3e69f7183b4506672 Mon Sep 17 00:00:00 2001 From: Ebrahim Al Aghbari Date: Thu, 29 Aug 2024 23:09:09 +0100 Subject: [PATCH 01/18] Add GIFs/PNG for NgbModuleOptions --- .../ui/angular/images/animation-false.gif | Bin 0 -> 85253 bytes .../ui/angular/images/animation-true.gif | Bin 0 -> 185646 bytes .../ui/angular/images/fullscreen-true.png | Bin 0 -> 8560 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 docs/en/framework/ui/angular/images/animation-false.gif create mode 100644 docs/en/framework/ui/angular/images/animation-true.gif create mode 100644 docs/en/framework/ui/angular/images/fullscreen-true.png diff --git a/docs/en/framework/ui/angular/images/animation-false.gif b/docs/en/framework/ui/angular/images/animation-false.gif new file mode 100644 index 0000000000000000000000000000000000000000..e6113eccbaf17d6a4ec110fe221f2dca59d50d60 GIT binary patch literal 85253 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 z zb?c>?qCY8Ew-oyJd*Wu8Y*nk3*}ZVH={q|o{G(R7?l&U#ZU$e z_4bBhiP0S`-?M2XWn<~%C%b^QmYGtm#&W~aT?5S7M^tQM#n! zexH46rxZtp3+}(9IiKs(60b|G+P8UdK0g*K-cTa=&0hC>VRlTssk!Q#v-|ntXG#fl zzux` z)+}ubKJ^}XF65rJh~1JbX&HMx_B->((pR~0?}_(99!RFPZB_2psqnGG0^#MICr^E5 za)mrgP1|;jzO=L@c(=V_qvQUXfP<2b^X=#FPglQOonW3{{doQ8^7#5XJpKiLdi);904I!iPvrHU#P&U8 zEU#84!4bA&^!wklrYe!7Gq4Esz-<$T}Cub`p4pA&65lh|4I5$18|0El25TYa*qGA-H>J_4%7NUs`(V7d< zJ_*q=3N8om=zE14rG=WH|F1di2Er>*uz)T|hOw(@^iF)*lB}(kr1>F5;Z}-4S(5XIl-E0n z#!|^nq$x(csa`wDKIw^`#>wWVsbFK^L>0a~c_I4Sfw=yE7 zGEAhX5q7E6_tIn3(q9f{=i~%r)LzBQV&TbzWb2LLz-p5nSN4JL^KTwuKT(Av-PlBc(Clci=9-TpqUEE#8-UJs&FIxj)rn ze()wxxaI&BxU(PRf_CAT^Eoq;IS~8YKXy5LJ4pYah?}Q5&K$Xi#yJeqxo6(FzXx+^ zGUBPJkrb`^aD{vzV;*Zp{+b$;pAUH_BX65D?@d?Ejq>~(CV7(5NRie&f!4g+_60OQ z^TE=E@;1mvk;oA=QfLS%bB27tn8yMs-0_m3Z!OR)&tqOFcxFw(OU}-J##kZEao|U>YmdQqzFq;%dGZqFgmS*_mr}`knhVm0K%086mIG^S5xI`q( z#j}ypRGd*)smD{0#$WPO;8iOK>?%MXD!^qG#H1C}gB4Ue74>|Tjp~)n_LVJ>m6-C% zwxM{=!OG6v%34Sj4R2M4dKFt_)m0g^#=fe1x2hLX-OpD&s9rs6Up*?FFdbPvSzi5V zsQRN1)Gs6Y+G!V09etEhbJogm(pqzMRugcq1|WkXG({2l{^PXUi}16*R!GuQVNf@i zqAq>PI~i)N0&8h7wIu^36AZb8>ILP}b)2SkcYVuOTdJ5bb@|)T4&b^7o>DHEdQsDQ zeLUd@Yd(|!raq@MhOr{zKRfMIGaJ-R8+NvfWX~Itwrg*m)@ztH8u&IE`8E;`m1!?F z#(3o*?Q7rYgo>Ls*~rufwl-Q|n$qTSB5gzU3qvhjLxH;uj=s&$KjmaRfbyg0U%hJf zVnSDM)f%Zo*R65s8Qjba_-u#bRsRUMuRnwT=nXAcJW##h`sLG3Q)#8m;XZ`+E-POw*R0D0H7M zb|4cwl!=Ws#g1aI!;9D{2kbZo6RK?xeu7yTws+ZWogr%*$1}Bm$!uL8MsI0gD}1qQ z8twZsZBeFeW#{sIn6|@nySJ@`y~FJjn2w9Zj&rh(D<<3^hS1)$gGkn1zmU{Iq$L&u z+++e$Mx&|y&@|+oeWslZew{xnI?wj7RM>XRIWBw;{2kat?AMjq1j~To=>1y0lHpj$ zyI7Yxclo=7FFHlDI+8VT`g0hbi*7`57wBHQkl*$7wEMANx0GzRdRE8x;dV~h4w!7O zRtj#%p~uLq2hWd_y66!m?*Nc@?=ltXne}NJG=OTmEM$AW`Svzm zl{-MS{D!RkMz+ihYh-)6may**!6fp-(<7rFqJUqrS~K9SJ9`6|sPTclQTV}NpGH@& z-xy)G_8@a#-Tv5bS?G`>bSSIU0zSkJ@6dn`?d*-Am|NP(iDNY;cTFdOay?{#QO+!M zDO6rM8r@S_4_=;f2i?nvO~M0+{rsTs4oAu}CmH>rKV_h?@Ya~&X|%u?`@uLU zewyUo6hBn5OrRrwZ%W7M$w)-Uia^_}X8(P$sZykpl-wktd{>4xF>#($+1?oF8N_7* zJ;pr65d*Yk8Hp%t<-U}~m_m}^Kz>uv1yEg>aR`tZM9C z1Hk(U)L4$6Z2}#OB;DQ{fop?-QM2ONbMbA2#!gW6jZutdPe}Fx>8rU+vl(WVj%yDe znF#+ImQhG8p={eQC~$WC;#xa5*>WLI9}4t^j`6@%$wVaFr)PFAaL;5X%2}2lcytVt zw-EY0u8W5F!iOJaKmCMf9&Ks^EL9QvIgY-G0piJtfo*^--G0#O2*ey}=Kt8@U{ou+ z_XYp*ncT8V9WJt}9dAZ7s)6%)FqNS_AJqm>zyA7~L*W1+%F0%(+?2nFM3X-h8#4|Y zT?W^F8kHL&6qq}gTf699;QjWQ)O8h{N33g&URg$WSAB|e7$v+ISEn7twap}o_eo&aCEE_CBL7KE4@M#tP~}0%uZ&7eDwz`VpN!WB%}_pTr@mNH zVcqJoT6@qo0+R2VG@D@)87{{VatciRX8!72Irb)NnCxIH(tnGU1xWo3%po@w!~c0k zVEB&ER#>d$4&G>B2HQeNupKmAkG{fw5-C z9O%O@P`=0;t2qeHjs3`&J{->(V1`qq(ZB=l6~I>90?b@^;mHXawD}ATZg>kiiLdW!if6GR9JSedWl?8y0fv zGkc$EsO#0u?5WGN8|*$-zgnFAW{P&*94j*Y^xYim?H{HLnf>t`XPGUYg@%GfgG=u- zhV0tEoWjKuFcqrn|9CZ$F7{??Y5w=?i9F>vE*7^so#;~i5}US+z3$5L@0Pko;{13X zJ{63L^YWtSd|go}6}QFGiR;E-vheEw@4Asr5O4m=BK0w;;iq@+zx2~~bD0jvjN^X( z`NI2f=VQ(5+q%4S>64h-W~DgtGQ&wqL_HST7GSLGVA&s7kd~!~dT6^tb z;`cjYs24m64=hk)MB-Wx+i3d&iAzbaytDcm_7 z*iJMLe?Ddlrgc-j)9;QdqchAx(79VPkf_jx>o!SWyx12_!w;! zCeOoXsvK2&7^S<7hdP=MK6>aj@_dWe)mEhQ)YH)r`=h6)tM93AVCwlt-^eQ2)4;@` z@sEL-`$tbh3*SF~3@wA{-Wt7(5<4=oPSk&EY?JAEWNcfI{MN+2qVdSYvHs&*Q)kSd zBU6`dx_4%7!(zu~9@F~o%-=409-DiuC%?1s*=szu@caGo-SdF+KgZAEAbKy$ATse2 z%Mcm^uNPrVZ%jO1@Rc^Um+*2^kZ=IF!)tI9*2UIt`uVdY?__<@lw1KZv)8gB6C-i!XuXF2O)44PD_pI-m_Vc6jH#pEu zKbI~ti3^t=8bd$VKBjjUt^*vYer`kj%@=MX4?g+1kI5WgxKAkF^!J$3kht`i(KYn< zoHc!S={aYW>i>4Zq51OdlKUtBcb|QaFW;>M-wg0ti;}qV+DJ4E@ZQRNcjdiZkQ(5# zThV;wvtR!y!1p`m_{#U7`{sMUU&9i3zr$(6_x?wV@9_R7>#6Sp&i0z|0T;hNy?=jo zevE$)Akv0|I4ub%ykLY}+JR)&mLQfB7>SB@5KW;aSkOzJ+(tW?X~U9O?gTFn4bu+c z;Cw;)#7lv;SUZ&8`URQ!i2_5PcG!c$7Zgrjip*Qu;W8U9sQgb9*@&J+D004}j`33B zL|ULHTt4CW#O=A(N>&Rw?@5GM2nxrI9OXT zEuW}J_C1SrFSKI$=Ji;1>sg%dhSlxMlgBV39YipvH9Lj3suGt@e3Z2{2g|9ds)|lR zVxje2L2orp8=b_=4Qp<>Q#I`{oumTJSG-TW)%A*Xk}IrV@tdEj8};d=)EB-Ibn@0P z+tNwJY`hZoKh>}#(oO5;w7D1Kt!d4rn?7u9^C0_F(^f?{W4h2rtjha|Bi=?gb8*8) zqV4pFOPFrfI_GPtQEx4eV%_XL>(?^Nr&?Zpx;eiKulHBHpZaa-=ALg{?}(f}g%jx^ zL3eHCDSWg;?$AU#iPBQt%$S&xqs=c!+*T6wnY210EhuK1R*^dsJoVG_P`_cPMm#&g zVlY#fO18uFth_s=+Qa=`vfY-giEc^)ZAlttM~nB9ZmyPAiTve`_6I&GB&&Xz#w&Z> z>@&Sm75(x}-5ovR*LoFtLNLMwc&m1 z=~=@sV-)ByKf$9gCNnh4%@$|f?{4$6W?#!GS|^nkJ<1%!_bgH!=Ra1@p%=|j{x`7} zG(Wsr3@m=zQ?%{$F8Itlh#j}5+W$j+K>F-+JRb#)KxF|=>L?1j zZPZC-;}XnrVM+4XsEel9B~;Mw1^H{EZl*1l@CVbTR6hhd+25wWQ1ug~$z|x|6B3Df zw!cQ#oo36HQaj>eYQ_B3s9$EQR_e`?RnjHH09V0J#53`i9PR?WYIvKv+wn`*(So;z zblcYx%Ve+bA-t`WXWjbimNujOZ;d$ceoq_qvk@(62{AKp@2y<22~oQ>#-8{)Oa914 zhNg1Nd#nD&&!yM!+FKLkG>1qUE*nJ}^2rZ24Uo_!+u(1vri_FR3&93<8m}`#-p_iJ z$X(iLhc86tr=+Qxz3J`frp#Zf+Ghj;>x+fE5oYvC&Gb}=kvcJn@}a@)zxN;&p+2THFftoy*cJzT%Em%9?TYY z&t-bPZqVE|wd`!j4gP$T@CUnk*U2}PZ2mOB@cP5P?~KnhIj2A2X}vIa@mOVA{e0)7 zYuwW%JW*qn`jbI7??a)8=gej_pU{m0pMSmq|I2ms|7-957uVj|O;ZB)af+!HZaa6= zWFt;DDPO$3{yntHH!jYw&bY;$NR-P7{?vYgoy||DUvX|C6pGk1_iH_q2DP6Zy)UA9C_n_kZWu2iUHK?xVku zobv&ea?XE<3lUr#JUC+o{v4?1@%xwdF0zVk;^&m&o687xz4!lBd-tfs|7?G{WKh1p zS-8XR2RAML;-sKth%ZCn`NZWZnWeYUYnf|94V*;aDgMR)?9WV1Ae55|e@C_Rrz|Rn zVPg#VV4!oK78T4^IY#vDX4eh+$8@)u2hK?96lhwZ5)~`icnej?0m###+lXF^qmqf@ydPsvb z3$00b5wg|PfDxE73!U0vkH`%`SdZ0R3GXxw8y&Ve5n}GgQVdVU6WG!K03LwakilAS z;=Slsj08|}!v!5-RMMsZ0W8Y&tWKy{VBqe1wUK5*nmCNW|2^6}{QtAAqyHtfceAZW z*N3N7j;}Qq{|SPjN2{FQ4KIE^J8H&JRJ(+0EUhsfqX(W;yQK~jMfAk z4}bX^1Orf_;KZ6MK&BHMi54p8=Ew?>%tYP#W02nlNed0^gZcjqpXd1 zthsh0^Q4DIt2WYbWQ`v4_wckf`nBddxkBw-pN-2&nWEmxf4GY&)%&}tXI(=_nB#G7jtu~ z+SB{p`l-wHPetI9{g+JVa|2pUb*ZEKHZte)6R}MVe}iDA=L>UVO-;?C-<*BV7gs2o z(fv=pyJem)ZEH2Rej5G$7IVIQ5ZjFX`s9bt;`!&3vF7&U(H{Zl=U)I+XdJQDK@ii$ z%HJT^&9Q?pnTu6u9J+^F>u03t#Tvsnx=&*4XRPnVIvZ8Xz+8w5MQ_zI(v_6`^H$ltHoRyPjiTZ=f%N7d~pK9io# z6G|%4W#Q53Xq{|yrmb-I_k2z@MAgRnHd8ZU|5Yw2|8B%l!+40N)4Owxm8-`sdm-Ol zn=zk{$Bx_2FMq(P{76B-f8)70{zslm>i-)i-il=rm+mmyJ0x4PuuM>BAl89t2KmC$ znX)I8tT0>QBy1fR zc0Us!?eQ8BGvIZI{MJ}=Z>;Xfu`gJl~#*2$B= zQIZ>MX+WTHbRyAhtLyS7L04GG3ITBsF9M`2Ym6giWIk{Z<<@4yk$~aDFn0=VFI)(8 z?noX>2oWVf698cFm>xSecEBOQ3Jx%M@M44j`M~5T17$IkKx9FW5c4kt`QwR(5)k$IKHR(=qq)e8Dl|pS`+?Lqu$#fyXK*JlYLY_abjnQWGnFk0xz;CQiDR9c``JT4LaRM0`4$@= zmhlYOFeN%IekDUuj?gA z_@|3sV~?pW562CK+y2Zvukk-xvifm(^yMAZ)yZ1w?W@y`f;RzY`!zq>&kmYznp`)vHg2ppwjTDB9RPQ9M~0I4f9)bV#`hmk!#MW^d;SY*Tidcb%QSLgoun1*%s=!4{?HZ zgUGdsoS}8(0Rw^Is9refM9^z07@QgR0v|$lu_Z@mt@u6vUMLM50ZIiu&Xr_?KW)G7 z4OH#s;-2UtqRnH9p*4~C1%E0oGC{KU0$1Z@J)H2iSPD?u$7}R+SpVeLf6v704;gu$ zqhRA^jiXyaN)W=VpyL3daTVyK{D~{@tS6Y-LL^+m8nYy41#nCQk;5{WpsZ}3vOrodP4)Q!WCLU6fTP5J zG4ZCA!|e}8)Fd$Xa0Cpv?%NY0;kn18W_86Md}oy0Y@QiJP{>Z@hrZ=}IY2;+1W>u!DiZRt0e1m2HlQ?QpN@-Js|E7rIvYD$1sd(r zvq~sHPG_`k7BG0BJ_oEWY%{-z5nmwxLjJ zQOCd%I7pUmiI`H;lIW8UmHVa5w6IZg2Q6QD$}&J0FiD~BYWWg)GC$JQ4X{~~XHty{ z=9F5odFHeNz~NLR(1FA;!G2bd`OC&ind{SO=wM6BQ86r|9Fi8)G52qkJt?cbIp zx2qs}mL}|N={PWvNYEDaD}X;b5x@!`P`ZyKdF8(?&j6@iUwJ*0YE8*S1_cn10{|Rw zI1vvV9`<4AxrWkQF=5x6o8vr+93*oDkzU^%ea(b>({cIzPyV$e!G9?h)*XeKJ!xXQ z!;|(#wmEOWi#_Nax=XbfTU zBt?Re$BXm;Do>@FW=L`hs77&SZ%t_DuD}%nlHVP!y1=E?;xHEC^nY6aHcF3w&fHz& z4w(xBylV}<-7^9BGBb3iAuy2OP^#5+n<6nN0kc7;c#Ji@`r9bADf@mLz9NvnfbM2k z0Oxkga6Tkd^8-R%M4hpLfUF5JOuVN%;@e?y zaX#*uF-~b8@PXKUyQh~ePc4uCHcG#JK3`>fk0surz^A?YENhx>ar!8O&97Y#v0Bx3 zcJL$WTk})=+2Z@D<+zS34l(@s`Lz$-NK5S)tA>z1gqS4oFV9s9=b3{;j35H~ffX)+w-|!?>H=B+HcEZV zQMMTqaM=_1HP6Lq1QEWgDZ&%1GH_eeEBLxm`mEWuQX7)w0)HeK3X6b08-Od!>2&CY zJe~`kj}OtjZj>6im0QAN;GsLo#{X)RR>C1g+Cdq}P~q*+x01o1B*Ly6rE6On+@+*% z=EBA{G>B}2lx+gvrA1s4g!%n#l$O48jey5YXrzOKCJVz#C*TSUnr5XDIi-xzClS{? z*S8`F5(&St9TNTa14jv|AqhnD(}!His3Pjf9#ObGgJwoi6vyi)m;ud>Qq49aJDH}i z=-H?zjgf`uXjm}>qDtD96dY;uWHT(NRyAslfvHJVvu7@oN%CSqf(UDEI;gXu2+d<#a zh#%lM$Uo#4WjdV3Hjt)1j=@g$5^W4THDhYsNm#fIuH&SMlKAw*>pH3IeB#5?MA)q)1*s$@<0KXDB-QjJ^_C>f`6R8=B<)+t zI#S7c#>oadi7p-qrOA+}6pJaN=YpHbA3Y$S4uHmNDFaE6LKnh^6T}&CljH&0GB#41 zon*GO;N()sdl4}GK??6_>OMG*+$;7;5&3;61V@`nh=$}@k}JYf*`(sr50YtMirlk~ zR*9l&!46sT={X-9GHzw$^Jb(OXT*AB6r^Y5ou*d~rk9^)6sM=xeMqlK�QuXiU$j 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 literal 0 HcmV?d00001 diff --git a/docs/en/framework/ui/angular/images/animation-true.gif b/docs/en/framework/ui/angular/images/animation-true.gif new file mode 100644 index 0000000000000000000000000000000000000000..62bdb3f024bebc0b300cad9700712d36b12245a8 GIT binary patch literal 185646 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

L?5dT=l* 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%0D(<4jFot3YWhl!$F?FSLvD{oZJ}1l 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 bulOZuI{WHTsv1ySK!^4p+eh4c`trX3&=S$4 literal 0 HcmV?d00001 From 9648dededf7f5539db0a7209d6d35f04f8e6de8e Mon Sep 17 00:00:00 2001 From: Ebrahim Al Aghbari Date: Thu, 29 Aug 2024 23:09:52 +0100 Subject: [PATCH 02/18] Add examples of different NgbModalOptions --- docs/en/framework/ui/angular/modal.md | 52 +++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/docs/en/framework/ui/angular/modal.md b/docs/en/framework/ui/angular/modal.md index 977ba1903b..e128b21e8c 100644 --- a/docs/en/framework/ui/angular/modal.md +++ b/docs/en/framework/ui/angular/modal.md @@ -195,6 +195,58 @@ The modal with form looks like this: **`options`** is an input typed [NgbModalOptions](https://ng-bootstrap.github.io/#/components/modal/api#NgbModalOptions). It is configuration for the `ng-bootstrap` modal. +Example of options: + - `animation`: This is an NgbModalOption property of type *boolean*. It controls whether the modal opens and closes with an animation. By default, it is set to true, meaning that the modal will have a smooth transition when it opens and closes. Setting it to false will disable these animations. + + ```js + import {Component, ...} from '@angular/core'; +import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; + +@Component({ + selector: 'ngbd-modal-options', + ...}) + +export class NgbdModalOptions { + modalService = inject(NgbModal); + animationModal(content) { + this.modalService.open(content, { animation: true }); + } +} + + ``` + +       If `animation: false` : + +![Modal example result](./images/animation-false.gif) + + +       Otherwise, `animation: true` : + +![Modal example result](./images/animation-true.gif) + +- `fullscreen`: This is an NgbModalOption property of type *boolean or string*. When set to `true`, the element will expand to cover the entire screen, hiding all other interface elements. When set to `false`, the element remains in its regular size and position within the page. + +```js +import {Component, ...} from '@angular/core'; +import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; + +@Component({ + selector: 'ngbd-modal-options', + ...}) + +export class NgbdModalOptions { + modalService = inject(NgbModal); + fullscreenModal(content) { + this.modalService.open(content, { fullscreen: true }); + } +} + +``` + +       If `fullscreen: true`: + +![Modal example result](./images/fullscreen-true.png) + #### suppressUnsavedChangesWarning ```js From 4698af9ba11bbd01d515736e9326b03bbc9cdbdc Mon Sep 17 00:00:00 2001 From: masum-ulu Date: Tue, 17 Sep 2024 15:48:37 +0300 Subject: [PATCH 03/18] add: impersonation prop to env authConfig --- npm/ng-packs/packages/core/src/lib/models/environment.ts | 7 ++++++- .../packages/core/src/lib/services/environment.service.ts | 8 ++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/npm/ng-packs/packages/core/src/lib/models/environment.ts b/npm/ng-packs/packages/core/src/lib/models/environment.ts index c67d4a687e..069fb9bd7c 100644 --- a/npm/ng-packs/packages/core/src/lib/models/environment.ts +++ b/npm/ng-packs/packages/core/src/lib/models/environment.ts @@ -7,7 +7,7 @@ export interface Environment { hmr?: boolean; test?: boolean; localization?: { defaultResourceName?: string }; - oAuthConfig?: AuthConfig; + oAuthConfig?: AuthConfig & { impersonation?: Impersonation }; production: boolean; remoteEnv?: RemoteEnv; [key: string]: any; // eslint-disable-line @typescript-eslint/no-explicit-any @@ -38,3 +38,8 @@ export interface RemoteEnv { method?: string; headers?: ABP.Dictionary; } + +export interface Impersonation { + tenantImpersonation?: boolean; + userImpersonation?: boolean; +} diff --git a/npm/ng-packs/packages/core/src/lib/services/environment.service.ts b/npm/ng-packs/packages/core/src/lib/services/environment.service.ts index ca5d4d79ff..8272b17a7a 100644 --- a/npm/ng-packs/packages/core/src/lib/services/environment.service.ts +++ b/npm/ng-packs/packages/core/src/lib/services/environment.service.ts @@ -51,4 +51,12 @@ export class EnvironmentService { getIssuer$() { return this.store.sliceState(state => state?.oAuthConfig?.issuer).pipe(map(mapToIssuer)); } + + getImpersonation() { + return this.store.state?.oAuthConfig?.impersonation || {}; + } + + getImpersonation$() { + return this.store.sliceState(state => state?.oAuthConfig?.impersonation || {}); + } } From 66f34d7a1a1744d4ee4940d7232b1992bb5de15d Mon Sep 17 00:00:00 2001 From: maliming Date: Thu, 19 Sep 2024 10:23:17 +0800 Subject: [PATCH 04/18] Optimize the way to get `Map` method through reflection. Resolve #20820 --- .../Volo/Abp/ObjectMapping/DefaultObjectMapper.cs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs b/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs index 6a2ab27870..63617d2759 100644 --- a/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs +++ b/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs @@ -142,13 +142,20 @@ public class DefaultObjectMapper : IObjectMapper, ITransientDependency cacheKey, _ => { - return specificMapper + var method = specificMapper .GetType() - .GetMethods() - .First(x => + .GetMethods(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) + .FirstOrDefault(x => x.Name == nameof(IObjectMapper.Map) && x.GetParameters().Length == (destination == null ? 1 : 2) ); + + if (method == null) + { + throw new AbpException($"Could not find a method named '{nameof(IObjectMapper.Map)}' with {(destination == null ? "1" : "2")} parameters in the type '{mapperType}'."); + } + + return method; } ); From ce45a00718771bd3ecb53bfff2246edff76c3668 Mon Sep 17 00:00:00 2001 From: maliming Date: Thu, 19 Sep 2024 11:15:50 +0800 Subject: [PATCH 05/18] Add unit test. --- .../Abp/ObjectMapping/DefaultObjectMapper.cs | 35 ++++++++++++++----- ...apperModule_Specific_ObjectMapper_Tests.cs | 21 +++++++++++ .../MyEntityToMyEntityDto2Mapper.cs | 18 +++++++++- 3 files changed, 65 insertions(+), 9 deletions(-) diff --git a/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs b/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs index 63617d2759..e3577bee6e 100644 --- a/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs +++ b/framework/src/Volo.Abp.ObjectMapping/Volo/Abp/ObjectMapping/DefaultObjectMapper.cs @@ -142,20 +142,39 @@ public class DefaultObjectMapper : IObjectMapper, ITransientDependency cacheKey, _ => { - var method = specificMapper + var methods = specificMapper .GetType() .GetMethods(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic) - .FirstOrDefault(x => - x.Name == nameof(IObjectMapper.Map) && - x.GetParameters().Length == (destination == null ? 1 : 2) - ); + .Where(x => x.Name == nameof(IObjectMapper.Map)) + .Where(x => + { + var parameters = x.GetParameters(); + if (destination == null && parameters.Length != 1 || + destination != null && parameters.Length != 2 || + parameters[0].ParameterType != sourceArgumentType) + { + return false; + } + + return destination == null || parameters[1].ParameterType == destinationArgumentType; + }) + .ToList(); + + if (methods.IsNullOrEmpty()) + { + throw new AbpException($"Could not find a method named '{nameof(IObjectMapper.Map)}'" + + $" with parameters({(destination == null ? sourceArgumentType.ToString() : sourceArgumentType + "," + destinationArgumentType)})" + + $" in the type '{mapperType}'."); + } - if (method == null) + if (methods.Count > 1) { - throw new AbpException($"Could not find a method named '{nameof(IObjectMapper.Map)}' with {(destination == null ? "1" : "2")} parameters in the type '{mapperType}'."); + throw new AbpException($"Found more than one method named '{nameof(IObjectMapper.Map)}'" + + $" with parameters({(destination == null ? sourceArgumentType.ToString() : sourceArgumentType + "," + destinationArgumentType)})" + + $" in the type '{mapperType}'."); } - return method; + return methods.First(); } ); diff --git a/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AbpAutoMapperModule_Specific_ObjectMapper_Tests.cs b/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AbpAutoMapperModule_Specific_ObjectMapper_Tests.cs index 46f028596d..47b684538c 100644 --- a/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AbpAutoMapperModule_Specific_ObjectMapper_Tests.cs +++ b/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/AbpAutoMapperModule_Specific_ObjectMapper_Tests.cs @@ -130,6 +130,27 @@ public class AbpAutoMapperModule_Specific_ObjectMapper_Tests : AbpIntegratedTest ReferenceEquals(returnArray, destinationArray).ShouldBeFalse(); } + [Fact] + public void Specific_Object_Mapper_Should_Support_Multiple_IObjectMapper_Interfaces() + { + var myEntityDto2 = _objectMapper.Map(new MyEntity { Number = 42 }); + myEntityDto2.Number.ShouldBe(43); //MyEntityToMyEntityDto2Mapper adds 1 to number of the source. + + var myEntity = _objectMapper.Map(new MyEntityDto2 { Number = 42 }); + myEntity.Number.ShouldBe(43); //MyEntityToMyEntityDto2Mapper adds 1 to number of the source. + + // IEnumerable + _objectMapper.Map, IEnumerable>(new List() + { + new MyEntity { Number = 42 } + }).First().Number.ShouldBe(43); //MyEntityToMyEntityDto2Mapper adds 1 to number of the source. + + _objectMapper.Map, IEnumerable>(new List() + { + new MyEntityDto2 { Number = 42 } + }).First().Number.ShouldBe(43); //MyEntityToMyEntityDto2Mapper adds 1 to number of the source. + } + [Fact] public void Should_Use_Destination_Object_Constructor_If_Available() { diff --git a/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/SampleClasses/MyEntityToMyEntityDto2Mapper.cs b/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/SampleClasses/MyEntityToMyEntityDto2Mapper.cs index 6d06a72db8..6bf16fce8e 100644 --- a/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/SampleClasses/MyEntityToMyEntityDto2Mapper.cs +++ b/framework/test/Volo.Abp.AutoMapper.Tests/Volo/Abp/AutoMapper/SampleClasses/MyEntityToMyEntityDto2Mapper.cs @@ -3,7 +3,7 @@ using Volo.Abp.ObjectMapping; namespace Volo.Abp.AutoMapper.SampleClasses; -public class MyEntityToMyEntityDto2Mapper : IObjectMapper, ITransientDependency +public class MyEntityToMyEntityDto2Mapper : IObjectMapper, IObjectMapper, ITransientDependency { public MyEntityDto2 Map(MyEntity source) { @@ -20,4 +20,20 @@ public class MyEntityToMyEntityDto2Mapper : IObjectMapper Date: Thu, 19 Sep 2024 14:33:35 +0300 Subject: [PATCH 06/18] Update studio docs for v0.8.2 --- docs/en/studio/release-notes.md | 7 +++++++ docs/en/studio/version-compatibility.md | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/en/studio/release-notes.md b/docs/en/studio/release-notes.md index 211786cacb..b2b79fdb46 100644 --- a/docs/en/studio/release-notes.md +++ b/docs/en/studio/release-notes.md @@ -2,6 +2,13 @@ This document contains **brief release notes** for each ABP Studio release. Release notes only include **major features** and **visible enhancements**. Therefore, they don't include all the development done in the related version. +## 0.8.2 (2024-09-19) + +* Fixed WireGuard connection random port bug +* Automated steps after microservice solution creation +* Fixed unusable options/features for Trial License +* Fixed blazor-server single-layer template + ## 0.8.1 (2024-09-12) * Fixed MySQL connection problem for nolayers template diff --git a/docs/en/studio/version-compatibility.md b/docs/en/studio/version-compatibility.md index bd19eb563d..d548995680 100644 --- a/docs/en/studio/version-compatibility.md +++ b/docs/en/studio/version-compatibility.md @@ -4,7 +4,7 @@ This document provides an overview of the compatibility between various versions | **ABP Studio Version** | **ABP Version** | |------------------------|---------------------------| -| 0.8.1 | 8.3.0 | +| 0.8.1 - 0.8.2 | 8.3.0 | | 0.8.0 | 8.2.3 | | 0.7.8 - 0.7.9 | 8.2.2 | | 0.7.4 to 0.7.7 | 8.2.1 | From 99a6b4396f0f1a0b6d4635450868f94766090521 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 19 Sep 2024 14:38:53 +0300 Subject: [PATCH 07/18] Split the modular crm tutorial's part 6 into 3 parts. --- docs/en/docs-nav.json | 10 +- docs/en/tutorials/modular-crm/index.md | 4 +- docs/en/tutorials/modular-crm/part-06.md | 456 +---------------------- docs/en/tutorials/modular-crm/part-07.md | 244 ++++++++++++ docs/en/tutorials/modular-crm/part-08.md | 213 +++++++++++ 5 files changed, 483 insertions(+), 444 deletions(-) create mode 100644 docs/en/tutorials/modular-crm/part-07.md create mode 100644 docs/en/tutorials/modular-crm/part-08.md diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index e5d75ca61f..73a006cf0b 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -143,8 +143,16 @@ "path": "tutorials/modular-crm/part-05.md" }, { - "text": "6: Integrating the modules", + "text": "6: Integrating the modules: Implementing Integration Services", "path": "tutorials/modular-crm/part-06.md" + }, + { + "text": "7: Building the Ordering module: Communication via Messages (Events)", + "path": "tutorials/modular-crm/part-07.md" + }, + { + "text": "8: Integrating the modules: Joining the Products and Orders Data", + "path": "tutorials/modular-crm/part-08.md" } ] }, diff --git a/docs/en/tutorials/modular-crm/index.md b/docs/en/tutorials/modular-crm/index.md index 2fb7f18b98..e4bf64fbd7 100644 --- a/docs/en/tutorials/modular-crm/index.md +++ b/docs/en/tutorials/modular-crm/index.md @@ -23,7 +23,9 @@ This tutorial is organized as the following parts: * [Part 03: Building the Products module](part-03.md) * [Part 04: Creating the initial Ordering module](part-04.md) * [Part 05: Building the Ordering module](part-05.md) -* [Part 06: Integrating the modules](part-06.md) +* [Part 06: Integrating the modules: Implementing Integration Services](part-06.md) +* [Part 07: Integrating the modules: Communication via Messages (Events)](part-07.md) +* [Part 08: Integrating the modules: Joining the Products and Orders Data](part-08.md) ## Download the Source Code diff --git a/docs/en/tutorials/modular-crm/part-06.md b/docs/en/tutorials/modular-crm/part-06.md index 1adfc05284..04f02517c7 100644 --- a/docs/en/tutorials/modular-crm/part-06.md +++ b/docs/en/tutorials/modular-crm/part-06.md @@ -1,4 +1,4 @@ -# Integrating the Modules +# Integrating the Modules: Implementing Integration Services ````json //[doc-nav] @@ -6,21 +6,25 @@ "Previous": { "Name": "Building the Ordering module", "Path": "tutorials/modular-crm/part-05" + }, + "Next": { + "Name": "Integrating the Modules: Communication via Messages (Events)", + "Path": "tutorials/modular-crm/part-07" } } ```` In the previous parts, we've created two modules: The Products module to store and manage products and the Orders module to accept orders. However, these modules were completely independent from each other. Only the main application brings them together to execute in the same application, but these modules don't communicate to each other. -In this part, you will learn to implement three patterns for integrating these modules: +In the next three parts, you will learn to implement three patterns for integrating these modules: 1. The Order module will make request to the Products module to get product information when needed. 2. The Product module will listen to events from the Orders module, so it can decrease stock count of a product when an order is placed. 3. Finally, we will execute a database query that includes product and order data together. -Let's begin from the first one... +Let's begin from the first one: The Integration Services. -## Implementing Integration Services +## The Need for the Integration Services Remember from the [previous part](part-05.md), the Orders page shows products' identities instead of their names: @@ -32,13 +36,13 @@ As a solution to that problem, the Orders module may ask product names to the Pr > When you implement integration services for inter-module communication, you can easily convert them to REST API calls if you convert your solution to a microservice system and convert your modules to services later. -### Creating a Products Integration Service +## Creating a Products Integration Service The first step is to create an integration service in the Products module, so other modules can consume it. We will define an interface in the `ModularCrm.Products.Application.Contracts` package and implement it in the `ModularCrm.Products.Application` package. -#### Defining the `IProductIntegrationService` Interface +### Defining the `IProductIntegrationService` Interface Open the `ModularCrm.Products` .NET solution in your IDE, find the `ModularCrm.Products.Application.Contracts` project, create an `Integration` folder inside inside of that project and finally create an interface named `IProductIntegrationService` into that folder. The final folder structure should be like that: @@ -75,7 +79,7 @@ namespace ModularCrm.Products.Integration > > We've reused the `ProductDto` object that was actually created for `IProductAppService`. That can be reasonable from the maintenance point. But, if you think your integration service results can be different than the application service results in the future, it can be good to separate them from the first day, so you don't need to introduce breaking changes later. -#### Implementing the `ProductIntegrationService` Class +### Implementing the `ProductIntegrationService` Class We've defined the integration service interface. Now, we can implement it in the `ModularCrm.Products.Application` project. Create an `Integration` folder and then create a `ProductIntegrationService` class in that folder. The final folder structure should be like that: @@ -119,11 +123,11 @@ The implementation is pretty simple. Just using a [repository](../../framework/a > Here, we directly used `List` classes, but instead you could wrap inputs and outputs into [DTOs](../../framework/architecture/domain-driven-design/data-transfer-objects.md). In that way, it can be possible to add new properties to these DTOs without changing the signature of your integration service method (so, without introducing breaking change for your client modules). -### Consuming the Products Integration Service +## Consuming the Products Integration Service The Product Integration Service is ready to be consumed by the other modules. In this section, we will use it in the Ordering module to convert product Ids to product names. -#### Adding a Reference to the `ModularCrm.Products.Application.Contracts` Package +### Adding a Reference to the `ModularCrm.Products.Application.Contracts` Package Open the ABP Studio UI and stop the application if it is already running. Then open the *Solution Explorer* in ABP Studio, right-click the `ModularCrm.Ordering` package and select the *Add Package Reference* command: @@ -137,7 +141,7 @@ ABP Studio adds the package reference and also arranges the [module](../../frame > Instead of directly adding such a package reference, it can be best to import the module first (right-click the `ModularCrm.Ordering` module, select the Import Module command and import the `ModularCrm.Products` module), then install the package reference. In that way, it would be easy to see and keep track of inter-module dependencies. -#### Using the Products Integration Service +### Using the Products Integration Service Now, we can inject and use `IProductIntegrationService` in the Ordering module codebase. @@ -238,435 +242,3 @@ In the way explained in this section, you can easily create integration services > > It is suggested to keep that type of communication minimum to not couple your modules to each other. It can make your solution complicated and may also decrease your system performance. When you need to do it, think about performance and try to make some optimizations. For example, if the Ordering module frequently needs to product data, you can use a kind of [cache layer](../../framework/fundamentals/caching.md), so it doesn't make frequent requests to the Products module. Especially, if you consider to convert your system to a microservice solution in the future, too many direct integration API calls can be a performance bottleneck. -## Communication via Messages (Events) - -Another common approach to communicate between modules is messaging. By publishing and handling messages, a module can perform operation when an event happens in another module. - -ABP provides two types of event buses for loosely coupled communication: - -* [Local Event Bus](https://abp.io/docs/latest/framework/infrastructure/event-bus/local) is suitable for in-process messaging. Since in a modular monolith, both of publisher and subscriber are in the same process, they can communicate in-process, without needing an external message broker. -* **[Distributed Event Bus](https://abp.io/docs/latest/framework/infrastructure/event-bus/distributed)** is normal for inter-process messaging, like microservices, for publishing and subscribing to distributed events. However, ABP's distributed event bus works as local (in-process) by default (actually, it uses the Local Event Bus under the hood by default), unless you configure an external message broker. - -If you consider to convert your modular monolith to a microservice system later, it is best to use the Distributed Event Bus with default local/in-process implementation. It already supports database level transactional event execution and has no performance penalty. If you switch to an external provider (e.g. [RabbitMQ](../../framework/infrastructure/event-bus/distributed/rabbitmq.md) or [Kafka](../../framework/infrastructure/event-bus/distributed/kafka.md)), you don't need to change your application code. - -On the other hand, if you want to publish events and always subscribe in the same module, you should use the Local Event Bus. In that way, if you switch to microservices later, you don't accidently (and unnecessarily) make a local event distributed. Both of the event bus types can be used in the same system, just understand these and use them properly. - -Since we will use messaging (events) between different modules, we will use the distributed event bus. - -### Publishing an Event - -In the example scenario, we want to publish an event when a new order is placed. The Ordering module will publish the event since it knows when a new order is placed. The Products module will subscribe to that event and get notified when a new order is placed. It will decrease the stock count of the product that is related to the new order. The scenario is pretty simple, let's implement it. - -#### Defining the Event Class - -Open the `ModularCrm.Ordering` module in your IDE, find the `ModularCrm.Ordering.Contracts` project, create an `Events` folder and create an `OrderPlacedEto` class inside that folder. The final folder structure should be like that: - -![visual-studio-order-event](images/visual-studio-order-event.png) - -We've placed the `OrderPlacedEto` class inside the `ModularCrm.Ordering.Contracts` project since that project can be referenced and used by other modules without accessing internal implementation of the Ordering module. The `OrderPlacedEto` class definition should be the following: - -````csharp -using System; - -namespace ModularCrm.Ordering.Contracts.Events -{ - public class OrderPlacedEto - { - public string CustomerName { get; set; } - public Guid ProductId { get; set; } - } -} -```` - -`OrderPlacedEto` is very simple. It is a plain C# class and used to transfer data related to the event (*ETO* is an acronym for *Event Transfer Object*, a suggested naming convention, but not required). You can add more properties if it is needed. For this tutorial, it is more than enough. - -#### Using the `IDistributedEventBus` Service - -`IDistributedEventBus` service is used to publish events to the event bus. Until this point, the Ordering module has no functionality to create a new order. - -In the Part 3, we had used ABP's Auto HTTP API Controller feature to automatically expose HTTP APIs from application services. In this section, we will create an ASP.NET Core API controller class to create a new order. In that way, you will also see that it is not different than creating a regular ASP.NET Core controller. - -Open the `ModularCrm.Ordering` module's .NET solution, create a `Controllers` folder in the `ModularCrm.Ordering` project and place a controller class named `OrdersController` in that new folder. The final folder structure should be like that: - -![visual-studio-ordering-controller](images/visual-studio-ordering-controller.png) - -Here the full `OrdersController` class: - -````csharp -using Microsoft.AspNetCore.Mvc; -using ModularCrm.Ordering.Contracts.Enums; -using ModularCrm.Ordering.Contracts.Events; -using ModularCrm.Ordering.Entities; -using System; -using System.ComponentModel.DataAnnotations; -using System.Threading.Tasks; -using Volo.Abp.AspNetCore.Mvc; -using Volo.Abp.Domain.Repositories; -using Volo.Abp.EventBus.Distributed; - -namespace ModularCrm.Ordering.Controllers -{ - [Route("api/orders")] - [ApiController] - public class OrdersController : AbpControllerBase - { - private readonly IRepository _orderRepository; - private readonly IDistributedEventBus _distributedEventBus; - - public OrdersController( - IRepository orderRepository, - IDistributedEventBus distributedEventBus) - { - _orderRepository = orderRepository; - _distributedEventBus = distributedEventBus; - } - - [HttpPost] - public async Task CreateAsync(OrderCreationModel input) - { - // Create a new Order entity - var order = new Order - { - CustomerName = input.CustomerName, - ProductId = input.ProductId, - State = OrderState.Placed - }; - - // Save it to the database - await _orderRepository.InsertAsync(order); - - // Publish an event, so other modules can be informed - await _distributedEventBus.PublishAsync( - new OrderPlacedEto - { - ProductId = order.ProductId, - CustomerName = order.CustomerName - }); - - return Created(); - } - - public class OrderCreationModel - { - public Guid ProductId { get; set; } - - [Required] - [StringLength(120)] - public string CustomerName { get; set; } - } - } -} -```` - -The `OrdersController.CreateAsync` method simply creates a new `Order` entity, saves it to the database and finally publishes an `OrderPlacedEto` event. - -### Subscribing to an Event - -In this section, we will subscribe to the `OrderPlacedEto` event in the Products module and decrease the related product's stock count once a new order is placed. - -#### Adding a Reference to the `ModularCrm.Ordering.Contracts` Package - -Since the `OrderPlacedEto` class is located inside the `ModularCrm.Ordering.Contracts` project, we need to add that package's reference to the Products module. This time, we will use the *Import Module* feature of ABP Studio (as an alternative to approach we used in the *Adding a Reference to the `ModularCrm.Products.Application.Contracts` Package* section). - -Open the ABP Studio UI and stop the application if it is already running. Then open the *Solution Explorer* in ABP Studio, right-click the `ModularCrm.Products` module and select the *Import Module* command: - -![abp-studio-import-module-ordering](images/abp-studio-import-module-ordering.png) - -In the opening dialog, find and select the `ModularCrm.Ordering` module, check the *Install this module* option and click the OK button: - -![abp-studio-import-module-dialog-for-ordering](images/abp-studio-import-module-dialog-for-ordering.png) - -Once you click the OK button, the Ordering module is imported to the Products module and an installation dialog is open: - -![abp-studio-install-module-dialog-for-ordering](images/abp-studio-install-module-dialog-for-ordering.png) - -Here, select the `ModularCrm.Ordering.Contracts` package on the left side (because we want to add that package reference) and `ModularCrm.Products.Domain` package on the middle area (because we want to add the package reference to that project). We installed it to the [domain layer](../../framework/architecture/domain-driven-design/domain-layer.md) of the Products module since we will create our event handler into that layer. Click the OK button to finish the installation operation. - -You can check the ABP Studio's *Solution Explorer* panel to see the module import and the project reference (dependency). - -![abp-studio-imports-and-dependencies](images/abp-studio-imports-and-dependencies.png) - -#### Handling the `OrderPlacedEto` Event - -Now, it is possible to use the `OrderPlacedEto` class inside the Product module's domain layer since it has the `ModularCrm.Ordering.Contracts` package reference. - -Open the Product module's .NET solution in your IDE, locate the `ModularCrm.Products.Domain` project, create a new `Orders` folder and an `OrderEventHandler` class inside that folder. The final folder structure should be like that: - -![visual-studio-order-event-handler](images/visual-studio-order-event-handler.png) - -Replace the `OrderEventHandler.cs` file's content with the following code block: - -````csharp -using ModularCrm.Ordering.Contracts.Events; -using System; -using System.Threading.Tasks; -using Volo.Abp.DependencyInjection; -using Volo.Abp.Domain.Repositories; -using Volo.Abp.EventBus.Distributed; - -namespace ModularCrm.Products.Orders -{ - public class OrderEventHandler : - IDistributedEventHandler, - ITransientDependency - { - private readonly IRepository _productRepository; - - public OrderEventHandler(IRepository productRepository) - { - _productRepository = productRepository; - } - - public async Task HandleEventAsync(OrderPlacedEto eventData) - { - // Find the related product - var product = await _productRepository.FindAsync(eventData.ProductId); - if (product == null) - { - return; - } - - // Decrease the stock count - product.StockCount = product.StockCount - 1; - - // Update the entity in the database - await _productRepository.UpdateAsync(product); - } - } -} -```` - -`OrderEventHandler` implements the `IDistributedEventHandler` interface. In that way, ABP recognizes that class and subscribes to the related event automatically. Implementing `ITransientDependency` simply registers the `OrderEventHandler` class to the [dependency injection](../../framework/fundamentals/dependency-injection.md) system as a transient object. - -We are injecting the product repository and updating the stock count in the event handler method (`HandleEventAsync`). That's all. - -#### Testing the Order Creation - -We will not create a UI for creating an order, to keep this tutorial more focused. You can easily create a form to create an order on your user interface. We will test it just using the Swagger UI in this section. - -Graph build the `ModularCrm.Web` application, run it on the ABP Studio's *Solution Runner* panel and browse the application UI as demonstrated earlier. - -Once the application is running and ready, manually type `/swagger` to the end of the URL and press the ENTER key. You should see the Swagger UI that is used to discover and test your HTTP APIs: - -![abp-studio-swagger-create-order](images/abp-studio-swagger-create-order.png) - -Find the *Orders* API, click the *Try it out* button, enter a sample value the the *Request body*: - -````json -{ - "productId": "0fbf7dd0-d7e9-0d18-9214-3a14d9fa1b74", - "customerName": "David" -} -```` - -> **IMPORTANT:** Here, you should type a valid Product Id from the Products table of your database! - -Once you press the *Execute* button, a new order is created. At that point, you can check the `/Orders` page to see if the new order is shown on the UI, and check the `/Products` page to see if the related product's stock count has decreased. - -Here, sample screenshots from the Products and Orders pages: - -![products-orders-pages-crop](images/products-orders-pages-crop.png) - -We placed a new order for Product C. As a result, Product C's stock count has decreased from 55 to 54 and a new line is added to the Orders page. - -## Joining the Products and Orders data - -One of the essential purposes of modularity is to create modules those hide (encapsulate) their internal data and implementation details from the other modules. They communicate each other through well-defined [integration services](../../framework/api-development/integration-services.md) and [events](framework/infrastructure/event-bus/distributed). In that way, you can independently develop and change module implementations (even modules' database structures) from each other as long as you don't break these inter-module integration points. - -### The Problem - -In a non-modular application, accessing the related data is easy. You could just write a LINQ expression that joins `Orders` and `Products` database tables to get the data with a single database query. It would be easier to implement and executed with a good performance. - -On the other hand, it becomes harder to perform operations or get reports those requires to access data of multiple modules in a modular system. Remember the *Implementing Integration Services* section; We couldn't access the product data inside the Ordering module (`IOrderingDbContext` only defines a `DbSet`), so we needed to create an integration services just to get names of products. This approach is harder to implement and less performant (yet it is acceptable if you don't show too many orders on the UI or if you properly implement a caching layer), but it gives freedom to the Products module about its internal database or application logic changes. For example, you can decide to move product data to another physical database, or even to another database management system (DBMS) without effecting the other modules. - -### A Solution Option - -If you want to perform a single database query that spans database tables of multiple modules in a modular system, you have still some options. One option can be creating a reporting module that has access to all of the entities (or database tables). However, when you do that, you accept the following limitations: - -* When you make changes in a module's database structure, you should also update your reporting code. That is reasonable, but you should be informed by all module developers in such a case. -* You can not change DBMS of a module easily. For example, if you decide to use MongoDB for your Products module while the Ordering module still uses SQL Server, performing such a JOIN operation would not be possible. Even moving Products module to another SQL Server database in another physical server can break your reporting logic. - -If these are not problems for you, or you can handle when they become problems, you can create reporting modules or aggregator modules that works with multiple modules' data. - -In the next section, we will use the main application's codebase to implement such a JOIN operation to keep the tutorial short. However, you already learned how to create new modules, so you can create a new module and develop your JOIN logic inside that new module if you want. - -### The Implementation - -In this section, we will create an application service in the main application's .NET solution. That application service will perform a LINQ operation on the `Product` and `Order` entities. - -#### Defining the Reporting Service Interface - -We will define the `IOrderReportingAppService` interface in the `ModularCrm.Application.Contracts` project of the main application's .NET solution. - -##### Adding `ModularCrm.Ordering.Contracts` Package Reference - -As the first step, we should to add a reference of the `ModularCrm.Ordering.Contracts` package (of the `ModularCrm.Ordering` module) since we will reuse the `OrderState` enum which is defined in that package. - -Open the ABP Studio's *Solution Explorer* panel, right-click the `ModularCrm.Application.Contracts` package and select the *Add Package Reference* command: - -![abp-studio-add-package-reference-5](images/abp-studio-add-package-reference-5.png) - -Select the *Imported modules* tab, find and check the `ModularCrm.Ordering.Contracts` package and click the OK button: - -![abp-studio-add-package-reference-dialog-4](images/abp-studio-add-package-reference-dialog-4.png) - -The package reference is added and now we can use the types in the `ModularCrm.Ordering.Contracts` package. - -##### Defining the `IOrderReportingAppService` Interface - -Open the main `ModularCrm` .NET solution in your IDE, find the `ModularCrm.Application.Contracts` project, create an `Orders` folder and add an `IOrderReportingAppService` interface inside it. Here the definition of that interface: - -````csharp -using System.Collections.Generic; -using System.Threading.Tasks; -using Volo.Abp.Application.Services; - -namespace ModularCrm.Orders -{ - public interface IOrderReportingAppService : IApplicationService - { - Task> GetLatestOrders(); - } -} -```` - -We have a single method, `GetLatestOrders`, that will return a list of the latest orders. We should also define the `OrderReportDto` class that is returned by that method. Create the following class in the same `Orders` folder: - -````csharp -using System; -using ModularCrm.Ordering.Contracts.Enums; - -namespace ModularCrm.Orders -{ - public class OrderReportDto - { - // Order data - public Guid OrderId { get; set; } - public string CustomerName { get; set; } - public OrderState State { get; set; } - - // Product data - public Guid ProductId { get; set; } - public string ProductName { get; set; } - } -} -```` - -`OrderReportDto` contains data from both of `Order` and `Product` entities. We could use the `OrderState` since we have a reference to the package which defines that enum. - -After adding these files, the final folder structure should be like that: - -![visual-studio-order-reporting-app-service](images/visual-studio-order-reporting-app-service.png) - -#### Implementing the `OrderReportingAppService` Class - -Create an `Orders` folder inside of the `ModularCrm.Application` project and add a class named `OrderReportingAppService` inside it. The final folder structure should be like that: - -![visual-studio-order-reporting-app-service-impl](images/visual-studio-order-reporting-app-service-impl.png) - -Open the `OrderReportingAppService.cs` file and change its content by the following code block: - -````csharp -using ModularCrm.Ordering.Entities; -using ModularCrm.Products; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Volo.Abp.Domain.Repositories; - -namespace ModularCrm.Orders -{ - public class OrderReportingAppService : - ModularCrmAppService, - IOrderReportingAppService - { - private readonly IRepository _orderRepository; - private readonly IRepository _productRepository; - - public OrderReportingAppService( - IRepository orderRepository, - IRepository productRepository) - { - _orderRepository = orderRepository; - _productRepository = productRepository; - } - - public async Task> GetLatestOrders() - { - var orders = await _orderRepository.GetQueryableAsync(); - var products = await _productRepository.GetQueryableAsync(); - - var latestOrders = (from order in orders - join product in products on order.ProductId equals product.Id - orderby order.CreationTime descending - select new OrderReportDto - { - OrderId = order.Id, - CustomerName = order.CustomerName, - State = order.State, - ProductId = product.Id, - ProductName = product.Name - }) - .Take(10) - .ToList(); - - return latestOrders; - } - } -} -```` - -Let's explain that class; - -* It inject [repository](../../framework/architecture/domain-driven-design/repositories.md) services for `Order` and `Product` entities. We can access all entities of all modules from the main application codebase. -* In the `GetLatestOrders` method, we are getting `IQueryable` objects for the entities, so we can create LINQ expressions. -* Then we are executing a LINQ expression with `join` keyword, so we can be able to execute a single query that uses multiple tables. - -That's all. In that way, you can execute JOIN queries that uses multiple modules' data. However, if you write majority of your application code into the main application and perform operations on multiple modules, then your system won't be so modular. So, here we show it is technically possible. Please use at your own risk. - -#### Testing the Reporting Service - -We haven't created a UI to show list of the latest orders using `OrderReportingAppService`. However, we can use the Swagger UI again to test it. - -Open the ABP Studio UI, stop the application if it is running, build and run it again. Once the application starts, browse it, then add `/swagger` to the end of the URL to open the Swagger UI: - -![abp-studio-swagger-list-orders](images/abp-studio-swagger-list-orders.png) - -Here, find the `OrderReporting` API and execute it as shown above. You should get the order objects with product names. - -Alternatively, you can visit the `/api/app/order-reporting/latest-orders` URL to directly execute the HTTP API on the browser (you should write the full URL, like `https://localhost:44358/api/app/order-reporting/latest-orders` - port can be different for your case) - -## Summary - -In this part of the modular application development tutorial, you have learned three ways of integrating your application modules: - -1. You can use the integration services to make request/response style communication between your modules. -2. You can publish events from a module and subscribe to these events from other modules. -3. You can write your code into the main application, so you can access to all entities (and related data) of all modules. Instead of writing it into the main application code, you can also create some aggregation or reporting modules that can access more than one module entities. - -Now, you know the fundamental principles and mechanics to build sophisticated modular monolith application with ABP. - -## Download the Source Code - -You can download the completed sample solution [here](https://github.com/abpframework/abp-samples/tree/master/ModularCRM). - -## See Also - -See the following sections for additional resources. - -### The Book Store Tutorial - -In this tutorial, we intentionally kept the application logic very simple and didn't build a usable user interface for the modules. Also, didn't implement authorization and localization for the modules. This was to keep your focus on modularity. If you want to learn how to build real-world user interfaces with ABP, you can check the [Book Store tutorial](../book-store/index.md). All the principles and approaches explained there are already possible with a modular system too. - -### ABP Reusable Application Modules - -ABP is designed as modular from the first day. The ABP team has created tens of production-ready and [reusable application modules](../../modules/index.md). You can investigate these modules (some of them are already [free and open source](https://github.com/abpframework/abp/tree/dev/modules)) to see real-world modules. - -When you [create a new ABP solution](../../get-started/index.md), some of these modules are already comes as installed into your application (as NuGet and NPM packages). So, your initial ABP application is already a modular application from day one. - -### Guide: Module Development Best Practices & Conventions - -ABP team has created the [reusable application modules](../../modules/index.md) based on some strict principles and rules to make them reusable as much as possible in different scenarios, including modular monolith applications and microservice systems. - -These application modules are designed so that they are generic, extensible, doesn't depend on each other, reusable in any web application, provides multiple UI and database options, etc. In a monolith modular application, you mostly don't have such requirements. But, you can still check the [best practices guides](../../framework/architecture/best-practices/index.md) that is prepared by the ABP team and followed while implementing these application modules. diff --git a/docs/en/tutorials/modular-crm/part-07.md b/docs/en/tutorials/modular-crm/part-07.md new file mode 100644 index 0000000000..3926e1d9b7 --- /dev/null +++ b/docs/en/tutorials/modular-crm/part-07.md @@ -0,0 +1,244 @@ +# Integrating the Modules: Communication via Messages (Events) + +````json +//[doc-nav] +{ + "Previous": { + "Name": "Integrating the Modules: Implementing Integration Services", + "Path": "tutorials/modular-crm/part-06" + }, + "Next": { + "Name": "Integrating the Modules: Joining the Products and Orders Data", + "Path": "tutorials/modular-crm/part-08" + } +} +```` + +Another common approach to communicate between modules is messaging. By publishing and handling messages, a module can perform operation when an event happens in another module. + +ABP provides two types of event buses for loosely coupled communication: + +* [Local Event Bus](https://abp.io/docs/latest/framework/infrastructure/event-bus/local) is suitable for in-process messaging. Since in a modular monolith, both of publisher and subscriber are in the same process, they can communicate in-process, without needing an external message broker. +* **[Distributed Event Bus](https://abp.io/docs/latest/framework/infrastructure/event-bus/distributed)** is normal for inter-process messaging, like microservices, for publishing and subscribing to distributed events. However, ABP's distributed event bus works as local (in-process) by default (actually, it uses the Local Event Bus under the hood by default), unless you configure an external message broker. + +If you consider to convert your modular monolith to a microservice system later, it is best to use the Distributed Event Bus with default local/in-process implementation. It already supports database level transactional event execution and has no performance penalty. If you switch to an external provider (e.g. [RabbitMQ](../../framework/infrastructure/event-bus/distributed/rabbitmq.md) or [Kafka](../../framework/infrastructure/event-bus/distributed/kafka.md)), you don't need to change your application code. + +On the other hand, if you want to publish events and always subscribe in the same module, you should use the Local Event Bus. In that way, if you switch to microservices later, you don't accidently (and unnecessarily) make a local event distributed. Both of the event bus types can be used in the same system, just understand these and use them properly. + +Since we will use messaging (events) between different modules, we will use the distributed event bus. + +## Publishing an Event + +In the example scenario, we want to publish an event when a new order is placed. The Ordering module will publish the event since it knows when a new order is placed. The Products module will subscribe to that event and get notified when a new order is placed. It will decrease the stock count of the product that is related to the new order. The scenario is pretty simple, let's implement it. + +### Defining the Event Class + +Open the `ModularCrm.Ordering` module in your IDE, find the `ModularCrm.Ordering.Contracts` project, create an `Events` folder and create an `OrderPlacedEto` class inside that folder. The final folder structure should be like that: + +![visual-studio-order-event](images/visual-studio-order-event.png) + +We've placed the `OrderPlacedEto` class inside the `ModularCrm.Ordering.Contracts` project since that project can be referenced and used by other modules without accessing internal implementation of the Ordering module. The `OrderPlacedEto` class definition should be the following: + +````csharp +using System; + +namespace ModularCrm.Ordering.Contracts.Events +{ + public class OrderPlacedEto + { + public string CustomerName { get; set; } + public Guid ProductId { get; set; } + } +} +```` + +`OrderPlacedEto` is very simple. It is a plain C# class and used to transfer data related to the event (*ETO* is an acronym for *Event Transfer Object*, a suggested naming convention, but not required). You can add more properties if it is needed. For this tutorial, it is more than enough. + +### Using the `IDistributedEventBus` Service + +`IDistributedEventBus` service is used to publish events to the event bus. Until this point, the Ordering module has no functionality to create a new order. + +In the Part 3, we had used ABP's Auto HTTP API Controller feature to automatically expose HTTP APIs from application services. In this section, we will create an ASP.NET Core API controller class to create a new order. In that way, you will also see that it is not different than creating a regular ASP.NET Core controller. + +Open the `ModularCrm.Ordering` module's .NET solution, create a `Controllers` folder in the `ModularCrm.Ordering` project and place a controller class named `OrdersController` in that new folder. The final folder structure should be like that: + +![visual-studio-ordering-controller](images/visual-studio-ordering-controller.png) + +Here the full `OrdersController` class: + +````csharp +using Microsoft.AspNetCore.Mvc; +using ModularCrm.Ordering.Contracts.Enums; +using ModularCrm.Ordering.Contracts.Events; +using ModularCrm.Ordering.Entities; +using System; +using System.ComponentModel.DataAnnotations; +using System.Threading.Tasks; +using Volo.Abp.AspNetCore.Mvc; +using Volo.Abp.Domain.Repositories; +using Volo.Abp.EventBus.Distributed; + +namespace ModularCrm.Ordering.Controllers +{ + [Route("api/orders")] + [ApiController] + public class OrdersController : AbpControllerBase + { + private readonly IRepository _orderRepository; + private readonly IDistributedEventBus _distributedEventBus; + + public OrdersController( + IRepository orderRepository, + IDistributedEventBus distributedEventBus) + { + _orderRepository = orderRepository; + _distributedEventBus = distributedEventBus; + } + + [HttpPost] + public async Task CreateAsync(OrderCreationModel input) + { + // Create a new Order entity + var order = new Order + { + CustomerName = input.CustomerName, + ProductId = input.ProductId, + State = OrderState.Placed + }; + + // Save it to the database + await _orderRepository.InsertAsync(order); + + // Publish an event, so other modules can be informed + await _distributedEventBus.PublishAsync( + new OrderPlacedEto + { + ProductId = order.ProductId, + CustomerName = order.CustomerName + }); + + return Created(); + } + + public class OrderCreationModel + { + public Guid ProductId { get; set; } + + [Required] + [StringLength(120)] + public string CustomerName { get; set; } + } + } +} +```` + +The `OrdersController.CreateAsync` method simply creates a new `Order` entity, saves it to the database and finally publishes an `OrderPlacedEto` event. + +## Subscribing to an Event + +In this section, we will subscribe to the `OrderPlacedEto` event in the Products module and decrease the related product's stock count once a new order is placed. + +### Adding a Reference to the `ModularCrm.Ordering.Contracts` Package + +Since the `OrderPlacedEto` class is located inside the `ModularCrm.Ordering.Contracts` project, we need to add that package's reference to the Products module. This time, we will use the *Import Module* feature of ABP Studio (as an alternative to approach we used in the *Adding a Reference to the `ModularCrm.Products.Application.Contracts` Package* section of the [previous part](part-06.md)). + +Open the ABP Studio UI and stop the application if it is already running. Then open the *Solution Explorer* in ABP Studio, right-click the `ModularCrm.Products` module and select the *Import Module* command: + +![abp-studio-import-module-ordering](images/abp-studio-import-module-ordering.png) + +In the opening dialog, find and select the `ModularCrm.Ordering` module, check the *Install this module* option and click the OK button: + +![abp-studio-import-module-dialog-for-ordering](images/abp-studio-import-module-dialog-for-ordering.png) + +Once you click the OK button, the Ordering module is imported to the Products module and an installation dialog is open: + +![abp-studio-install-module-dialog-for-ordering](images/abp-studio-install-module-dialog-for-ordering.png) + +Here, select the `ModularCrm.Ordering.Contracts` package on the left side (because we want to add that package reference) and `ModularCrm.Products.Domain` package on the middle area (because we want to add the package reference to that project). We installed it to the [domain layer](../../framework/architecture/domain-driven-design/domain-layer.md) of the Products module since we will create our event handler into that layer. Click the OK button to finish the installation operation. + +You can check the ABP Studio's *Solution Explorer* panel to see the module import and the project reference (dependency). + +![abp-studio-imports-and-dependencies](images/abp-studio-imports-and-dependencies.png) + +### Handling the `OrderPlacedEto` Event + +Now, it is possible to use the `OrderPlacedEto` class inside the Product module's domain layer since it has the `ModularCrm.Ordering.Contracts` package reference. + +Open the Product module's .NET solution in your IDE, locate the `ModularCrm.Products.Domain` project, create a new `Orders` folder and an `OrderEventHandler` class inside that folder. The final folder structure should be like that: + +![visual-studio-order-event-handler](images/visual-studio-order-event-handler.png) + +Replace the `OrderEventHandler.cs` file's content with the following code block: + +````csharp +using ModularCrm.Ordering.Contracts.Events; +using System; +using System.Threading.Tasks; +using Volo.Abp.DependencyInjection; +using Volo.Abp.Domain.Repositories; +using Volo.Abp.EventBus.Distributed; + +namespace ModularCrm.Products.Orders +{ + public class OrderEventHandler : + IDistributedEventHandler, + ITransientDependency + { + private readonly IRepository _productRepository; + + public OrderEventHandler(IRepository productRepository) + { + _productRepository = productRepository; + } + + public async Task HandleEventAsync(OrderPlacedEto eventData) + { + // Find the related product + var product = await _productRepository.FindAsync(eventData.ProductId); + if (product == null) + { + return; + } + + // Decrease the stock count + product.StockCount = product.StockCount - 1; + + // Update the entity in the database + await _productRepository.UpdateAsync(product); + } + } +} +```` + +`OrderEventHandler` implements the `IDistributedEventHandler` interface. In that way, ABP recognizes that class and subscribes to the related event automatically. Implementing `ITransientDependency` simply registers the `OrderEventHandler` class to the [dependency injection](../../framework/fundamentals/dependency-injection.md) system as a transient object. + +We are injecting the product repository and updating the stock count in the event handler method (`HandleEventAsync`). That's all. + +### Testing the Order Creation + +We will not create a UI for creating an order, to keep this tutorial more focused. You can easily create a form to create an order on your user interface. We will test it just using the Swagger UI in this section. + +Graph build the `ModularCrm.Web` application, run it on the ABP Studio's *Solution Runner* panel and browse the application UI as demonstrated earlier. + +Once the application is running and ready, manually type `/swagger` to the end of the URL and press the ENTER key. You should see the Swagger UI that is used to discover and test your HTTP APIs: + +![abp-studio-swagger-create-order](images/abp-studio-swagger-create-order.png) + +Find the *Orders* API, click the *Try it out* button, enter a sample value the the *Request body*: + +````json +{ + "productId": "0fbf7dd0-d7e9-0d18-9214-3a14d9fa1b74", + "customerName": "David" +} +```` + +> **IMPORTANT:** Here, you should type a valid Product Id from the Products table of your database! + +Once you press the *Execute* button, a new order is created. At that point, you can check the `/Orders` page to see if the new order is shown on the UI, and check the `/Products` page to see if the related product's stock count has decreased. + +Here, sample screenshots from the Products and Orders pages: + +![products-orders-pages-crop](images/products-orders-pages-crop.png) + +We placed a new order for Product C. As a result, Product C's stock count has decreased from 55 to 54 and a new line is added to the Orders page. diff --git a/docs/en/tutorials/modular-crm/part-08.md b/docs/en/tutorials/modular-crm/part-08.md new file mode 100644 index 0000000000..410a10cb00 --- /dev/null +++ b/docs/en/tutorials/modular-crm/part-08.md @@ -0,0 +1,213 @@ +# Integrating the Modules: Joining the Products and Orders Data + +````json +//[doc-nav] +{ + "Previous": { + "Name": "Integrating the Modules: Communication via Messages (Events)", + "Path": "tutorials/modular-crm/part-07" + } +} +```` + +In this part, you will learn how you can make database-level JOIN operation on data of multiple modules, when their located in the same physical database. + +## The Problem + +One of the essential purposes of modularity is to create modules those hide (encapsulate) their internal data and implementation details from the other modules. They communicate each other through well-defined [integration services](../../framework/api-development/integration-services.md) and [events](framework/infrastructure/event-bus/distributed). In that way, you can independently develop and change module implementations (even modules' database structures) from each other as long as you don't break these inter-module integration points. + +In a non-modular application, accessing the related data is easy. You could just write a LINQ expression that joins `Orders` and `Products` database tables to get the data with a single database query. It would be easier to implement and executed with a good performance. + +On the other hand, it becomes harder to perform operations or get reports those requires to access data of multiple modules in a modular system. Remember the *[Implementing Integration Services](part-06.md)* part; We couldn't access the product data inside the Ordering module (`IOrderingDbContext` only defines a `DbSet`), so we needed to create an integration services just to get names of products. This approach is harder to implement and less performant (yet it is acceptable if you don't show too many orders on the UI or if you properly implement a caching layer), but it gives freedom to the Products module about its internal database or application logic changes. For example, you can decide to move product data to another physical database, or even to another database management system (DBMS) without effecting the other modules. + +## A Solution Option + +If you want to perform a single database query that spans database tables of multiple modules in a modular system, you have still some options. One option can be creating a reporting module that has access to all of the entities (or database tables). However, when you do that, you accept the following limitations: + +* When you make changes in a module's database structure, you should also update your reporting code. That is reasonable, but you should be informed by all module developers in such a case. +* You can not change DBMS of a module easily. For example, if you decide to use MongoDB for your Products module while the Ordering module still uses SQL Server, performing such a JOIN operation would not be possible. Even moving Products module to another SQL Server database in another physical server can break your reporting logic. + +If these are not problems for you, or you can handle when they become problems, you can create reporting modules or aggregator modules that works with multiple modules' data. + +In the next section, we will use the main application's codebase to implement such a JOIN operation to keep the tutorial short. However, you already learned how to create new modules, so you can create a new module and develop your JOIN logic inside that new module if you want. + +## The Implementation + +In this section, we will create an application service in the main application's .NET solution. That application service will perform a LINQ operation on the `Product` and `Order` entities. + +### Defining the Reporting Service Interface + +We will define the `IOrderReportingAppService` interface in the `ModularCrm.Application.Contracts` project of the main application's .NET solution. + +#### Adding `ModularCrm.Ordering.Contracts` Package Reference + +As the first step, we should to add a reference of the `ModularCrm.Ordering.Contracts` package (of the `ModularCrm.Ordering` module) since we will reuse the `OrderState` enum which is defined in that package. + +Open the ABP Studio's *Solution Explorer* panel, right-click the `ModularCrm.Application.Contracts` package and select the *Add Package Reference* command: + +![abp-studio-add-package-reference-5](images/abp-studio-add-package-reference-5.png) + +Select the *Imported modules* tab, find and check the `ModularCrm.Ordering.Contracts` package and click the OK button: + +![abp-studio-add-package-reference-dialog-4](images/abp-studio-add-package-reference-dialog-4.png) + +The package reference is added and now we can use the types in the `ModularCrm.Ordering.Contracts` package. + +#### Defining the `IOrderReportingAppService` Interface + +Open the main `ModularCrm` .NET solution in your IDE, find the `ModularCrm.Application.Contracts` project, create an `Orders` folder and add an `IOrderReportingAppService` interface inside it. Here the definition of that interface: + +````csharp +using System.Collections.Generic; +using System.Threading.Tasks; +using Volo.Abp.Application.Services; + +namespace ModularCrm.Orders +{ + public interface IOrderReportingAppService : IApplicationService + { + Task> GetLatestOrders(); + } +} +```` + +We have a single method, `GetLatestOrders`, that will return a list of the latest orders. We should also define the `OrderReportDto` class that is returned by that method. Create the following class in the same `Orders` folder: + +````csharp +using System; +using ModularCrm.Ordering.Contracts.Enums; + +namespace ModularCrm.Orders +{ + public class OrderReportDto + { + // Order data + public Guid OrderId { get; set; } + public string CustomerName { get; set; } + public OrderState State { get; set; } + + // Product data + public Guid ProductId { get; set; } + public string ProductName { get; set; } + } +} +```` + +`OrderReportDto` contains data from both of `Order` and `Product` entities. We could use the `OrderState` since we have a reference to the package which defines that enum. + +After adding these files, the final folder structure should be like that: + +![visual-studio-order-reporting-app-service](images/visual-studio-order-reporting-app-service.png) + +### Implementing the `OrderReportingAppService` Class + +Create an `Orders` folder inside of the `ModularCrm.Application` project and add a class named `OrderReportingAppService` inside it. The final folder structure should be like that: + +![visual-studio-order-reporting-app-service-impl](images/visual-studio-order-reporting-app-service-impl.png) + +Open the `OrderReportingAppService.cs` file and change its content by the following code block: + +````csharp +using ModularCrm.Ordering.Entities; +using ModularCrm.Products; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Volo.Abp.Domain.Repositories; + +namespace ModularCrm.Orders +{ + public class OrderReportingAppService : + ModularCrmAppService, + IOrderReportingAppService + { + private readonly IRepository _orderRepository; + private readonly IRepository _productRepository; + + public OrderReportingAppService( + IRepository orderRepository, + IRepository productRepository) + { + _orderRepository = orderRepository; + _productRepository = productRepository; + } + + public async Task> GetLatestOrders() + { + var orders = await _orderRepository.GetQueryableAsync(); + var products = await _productRepository.GetQueryableAsync(); + + var latestOrders = (from order in orders + join product in products on order.ProductId equals product.Id + orderby order.CreationTime descending + select new OrderReportDto + { + OrderId = order.Id, + CustomerName = order.CustomerName, + State = order.State, + ProductId = product.Id, + ProductName = product.Name + }) + .Take(10) + .ToList(); + + return latestOrders; + } + } +} +```` + +Let's explain that class; + +* It inject [repository](../../framework/architecture/domain-driven-design/repositories.md) services for `Order` and `Product` entities. We can access all entities of all modules from the main application codebase. +* In the `GetLatestOrders` method, we are getting `IQueryable` objects for the entities, so we can create LINQ expressions. +* Then we are executing a LINQ expression with `join` keyword, so we can be able to execute a single query that uses multiple tables. + +That's all. In that way, you can execute JOIN queries that uses multiple modules' data. However, if you write majority of your application code into the main application and perform operations on multiple modules, then your system won't be so modular. So, here we show it is technically possible. Please use at your own risk. + +### Testing the Reporting Service + +We haven't created a UI to show list of the latest orders using `OrderReportingAppService`. However, we can use the Swagger UI again to test it. + +Open the ABP Studio UI, stop the application if it is running, build and run it again. Once the application starts, browse it, then add `/swagger` to the end of the URL to open the Swagger UI: + +![abp-studio-swagger-list-orders](images/abp-studio-swagger-list-orders.png) + +Here, find the `OrderReporting` API and execute it as shown above. You should get the order objects with product names. + +Alternatively, you can visit the `/api/app/order-reporting/latest-orders` URL to directly execute the HTTP API on the browser (you should write the full URL, like `https://localhost:44358/api/app/order-reporting/latest-orders` - port can be different for your case) + +## Summary + +In the last three parts of this tutorial, you have learned three ways of integrating your application modules: + +1. You can use the integration services to make request/response style communication between your modules. +2. You can publish events from a module and subscribe to these events from other modules. +3. You can write your code into the main application, so you can access to all entities (and related data) of all modules. Instead of writing it into the main application code, you can also create some aggregation or reporting modules that can access more than one module entities. + +Now, you know the fundamental principles and mechanics to build sophisticated modular monolith application with ABP. + +## Download the Source Code + +You can download the completed sample solution [here](https://github.com/abpframework/abp-samples/tree/master/ModularCRM). + +## See Also + +See the following sections for additional resources. + +### The Book Store Tutorial + +In this tutorial, we intentionally kept the application logic very simple and didn't build a usable user interface for the modules. Also, didn't implement authorization and localization for the modules. This was to keep your focus on modularity. If you want to learn how to build real-world user interfaces with ABP, you can check the [Book Store tutorial](../book-store/index.md). All the principles and approaches explained there are already possible with a modular system too. + +### ABP Reusable Application Modules + +ABP is designed as modular from the first day. The ABP team has created tens of production-ready and [reusable application modules](../../modules/index.md). You can investigate these modules (some of them are already [free and open source](https://github.com/abpframework/abp/tree/dev/modules)) to see real-world modules. + +When you [create a new ABP solution](../../get-started/index.md), some of these modules are already comes as installed into your application (as NuGet and NPM packages). So, your initial ABP application is already a modular application from day one. + +### Guide: Module Development Best Practices & Conventions + +ABP team has created the [reusable application modules](../../modules/index.md) based on some strict principles and rules to make them reusable as much as possible in different scenarios, including modular monolith applications and microservice systems. + +These application modules are designed so that they are generic, extensible, doesn't depend on each other, reusable in any web application, provides multiple UI and database options, etc. In a monolith modular application, you mostly don't have such requirements. But, you can still check the [best practices guides](../../framework/architecture/best-practices/index.md) that is prepared by the ABP team and followed while implementing these application modules. From a0cb7bda70806535c550264466eaa64e20183737 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 19 Sep 2024 14:40:29 +0300 Subject: [PATCH 08/18] Fix navigation text --- docs/en/docs-nav.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/docs-nav.json b/docs/en/docs-nav.json index 73a006cf0b..434219902c 100644 --- a/docs/en/docs-nav.json +++ b/docs/en/docs-nav.json @@ -147,7 +147,7 @@ "path": "tutorials/modular-crm/part-06.md" }, { - "text": "7: Building the Ordering module: Communication via Messages (Events)", + "text": "7: Integrating the modules: Communication via Messages (Events)", "path": "tutorials/modular-crm/part-07.md" }, { From 23d1462f8434cf19a7e8855eb4b31c8fd5a62394 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 19 Sep 2024 14:42:04 +0300 Subject: [PATCH 09/18] Update part-08.md --- docs/en/tutorials/modular-crm/part-08.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/tutorials/modular-crm/part-08.md b/docs/en/tutorials/modular-crm/part-08.md index 410a10cb00..be760ae06b 100644 --- a/docs/en/tutorials/modular-crm/part-08.md +++ b/docs/en/tutorials/modular-crm/part-08.md @@ -10,7 +10,7 @@ } ```` -In this part, you will learn how you can make database-level JOIN operation on data of multiple modules, when their located in the same physical database. +In this part, you will learn how you can make database-level JOIN operation on data of multiple modules, when their data located in the same physical database. ## The Problem From 63b1275253480ed1cd10d3b6b11d3052e920c0a1 Mon Sep 17 00:00:00 2001 From: EngincanV Date: Thu, 19 Sep 2024 15:12:52 +0300 Subject: [PATCH 10/18] Update part-07.md --- docs/en/tutorials/modular-crm/part-07.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/en/tutorials/modular-crm/part-07.md b/docs/en/tutorials/modular-crm/part-07.md index 3926e1d9b7..55d09ae64f 100644 --- a/docs/en/tutorials/modular-crm/part-07.md +++ b/docs/en/tutorials/modular-crm/part-07.md @@ -18,8 +18,8 @@ Another common approach to communicate between modules is messaging. By publishi ABP provides two types of event buses for loosely coupled communication: -* [Local Event Bus](https://abp.io/docs/latest/framework/infrastructure/event-bus/local) is suitable for in-process messaging. Since in a modular monolith, both of publisher and subscriber are in the same process, they can communicate in-process, without needing an external message broker. -* **[Distributed Event Bus](https://abp.io/docs/latest/framework/infrastructure/event-bus/distributed)** is normal for inter-process messaging, like microservices, for publishing and subscribing to distributed events. However, ABP's distributed event bus works as local (in-process) by default (actually, it uses the Local Event Bus under the hood by default), unless you configure an external message broker. +* [Local Event Bus](../../framework/infrastructure/event-bus/local/index.md) is suitable for in-process messaging. Since in a modular monolith, both of publisher and subscriber are in the same process, they can communicate in-process, without needing an external message broker. +* **[Distributed Event Bus](../../framework/infrastructure/event-bus/distributed/index.md)** is normal for inter-process messaging, like microservices, for publishing and subscribing to distributed events. However, ABP's distributed event bus works as local (in-process) by default (actually, it uses the Local Event Bus under the hood by default), unless you configure an external message broker. If you consider to convert your modular monolith to a microservice system later, it is best to use the Distributed Event Bus with default local/in-process implementation. It already supports database level transactional event execution and has no performance penalty. If you switch to an external provider (e.g. [RabbitMQ](../../framework/infrastructure/event-bus/distributed/rabbitmq.md) or [Kafka](../../framework/infrastructure/event-bus/distributed/kafka.md)), you don't need to change your application code. From 67efcbc917f7375c3e62686b215dcb182dcab57d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Thu, 19 Sep 2024 15:19:12 +0300 Subject: [PATCH 11/18] Fix part 05 navigation --- docs/en/tutorials/modular-crm/part-05.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/en/tutorials/modular-crm/part-05.md b/docs/en/tutorials/modular-crm/part-05.md index 4f4cb68f5e..2646605855 100644 --- a/docs/en/tutorials/modular-crm/part-05.md +++ b/docs/en/tutorials/modular-crm/part-05.md @@ -8,7 +8,7 @@ "Path": "tutorials/modular-crm/part-04" }, "Next": { - "Name": "Integrating Modules", + "Name": "Integrating Modules: Implementing Integration Services", "Path": "tutorials/modular-crm/part-06" } } From dab951512099b3df074712f4906a190c2b0644c6 Mon Sep 17 00:00:00 2001 From: sumeyyeKurtulus Date: Thu, 19 Sep 2024 16:59:15 +0300 Subject: [PATCH 12/18] update: small enhancements in terms of readability --- docs/en/framework/ui/angular/modal.md | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/docs/en/framework/ui/angular/modal.md b/docs/en/framework/ui/angular/modal.md index e128b21e8c..2b8412202c 100644 --- a/docs/en/framework/ui/angular/modal.md +++ b/docs/en/framework/ui/angular/modal.md @@ -195,11 +195,13 @@ The modal with form looks like this: **`options`** is an input typed [NgbModalOptions](https://ng-bootstrap.github.io/#/components/modal/api#NgbModalOptions). It is configuration for the `ng-bootstrap` modal. -Example of options: - - `animation`: This is an NgbModalOption property of type *boolean*. It controls whether the modal opens and closes with an animation. By default, it is set to true, meaning that the modal will have a smooth transition when it opens and closes. Setting it to false will disable these animations. - ```js - import {Component, ...} from '@angular/core'; +**Examples:** + +- `animation`: This is an NgbModalOption property of type *boolean*. It controls whether the modal opens and closes with an animation. By default, it is set to true, meaning that the modal will have a smooth transition when it opens and closes. Setting it to false will disable these animations. + +```js +import { Component } from '@angular/core'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; @Component({ @@ -212,22 +214,21 @@ export class NgbdModalOptions { this.modalService.open(content, { animation: true }); } } +``` - ``` - -       If `animation: false` : +       The result of this configuration would be like this: -![Modal example result](./images/animation-false.gif) +![Modal example result](./images/animation-true.gif) +       On the contrary, if we set it as false: -       Otherwise, `animation: true` : +![Modal example result](./images/animation-false.gif) -![Modal example result](./images/animation-true.gif) - `fullscreen`: This is an NgbModalOption property of type *boolean or string*. When set to `true`, the element will expand to cover the entire screen, hiding all other interface elements. When set to `false`, the element remains in its regular size and position within the page. ```js -import {Component, ...} from '@angular/core'; +import { Component } from '@angular/core'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; @Component({ From 33b466859a25386e6d0f62e86ac4ca50d85fd5e0 Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Thu, 19 Sep 2024 22:35:08 +0300 Subject: [PATCH 13/18] Add Localization. --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index ddf9d1e4fc..58755efd2f 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -578,7 +578,7 @@ "CreatePostCoverInfo1": " Accepted file types : JPEG, JPG, PNG", "CreatePostCoverInfo2": " Max file size : 1 MB", "CreatePostCoverInfo3": " Image proportion : 16:9", - "CreatePostCoverInfo4": " Download a sample cover image ", + "CreatePostCoverInfo4": " Download a sample cover image ", "ThisExtensionIsNotAllowed": "This extension is not allowed.", "TheFileIsTooLarge": "The file is too large.", "GoToThePost": "Go to the Post", From 644888e7509226d7956ff9444fdc6df6037a82fc Mon Sep 17 00:00:00 2001 From: Dogan Yildirim Date: Fri, 20 Sep 2024 02:45:51 +0300 Subject: [PATCH 14/18] Update en.json --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index ddf9d1e4fc..f301eed794 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -977,6 +977,8 @@ "UISupportExplanation": "ABP Framework itself is UI framework agnostic and can work with any UI framework. However, startup templates, module UIs and themes were not implemented for all UI frameworks. Check out the Getting Started document for the up-to-date list of UI options.", "MicroserviceSupport": "Does it support the microservice architecture?", "WhereCanIDownloadSourceCode": "Where can I download the source-code?", + "HowCanIUpgradeMyProjectToCommercialTemplate": "How can I upgrade my open-source project to the commercial PRO templates?", + "HowCanIUpgradeMyProjectToCommercialExplanation": "You can check out our documentation at Migrating from open source templates to upgrade your open-source projects to the paid PRO templates.", "ComputerLimitation": "How many computers can a developer login when developing ABP?", "ComputerLimitationExplanation": "We specifically permit {0} computers per individual/licensed developer. Whenever there is a need for a developer to develop ABP based products on a third machine, an e-mail should be sent to license@abp.io explaining the situation, and we will then make the appropriate allocation in our system.", "RefundPolicy": "Do you have a refund policy?", From 0ee4a305a3efded4863a426136d22de14495fefc Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Fri, 20 Sep 2024 11:48:36 +0300 Subject: [PATCH 15/18] Bug fixed - Section Rendering error. --- .../src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs index c3c1ae9643..75b08bf01d 100644 --- a/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs +++ b/modules/docs/src/Volo.Docs.Web/Pages/Documents/Project/Index.cshtml.cs @@ -542,6 +542,10 @@ namespace Volo.Docs.Pages.Documents.Project Document.Content = await _documentSectionRenderer.RenderAsync(Document.Content, UserPreferences, partialTemplates); } + else + { + DocumentNavigationsDto = new DocumentNavigationsDto(); + } var converter = _documentToHtmlConverterFactory.Create(Document.Format ?? Project.Format); var content = converter.Convert(Project, Document, GetSpecificVersionOrLatest(), LanguageCode, ProjectName); From f2e1cca8416567dbdb0c878a7881eec31223e482 Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Fri, 20 Sep 2024 14:12:44 +0300 Subject: [PATCH 16/18] update localization --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 58755efd2f..45d49ec2f4 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -578,7 +578,7 @@ "CreatePostCoverInfo1": " Accepted file types : JPEG, JPG, PNG", "CreatePostCoverInfo2": " Max file size : 1 MB", "CreatePostCoverInfo3": " Image proportion : 16:9", - "CreatePostCoverInfo4": " Download a sample cover image ", + "CreatePostCoverInfo4": " Download a sample cover image ", "ThisExtensionIsNotAllowed": "This extension is not allowed.", "TheFileIsTooLarge": "The file is too large.", "GoToThePost": "Go to the Post", From 10b80d35ac85c03dbf5f26794e4c9c2c21d1195b Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Fri, 20 Sep 2024 14:27:06 +0300 Subject: [PATCH 17/18] update localization --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 45d49ec2f4..6cc900c94e 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -578,7 +578,7 @@ "CreatePostCoverInfo1": " Accepted file types : JPEG, JPG, PNG", "CreatePostCoverInfo2": " Max file size : 1 MB", "CreatePostCoverInfo3": " Image proportion : 16:9", - "CreatePostCoverInfo4": " Download a sample cover image ", + "CreatePostCoverInfo4": " Download a sample cover image ", "ThisExtensionIsNotAllowed": "This extension is not allowed.", "TheFileIsTooLarge": "The file is too large.", "GoToThePost": "Go to the Post", From 5d17459f384ecad6cac47521890e00418b566901 Mon Sep 17 00:00:00 2001 From: Fahri Gedik Date: Fri, 20 Sep 2024 15:24:45 +0300 Subject: [PATCH 18/18] Update Localization --- .../AbpIoLocalization/Www/Localization/Resources/en.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json index 6cc900c94e..d5b27487f4 100644 --- a/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json +++ b/abp_io/AbpIoLocalization/AbpIoLocalization/Www/Localization/Resources/en.json @@ -578,7 +578,7 @@ "CreatePostCoverInfo1": " Accepted file types : JPEG, JPG, PNG", "CreatePostCoverInfo2": " Max file size : 1 MB", "CreatePostCoverInfo3": " Image proportion : 16:9", - "CreatePostCoverInfo4": " Download a sample cover image ", + "CreatePostCoverInfo4": " Download a sample cover image ", "ThisExtensionIsNotAllowed": "This extension is not allowed.", "TheFileIsTooLarge": "The file is too large.", "GoToThePost": "Go to the Post",