1.修改添加查询的问题

2.扫码枪打印机
This commit is contained in:
syc_zhaoqianyan 2025-06-25 16:06:49 +08:00
parent c2e21cdcae
commit 2a5c0a55ad
23 changed files with 393 additions and 70 deletions

View File

@ -183,5 +183,20 @@
</summary> </summary>
<returns></returns> <returns></returns>
</member> </member>
<member name="P:Syc.Basic.Web.WMS.WebSocket.DeviceMessage.Id">
<summary>
设备id
</summary>
</member>
<member name="P:Syc.Basic.Web.WMS.WebSocket.DeviceMessage.Type">
<summary>
设备类型Scanner : 扫码枪 Balance 电子秤
</summary>
</member>
<member name="P:Syc.Basic.Web.WMS.WebSocket.DeviceMessage.Value">
<summary>
</summary>
</member>
</members> </members>
</doc> </doc>

View File

@ -16,4 +16,9 @@ public class WMSApplicationContractsModule : AbpModule
{ {
WMSDtoExtensions.Configure(); WMSDtoExtensions.Configure();
} }
public override void PostConfigureServices(ServiceConfigurationContext context)
{
base.PostConfigureServices(context);
}
} }

View File

@ -0,0 +1,36 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS.WebSocket
{
public class DeviceMessage
{
public DeviceMessage()
{
}
public DeviceMessage(int id,string type,object value)
{
Id = id;
Type = type;
Value = value;
}
/// <summary>
/// 设备id
/// </summary>
public int Id { get; set; }
/// <summary>
/// 设备类型Scanner : 扫码枪 Balance 电子秤
/// </summary>
public string Type { get; set; }
/// <summary>
/// 值
/// </summary>
public object Value { get; set; }
}
}

View File

@ -0,0 +1,74 @@
using System.Collections.Concurrent;
using System.Net.WebSockets;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using System;
using System.Collections.Generic;
using System.Linq;
namespace Syc.Basic.Web.WMS
{
// WebSocketManager.cs
public class WebSocketManager
{
private readonly ConcurrentDictionary<string,System.Net.WebSockets.WebSocket> _sockets = new();
private static Lazy<WebSocketManager> socketManager = new Lazy<WebSocketManager>(() => new WebSocketManager());
public static WebSocketManager SocketManager => socketManager.Value;
public void AddSocket(System.Net.WebSockets.WebSocket socket, string connectionId)
{
_sockets.TryAdd(connectionId, socket);
}
public async Task RemoveSocket(string connectionId)
{
if (_sockets.TryRemove(connectionId, out var socket))
{
await socket.CloseAsync(
WebSocketCloseStatus.NormalClosure,
"Connection closed",
CancellationToken.None);
}
}
public async Task SendMessageAsync(string connectionId, string message)
{
if (_sockets.TryGetValue(connectionId, out var socket))
{
var buffer = Encoding.UTF8.GetBytes(message);
await socket.SendAsync(
new ArraySegment<byte>(buffer),
WebSocketMessageType.Text,
true,
CancellationToken.None);
}
}
public async Task BroadcastAsync(string message)
{
List<string> keys = new List<string>();
foreach (var pair in _sockets)
{
if (pair.Value.State == WebSocketState.Open)
{
try
{
await SendMessageAsync(pair.Key, message);
}
catch (Exception ex)
{
keys.Add(pair.Key);
}
}
}
if (keys.Any())
{
foreach (var item in keys)
{
_sockets.Remove(item,out _);
}
}
}
}
}

View File

