From 27c0433458201adafbfa14fdf0015e539cbd2772 Mon Sep 17 00:00:00 2001 From: dd <535915157@qq.com> Date: Thu, 24 Mar 2022 21:38:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=B1=9E=E6=80=A7=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E3=80=81=E6=95=B4=E5=90=88=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vs/IoTGateway/DesignTimeBuild/.dtbcache.v2 | Bin 577076 -> 577076 bytes .vs/IoTGateway/v17/.futdcache.v1 | Bin 6326 -> 6326 bytes .vs/IoTGateway/v17/.suo | Bin 314368 -> 296448 bytes .vs/IoTGateway/v17/fileList.bin | Bin 125641 -> 121405 bytes .../20220323063908_attribut.Designer.cs | 801 ++++++++++++++++++ .../Migrations/20220323063908_attribut.cs | 26 + .../Migrations/DataContextModelSnapshot.cs | 3 + IoTGateway.Model/Common.cs | 7 + IoTGateway.Model/DeviceConfig.cs | 2 + .../DeviceConfigVMs/DeviceConfigListVM.cs | 16 +- .../DeviceConfigVMs/DeviceConfigSearcher.cs | 2 + .../BasicData/DeviceVMs/AttributeVM.cs | 56 ++ .../BasicData/DeviceVMs/DeviceListVM.cs | 5 + .../DeviceVariableVMs/DeviceVariableListVM.cs | 6 +- .../DeviceVariableVMs/DeviceVariableVM.cs | 2 +- .../BasicData/DriverVMs/DriverVM.cs | 4 +- .../BasicData/UpdateDevices.cs | 2 +- .../Config/SystemConfigVMs/SystemConfigVM.cs | 2 +- .../BasicData/Controllers/DeviceController.cs | 22 + .../BasicData/Views/Device/Attribute.cshtml | 14 + .../Views/DeviceConfig/Create.cshtml | 4 +- IoTGateway/Controllers/HomeController.cs | 12 +- IoTGateway/Startup.cs | 14 +- IoTGateway/appsettings.json | 4 +- IoTGateway/iotgateway.db | Bin 311296 -> 311296 bytes Plugins/Plugin/DeviceService.cs | 61 +- Plugins/Plugin/DeviceThread.cs | 197 ++--- Plugins/Plugin/DrvierService.cs | 20 +- Plugins/Plugin/ModbusSlaveService.cs | 11 +- Plugins/Plugin/MyMqttClient.cs | 260 ++++-- 30 files changed, 1334 insertions(+), 219 deletions(-) create mode 100644 IoTGateway.DataAccess/Migrations/20220323063908_attribut.Designer.cs create mode 100644 IoTGateway.DataAccess/Migrations/20220323063908_attribut.cs create mode 100644 IoTGateway.ViewModel/BasicData/DeviceVMs/AttributeVM.cs create mode 100644 IoTGateway/Areas/BasicData/Views/Device/Attribute.cshtml diff --git a/.vs/IoTGateway/DesignTimeBuild/.dtbcache.v2 b/.vs/IoTGateway/DesignTimeBuild/.dtbcache.v2 index f1ee907af2077b65b33304905a79158c33a03e64..e2ccd1745f48d6b20752e6351870d931d4c23f41 100644 GIT binary patch literal 577076 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 literal 577076 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%0A8^LOxdLY}cT&mLI@43Qq_#n2 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 z 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 diff --git a/.vs/IoTGateway/v17/.futdcache.v1 b/.vs/IoTGateway/v17/.futdcache.v1 index 5cfc7a7ab1bda044c50b5f7e23cda6393bcefb28..5bc732e7a3e3f8a4c524c2ac1e77980811af7154 100644 GIT binary patch delta 112 zcmdmHxXo}wIwSAHwxtUfnDJRH<+;USFu9RMX>vcS!sG@KG2Z=WnkJdfZQ?QGy~W`+ zIgm|$@&RFgUd^MfAKP@9u1yE3w*iYvvg(7>PflQEnY@Q7k++Ry=1!4K3qH*Qs;~m7 K*zC!iD+&NGA1GG< delta 107 zcmdmHxXo}wIwS8ovuME$hMBu~kKW`knB2&sG`XKuVRD0r*yR5rtQ?+Y(jv^aINT-& zvdK?AARNqjI`-W(_WL(EY``LttomT339KxW_b?^$TBocpTgSItpON(zhZRW0W>4l^ FQ2_A{BoY7s diff --git a/.vs/IoTGateway/v17/.suo b/.vs/IoTGateway/v17/.suo index 93918d595f532c0f5acda5415054d8ba8504734a..68565c0b17597d949bea429a0fdf353d3bc06529 100644 GIT binary patch delta 26282 zcmeIa30zgx`Zs>o+MB~DAR?k79Fg#dh=72I%A7f%q9QpU3W8H8hzDl{ht$jg*~(*% zh>GTjVw@~992&24R%Vl$WqH-qXwXdG@7kM#Sk~>{+r7X4@BhC0^ZA}<&3g^cde*a^ zwe~4k*`Q#NOQC;5y-ug&fciM=bS;@q=eR7UK|Kyf8^DAZrp)TpbWhG)R>Tw7PNg~b za;!?5`o!F*b8If6t6os1@~JFb`JU%nb+gjxHYii19ySh$5=ASC(LPEbm-7e1=Wzrf zctqqc4<0@f;K%EAB4j7%Q+Tx{R-}6xVfTTtKoa8S2!BliN4NukCcrA76XN|rD}c^$ zw*gJo>GE~naJ&F~4g>>l0bzg-a10PHN=Am8aK{0yfrjwE4vJ>!P6IN~7h&x{vw=dO zB@h8z1JZ%Ffg&IYxDE6H`r-Y$MsS1xmw_2T5b!Oq1(*Vi0X_jv05L#!pa&r1h1NiC zxN`t6U>eXB7z$VeeSv3yEMOb(2GA5eZiRde;jXWYw`!E%7_Q^MD4-S40oV&H1ZD!0 zfWHGhfsp_zty>Qi1J47VfTiD0!o38g6KEdb0VD$B1x0vU&`y8?^hIZ7>r9F@f08k! zkF%lPQNK2iFi4hx(j4M<9{40E2 zOPSJD^3T`85P_!(5IwmVv?K5=5CEJ+m<&$?U@(vg^an(^EocK2xE1s(;9Z~@{31>~k?`jN z-vdtq?Ew+K19UX-67W8d0*G+sf}2OaJqp-Y6Yvgb5&Ujwk-ny2cZ3ZBb^%=gk?~o? zO#sT_{}MO@R08h-XMz2|2f$%q1>l16J_Z$eFM!rZ-gBU97?ueics_$?F6cL)yMbz8 zH82c#4iFhV5MKs&IPe`{3;)ZY&Y-V=UIcmp*MU@EHX!opLEVvN0q6~2CEVRWV^FDB zu}q0XRR~xF)E(=ANcekWy%uTzow5D}`L_d;Gw}24u@<7uMuejRzaHx@2-}0W$Bnfa z;g1{ZL&~RaUbO@LCQ^xk_CxzE1N}Gn-GRCTeI9-%q_G43*@6BVc`pEu9cV`s_-G$pS(1Cc580ZH;tPX7O5gf&zu�=I4r`DwWhpJSU*|J%GxkL`u-Ev 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 diff --git a/.vs/IoTGateway/v17/fileList.bin b/.vs/IoTGateway/v17/fileList.bin index f18580b8c463c7a2b811e2e9c31935d094a34530..77c96096ba37a39048d5a6a55fc779c5f08fd51c 100644 GIT binary patch literal 121405 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

