From d859b5dbc6d667ed52b242a053462c072ae3d6cd Mon Sep 17 00:00:00 2001 From: gwbvipvip Date: Thu, 7 Mar 2024 20:51:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DesignTimeBuild/.dtbcache.v2 | Bin 300165 -> 300165 bytes .vs/BPA.KitChen.GroupMeal/v17/.futdcache.v2 | Bin 1244 -> 1244 bytes .vs/BPA.KitChen.GroupMeal/v17/.suo | Bin 707584 -> 723456 bytes .../bpa.kitchen.groupmeal.metadata.v7.bin | Bin 274290 -> 280235 bytes .../bpa.kitchen.groupmeal.projects.v7.bin | Bin 7491824 -> 8022312 bytes .../DiningPlate/DiningPlateServices.cs | 92 +++++++++++ .../DiningPlate/Dtos/DiningPlateDto.cs | 59 +++++++ .../DiningPlate/Service/DiningPlateService.cs | 155 ++++++++++++++++++ .../Service/IDiningPlateService.cs | 58 +++++++ .../Entity/BPA_DiningPlate.cs | 31 ++++ 10 files changed, 395 insertions(+) create mode 100644 BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/DiningPlateServices.cs create mode 100644 BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Dtos/DiningPlateDto.cs create mode 100644 BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/DiningPlateService.cs create mode 100644 BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/IDiningPlateService.cs create mode 100644 BPA.KitChen.GroupMeal.Core/Entity/BPA_DiningPlate.cs diff --git a/.vs/BPA.KitChen.GroupMeal/DesignTimeBuild/.dtbcache.v2 b/.vs/BPA.KitChen.GroupMeal/DesignTimeBuild/.dtbcache.v2 index 544a97a5a0246869826df71f8ca7fa9a2bbe83f2..0beef2d76ee16baa450cd2a7b802768328c3f224 100644 GIT binary patch delta 3485 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 diff --git a/.vs/BPA.KitChen.GroupMeal/v17/.futdcache.v2 b/.vs/BPA.KitChen.GroupMeal/v17/.futdcache.v2 index d32dd2f0c1117d163efc2a13737a6570b2426990..099fb77257f9d7b2d60535c8885d0bad7d125eae 100644 GIT binary patch delta 72 zcmcb^d53dCC)>&UYiw_sOzfY}>DMZ1dCTMuN7UqVj3$$_8KcQiT(3ACvE$3qQdwNN7UqVj3$$_8Kc;|`kx=EFrIvxaVDqg VlaZ6t^I0ZTvuSPRyHE})yS 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 delta 19046 zcmeHu34Bf0_Wxb`oO|y%HzAQpL}U`AMBGG#7;kPuV-BT;Dlw#nssy1m=Em5P5;>Jc zi$+S6(uQE0UBgdRl~BA^Jz^+*C^5EG<+t{|386Z?;s5`=-|zDd-|X@1VePfoT6^tt zZSREJ7SziQZ|kDd=@`NBxa)LHD54M^Jbd_2{;GOcEa-K?{yhem_-f^Y)vv^0N{NLi8Kgl{7zv3Oi#1(l*46YvKJ&Sil z*>CX9@3M|y8}aVTf?+E1j>sHEg@SiP{P%cAlt0ZoBG1V?&t@G_E?7r|;u$KorHD9q zr>)=}krKQkLh;xr{#(2w%Ad(Q{Fm;~477ApA6f7pF6aRX&R9tg2#OZ(#ZkLc33Uk5 z3G)adzXpX{2w{ZTgysa1uSLHb)IvnW^A=^kTUM~BENo0+YFS*=`G(>zR7mFu={PT2 z?kKqYw;)DqE_>;Ut2WL3=igIHq1$^T~s@$2B=`8_SO;{S|vHqTN@KRJI8CUmf&q>mq>hg zb(N{Rvf_ij+8gcfgPS&{Lk9a6w7VTTYVkcAX>W8Sbu}hRPZc+L@O#~%9bm#)=%ADj z<|!77oIy3?2vZ3aSuBgv&tkD5T4YG|)}pnysfGvzi~NuAnTZDREIw=W5Am7S_PxN2 zzk{3p<;>JWH&m0ncK!C6d%u~}*8^QO)r6&UO(8`s{dYr7w@@wA5-Pt!v~Zdvl2=i> zB@1%uhZTi&s}4f#XzAUva+1@bi8dxV1ERD$$({5dbXm@ka6K`lZn!qC|4hwRm)LRC z5>SL_>-?y}(Lp(tH9(8^Ci1_XrP&%#M$-_Gh0=aZ zs%BX^9tqlBW@hIkZLCK}6=7L}*Bfh@?+VL3h1wc9=Ywd|gQV5oMdX9l~e)5i9irP*TNz@RItqS;Pgi}v}c z_{_l!Ppx>)-qi-a>w<6Y=2e$lxNT2KKib{CrnS&`k7Trg;$q3P{4;&?yE3%xBerUC zJ6v0BH)*9W8MO4!q*tkj~G&r6Y~t zsV%rOWSwt3s1CcO6}4MFWi7p0R!)cXXG%DSWzLrAi|+L@u$-*WqR};u~9V@`M+`j)~yz-IqZ~#H$s^wE;qWg#s!MYChdq+Q!A0^IPoW7 zX8QbDEO!9xb=nI12Y|mUY%%<908Dh|4H*ava;g)*rJpqBj7T@!q~e(~wDBX_DI~8S zR;FY*so5!}-5oKRon+eBRN}r4R3=PIXL;qI{K?EAN&KplmJ%;depD!V89pYZG#<3^ zZnQtDcU7)ZnRs&F1dHXw3s$T9TH~d6Qs1$4?P9fNt!cS#cCP-DuPOe1^vw;+!e+PW zKymTHsMIlO9aH)bkBCnll@ii)LdXlLV{)^J)bkcYIJZ-Cpq&fxD)O4imdQ&hv|Dt0iYw&XS^hf=tp~w( zUUu_HACfUu3BH7C1V2J`f&)4&SDucmeS)aYNS}z? zFI!^v=T-(^X$$Bul2ez%H$gsF9dU@zGCDtpVbPETm2q4&w3oB!Js~h}M+2?X76Xpj zu4ZF)6r|CqV+e6bZ>rGOmq@14!7|u+$edS`j7cG<$!HQbX$;xnkwlF#;X0kLhH}Wv zo<`xECUgWh>U1|rxQTZDYSHQDlK{0nPy3P5KX!D6r)mFwOYa{hQ(WY~+l@@knly1* zF2{4FyR%^9i&Rh{AKhE20sg|c_oQy7Quqyp%c({d4OgV`R6_{O-!0>aP0-tzpi3vQ z6@h0{)vB1*PxXT5aNcI{#BQ6xs~$0iFlu!)5}g;JIUTu2=w2nH(iwY%!@EG)x@VBK zS^j>8=B?m|lQ%)TU-zSbj@~LBN#|L z&hS?)rE8WwjxF8<3sJI z*cV#k+rbj?$fNDxf$g?Jj9Utwn}+H}k>4hr4w4lZA@~m&0k3R<(Kza&>R04fauKla zRtWKYsy&+7|BVG#1w)BP<{R2Tdni~BU@XhS8-3JRcVQDb3U`E?U zu;p}$7ZzYqdZ#SFDTjeL(p4nx2&eX$)S(JX8kWO{xQaFgVg=T5)1ct*nA)0pebkUxhmo|MX3`J}C>~20(6{ZXVdy@w7!1tdtvHFeg1s~M@w%8&^eGs$-HZ|AIKZcl2O z?1-0oI@6iGbh-l`X_s^NXx#5sRlly1PsQFKrQFh7H4!7-4efTUhjD?(Y7FRQo)Qu2Cz!Fm>8W3*JFs!E5iEX^`B9!u*Qt6{VsgtG*~{G=P;?JQF(f>iys$v zz9Kp2;u;wl-pK5n%seV@k4djcKH|+lEF28}5lebzx@FAzuF1e&R_mH3{!lgT%!KIv zR_i;-RX$5=Fyc&?fmW+@%rCXC|H(C9q~M83(9Se{THhAO+cu9oFa!feK~z({+N0%| zbv|yVhghv+R*$ov_`ccdoTXN4O1)3ljqQJGt~gtyc%Sgv*748?X{gmYs(A0_k&73y zIca!0g^ZIvqaZYQG?+8C{CvgxSi7$p?w}XCo;>hFT>rhPFVXGNiM z_R#M%wfV;3kXO&llMS!aAWqzMdAV2Wbmh`at2OYQhyA{o7EyKn;S{U&e!YxoX6G|$ zVq{cQc&wH^WB`5~XsoWe4h@qVHVHRV&L=RI=oyo{%2)}Lu1T`{#0h0@nd^&4eQn23 z>qY}K2l-VJVp`fgAD5`u@Mz~+q|v*9P(Y58jDQb%C$|zEU#~rKz?%G2uMw|Wt$W*+ zR`H&{?%U2?uCp10-h-*@V2oz{)w z-Zd*P4EP~Exz|8EFdCvvrGM?V|J7y6q^@1?UIw%@wQ^au@J{}TgncO(V}mH~x30SP z=|9!$lPGF)_2h!2!u-~w4q%E6Qcauv&AvJ5!=?=Ag-2}=fwoLKsN1GP5UkQNV>2*s zx;VX4=0*j`uDY>Q_I2z>!Ce6xTf!djbx>r|#6~gUWjvTPDs}Lv{;vtnuC;L**Z@nW z!y+|%)T(c*)$8}uKpZy%p7#^XnEuY#xov%ZSSRA=GW;3Hw%BANlpYD{XD#_ zT?p}?m)+za6pyN~0a8e$k$?KtKjjc>=Wyr=XUI-+=(QhT(Q7lAT>x!tM~8dbu#8$I z_I%K9Yz0T;RB-qn{~j;JEI%O8$OsZa_{H@E1HlNI-^2)(!5nr3FYyF_HZOYhx@PCW#L z#50L>^JKy#9o~zFwyNW5gN|K~eG;qwv(>)d555oMv zp$7j#_=@l~;UwYFt7-ipJGVFNRp?;txC<_K^Wg2?&{@?jr|hK!k&VeOL7q5^_;ddp z7zAiXu;nI0f+BcwY*{TqaGst_UeVlzBup#|z>b!M^vAZC#L6PtaNNEaya0zR2VZf- zb9m$Uv3v-ZazBI@15?6=4)@H_UAdOCe&>)|jlQ}z=DO?c!v%3sn;TXO%wL7`Lckkm zeF$WJ(MJWITK)oRMg^~pE2(WQjCt{QR>5j;qjMe&$@x5S=HtWGK`wjZV8Q7KVV8f` z*T>1%*At$w7b@Ba6>W!q)LvLY_5%DzeOFN5bsnkj|IHee+ouX``VXo_8~m$1y#F7Z z^uM8TSCGb)9C8DHSxnBHstd_4_P;|!tRNAgf7X%iUvjg->1HF2<=UZzG0AaLtV2jq zV@do+qx}%c$gVAe{K!#g)rsN=UHc$9w}{Itl5w)GuGVFCU2Jj~TFZK!b)PUnx$Sc@ zs4$9?3_kid)r)(50mDgTyRfg=ZHD&KkSz_;rC{7iSd3|xAORN~h4mP^pL`s7UqTQj zAA>250?5ZM$6zT8MmSDOW;qUQ;&ARI{xW5Fb=4VeHi>59i!4{ z?w*6`Glq0>X7(YEsWUcO>vG2vKXBJ~XLOMp{8}K|zbEIA&(BbIh2BwCi9gV0z$|s(M-x4~5Rav%Z6|Xt^bh`hOE9sO=Wm&~gPVxwlDE z+Jp6^IPX%HEmUvccuy>(B}yNnd3+Fn=i=1_ZQtOgxZ@YFnrF_C9NyZ{l-S5dktvO$ z>PM&aA5=d&w#lIS{ToI#sc(*nO=%nz**~_)z}UsQsd(c#=@36uXovtTzGE1Vr9GrX zOdeuX_%#n>9N_q#Yyhr&01eTt7rTZ^AJ&FwN>=mlv*R7A@+@{F{&lb;+IG=&G9QrY zHW#pF*zaZ51P@=8c47Vm#&ZwStUXdp(PXDTX7P<*kP8M!U4;-VeOq&+ee#2N?MVtA%qz&)#aW2*k-^_Cdn#p;_OwP{JOD6SuaW5WN)HSVS(HqA1pI8@|`!3JK;f~P;C zrEtWugCqxm`r-4tjg9$)T}BCzXj#bLY{{wtpR}H}Wuo=ry!43S1#osG7y*e9TB6$m z*~o1(Bsy8`+sMYcIaZ9*ijfklagZ&?r1w}A4BTdDfZ6Y{mCl&$XGz7*;cOWc5a45Og$vG%V=I{(Bu1e4J|kce^=l%iLX6TOpVjj_5uIy7F)0C zr;vL5h3iY8A&|U?Jqw>=|59T(9$2L`M)Ngl&3scy!P1A!!f8kzu)!=9OBZY1tS6)I2zfUKbzoh^UfPBvZrXGEUa1tS2nVtAiLh@G5q`az z@dSf?n7M-Wcc@Grcuw+U+}p=^T7t)__5|~pU-l~9QP?k2JerX30Ou9UyYTQJsU@by z>2L9eIfg~xGx$+mfBSff3r9!74|pU}TIS@Zqyel6@H4lifkE`e2oGB#eMPRiaV#BU z$FL}ep5iMLjCJbb^4-$z#}e*ofmhjR{EqlGT6Wb7)!mRE9AOMnoN|z#U`B=cOer6W zt+8FqLHN-U&SKnN!)gqgrRdSN)DVf+7fV%yB$(^SKGj8r^RY)zC>ST<9PT=1*u>AQmWDC1!^H|!;oFWG`bhlT0^`H#xcs!?nUa-H z_|7m0_}TSFl;E78<0nF{4rPvIFo}lhi4Ghj{)CfYeVy?}y9`WHAC=+R`YM^I7uZKw zoTcc6XuZi`C7vynzvr)RU@rkboF(^X;F#Y&AxuAZwvUT;(?$>3Zfq;@0L}#N!w8JJ>cs47mHJa+ON3{1F>^VBkcfo(FwsSSDfeE?K7YjGLcwLyyUx%nzx$ z3$GQTd_yYxG@Fm_*HfBv68k2=Z|W(v@Ni3ICzjSz+&RS}rQDrH1AdmE?B@FulBt#iVRS#RapK z7~U&eStjvgbERRDr-Q>5v4o~(`Zu9*Oyih%-sJ`3q{n7h4=l`NRrvdp*;2qGHKlE6 zE@d_Fm7hqUXZ^@ZG4451><9bM3X+&S?uNHq(ChTEnwJK#Jc z3+CbPD#s*rPh>8*bTpfW_JKw{&VAMBi5WwT(VT29vK7`oV2!vXPdNy_aVbdz!k_@X-u3}{`cjK-u&k{@5VMHxk+U=j<* z;htoiIgH7|8%9@$fywFI?oCqdcg)O1Di+@&%iDa@_&31Joh1Lh-ls(3C%No2FFc`i zAqo8u$hTy4wmuTuc}WSJI@=xmKVhI&Fa{&YFhw#{^5c`;MWpe3KHhW+1S(?x-mH}EnZfl5ypwCFxUKJc$LV_T93 zdz0ZsOq(WEW_8=(jbbSZ)7~Z{P~=E;VIZE}WautZ-7s~!6kkPLk~yCU`&EjlP9q!s zX~Xwn`~R4>|FmiAQo*#v$WXN;}O16@Shh{5Le`FKu9X2tpolRzK$#wRc!_?(u>Q;d=Yc;I} z`Bp5E`e>f9PoD``xL&EpYve2EpE55;00sxL`n<^@=laYv?qD# zedb2Tmq^16ocodDfdL;W7afWKW7jDApEekg3`Q3OHzkA5DpsiHc^}GQx%o;B-ewm+NuATVDYBc~6bmKA%;)+jBY}5tl{%A8 zF<4pq)Zmc@-wvzDYAbZJ()>%K6*nAqUAZR+wFW~J`s3;$MPkwf<91GqZ(&&2mrj_@ z@q0;g_?*kiTh!xG_8KQAFA?siTZ+eus#g_;^RCN1(Ja%QfunKT9VMN+$0|2ux)Y&k zL_UOSV!)Tk9r&{{k`pzj(OLPNzBQIKR9twHtQJa~exi3%kB7jxK{(%XYp8C#xF@M+ ztXfSyiF4Yi@#2X33wqp8Iyi>TY3N%R=1gMsp7hdftf7);b>wyBbu1r>H|Pho9q~#k z?rKIPNP1|fh3?&m1nvQ<0gF=%)G|5 z+?uKneq3K|$S*ZjtIMD5oc8*OVIaZSHD-$csC#~`*r3w#RMqU84 z$I^|1Wr0f0zja&+#fj$)<8Z`9Lr<jygbM@lmseRAq)0CA>;&B2`oYGXXGLZ!iSIwAOdtX^SQWrceEQTih7 zxO2));=D#u0C#saEj6O@h2roQ4`I0nsQaCuw#Fj|=`!N`wW=o`TB}Ckq_yf)@uD8E z%VKGW@KDM;jj7onkA_YOn9+g=L~f|#qRBflj+{fc8rkWRjIa8bRP=H;1z?G{$rG!; zMI!Z6A5$#kTIK0DH$h6`$NfyfMx1Apt?1`rau9kkrx?OBh8Bw>XVJyTp%7DRJX}?c z#KKXa=XoKf7isPD3~x9`g?rpgExFmpM0XMWqH{RF$UpuZU{(WDI@S+28F^le+M5WQpvGcOch!ov z`E;?`=W~)3<~vY~YhRbEV=1Gru=DchZf0w|RGYU8Fy%pRDShgdsMz6;#aLbU)K#moTMiExwE;Hj0=7LO-9n-$y#SYc~P-MO`ud~)lWdj25^ ztlZX0B|S0VipgA*b}^f_P@I~NB?+n@&WKm1Ie$dj=UY=apB!gmboJa?jp3FA)dUXz zadSGt2p4eqCvt8PGE=RSs=T4_)w315?zaMS6+h?!9scObb>O{$KS?z7;<%(5y{D z@VgeYa#4xu9I+(g`+|aaazxSsSRQ|3klRJIlzm}f>7v>kUl?G>PY}QZB2DKQx3{D< z#G@@pB>R-YuoV`IN<(QK+G&xR9E?eR!D7E*QOWZC&EnibpYttsq)FT48GoHG)SZt4GC;!s$~D{I51@vtNC9i|%{qtBK-kG+O%O zg@w;k%)PbR^zp*sg`q5bFRRf=RMh%d8_660$N7T>Z=KE@KB~;Ft=)(YC(`hhhF!nqa{z!w* zKBCInwtgnQE!vbIZ9He1BcZ%iU4*4;sOO`XOtouhC!~O1eZKnSFPA-V_Zw;=2CY_o edGdHQwCbZdHxG6WoYO!e@FbB1RB=N=L(1-zBUO>5M+D|A`_r8q@`?NzD7|YQ*%`G zj((MyI9BE`8jQl7(!eHX$|fIVqxnEZM>9=)Wuv9pxx33Qc?svZb`@a9b z_b!<0)>-s^*%m+fL-DJ8Fr58ZpmO|FFHCt(SXNZ8tY#~#d1E!D?n)Uaw;5l~7+p9p zb&x$dQ?3jHlkGzsjzJk&+CqDjk~AcFytYV5O>!i^lrcCRt+yy$*Cr2GgZ4I_g^4G5 zlyW-5ghPkPAEP3vTd=dd%vr(wp49FuTz$^4T-%oh$7j^S$`QYZ<>Aox+=6L;aifv> zKc2d&sNtNUX*U%KB%Y)g*b^xZMO9p{E0{R*^#Zj2&YsiOK>^IK_mBHE%rYhSp+lKl zV#fIv3Rmtd(yQrvDUq|)h_7W+@!_}Ju4kp!dVX5efH&JIU0HtLrnc47V}?s@e7z58 z4%&a9IT*8#s@YI%R4GDfF$LiKcia?EFu$a{VpiGQiUQcT^WlgMBrD47WI+CP3cMq5@r(_ap)*FVBJr=hwlg<*_izl%iebDcJU1FiJWi>>9P^IXQ&K48p+6N zaQ9C>8&i+)Fzg8mhtyGK;v z3m2SB>j1T`nQU4}U7fS*1P@lOCt0;@8!+-`9_r(%o;XBTIa})$FbqqANOnMHzu2VK z5$dsT2s$=t%ts)w zmK#m~)={yfy@r{WXbp-2X_}84EcawPU23K7>Zo>#VpzVIFZ1bD2)3K@vAm9S`0_IS zft{^13=VaQrX|RSe9Up{HjBn#xZlQzC6p8_lWF3_kIxSkVghwhD zX6SvJ%e2i7+^XdLB~8y!h_{n%%Svwf-}yVi`>Mh0ZSGElQCE3^yMY$E>4a_M;hnz2 zd6QB!k<1a=AePrN(?L4yiIwE6%{&kA0yo-C3w3vy#9Uti*SzUELS-YGpB*{b-awfp zqSs4TF5i&3)Z|)aO^RHgedqj0Udq|b6^_BEw20p7y+^b-+~U_!;eC4TlT96G)TI`2 z&>y0&SPOeL1tBMo2jNttn1bFhVk~Y(iAfl%Eq6qSp*R&K!Z0#gNYH*_2+Krq9#6&R zIb_`&E1t*J1d)b25h9PG(}$uVT14S~g1D>Rj}a4%*3nH1U5ES2|BvhQz0|6DiYgt- zpVFAkaUvccMT%5x3lz!N&{ssmB*Y+=qcrG}aG|f51*gA=!To+>I=UrD9`mC`DK7UH GHU9uHH{Y88 delta 766 zcmX|9X-HI26rTIe8AmPcz4?=5Wg51bIMP(+jHNkaO=&u4CJ}*SVnv}@KcloEXhF>$ z^c7(WNoA5tC08&@TCfO`vJFDP7K#?EX+@%XW7LIv;BvnEo%5aVwAN^WVbx+g3d_ubVs6gQQ1DdC+@oS9=jZu+b z2cLzO1zE~u{S8VN2;8C(vF*PiC#L6<<-aTx_fxJOw|kR*q%=aFx=ry4ss||N=+`Jc zeQcH-xl8L6dH)`DnDy9fyPlI_k+w&)jAY;`-DK#ki z&9NEnALt;ofRcvB=OP8#DE*N2AE{8FEI@BXr7?+osBeW;YG3G$fcG2K!FP+62Js#_ z^qtlV;WK1=Wz!hdPQnhA_gHHk9?cIDY& zB<9JHIb0uteNLW&b(y?I<*n*~HjzpJ@3(%I#i!p7c0S?Pzt5`iwi1u8vVw;UU=$_5h za=xAO!?czI+s8W$Gh*MnlmVdA&Iz(7jrW;RnZ$>2^_voj87_{1&&3Tv?s8mma2lfB T?877{*BEQo;N-nHnZ@cKq2UzL diff --git a/.vs/ProjectEvaluation/bpa.kitchen.groupmeal.projects.v7.bin b/.vs/ProjectEvaluation/bpa.kitchen.groupmeal.projects.v7.bin index f7b34107c6b7324a351e727ba461ef5877d86861..84fdc7a8e2212f118802393e21d35476475ef166 100644 GIT binary patch delta 452 zcmZvVIWL1@0D$wgw63D=`>HzXzR$Yvw(7oHw`!HP5*s4%BwZVk7))YdBq8r_5K~PC zi_wI^U=fj6H1_9sJG+x#KD@{ekdPrKh+q^b2_cj)!ihjdBvC}8CWctzh$n$Wl1L_n zRMJQ%gG{o>CI=0aCdH+c7zcCoK?9PS9!v1L*w8GrYt WpS|h-y|^-Jt*YN@fbgffxAP4L%(O@V delta 239 zcmV~$Lt2Fa006+R{%qT}Z5uD!HcrrDF4C?8bcwdzqTM?}Ghe@dLHP40_z)pdAWF0t zvEsx_kSIyA6sgjr%aAEcwj8(Hr7 zw;sLv^cyf}$gmNk#*CXVY09)2v*yfOuxQD$6{|wltlO|@%eEc6_Ut=w=*Y1Xr_P+a YaOujm8@KM + /// 分页查询 + /// + /// + /// + [HttpPost("/api/DiningPlate/Page")] + public async Task Page(DiningPlatePageIndexDto inputDto) + { + return await _diningPlateService.Page(inputDto); + } + + /// + /// 新增餐盘 + /// + /// + /// + [HttpPost("/api/DiningPlate/Add")] + public async Task Add(DiningPlateCreateOrUpdataDto inputDto) + { + return await _diningPlateService.Add(inputDto); + } + + + /// + /// 修改餐盘 + /// + /// + /// + [HttpPost("/api/DiningPlate/Update")] + public async Task Update(DiningPlateCreateOrUpdataDto inputDto) + { + return await _diningPlateService.Update(inputDto); + } + + + /// + /// 启用警用 + /// + /// + /// + [HttpPost("/api/DiningPlate/EnableDisable")] + public async Task EnableDisable(DiningPlateCreateOrUpdataDto inputDto) + { + return await _diningPlateService.EnableDisable(inputDto); + } + + + + /// + /// 删除 + /// + /// + /// + [HttpPost("/api/DiningPlate/Del")] + public async Task Del(string id) + { + return await _diningPlateService.Del(id); + } + } +} diff --git a/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Dtos/DiningPlateDto.cs b/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Dtos/DiningPlateDto.cs new file mode 100644 index 0000000..5841ad7 --- /dev/null +++ b/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Dtos/DiningPlateDto.cs @@ -0,0 +1,59 @@ +using BPA.KitChen.GroupMeal.Application.BaseDto; +using BPA.KitChen.GroupMeal.Core.Entity; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace BPA.KitChen.GroupMeal.Application.Service.OneCard.DiningPlate.Dtos +{ + + public class DiningPlateDto : BPA_DiningPlate + { + /// + /// 是否占用 + /// + public bool IsOccupy { get; set; } + } + + public class DiningPlateCreateOrUpdataDto: BPA_DiningPlate + { + /// + /// 二维码 + /// + public string QRCode { get; set; } + + /// + /// 芯片码 + /// + public string ChipCode { get; set; } + + + + /// + /// 是否占用 + /// + public bool IsOccupy { get; set; } + } + + public class DiningPlatePageIndexDto: PageInputBase + { + /// + /// 二维码 + /// + public string QRCode { get; set; } + + /// + /// 芯片码 + /// + public string ChipCode { get; set; } + + + /// + /// 是否占用 + /// + public bool? IsOccupy { get; set; } + } + +} diff --git a/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/DiningPlateService.cs b/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/DiningPlateService.cs new file mode 100644 index 0000000..e768ae7 --- /dev/null +++ b/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/DiningPlateService.cs @@ -0,0 +1,155 @@ +using BPA.KitChen.GroupMeal.Application.Service.OneCard.DiningPlate.Dtos; +using BPA.KitChen.GroupMeal.Core.Entity; +using BPA.KitChen.GroupMeal.Core.Enum; +using BPA.KitChen.GroupMeal.SqlSugar; +using Furion.DependencyInjection; +using Furion.FriendlyException; +using MQTTnet.Client; +using NPOI.POIFS.Crypt.Dsig; +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using BPA.KitChen.GroupMeal.Application.BaseDto; +using BPA.KitChen.GroupMeal.Application.Service.OneCard.Member.MemberInfo.Dtos.MemberTag; +using Microsoft.AspNetCore.Components.Forms; +using MathNet.Numerics.Distributions; + +namespace BPA.KitChen.GroupMeal.Application.Service.OneCard.DiningPlate.Service +{ + public class DiningPlateService:ITransient, IDiningPlateService + { + private readonly SqlSugarScope db; + + public DiningPlateService() + { + db = SqlSugarDb.Db; + } + + /// + /// 分页查询 + /// + /// + /// + public async Task Page(DiningPlatePageIndexDto inputDto) + { + int total = new RefAsync(); + var res = db.Queryable() + .Where(a => a.IsDeleted == 0) + .WhereIF(!string.IsNullOrEmpty(inputDto.QRCode),x=>x.QRCode==inputDto.QRCode) + .WhereIF(!string.IsNullOrEmpty(inputDto.ChipCode), x => x.ChipCode == inputDto.ChipCode) + + .OrderBy(x => x.CreateAt, OrderByType.Desc) + .Select(t => new DiningPlateDto + { + Id = t.Id.SelectAll() + + }).ToPageList(inputDto.Current, inputDto.PageSize, ref total); + return new PageUtil() + { + Data = res, + Total = total + }; + } + + /// + /// 新增餐盘 + /// + /// + /// + public async Task Add(DiningPlateCreateOrUpdataDto inputDto) + { + // + var data = await db.Queryable() + .FirstAsync(x => inputDto.QRCode == x.QRCode || inputDto.ChipCode == x.ChipCode); + if (data!=null) + { + throw Oops.Oh($"二维码或芯片码已存在"); + } + + data = new BPA_DiningPlate() + { + ChipCode = inputDto.ChipCode, + QRCode = inputDto.QRCode, + Status = CommonStatus.ENABLE, + }; + var res=await db.Insertable(data).ExecuteCommandAsync(); + + return res > 0; + } + + + /// + /// 修改餐盘 + /// + /// + /// + public async Task Update(DiningPlateCreateOrUpdataDto inputDto) + { + var data1 = await db.Queryable() + .FirstAsync(x => inputDto.QRCode == x.QRCode || inputDto.ChipCode == x.ChipCode); + + var data2 = await db.Queryable() + .FirstAsync(x =>x.Id==inputDto.Id); + if (data2==null) + { + throw Oops.Oh($"操作数据不存在"); + } + else + { + if (data1!=null&& data1.Id!=data2.Id) + { + throw Oops.Oh($"二维码或芯片码已存在"); + } + } + + data2.ChipCode = inputDto.ChipCode; + data2.QRCode = inputDto.QRCode; + var res = await db.Updateable(data2).ExecuteCommandAsync(); + return res > 0; + } + + + /// + /// 启用警用 + /// + /// + /// + public async Task EnableDisable(DiningPlateCreateOrUpdataDto inputDto) + { + + + var data = await db.Queryable() + .FirstAsync(x => x.Id == inputDto.Id); + if (data == null) + { + throw Oops.Oh($"操作数据不存在"); + } + + data.Status = data.Status== CommonStatus.DISABLE? CommonStatus.ENABLE: CommonStatus.DISABLE; + var res = await db.Updateable(data).ExecuteCommandAsync(); + return res > 0; + } + + + /// + /// 删除 + /// + /// + /// + public async Task Del(string id) + { + var data = await db.Queryable() + .FirstAsync(x => x.Id == id); + if (data == null) + { + throw Oops.Oh($"操作数据不存在"); + } + var res =await db.Deleteable(data).ExecuteCommandAsync(); + + return res > 0; + } + } +} diff --git a/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/IDiningPlateService.cs b/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/IDiningPlateService.cs new file mode 100644 index 0000000..8597b45 --- /dev/null +++ b/BPA.KitChen.GroupMeal.Application/Service/OneCard/DiningPlate/Service/IDiningPlateService.cs @@ -0,0 +1,58 @@ +using BPA.KitChen.GroupMeal.Application.BaseDto; +using BPA.KitChen.GroupMeal.Application.Service.OneCard.DiningPlate.Dtos; +using BPA.KitChen.GroupMeal.Core.Entity; +using BPA.KitChen.GroupMeal.Core.Enum; +using Furion.DatabaseAccessor; +using Furion.FriendlyException; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace BPA.KitChen.GroupMeal.Application.Service.OneCard.DiningPlate.Service +{ + public interface IDiningPlateService + { + + /// + /// 分页查询 + /// + /// + /// + Task Page(DiningPlatePageIndexDto inputDto); + + /// + /// 新增餐盘 + /// + /// + /// + Task Add(DiningPlateCreateOrUpdataDto inputDto); + + + /// + /// 修改餐盘 + /// + /// + /// + Task Update(DiningPlateCreateOrUpdataDto inputDto); + + + /// + /// 启用警用 + /// + /// + /// + Task EnableDisable(DiningPlateCreateOrUpdataDto inputDto); + + + + + /// + /// 删除 + /// + /// + /// + Task Del(string id); + } +} diff --git a/BPA.KitChen.GroupMeal.Core/Entity/BPA_DiningPlate.cs b/BPA.KitChen.GroupMeal.Core/Entity/BPA_DiningPlate.cs new file mode 100644 index 0000000..878d409 --- /dev/null +++ b/BPA.KitChen.GroupMeal.Core/Entity/BPA_DiningPlate.cs @@ -0,0 +1,31 @@ +using BPA.KitChen.GroupMeal.Core.Entity.Base; +using BPA.KitChen.GroupMeal.Core.Enum; +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace BPA.KitChen.GroupMeal.Core.Entity +{ + /// + /// 餐盘 + /// + [SugarTable("bpa_diningplate")] + public class BPA_DiningPlate: IBaseGroupIdEntity + { + + /// + /// 二维码 + /// + public string QRCode { get; set; } + + /// + /// 芯片码 + /// + public string ChipCode { get; set; } + + + } +}