@ -0,0 +1,89 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Seyounth.Auto.Hs.Runtime.Scanner;
using Syc.Basic.Web.WMS.Entitys;
using Syc.Basic.Web.WMS.WebSocket;
using Syc.Core.Tools;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.Uow;
namespace Syc.Basic.Web.WMS
{
/// <summary>
/// 默认的扫码枪扫码触发事件处理
/// </summary>
public class DefaultScannerEventHandle : IScannerEventHandle
{
private readonly IRepository<Silk> silkRepository;
private readonly IUnitOfWorkManager uowm;
public DefaultScannerEventHandle(IRepository<Silk> silkRepository, IUnitOfWorkManager unitOfWork)
{
this.silkRepository = silkRepository;
this.uowm = unitOfWork;
}
/// <summary>
/// 扫码枪
/// </summary>
/// <param name="code"></param>
/// <param name="id"></param>
/// <returns></returns>
public async Task ExecAsync(string code, int id)
{
using (var uow = uowm.Reserve(UnitOfWork.UnitOfWorkReservationName))
{
try
{
/*
* IScannerEventHandle接口
*/
var msg = new DeviceMessage(id, "扫码枪", code);
if (!code.IsNullOrWhiteSpace())
{
var result = await silkRepository.AnyAsync(x => x.Code == code);
if (result)
msg.Value = $"存在重复编号({code}";
}
await WebSocketManager.SocketManager.BroadcastAsync(msg.ToJsonString());
await uow.CompleteAsync();
}
catch (Exception ex)
{
await uow.RollbackAsync();
}
}
}
public async Task ExecAsync2(string code, int id)
{
using (var uow = uowm.Reserve(UnitOfWork.UnitOfWorkReservationName))
{
try
{
/*
* IScannerEventHandle接口
*/
var msg = new DeviceMessage(id, "体重秤", code);
if (!code.IsNullOrWhiteSpace())
{
var result = await silkRepository.AnyAsync(x => x.Code == code);
if (result)
msg.Value = $"存在重复编号({code}";
}
await WebSocketManager.SocketManager.BroadcastAsync(msg.ToJsonString());
await uow.CompleteAsync();
}
catch (Exception ex)
{
await uow.RollbackAsync();
}
}
}
}
}

View File

@ -17,7 +17,7 @@ namespace Syc.Basic.Web.WMS.Dto
public string? Lot_No { get; set; } public string? Lot_No { get; set; }
public double? Length { get; set; } public double? Length { get; set; }
public DateTime? Dom_Time { get; set; } public DateTime? Dom_Time { get; set; }
public DateTime? Exp_Time { get; set; } public string Exp_Time { get; set; }
public int IsDelete { get; set; } public int IsDelete { get; set; }
} }
} }

View File

@ -6,7 +6,9 @@ using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS.Dto namespace Syc.Basic.Web.WMS.Dto
{ {
public class BoxInput:SilkInput public class BoxInput: PagedInput
{ {
public string Lot_No { get; set; }
public string Spec { get; set; }
} }
} }

View File

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS.Dto
{
public class DelInput
{
public int[] ids { get; set; }
public int id { get; set; }
}
}

View File

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS.Dto
{
public class PageInput
{
public int PageSize { get; set; }
public int Page { get; set; }
}
}

View File

@ -16,7 +16,7 @@ namespace Syc.Basic.Web.WMS.Dto
public string Lot_No { get; set; } public string Lot_No { get; set; }
public string Name { get; set; } public string Name { get; set; }
public int? Qty { get; set; } public int? Qty { get; set; }
public DateTime? Exp_Time { get; set; } public string Exp_Time { get; set; }
public int IfUse { get; set; } public int IfUse { get; set; }
public int IsDelete { get; set; } public int IsDelete { get; set; }
} }

View File

@ -6,8 +6,9 @@ using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS.Dto namespace Syc.Basic.Web.WMS.Dto
{ {
public class ProduceInput:BoxInput public class ProduceInput: PagedInput
{ {
public int Id { get; set; }
public string Lot_No { get; set; }
} }
} }

View File

