From f3e8d43519f093da81961a23cd7b48ea1491e2cd Mon Sep 17 00:00:00 2001 From: "liulb@mesnac.com" Date: Mon, 27 Nov 2023 15:24:43 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=AB=E7=A0=81=E6=9E=AA?= =?UTF-8?q?=E4=B8=B2=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Admin.Core.Api.csproj.nuget.dgspec.json | 12 +- .../Debug/net6.0/Admin.Core.Api.assets.cache | Bin 137611 -> 140754 bytes Admin.Core.Api/obj/project.assets.json | 225 ++++++++++++++++++ Admin.Core.Api/obj/project.nuget.cache | 9 +- .../Middlewares/ScannerGunMildd.cs | 4 +- .../Aucma.Core.ScannerGun.csproj | 8 + Aucma.Core.ScannerGun/IScannerGunService.cs | 2 +- Aucma.Core.ScannerGun/ScannerGunService.cs | 81 ++++++- 8 files changed, 332 insertions(+), 9 deletions(-) diff --git a/Admin.Core.Api/obj/Admin.Core.Api.csproj.nuget.dgspec.json b/Admin.Core.Api/obj/Admin.Core.Api.csproj.nuget.dgspec.json index 4c4f1400..a57dbea0 100644 --- a/Admin.Core.Api/obj/Admin.Core.Api.csproj.nuget.dgspec.json +++ b/Admin.Core.Api/obj/Admin.Core.Api.csproj.nuget.dgspec.json @@ -1034,7 +1034,11 @@ "frameworks": { "net6.0": { "targetAlias": "net6.0", - "projectReferences": {} + "projectReferences": { + "D:\\Project\\gitea\\AUCMA\\SCADA\\Admin.Core.Common\\Admin.Core.Common.csproj": { + "projectPath": "D:\\Project\\gitea\\AUCMA\\SCADA\\Admin.Core.Common\\Admin.Core.Common.csproj" + } + } } }, "warningProperties": { @@ -1046,6 +1050,12 @@ "frameworks": { "net6.0": { "targetAlias": "net6.0", + "dependencies": { + "System.IO.Ports": { + "target": "Package", + "version": "[8.0.0, )" + } + }, "imports": [ "net461", "net462", diff --git a/Admin.Core.Api/obj/Debug/net6.0/Admin.Core.Api.assets.cache b/Admin.Core.Api/obj/Debug/net6.0/Admin.Core.Api.assets.cache index 46e760dcd7fef7ab52e18eaf3c4a2899ab4c84c9..11451c1046ddfd248d32cc512a881728e2e7beef 100644 GIT binary patch delta 16535 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 z z5SMF=%a_LGD^3`3`I_?umv1--F4sAna&?s#efB+si@u7Wura(Y+~88aG);fY2_w{- zoG(ysaS*7tIh<~annZJdfd1MFaffU1rJ;Yv2_y9HIbV;hA0jO}S2W8aKn`M0;KgYpRBz4~s6HGERA1UN334g; zF0`cwE;PFyt+fQrPet=r(E>PjAR%zzVPg&q^=^gZ@C-kt#Mny65`ZfT^#P!&yERVZ^J%x`jc zVG{9hRlIQ}pgR*`UX$h{B=V7}d=$r`2cty~E@&by-s&@AAES!Ls^T4}upAaO>G6&d z@lL9EXH~ol$JH*YOrX)fagS?u)P$5pf@)P!<5bkHg48HF^BW&n3G;5E+;|C)O$AC& zffAbwU#4(MjBJ9@O@h%~#pt18^lVO96JaQwd%&};A)6!#QnHHFOGQd?+TETCNZgjE zgcy(9R0&v`3Z^aF;!&pqF<4=f-s>&FNLMlJ91Gj&!|@zf?^!5uI=f{GK#7u$unY-s zrV5;;0{3lB0kipe$1zngY_}$+kS#&#ry})NksfhQP}inIT$9@zAi)@@VrWY^->TcR z6xv+zr{5ICoF$t`awNcmRA6mA7SF7Ov@4(Ikm}}2Yx1u&FxJ5mv>_^5J$TMsC`HE&D^_D7*&pEyWVy@v3kM$AVxf zmCk{Y^i2)qTFN9c6I7Xrs>~!Iv(H*CsXke)-pEh9!WJtWP?M}vBtlc02#EtoYM94M zW8yr>wpVZk=Bw?7rb&RNt3ZuCAhdIJF67gLdC)gak0ZYJ5$luQ0%oc>TBkVQcc@O{ z7waG7c+#o)P}s3jB3$K8f^6%-COkruE!C3xv-FK=4h~=UM=*j_{PK`jwojqE)5bM< z=$$sRC5_dnjm_cMX`{jnge%EI{UVC0*F%Tg|D}z&k~Ze4ZD=;&bg}Ko4WL(7Lublc z2yN~9Z=vQ(z!s=r3psWXo=SHX@J^PyG?MNafi04NEmpxA`?XoKdE)yXTC@lX?0PTB z5(&&w6{hjDrCGDX>IYN&*7?N|?6h6NM$fhzMAb_m!>)ISJSst6rXnxr*mbvunjp__ zg116~w^GGhrQ(T0JmI!Tps=Md!mjsrtd_v6QDL+mWtb-gEjxdSWTyK|VW@oxk0bXn zx>kbqn2Pl{$KnCx9o(4SDz-Oc4;rk=uX0>wKBQI00G zZHB&y^^ztws7-9-Slj?F4~`Ge*ry{tyrSCWFgR835ZWXGt5v}^yTF|O8vgnzf;z3_ zeJtBh6zw)C5t=Hta8-9jZA`8|S z@<(N6#h3C{@sptbtFk%?Ht9K1?JB6Z>&2gxh;KKbhJxB)iYw->NL#Ff=xNt(?X zb64693F1>KqQid3e+9o0uxbqy+2^YAE`QrjiTu;5yw;yASLak#L^eO(PF)Lmsd}&4 zE(zFf6-*m;bZafVXxD#Zw?`sguZp{mh5b%0iH||FHV%3>LEI}r+@~Ton!dWDN_2dx zM*-^~H%af0+b;ooMg@D8jf3-Aji&e?tD(^#NMb7(UDOUJs5(t{kz^bbx4AHSjBDZ z)$8lQ?sbH-g@qoaZW}mxOiRw+0NDY@T}h6++4!BqJHbjDy0`&iy?Y{#^@^6Pi{Gh}cQ!#xT%zu4wwjhH;#577Pb3p6%jYE95)&RiB|YhP3P#2Hx6$R6U4*u6 zBwzS>xwajH^(sqQv>?zlhY}d(j^hCG0=K_i`L; z|A(&hZmx6&=Vz7Ju(ah#kMH3*eu?TnyPGfEtykL@NTiqu6RAOO;PBSqKrJ* zt+{g4gCEhZdMkm!P0iEsKLW5DZ5{9XdFQQt#3^2v;*%53ZplL9;;771iF&9sjtXZ( Pl=dy@$qU}fQNRBO&qrue delta 14466 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 d03Benable + + + + + + + + diff --git a/Aucma.Core.ScannerGun/IScannerGunService.cs b/Aucma.Core.ScannerGun/IScannerGunService.cs index f5237d83..984b3b68 100644 --- a/Aucma.Core.ScannerGun/IScannerGunService.cs +++ b/Aucma.Core.ScannerGun/IScannerGunService.cs @@ -3,6 +3,6 @@ namespace Aucma.Core.ScannerGun { public interface IScannerGunService { - Task ScannerGunAsync(); + void ScannerGunAsync(); } } diff --git a/Aucma.Core.ScannerGun/ScannerGunService.cs b/Aucma.Core.ScannerGun/ScannerGunService.cs index 22d1c5ef..a1472fd3 100644 --- a/Aucma.Core.ScannerGun/ScannerGunService.cs +++ b/Aucma.Core.ScannerGun/ScannerGunService.cs @@ -1,5 +1,5 @@ -using System.Timers; - +using log4net; +using System.IO.Ports; namespace Aucma.Core.ScannerGun { /// @@ -7,10 +7,83 @@ namespace Aucma.Core.ScannerGun /// public class ScannerGunService : IScannerGunService { - public Task ScannerGunAsync() + private static readonly log4net.ILog log = LogManager.GetLogger(typeof(ScannerGunService)); + public void ScannerGunAsync() { //COM口初始化 - return Task.CompletedTask; + InitScanCode(); + } + /// 初始化扫码设备 采用COM连接 + /// + public static void InitScanCode() + { + string COM1 = "COM3"; + InstanceSerialPort3(COM1); + } + + public static void InstanceSerialPort3(string portName) + { + //实例化串行端口 + SerialPort serialPort = new SerialPort(); + //端口名 注:因为使用的是USB转RS232 所以去设备管理器中查看一下虚拟com口的名字 + serialPort.PortName = portName; + //波特率 + serialPort.BaudRate = 9600; + //奇偶校验 + serialPort.Parity = Parity.None; + //停止位 + serialPort.StopBits = StopBits.One; + //数据位 + serialPort.DataBits = 8; + //忽略null字节 + serialPort.DiscardNull = true; + //接收事件 + serialPort.DataReceived += serialPort_DataReceived; + //开启串口 + serialPort.Open(); + } + /// + /// 接收数据 + /// + /// + /// + static void serialPort_DataReceived(object sender, SerialDataReceivedEventArgs e) + { + try + { + //防止数据接收不完整 线程sleep(1000) + System.Threading.Thread.Sleep(1000); + SerialPort serialPort = (SerialPort)sender; + + //开启接收数据线程 + Thread threadReceiveSub = new Thread(new ParameterizedThreadStart(ReceiveData)); + threadReceiveSub.Start(serialPort); + } + catch (Exception ex) + { + throw; + } + } + private static void ReceiveData(object serialPortobj) + { + try + { + SerialPort serialPort = (SerialPort)serialPortobj; + + string code = serialPort.ReadExisting(); + if (string.IsNullOrEmpty(code)) + { + //MessageBox.Show("未扫描到条码!", "Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); + //传递给前端提醒 + return; + } + //业务处理 + + } + catch (Exception ex) + { + log.Error(ex.Message); + } } } }