@$C>QHFW?FW8h*tQng!*ve8|< zCEGE7Dt-k>^C*0+w88M@*`)uH%L(m~YQnTnrhgMU`%ECG-r3hcawng`5|Jf!>TghT zZWqk_Oc#eL_{I^Q+BSDu#MEP#7F1#JlAmmOP|}E2zTmQxjYP71DGTzBpTvt3KR)wQ zPUT-vLj3bzd-tb);rrh4_>+J1)eryvuYLPjgDq2XBg{(_zoO8vA=|(j+BpP~RTFnC zS@tu9bM)(9AOF_++c$sm$3OAMqc4By3k`5~r%^b2;LpH7)*B`JOyPX-Pk!(_@BQuH zz5mPa|8nTQ>zhAE?iG5ScK5c9+^xV@x0a?z`8O0+@Sd-JZuKksyFd0T@A>REUjCgw zAWa5~MN9X-mn@>$Qx`f0Mf#H@r=doZMz$I(QEnI;#$}%=wqe7V>}#uMTUvSTjm4UQ zF@;1rlMl<0gDmsqDMvF(LkP!ki?_t?5C!p}KGKVXL42}uk#kG5=bDwjFXn+if*1jH z0$>-BtX#B?=pd=`wWjUr$0=Y z83c&E*uauOyg!a6kS8_q=z^tQegDHVxJ?#w3L}w=Qb4LJkus4BM|!atDc?dUn|Ba{ zaS~8R*U%u^A`pX+M_Pq#=~}3&1lzOGaCyjaOBI|_1(pi-W^Jlsf;izeOH%?u?aWe% zYe7H_-14vhTT?ddZ^O6FQi2#YRh5_1M^rD3T=$6 zp!w`H*K%OSgIf=Ehz3r=@==IYAeZxQ0m)XT_7;E2$z)C|vahZ+W5@hO1O1Zd&v`^L zFV{k5mCd1qRVh<88z~KlYJn}8&ro$g1;33up?la7_THxS=XLA|40#Z$sQnNPOhy*NO*iY_9+KVX$V4NrB(}uIX>)clqLao9KQjO}C zsj_0laT(4At5K}BLxrCRL^hT;AuCT6I`?M~wK4x1qB#mlla|vs+7UI~vw#Iv2UoII zTGCYKz?3eto!F|gT-Jn5CM!57oEokqX%&9PZOmHipptr(Ue}7#t$-?tU+iv^_om2b zq#lpozyEC>L77Oz7N?M**LwA0N^r8V`-wk~9Zy{t!XLSJn)<+T9I_Wdk|c;$#)fz9 zU&7^=Fdk^`fkH-F3NI8X>-7w?7AKPx^DdQ^g!^i_BYwEVT>c7z#2je|H{|7;jDhrfGfyO$sQ&~ zXDA=aIfb!0{JBilQ;KNJvQtWWE`j3o)|2dePKw$$5T6F&1$R`E=S6{s`p}0%7eY^a zP~ip{Z1_fthVvi{poS{_xH?~)Tuy^p{VvUnokFwOihJS3;nZ`AAAnV54+(GZ4!ly8 z(u{*kmX~rup!PEn!`t^@$XHset*W$RHZa1)txM8w+-peiKn=P&7!mWi)Pq$sRPzO9DLxarpLgmeD!AqQxt(-g+TZxRBPA!- zB{f{tk1w%ReRC9MlMDZr?3Vno1;J?uNS?AekvoLV`-H1IEs51Ig~po|klZokwz)*LkGnC2@_c>t~IT zwB%JBH@j6IfK3NZWNv~g`oY^CH_`N`O)0egw5fXfQy4y8BJMi1sd|Cy)TYhwNDae@ zq>gK116ko}X9!CUUd#5oom|V|6*vhiQ{beP)0(|X?OZc=hu5VfcX?e(MhZF3sxZ^3 zRiei_-Gn2BIJ`vG@k?;5&W0Hoi=a~Wf?-IHsyU4KM0lzGL`bI(KT^Tz2Tog#>x5(|HC{w6^2M5PZ+;_ENaT+}37P zAaUW|2N{iGQ#a`xfrpO|AIK&kki~k-q^(?XxnzT+PO4JVfE%@l=E09tzfU?Y$WuE{pr62u?b4Jw28FlrABh4Dm-DLZSW2l5P1#!v}) zJuKrR7+>f`87e0@WK@J(Mj~5mU{xv=F5l$ZJw`%JLzELOQ3%s;yikoNXK*3=)SYwt zax(Y}2+sUQhj3Xf+Dh~@FPH<(!5o&kzUF}R_GLP_3RbZ%@R3hu$=jkal>lT(5huY} zzQ0rn@W>yJy;=4*ymxRdK>uQ#&v{vys+;T>()$-<`~m_oChHPqYrSMM=P$uApnun) zfGwcClW_rkK(W0N$<{udv?1wj?X89y)pOfc5j>{r-QvQ_v{y2$=XGDTK~#FBz!C-7VN{hP_GTll%-8Q zcCD7r&FYYwKD~8FGc_W%VWU5QjUJoN_!P&dD_Q$4HA5*=On0WNxIw@gVjZBZZ&mG% z(eNzv$C}6;?L+D#)7qahR3-sfKK{$7bQgyVc0fLJ4M4;2nL{0j&m8PoccCiCvueXo z^RTw3V8F)u{62<8FjlmK!QUdaLRtG{cz%q-5zCL^-@?1}-U4s&+I;dBcni3qn0<>5 z;TJ;hQ~P9k&c4L(Vlf||z7^hLp1c*_BIe^V!>>r>MsERLK$QP2@D`VFDd@znx6U6? zM~N&RqH@ApCX|IOP#hE?&2*cxH9xnrsnpx|yg5uAgz@N=Q3ZHZ@NMetmp@m}nZxgj zpGoG?8d=M}F2iBH@b*D3otWHK|H?9Uq`x5}$!g<*Da;Z^*88-FV^b@g~H9XEOI{H+Ff#EM4PaZpU)Ai+{zSxXOd{ zDVl)V%cLwSO#U#XWu;gHh9xhMY67biaYm`ZG`d-O*-+nvr#EPE{3dr&Bf|9+XqI%S zAM)M66#H<{ToAWz8Y-N5a4ni+YI6aI)lZ!Itpm&EyvpIos?LJ?t%GYoRZAE%>s3w- zc}iBON!Ns!_9{o>GV`U5V1twu-s|G<2F&9oU({i#O6hBYQuWIXpjss=iHe!RjMQ}b zxUv~igK=gofvj_vFmoZ2&AKF$eJx-Om5^NI=#Ss9*dZmikn?+WIQ6#MFhO>PILW??oJ z1)aHUV-^`=6VkIiJ9h(rtjH*=OzU;e@x>8OVM$Jgw&oE z-TZVwMDD_s;gcv_%wT{g+@3V5^poP7>~1i!mWv%o?i^oKh)YAs9;?D56vH=1BM8u_ zmwgC#EnPs5PW~;0;jR4X`+xPj{l}mF=FRWjeedCW{u=Yfewa+s2aiumQ78Pi9POni zt;A>bx1ctA+J##`XOJo1OZOJ&P(!L|cmJy}fMBEWW`ZXfjfG9l$dCA7aq;+obgVFrk2TA0)Q)p2R7g1Fg zU>(z*HZ2;krwFg4N|He5-?U`k1a$Wdylx{p9$NEMDTZq_SAt14_f0>3iW58b8USu&MK z0ePT`cwY#ewIEKUlWeu2rvTq9FDxyGxnQp@|gUweJwMOP~~S8v`}UE>;3 zNROc_rr_#0(nab67nOw<0q6ozpq zH-yhmpC;fxX}l5qx3>bSrumgqn0(H>Y5T3JE^IWDE9|LWT1UKD+Mlx~!e_^0gX$K} z#U|tE1j}k12{cFlwM#Wfe~m2%X>YxhX?^7>r-DAr2wGuob>PC>j58R@uda?za=}bh zAhjE(Th$5M023dv&8pms`x1WVM4gntW%7VqPR8I5WL-r7rar^sl#gz#yT~@FrHF_e zjlk^QP5|nTH;!jq_M+sBW1bcIuz)r_FszVyHVx_JOxzT6)K@=I0|ehbouY5W#N>XrYw z4VQ9p$YfbjW8^J;x3;6%u+$sHL^lpz2mXvN`)hQRm3xY8Tp4hlJL(_)rWDd&YRtaJ zfOU6~B%yp}1PQ!MIhDz@wY`_%e9-4U;#^z48%6*%Bt;5>%g zmthP~0&%;maCH*YN9Rc$Cff^i8=<cuv)o=uPLs7{%Y5Ft(edBCpG_#GjfgG32&&zO^ae4Hd zWpVpRRGNr+98T_eCyNPpY)EZudkm^6A1f!Xu?L{cS%SCpXO8|CUX*o~xBw3XjMA%m zV)M}a3(N-`o%kRVJF<={+_>p!vt7M8`~uG{8?E@kWKA=7aOsmovqcp)ZL4wwWET6Ob%g||s;E*|HE7DJb8kd>&t+Q=9~%&&h@XRS1>q!Ig)Y~U zXMq=qD+sfzpYH;`K7`2&m%U4)CFA4@f*o+Xt9fhgSp9%dW;F}AhxMUx;MVeLRuoGr zxgl)jMY#`WN!`q2sP0m!`O=c&@)D_HvpIsPJ91%iGn*rjiV9e1N>5B(UnMom?~28b zE5Wwnr(*@>1J!zCkU0XZIq!>g8lslx>GH{KSvE*8334QrSQVNm6S`!29azG86r}D39wX0Vre9!WSn|dK9i1CII3h93p`F2kh793Y3Ap4)(~sv zwJp7G6gRMvrY86L`Vh+?VrK{DJ;HDb_e9^98~G;-oi!-!VyrC4=%pp9tSol?Bwn1r zWu!hJ*t!T8ye6obJZ;a#!bH~g2tbPx&9Sq)*c90* zVzJmFg9;tfu(u5m+DlS~_yjx1V1pOou zoz5$miH=xk`X%&eEF-its=CA6Pp;CHO+Vp9#iHU;(#qNGM5-olsXB*b4S2OG|G-~Q zPp+;6-nv=}<{*LUqNR=&_JT-V)Cw})H&DQJ?n9mfvl;_WDONA@Bt)*QJ9g*#hWBY0 zCSe%FE9p0!)A9N>zKX!-UK75~6k3Q^1=XKqV+huNuO1$nc4WM6SntWY(F*;}c}y8x z+N|q2{}uz{U=O(|azQDCOADYmkcyw?pVD+DIx%n{l{DwuLN4ni!JuUMBDWKD%wXr> z9%dqr3v{h3Q>g|A?$bI6FZqyJ6UXE*HOrkH`x`BWN5B5{@o%laee)-O{1bmX`tp~) z&`MKRDtpw8FwPF#pXVRVReCo24=_J*l?mDWmrDp0thRlIs8C|Mi2V_p9%42Di&x6# z$soy;Fei`dEVPHw`N-5-i_aob@nJ=Em2YOeNLW>oA#L=$qs>)ya6z@{6Blm0m_tCm zVo>7ek~Xbu@oo4S)rQZ!3sq1XMk|SXvT`zE<$)YnC3^)r%i8!2X2Mg7h`}?V=~=h} z<;(6$0zdtD4iDfC@aQ_cSF zt=@2+>>h4!-CsTY*kNtdne4h2(Q9j|o~XB#NIR=={p`(wZIp3i>c<=^>(2JyVYQ=Q%U=*Ug=y8hiDn{PNw zvh`6w6~P7mnD{9$6`so>sJHChZ9L^}*&Q#@vjSY108gYsX4?$KK;D zEL1p=PPQ${AHO*sLwQZbBE~4B0U$*QMw{^!bQi*L87^2T@;)><)Y6k4lSJ0{NO2x- zWjHKB9aqSl!7K_{?k*)K7#+wLND^)`z#zMoi7wdJA`1@edz+uzS(OI*Og$f0YP45O zs)gB6`Us2$@E;-ai1#8^f@IZ!?A*3~BlO;YLj>KVX=NQ;pM8UM7Kg#*udW*gm%r9- z7+n6!yJ2wo>+o8+o5~tRqxAM7NY;B7AjTE*0Y~pi`>2^HgXk(WC;iEX70H+zXG175 z!M)Xafow#j`2ufOOydtQM?Pda;EMN3FC30vlNwC&+Do2~Uz0Q&x#wp_X=bX@#9$kh z%%v9A-H!SJBR_qhH(Lb@;<6M!z$|M1)Hlxfr;<)u;avq)qJ@j1GKC9^t}G(1KA23b zHAB~sxuzEax3}z52Om~$4(Hhw?cL);jdZh@9?($;?Er}?9;5EQ#fNkMF~%%MIEOb0 z6L=44lCb|6W6iq=VvM8)=C-}|sIr(MY|_O^;E%E|utvmdO;+U=Wct;GKY9-F!zhVY z_q|guf(v9k6JB2hD+xwluU<~;=gzevtD?SMK44QCcX$jG$?Y?_qf}>*lmW<6>RZtF&7HjkJ z36-{V4f++}S{*-#w`cQ35)1FLIHAt#Uf`j&cNVi{UC;Z(e-s9)byG87-1CpE=NcYI#gSNA6^@X;T~=d(FJIKV)i3Ox<#ph!ulBRPxltW z9#fsK6}Jx?>ZFHjIU~{Vx_`lLB6;`1i}j=wYJhCZBw+9jldX&mY(wpP+cQ5A+fd{o z$(_oXMNu|3yx2<`PWY%5KgkMa9v)W0xR#PsN-YWXM`wrLWpWp)kI?qQw%qM{Ny!Rj zY#U<~PF>EBlA390CUHLur}t;)KE$)9kX+}UPL7r@Y}1kvSXSPsln4$?Fbf0kG=aJa z)i%cJ(hix#rP$s~1Wh(sbRawOCud^1`{ua@7ZTp8uBxH{_QQ+pJ8n;q!;5IGO<7?o z7~n&F$ibb}Ctk7|&z_fpIoSAWpkXR##^gD;V;m1m7e*rEo~UJZ4CrK{Owu%tC3Q$e)ZtYLWzmUPTp;To$Q z1gO4Wo>Vzq09iwkjMaBRWMUnytSUi4PVBkS=!~t%Ay<^MbtrfZCny1GMQ?Usl&nZo zpWdugg$%VcTwYCTS`eP7N2SZk^)6n1cB zOW`~ZX|r%Lwrt4_Z1z`t1YxV1Owib4&-~oZvhW9Rb2!BJ^lcy|O96-XNs8=KCBDcJ z7}yY4o=zbXf8fC+d8vq-KPEUEi7EmqY-xlZC7#Jc zsY6V*G+rlT4t%Kl@yuArxwGn56CAman!lSb$4v z@wT}7%4&|%R$6=+cOlx#;q@v$)F37-uf1*&I67gz)wR;73d}h`vZJ)E*w~4K9B7wP z*)(tfDaa~uSjUm)elvAlPCv!|8+_29gAY(VDhq?z(pUnFL4+Pa#s?s)Z0J*Ci8ZH2 zS!7khcqy?dN7@BV;B0DLPnpPIA($^pZId-@%T~Bls1U<7m*CGb+$4v>p8&=c6_q5wE~f^|Yx&8rbRDwp)SI^se?GK`MT*?dDEnqsa~ zH?b3^zwj0wX`jd_w&tV-%TXDL9&o0FY0wP9nYVHZ^`{=R{5NWCp z1O;qdc`da2Mag20H!w~~b2E-@`Yd(D;BBEeZECCpW(~>S09xr*VgwLxhnp`m*O~3l zAZyTQEc!fw!9E7lCTN9$kRFT#-9n4k2^$HmEFcw(xU1Tzps(3vFw7@uY=F#sap#J* zosHL}DHGSf^^o~WyOB9&PN?lHqAQn3=imy8$_gTyaya`h@JnF3oy^*BFHv35?a2%x z6ORuc9-6hqusHTYo|_yjUeg>@yt=J$tK>fMys;v7Y044P+sg)Bj4Cafc!Rd4@1ZyI zv;kno2;{S`^muMIcS7b8xb@8JyRz-KIGOrQD`GknB3SFdO%iu>riwjm0bRV%w~VvK z7|HZzrb($wK#Dsk(Ohdp58(OLLYU(m_)r|@a9e51QWz%<2&#_jZ~=p9=g?rxMsr%7 zfJ$rGrm2GqcLFt&vX&{*n`*h2FZ=|mzT64jhJyXL4eCV9H&S{DwK?)k6(v4r@IBOw z*HEZAG|x-VQ}aPh9V>#}b%7YZAd!qJtbLanKE=$>TX;RVHNm6WP{vzFN@36H^WDb+N)0*xJEG>3LE*ht*bNuFV}Z(Q-i zw^dof%nh7FH-7%=!dp~A_1F$3^*)WZ)Du_Z#sgo?CzfUE$%UmcD-=Tg!`w}r406Z6 zgrQS-VKJ4YAk&C6mFf86(qQ$avzc%>n>l#u#LC*-*(3z}3s78N1=mCH(PBCFmum?= zTCg0I(NbiHm(x<2POy4HH#DlUdu4TGf5n1@H3nHy-X0rD{>9KenD%HcV{)o4XyWeo zBQGtfSCU5S$NF@2bRvP5q=u2sZQPrgrze{YKHZR8yySAfs&DGj?=>N+9lp68M}q{MNno@vvvnol9Kzhcf|HBVMe38@3M zbS(#%x~*I}!*HdX7l|n&2Y+!~E$tH=?%k~F^)QCJ zYBkY%B6*i4NMSoeB&iJaoUOv4-3e*~^5lqEnK#DXw-o{SgQV=S?mij=84 zF*xeTteOnj(l&P^7z)BrNNS5VID(5l$oz9XR%OLTW=s!56&bJK^pdi!kM8R+_x7g= zw<^7e)eyGl$vwa!Y8`Jd%vA)j1x`O=RIL0?Db-QW(Of?BdiZ$e&Y{B5^JW(RAp2(3 zyYxyyKOCg*(VxKiEPH-A6pm&kql|-iljP$+FDma;X{_!K+fh+Cex8*~4F&ODHsY z2L1_15sZgse1jM35Be;(XD2Y7`w*dZ;?@Fu zGPUa2RQ@prgzqRk>>UTxopk9lo~Ve&t+xPA^7jz%ge?2&PhgpYm~B6=hwBin63fc}7pD z+6*C5H|BI4X^PmeLwRh~l47Z6=90dW^^bF*9YW!BBu?K9$d$77?vg6hxeKDgR{4_3 zfo3aRk!nXAl!j~SYXpQB2$0$KzTQAKXyJ^~Pn}=E4&0VrAV7|R>hmpR%;@(u4)iP& zB@d}MNQYmLXGUvonAfl?((qMoQ{q7!pfTK*pfchYiHdO6M;ggIzsO^FcDMt1z62_S z0i>kNu&>bCA5JI3Jxiu3l1U_DJnRpX&Vh&~>jkM^)<Rq@OAdS7wFR-ll9+OY%^G@iGLzpI9-~mT}_m)docnzA4c%+376W*%I zx$J@;?!cff;-(4=MV8rdJXUe0d|&POV-WHSR|mFAn;37ZR*l*vx(aKjH`Q(&7rx?_ zlPvQilpo{cUcwYcfj!*6-FhXmTgh$HoXR)AHXjB4{3LXvvGZ~G1SMzY6KCI&Hb}p3 zAmBe~jP?5#TsDf_$g)?^8Gn<2*Z*=nC!r)8`B>eD1kHu&c#OgTjw`&4@HTF(Gmf*l z#d0vtt28rMVLmF{IOH5ZcCWyD1_Ib>60(q4#4i~0x|queAal$G8898$r7D?YMU?4= n7FEV@Nsknw=cgLZH+@&KXh_0$861{X&fYCNRga63h|d29v0D-d literal 125641 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 G+5ZOuDSg)f diff --git a/IoTGateway.DataAccess/Migrations/20220323063908_attribut.Designer.cs b/IoTGateway.DataAccess/Migrations/20220323063908_attribut.Designer.cs new file mode 100644 index 0000000..1554681 --- /dev/null +++ b/IoTGateway.DataAccess/Migrations/20220323063908_attribut.Designer.cs @@ -0,0 +1,801 @@ +// +using System; +using IoTGateway.DataAccess; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace IoTGateway.DataAccess.Migrations +{ + [DbContext(typeof(DataContext))] + [Migration("20220323063908_attribut")] + partial class attribut + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder.HasAnnotation("ProductVersion", "6.0.1"); + + modelBuilder.Entity("IoTGateway.Model.Device", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("AutoStart") + .HasColumnType("INTEGER"); + + b.Property("CreateBy") + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("Description") + .HasColumnType("TEXT"); + + b.Property("DeviceName") + .HasColumnType("TEXT"); + + b.Property("DeviceTypeEnum") + .HasColumnType("INTEGER"); + + b.Property("DriverId") + .HasColumnType("TEXT"); + + b.Property("Index") + .HasColumnType("INTEGER"); + + b.Property("ParentId") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.HasIndex("DriverId"); + + b.HasIndex("ParentId"); + + b.ToTable("Devices"); + }); + + modelBuilder.Entity("IoTGateway.Model.DeviceConfig", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("DataSide") + .HasColumnType("INTEGER"); + + b.Property("Description") + .HasColumnType("TEXT"); + + b.Property("DeviceConfigName") + .HasColumnType("TEXT"); + + b.Property("DeviceId") + .HasColumnType("TEXT"); + + b.Property("EnumInfo") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.Property("Value") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.HasIndex("DeviceId"); + + b.ToTable("DeviceConfigs"); + }); + + modelBuilder.Entity("IoTGateway.Model.DeviceVariable", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("DataType") + .HasColumnType("INTEGER"); + + b.Property("Description") + .HasColumnType("TEXT"); + + b.Property("DeviceAddress") + .HasColumnType("TEXT"); + + b.Property("DeviceId") + .HasColumnType("TEXT"); + + b.Property("Expressions") + .HasColumnType("TEXT"); + + b.Property("Method") + .HasColumnType("TEXT"); + + b.Property("Name") + .HasColumnType("TEXT"); + + b.Property("ProtectType") + .HasColumnType("INTEGER"); + + b.HasKey("ID"); + + b.HasIndex("DeviceId"); + + b.ToTable("DeviceVariables"); + }); + + modelBuilder.Entity("IoTGateway.Model.Driver", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("AssembleName") + .HasColumnType("TEXT"); + + b.Property("AuthorizesNum") + .HasColumnType("INTEGER"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("DriverName") + .HasColumnType("TEXT"); + + b.Property("FileName") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("Drivers"); + }); + + modelBuilder.Entity("IoTGateway.Model.SystemConfig", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("GatewayName") + .HasColumnType("TEXT"); + + b.Property("IoTPlatformType") + .HasColumnType("INTEGER"); + + b.Property("MqttIp") + .HasColumnType("TEXT"); + + b.Property("MqttPort") + .HasColumnType("INTEGER"); + + b.Property("MqttUName") + .HasColumnType("TEXT"); + + b.Property("MqttUPwd") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("SystemConfig"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.ActionLog", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("ActionName") + .HasMaxLength(255) + .HasColumnType("TEXT"); + + b.Property("ActionTime") + .HasColumnType("TEXT"); + + b.Property("ActionUrl") + .HasMaxLength(250) + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("Duration") + .HasColumnType("REAL"); + + b.Property("IP") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("ITCode") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("LogType") + .HasColumnType("INTEGER"); + + b.Property("ModuleName") + .HasMaxLength(255) + .HasColumnType("TEXT"); + + b.Property("Remark") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("ActionLogs"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.DataPrivilege", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("Domain") + .HasColumnType("TEXT"); + + b.Property("GroupCode") + .HasColumnType("TEXT"); + + b.Property("RelateId") + .HasColumnType("TEXT"); + + b.Property("TableName") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.Property("UserCode") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("DataPrivileges"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FileAttachment", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("ExtraInfo") + .HasColumnType("TEXT"); + + b.Property("FileData") + .HasColumnType("BLOB"); + + b.Property("FileExt") + .IsRequired() + .HasMaxLength(10) + .HasColumnType("TEXT"); + + b.Property("FileName") + .IsRequired() + .HasColumnType("TEXT"); + + b.Property("HandlerInfo") + .HasColumnType("TEXT"); + + b.Property("Length") + .HasColumnType("INTEGER"); + + b.Property("Path") + .HasColumnType("TEXT"); + + b.Property("SaveMode") + .HasColumnType("TEXT"); + + b.Property("UploadTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("FileAttachments"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkGroup", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("GroupCode") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("TEXT"); + + b.Property("GroupName") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("GroupRemark") + .HasColumnType("TEXT"); + + b.Property("TenantCode") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("FrameworkGroups"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkMenu", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("ActionName") + .HasColumnType("TEXT"); + + b.Property("ClassName") + .HasColumnType("TEXT"); + + b.Property("DisplayOrder") + .IsRequired() + .HasColumnType("INTEGER"); + + b.Property("Domain") + .HasColumnType("TEXT"); + + b.Property("FolderOnly") + .HasColumnType("INTEGER"); + + b.Property("Icon") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("IsInherit") + .HasColumnType("INTEGER"); + + b.Property("IsInside") + .IsRequired() + .HasColumnType("INTEGER"); + + b.Property("IsPublic") + .HasColumnType("INTEGER"); + + b.Property("MethodName") + .HasColumnType("TEXT"); + + b.Property("ModuleName") + .HasColumnType("TEXT"); + + b.Property("PageName") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("ParentId") + .HasColumnType("TEXT"); + + b.Property("ShowOnMenu") + .HasColumnType("INTEGER"); + + b.Property("Url") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.HasIndex("ParentId"); + + b.ToTable("FrameworkMenus"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkRole", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("RoleCode") + .IsRequired() + .HasMaxLength(100) + .HasColumnType("TEXT"); + + b.Property("RoleName") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("RoleRemark") + .HasColumnType("TEXT"); + + b.Property("TenantCode") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("FrameworkRoles"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkUser", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("Address") + .HasMaxLength(200) + .HasColumnType("TEXT"); + + b.Property("CellPhone") + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("Email") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("Gender") + .HasColumnType("INTEGER"); + + b.Property("HomePhone") + .HasMaxLength(30) + .HasColumnType("TEXT"); + + b.Property("ITCode") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("IsValid") + .HasColumnType("INTEGER"); + + b.Property("Name") + .IsRequired() + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("Password") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("TEXT"); + + b.Property("PhotoId") + .HasColumnType("TEXT"); + + b.Property("TenantCode") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.Property("ZipCode") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.HasIndex("PhotoId"); + + b.ToTable("FrameworkUsers"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkUserGroup", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("GroupCode") + .IsRequired() + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.Property("UserCode") + .IsRequired() + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("FrameworkUserGroups"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkUserRole", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("RoleCode") + .IsRequired() + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.Property("UserCode") + .IsRequired() + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("FrameworkUserRoles"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FunctionPrivilege", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("Allowed") + .IsRequired() + .HasColumnType("INTEGER"); + + b.Property("CreateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("CreateTime") + .HasColumnType("TEXT"); + + b.Property("MenuItemId") + .HasColumnType("TEXT"); + + b.Property("RoleCode") + .HasColumnType("TEXT"); + + b.Property("UpdateBy") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UpdateTime") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.HasIndex("MenuItemId"); + + b.ToTable("FunctionPrivileges"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.PersistedGrant", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("TEXT"); + + b.Property("CreationTime") + .HasColumnType("TEXT"); + + b.Property("Expiration") + .HasColumnType("TEXT"); + + b.Property("RefreshToken") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("Type") + .HasMaxLength(50) + .HasColumnType("TEXT"); + + b.Property("UserCode") + .HasColumnType("TEXT"); + + b.HasKey("ID"); + + b.ToTable("PersistedGrants"); + }); + + modelBuilder.Entity("IoTGateway.Model.Device", b => + { + b.HasOne("IoTGateway.Model.Driver", "Driver") + .WithMany() + .HasForeignKey("DriverId"); + + b.HasOne("IoTGateway.Model.Device", "Parent") + .WithMany("Children") + .HasForeignKey("ParentId"); + + b.Navigation("Driver"); + + b.Navigation("Parent"); + }); + + modelBuilder.Entity("IoTGateway.Model.DeviceConfig", b => + { + b.HasOne("IoTGateway.Model.Device", "Device") + .WithMany("DeviceConfigs") + .HasForeignKey("DeviceId"); + + b.Navigation("Device"); + }); + + modelBuilder.Entity("IoTGateway.Model.DeviceVariable", b => + { + b.HasOne("IoTGateway.Model.Device", "Device") + .WithMany("DeviceVariables") + .HasForeignKey("DeviceId"); + + b.Navigation("Device"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkMenu", b => + { + b.HasOne("WalkingTec.Mvvm.Core.FrameworkMenu", "Parent") + .WithMany("Children") + .HasForeignKey("ParentId"); + + b.Navigation("Parent"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkUser", b => + { + b.HasOne("WalkingTec.Mvvm.Core.FileAttachment", "Photo") + .WithMany() + .HasForeignKey("PhotoId") + .OnDelete(DeleteBehavior.Restrict); + + b.Navigation("Photo"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FunctionPrivilege", b => + { + b.HasOne("WalkingTec.Mvvm.Core.FrameworkMenu", "MenuItem") + .WithMany("Privileges") + .HasForeignKey("MenuItemId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("MenuItem"); + }); + + modelBuilder.Entity("IoTGateway.Model.Device", b => + { + b.Navigation("Children"); + + b.Navigation("DeviceConfigs"); + + b.Navigation("DeviceVariables"); + }); + + modelBuilder.Entity("WalkingTec.Mvvm.Core.FrameworkMenu", b => + { + b.Navigation("Children"); + + b.Navigation("Privileges"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/IoTGateway.DataAccess/Migrations/20220323063908_attribut.cs b/IoTGateway.DataAccess/Migrations/20220323063908_attribut.cs new file mode 100644 index 0000000..c06c241 --- /dev/null +++ b/IoTGateway.DataAccess/Migrations/20220323063908_attribut.cs @@ -0,0 +1,26 @@ +using Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace IoTGateway.DataAccess.Migrations +{ + public partial class attribut : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "DataSide", + table: "DeviceConfigs", + type: "INTEGER", + nullable: false, + defaultValue: 0); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropColumn( + name: "DataSide", + table: "DeviceConfigs"); + } + } +} diff --git a/IoTGateway.DataAccess/Migrations/DataContextModelSnapshot.cs b/IoTGateway.DataAccess/Migrations/DataContextModelSnapshot.cs index 206af2a..5181c14 100644 --- a/IoTGateway.DataAccess/Migrations/DataContextModelSnapshot.cs +++ b/IoTGateway.DataAccess/Migrations/DataContextModelSnapshot.cs @@ -78,6 +78,9 @@ namespace IoTGateway.DataAccess.Migrations b.Property("CreateTime") .HasColumnType("TEXT"); + b.Property("DataSide") + .HasColumnType("INTEGER"); + b.Property("Description") .HasColumnType("TEXT"); diff --git a/IoTGateway.Model/Common.cs b/IoTGateway.Model/Common.cs index 5f32c80..91952c9 100644 --- a/IoTGateway.Model/Common.cs +++ b/IoTGateway.Model/Common.cs @@ -17,4 +17,11 @@ namespace IoTGateway.Model [Display(Name = "读写")] ReadAndWrite = 1 } + + public enum DataSide + { + AnySide=0, + //ServerSide=1, + ClientSide=2, + } } \ No newline at end of file diff --git a/IoTGateway.Model/DeviceConfig.cs b/IoTGateway.Model/DeviceConfig.cs index 97928e9..b6cbf83 100644 --- a/IoTGateway.Model/DeviceConfig.cs +++ b/IoTGateway.Model/DeviceConfig.cs @@ -8,6 +8,8 @@ namespace IoTGateway.Model { [Display(Name = "名称")] public string DeviceConfigName { get; set; } + [Display(Name = "属性侧")] + public DataSide DataSide { get; set; } [Display(Name = "描述")] public string Description { get; set; } [Display(Name = "值")] diff --git a/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigListVM.cs b/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigListVM.cs index e8bbee6..45e5720 100644 --- a/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigListVM.cs +++ b/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigListVM.cs @@ -51,6 +51,7 @@ namespace IoTGateway.ViewModel.BasicData.DeviceConfigVMs { return new List>{ this.MakeGridHeader(x => x.DeviceConfigName).SetWidth(100), + this.MakeGridHeader(x => x.DataSide).SetWidth(100), this.MakeGridHeader(x => x.Description).SetWidth(100), this.MakeGridHeader(x => x.Value).SetWidth(100), this.MakeGridHeader(x => x.DeviceName_view).SetWidth(100), @@ -62,25 +63,28 @@ namespace IoTGateway.ViewModel.BasicData.DeviceConfigVMs public override IOrderedQueryable GetSearchQuery() { var query = DC.Set() - .CheckContain(Searcher.DeviceConfigName, x=>x.DeviceConfigName) - .CheckContain(Searcher.Value, x=>x.Value) - .CheckEqual(Searcher.DeviceId, x=>x.DeviceId) + .CheckContain(Searcher.DeviceConfigName, x => x.DeviceConfigName) + .CheckContain(Searcher.Value, x => x.Value) + .CheckEqual(Searcher.DeviceId, x => x.DeviceId) + .CheckEqual(Searcher.DataSide, x => x.DataSide) .Select(x => new DeviceConfig_View { - ID = x.ID, + ID = x.ID, DeviceConfigName = x.DeviceConfigName, + DataSide = x.DataSide, Description = x.Description, Value = x.Value, EnumInfo = x.EnumInfo, DeviceName_view = x.Device.DeviceName, }) - .OrderBy(x => x.DeviceName_view).ThenBy(x=>x.DeviceConfigName); + .OrderBy(x => x.DeviceName_view).ThenBy(x => x.DeviceConfigName); return query; } } - public class DeviceConfig_View : DeviceConfig{ + public class DeviceConfig_View : DeviceConfig + { [Display(Name = "设备名")] public String DeviceName_view { get; set; } diff --git a/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigSearcher.cs b/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigSearcher.cs index f44bfae..b36adce 100644 --- a/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigSearcher.cs +++ b/IoTGateway.ViewModel/BasicData/DeviceConfigVMs/DeviceConfigSearcher.cs @@ -14,6 +14,8 @@ namespace IoTGateway.ViewModel.BasicData.DeviceConfigVMs { [Display(Name = "名称")] public String DeviceConfigName { get; set; } + [Display(Name = "属性侧")] + public DataSide? DataSide { get; set; } [Display(Name = "值")] public String Value { get; set; } public List AllDevices { get; set; } diff --git a/IoTGateway.ViewModel/BasicData/DeviceVMs/AttributeVM.cs b/IoTGateway.ViewModel/BasicData/DeviceVMs/AttributeVM.cs new file mode 100644 index 0000000..5d45de7 --- /dev/null +++ b/IoTGateway.ViewModel/BasicData/DeviceVMs/AttributeVM.cs @@ -0,0 +1,56 @@ +using Microsoft.EntityFrameworkCore; +using Plugin; +using System; +using System.Collections.Generic; +using System.Linq; +using WalkingTec.Mvvm.Core; +using WalkingTec.Mvvm.Core.Extensions; +using IoTGateway.Model; + +namespace IoTGateway.ViewModel.BasicData.DeviceVMs +{ + public class AttributeVM : BaseVM + { + public string 请求结果 { get; set; } + public string 设备名称 { get; set; } + + public void Request() + { + using (var transaction = DC.BeginTransaction()) + { + try + { + var device = DC.Set().Where(x => x.ID == Guid.Parse(FC["id"].ToString())).Include(x => x.Parent).Include(x=>x.DeviceConfigs).Include(x => x.Driver).FirstOrDefault(); + + if (device == null) + 请求结果 = "复制失败,找不到设备"; + else + { + var myMqttClient = Wtm.ServiceProvider.GetService(typeof(MyMqttClient)) as MyMqttClient; + myMqttClient.RequestAttributes(device.DeviceName, true, device.DeviceConfigs.Where(x => x.DataSide == DataSide.AnySide).Select(x => x.DeviceConfigName).ToArray()); + } + DC.SaveChanges(); + transaction.Commit(); + 请求结果 = "请求成功"; + + var pluginManager = Wtm.ServiceProvider.GetService(typeof(DeviceService)) as DeviceService; + pluginManager?.UpdateDevice(device); + } + catch (Exception ex) + { + transaction.Rollback(); + + 请求结果 = $"请求超时,{ex}"; + } + } + } + + protected override void InitVM() + { + var device = DC.Set().AsNoTracking().Include(x => x.Parent).Where(x => x.ID == Guid.Parse(FC["id"].ToString())).FirstOrDefault(); + 设备名称 = $"{device?.Parent?.DeviceName}===>{device?.DeviceName}"; + + base.InitVM(); + } + } +} diff --git a/IoTGateway.ViewModel/BasicData/DeviceVMs/DeviceListVM.cs b/IoTGateway.ViewModel/BasicData/DeviceVMs/DeviceListVM.cs index f3e998e..ff94a64 100644 --- a/IoTGateway.ViewModel/BasicData/DeviceVMs/DeviceListVM.cs +++ b/IoTGateway.ViewModel/BasicData/DeviceVMs/DeviceListVM.cs @@ -18,6 +18,7 @@ namespace IoTGateway.ViewModel.BasicData.DeviceVMs return new List { this.MakeAction("Device","Copy","设备复制","设备复制", GridActionParameterTypesEnum.SingleId,"BasicData",600).SetIconCls("layui-icon layui-icon-template-1").SetPromptMessage("你确定复制设备,包括配置参数和变量?").SetDialogTitle("复制设备确认").SetHideOnToolBar(true).SetShowInRow(true).SetBindVisiableColName("copy"), + this.MakeAction("Device","Attribute","请求属性","请求属性", GridActionParameterTypesEnum.SingleId,"BasicData",600).SetIconCls("layui-icon layui-icon-download-circle").SetPromptMessage("你确定请求客户端属性和共享属性吗?").SetDialogTitle("请求属性确认").SetHideOnToolBar(true).SetShowInRow(true).SetBindVisiableColName("attribute"), this.MakeAction("Device","CreateGroup","创建组","创建组", GridActionParameterTypesEnum.NoId,"BasicData",600).SetIconCls("_wtmicon _wtmicon-zuzhiqunzu").SetDialogTitle("创建组").SetShowInRow(false), this.MakeStandardAction("Device", GridActionStandardTypesEnum.Create, "创建设备","BasicData", dialogWidth: 800,name:"创建设备").SetIconCls("layui-icon layui-icon-senior"), this.MakeStandardAction("Device", GridActionStandardTypesEnum.Edit, Localizer["Sys.Edit"], "BasicData", dialogWidth: 800), @@ -45,6 +46,10 @@ namespace IoTGateway.ViewModel.BasicData.DeviceVMs if(a.DeviceTypeEnum== DeviceTypeEnum.Device) return "true"; return "false"; + }),this.MakeGridHeader(x=>"attribute").SetHide().SetFormat((a,b)=>{ + if(a.DeviceTypeEnum== DeviceTypeEnum.Device) + return "true"; + return "false"; }), this.MakeGridHeaderAction(width: 280) }; diff --git a/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableListVM.cs b/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableListVM.cs index e419ae9..6515368 100644 --- a/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableListVM.cs +++ b/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableListVM.cs @@ -44,10 +44,10 @@ namespace IoTGateway.ViewModel.BasicData.DeviceVariableVMs { foreach (var item in device.Children) { - var deviceThread = deviceService.DeviceThreads.Where(x => x.Device.ID.ToString() == (string)item.Value).FirstOrDefault(); + var deviceThread = deviceService.DeviceThreads.Where(x => x._device.ID.ToString() == (string)item.Value).FirstOrDefault(); item.Text = item.Text; - item.Icon = deviceThread.Device.AutoStart ? (deviceThread.Driver.IsConnected ? "layui-icon-link" : "layui-icon-unlink") : "layui-icon-pause"; + item.Icon = deviceThread._device.AutoStart ? (deviceThread._driver.IsConnected ? "layui-icon-link" : "layui-icon-unlink") : "layui-icon-pause"; item.Expended = true; } } @@ -86,7 +86,7 @@ namespace IoTGateway.ViewModel.BasicData.DeviceVariableVMs var deviceService = Wtm.ServiceProvider.GetService(typeof(DeviceService)) as DeviceService; foreach (var item in EntityList) { - var DapThread = deviceService.DeviceThreads.Where(x => x.Device.ID == item.DeviceId).FirstOrDefault(); + var DapThread = deviceService.DeviceThreads.Where(x => x._device.ID == item.DeviceId).FirstOrDefault(); if (DapThread?.DeviceValues != null && DapThread.DeviceValues.ContainsKey(item.ID)) { item.Value = DapThread.DeviceValues[item.ID].Value?.ToString(); diff --git a/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableVM.cs b/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableVM.cs index c415f7a..66f15a5 100644 --- a/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableVM.cs +++ b/IoTGateway.ViewModel/BasicData/DeviceVariableVMs/DeviceVariableVM.cs @@ -32,7 +32,7 @@ namespace IoTGateway.ViewModel.BasicData.DeviceVariableVMs { var deviceService = Wtm.ServiceProvider.GetService(typeof(DeviceService)) as DeviceService; AllMethods = deviceService.GetDriverMethods(Entity.DeviceId); - var DapThread = deviceService.DeviceThreads.Where(x => x.Device.ID == Entity.DeviceId).FirstOrDefault(); + var DapThread = deviceService.DeviceThreads.Where(x => x._device.ID == Entity.DeviceId).FirstOrDefault(); } } diff --git a/IoTGateway.ViewModel/BasicData/DriverVMs/DriverVM.cs b/IoTGateway.ViewModel/BasicData/DriverVMs/DriverVM.cs index 71aeb44..29d7bdb 100644 --- a/IoTGateway.ViewModel/BasicData/DriverVMs/DriverVM.cs +++ b/IoTGateway.ViewModel/BasicData/DriverVMs/DriverVM.cs @@ -23,8 +23,8 @@ namespace IoTGateway.ViewModel.BasicData.DriverVMs public override void DoAdd() { - var drvierService = Wtm.ServiceProvider.GetService(typeof(DrvierService)) as DrvierService; - Entity.AssembleName = drvierService.GetAssembleNameByFileName(Entity.FileName); + var DriverService = Wtm.ServiceProvider.GetService(typeof(DriverService)) as DriverService; + Entity.AssembleName = DriverService.GetAssembleNameByFileName(Entity.FileName); if (string.IsNullOrEmpty(Entity.AssembleName)) { MSD.AddModelError("", "程序集获取失败"); diff --git a/IoTGateway.ViewModel/BasicData/UpdateDevices.cs b/IoTGateway.ViewModel/BasicData/UpdateDevices.cs index fa08475..770ea26 100644 --- a/IoTGateway.ViewModel/BasicData/UpdateDevices.cs +++ b/IoTGateway.ViewModel/BasicData/UpdateDevices.cs @@ -78,7 +78,7 @@ namespace IoTGateway.ViewModel.BasicData case FromVM.Device: foreach (var deviceId in Ids) { - var device = DC.Set().AsNoTracking().Include(x => x.Parent).Where(x => x.ID == deviceId).Include(x => x.DeviceVariables).Include(x => x.Driver).SingleOrDefault(); + var device = DC.Set().AsNoTracking().Include(x => x.Parent).Where(x => x.ID == deviceId).Include(x => x.DeviceVariables).Include(x => x.Driver).Include(x=>x.DeviceConfigs).SingleOrDefault(); if (!devices.Where(x => x.ID == device.ID).Any()) devices.Add(device); } diff --git a/IoTGateway.ViewModel/Config/SystemConfigVMs/SystemConfigVM.cs b/IoTGateway.ViewModel/Config/SystemConfigVMs/SystemConfigVM.cs index c5d3e39..125aefc 100644 --- a/IoTGateway.ViewModel/Config/SystemConfigVMs/SystemConfigVM.cs +++ b/IoTGateway.ViewModel/Config/SystemConfigVMs/SystemConfigVM.cs @@ -30,7 +30,7 @@ namespace IoTGateway.ViewModel.Config.SystemConfigVMs { base.DoEdit(updateAllFields); var myMqttClient = Wtm.ServiceProvider.GetService(typeof(MyMqttClient)) as MyMqttClient; - myMqttClient.InitClient(); + myMqttClient.ConnectAsync(); } public override void DoDelete() diff --git a/IoTGateway/Areas/BasicData/Controllers/DeviceController.cs b/IoTGateway/Areas/BasicData/Controllers/DeviceController.cs index 1807228..c3b83b8 100644 --- a/IoTGateway/Areas/BasicData/Controllers/DeviceController.cs +++ b/IoTGateway/Areas/BasicData/Controllers/DeviceController.cs @@ -280,7 +280,29 @@ namespace IoTGateway.Controllers } #endregion + #region 获取属性 + [ActionDescription("获取属性")] + public ActionResult Attribute() + { + var vm = Wtm.CreateVM(); + return PartialView(vm); + } + [HttpPost] + [ActionDescription("获取属性")] + public ActionResult Attribute(AttributeVM vm) + { + if (!ModelState.IsValid) + { + return PartialView(vm); + } + else + { + vm.Request(); + return FFResult().CloseDialog().RefreshGrid().Alert($"{vm.请求结果}"); + } + } + #endregion public IActionResult GetMethods(Guid? ID) { return JsonMore(_DeviceService.GetDriverMethods(ID)); diff --git a/IoTGateway/Areas/BasicData/Views/Device/Attribute.cshtml b/IoTGateway/Areas/BasicData/Views/Device/Attribute.cshtml new file mode 100644 index 0000000..d9dd76f --- /dev/null +++ b/IoTGateway/Areas/BasicData/Views/Device/Attribute.cshtml @@ -0,0 +1,14 @@ +@model IoTGateway.ViewModel.BasicData.DeviceVMs.AttributeVM +@inject IStringLocalizer Localizer; + + + + + @Model.设备名称 + + + + + + + diff --git a/IoTGateway/Areas/BasicData/Views/DeviceConfig/Create.cshtml b/IoTGateway/Areas/BasicData/Views/DeviceConfig/Create.cshtml index 3683df8..1285497 100644 --- a/IoTGateway/Areas/BasicData/Views/DeviceConfig/Create.cshtml +++ b/IoTGateway/Areas/BasicData/Views/DeviceConfig/Create.cshtml @@ -1,10 +1,12 @@ -@model IoTGateway.ViewModel.BasicData.DeviceConfigVMs.DeviceConfigVM +@using IoTGateway.Model +@model IoTGateway.ViewModel.BasicData.DeviceConfigVMs.DeviceConfigVM @inject IStringLocalizer Localizer; + diff --git a/IoTGateway/Controllers/HomeController.cs b/IoTGateway/Controllers/HomeController.cs index 5d8a025..a916b0d 100644 --- a/IoTGateway/Controllers/HomeController.cs +++ b/IoTGateway/Controllers/HomeController.cs @@ -53,21 +53,21 @@ namespace IoTGateway.Controllers data.Add(new ChartData { - Value = _deviceService.DeviceThreads.Where(x => !x.Device.AutoStart).Count(), + Value = _deviceService.DeviceThreads.Where(x => !x._device.AutoStart).Count(), Category = "停止", Series = "Device" }); data.Add(new ChartData { - Value = _deviceService.DeviceThreads.Where(x => x.Device.AutoStart && x.Driver.IsConnected).Count(), + Value = _deviceService.DeviceThreads.Where(x => x._device.AutoStart && x._driver.IsConnected).Count(), Category = "运行", Series = "Device", }); data.Add(new ChartData { - Value = _deviceService.DeviceThreads.Where(x => x.Device.AutoStart && !x.Driver.IsConnected).Count(), + Value = _deviceService.DeviceThreads.Where(x => x._device.AutoStart && !x._driver.IsConnected).Count(), Category = "异常", Series = "Device" }); @@ -78,18 +78,18 @@ namespace IoTGateway.Controllers public IActionResult GetDeviceVariableChart() { var data = new List(); - foreach (var deviceThread in _deviceService.DeviceThreads.OrderBy(x => x.Device.DeviceName)) + foreach (var deviceThread in _deviceService.DeviceThreads.OrderBy(x => x._device.DeviceName)) { data.Add(new ChartData { - Category = deviceThread.Device.DeviceName, + Category = deviceThread._device.DeviceName, Value = deviceThread.DeviceValues.Where(x => x.Value.StatusType != VaribaleStatusTypeEnum.Good).Count(), Series = "Others" }); data.Add(new ChartData { - Category = deviceThread.Device.DeviceName, + Category = deviceThread._device.DeviceName, Value = deviceThread.DeviceValues.Where(x => x.Value.StatusType == VaribaleStatusTypeEnum.Good).Count(), Series = "Good" }); diff --git a/IoTGateway/Startup.cs b/IoTGateway/Startup.cs index a25b8f1..59233ae 100644 --- a/IoTGateway/Startup.cs +++ b/IoTGateway/Startup.cs @@ -46,18 +46,20 @@ namespace IoTGateway { options.UseWtmMvcOptions(); }) - .AddJsonOptions(options => { + .AddJsonOptions(options => + { options.UseWtmJsonOptions(); }) - + .ConfigureApiBehaviorOptions(options => { options.UseWtmApiOptions(); }) .AddViewLocalization(LanguageViewLocationExpanderFormat.Suffix) .AddWtmDataAnnotationsLocalization(typeof(Program)); - - services.AddWtmContext(ConfigRoot, (options)=> { + + services.AddWtmContext(ConfigRoot, (options) => + { options.DataPrivileges = DataPrivilegeSettings(); options.CsSelector = CSSelector; options.FileSubDirSelector = SubDirSelector; @@ -75,7 +77,7 @@ namespace IoTGateway services.AddHostedService(); services.AddSingleton(); - services.AddSingleton(); + services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); @@ -137,7 +139,7 @@ namespace IoTGateway app.UseWtmContext(); - + } ///