@ -9,13 +9,13 @@ namespace Syc.Basic.Web.WMS.Dto
public class SilkDto public class SilkDto
{ {
public int Id { get; set; } public int Id { get; set; }
public string? Code { get; set; } public string Code { get; set; }
public string? Type { get; set; } public string Type { get; set; }
public string? Spec { get; set; } public string Spec { get; set; }
public double? Net_Weight { get; set; } public double? Net_Weight { get; set; }
public double? Length { get; set; } public double? Length { get; set; }
public DateTime? Date { get; set; } public DateTime? Date { get; set; }
public string? Lot_No { get; set; } public string Lot_No { get; set; }
public int IsDelete { get; set; } public int IsDelete { get; set; }
} }
} }

View File

@ -6,9 +6,9 @@ using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS.Dto namespace Syc.Basic.Web.WMS.Dto
{ {
public class SilkInput public class SilkInput: PagedInput
{ {
public int[] ids { get; set; } public string Lot_No { get; set; }
public int id { get; set; } public string Spec { get; set; }
} }
} }

View File

@ -24,14 +24,14 @@ namespace Syc.Basic.Web.Mapper
.ForMember(dest => dest.Createtime,opt => opt.MapFrom(m => m.createdAt)) .ForMember(dest => dest.Createtime,opt => opt.MapFrom(m => m.createdAt))
.ReverseMap(); .ReverseMap();
//CreateMap<Silk, SilkDto>(); CreateMap<Silk, SilkDto>();
//CreateMap<SilkDto, Silk>(); CreateMap<SilkDto, Silk>();
//CreateMap<Box, BoxDto>() CreateMap<Box, BoxDto>().ReverseMap();
// .ForMember(dest => dest.Net_Weight, opt => opt.MapFrom(m => m.Net_Weight)) CreateMap<BoxDto, Box>();
// .ForMember(dest => dest.Length, opt => opt.MapFrom(m => m.Length))
// .ReverseMap(); CreateMap<Produce, ProduceDto>().ReverseMap();
//CreateMap<BoxDto, Box>(); CreateMap<ProduceDto, Produce>();
} }
} }
} }

View File

@ -0,0 +1,12 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Syc.Basic.Web.WMS
{
internal class ScannerEvent
{
}
}

View File

