From 1221b26691ea967cb8c5559762a60119d35615b0 Mon Sep 17 00:00:00 2001 From: quowingwang Date: Sat, 20 Dec 2025 13:34:43 +0800 Subject: [PATCH] 1 --- .../mes/andon/AndonAlarmAreaController.cs | 109 ++++++++++++++++++ .../ZrAdmin.NET-报警区域表-1220132858.zip | Bin 0 -> 7825 bytes ZR.Model/MES/andon/AndonAlarmArea.cs | 51 ++++++++ ZR.Model/MES/andon/Dto/AndonAlarmAreaDto.cs | 35 ++++++ ZR.Service/mes/andon/AndonAlarmAreaService.cs | 79 +++++++++++++ .../andon/IService/IAndonAlarmAreaService.cs | 23 ++++ 6 files changed, 297 insertions(+) create mode 100644 ZR.Admin.WebApi/Controllers/mes/andon/AndonAlarmAreaController.cs create mode 100644 ZR.Admin.WebApi/wwwroot/Generatecode/ZrAdmin.NET-报警区域表-1220132858.zip create mode 100644 ZR.Model/MES/andon/AndonAlarmArea.cs create mode 100644 ZR.Model/MES/andon/Dto/AndonAlarmAreaDto.cs create mode 100644 ZR.Service/mes/andon/AndonAlarmAreaService.cs create mode 100644 ZR.Service/mes/andon/IService/IAndonAlarmAreaService.cs diff --git a/ZR.Admin.WebApi/Controllers/mes/andon/AndonAlarmAreaController.cs b/ZR.Admin.WebApi/Controllers/mes/andon/AndonAlarmAreaController.cs new file mode 100644 index 00000000..88daa5f2 --- /dev/null +++ b/ZR.Admin.WebApi/Controllers/mes/andon/AndonAlarmAreaController.cs @@ -0,0 +1,109 @@ +using Microsoft.AspNetCore.Mvc; +using ZR.Admin.WebApi.Extensions; +using ZR.Admin.WebApi.Filters; +using ZR.Model.MES.andon; +using ZR.Model.MES.andon.Dto; +using ZR.Service.mes.andon.Iservice; + +//创建时间:2025-12-20 +namespace ZR.Admin.WebApi.Controllers.andon +{ + /// + /// 报警区域表 + /// + [AllowAnonymous] + [Route("business/AndonAlarmArea")] + public class AndonAlarmAreaController : BaseController + { + /// + /// 报警区域表接口 + /// + private readonly IAndonAlarmAreaService _AndonAlarmAreaService; + + public AndonAlarmAreaController(IAndonAlarmAreaService AndonAlarmAreaService) + { + _AndonAlarmAreaService = AndonAlarmAreaService; + } + + /// + /// 查询报警区域表列表 + /// + /// + /// + [HttpGet("list")] + [ActionPermissionFilter(Permission = "business:andonalarmarea:list")] + public IActionResult QueryAndonAlarmArea([FromQuery] AndonAlarmAreaQueryDto parm) + { + var response = _AndonAlarmAreaService.GetList(parm); + return SUCCESS(response); + } + + + /// + /// 查询报警区域表详情 + /// + /// + /// + [HttpGet("{Id}")] + [ActionPermissionFilter(Permission = "business:andonalarmarea:query")] + public IActionResult GetAndonAlarmArea(int Id) + { + var response = _AndonAlarmAreaService.GetInfo(Id); + + var info = response.Adapt(); + return SUCCESS(info); + } + + /// + /// 添加报警区域表 + /// + /// + [HttpPost] + [ActionPermissionFilter(Permission = "business:andonalarmarea:add")] + [Log(Title = "报警区域表", BusinessType = BusinessType.INSERT)] + public IActionResult AddAndonAlarmArea([FromBody] AndonAlarmAreaDto parm) + { + var modal = parm.Adapt().ToCreate(HttpContext); + + var response = _AndonAlarmAreaService.AddAndonAlarmArea(modal); + + return SUCCESS(response); + } + + /// + /// 更新报警区域表 + /// + /// + [HttpPut] + [ActionPermissionFilter(Permission = "business:andonalarmarea:edit")] + [Log(Title = "报警区域表", BusinessType = BusinessType.UPDATE)] + public IActionResult UpdateAndonAlarmArea([FromBody] AndonAlarmAreaDto parm) + { + var modal = parm.Adapt().ToUpdate(HttpContext); + var response = _AndonAlarmAreaService.UpdateAndonAlarmArea(modal); + + return ToResponse(response); + } + + /// + /// 删除报警区域表 + /// + /// + [HttpDelete("{ids}")] + [ActionPermissionFilter(Permission = "business:andonalarmarea:delete")] + [Log(Title = "报警区域表", BusinessType = BusinessType.DELETE)] + public IActionResult DeleteAndonAlarmArea(string ids) + { + int[] idsArr = Tools.SpitIntArrary(ids); + if (idsArr.Length <= 0) { return ToResponse(ApiResult.Error($"删除失败Id 不能为空")); } + + var response = _AndonAlarmAreaService.Delete(idsArr); + + return ToResponse(response); + } + + + + + } +} \ No newline at end of file diff --git a/ZR.Admin.WebApi/wwwroot/Generatecode/ZrAdmin.NET-报警区域表-1220132858.zip b/ZR.Admin.WebApi/wwwroot/Generatecode/ZrAdmin.NET-报警区域表-1220132858.zip new file mode 100644 index 0000000000000000000000000000000000000000..e4e71bcd8c2a9144738bffafbcd13d5b3482b337 GIT binary patch literal 7825 zcmbt(WmH{Rm+i$}0vEWrySoO5;KAM9T?1TPLx2$6-QC^YwQva%+yev)kFUS3QC*C# z*Zsyj|Bj5g#@X}Cv)7zUQ5Fgs2mk=!0U0*&I!cO^dfgBJfD9}Efc<*a#mSag#NO1w zUc}bO*-pgS%!ujr(n9=<^(qT6^c)2o2G!=sru&C|o3u<0m0NO;3#pUFfxIG_2+Y?E z=_?Y4=`V>rnn*!4wq}fNT8m}9?sG{cb3Yl~=Q-@N(P3M(x`&1MUYIBE(MN$ngojE! z-_%xXD+(w<9WUv`1S{(3oX?WTB0z`0qq0OpX>~SPacGyE4-~Sl!g^AaW^ALu%X4i^ zuF5mAm<+AmYI+;3Eu~*4nGjus*Uoc3^qZP^5Z@WOx(Tf2K5}Qq78+Z;m{>SB1I=nb6mEHBckwZMs$}+b9|uR z#u+34FoysDFuZcEt<0oi=Im}|V#X}$=3-@U=Hl|^8~D%LOeQW9>hcbAETB$}Bfn~Q znF6|&KJ5~GC<(mTrN~%eg7)3@>Uo}&Q`?GZCLaVfcpj42<|tAwr+|pLUpyBUiL+S& z8O>Ime5XNBy!lncUBtK7g3SKa&brnsvT7Id)`zQoY!D_jpEO9xJd|^3_ zD6lA8jr6c$!fd6i`SisY&C{Q-SVpDlefeUn55t(~wZKn-aoAH@4m_f$E&@qru%x&5 z&hr%C)9&M=Wizp_H_-Rf)&5PL94vj-wmvnyYgCS3TM$4I3E_Un0puRmDtP*n<(dz< z`qql$Yh&UFEc|u}yqSA}l{;=?ITY5HN9hC--Sc;Fyzj?(OXb2VvthG4h^Z#&1KIFNu}vRPb7PyPSH_4@O2K=ReRS&0*Rc zWtV97q;1JGJcLxpylb36K_3f7A{TO_hvtgCmRhivV>fTC%Cs9-?Cz#S#V)0n_2u0@ zLf^U}O8(6Djpm&#hcPAg^>DW^5m5qFWhEOZW%k=p`!xUrveK$M{y2vBr8K;=o{$VtsL!98%9ROk^n2ts#OO*Uc_C8OHZC8i zGcVyvM(OW^Takk1IVBXXH8f0EMU4_z5onk3Xq{92DkWj*2Tsfjl7;K0T0i|Pw^!HA zj@Tt;ES|6DaDRdPyKaIBKcS>T0RYOV0D$nnbt7VGXJyZ%VP-7iXvHk%VDIYeU~6mU z?D9`S`s zacMgkg8GA~e48j7(hVlBkn>#^bb&P^VlZO9a4-NG|@y=bcpqlWK{+G?^Q9VpF$ z#A}bA+u*cKJ5mHx^m9ZP@JZ23p`nzE`YKPu5*sm`e}Y%tTK72un)@MD%voDe>5J9E zA?>hlMGKehhx?<$Ecj$tD+DeadygNVbjk0~@Xie=R&Y;F8dRNh`Ni7ca9#c5_UfsI zqPf@;(CkKpLqn!?nbs$i_zm}J(Kjd=Tqme>>w|%<}yUHLgiO`wXM=UP^SPgN|?pF>^P>SXZ~LR*pKJs(IC zCaVj!ZR#QO1?rwy>I7rY*fdHsxb=qhBll0lca6CsvZ~n`FcV|V%Gavm`}5VjL#(Mf6{iN;GR zwDe0}x5t-de);9Rwk9{MZ4&6jd-B1eYhMp-D|rkEL@ks!5#pK+j|{}HlbL9|UMk8< z(Z8|YpCJ}-agP#xy-SIuTGrC5_(&604rP`IF(}~9-7n9=i8AP7SQZ1h+a(>JuVfm< z_8f(MiP!$H#3N9R{_AoNyfb-6Y!D6Zd_U{lg0%hs(l2JsQ_?S*HGj;LQD}Mr{9X49 zb78(8UVEf}?U{7{*1f!gshKUaxU0iI3H|lftHKN7SY`W!fkSt~oqc)Vm?rEOFv`Tj z0@d|^VRc@K!e>kydZCJZ5%9U+&I&|7qiU~NiwnuC>@;2Eme`4~Y@?uUT)tesY7q;=z007*naNacCDpJZL7u zjIm|Mhda7`;uJimynFsd7RjHH@6CVqGp$JWhrMnic+qv>9xzIwUGQ^es=W`CK-G6=F97+>22QE$qzo+vXi>a{eD9Su!_XT z;gt>;m^XC%2Pyyf>wTr8B5usOR~Q(27tr3IHBXjdmE^`xGbC24`_q%GWp12t% zHD>sMnzATWZ3RXxtIWwdeCdyPc`>L7@pw_Hd^Xbf?@<7AF8Zk4s{nL!4;;Wz-G0gi=1LaYH3qWxZ)mcqp|nK2;We03H~xw*Kp3Gq2(` ze)uGRK~6V0IfJhBEYZs*pUHwxYy%jL-jM}g*ydb%&+q46%|%}yi*ot zox>_@lj4rk%Q_qPbZdQ@{`F?}NBG|Il?x|Ji^3*^f&9-HZIyhbAb> z%RsRLH{gDtYW*Q^URA)NMgsxU(CmamT}2ry9ZErtybUA%6J8>Jdl1Ppi}rn}bej5H zH{il@;B1=4`JxGIXmeae>18Fe zyTfN?+441E8qFz#!&#GclzO>>rze=%a9hXFZxi-;&sGadlda%3r?-tdpFEF=gxZ#E z@2~6^D+lJZE()y zGLT0Nvm@`P2maQ(W)&kn<^m=>mWq9+(}19b04}Q%mS1A7Q_NpzUsSXmGs*bH{BW_A ztE?vpo`$@#NMAbNh=h@0UfuY0wXvZA0NQ`Awz``cvx~C{v(am-V*F>HZ}fMsXYJAu z*QNj|0t|hWza>;?@~2u=5wWt!L1WUf7fFE zbO5*SAks$Yb`~^vSbq&_^q#54PogI>9u9qwL#X2acKHnrgpglaSoyWjR9Bv_EwB|; zGyZdFkY15BsksKO2n=T&Ay!VMO|~(@Ncxm(h&WX2I9*T;Ij?FV{M{U@0hykyr z1P@7(9rsUeO`b3}BV(Q`1i!YF(us*N=`jtoG{&p=Od;k$WKyZ$q5i(P+#&~tEg}H` zE3Yj5ry2W`D0eF}50}5F`nwdE+}+F;v~?Wthp@nCu`ew8z;}De`Ne}0BA)}-_+WHF zPTDP}K}Hm1>p46(&K_-T@fCECw&W3eI=d8|6rCe%w$!ZXBe2K@6b4|q7TGIWzZ?su zHhynXi6XA3D-qqv^!G0IE|c6A95of1K6ixmgz~37l|Rr|ufxsMl}LGfiyp7_UQR;0 zYG?JHYsynw&A_>MrE^c>Zq)`2aeg+3MzL9Wg^ zOMEY#YaWz%)RCk?%our{1mS`&2*o;3;NS!OyuxbYm+UFTRQgtwWBBTjt~pIN4$w|73CCWed1^m>O6i9mjw9|D1YGY) z=_7}!OrP_#1O?}=1jfWS+EH>>QLRcR1*8xft7uu|i6bjD6OZA3QzE9$BIgoT(xSlA zL%oDp=gPtESGf^wq|$uwxyF%ohEw5LI_)DeucmIkQ^-6PFc{mJ9Gu0I408VYE9U%{ zfxwS6vP1PDzQEGDZXABj0=B~7uS@Coz97GJ#X4kFH#;oV;&^vDv1OOaCB^lanmG#2 zy{%!nu@I2sI^AlV?T1+uEj2ga-Pl0G53%)MZS(d}oxAPz;I0i?&o^6V7KKTERjKvc zS>eGWJC$N;WUyAFn)Ii0UR1Xl4MRQ0=eY#MKc-cPMJrORGA{-qecTKNw^~n%W`13; zX+(}$>Z6B01b8=RMf$kM#(DD$@!`y>L^E&Ph_0O8!Kw#QHo2=M7C5&-~*(u4Cu{$h@;ss4ss}lA? zv*GzEdTyKiL`22bOT8s^wYP z_Z~XxDpKVJR7g)OT1zSs&eBU!Y-CiQtHr_y6a|o=W9r#|d<~1-_cfI(~8#>Wd7KnF(Am;NA-OL>x#+uv345 zj$~CG8+Ic!K2*l2cf-xSf{*WDNsCCT{23;R_=ZWyXZ^TAv+}DNQl(&U{{yTlrYxoE z&gW&SOJxumq(G)1D8{&<7vYibq0V_|(WA zwvCzGCt(PJDDcdklopgZnQy54l9JuWpcpB2lD6p(oGQPEngKkEY1eOt)^Ro;4A$PA z?9|iK))atW%Irt1=@WKx7Ip^s4H_u!n(~cwzt52vS`t#OO@Em2{MuAvrs-FQPNAWu zZ5_##ZwIJrLA=Hw{sR`x`^2Lcy2GR>kX;BS=^T1dz5hyJL3VsIQi9^wH%Te6M?FZj zdvFrA7eDypb|r(Lw?r3p_WJ5=n`^2pYxoDt<1e`abX@~1Il_?biP!@N+3fXUF{00? zm!At$@wm2l+I$dTViFrq5DM_9NbxtejNjLeOdjD~EmrOle-VMe-E^!8!R=j!mP*~4 zQ1&E~$5%+Q48Y=nQXICAJaboZZNk4jN99AVNJ&?6^qi#e08c{ur;i_ymGY}&evwO1 zON$rtA4zL?r+1ijHq2CtBseO*;G`FF3$2~4E1%%5kw8JA*6ia5WR7xXgC-fY;Wht- zr1~Wrp3|wRuk`TH8CPVhG3!ar^#IY8O9+iR994cRC=4Tb(Lvax;dxho z|IF#2F_gXCS5@NYMI2R^FQph!qlvRVPv;+AzrVd~iRa^-bE>}U^JKHSSpPhEin39F zTv^q~O)N1ho)LEf*)y7P_Q2?O4_%ChDjVB~rvoH~@GmQ_CFhl5WsZuL?yE0SlJKu| zB22F=GDqzW9Zu7Wm$=S)fAi7a|Ey=?TZhhO2s`p+pb94Hjz!mGko?OauIl|%%?|pU zB|+!mce;EeQZuYClqgMSSzTijI2E)VCO<$r9P^mwc}6g|k#1Ymn0V|pw@A|ziN7XRci=2(lET@PN?0Taifo3O-zLdn59gv&Ar5=^92~u_oHssRyk+EyUgmf2#eAxZf{q5lC)=9|*w~g~~7zKMK?*!uP z=6wlk8olQ<9Jj{z-!uf~7Gkur!HA5aGH8AXi!-M3MLZDeTXI5`^iyI!qc-SG6sQv+ zO6vFr7X^a)a6{ym(oUFQMhc&`Vp*v+4J>hN)Tsq3T>RWQ07P^PjI-E#R zx-#GLD60Y{AaxJ2SMt-@-j$H^>COU#Yw}K(lIv~T-4FCM)8po{C_VjqtLbIO*XUJh zA*3dF>uZ!5B1V9pXRgUQ=HuHxWYqZ}WTT+r2o5WK9JJ;TGjFcLb?+J=NZy`cZflnH zR1A?w?}*j*=cKi+oe9r0(C+0(78+~SYGGF@#N(N8_;d}QE6(QFy7~B-S3NJgx_g!7 z`E&>>O-*nFd?LzfA|5&UBE#?Dx=C=)yD-c(ScVqFvO zaYdAUbvvihqp|r5f6Rxhvx@ctgZWVSj-NOf-)5{(XTug3_Thvb0#4>hUn+{)S%j}F z{y>z(63Eupm|aj!mjr%iw3N|TPB|jDYh9~-8F-0ncYLwjNr0o15dOhNJq}qNJ%N{0 zkWA?)gSGVgl2V>~ec1|puZ*sN*)!|)@-uSQgH!&dUb1=3SpOir(ARG<+$J^O#u+O7 z5vhHCNH3kvrI$&V3}_A!Z8hdth;&i0Lx}ud6wfeOWHzO!3_P9hU}zDfqZu?HMzHN= zB*-+d>5n(nu4sHANmt<95D$>63^MJ;Z=pJC=`LYn7Q9dN=YMxcQq>hEU}H9UH-pNqCG?`}gD zKk*X_3Zu&^=j@U6w&k}yah1(e3WBV41*;be5#vazj3RR8qJHE%D))4-a^e`=?fG)d zC!Egn%Bs69|DW5(97;g8XF7^!Q$CZbMfco?r_ELSV?ybd*$jRq?2M6rrOptLK)^rG z=w9vIe>wj9iQQX_w=2 ztk-J)%Vh2??%Po5FWfrB|APBJMoe#U-=-da;aVgA_v`+@&p_VRdh7ZBs + /// 报警区域表 + /// + [SugarTable("andon_alarm_area")] + public class AndonAlarmArea + { + /// + /// 主键 + /// + [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] + public int Id { get; set; } + + /// + /// 父ID + /// + public int? ParentId { get; set; } + + /// + /// 区域名称 + /// + public string Area { get; set; } + + /// + /// 创建人 + /// + [SugarColumn(ColumnName = "created_by")] + public string CreatedBy { get; set; } + + /// + /// 创建时间 + /// + [SugarColumn(ColumnName = "created_time")] + public DateTime? CreatedTime { get; set; } + + /// + /// 更新人 + /// + [SugarColumn(ColumnName = "updated_by")] + public string UpdatedBy { get; set; } + + /// + /// 更新时间 + /// + [SugarColumn(ColumnName = "updated_time")] + public DateTime? UpdatedTime { get; set; } + + } +} \ No newline at end of file diff --git a/ZR.Model/MES/andon/Dto/AndonAlarmAreaDto.cs b/ZR.Model/MES/andon/Dto/AndonAlarmAreaDto.cs new file mode 100644 index 00000000..044b33fe --- /dev/null +++ b/ZR.Model/MES/andon/Dto/AndonAlarmAreaDto.cs @@ -0,0 +1,35 @@ +using System.ComponentModel.DataAnnotations; + +namespace ZR.Model.MES.andon.Dto +{ + /// + /// 报警区域表查询对象 + /// + public class AndonAlarmAreaQueryDto : PagerInfo + { + } + + /// + /// 报警区域表输入输出对象 + /// + public class AndonAlarmAreaDto + { + [Required(ErrorMessage = "主键不能为空")] + public int Id { get; set; } + + public int? ParentId { get; set; } + + public string Area { get; set; } + + public string CreatedBy { get; set; } + + public DateTime? CreatedTime { get; set; } + + public string UpdatedBy { get; set; } + + public DateTime? UpdatedTime { get; set; } + + + + } +} \ No newline at end of file diff --git a/ZR.Service/mes/andon/AndonAlarmAreaService.cs b/ZR.Service/mes/andon/AndonAlarmAreaService.cs new file mode 100644 index 00000000..7b52d180 --- /dev/null +++ b/ZR.Service/mes/andon/AndonAlarmAreaService.cs @@ -0,0 +1,79 @@ +using Infrastructure.Attribute; +using SqlSugar; +using ZR.Model; +using ZR.Model.MES.andon; +using ZR.Model.MES.andon.Dto; +using ZR.Repository; +using ZR.Service.mes.andon.Iservice; + +namespace ZR.Service.mes.andon +{ + /// + /// 报警区域表Service业务层处理 + /// + [AppService(ServiceType = typeof(IAndonAlarmAreaService), ServiceLifetime = LifeTime.Transient)] + public class AndonAlarmAreaService : BaseService, IAndonAlarmAreaService + { + /// + /// 查询报警区域表列表 + /// + /// + /// + public PagedInfo GetList(AndonAlarmAreaQueryDto parm) + { + var predicate = Expressionable.Create(); + + var response = Queryable() + .Where(predicate.ToExpression()) + .ToPage(parm); + + return response; + } + + + /// + /// 获取详情 + /// + /// + /// + public AndonAlarmArea GetInfo(int Id) + { + var response = Queryable() + .Where(x => x.Id == Id) + .First(); + + return response; + } + + /// + /// 添加报警区域表 + /// + /// + /// + public AndonAlarmArea AddAndonAlarmArea(AndonAlarmArea model) + { + return Context.Insertable(model).ExecuteReturnEntity(); + } + + /// + /// 修改报警区域表 + /// + /// + /// + public int UpdateAndonAlarmArea(AndonAlarmArea model) + { + //var response = Update(w => w.Id == model.Id, it => new AndonAlarmArea() + //{ + // ParentId = model.ParentId, + // Area = model.Area, + // CreatedBy = model.CreatedBy, + // CreatedTime = model.CreatedTime, + // UpdatedBy = model.UpdatedBy, + // UpdatedTime = model.UpdatedTime, + //}); + //return response; + return Update(model, true); + } + + } +} \ No newline at end of file diff --git a/ZR.Service/mes/andon/IService/IAndonAlarmAreaService.cs b/ZR.Service/mes/andon/IService/IAndonAlarmAreaService.cs new file mode 100644 index 00000000..de8cec09 --- /dev/null +++ b/ZR.Service/mes/andon/IService/IAndonAlarmAreaService.cs @@ -0,0 +1,23 @@ +using System; +using ZR.Model; +using System.Collections.Generic; +using ZR.Model.MES.andon; +using ZR.Model.MES.andon.Dto; + + +namespace ZR.Service.mes.andon.Iservice + /// + /// 报警区域表service接口 + /// + public interface IAndonAlarmAreaService : IBaseService + { + PagedInfo GetList(AndonAlarmAreaQueryDto parm); + + AndonAlarmArea GetInfo(int Id); + + AndonAlarmArea AddAndonAlarmArea(AndonAlarmArea parm); + + int UpdateAndonAlarmArea(AndonAlarmArea parm); + + } +}