diff --git a/IoTGateway/appsettings.json b/IoTGateway/appsettings.json index f0dbb3f..d06446c 100644 --- a/IoTGateway/appsettings.json +++ b/IoTGateway/appsettings.json @@ -3,13 +3,13 @@ "Console": { "IncludeScopes": true, "LogLevel": { - "Default": "Error" + "Default": "Information" } }, "Debug": { "IncludeScopes": true, "LogLevel": { - "Default": "Error" + "Default": "Information" } }, "WTM": { diff --git a/IoTGateway/iotgateway.db b/IoTGateway/iotgateway.db index 1fe84383c3456420936c8e3b5427366a89b30d98..f132ff4e3c85a1aec11d0a6ce964379ee79358cc 100644 GIT binary patch delta 8235 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 delta 3695 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 diff --git a/Plugins/Plugin/DeviceService.cs b/Plugins/Plugin/DeviceService.cs index a03fc6f..62d7f35 100644 --- a/Plugins/Plugin/DeviceService.cs +++ b/Plugins/Plugin/DeviceService.cs @@ -16,12 +16,14 @@ using IoTGateway.DataAccess; using IoTGateway.Model; using DynamicExpresso; using MQTTnet.Server; +using Microsoft.Extensions.Logging; namespace Plugin { public class DeviceService : IDisposable { - public DrvierService _DrvierManager; + private readonly ILogger _logger; + public DriverService _DrvierManager; public List DeviceThreads = new List(); private MyMqttClient _MyMqttClient; @@ -29,9 +31,9 @@ namespace Plugin private string connnectSetting = IoTBackgroundService.connnectSetting; private DBTypeEnum DBType = IoTBackgroundService.DBType; private Interpreter interpreter = new(); - - public DeviceService(IConfiguration ConfigRoot, DrvierService drvierManager, MyMqttClient myMqttClient, UAService uAService, IMqttServer mqttServer ) + public DeviceService(IConfiguration ConfigRoot, DriverService drvierManager, MyMqttClient myMqttClient, UAService uAService, IMqttServer mqttServer, ILogger logger) { + _logger = logger; _DrvierManager = drvierManager; _MyMqttClient = myMqttClient; _MqttServer = mqttServer; @@ -41,6 +43,7 @@ namespace Plugin using (var DC = new DataContext(connnectSetting, DBType)) { var Devices = DC.Set().Where(x => x.DeviceTypeEnum == DeviceTypeEnum.Device).Include(x => x.Parent).Include(x => x.Driver).Include(x => x.DeviceConfigs).Include(x => x.DeviceVariables).AsNoTracking().ToList(); + _logger.LogInformation($"Loaded Devices Count:{Devices.Count()}"); foreach (var Device in Devices) { CreateDeviceThread(Device); @@ -50,6 +53,7 @@ namespace Plugin catch (Exception ex) { + _logger.LogError($"LoadDevicesError", ex); } } @@ -57,12 +61,14 @@ namespace Plugin { try { + _logger.LogInformation($"UpdateDevice Start:{device.DeviceName}"); RemoveDeviceThread(device); CreateDeviceThread(device); + _logger.LogInformation($"UpdateDevice End:{device.DeviceName}"); } catch (Exception ex) { - Console.WriteLine($"{device.DeviceName},更新失败"); + _logger.LogError($"UpdateDevice Error:{device.DeviceName}", ex); } } @@ -75,13 +81,12 @@ namespace Plugin public void CreateDeviceThread(Device Device) { - using (var DC = new DataContext(connnectSetting, DBType)) + try { - var systemManage = DC.Set().FirstOrDefault(); - if (systemManage == null) - Console.WriteLine("配置信息错误,无法启动"); - else + _logger.LogInformation($"CreateDeviceThread Start:{Device.DeviceName}"); + using (var DC = new DataContext(connnectSetting, DBType)) { + var systemManage = DC.Set().FirstOrDefault(); var driver = _DrvierManager.DriverInfos.Where(x => x.Type.FullName == Device.Driver.AssembleName).SingleOrDefault(); var settings = DC.Set().Where(x => x.DeviceId == Device.ID).AsNoTracking().ToList(); Type[] types = new Type[1] { typeof(Guid) }; @@ -137,10 +142,17 @@ namespace Plugin p.SetValue(DeviceObj, value); } - var deviceThread = new DeviceThread(Device, DeviceObj, systemManage.GatewayName, _MyMqttClient, interpreter, _MqttServer); + var deviceThread = new DeviceThread(Device, DeviceObj, systemManage.GatewayName, _MyMqttClient, interpreter, _MqttServer, _logger); DeviceThreads.Add(deviceThread); + } + _logger.LogInformation($"CreateDeviceThread End:{Device.DeviceName}"); + } + catch (Exception ex) + { + _logger.LogInformation($"CreateDeviceThread Error:{Device.DeviceName}", ex); + } } @@ -155,7 +167,7 @@ namespace Plugin { if (Device != null) { - var DeviceThread = DeviceThreads.Where(x => x.Device.ID == Device.ID).FirstOrDefault(); + var DeviceThread = DeviceThreads.Where(x => x._device.ID == Device.ID).FirstOrDefault(); if (DeviceThread != null) { DeviceThread.StopThread(); @@ -174,21 +186,32 @@ namespace Plugin public List GetDriverMethods(Guid? DeviceId) { List driverFilesComboSelect = new List(); - foreach (var method in DeviceThreads.Where(x => x.Device.ID == DeviceId).FirstOrDefault()?.Methods) + try { - var Attribute = method.CustomAttributes.ToList().FirstOrDefault().ConstructorArguments; - var item = new ComboSelectListItem + _logger.LogInformation($"GetDriverMethods Start:{DeviceId}"); + foreach (var method in DeviceThreads.Where(x => x._device.ID == DeviceId).FirstOrDefault()?.Methods) { - Text = method.Name, - Value = method.Name, - }; - driverFilesComboSelect.Add(item); + var Attribute = method.CustomAttributes.ToList().FirstOrDefault().ConstructorArguments; + var item = new ComboSelectListItem + { + Text = method.Name, + Value = method.Name, + }; + driverFilesComboSelect.Add(item); + } + _logger.LogInformation($"GetDriverMethods End:{DeviceId}"); } + catch (Exception ex) + { + + _logger.LogInformation($"GetDriverMethods Error:{DeviceId}"); + } + return driverFilesComboSelect; } public void Dispose() { - int t = 0; + _logger.LogInformation("Dispose"); } public Task StartAsync(CancellationToken cancellationToken) diff --git a/Plugins/Plugin/DeviceThread.cs b/Plugins/Plugin/DeviceThread.cs index 76e6cb6..f921ce2 100644 --- a/Plugins/Plugin/DeviceThread.cs +++ b/Plugins/Plugin/DeviceThread.cs @@ -12,13 +12,15 @@ using WalkingTec.Mvvm.Core; using DynamicExpresso; using MQTTnet.Server; using Newtonsoft.Json; +using Microsoft.Extensions.Logging; namespace Plugin { public class DeviceThread : IDisposable { - public Device Device { get; set; } - public IDriver Driver { get; set; } + private readonly ILogger _logger; + public readonly Device _device; + public readonly IDriver _driver; public Dictionary DeviceValues { get; set; } = new(); internal List Methods { get; set; } private Task task { get; set; } = null; @@ -26,140 +28,141 @@ namespace Plugin private CancellationTokenSource tokenSource = new CancellationTokenSource(); private Interpreter Interpreter = null; - public DeviceThread(Device device, IDriver driver, string ProjectId, MyMqttClient myMqttClient, Interpreter interpreter, IMqttServer mqttServer) + public DeviceThread(Device device, IDriver driver, string ProjectId, MyMqttClient myMqttClient, Interpreter interpreter, IMqttServer mqttServer, ILogger logger) { - Device = device; - Driver = driver; + _device = device; + _driver = driver; Interpreter = interpreter; - Methods = Driver.GetType().GetMethods().Where(x => x.GetCustomAttribute(typeof(MethodAttribute)) != null).ToList(); - if (Device.AutoStart) + _logger = logger; + Methods = _driver.GetType().GetMethods().Where(x => x.GetCustomAttribute(typeof(MethodAttribute)) != null).ToList(); + if (_device.AutoStart) { - Console.WriteLine($"采集线程已启动:{Device.DeviceName}"); + _logger.LogInformation($"线程已启动:{_device.DeviceName}"); using (var DC = new DataContext(IoTBackgroundService.connnectSetting, IoTBackgroundService.DBType)) { - if (Device.DeviceVariables != null) + if (_device.DeviceVariables != null) { - foreach (var item in Device.DeviceVariables) + foreach (var item in _device.DeviceVariables) { DeviceValues[item.ID] = new() { StatusType = VaribaleStatusTypeEnum.Bad }; } } } + myMqttClient.UploadAttributeAsync(device.DeviceName, device.DeviceConfigs.Where(x => x.DataSide == DataSide.ClientSide).ToDictionary(x => x.DeviceConfigName, x => x.Value)); + task = Task.Run(() => - { - while (true) - { - if (tokenSource.IsCancellationRequested) - { - Console.WriteLine($"{Device.DeviceName},停止线程"); - return; - } + { + while (true) + { + if (tokenSource.IsCancellationRequested) + { + _logger.LogInformation($"停止线程:{_device.DeviceName}"); + return; + } - try - { - Dictionary> sendModel = new() { { Device.DeviceName, new() } }; + try + { + Dictionary> sendModel = new() { { _device.DeviceName, new() } }; - var payLoad = new PayLoad() { Values = new() }; - if (false)//Device.DeviceConfigs != null 配置数据先不上传 - foreach (var DeviceConfig in Device.DeviceConfigs) - payLoad.Values[DeviceConfig.DeviceConfigName] = DeviceConfig.Value; + var payLoad = new PayLoad() { Values = new() }; - if (driver.IsConnected) - { - if (Device.DeviceVariables != null) - { - foreach (var item in Device.DeviceVariables) - { - var ret = new DriverReturnValueModel(); - var ioarg = new DriverAddressIoArgModel - { - ID = item.ID, - Address = item.DeviceAddress, - ValueType = item.DataType - }; - var method = Methods.Where(x => x.Name == item.Method).FirstOrDefault(); - if (method == null) - ret.StatusType = VaribaleStatusTypeEnum.MethodError; - else - ret = (DriverReturnValueModel)method.Invoke(Driver, new object[1] { ioarg }); + if (driver.IsConnected) + { + if (_device.DeviceVariables != null) + { + foreach (var item in _device.DeviceVariables) + { + var ret = new DriverReturnValueModel(); + var ioarg = new DriverAddressIoArgModel + { + ID = item.ID, + Address = item.DeviceAddress, + ValueType = item.DataType + }; + var method = Methods.Where(x => x.Name == item.Method).FirstOrDefault(); + if (method == null) + ret.StatusType = VaribaleStatusTypeEnum.MethodError; + else + ret = (DriverReturnValueModel)method.Invoke(_driver, new object[1] { ioarg }); - if (ret.StatusType == VaribaleStatusTypeEnum.Good && !string.IsNullOrWhiteSpace(item.Expressions?.Trim())) - { - try - { - ret.CookedValue = interpreter.Eval(DealMysqlStr(item.Expressions).Replace("raw", ret.Value?.ToString())); - } - catch (Exception) - { - ret.StatusType = VaribaleStatusTypeEnum.ExpressionError; - } - } - else - ret.CookedValue = ret.Value; + if (ret.StatusType == VaribaleStatusTypeEnum.Good && !string.IsNullOrWhiteSpace(item.Expressions?.Trim())) + { + try + { + ret.CookedValue = interpreter.Eval(DealMysqlStr(item.Expressions).Replace("raw", ret.Value?.ToString())); + } + catch (Exception) + { + ret.StatusType = VaribaleStatusTypeEnum.ExpressionError; + } + } + else + ret.CookedValue = ret.Value; - payLoad.Values[item.Name] = ret.CookedValue; + payLoad.Values[item.Name] = ret.CookedValue; - ret.VarId = item.ID; + ret.VarId = item.ID; - //变化了才推送到mqttserver,用于前端展示 - if (DeviceValues[item.ID].StatusType != ret.StatusType || DeviceValues[item.ID].Value?.ToString() != ret.Value?.ToString() || DeviceValues[item.ID].CookedValue?.ToString() != ret.CookedValue?.ToString()) - { - //这是设备变量列表要用的 - mqttServer.PublishAsync($"internal/v1/gateway/telemetry/{Device.DeviceName}/{item.Name}", JsonConvert.SerializeObject(ret)); - //这是在线组态要用的 - mqttServer.PublishAsync($"v1/gateway/telemetry/{Device.DeviceName}/{item.Name}", JsonConvert.SerializeObject(ret.CookedValue)); - } + //变化了才推送到mqttserver,用于前端展示 + if (DeviceValues[item.ID].StatusType != ret.StatusType || DeviceValues[item.ID].Value?.ToString() != ret.Value?.ToString() || DeviceValues[item.ID].CookedValue?.ToString() != ret.CookedValue?.ToString()) + { + //这是设备变量列表要用的 + mqttServer.PublishAsync($"internal/v1/gateway/telemetry/{_device.DeviceName}/{item.Name}", JsonConvert.SerializeObject(ret)); + //这是在线组态要用的 + mqttServer.PublishAsync($"v1/gateway/telemetry/{_device.DeviceName}/{item.Name}", JsonConvert.SerializeObject(ret.CookedValue)); + } - DeviceValues[item.ID] = ret; + DeviceValues[item.ID] = ret; - } - payLoad.TS = (long)(DateTime.Now - TsStartDt).TotalMilliseconds; + } + payLoad.TS = (long)(DateTime.Now - TsStartDt).TotalMilliseconds; - if (DeviceValues.Any(x => x.Value.Value ==null)) - { - payLoad.Values = null; - payLoad.DeviceStatus = DeviceStatusTypeEnum.Bad; - } - else - { - payLoad.DeviceStatus = DeviceStatusTypeEnum.Good; - sendModel[Device.DeviceName] = new List { payLoad }; - myMqttClient.Publish(Device,sendModel); - } - } + if (DeviceValues.Any(x => x.Value.Value == null)) + { + payLoad.Values = null; + payLoad.DeviceStatus = DeviceStatusTypeEnum.Bad; + } + else + { + payLoad.DeviceStatus = DeviceStatusTypeEnum.Good; + sendModel[_device.DeviceName] = new List { payLoad }; + myMqttClient.PublishTelemetry(_device, sendModel); + } + } - } - else - { - driver.Connect(); - } - } - catch (Exception ex) - { - Console.WriteLine($"线程循环异常,{Device.DeviceName},{ex}"); - } + } + else + { + driver.Connect(); + } + } + catch (Exception ex) + { + _logger.LogError($"线程循环异常,{_device.DeviceName}", ex); + } - Thread.Sleep((int)Driver.MinPeriod); - } - }); + Thread.Sleep((int)_driver.MinPeriod); + } + }); } } public void StopThread() { + _logger.LogInformation($"线程停止:{_device.DeviceName}"); if (task != null) { - Driver.Close(); + _driver.Close(); tokenSource.Cancel(); } } public void Dispose() { - Driver.Dispose(); - Console.WriteLine($"{Device.DeviceName},释放"); + _driver.Dispose(); + _logger.LogInformation($"线程释放,{_device.DeviceName}"); } //mysql会把一些符号转义,没找到原因,先临时处理下 diff --git a/Plugins/Plugin/DrvierService.cs b/Plugins/Plugin/DrvierService.cs index fcaa65f..bf0dec9 100644 --- a/Plugins/Plugin/DrvierService.cs +++ b/Plugins/Plugin/DrvierService.cs @@ -11,23 +11,28 @@ using System.Threading.Tasks; using WalkingTec.Mvvm.Core; using IoTGateway.DataAccess; using IoTGateway.Model; +using Microsoft.Extensions.Logging; namespace Plugin { - public class DrvierService//: IDependency + public class DriverService//: IDependency { + private readonly ILogger _logger; string DriverPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"drivers/net6.0"); string[] driverFiles; public List DriverInfos = new List(); - public DrvierService(IConfiguration ConfigRoot) + public DriverService(IConfiguration ConfigRoot, ILogger logger) { + _logger = logger; try { - driverFiles = Directory.GetFiles(DriverPath).Where(x => Path.GetExtension(x) == ".dll").ToArray(); + _logger.LogInformation("LoadDriverFiles Start"); + driverFiles = Directory.GetFiles(DriverPath).Where(x => Path.GetExtension(x) == ".dll").ToArray(); + _logger.LogInformation($"LoadDriverFiles End,Count{driverFiles.Count()}"); } - catch (Exception) + catch (Exception ex) { - + _logger.LogError("LoadDriverFiles Error", ex); } LoadAllDrivers(); } @@ -91,6 +96,7 @@ namespace Plugin ID = Guid.NewGuid(), DeviceId = dapID, DeviceConfigName = property.Name, + DataSide= DataSide.AnySide, Description = ((ConfigParameterAttribute)config).Description, Value = property.GetValue(iObj)?.ToString() }; @@ -112,6 +118,7 @@ namespace Plugin { try { + _logger.LogInformation("LoadAllDrivers Start"); foreach (var file in driverFiles) { var dll = Assembly.LoadFrom(file); @@ -125,10 +132,11 @@ namespace Plugin DriverInfos.Add(driverInfo); } } + _logger.LogInformation($"LoadAllDrivers End,Count{DriverInfos.Count}"); } catch (Exception ex) { - Console.WriteLine("驱动加载失败,一般是驱动项目引用的nuget或dll没有复制到驱动文件夹"); + _logger.LogError("LoadAllDrivers Error,一般是驱动项目引用的nuget或dll没有复制到驱动文件夹", ex); } } diff --git a/Plugins/Plugin/ModbusSlaveService.cs b/Plugins/Plugin/ModbusSlaveService.cs index 41479ff..8944e62 100644 --- a/Plugins/Plugin/ModbusSlaveService.cs +++ b/Plugins/Plugin/ModbusSlaveService.cs @@ -1,4 +1,5 @@ -using Modbus.Data; +using Microsoft.Extensions.Logging; +using Modbus.Data; using Modbus.Device; using System; using System.Collections.Generic; @@ -12,13 +13,15 @@ namespace Plugin { public class ModbusSlaveService : IDisposable { + private readonly ILogger _logger; TcpListener slaveTcpListener; private Timer m_simulationTimer; private object Lock=new object(); private ModbusSlave slave; private Task task { get; set; } = null; - public ModbusSlaveService() + public ModbusSlaveService(ILogger logger) { + _logger = logger; byte slaveId = 1; int port = 503; IPAddress address = IPAddress.Any; @@ -30,6 +33,7 @@ namespace Plugin slave.DataStore = DataStoreFactory.CreateDefaultDataStore(); slave.ListenAsync(); m_simulationTimer = new Timer(DoSimulation, null, 1000, 1000); + _logger.LogInformation($"Modbus Server Started"); } private void DoSimulation(object state) @@ -53,11 +57,12 @@ namespace Plugin } catch (Exception ex) { - Console.WriteLine($"modbus模拟数据失败了,{ex}"); + _logger.LogError($"Modbus Server Error", ex); } } public void Dispose() { + _logger.LogError($"Modbus Server Dispose"); m_simulationTimer.Dispose(); slaveTcpListener.Stop(); } diff --git a/Plugins/Plugin/MyMqttClient.cs b/Plugins/Plugin/MyMqttClient.cs index fe1b897..1bb38c0 100644 --- a/Plugins/Plugin/MyMqttClient.cs +++ b/Plugins/Plugin/MyMqttClient.cs @@ -1,91 +1,221 @@ -using Microsoft.Extensions.Configuration; +using IoTGateway.DataAccess; +using IoTGateway.Model; +using Microsoft.Extensions.Logging; using MQTTnet; using MQTTnet.Client; using MQTTnet.Client.Connecting; using MQTTnet.Client.Disconnecting; using MQTTnet.Client.Options; using MQTTnet.Client.Receiving; -using System; +using MQTTnet.Protocol; using Newtonsoft.Json; -using WalkingTec.Mvvm.Core; -using System.Collections.Generic; -using IoTGateway.DataAccess; -using IoTGateway.Model; -using System.Linq; using PluginInterface; -using Microsoft.Extensions.DependencyInjection; using Quickstarts.ReferenceServer; -using Opc.Ua; namespace Plugin { - public class MyMqttClient//: IDependency + public class MyMqttClient { - private IMqttClient _mqttClient = null; - private ReferenceNodeManager _uaNodeManager = null; - private MqttClientOptionsBuilder builder = null; - private SystemConfig systemConfig = null; - public MyMqttClient(UAService uaService) + private readonly ILogger _logger; + private readonly ReferenceNodeManager _uaNodeManager = null; + + private SystemConfig? _systemConfig; + private IMqttClientOptions clientOptions; + public bool IsConnected => (Client?.IsConnected).GetValueOrDefault(); + private IMqttClient Client { get; set; } + public event EventHandler OnExcRpc; + public event EventHandler OnReceiveAttributes; + public MyMqttClient(UAService uaService, ILogger logger) { + _logger = logger; _uaNodeManager = uaService.server.m_server.nodeManagers[0] as ReferenceNodeManager; - InitClient(); + ConnectAsync(); } - public void InitClient() + + public async Task ConnectAsync() + { + bool initok = false; + try + { + using (var DC = new DataContext(IoTBackgroundService.connnectSetting, IoTBackgroundService.DBType)) + { + _systemConfig = DC.Set().FirstOrDefault(); + if (_systemConfig == null) + { + _systemConfig = new SystemConfig() + { + ID = Guid.NewGuid(), + GatewayName = "iotgateway", + MqttIp = "localhost", + MqttPort = 1888, + MqttUName = "user", + MqttUPwd = "pwd", + IoTPlatformType = IoTPlatformType.IoTSharp + }; + DC.Set().Add(_systemConfig); + DC.SaveChanges(); + } + var factory = new MqttFactory(); + Client = (MqttClient)factory.CreateMqttClient(); + clientOptions = new MqttClientOptionsBuilder() + .WithClientId(_systemConfig.GatewayName + Guid.NewGuid().ToString()) + .WithTcpServer(_systemConfig.MqttIp, _systemConfig.MqttPort) + .WithCredentials(_systemConfig.MqttUName, _systemConfig.MqttUPwd) + .WithCommunicationTimeout(TimeSpan.FromSeconds(30)) + .WithKeepAlivePeriod(TimeSpan.FromSeconds(20)) + .Build(); + + Client.ApplicationMessageReceivedHandler = new MqttApplicationMessageReceivedHandlerDelegate(Client_ApplicationMessageReceived); + Client.ConnectedHandler = new MqttClientConnectedHandlerDelegate(x => OnConnected()); + Client.DisconnectedHandler = new MqttClientDisconnectedHandlerDelegate(x => OnDisconnectedAsync()); + try + { + Client.ConnectAsync(clientOptions); + initok = true; + } + catch (Exception exception) + { + _logger.LogError("MQTT CONNECTING FAILED", exception); + } + _logger.LogInformation("MQTT WAITING FOR APPLICATION MESSAGES"); + } + } + catch (Exception exception) + { + _logger.LogError("MQTT CONNECTING FAILED", exception); + } + return initok; + } + + private async Task OnDisconnectedAsync() { try { - if (_mqttClient != null) - _mqttClient.Dispose(); + await Client.ConnectAsync(clientOptions); + } + catch (Exception exception) + { + _logger.LogError("MQTT CONNECTING FAILED", exception); + } + } - using (var DC = new DataContext(IoTBackgroundService.connnectSetting, IoTBackgroundService.DBType)) + private void OnConnected() + { + Client.SubscribeAsync($"devices/+/rpc/request/+/+", MqttQualityOfServiceLevel.ExactlyOnce); + Client.SubscribeAsync($"devices/Modbus/attributes/update/", MqttQualityOfServiceLevel.ExactlyOnce); + Client.SubscribeAsync($"devices/+/attributes/response/+", MqttQualityOfServiceLevel.ExactlyOnce); + _logger.LogInformation($"MQTT CONNECTED WITH SERVER "); + } + + private Task Client_ApplicationMessageReceived(MqttApplicationMessageReceivedEventArgs e) + { + _logger.LogDebug($"ApplicationMessageReceived Topic {e.ApplicationMessage.Topic} QualityOfServiceLevel:{e.ApplicationMessage.QualityOfServiceLevel} Retain:{e.ApplicationMessage.Retain} "); + try + { + if (e.ApplicationMessage.Topic.StartsWith($"devices/") && e.ApplicationMessage.Topic.Contains("/response/")) { - systemConfig = DC.Set().FirstOrDefault(); - if (systemConfig == null) - Console.WriteLine("配置信息错误,无法启动"); - else + ReceiveAttributes(e); + } + else if (e.ApplicationMessage.Topic.StartsWith($"devices/") && e.ApplicationMessage.Topic.Contains("/rpc/request/")) + { + var tps = e.ApplicationMessage.Topic.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries); + var rpcmethodname = tps[4]; + var rpcdevicename = tps[1]; + var rpcrequestid = tps[5]; + _logger.LogInformation($"rpcmethodname={rpcmethodname} "); + _logger.LogInformation($"rpcdevicename={rpcdevicename } "); + _logger.LogInformation($"rpcrequestid={rpcrequestid} "); + if (!string.IsNullOrEmpty(rpcmethodname) && !string.IsNullOrEmpty(rpcdevicename) && !string.IsNullOrEmpty(rpcrequestid)) { - _mqttClient = new MqttFactory().CreateMqttClient(); - _mqttClient.ConnectedHandler = new MqttClientConnectedHandlerDelegate(x => OnConnected()); - _mqttClient.DisconnectedHandler = new MqttClientDisconnectedHandlerDelegate(x => OnDisconnected()); - _mqttClient.ApplicationMessageReceivedHandler = new MqttApplicationMessageReceivedHandlerDelegate(OnReceived); - builder = new MqttClientOptionsBuilder() - .WithCommunicationTimeout(TimeSpan.FromSeconds(60)) - .WithKeepAlivePeriod(TimeSpan.FromSeconds(20)) - .WithTcpServer(systemConfig.MqttIp, systemConfig.MqttPort) - .WithClientId(systemConfig.MqttUName + Guid.NewGuid().ToString()) - .WithCredentials(systemConfig.MqttUName, systemConfig.MqttUPwd); - - _mqttClient.ConnectAsync(builder.Build()); + OnExcRpc?.Invoke(Client, new RpcRequest() + { + Method = rpcmethodname, + DeviceId = rpcdevicename, + RequestId = rpcrequestid, + Params = e.ApplicationMessage.ConvertPayloadToString() + }); } } } catch (Exception ex) { - + _logger.LogError($"ClientId:{e.ClientId} Topic:{e.ApplicationMessage.Topic},Payload:{e.ApplicationMessage.ConvertPayloadToString()}", ex); } - + return Task.CompletedTask; } - public void Publish(Device device, Dictionary> SendModel) + private void ReceiveAttributes(MqttApplicationMessageReceivedEventArgs e) + { + var tps = e.ApplicationMessage.Topic.Split(new char[] { '/' }, StringSplitOptions.RemoveEmptyEntries); + var rpcmethodname = tps[2]; + var rpcdevicename = tps[1]; + var rpcrequestid = tps[4]; + _logger.LogInformation($"rpcmethodname={rpcmethodname} "); + _logger.LogInformation($"rpcdevicename={rpcdevicename } "); + _logger.LogInformation($"rpcrequestid={rpcrequestid} "); + + if (!string.IsNullOrEmpty(rpcmethodname) && !string.IsNullOrEmpty(rpcdevicename) && !string.IsNullOrEmpty(rpcrequestid)) + { + if (e.ApplicationMessage.Topic.Contains("/attributes/")) + { + OnReceiveAttributes?.Invoke(Client, new AttributeResponse() + { + KeyName = rpcmethodname, + DeviceName = rpcdevicename, + Id = rpcrequestid, + Data = e.ApplicationMessage.ConvertPayloadToString() + }); + } + } + } + + public Task UploadAttributeAsync(string _devicename, object obj) + { + return Client.PublishAsync(new MqttApplicationMessageBuilder().WithTopic($"devices/{_devicename}/attributes").WithPayload(Newtonsoft.Json.JsonConvert.SerializeObject(obj)).Build()); + } + + public Task UploadTelemetryDataAsync(string _devicename, object obj) + { + return Client.PublishAsync(new MqttApplicationMessageBuilder().WithTopic($"devices/{_devicename}/telemetry").WithPayload(Newtonsoft.Json.JsonConvert.SerializeObject(obj)).Build()); + } + + public Task ResponseExecommand(RpcResponse rpcResult) + { + ///IoTSharp/Clients/RpcClient.cs#L65 var responseTopic = $"/devices/{deviceid}/rpc/response/{methodName}/{rpcid}"; + string topic = $"devices/{rpcResult.DeviceId}/rpc/response/{rpcResult.Method.ToString()}/{rpcResult.ResponseId}"; + return Client.PublishAsync(new MqttApplicationMessageBuilder().WithTopic(topic).WithPayload(rpcResult.Data.ToString()).WithQualityOfServiceLevel(MqttQualityOfServiceLevel.ExactlyOnce).Build()); + } + + public Task RequestAttributes(string _device, bool anySide, params string[] args) + { + string id = Guid.NewGuid().ToString(); + string topic = $"devices/{_device}/attributes/request/{id}"; + Dictionary keys = new Dictionary(); + keys.Add(anySide ? "anySide" : "server", string.Join(",", args)); + Client.SubscribeAsync($"devices/{_device}/attributes/response/{id}", MqttQualityOfServiceLevel.ExactlyOnce); + return Client.PublishAsync(topic, Newtonsoft.Json.JsonConvert.SerializeObject(keys), MqttQualityOfServiceLevel.ExactlyOnce); + } + + public void PublishTelemetry(Device device, Dictionary> SendModel) { try { - switch (systemConfig.IoTPlatformType) + switch (_systemConfig.IoTPlatformType) { case IoTPlatformType.ThingsBoard: - _mqttClient.PublishAsync("v1/gateway/telemetry", JsonConvert.SerializeObject(SendModel)); + Client.PublishAsync("v1/gateway/telemetry", JsonConvert.SerializeObject(SendModel)); break; case IoTPlatformType.IoTSharp: foreach (var payload in SendModel[device.DeviceName]) { - _mqttClient.PublishAsync($"devices/{device.DeviceName}/telemetry", JsonConvert.SerializeObject(payload.Values)); + UploadTelemetryDataAsync(device.DeviceName, payload.Values); } break; case IoTPlatformType.AliCloudIoT: case IoTPlatformType.TencentIoTHub: case IoTPlatformType.BaiduIoTCore: case IoTPlatformType.OneNET: - default: + default: break; } foreach (var payload in SendModel[device.DeviceName]) @@ -93,7 +223,7 @@ namespace Plugin foreach (var kv in payload.Values) { //更新到UAService - _uaNodeManager?.UpdateNode($"{device.Parent.DeviceName}.{device.DeviceName}.{kv.Key}", kv.Value); + _uaNodeManager.UpdateNode($"{device.Parent.DeviceName}.{device.DeviceName}.{kv.Key}", kv.Value); } } @@ -106,27 +236,27 @@ namespace Plugin } - private void Update2UAService() - { - int i = 0; - } + } + public class RpcRequest + { + public string DeviceId { get; set; } + public string Method { get; set; } + public string RequestId { get; set; } + public string Params { get; set; } + } + public class RpcResponse + { + public string DeviceId { get; set; } + public string Method { get; set; } + public string ResponseId { get; set; } + public string Data { get; set; } + } + public class AttributeResponse + { + public string Id { get; set; } + public string DeviceName { get; set; } + public string KeyName { get; set; } - private void OnReceived(MqttApplicationMessageReceivedEventArgs obj) - { - var topic = obj.ApplicationMessage.Topic; - var msg = System.Text.Encoding.UTF8.GetString(obj.ApplicationMessage.Payload); - Console.WriteLine($"{topic}: {msg}"); - } - - private void OnDisconnected() - { - Console.WriteLine("Mqtt连接断开"); - _mqttClient.ConnectAsync(builder.Build()); - } - - private void OnConnected() - { - Console.WriteLine("Mqtt连接正常"); - } + public string Data { get; set; } } }