diff --git a/WCS.WebApi/Controllers/BatchBindMatDetailController.cs b/WCS.WebApi/Controllers/BatchBindMatDetailController.cs index 779a5d4..c553eb7 100644 --- a/WCS.WebApi/Controllers/BatchBindMatDetailController.cs +++ b/WCS.WebApi/Controllers/BatchBindMatDetailController.cs @@ -235,15 +235,19 @@ namespace WCS.WebApi.Controllers Message = "导入失败:上传的文件中不存在有效的数据!" }; } + var shelfAlreadyBind = DbHelp.db.Queryable().Select(t => t.ShelfId).Distinct().ToList(); var shelfCodes = infoList.Select(t => t.货架编号).Distinct().ToList(); //获取系统中的货架 var shelfs = DbHelp.db.Queryable() .LeftJoin((si, mci) => mci.ShelfId == si.Id) - //.Where((si, mci) => mci.Id == 0)//本系统未采取绑定的才进行绑定 - .Where((si, mci) => shelfCodes.Contains(si.ShelfCode)) + + .Where((si, mci) => shelfCodes.Contains(si.ShelfCode) && !shelfAlreadyBind.Contains(si.Id)) + .Select((si, mci) => si) .Distinct() .ToList(); + + //var shelfCodesInDb = shelfs.Select(t => t.ShelfCode).Distinct().ToList(); var matCurrentInfos = new List(); @@ -282,7 +286,8 @@ namespace WCS.WebApi.Controllers } } - catch (Exception ex) { + catch (Exception ex) + { return new ResponseCommon() diff --git a/货架标准上位机/ScannerManager.cs b/货架标准上位机/ScannerManager.cs index 2aaf139..086748a 100644 --- a/货架标准上位机/ScannerManager.cs +++ b/货架标准上位机/ScannerManager.cs @@ -20,43 +20,43 @@ namespace 智慧物流软件系统 //获取当前配置文件的串口号 var ScannerComList = LocalFile.Config.ScannerComList; //通过配置的串口号生成对象 - ScannerComList.ForEach(COM => - { - try - { - var client = new SerialPortClient(); - //成功连接到端口 - client.Connected = (client, e) => - { - Logs.Write($"扫码枪{client.MainSerialPort.PortName},已成功连接!", LogsType.Scanner); - //初始化扫码枪对象 - var Scanner = new Scanner() - { - SerialPortClient = (SerialPortClient)client, - //ScannerDisplayControl = new ScannerDisplayControl(client.MainSerialPort.PortName), - COM = client.MainSerialPort.PortName, - TempCode = string.Empty, - }; - Scanners.Add(Scanner); - return EasyTask.CompletedTask; - }; - client.Setup(new TouchSocket.Core.TouchSocketConfig() - .SetSerialPortOption(new SerialPortOption() - { - BaudRate = 9600,//波特率 - DataBits = 8,//数据位 - Parity = System.IO.Ports.Parity.None,//校验位 - PortName = COM, - StopBits = System.IO.Ports.StopBits.One//停止位 - })); + //ScannerComList.ForEach(COM => + //{ + // try + // { + // var client = new SerialPortClient(); + // //成功连接到端口 + // client.Connected = (client, e) => + // { + // Logs.Write($"扫码枪{client.MainSerialPort.PortName},已成功连接!", LogsType.Scanner); + // //初始化扫码枪对象 + // var Scanner = new Scanner() + // { + // SerialPortClient = (SerialPortClient)client, + // //ScannerDisplayControl = new ScannerDisplayControl(client.MainSerialPort.PortName), + // COM = client.MainSerialPort.PortName, + // TempCode = string.Empty, + // }; + // Scanners.Add(Scanner); + // return EasyTask.CompletedTask; + // }; + // client.Setup(new TouchSocket.Core.TouchSocketConfig() + // .SetSerialPortOption(new SerialPortOption() + // { + // BaudRate = 9600,//波特率 + // DataBits = 8,//数据位 + // Parity = System.IO.Ports.Parity.None,//校验位 + // PortName = COM, + // StopBits = System.IO.Ports.StopBits.One//停止位 + // })); - client.Connect(LocalFile.Config.ScannerTimeOut, new CancellationToken()); - } - catch (Exception ex) - { - Logs.Write($"初始化扫码枪异常!{ex.Message}", LogsType.Scanner); - } - }); + // client.Connect(LocalFile.Config.ScannerTimeOut, new CancellationToken()); + // } + // catch (Exception ex) + // { + // Logs.Write($"初始化扫码枪异常!{ex.Message}", LogsType.Scanner); + // } + //}); } }