@ -2,11 +2,13 @@
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using NUglify.Helpers;
using Syc.Basic.Web.WMS.Dto; using Syc.Basic.Web.WMS.Dto;
using Syc.Basic.Web.WMS.Entitys; using Syc.Basic.Web.WMS.Entitys;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Dynamic.Core;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories; using Volo.Abp.Domain.Repositories;
@ -30,16 +32,17 @@ namespace Syc.Basic.Web.WMS.Service
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task<PageOutput<BoxDto>> GetBoxList(BoxDto input) public async Task<PageOutput<BoxDto>> GetBoxList(BoxInput input)
{ {
var boxlist = await boxRepository.GetQueryableAsync(); var boxlist = await boxRepository.GetQueryableAsync();
boxlist = boxlist.Where(x => x.IsDelete == 0); boxlist = boxlist.Where(x => x.IsDelete == 0);
if (input.Name != null) if (input.Lot_No != null)
boxlist = boxlist.Where(x => x.Name.Contains(input.Name)); boxlist = boxlist.Where(x => x.Name.Contains(input.Lot_No));
if (input.Spec != null) if (input.Spec != null)
boxlist = boxlist.Where(x => x.Spec.Contains(input.Spec)); boxlist = boxlist.Where(x => x.Spec.Contains(input.Spec));
var data = boxlist.Select(e => new BoxDto() var result = boxlist.PageResult(input.Page, input.PageSize);
var data = result.Queryable.Select(e => new BoxDto()
{ {
Length = e.Length, Length = e.Length,
Net_Weight = e.Net_Weight, Net_Weight = e.Net_Weight,
@ -47,7 +50,7 @@ namespace Syc.Basic.Web.WMS.Service
Id = e.Id, Id = e.Id,
Code = e.Code, Code = e.Code,
Dom_Time = e.Dom_Time, Dom_Time = e.Dom_Time,
Exp_Time = e.Exp_Time, Exp_Time = e.Exp_Time.ToString(),
Lot_No = e.Lot_No, Lot_No = e.Lot_No,
Name = e.Name, Name = e.Name,
Spec = e.Spec, Spec = e.Spec,
@ -56,6 +59,8 @@ namespace Syc.Basic.Web.WMS.Service
PageOutput<BoxDto> pageOutput = new PageOutput<BoxDto>(); PageOutput<BoxDto> pageOutput = new PageOutput<BoxDto>();
pageOutput.Total = boxlist.Count(); pageOutput.Total = boxlist.Count();
pageOutput.Data = data; pageOutput.Data = data;
pageOutput.PageIndex = input.Page;
pageOutput.PageSize=input.PageSize;
return pageOutput; return pageOutput;
} }
/// <summary> /// <summary>
@ -66,11 +71,14 @@ namespace Syc.Basic.Web.WMS.Service
[HttpPost] [HttpPost]
public async Task InsertBox(BoxDto input) public async Task InsertBox(BoxDto input)
{ {
if (await boxRepository.AnyAsync(x => x.Code == input.Code))
throw Oops.Oh("条码已存在,不允许添加");
var box = new Box() var box = new Box()
{ {
Name = input.Name, Name = input.Name,
Dom_Time = DateTime.Now, Dom_Time = DateTime.Now,
Exp_Time = input.Exp_Time, Exp_Time = string.IsNullOrWhiteSpace(input.Exp_Time) ? null : Convert.ToDateTime(input.Exp_Time),
Qty = input.Qty, Qty = input.Qty,
Length = input.Length, Length = input.Length,
Lot_No = input.Lot_No, Lot_No = input.Lot_No,
@ -99,7 +107,7 @@ namespace Syc.Basic.Web.WMS.Service
box.Dom_Time = DateTime.Now; box.Dom_Time = DateTime.Now;
box.Qty = input.Qty; box.Qty = input.Qty;
box.Name = input.Name; box.Name = input.Name;
box.Exp_Time = input.Exp_Time; box.Exp_Time = string.IsNullOrWhiteSpace(input.Exp_Time) ? null : Convert.ToDateTime(input.Exp_Time);
await boxRepository.UpdateAsync(box); await boxRepository.UpdateAsync(box);
} }
/// <summary> /// <summary>
@ -108,7 +116,7 @@ namespace Syc.Basic.Web.WMS.Service
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task DeleteBox(BoxInput input) public async Task DeleteBox(DelInput input)
{ {
var box = await boxRepository.FirstOrDefaultAsync(x => x.Id == input.id); var box = await boxRepository.FirstOrDefaultAsync(x => x.Id == input.id);
if (box == null) if (box == null)
@ -123,7 +131,7 @@ namespace Syc.Basic.Web.WMS.Service
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task DeletesBoxs(BoxInput input) public async Task DeletesBoxs(DelInput input)
{ {
var boxs = await boxRepository.GetListAsync(x => input.ids.Contains(x.Id)); var boxs = await boxRepository.GetListAsync(x => input.ids.Contains(x.Id));
if (boxs.Count == 0) if (boxs.Count == 0)

View File

@ -5,6 +5,7 @@ using Syc.Basic.Web.WMS.Entitys;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Dynamic.Core;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories; using Volo.Abp.Domain.Repositories;
@ -22,36 +23,56 @@ namespace Syc.Basic.Web.WMS.Service
this.logger = logger; this.logger = logger;
} }
/// <summary> /// <summary>
/// 查询丝锭 /// 查询生产
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task<PageOutput<ProduceDto>> GetProduceList(ProduceDto input) public async Task<PageOutput<ProduceDto>> GetProduceList(ProduceInput input)
{ {
var list = await produceRepository.GetQueryableAsync(); var list = await produceRepository.GetQueryableAsync();
list = list.Where(x => x.IsDelete == 0); list = list.Where(x => x.IsDelete == 0);
var data = list.Select(x => new ProduceDto() if (!string.IsNullOrEmpty(input.Lot_No))
list = list.Where(x => x.Lot_No.Contains(input.Lot_No));
var result = list.PageResult(input.Page, input.PageSize);
var data = result.Queryable.Select(x => new ProduceDto()
{ {
Spec = x.Spec, Spec = x.Spec,
Lot_No = x.Lot_No, Lot_No = x.Lot_No,
Id = x.Id, Id = x.Id,
Length = x.Length, Length = x.Length,
Type = x.Type, Type = x.Type,
Exp_Time = x.Exp_Time, Exp_Time = x.Exp_Time.ToString(),
IfUse = x.IfUse, IfUse = x.IfUse,
Name = x.Name, Name = x.Name,
Qty = x.Qty Qty = x.Qty
}); });
PageOutput<ProduceDto> pageOutput = new PageOutput<ProduceDto>(); PageOutput<ProduceDto> pageOutput = new PageOutput<ProduceDto>();
pageOutput.Total = list.Count(); pageOutput.Total = list.Count();
pageOutput.Data = data; pageOutput.Data = data;
pageOutput.PageIndex = input.Page;
pageOutput.PageSize = input.PageSize;
return pageOutput; return pageOutput;
} }
/// <summary> /// <summary>
/// 添加丝锭 /// 通过id查询生产列表
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost]
public async Task<List<ProduceDto>> GetProduceListById(ProduceInput input)
{
var list = await produceRepository.GetListAsync(x => x.IsDelete == 0 && x.Id == input.Id);
var data = ObjectMapper.Map(list, new List<ProduceDto>());
return data;
}
/// <summary>
/// 添加生产
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
@ -75,7 +96,7 @@ namespace Syc.Basic.Web.WMS.Service
Spec = input.Spec, Spec = input.Spec,
Type = input.Type, Type = input.Type,
Qty=input.Qty, Qty=input.Qty,
Exp_Time = input.Exp_Time, Exp_Time = string.IsNullOrWhiteSpace(input.Exp_Time) ? null : Convert.ToDateTime(input.Exp_Time),
IfUse = 1, IfUse = 1,
Name = input.Name, Name = input.Name,
IsDelete = 0 IsDelete = 0
@ -84,7 +105,7 @@ namespace Syc.Basic.Web.WMS.Service
await produceRepository.InsertAsync(produce); await produceRepository.InsertAsync(produce);
} }
/// <summary> /// <summary>
/// 修改丝锭 /// 修改生产
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
@ -98,17 +119,17 @@ namespace Syc.Basic.Web.WMS.Service
produce.Length = input.Length; produce.Length = input.Length;
produce.Lot_No = input.Lot_No; produce.Lot_No = input.Lot_No;
produce.Qty = input.Qty; produce.Qty = input.Qty;
produce.Exp_Time = input.Exp_Time; produce.Exp_Time = string.IsNullOrWhiteSpace(input.Exp_Time) ? null : Convert.ToDateTime(input.Exp_Time);
produce.IfUse = input.IfUse; produce.IfUse = input.IfUse;
await produceRepository.UpdateAsync(produce); await produceRepository.UpdateAsync(produce);
} }
/// <summary> /// <summary>
/// 删除丝锭 /// 删除生产
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task DeleteProduce(ProduceInput input) public async Task DeleteProduce(DelInput input)
{ {
var produce = await produceRepository.FirstOrDefaultAsync(x => x.Id == input.id); var produce = await produceRepository.FirstOrDefaultAsync(x => x.Id == input.id);
if (produce == null) if (produce == null)
@ -118,12 +139,12 @@ namespace Syc.Basic.Web.WMS.Service
} }
/// <summary> /// <summary>
/// 批量删除丝锭 /// 批量删除生产
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task DeletesProduces(ProduceInput input) public async Task DeletesProduces(DelInput input)
{ {
var produces = await produceRepository.GetListAsync(x => input.ids.Contains(x.Id)); var produces = await produceRepository.GetListAsync(x => input.ids.Contains(x.Id));
if (produces.Count==0) if (produces.Count==0)

View File

@ -7,6 +7,7 @@ using Syc.Basic.Web.WMS.Entitys;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Dynamic.Core;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories; using Volo.Abp.Domain.Repositories;
@ -30,14 +31,17 @@ namespace Syc.Basic.Web.WMS.Service
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task<PageOutput<SilkDto>> GetSilkList(SilkDto input) public async Task<PageOutput<SilkDto>> GetSilkList(SilkInput input)
{ {
var silklist = await silkRepository.GetQueryableAsync(); var silklist = await silkRepository.GetQueryableAsync();
silklist = silklist.Where(x => x.IsDelete == 0); silklist = silklist.Where(x => x.IsDelete == 0);
if (input.Type != null) if (input.Spec != null)
silklist = silklist.Where(x => x.Type.Contains(input.Type)); silklist = silklist.Where(x => x.Type.Contains(input.Spec));
if (input.Lot_No != null)
silklist = silklist.Where(x => x.Type.Contains(input.Lot_No));
var data = silklist.Select(x=>new SilkDto() var result = silklist.PageResult(input.Page, input.PageSize);
var data = result.Queryable.Select(x=>new SilkDto()
{ {
Spec=x.Spec, Spec=x.Spec,
Net_Weight=x.Net_Weight, Net_Weight=x.Net_Weight,
@ -52,6 +56,8 @@ namespace Syc.Basic.Web.WMS.Service
PageOutput<SilkDto> pageOutput = new PageOutput<SilkDto>(); PageOutput<SilkDto> pageOutput = new PageOutput<SilkDto>();
pageOutput.Total = silklist.Count(); pageOutput.Total = silklist.Count();
pageOutput.Data = data; pageOutput.Data = data;
pageOutput.PageIndex = input.Page;
pageOutput.PageSize = input.PageSize;
return pageOutput; return pageOutput;
} }
/// <summary> /// <summary>
@ -62,6 +68,9 @@ namespace Syc.Basic.Web.WMS.Service
[HttpPost] [HttpPost]
public async Task InsertSilk(SilkDto input) public async Task InsertSilk(SilkDto input)
{ {
if (await silkRepository.AnyAsync(x => x.Code == input.Code))
throw Oops.Oh("条码已存在,不允许添加");
var silk = new Silk() var silk = new Silk()
{ {
Date = DateTime.Now, Date = DateTime.Now,
@ -100,7 +109,7 @@ namespace Syc.Basic.Web.WMS.Service
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task DeleteSilk(SilkInput input) public async Task DeleteSilk(DelInput input)
{ {
var silk = await silkRepository.FirstOrDefaultAsync(x => x.Id == input.id); var silk = await silkRepository.FirstOrDefaultAsync(x => x.Id == input.id);
if (silk == null) if (silk == null)
@ -115,7 +124,7 @@ namespace Syc.Basic.Web.WMS.Service
/// <param name="input"></param> /// <param name="input"></param>
/// <returns></returns> /// <returns></returns>
[HttpPost] [HttpPost]
public async Task DeletesSilks(SilkInput input) public async Task DeletesSilks(DelInput input)
{ {
var silks = await silkRepository.GetListAsync(x => input.ids.Contains(x.Id)); var silks = await silkRepository.GetListAsync(x => input.ids.Contains(x.Id));
if (silks.Count == 0) if (silks.Count == 0)

View File

@ -4,6 +4,19 @@
<name>Syc.Basic.Web.WMS.Application</name> <name>Syc.Basic.Web.WMS.Application</name>
</assembly> </assembly>
<members> <members>
<member name="T:Syc.Basic.Web.WMS.DefaultScannerEventHandle">
<summary>
默认的扫码枪扫码触发事件处理
</summary>
</member>
<member name="M:Syc.Basic.Web.WMS.DefaultScannerEventHandle.ExecAsync(System.String,System.Int32)">
<summary>
扫码枪
</summary>
<param name="code"></param>
<param name="id"></param>
<returns></returns>
</member>
<member name="M:Syc.Basic.Web.WMS.Service.AuthService.LoginAsync(Syc.Basic.Web.WMS.Dtos.LoginInput)"> <member name="M:Syc.Basic.Web.WMS.Service.AuthService.LoginAsync(Syc.Basic.Web.WMS.Dtos.LoginInput)">
<summary> <summary>
账号密码登录 账号密码登录
@ -36,7 +49,7 @@
<returns></returns> <returns></returns>
<exception cref="T:System.NotImplementedException"></exception> <exception cref="T:System.NotImplementedException"></exception>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.BoxService.GetBoxList(Syc.Basic.Web.WMS.Dto.BoxDto)"> <member name="M:Syc.Basic.Web.WMS.Service.BoxService.GetBoxList(Syc.Basic.Web.WMS.Dto.BoxInput)">
<summary> <summary>
查询纸箱 查询纸箱
</summary> </summary>
@ -57,56 +70,63 @@
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.BoxService.DeleteBox(Syc.Basic.Web.WMS.Dto.BoxInput)"> <member name="M:Syc.Basic.Web.WMS.Service.BoxService.DeleteBox(Syc.Basic.Web.WMS.Dto.DelInput)">
<summary> <summary>
删除纸箱 删除纸箱
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.BoxService.DeletesBoxs(Syc.Basic.Web.WMS.Dto.BoxInput)"> <member name="M:Syc.Basic.Web.WMS.Service.BoxService.DeletesBoxs(Syc.Basic.Web.WMS.Dto.DelInput)">
<summary> <summary>
批量删除纸箱 批量删除纸箱
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.ProduceService.GetProduceList(Syc.Basic.Web.WMS.Dto.ProduceDto)"> <member name="M:Syc.Basic.Web.WMS.Service.ProduceService.GetProduceList(Syc.Basic.Web.WMS.Dto.ProduceInput)">
<summary> <summary>
查询丝锭 查询生产
</summary>
<param name="input"></param>
<returns></returns>
</member>
<member name="M:Syc.Basic.Web.WMS.Service.ProduceService.GetProduceListById(Syc.Basic.Web.WMS.Dto.ProduceInput)">
<summary>
通过id查询生产列表
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.ProduceService.InsertProduce(Syc.Basic.Web.WMS.Dto.ProduceDto)"> <member name="M:Syc.Basic.Web.WMS.Service.ProduceService.InsertProduce(Syc.Basic.Web.WMS.Dto.ProduceDto)">
<summary> <summary>
添加丝锭 添加生产
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.ProduceService.UpdateProduce(Syc.Basic.Web.WMS.Dto.ProduceDto)"> <member name="M:Syc.Basic.Web.WMS.Service.ProduceService.UpdateProduce(Syc.Basic.Web.WMS.Dto.ProduceDto)">
<summary> <summary>
修改丝锭 修改生产
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.ProduceService.DeleteProduce(Syc.Basic.Web.WMS.Dto.ProduceInput)"> <member name="M:Syc.Basic.Web.WMS.Service.ProduceService.DeleteProduce(Syc.Basic.Web.WMS.Dto.DelInput)">
<summary> <summary>
删除丝锭 删除生产
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.ProduceService.DeletesProduces(Syc.Basic.Web.WMS.Dto.ProduceInput)"> <member name="M:Syc.Basic.Web.WMS.Service.ProduceService.DeletesProduces(Syc.Basic.Web.WMS.Dto.DelInput)">
<summary> <summary>
批量删除丝锭 批量删除生产
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.SilkService.GetSilkList(Syc.Basic.Web.WMS.Dto.SilkDto)"> <member name="M:Syc.Basic.Web.WMS.Service.SilkService.GetSilkList(Syc.Basic.Web.WMS.Dto.SilkInput)">
<summary> <summary>
查询丝锭 查询丝锭
</summary> </summary>
@ -127,14 +147,14 @@
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.SilkService.DeleteSilk(Syc.Basic.Web.WMS.Dto.SilkInput)"> <member name="M:Syc.Basic.Web.WMS.Service.SilkService.DeleteSilk(Syc.Basic.Web.WMS.Dto.DelInput)">
<summary> <summary>
删除丝锭 删除丝锭
</summary> </summary>
<param name="input"></param> <param name="input"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:Syc.Basic.Web.WMS.Service.SilkService.DeletesSilks(Syc.Basic.Web.WMS.Dto.SilkInput)"> <member name="M:Syc.Basic.Web.WMS.Service.SilkService.DeletesSilks(Syc.Basic.Web.WMS.Dto.DelInput)">
<summary> <summary>
批量删除丝锭 批量删除丝锭
</summary> </summary>

View File

@ -1,4 +1,6 @@
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Seyounth.Auto.Hs.Runtime.Handlers;
using Seyounth.Auto.Hs.Runtime;
using Syc.Abp.Application.Contracts; using Syc.Abp.Application.Contracts;
using Syc.Abp.Application.Contracts.Options; using Syc.Abp.Application.Contracts.Options;
using Syc.Basic.Web.WMS.Entitys; using Syc.Basic.Web.WMS.Entitys;
@ -38,6 +40,9 @@ public class WMSApplicationModule : AbpModule
}); });
ConfigureMapper(); ConfigureMapper();
context.Services.AddHs<DefaultOnWarningHandler, DefaultWeighSpindleRequestHandler, DefaultWeighSpindleRequestHandler>();
context.Services.AddScannerEventHandle<DefaultScannerEventHandle>();
} }
private void ConfigureMapper() private void ConfigureMapper()

View File

@ -42,7 +42,5 @@ public class WMSDomainSharedModule : AbpModule
{ {
options.MapCodeNamespace("WMS", typeof(WMSResource)); options.MapCodeNamespace("WMS", typeof(WMSResource));
}); });
context.Services.AddHs<DefaultOnWarningHandler, DefaultWeighSpindleRequestHandler, DefaultWeighSpindleRequestHandler>();
} }
} }

View File

@ -9,12 +9,12 @@ namespace Syc.Basic.Web.WMS.Entitys
{ {
public class Box:Entity<int> public class Box:Entity<int>
{ {
public string? Name { get; set; } public string Name { get; set; }
public string? Code { get; set; } public string Code { get; set; }
public string? Spec { get; set; } public string Spec { get; set; }
public int? Qty { get; set; } public int? Qty { get; set; }
public double? Net_Weight { get; set; } public double? Net_Weight { get; set; }
public string? Lot_No { get; set; } public string Lot_No { get; set; }
public double? Length { get; set; } public double? Length { get; set; }
public DateTime? Dom_Time { get; set; } public DateTime? Dom_Time { get; set; }
public DateTime? Exp_Time { get; set; } public DateTime? Exp_Time { get; set; }

View File

@ -9,13 +9,13 @@ namespace Syc.Basic.Web.WMS.Entitys
{ {
public class Silk:Entity<int> public class Silk:Entity<int>
{ {
public string? Code { get; set; } public string Code { get; set; }
public string? Type { get; set; } public string Type { get; set; }
public string? Spec { get; set; } public string Spec { get; set; }
public double? Net_Weight { get; set; } public double? Net_Weight { get; set; }
public double? Length { get; set; } public double? Length { get; set; }
public DateTime? Date { get; set; } public DateTime? Date { get; set; }
public string? Lot_No { get; set; } public string Lot_No { get; set; }
public int IsDelete { get; set; } public int IsDelete { get; set; }
} }
} }