Compare commits

...

56 Commits

Author SHA1 Message Date
9dc09169e4 修改了会出现多个的 2025-08-12 10:20:05 +08:00
91c1ba2e6b 改提示语 2025-08-08 14:22:10 +08:00
6b8956d5d5 换行 2025-08-08 14:03:56 +08:00
095462f13d 加换行 2025-08-08 13:37:21 +08:00
1aadd84ed3 加了br 2025-08-08 11:59:48 +08:00
8324794a0f 改了提示换行 2025-08-08 11:48:13 +08:00
6a60c68537 去掉条码看看 2025-08-08 11:10:43 +08:00
82ecf7758f 加了验证接口 2025-08-08 10:18:16 +08:00
73d9195dc9 改了提示语 2025-08-07 16:31:11 +08:00
ce707d726f 修改序列号 2025-08-07 15:58:11 +08:00
832335e6f5 测试 2025-08-07 13:50:30 +08:00
89674ae456 修改了规格 2025-08-07 11:56:35 +08:00
1857e290ed 改提示 2025-08-07 10:06:39 +08:00
d0d4eca7a8 修改序列号拦截 2025-08-06 17:29:43 +08:00
4428d36a27 修改列表没有计算了。 2025-08-06 15:10:50 +08:00
d129c5e234 修改数量 2025-08-06 10:33:15 +08:00
5066f932c9 修改序列号数据 2025-08-04 17:22:19 +08:00
04b52110cc 测试 2025-08-04 16:53:27 +08:00
1855b23c3f 测试 2025-08-04 16:37:12 +08:00
3dc39b9a73 测试 2025-08-04 16:07:01 +08:00
9ae373271c 测试 2025-08-04 15:43:18 +08:00
951498a77a 测试 2025-08-04 15:41:31 +08:00
dd6dc3f26a 测试 2025-08-04 14:36:26 +08:00
96b7d50ac9 修改了加添 2025-08-04 14:28:55 +08:00
3dcf6880b4 修改个数 2025-08-04 10:21:40 +08:00
c0a29b07be 下载时间修改 2025-08-02 09:58:30 +08:00
3188c0023b 修改条码数量 2025-08-01 17:40:47 +08:00
3e1b056432 排xu 2025-08-01 16:20:23 +08:00
14a349cb48 修改排序 2025-08-01 16:06:39 +08:00
5ad4e85673 改了排序 2025-08-01 15:51:31 +08:00
71cb683bd5 测试 2025-07-25 15:18:51 +08:00
ed5fc7204d 修改了转换 2025-07-24 17:32:15 +08:00
506f653f44 改了查询 2025-07-24 11:52:36 +08:00
66f2a9b86f 修改了序列号 2025-07-23 10:56:46 +08:00
b6042ae2ba 导出 2025-07-23 09:21:23 +08:00
ce26015236 先传 2025-07-22 14:38:39 +08:00
4dbd476de6 11 2025-07-22 10:01:05 +08:00
5ce32b872a 修改了删除 2025-06-06 14:16:29 +08:00
f9abfefbb1 修改了箱子显示 2025-06-04 17:37:03 +08:00
856e90f125 修改序列码 2025-06-04 16:40:32 +08:00
d8e10d7029 改了序列号 2025-06-04 16:19:08 +08:00
73894a00e0 修改了取数字序列号 2025-06-04 14:50:12 +08:00
7b366173c0 修改排排序 2025-06-04 10:23:41 +08:00
0b59072e47 修改了序列号 2025-06-03 11:36:03 +08:00
6b6691ba5c 修改了序列号返回 2025-06-03 11:23:59 +08:00
80b95ebda6 测试 2025-05-30 15:27:28 +08:00
02b1c432e9 修改了数字序列号 2025-05-30 13:52:56 +08:00
980ed07333 扫两件装 2025-05-30 11:14:14 +08:00
969b8ef5ec 修改了扫苗慢 2025-05-28 10:32:22 +08:00
244b79eb0e 修改了更新已使用 2025-05-26 18:11:01 +08:00
1c49c6662f 修改了直接更新两件装的已使用 2025-05-26 16:35:17 +08:00
dbb5dd0883 序列号 2025-05-19 18:19:00 +08:00
69d05d3f50 再次修改 2025-05-19 17:02:37 +08:00
1b31786e1b 修改了删除序列号 2025-05-19 16:34:11 +08:00
2fc20d1c53 修改了删除条码计数 2025-05-19 16:00:00 +08:00
5a3c26e94e 再次测试 2025-05-19 15:16:23 +08:00
24 changed files with 1649 additions and 91 deletions

View File

@@ -118,12 +118,21 @@ namespace BarCode.Web.Api.Controllers
SerialNumbersExportRequest request = new SerialNumbersExportRequest(); SerialNumbersExportRequest request = new SerialNumbersExportRequest();
request.Ids = dto.Ids; request.Ids = dto.Ids;
request.IsTwo = dto.IsTwo;
Task.Run(async () => if (request.IsTwo == 2)
{ {
await _exportExcelService.ExportList<SerialNumbersExportReponse, SerialNumbersExportRequest>(request, fileName, loginInfo.UserInfo.UcId, loginInfo, FileDownLoadOrderType.SerialNumbers, orgCode); Task.Run(async () =>
}); {
await _exportExcelService.ExportList<SerialNumbersExportReponse2, SerialNumbersExportRequest>(request, fileName, loginInfo.UserInfo.UcId, loginInfo, FileDownLoadOrderType.SerialNumbers, orgCode);
});
}
else
{
Task.Run(async () =>
{
await _exportExcelService.ExportList<SerialNumbersExportReponse, SerialNumbersExportRequest>(request, fileName, loginInfo.UserInfo.UcId, loginInfo, FileDownLoadOrderType.SerialNumbers, orgCode);
});
}
return Task.FromResult(Result<string>.ReSuccess(res)); return Task.FromResult(Result<string>.ReSuccess(res));
} }
/// <summary> /// <summary>
@@ -151,7 +160,8 @@ namespace BarCode.Web.Api.Controllers
{ {
GenerateRecordIds = new List<int>() { dto.GenerateRecordId }, GenerateRecordIds = new List<int>() { dto.GenerateRecordId },
IsAll = false, IsAll = false,
SerialNumbers = dto.SerialNumbers SerialNumbers = dto.SerialNumbers,
IsTwo=dto.isTwo
}).GetAwaiter().GetResult(); }).GetAwaiter().GetResult();
} }
else else
@@ -167,11 +177,20 @@ namespace BarCode.Web.Api.Controllers
string fileName = FileDownLoadOrderType.SerialNumberInfo.GetRemark() + DateTime.Now.DateToStringSecondsNoSpace() + ".xlsx"; string fileName = FileDownLoadOrderType.SerialNumberInfo.GetRemark() + DateTime.Now.DateToStringSecondsNoSpace() + ".xlsx";
string res = _option.Url + fileName; string res = _option.Url + fileName;
Task.Run(async () => if (dto.isTwo == 2)
{ {
await _exportExcelService.ExportList<SerialNumberInfoResponse, SerialNumberQueryRequest>(dto, fileName, loginInfo.UserInfo.UcId, loginInfo, FileDownLoadOrderType.SerialNumberInfo, orgCode); Task.Run(async () =>
}); {
await _exportExcelService.ExportList<SerialNumberInfoResponse2, SerialNumberQueryRequest>(dto, fileName, loginInfo.UserInfo.UcId, loginInfo, FileDownLoadOrderType.SerialNumberInfo, orgCode);
});
}
else
{
Task.Run(async () =>
{
await _exportExcelService.ExportList<SerialNumberInfoResponse, SerialNumberQueryRequest>(dto, fileName, loginInfo.UserInfo.UcId, loginInfo, FileDownLoadOrderType.SerialNumberInfo, orgCode);
});
}
return Task.FromResult(Result<string>.ReSuccess(res)); return Task.FromResult(Result<string>.ReSuccess(res));
} }
/// <summary> /// <summary>
@@ -235,6 +254,42 @@ namespace BarCode.Web.Api.Controllers
return await _serialNumberService.UpdateSn(dto); return await _serialNumberService.UpdateSn(dto);
} }
/// <summary>
/// 验证所选转两件装条码的正确性
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost]
[Route("VerifSn")]
public async Task<Result> VerifSn(TransferSNOneTwoTwoRequest dto)
{
var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]);
if (loginInfo == null || loginInfo.UserInfo == null)
return Result.ReFailure(ResultCodes.Token_Invalid_Error);
return await _serialNumberService.VerifSn(dto);
}
/// <summary>
/// 转换Sn,由单件装转成两件装
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
[HttpPost]
[Route("TransferSn")]
public async Task<Result> TransferSn(TransferSNOneTwoTwoRequest dto)
{
var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]);
if (loginInfo == null || loginInfo.UserInfo == null)
return Result.ReFailure(ResultCodes.Token_Invalid_Error);
return await _serialNumberService.TransferSn(dto);
}
/// <summary> /// <summary>
/// 获取序列号信息 /// 获取序列号信息

View File

@@ -87,35 +87,180 @@ namespace BarCode.Web.Api.Controllers
[Route("GetSerialNumber")] [Route("GetSerialNumber")]
public async Task<Result<SerialNumbersWmsResponse>> GetSerialNumber(SerialNumbersWmsRequest dto) public async Task<Result<SerialNumbersWmsResponse>> GetSerialNumber(SerialNumbersWmsRequest dto)
{ {
_logger.LogInformation($"wms获取序列码:{JsonConvert.SerializeObject(dto)}");
_logger.LogInformation($"wms获取序列码:{JsonConvert.SerializeObject(dto)}");
var response = new SerialNumbersWmsResponse();
var list = new List<Domain.Entitys.SerialNumbers>();
var entity = await _serialNumbersRepositories.GetEntityWms(dto.SerialNumber); var entity = await _serialNumbersRepositories.GetEntityWms(dto.SerialNumber);
if (entity == null) return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberNoData); if (entity == null) return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberNoData);
if (entity.BoxId > 0) if (entity.BoxId > 0)
return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberBindBox); return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberBindBox);
if (entity.IsUse == true) if (entity.IsUse == true)
return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberIsUse); return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberIsUse);
var response = new SerialNumbersWmsResponse() if (entity.IsTwo > 1)
{ {
SerialNumber = entity.SerialNumber.Equals(dto.SerialNumber) ? entity.SerialNumber : entity.NumberCode, //把查询到的序列码修改成使用
MaterialNumber = entity.MaterialNumber,
CreateTime = entity.CreateTime,
Creator = _singleDataService.GetSingleData(SingleAction.Users, 1, entity.CreatorId),
IsTwo = entity.IsTwo,
TwoSerialNumber = entity.TwoSerialNumber,
TwoNumberCode = entity.TwoNumberCode,
IsNotCount = entity.IsNotCount
};
//把查询到的序列码修改成使用
entity.WmsGet(dto.SerialNumber);
var list = new List<Domain.Entitys.SerialNumbers>();
list.Add(entity);
var res = await _serialNumbersRepositories.EditEntityList(list);
if (!res) return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.DateWriteError);
_logger.LogInformation($"wms获取序列码返回序列码信息:{JsonConvert.SerializeObject(response)}");
string[] s = entity.TwoSerialNumber.Split(',');
string[] y = entity.TwoNumberCode.Split(',');
bool isNumberCode = false;
if (entity.TwoNumberCode.IndexOf(dto.SerialNumber, 0) >= 0)
{
isNumberCode = true;//说明是此次查的为数字序列号
}
if (isNumberCode)
{
for (int i = 0; i < s.Length; i++)
{
response = new SerialNumbersWmsResponse()
{
SerialNumber = y[i],//entity.SerialNumber.Equals(dto.SerialNumber) ? s[i] : sy[i],
// SerialNumber= entity.SerialNumber.Equals(dto.SerialNumber) ? entity.SerialNumber : entity.NumberCode,
MaterialNumber = entity.MaterialNumber,
CreateTime = entity.CreateTime,
Creator = _singleDataService.GetSingleData(SingleAction.Users, 1, entity.CreatorId),
IsTwo = entity.IsTwo,
// TwoSerialNumber = entity.TwoSerialNumber,
TwoSerialNumber = entity.TwoNumberCode,
TwoNumberCode = entity.TwoNumberCode,
IsNotCount = entity.IsNotCount,
NumberCode=entity.NumberCode
};
var entity2 = await _serialNumbersRepositories.GetEntityWms(y[i]);
entity2.WmsGet(s[i]);
list.Add(entity2);
}
}
else
{
// string[] sy = entity.TwoNumberCode.Split(',');
for (int i = 0; i < s.Length; i++)
{
response = new SerialNumbersWmsResponse()
{
SerialNumber = s[i],//entity.SerialNumber.Equals(dto.SerialNumber) ? s[i] : sy[i],
// SerialNumber= entity.SerialNumber.Equals(dto.SerialNumber) ? entity.SerialNumber : entity.NumberCode,
MaterialNumber = entity.MaterialNumber,
CreateTime = entity.CreateTime,
Creator = _singleDataService.GetSingleData(SingleAction.Users, 1, entity.CreatorId),
IsTwo = entity.IsTwo,
TwoSerialNumber = entity.TwoSerialNumber,
TwoNumberCode = entity.TwoNumberCode,
IsNotCount = entity.IsNotCount,
NumberCode = entity.NumberCode
};
var entity2 = await _serialNumbersRepositories.GetEntityWms(s[i]);
entity2.WmsGet(s[i]);
list.Add(entity2);
}
}
}
else
{
response = new SerialNumbersWmsResponse()
{
SerialNumber = entity.SerialNumber.Equals(dto.SerialNumber) ? entity.SerialNumber : entity.NumberCode,
// SerialNumber = entity.SerialNumber.Equals(dto.SerialNumber) ? entity.SerialNumber : entity.NumberCode,
MaterialNumber = entity.MaterialNumber,
CreateTime = entity.CreateTime,
Creator = _singleDataService.GetSingleData(SingleAction.Users, 1, entity.CreatorId),
IsTwo = entity.IsTwo,
TwoSerialNumber = entity.TwoSerialNumber,
TwoNumberCode = entity.TwoNumberCode,
IsNotCount = entity.IsNotCount,
NumberCode = entity.NumberCode
};
entity.WmsGet(dto.SerialNumber);
list.Add(entity);
}
var res = await _serialNumbersRepositories.EditEntityList(list);
if (!res) return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.DateWriteError);
_logger.LogInformation($"wms获取序列码返回序列码信息:{JsonConvert.SerializeObject(response)}");
return Result<SerialNumbersWmsResponse>.ReSuccess(response); return Result<SerialNumbersWmsResponse>.ReSuccess(response);
//_logger.LogInformation($"wms获取序列码:{JsonConvert.SerializeObject(dto)}");
//var entity = await _serialNumbersRepositories.GetEntityWms(dto.SerialNumber);
//if (entity.IsTwo > 1)//说明是两件装
//{
//}
//else
//{
// var list = new List<Domain.Entitys.SerialNumbers>();
// var response = new SerialNumbersWmsResponse();
// if (entity == null) return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberNoData);
// if (entity.BoxId > 0)
// return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberBindBox);
// if (entity.IsUse == true)
// return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberIsUse);
// response = new SerialNumbersWmsResponse()
// {
// SerialNumber = entity.SerialNumber.Equals(dto.SerialNumber) ? entity.SerialNumber : entity.NumberCode,
// MaterialNumber = entity.MaterialNumber,
// CreateTime = entity.CreateTime,
// Creator = _singleDataService.GetSingleData(SingleAction.Users, 1, entity.CreatorId),
// IsTwo = entity.IsTwo,
// TwoSerialNumber = entity.TwoSerialNumber,
// TwoNumberCode = entity.TwoNumberCode,
// IsNotCount = entity.IsNotCount
// };
// entity.WmsGet(entityList.SerialNumber);
//}
//// var entityList = await _serialNumbersRepositories.GetEntityWmsBySuitNumber(dto.SerialNumber);
//var list = new List<Domain.Entitys.SerialNumbers>();
//var response = new SerialNumbersWmsResponse();
//for (int i = 0; i < entityList.Count; i++)
//{
// var entity = entityList[i];
// if (entity == null) return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberNoData);
// if (entity.BoxId > 0)
// return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberBindBox);
// if (entity.IsUse == true)
// return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.SerialNumberIsUse);
// response = new SerialNumbersWmsResponse()
// {
// SerialNumber = entity.SerialNumber.Equals(dto.SerialNumber) ? entity.SerialNumber : entity.NumberCode,
// MaterialNumber = entity.MaterialNumber,
// CreateTime = entity.CreateTime,
// Creator = _singleDataService.GetSingleData(SingleAction.Users, 1, entity.CreatorId),
// IsTwo = entity.IsTwo,
// TwoSerialNumber = entity.TwoSerialNumber,
// TwoNumberCode = entity.TwoNumberCode,
// IsNotCount = entity.IsNotCount
// };
// //把查询到的序列码修改成使用
// //if(entity.IsTwo>1)//说明是两件装
// //{
// // string[] s = entity.TwoSerialNumber.Split(',');
// // for (int i = 0; i < s.Length; i++)
// // {
// // entity.WmsGet(s[i]);
// // }
// //}
// //else
// //{
// entity.WmsGet(entityList[i].SerialNumber);
// //}
// list.Add(entity);
//}
//var res = await _serialNumbersRepositories.EditEntityList(list);
// if (!res) return Result<SerialNumbersWmsResponse>.ReFailure(ResultCodes.DateWriteError);
// _logger.LogInformation($"wms获取序列码返回序列码信息:{JsonConvert.SerializeObject(response)}");
//return Result<SerialNumbersWmsResponse>.ReSuccess(response);
} }
///// <summary> ///// <summary>

View File

@@ -323,6 +323,20 @@
<param name="dto"></param> <param name="dto"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:BarCode.Web.Api.Controllers.SerialNumberController.VerifSn(BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest)">
<summary>
验证所选转两件装条码的正确性
</summary>
<param name="dto"></param>
<returns></returns>
</member>
<member name="M:BarCode.Web.Api.Controllers.SerialNumberController.TransferSn(BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest)">
<summary>
转换Sn,由单件装转成两件装
</summary>
<param name="dto"></param>
<returns></returns>
</member>
<member name="M:BarCode.Web.Api.Controllers.SerialNumberController.GetByBoxId(BarCode.Web.Core.Dto.SerialNumbers.SerialNumberByBoxIdQueryRequest)"> <member name="M:BarCode.Web.Api.Controllers.SerialNumberController.GetByBoxId(BarCode.Web.Core.Dto.SerialNumbers.SerialNumberByBoxIdQueryRequest)">
<summary> <summary>
获取序列号信息 获取序列号信息

View File

@@ -2434,6 +2434,11 @@
操作 Id集合 操作 Id集合
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.OperateRequest.IsTwo">
<summary>
两件装
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.OperatePagedRequest"> <member name="T:BarCode.Web.Core.Dto.OperatePagedRequest">
<summary> <summary>
操作 Id集合 操作 Id集合
@@ -2604,6 +2609,11 @@
物料编码 物料编码
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.SecurityNumbers.SecurityGenerateRecordQueryRequest.CreateUser">
<summary>
生成人
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SecurityNumbers.SecurityNumberInfoResponse"> <member name="T:BarCode.Web.Core.Dto.SecurityNumbers.SecurityNumberInfoResponse">
<summary> <summary>
防伪码列表 防伪码列表
@@ -2904,6 +2914,36 @@
如果是部分操作(序列号) 全部操作的话可不传 如果是部分操作(序列号) 全部操作的话可不传
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.OperateSerialNumberRequest.IsTwo">
<summary>
是否为两件件
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest">
<summary>
操作序列号请求接口(打印 下载)
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest.ids">
<summary>
所选转换产品
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.PorductNumberRequst">
<summary>
所选转换产品
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.PorductNumberRequst.Id">
<summary>
产品Id
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.PorductNumberRequst.Specifications">
<summary>
产品规格型号
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberByBoxIdQueryRequest"> <member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberByBoxIdQueryRequest">
<summary> <summary>
根据箱Id获取序列码信息 根据箱Id获取序列码信息
@@ -3024,6 +3064,131 @@
第二个序列号 第二个序列号
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.MaterialNumber">
<summary>
物料编码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.MaterialName">
<summary>
物料名称
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.Specifications">
<summary>
物料规格型号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.Old_Specifications">
<summary>
转换前规格型号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.BarCode">
<summary>
物料条码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.SerialNumber">
<summary>
序列码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.SerialNumber2">
<summary>
序列码2
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.NumberCode">
<summary>
数字序列码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.NumberCode2">
<summary>
数字序列码2
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.Id">
<summary>
序列码流水号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.Id2">
<summary>
序列码流水号2
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.Number">
<summary>
数量
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.IsUse">
<summary>
是否使用
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.IsUseStr">
<summary>
是否使用
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.Box">
<summary>
箱号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.Creator">
<summary>
创建人
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.CreateTime">
<summary>
生成时间
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.PrintNumber">
<summary>
打印次数
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.DownLoadNumber">
<summary>
下载次数
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.PrintTime">
<summary>
最新打印时间
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.DownLoadTime">
<summary>
最新下载时间
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.IsEnablePrint">
<summary>
是否允许打印(序列码已经被使用 但没有箱号,那么就是被wms系统拉去使用了,不能再被打印)
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.IsTwo">
<summary>
是否为两件装为了控制后面的变动设为整数形0和1看作12代表2件装3代表三件装 alter by yzh
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.TwoSerialNumber">
<summary>
第二个序列号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberInfoResponse2.SuitNumber">
<summary>
套装号
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberQueryRequest"> <member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumberQueryRequest">
<summary> <summary>
序列号列表搜索请求参数 序列号列表搜索请求参数
@@ -3124,6 +3289,11 @@
供应商或组织 供应商或组织
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse.PurchaseBillNo">
<summary>
采购订单号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse.MaterialNumber"> <member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse.MaterialNumber">
<summary> <summary>
物料编码 物料编码
@@ -3159,6 +3329,76 @@
数量 数量
</summary> </summary>
</member> </member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2">
<summary>
序列码导出数据
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.SupplierOrOrg">
<summary>
供应商或组织
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.PurchaseBillNo">
<summary>
采购订单号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.MaterialNumber">
<summary>
物料编码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.MaterialName">
<summary>
物料名称
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.Specifications">
<summary>
物料规格型号
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.BarCode">
<summary>
物料条码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.SerialNumber">
<summary>
序列码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.SuitNumber">
<summary>
序列码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.TwoSerialNumber">
<summary>
两件装
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.SerialNumber2">
<summary>
序列码2
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.NumberCode">
<summary>
数字序列码
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.NumberCode2">
<summary>
数字序列码2
</summary>
</member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportReponse2.Number">
<summary>
数量
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportRequest"> <member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportRequest">
<summary> <summary>
序列码导出参数 序列码导出参数
@@ -3169,6 +3409,11 @@
生成记录Ids 生成记录Ids
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExportRequest.IsTwo">
<summary>
两件装
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExternalResponse"> <member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersExternalResponse">
<summary> <summary>
序列码信息 序列码信息
@@ -3280,6 +3525,11 @@
第二个序列码 第二个序列码
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersResponse.TwoNumberCode">
<summary>
第二个数字序列码
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersWmsRequest"> <member name="T:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersWmsRequest">
<summary> <summary>
获取没有装过箱的序列码 获取没有装过箱的序列码
@@ -3335,6 +3585,11 @@
是否不参与记数 是否不参与记数
</summary> </summary>
</member> </member>
<member name="P:BarCode.Web.Core.Dto.SerialNumbers.SerialNumbersWmsResponse.NumberCode">
<summary>
是否不参与记数
</summary>
</member>
<member name="T:BarCode.Web.Core.Dto.SerialNumbers.SGenerateRecordInfoResponse"> <member name="T:BarCode.Web.Core.Dto.SerialNumbers.SGenerateRecordInfoResponse">
<summary> <summary>
序列号生成记录列表返回参数 序列号生成记录列表返回参数

View File

@@ -85,12 +85,13 @@
打印 打印
</summary> </summary>
</member> </member>
<member name="M:BarCode.Web.Domain.Entitys.Box.UnSerialNumber(System.String,System.String)"> <member name="M:BarCode.Web.Domain.Entitys.Box.UnSerialNumber(System.String,System.String,System.String)">
<summary> <summary>
解绑序列号 解绑序列号
</summary> </summary>
<param name="serialNumber"></param> <param name="serialNumber"></param>
<param name="materialNumber"></param> <param name="materialNumber"></param>
/// <param name="isNotCount">是否不计数</param>
</member> </member>
<member name="M:BarCode.Web.Domain.Entitys.Box.Clear"> <member name="M:BarCode.Web.Domain.Entitys.Box.Clear">
<summary> <summary>
@@ -1331,6 +1332,13 @@
<member name="M:BarCode.Web.Domain.Infrastructure.ISerialNumbersRepositories.GetEntityListByGRIds(System.Collections.Generic.List{System.Int32})"> <member name="M:BarCode.Web.Domain.Infrastructure.ISerialNumbersRepositories.GetEntityListByGRIds(System.Collections.Generic.List{System.Int32})">
根据套装码查询序列码 根据套装码查询序列码
</member> </member>
<member name="M:BarCode.Web.Domain.Infrastructure.ISerialNumbersRepositories.GetUseEntityListByGRIds(System.Collections.Generic.List{System.Int32})">
<summary>
获取已经使用的序列号
</summary>
<param name="gRIds"></param>
<returns></returns>
</member>
<member name="M:BarCode.Web.Domain.Infrastructure.ISerialNumbersRepositories.GetEntityListByGRId(System.Int32)"> <member name="M:BarCode.Web.Domain.Infrastructure.ISerialNumbersRepositories.GetEntityListByGRId(System.Int32)">
根据生成记录id查询序列码 根据生成记录id查询序列码
</member> </member>
@@ -1582,6 +1590,20 @@
<param name="dto"></param> <param name="dto"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:BarCode.Web.Domain.IService.ISerialNumberService.TransferSn(BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest)">
<summary>
转换序列号,由单件装转为两件装
</summary>
<param name="dto"></param>
<returns></returns>
</member>
<member name="M:BarCode.Web.Domain.IService.ISerialNumberService.VerifSn(BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest)">
<summary>
验证序列码的正确性
</summary>
<param name="dto"></param>
<returns></returns>
</member>
<member name="M:BarCode.Web.Domain.IService.ISerialNumberService.Use(System.Collections.Generic.List{System.Int32})"> <member name="M:BarCode.Web.Domain.IService.ISerialNumberService.Use(System.Collections.Generic.List{System.Int32})">
<summary> <summary>
装箱后反写使用数 装箱后反写使用数
@@ -3428,6 +3450,22 @@
<returns></returns> <returns></returns>
<exception cref="T:System.NotImplementedException"></exception> <exception cref="T:System.NotImplementedException"></exception>
</member> </member>
<member name="M:BarCode.Web.Domain.Services.SerialNumberService.VerifSn(BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest)">
<summary>
验证Sn的正确性
</summary>
<param name="dto"></param>
<returns></returns>
<exception cref="T:System.NotImplementedException"></exception>
</member>
<member name="M:BarCode.Web.Domain.Services.SerialNumberService.TransferSn(BarCode.Web.Core.Dto.SerialNumbers.TransferSNOneTwoTwoRequest)">
<summary>
转换序列号(从单件装转为两件装)
</summary>
<param name="dto"></param>
<returns></returns>
<exception cref="T:System.NotImplementedException"></exception>
</member>
<member name="M:BarCode.Web.Domain.Services.SerialNumberService.Print(BarCode.Web.Core.Dto.SerialNumbers.OperateSerialNumberRequest)"> <member name="M:BarCode.Web.Domain.Services.SerialNumberService.Print(BarCode.Web.Core.Dto.SerialNumbers.OperateSerialNumberRequest)">
<summary> <summary>
打印 打印

View File

@@ -10,6 +10,10 @@ namespace BarCode.Web.Core.Dto
public class OperateRequest public class OperateRequest
{ {
public List<int> Ids { get; set; } = new List<int>(); public List<int> Ids { get; set; } = new List<int>();
/// <summary>
/// 两件装
/// </summary>
public int IsTwo { get; set; }
} }
/// <summary> /// <summary>

View File

@@ -41,5 +41,9 @@ namespace BarCode.Web.Core.Dto.SecurityNumbers
/// 物料编码 /// 物料编码
/// </summary> /// </summary>
public string MaterialNumber { get; set; } = string.Empty; public string MaterialNumber { get; set; } = string.Empty;
/// <summary>
/// 生成人
/// </summary>
public string CreateUser { get; set; } = string.Empty;
} }
} }

View File

@@ -1,4 +1,5 @@
using System; using BarCode.Web.Core.Dto.Box;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
@@ -23,5 +24,36 @@ namespace BarCode.Web.Core.Dto.SerialNumbers
/// 如果是部分操作(序列号) 全部操作的话可不传 /// 如果是部分操作(序列号) 全部操作的话可不传
/// </summary> /// </summary>
public List<string> SerialNumbers { get; set; } = new List<string>(); public List<string> SerialNumbers { get; set; } = new List<string>();
/// <summary>
/// 是否为两件件
/// </summary>
public int IsTwo { get; set; }
} }
/// <summary>
/// 操作序列号请求接口(打印 下载)
/// </summary>
public class TransferSNOneTwoTwoRequest
{
/// <summary>
/// 所选转换产品
/// </summary>
public List<PorductNumberRequst> ids { get; set; } = new List<PorductNumberRequst>();
}
/// <summary>
/// 所选转换产品
/// </summary>
public class PorductNumberRequst
{
/// <summary>
/// 产品Id
/// </summary>
public int Id { set; get; }
/// <summary>
/// 产品规格型号
/// </summary>
public required string Specifications { get; set; }
}
} }

View File

@@ -122,6 +122,144 @@ namespace BarCode.Web.Core.Dto.SerialNumbers
} }
public class SerialNumberInfoResponse2
{
/// <summary>
/// 物料编码
/// </summary>
[Column("物料编码")]
public string MaterialNumber { get; set; } = string.Empty;
/// <summary>
/// 物料名称
/// </summary>
[Column("名称")]
public string MaterialName { get; set; } = string.Empty;
/// <summary>
/// 物料规格型号
/// </summary>
[Column("规格型号")]
public string Specifications { get; set; } = string.Empty;
/// <summary>
/// 转换前规格型号
/// </summary>
[Column("转换前规格型号")]
public string Old_Specifications { get; set; } = string.Empty;
/// <summary>
/// 物料条码
/// </summary>
[Column("条码")]
public string BarCode { get; set; } = string.Empty;
/// <summary>
/// 序列码
/// </summary>
[Column("序列码")]
public string SerialNumber { get; set; } = string.Empty;
/// <summary>
/// 序列码2
/// </summary>
[Column("序列码2")]
public string SerialNumber2 { get; set; } = string.Empty;
/// <summary>
/// 数字序列码
/// </summary>
[Column("数字序列码")]
public string NumberCode { get; set; } = string.Empty;
/// <summary>
/// 数字序列码2
/// </summary>
[Column("数字序列码2")]
public string NumberCode2 { get; set; } = string.Empty;
/// <summary>
/// 序列码流水号
/// </summary>
[Column("序号")]
public long Id { get; set; }
/// <summary>
/// 序列码流水号2
/// </summary>
[Column("序号2")]
public long Id2 { get; set; }
/// <summary>
/// 数量
/// </summary>
[Column("数量")]
public int Number { get; set; } = 0;
/// <summary>
/// 是否使用
/// </summary>
[Ignore]
public bool IsUse { get; set; } = false;
/// <summary>
/// 是否使用
/// </summary>
[Column("是否使用")]
public string IsUseStr { get; set; } = "";
/// <summary>
/// 箱号
/// </summary>
[Column("所在箱号")]
public string Box { get; set; } = string.Empty;
/// <summary>
/// 创建人
/// </summary>
[Ignore]
public string Creator { get; set; } = string.Empty;
/// <summary>
/// 生成时间
/// </summary>
[Column("生成时间")]
public string CreateTime { get; set; } = string.Empty;
/// <summary>
/// 打印次数
/// </summary>
[Column("打印次数")]
public int PrintNumber { get; set; } = 0;
/// <summary>
/// 下载次数
/// </summary>
[Column("下载次数")]
public int DownLoadNumber { get; set; } = 0;
/// <summary>
/// 最新打印时间
/// </summary>
[Column("最近打印时间")]
public string PrintTime { get; set; } = string.Empty;
/// <summary>
/// 最新下载时间
/// </summary>
[Column("最近下载时间")]
public string DownLoadTime { get; set; } = string.Empty;
/// <summary>
/// 是否允许打印(序列码已经被使用 但没有箱号,那么就是被wms系统拉去使用了,不能再被打印)
/// </summary>
[Ignore]
public bool IsEnablePrint { get; set; } = true;
/// <summary>
/// 是否为两件装为了控制后面的变动设为整数形0和1看作12代表2件装3代表三件装 alter by yzh
/// </summary>
[Ignore]
public int IsTwo { get; set; } = 1;
/// <summary>
/// 第二个序列号
/// </summary>
[Ignore]
public string TwoSerialNumber { get; set; } = string.Empty;
/// <summary>
/// 套装号
/// </summary>
[Ignore]
public string SuitNumber { get; set; } = string.Empty;
}
/// <summary> /// <summary>
/// 序列号列表搜索返回参数 /// 序列号列表搜索返回参数
/// </summary> /// </summary>

View File

@@ -7,6 +7,7 @@ using System.Threading.Tasks;
namespace BarCode.Web.Core.Dto.SerialNumbers namespace BarCode.Web.Core.Dto.SerialNumbers
{ {
/// <summary> /// <summary>
/// 序列码导出数据 /// 序列码导出数据
/// </summary> /// </summary>
@@ -17,6 +18,12 @@ namespace BarCode.Web.Core.Dto.SerialNumbers
/// </summary> /// </summary>
[Column("供应商")] [Column("供应商")]
public string SupplierOrOrg { get; set; } = string.Empty; public string SupplierOrOrg { get; set; } = string.Empty;
/// <summary>
/// 采购订单号
/// </summary>
[Column("采购订单号")]
public string PurchaseBillNo { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 物料编码 /// 物料编码
/// </summary> /// </summary>
@@ -42,11 +49,98 @@ namespace BarCode.Web.Core.Dto.SerialNumbers
/// </summary> /// </summary>
[Column("序列码")] [Column("序列码")]
public string SerialNumber { get; set; } = string.Empty; public string SerialNumber { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 数字序列码 /// 数字序列码
/// </summary> /// </summary>
[Column("数字序列码")] [Column("数字序列码")]
public string NumberCode { get; set; } = string.Empty; public string NumberCode { get; set; } = string.Empty;
/// <summary>
/// 数量
/// </summary>
[Column("数量")]
public int Number { get; set; } = 0;
}
/// <summary>
/// 序列码导出数据
/// </summary>
public class SerialNumbersExportReponse2
{
/// <summary>
/// 供应商或组织
/// </summary>
[Column("供应商")]
public string SupplierOrOrg { get; set; } = string.Empty;
/// <summary>
/// 采购订单号
/// </summary>
[Column("采购订单号")]
public string PurchaseBillNo { get; set; } = string.Empty;
/// <summary>
/// 物料编码
/// </summary>
[Column("物料编码")]
public string MaterialNumber { get; set; } = string.Empty;
/// <summary>
/// 物料名称
/// </summary>
[Column("物料名称")]
public string MaterialName { get; set; } = string.Empty;
/// <summary>
/// 物料规格型号
/// </summary>
[Column("规格型号")]
public string Specifications { get; set; } = string.Empty;
/// <summary>
/// 物料条码
/// </summary>
[Column("条码")]
public string BarCode { get; set; } = string.Empty;
/// <summary>
/// 序列码
/// </summary>
[Column("序列码")]
public string SerialNumber { get; set; } = string.Empty;
/// <summary>
/// 序列码
/// </summary>
[Ignore]
public string SuitNumber { get; set; } = string.Empty;
/// <summary>
/// 两件装
/// </summary>
[Ignore]
public string TwoSerialNumber { get; set; } = string.Empty;
/// <summary>
/// 序列码2
/// </summary>
[Column("序列码2")]
public string SerialNumber2 { get; set; } = string.Empty;
/// <summary>
/// 数字序列码
/// </summary>
[Column("数字序列码")]
public string NumberCode { get; set; } = string.Empty;
/// <summary>
/// 数字序列码2
/// </summary>
[Column("数字序列码2")]
public string NumberCode2 { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 数量 /// 数量
/// </summary> /// </summary>

View File

@@ -15,5 +15,9 @@ namespace BarCode.Web.Core.Dto.SerialNumbers
/// 生成记录Ids /// 生成记录Ids
/// </summary> /// </summary>
public List<int> Ids { get; set; } = new List<int>(); public List<int> Ids { get; set; } = new List<int>();
/// <summary>
/// 两件装
/// </summary>
public int IsTwo { get; set; }
} }
} }

View File

@@ -68,6 +68,12 @@ namespace BarCode.Web.Core.Dto.SerialNumbers
/// </summary> /// </summary>
public string TwoSerialNumber { get; set; } = string.Empty; public string TwoSerialNumber { get; set; } = string.Empty;
/// <summary>
/// 第二个数字序列码
/// </summary>
public string TwoNumberCode { get; set; } = string.Empty;
} }
} }

View File

@@ -48,6 +48,12 @@ namespace BarCode.Web.Core.Dto.SerialNumbers
public string? IsNotCount { get; set; } ="0"; public string? IsNotCount { get; set; } ="0";
/// <summary>
/// 是否不参与记数
/// </summary>
public string? NumberCode { get; set; } = string.Empty;
} }

View File

@@ -121,22 +121,51 @@ namespace BarCode.Web.Domain.Entitys
/// </summary> /// </summary>
/// <param name="serialNumber"></param> /// <param name="serialNumber"></param>
/// <param name="materialNumber"></param> /// <param name="materialNumber"></param>
public Result UnSerialNumber(string serialNumber, string materialNumber) /// /// <param name="isNotCount">是否不计数</param>
public Result UnSerialNumber(string serialNumber, string materialNumber,string isNotCount)
{ {
var detail = this.Details.FirstOrDefault(f => f.MaterialNumber.Equals(materialNumber)); var detail = this.Details.FirstOrDefault(f => f.MaterialNumber.Equals(materialNumber));
if (detail == null)
return Result.ReFailure(ResultCodes.BoxMaterialNoDataError); if (isNotCount != "1")
var serial = detail.SerialNumbers.FirstOrDefault(f => f.Equals(serialNumber)); {
if (serial == null) if (detail == null)
return Result.ReFailure(ResultCodes.BoxSerialNumberNoDataError); return Result.ReFailure(ResultCodes.BoxMaterialNoDataError);
var serial = detail.SerialNumbers.FirstOrDefault(f => f.Equals(serialNumber));
if (serial == null)
return Result.ReFailure(ResultCodes.BoxSerialNumberNoDataError);
}
if(detail!=null)
{
detail.SerialNumbers.Remove(serialNumber); detail.SerialNumbers.Remove(serialNumber);
detail.Qty = detail.SerialNumbers.Count(); if (isNotCount == "1")
//如果数量为0了就删除这条明细 {
if (detail.SerialNumbers.Count() <= 0)
this.Details.Remove(detail); }
//如果没有明细了 就把状态改成未使用 else
if (this.Details.Count() <= 0) {
this.Status = BoxStatus.NoUse; detail.Qty = detail.Qty - 1;
}
//如果数量为0了就删除这条明细
if (detail.Qty <= 0)
this.Details.Remove(detail);
//如果没有明细了 就把状态改成未使用
if (detail.Qty <= 0)
this.Status = BoxStatus.NoUse;
}
// detail.Qty = detail.SerialNumbers.Count();
////如果数量为0了就删除这条明细
//if (detail.SerialNumbers.Count() <= 0)
// this.Details.Remove(detail);
////如果没有明细了 就把状态改成未使用
//if (this.Details.Count() <= 0)
// this.Status = BoxStatus.NoUse;
return Result.ReSuccess(); return Result.ReSuccess();
} }

View File

@@ -1,4 +1,5 @@
using BarCode.Web.Core; using AutoMapper.Configuration.Annotations;
using BarCode.Web.Core;
using BarCode.Web.Core.Help; using BarCode.Web.Core.Help;
using BarCode.Web.Core.Internal.Results; using BarCode.Web.Core.Internal.Results;
using BarCode.Web.Domain.Services.Public; using BarCode.Web.Domain.Services.Public;
@@ -61,12 +62,12 @@ namespace BarCode.Web.Domain.Entitys
/// <summary> /// <summary>
/// 序列号 /// 序列号
/// </summary> /// </summary>
[Column("SuitNumber")] [Ignore]
public string SuitNumber { get; set; } = string.Empty; public string SuitNumber { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 产生第二个 /// 产生第二个
/// </summary> /// </summary>
[Column("TwoSerialNumber")] [Ignore]
public string TwoSerialNumber { get; set; } = string.Empty; public string TwoSerialNumber { get; set; } = string.Empty;
/// <summary> /// <summary>
/// 物料Id /// 物料Id

View File

@@ -41,6 +41,19 @@ namespace BarCode.Web.Domain.IService
/// <returns></returns> /// <returns></returns>
Task<Result> UpdateSn(OperateSerialNumberRequest dto); Task<Result> UpdateSn(OperateSerialNumberRequest dto);
/// <summary>
/// 转换序列号,由单件装转为两件装
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
Task<Result> TransferSn(TransferSNOneTwoTwoRequest dto);
/// <summary>
/// 验证序列码的正确性
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
Task<Result> VerifSn(TransferSNOneTwoTwoRequest dto);
/// <summary> /// <summary>
/// 装箱后反写使用数 /// 装箱后反写使用数
/// </summary> /// </summary>

View File

@@ -42,6 +42,13 @@ namespace BarCode.Web.Domain.Infrastructure
Task<List<SerialNumbers>> GetEntityListBySuitNumber(string suitNumber); Task<List<SerialNumbers>> GetEntityListBySuitNumber(string suitNumber);
/// 根据套装码查询序列码 /// 根据套装码查询序列码
Task<List<SerialNumbers>> GetEntityListByGRIds(List<int> gRIds); Task<List<SerialNumbers>> GetEntityListByGRIds(List<int> gRIds);
/// <summary>
/// 获取已经使用的序列号
/// </summary>
/// <param name="gRIds"></param>
/// <returns></returns>
Task<List<SerialNumbers>> GetUseEntityListByGRIds(List<int> gRIds);
/// 根据生成记录id查询序列码 /// 根据生成记录id查询序列码
Task<List<SerialNumbers>> GetEntityListByGRId(int gRId); Task<List<SerialNumbers>> GetEntityListByGRId(int gRId);
/// 根据箱号查询序列码 /// 根据箱号查询序列码

View File

@@ -148,6 +148,7 @@ namespace BarCode.Web.Domain.Services
} }
} }
s.OrderDescending(); s.OrderDescending();
s.Sort();
@@ -182,7 +183,7 @@ namespace BarCode.Web.Domain.Services
detail.Qty += intCount; detail.Qty += intCount;
detail.SerialNumbers.AddRange(s); detail.SerialNumbers.AddRange(s);
detail.SerialNumbers.Sort();
} }
} }
IDbContextTransaction _transaction = _transactionRepositories.GetTransaction(); IDbContextTransaction _transaction = _transactionRepositories.GetTransaction();
@@ -303,29 +304,31 @@ namespace BarCode.Web.Domain.Services
//判断使用的是数字序列码还是序列码 //判断使用的是数字序列码还是序列码
var sStr = s.IsUseNumber == true ? s.NumberCode : s.SerialNumber; var sStr = s.IsUseNumber == true ? s.NumberCode : s.SerialNumber;
var resUn = box.UnSerialNumber(sStr, dto.MaterialNumber); var resUn = box.UnSerialNumber(sStr, dto.MaterialNumber,"0");
if (!resUn.IsSuccess) return resUn; if (!resUn.IsSuccess) return resUn;
//var sList = await _serialNumbersRepositories.GetEntityListContainNumber(new List<string>() { dto.SerialNumber }); //var sList = await _serialNumbersRepositories.GetEntityListContainNumber(new List<string>() { dto.SerialNumber });
//sList.ForEach(f => f.UnBox()); //sList.ForEach(f => f.UnBox());
s.UnBox();//解绑 s.UnBox();//解绑
// _logger.LogInformation($"现在进行TwoSerialNumber的写入");
if (dto.TwoSerialNumber != null) if (dto.TwoSerialNumber != null && dto.TwoSerialNumber!="")
{ {
_logger.LogInformation($"获取到TwoSerialNumber:{dto.TwoSerialNumber}"); _logger.LogInformation($"获取到TwoSerialNumber:{dto.TwoSerialNumber}");
var TwosList = await _serialNumbersRepositories.GetEntityList(new List<string>() { dto.TwoSerialNumber }); // var TwosList = await _serialNumbersRepositories.GetEntityList(new List<string>() { dto.TwoSerialNumber });
var Twos = TwosList.FirstOrDefault(f => f.SerialNumber.Equals(dto.TwoSerialNumber)); var TwosList = await _serialNumbersRepositories.GetEntityListContainNumber(new List<string>() { dto.TwoSerialNumber });
var Twos = TwosList.FirstOrDefault(f => f.SerialNumber.Equals(dto.TwoSerialNumber)||f.NumberCode.Equals(dto.TwoSerialNumber));
_logger.LogInformation($"获取到Twos:{JsonConvert.SerializeObject(Twos)}"); _logger.LogInformation($"获取到Twos:{JsonConvert.SerializeObject(Twos)}");
if (Twos == null) if (Twos == null)
return Result.ReFailure(ResultCodes.SerialNumberNoDateError); return Result.ReFailure(ResultCodes.SerialNumberNoDateError);
////判断使用的是数字序列码还是序列码 ////判断使用的是数字序列码还是序列码
//var TwosStr = s.IsUseNumber == true ? s.NumberCode : s.SerialNumber; sList.AddRange(TwosList);
var TwosStr = s.IsUseNumber == true ? Twos.NumberCode : Twos.SerialNumber;
//_logger.LogInformation($"获取到TwosStr:{TwosStr}"); //_logger.LogInformation($"获取到TwosStr:{TwosStr}");
//_logger.LogInformation($"获取到TwosStr:{TwosStr}"); //_logger.LogInformation($"获取到TwosStr:{TwosStr}");
var TworesUn = box.UnSerialNumber(dto.TwoSerialNumber, dto.MaterialNumber); var TworesUn = box.UnSerialNumber(TwosStr, dto.MaterialNumber,"1");
if (!TworesUn.IsSuccess) return TworesUn; if (!TworesUn.IsSuccess) return TworesUn;
//var sList = await _serialNumbersRepositories.GetEntityListContainNumber(new List<string>() { dto.SerialNumber }); //var sList = await _serialNumbersRepositories.GetEntityListContainNumber(new List<string>() { dto.SerialNumber });
@@ -467,18 +470,33 @@ namespace BarCode.Web.Domain.Services
foreach (var s in bdsList) foreach (var s in bdsList)
{ {
var sentity = serialList.FirstOrDefault(f => f.SerialNumber.Equals(s) || f.NumberCode.Equals(s)); var sentity = serialList.FirstOrDefault(f => f.SerialNumber.Equals(s) || f.NumberCode.Equals(s));
if (sentity == null) continue;
if (sentity.TwoNumberCode.IndexOf(s) >= 0)
sList.Add(new Core.Dto.Box.OpsSerialNumbersResponse()
{ {
SerialNumber = s,
BarCereateUser = _singleDataService.GetSingleData(SingleAction.Users, box.CompanyId, sentity == null ? 0 : sentity.CreatorId), sList.Add(new Core.Dto.Box.OpsSerialNumbersResponse()
BarCreateTime = sentity == null ? null : sentity.CreateTime, {
IsTwo = sentity==null ? 1 :sentity.IsTwo, SerialNumber = s,
TwoSerialNumber = sentity == null ? s: sentity.TwoSerialNumber, BarCereateUser = _singleDataService.GetSingleData(SingleAction.Users, box.CompanyId, sentity == null ? 0 : sentity.CreatorId),
IsNotCount = sentity == null ? "0":sentity.IsNotCount BarCreateTime = sentity == null ? null : sentity.CreateTime,
}); IsTwo = sentity == null ? 1 : sentity.IsTwo,
TwoSerialNumber = sentity == null ? s : sentity.TwoNumberCode,
IsNotCount = sentity == null ? "0" : sentity.IsNotCount
});
}
else
{
sList.Add(new Core.Dto.Box.OpsSerialNumbersResponse()
{
SerialNumber = s,
BarCereateUser = _singleDataService.GetSingleData(SingleAction.Users, box.CompanyId, sentity == null ? 0 : sentity.CreatorId),
BarCreateTime = sentity == null ? null : sentity.CreateTime,
IsTwo = sentity == null ? 1 : sentity.IsTwo,
TwoSerialNumber = sentity == null ? s : sentity.TwoSerialNumber,
IsNotCount = sentity == null ? "0" : sentity.IsNotCount
});
}
//以前是之前的 //以前是之前的
//// var sentity = serialList.FirstOrDefault(f => f.SerialNumber.Equals(s) || f.NumberCode.Equals(s)); //// var sentity = serialList.FirstOrDefault(f => f.SerialNumber.Equals(s) || f.NumberCode.Equals(s));
//// var sentity = serialList.GetEntityListBySuitNumber(f => f.SerialNumber.Equals(s) || f.NumberCode.Equals(s)); //// var sentity = serialList.GetEntityListBySuitNumber(f => f.SerialNumber.Equals(s) || f.NumberCode.Equals(s));

View File

@@ -680,7 +680,7 @@ namespace BarCode.Web.Domain.Services.Public
//备注因为组织数据不是很多就不能和获取物料一样循环获取组织这里就获取10000条数据就行了 //备注因为组织数据不是很多就不能和获取物料一样循环获取组织这里就获取10000条数据就行了
var beginTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"); var beginTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
_logger.LogInformation($"组织拉取-开始时间yzh{beginTime}"); _logger.LogInformation($"组织拉取-开始时间yzh20250530{beginTime}");
//4.参数json化 //4.参数json化
query.Data = JsonConvert.SerializeObject(param); query.Data = JsonConvert.SerializeObject(param);
var json = JsonConvert.SerializeObject(query); var json = JsonConvert.SerializeObject(query);
@@ -690,7 +690,7 @@ namespace BarCode.Web.Domain.Services.Public
var result = JsonConvert.DeserializeObject<List<List<string>>>(result_json); var result = JsonConvert.DeserializeObject<List<List<string>>>(result_json);
var endTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"); var endTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
_logger.LogInformation($"组织拉取-结束时间yzh20250418(2){endTime}"); _logger.LogInformation($"组织拉取-结束时间yzh20250530{endTime}");
//6.拼装 //6.拼装
var list = new List<ErpOrgDto>(); var list = new List<ErpOrgDto>();
foreach (var item in result) foreach (var item in result)
@@ -716,7 +716,7 @@ namespace BarCode.Web.Domain.Services.Public
} }
catch (Exception ex) catch (Exception ex)
{ {
_logger.LogError($"金蝶组织拉取异常yzh{ex.Message}{result_json}"); _logger.LogError($"金蝶组织拉取异常20250530{ex.Message}{result_json}");
return ResultList<ErpOrgDto>.ReFailure(ResultCodes.ErpOrgError); return ResultList<ErpOrgDto>.ReFailure(ResultCodes.ErpOrgError);
} }
} }
@@ -757,7 +757,7 @@ namespace BarCode.Web.Domain.Services.Public
//备注因为供应商数据不是很多就不能和获取物料一样循环获取组织这里就获取10000条数据就行了 //备注因为供应商数据不是很多就不能和获取物料一样循环获取组织这里就获取10000条数据就行了
var beginTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"); var beginTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
_logger.LogInformation($"供应商拉取-开始时间yzh20250508{beginTime}"); _logger.LogInformation($"供应商拉取-开始时间yzh20250804{beginTime}");
//4.参数json化 //4.参数json化
query.Data = JsonConvert.SerializeObject(param); query.Data = JsonConvert.SerializeObject(param);
var json = JsonConvert.SerializeObject(query); var json = JsonConvert.SerializeObject(query);

View File

@@ -1,4 +1,5 @@
using BarCode.Web.Core.Dto; using AutoMapper.Execution;
using BarCode.Web.Core.Dto;
using BarCode.Web.Core.Dto.Erp; using BarCode.Web.Core.Dto.Erp;
using BarCode.Web.Core.Dto.Login; using BarCode.Web.Core.Dto.Login;
using BarCode.Web.Core.Dto.SerialNumbers; using BarCode.Web.Core.Dto.SerialNumbers;
@@ -16,11 +17,13 @@ using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Newtonsoft.Json; using Newtonsoft.Json;
using NPOI.HPSF; using NPOI.HPSF;
using NPOI.HSSF.Record;
using NPOI.OpenXmlFormats.Wordprocessing; using NPOI.OpenXmlFormats.Wordprocessing;
using Org.BouncyCastle.Crypto; using Org.BouncyCastle.Crypto;
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Diagnostics;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
@@ -133,6 +136,14 @@ namespace BarCode.Web.Domain.Services
List<SerialNumberGenerateRecord> sgList = new List<SerialNumberGenerateRecord>(); List<SerialNumberGenerateRecord> sgList = new List<SerialNumberGenerateRecord>();
foreach (var d in dto.Details) foreach (var d in dto.Details)
{ {
if(d.Number>1000)
{
d.Number = 1000;
}
else if(d.Number==0)
{
continue;
}
if (d.isTwo == 0)//如果套装数为0那么自动变成1 if (d.isTwo == 0)//如果套装数为0那么自动变成1
{ {
d.isTwo = 1; d.isTwo = 1;
@@ -290,12 +301,71 @@ namespace BarCode.Web.Domain.Services
//修改序列号下载数 //修改序列号下载数
List<SerialNumbers> olist = new List<SerialNumbers>(); List<SerialNumbers> olist = new List<SerialNumbers>();
if (dto.IsAll) if (dto.IsAll)
{
olist = snGRList; olist = snGRList;
olist.ForEach(f => f.DownLoad());
}
else else
{ {
olist = snGRList.Where(w => dto.SerialNumbers.Contains(w.SerialNumber)).ToList(); if (dto.IsTwo == 2)//说明为两件装
{
var olistTmp = snGRList.Where(w => dto.SerialNumbers.Contains(w.SerialNumber)).ToList();
List<string> s = new List<string>();
for (var i = 0; i < olistTmp.Count; i++)
{
string[] y = olistTmp[i].TwoSerialNumber.Split(',');
s.Add(y[0]);
s.Add(y[1]);
}
s.Distinct();
dto.SerialNumbers.AddRange(s);
dto.SerialNumbers.Distinct();
//var snGRList2 = await _serialNumbersRepositories.GetEntityList(s);
//olist = snGRList2;
olist = snGRList.Where(w => dto.SerialNumbers.Contains(w.SerialNumber)).ToList();
olist.ForEach(f => f.DownLoad());
//// var olistTmp=snGRList.Where(w => dto.SerialNumbers.Contains(w.SerialNumber)).ToList();
//olist = snGRList.Where(w => dto.SerialNumbers.Contains(w.SerialNumber)).ToList();
//List<string> s = new List<string>();
//for (var i = 0; i < olist.Count; i++)
//{
// string[] y = olist[i].TwoSerialNumber.Split(',');
// s.Add(y[0]);
// _logger.LogInformation($"序列号为{y[0]}");
// s.Add(y[1]);
// var olist1 = snGRList.Where(w => dto.SerialNumbers.Contains(y[0])).ToList();
// olist1.ForEach(f => f.DownLoad());
// var olist2 = snGRList.Where(w => dto.SerialNumbers.Contains(y[1])).ToList();
// olist2.ForEach(f => f.DownLoad());
// _logger.LogInformation($"序列号为{y[1]}");
//}
////s.Distinct();
////var snGRList2 = await _serialNumbersRepositories.GetEntityList(s);
////olist = snGRList2;
////olist.ForEach(f => f.DownLoad());
}
else
{
olist = snGRList.Where(w => dto.SerialNumbers.Contains(w.SerialNumber)).ToList();
olist.ForEach(f => f.DownLoad());
}
//olist = snGRList.Where(w => dto.SerialNumbers.Contains(w.TwoSerialNumber)).ToList();
} }
olist.ForEach(f => f.DownLoad());
//if(dto.IsTwo == 2)
//{
//snGRList.Find(olist.)
//}
foreach (var g in generateRecords) foreach (var g in generateRecords)
@@ -396,6 +466,282 @@ namespace BarCode.Web.Domain.Services
return Result.ReSuccess(); return Result.ReSuccess();
} }
/// <summary>
/// 验证Sn的正确性
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public async Task<Result> VerifSn(TransferSNOneTwoTwoRequest dto)
{
string strMes = "";
// _logger.LogInformation($"获取到dto:{JsonConvert.SerializeObject(dto)}");
//先判断是否有存在使用的序列号,如果有的话,就报错。
dto.ids = dto.ids.Distinct().ToList();
// _logger.LogInformation($"获取到dto.ids:{JsonConvert.SerializeObject(dto.ids)}");
var sAll = dto.ids.Select(s => s.Id).ToList();
// _logger.LogInformation($"获取到sAll:{JsonConvert.SerializeObject(sAll)}");
List<SerialNumbers> isUselist = await _serialNumbersRepositories.GetUseEntityListByGRIds(sAll);
// _logger.LogInformation($"获取到isUselist:{JsonConvert.SerializeObject(isUselist)}");
if (isUselist.Count > 0)
{
//取出所有GenerateRecordId
var GenerateRecordIdAll = isUselist.Select(s => s.GenerateRecordId).Distinct().ToList();
string spec = "";
GenerateRecordIdAll.Distinct();
// _logger.LogInformation($"获取到GenerateRecordIdAll:{JsonConvert.SerializeObject(GenerateRecordIdAll)}");
foreach (int g in GenerateRecordIdAll)
{
var y = dto.ids.Where(x => x.Id == g).ToList();
// _logger.LogInformation($"获取到y:{JsonConvert.SerializeObject(y)}");
if (spec == "")
{
spec = y[0].Specifications+ " 序列码存在已使用, 请选择未使用序列码的数据 <br/>";
// _logger.LogInformation($"获取到specA:{y[0].Specifications}");
}
else
{
spec = spec + y[0].Specifications + " 序列码存在已使用, 请选择未使用序列码的数据 <br/>";
// _logger.LogInformation($"获取到spec:{spec}");
}
}
strMes = spec;// + " 序列码存在已使用, 请选择未使用序列码的数据 ";
// ValueTuple<int, string> IsUseError = (70003, spec + " 序列码存在已使用, 请选择未使用序列码的数据 ");
// return Result.ReFailure(IsUseError);
}
//取出所有的生成记录
string specNum = "";
var generateRecords = await _sGenerateRecordRepositories.GetEntityList(sAll, "0");
for (int i = 0; i < generateRecords.Count; i++)
{
int intNum = generateRecords[i].Number;
int result = intNum % 2;
if (result != 0)//
{
//说明这条记录是单数
var y = dto.ids.Where(x => x.Id == generateRecords[i].Id).ToList();
if (specNum == "")
{
specNum = y[0].Specifications + " 条码个数为单数, 不支持转两件装!<br/>";
// _logger.LogInformation($"获取到specA:{y[0].Specifications}");
}
else
{
specNum = specNum + y[0].Specifications + " 条码个数为单数, 不支持转两件装!<br/>";
// _logger.LogInformation($"获取到spec:{spec}");
}
//return Result.ReFailure(ResultCodes.IsTwoError);
}
}
if (strMes != "" && specNum != "")
{
ValueTuple<int, string> IsUseError = (70003, specNum + strMes );
return Result.ReFailure(IsUseError);
}
else if (specNum != "")
{
ValueTuple<int, string> strMesError = (70005, specNum );
return Result.ReFailure(strMesError);
}
else if (strMes != "")
{
ValueTuple<int, string> strMesError = (70004, strMes );
return Result.ReFailure(strMesError);
}
return Result.ReSuccess();
}
/// <summary>
/// 转换序列号(从单件装转为两件装)
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public async Task<Result> TransferSn(TransferSNOneTwoTwoRequest dto)
{
// string strMes = "";
// // _logger.LogInformation($"获取到dto:{JsonConvert.SerializeObject(dto)}");
// //先判断是否有存在使用的序列号,如果有的话,就报错。
dto.ids = dto.ids.Distinct().ToList();
// // _logger.LogInformation($"获取到dto.ids:{JsonConvert.SerializeObject(dto.ids)}");
var sAll = dto.ids.Select(s => s.Id).ToList();
//// _logger.LogInformation($"获取到sAll:{JsonConvert.SerializeObject(sAll)}");
// List<SerialNumbers> isUselist = await _serialNumbersRepositories.GetUseEntityListByGRIds(sAll);
// // _logger.LogInformation($"获取到isUselist:{JsonConvert.SerializeObject(isUselist)}");
// if (isUselist.Count>0)
// {
// //取出所有GenerateRecordId
// var GenerateRecordIdAll= isUselist.Select (s=>s.GenerateRecordId).ToList();
// string spec = "";
// GenerateRecordIdAll.Distinct();
// // _logger.LogInformation($"获取到GenerateRecordIdAll:{JsonConvert.SerializeObject(GenerateRecordIdAll)}");
// foreach (int g in GenerateRecordIdAll)
// {
// var y = dto.ids.Where(x => x.Id == g).ToList();
// // _logger.LogInformation($"获取到y:{JsonConvert.SerializeObject(y)}");
// if (spec == "")
// {
// spec = y[0].Specifications;
// // _logger.LogInformation($"获取到specA:{y[0].Specifications}");
// }
// else
// {
// spec = spec + "," + y[0].Specifications;
// // _logger.LogInformation($"获取到spec:{spec}");
// }
// }
// strMes = spec;// + " 序列码存在已使用, 请选择未使用序列码的数据 ";
// // ValueTuple<int, string> IsUseError = (70003, spec + " 序列码存在已使用, 请选择未使用序列码的数据 ");
// // return Result.ReFailure(IsUseError);
// }
// //取出所有的生成记录
// string specNum = "";
var generateRecords = await _sGenerateRecordRepositories.GetEntityList(sAll, "0");
// for (int i = 0; i < generateRecords.Count; i++)
// {
// int intNum = generateRecords[i].Number;
// int result = intNum % 2;
// if (result != 0)//
// {
// //说明这条记录是单数
// var y = dto.ids.Where(x => x.Id == generateRecords[i].Id).ToList();
// if (specNum == "")
// {
// specNum = y[0].Specifications;
// // _logger.LogInformation($"获取到specA:{y[0].Specifications}");
// }
// else
// {
// specNum = specNum + "," + y[0].Specifications;
// // _logger.LogInformation($"获取到spec:{spec}");
// }
// //return Result.ReFailure(ResultCodes.IsTwoError);
// }
// }
// if (strMes != "" && specNum != "")
// {
// ValueTuple<int, string> IsUseError = (70003, specNum + " 条码个数为单数, 不支持转两件装!" + strMes + " 序列码存在已使用, 不支持转两件装!");
// return Result.ReFailure(IsUseError);
// }
// else if (specNum != "")
// {
// ValueTuple<int, string> strMesError = (70005, specNum + " 条码个数为单数, 不支持转两件装!");
// return Result.ReFailure(strMesError);
// }
// else if (strMes != "")
// {
// ValueTuple<int, string> strMesError = (70004, strMes + " 序列码存在已使用, 不支持转两件装!");
// return Result.ReFailure(strMesError);
// }
List<SerialNumbers> olist = new List<SerialNumbers>();
bool res_Rollback = false;
for (int i = 0; i < generateRecords.Count; i++)
{
List<int> s = [];
string newSuitNumber = "";
string oldSuitNumber = "";
int ids = generateRecords[i].Id;
s.Add(ids);
olist = await _serialNumbersRepositories.GetEntityListByGRIds(s);
//修改序列号下载数
int m = 0;
foreach (var item in olist)
{
m++;
//自动生成序列码
string sn = item.SerialNumber;
if (m % 2 == 0)
{
newSuitNumber = oldSuitNumber;
}
else
{
oldSuitNumber = sn;
newSuitNumber = sn;
}
item.GenerateSuitNumber(newSuitNumber);
// item.GenerateTwoSerialNumber(newSuitNumber);
item.SetThisNumber(m);
item.IsTwo = 2;
}
foreach (var item in olist)
{
string ss = _serialNumbersRepositories.GetTwoSerialNumber(olist, item.SuitNumber);
item.GenerateTwoSerialNumber(ss);
string sNumberCode = _serialNumbersRepositories.GetTwoNumberCode(olist, item.SuitNumber);
item.GenerateTwoNumberCode(sNumberCode);
}
IDbContextTransaction _transaction = _transactionRepositories.GetTransaction();
var isSuccess = await _serialNumbersRepositories.EditEntityList(olist, false);
if (!isSuccess) res_Rollback = true;
generateRecords[i].IsTwo = 2;
isSuccess = _transactionRepositories.CommitTransaction(res_Rollback, _transaction);
if (!isSuccess) return Result.ReFailure(ResultCodes.DateWriteError);
//return Result.ReSuccess();
}
if (!res_Rollback)
{
var res = await _sGenerateRecordRepositories.EditEntityList(generateRecords, false);
if (!res) res_Rollback = true;
}
return Result.ReSuccess();
}
/// <summary> /// <summary>
@@ -450,12 +796,17 @@ namespace BarCode.Web.Domain.Services
public async Task<Result> Use(List<int> sGIds) public async Task<Result> Use(List<int> sGIds)
{ {
var sGList = await _sGenerateRecordRepositories.GetEntityList(sGIds,""); var sGList = await _sGenerateRecordRepositories.GetEntityList(sGIds,"");
//_logger.LogInformation($"获取到sGList:{JsonConvert.SerializeObject(sGList)}");
var sGSNumberList = await _serialNumbersRepositories.GetEntityListByGRIds(sGIds); var sGSNumberList = await _serialNumbersRepositories.GetEntityListByGRIds(sGIds);
// _logger.LogInformation($"获取到sGSNumberList:{JsonConvert.SerializeObject(sGSNumberList)}");
foreach (var sg in sGList) foreach (var sg in sGList)
{ {
int number = sGSNumberList.Where(w => w.GenerateRecordId == sg.Id && w.BoxId > 0 && w.IsNotCount!="1").Count(); int number = sGSNumberList.Where(w => w.GenerateRecordId == sg.Id && w.BoxId > 0 ).Count();
sg.Use(number); sg.Use(number);
// _logger.LogInformation($"获取到sg:{sg}");
} }
var isSuccess = await _sGenerateRecordRepositories.EditEntityList(sGList, false); var isSuccess = await _sGenerateRecordRepositories.EditEntityList(sGList, false);

View File

@@ -24,7 +24,8 @@ namespace BarCode.Web.Domain.Values
public static ValueTuple<int, string> NoDateError = (40005, "数据不存在"); public static ValueTuple<int, string> NoDateError = (40005, "数据不存在");
public static ValueTuple<int, string> NoOrgError = (40006, "组织信息不存在"); public static ValueTuple<int, string> NoOrgError = (40006, "组织信息不存在");
public static ValueTuple<int, string> IsTwoError = (70001, "两件装产品,数量需填双数"); public static ValueTuple<int, string> IsTwoError = (70001, "两件装产品,数量需填双数");
public static ValueTuple<int, string> IsZeroError = (70002, "两件装产品,数量需填双数");
public static ValueTuple<int, string> IsUseError = (70003, "序列码存在已使用, 请选择未使用序列码的数据 ");
/// <summary> /// <summary>
/// 没有菜单权限,无法登录 /// 没有菜单权限,无法登录
/// </summary> /// </summary>

View File

@@ -180,6 +180,7 @@ namespace BarCode.Web.Repositories
} }
} }
/// <summary> /// <summary>
/// 列表 /// 列表
/// </summary> /// </summary>

View File

@@ -203,6 +203,11 @@ namespace BarCode.Web.Repositories
|| w.Specifications.Contains(dto.MaterialNumber) || w.Specifications.Contains(dto.MaterialNumber)
).Select(s => s.MaterialNumber).ToList(); ).Select(s => s.MaterialNumber).ToList();
} }
List<int> cr_ids = new List<int>();
if (!string.IsNullOrEmpty(dto.CreateUser))
{
cr_ids = await _basicsRepositories.GetUserIdsAsync(dto.CreateUser, loginInfo.UserInfo.CompanyId);
}
List<int> sIds = new List<int>(); List<int> sIds = new List<int>();
if (dto.SecurityNumbers != null && dto.SecurityNumbers.Count() > 0) if (dto.SecurityNumbers != null && dto.SecurityNumbers.Count() > 0)
{ {
@@ -210,6 +215,7 @@ namespace BarCode.Web.Repositories
.GroupBy(g => g.GenerateRecordId).Select(s => s.Key).ToListAsync(); .GroupBy(g => g.GenerateRecordId).Select(s => s.Key).ToListAsync();
} }
////供应商 ////供应商
//var supplier_result = await _erpService.BillQueryForSupplier(); //var supplier_result = await _erpService.BillQueryForSupplier();
//List<ErpSupplierDto> suppliers = new List<ErpSupplierDto>(); //List<ErpSupplierDto> suppliers = new List<ErpSupplierDto>();
@@ -252,6 +258,8 @@ namespace BarCode.Web.Repositories
if (dto.SecurityNumbers != null && dto.SecurityNumbers.Count() > 0) if (dto.SecurityNumbers != null && dto.SecurityNumbers.Count() > 0)
query = query.Where(w => sIds.Contains(w.Id)); query = query.Where(w => sIds.Contains(w.Id));
if (!string.IsNullOrEmpty(dto.CreateUser))
query = query.Where(w => cr_ids.Contains(w.CreatorId));
int total = await query.CountAsync(); int total = await query.CountAsync();
var list = await query.Select(s => new SecurityGenerateRecordInfoResponse() var list = await query.Select(s => new SecurityGenerateRecordInfoResponse()

View File

@@ -224,6 +224,19 @@ namespace BarCode.Web.Repositories
.Where(f => gRIds.Contains(f.GenerateRecordId)) .Where(f => gRIds.Contains(f.GenerateRecordId))
.ToListAsync(); .ToListAsync();
} }
/// <summary>
/// 根据生成记录Id查询序列号
/// </summary>
/// <param name="gRIds"></param>
/// <returns></returns>
public async Task<List<SerialNumbers>> GetUseEntityListByGRIds(List<int> gRIds)
{
return await _context.SerialNumbers.AsNoTracking()
.Where(f => gRIds.Contains(f.GenerateRecordId) && f.IsUse==true)
.ToListAsync();
}
/// <summary> /// <summary>
/// 根据生成记录Id查询序列号 /// 根据生成记录Id查询序列号
/// </summary> /// </summary>
@@ -371,6 +384,246 @@ namespace BarCode.Web.Repositories
return (list, total); return (list, total);
} }
/// <summary>
/// 列表2
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
public async Task<(List<SerialNumberInfoResponse2> list, int total)> GetListAsync2(SerialNumberQueryRequest dto, LoginInDto loginInfo)
{
int companyId = loginInfo.UserInfo.CompanyId;
List<string> mNumber = new List<string>();
var materials_result = await _erpService.BillQueryForMaterial();
List<ErpMaterialDto> materials = new List<ErpMaterialDto>();
if (materials_result.IsSuccess)
materials = materials_result.Data.ToList();
//var queery2= _context.ser
var query = _context.SerialNumbers.AsNoTracking()
.GroupJoin(_context.Box, serial => serial.BoxId, box => box.Id, (serial, box) => new { serial, box })
.SelectMany(x => x.box.DefaultIfEmpty(), (p, box) => new { p.serial, box })
.GroupJoin(_context.SerialNumberGenerateRecord, s => s.serial.GenerateRecordId, sg => sg.Id, (serial, sg) => new { serial.serial, serial.box, sg })
.SelectMany(x => x.sg.DefaultIfEmpty(), (p, sg) => new { p.serial, p.box, sg })
.OrderByDescending(o => o.serial.Id)
.Where(f => dto.GenerateRecordId == f.serial.GenerateRecordId );
if (loginInfo.UserInfo.IsAdmin != true && !string.IsNullOrEmpty(dto.OrgCode))
{
var rec_type = dto.OrgCode.Substring(0, 1);
var rec_code = dto.OrgCode.Substring(2, dto.OrgCode.Length - 2);
if (rec_type.Equals("s"))//供应商
query = query.Where(w => rec_code == w.serial.SupplierCode);
else//查其他单据(组织)
query = query.Where(w => rec_code == w.serial.OrgCode);
}
if (dto.IsPrint != null)
query = query.Where(w => dto.IsPrint == true ? w.serial.PrintNumber > 0 : w.serial.PrintNumber <= 0);
if (dto.IsUse != null)
query = query.Where(w => w.serial.IsUse == dto.IsUse);
if (dto.SerialNumbers != null && dto.SerialNumbers.Count() > 0)
query = query.Where(w => dto.SerialNumbers.Contains(w.serial.SerialNumber));
if (dto.NumberCodes != null && dto.NumberCodes.Count() > 0)
query = query.Where(w => dto.NumberCodes.Contains(w.serial.NumberCode));
if (!string.IsNullOrEmpty(dto.BoxBillNo))
query = query.Where(w => w.box.BoxBillNo.Equals(dto.BoxBillNo));
if (dto.SerialNumberBegin != null && dto.SerialNumberBegin != 0)
{
if (dto.SerialNumberEnd != null && dto.SerialNumberEnd != 0)
query = query.Where(w => w.serial.Id >= dto.SerialNumberBegin);
else
query = query.Where(w => w.serial.Id == dto.SerialNumberBegin);
}
if (dto.SerialNumberEnd != null && dto.SerialNumberEnd != 0)
{
if (dto.SerialNumberBegin != null && dto.SerialNumberBegin != 0)
query = query.Where(w => w.serial.Id <= dto.SerialNumberEnd);
else
query = query.Where(w => w.serial.Id == dto.SerialNumberEnd);
}
//V01.05.00: 数字序列号区间查询
if (!string.IsNullOrEmpty(dto.NumberCodeBegin))
{
int number = Convert.ToInt32(dto.NumberCodeBegin.Substring(6, dto.NumberCodeBegin.Length - 6));
if (!string.IsNullOrEmpty(dto.NumberCodeEnd))
query = query.Where(w => w.serial.Number >= number);
else
query = query.Where(w => w.serial.Number == number);
}
if (!string.IsNullOrEmpty(dto.NumberCodeEnd))
{
int number = Convert.ToInt32(dto.NumberCodeEnd.Substring(6, dto.NumberCodeEnd.Length - 6));
if (!string.IsNullOrEmpty(dto.NumberCodeBegin))
query = query.Where(w => w.serial.Number <= number);
else
query = query.Where(w => w.serial.Number == number);
}
if (dto.DownLoadBeginDate != null)
query = query.Where(w => w.serial.DownLoadTime >= dto.DownLoadBeginDate);
if (dto.DownLoadEndDate != null)
{
DateTime dt_end = ((DateTime)dto.DownLoadEndDate).AddDays(1);
query = query.Where(w => w.serial.DownLoadTime <= dt_end);
}
if (dto.PrintBeginDate != null)
query = query.Where(w => w.serial.PrintTime >= dto.PrintBeginDate);
if (dto.PrintEndDate != null)
{
DateTime dt_end = ((DateTime)dto.PrintEndDate).AddDays(1);
query = query.Where(w => w.serial.PrintTime <= dt_end);
}
if (dto.IsUpdateMaterial != null)
{
if (dto.IsUpdateMaterial == true)
query = query.Where(w => !string.IsNullOrEmpty(w.serial.Old_MaterialNumber));
else
query = query.Where(w => string.IsNullOrEmpty(w.serial.Old_MaterialNumber));
}
if (dto.isTwo > 1)//是否为两件装如果大于1说明为两件装
{
query = query.Where(w => w.serial.IsTwo > 1);
}
int total = await query.CountAsync();
var list = await query.Select(s => new SerialNumberInfoResponse2()
{
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.serial.MaterialNumber),
Old_Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.serial.Old_MaterialNumber == null ? "" : s.serial.Old_MaterialNumber),
MaterialNumber = s.serial.MaterialNumber,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.serial.MaterialNumber),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.serial.MaterialNumber),
SerialNumber = s.serial.SerialNumber,
SerialNumber2 = s.serial.SerialNumber,
NumberCode = s.serial.NumberCode,
NumberCode2 = s.serial.NumberCode,
Number = s.sg == null ? 0 : s.sg.Number,
Id = s.serial.Id,
Id2 = s.serial.Id,
IsUse = s.serial.IsUse,
IsUseStr = s.serial.IsUse == true ? "是" : "否",
//序列码已经被使用 但没有箱号,那么就是被wms系统拉去使用了,不能再被打印
IsEnablePrint = (s.serial.BoxId <= 0 && s.serial.IsUse == true) ? false : true,
Box = s.box == null ? "" : s.box.BoxBillNo,
Creator = _singleDataService.GetSingleData(SingleAction.Users, companyId, s.serial.CreatorId),
CreateTime = s.serial.CreateTime.DateToStringSeconds(),
PrintNumber = s.serial.PrintNumber,
DownLoadNumber = s.serial.DownLoadNumber,
DownLoadTime = s.serial.DownLoadTime.DateToStringSeconds(),
PrintTime = s.serial.PrintTime.DateToStringSeconds(),
IsTwo = s.serial.IsTwo,
SuitNumber=s.serial.SuitNumber,
TwoSerialNumber = s.serial.TwoSerialNumber.Replace(s.serial.SerialNumber, "").Replace(",", "")
}).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();
List<SerialNumberInfoResponse2> returnList= new List<SerialNumberInfoResponse2>();
for (int i = 0; i < list.Count; i++)
{
SerialNumberInfoResponse2 list2 = new SerialNumberInfoResponse2();
if (list[i] != null)
{
if (list[i].SuitNumber == list[i].SerialNumber)
{
List<string> sn = new List<string>();
sn.Add(list[i].TwoSerialNumber.Replace(list[i].SuitNumber,"").Replace(",",""));
var serialNumbers = await GetEntityList(sn);
//说明是两件装,且是两件装的主号
list2.Specifications = list[i].Specifications;
list2.Old_Specifications = list[i].Old_Specifications;
list2.MaterialNumber = list[i].MaterialNumber;
list2.MaterialName = list[i].MaterialName;
list2.BarCode = list[i].BarCode;
list2.SerialNumber = serialNumbers[0].SerialNumber;
list2.SerialNumber2 = list[i].SerialNumber;
list2.NumberCode = serialNumbers[0].NumberCode;
list2.NumberCode2 = list[i].NumberCode;
list2.Number = list[i].Number;
list2.Id = serialNumbers[0].Id;
list2.Id2 = list[i].Id;
list2.IsUse = list[i].IsUse;
list2.IsUseStr = list[i].IsUseStr;
list2.IsEnablePrint = list[i].IsEnablePrint;
list2.Box = list[i].Box;
list2.Creator = list[i].Creator;
list2.CreateTime = list[i].CreateTime;
list2.PrintNumber = list[i].PrintNumber;
list2.DownLoadNumber = list[i].DownLoadNumber;
list2.DownLoadTime= list[i].DownLoadTime;
list2.PrintTime = list[i].PrintTime;
list2.IsTwo = list[i].IsTwo;
list2.TwoSerialNumber = list[i].TwoSerialNumber;
returnList.Add(list2);
}
else
{
List<string> sn = new List<string>();
sn.Add(list[i].SerialNumber);
var serialNumbers = await GetEntityList(sn);
//判断号码有没有在要返回的list中如果有的话那就不加了。
if(dto.SerialNumbers!=null)
{
bool exist = dto.SerialNumbers.Contains(serialNumbers[0].SuitNumber);
if (exist == false)
{
List<string> sn2 = new List<string>();
sn2.Add(list[i].TwoSerialNumber.Replace(list[i].SerialNumber, "").Replace(",", "")) ;
serialNumbers = await GetEntityList(sn2);
//说明是两件装,且是两件装的主号
list2.Specifications = list[i].Specifications;
list2.Old_Specifications = list[i].Old_Specifications;
list2.MaterialNumber = list[i].MaterialNumber;
list2.MaterialName = list[i].MaterialName;
list2.BarCode = list[i].BarCode;
list2.SerialNumber = serialNumbers[0].SerialNumber;
list2.SerialNumber2 = list[i].SerialNumber;
list2.NumberCode = serialNumbers[0].NumberCode;
list2.NumberCode2 = list[i].NumberCode;
list2.Number = list[i].Number;
list2.Id = serialNumbers[0].Id;
list2.Id2 = list[i].Id;
list2.IsUse = list[i].IsUse;
list2.IsUseStr = list[i].IsUseStr;
list2.IsEnablePrint = list[i].IsEnablePrint;
list2.Box = list[i].Box;
list2.Creator = list[i].Creator;
list2.CreateTime = list[i].CreateTime;
list2.PrintNumber = list[i].PrintNumber;
list2.DownLoadNumber = list[i].DownLoadNumber;
list2.DownLoadTime = list[i].DownLoadTime;
list2.PrintTime = list[i].PrintTime;
list2.IsTwo = list[i].IsTwo;
list2.TwoSerialNumber = list[i].TwoSerialNumber;
returnList.Add(list2);
}
else
{
list2.DownLoadTime = list[i].DownLoadTime;
}
}
}
}
}
return (returnList, total);
}
/// <summary> /// <summary>
/// 导出列表 /// 导出列表
/// </summary> /// </summary>
@@ -403,20 +656,77 @@ namespace BarCode.Web.Repositories
.Where(f => dto.Ids.Contains(f.serial.GenerateRecordId)); .Where(f => dto.Ids.Contains(f.serial.GenerateRecordId));
int total = await query.CountAsync(); int total = await query.CountAsync();
var list = await query.Select(s => new SerialNumbersExportReponse()
if (dto.IsTwo == 2)
{ {
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.serial.MaterialNumber), List<SerialNumbersExportReponse2> returnList = new List<SerialNumbersExportReponse2>();
MaterialNumber = s.serial.MaterialNumber,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.serial.MaterialNumber),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.serial.MaterialNumber),
SerialNumber = s.serial.SerialNumber, var list = await query.Select(s => new SerialNumbersExportReponse2()
NumberCode = s.serial.NumberCode, {
Number = s.sg == null ? 0 : s.sg.Number, PurchaseBillNo = s.sg == null ? "" : s.sg.PurchaseBillNo,
SupplierOrOrg = string.IsNullOrEmpty(s.sg.SupplierCode) ? _erpBasicDataExtendService.GetOrgName(orgs, s.sg.OrgCode) SuitNumber=s.serial.SuitNumber,
: _erpBasicDataExtendService.GetSupplierName(suppliers, s.sg.SupplierCode) TwoSerialNumber=s.serial.TwoSerialNumber,
}).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync(); Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.serial.MaterialNumber),
MaterialNumber = s.serial.MaterialNumber,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.serial.MaterialNumber),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.serial.MaterialNumber),
SerialNumber = s.serial.SerialNumber,
NumberCode = s.serial.NumberCode,
Number = s.sg == null ? 0 : s.sg.Number,
SupplierOrOrg = string.IsNullOrEmpty(s.sg.SupplierCode) ? _erpBasicDataExtendService.GetOrgName(orgs, s.sg.OrgCode)
: _erpBasicDataExtendService.GetSupplierName(suppliers, s.sg.SupplierCode)
}).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();
for (int i = 0; i < list.Count; i++)
{
SerialNumbersExportReponse2 list2 = new SerialNumbersExportReponse2();
if (list[i] != null)
{
if (list[i].SuitNumber == list[i].SerialNumber)
{
List<string> sn = new List<string>();
sn.Add(list[i].TwoSerialNumber.Replace(list[i].SuitNumber, "").Replace(",", ""));
var serialNumbers = await GetEntityList(sn);
list2.PurchaseBillNo = list[i].PurchaseBillNo;
list2.Specifications = list[i].Specifications;
list2.MaterialNumber = list[i].MaterialNumber;
list2.MaterialName = list[i].MaterialName;
list2.BarCode = list[i].BarCode;
list2.SerialNumber = serialNumbers[0].SerialNumber;
list2.SerialNumber2 = list[i].SerialNumber;
list2.NumberCode = serialNumbers[0].NumberCode;
list2.NumberCode2 = list[i].NumberCode;
list2.Number = list[i].Number;
list2.SupplierOrOrg = list[i].SupplierOrOrg;
returnList.Add(list2);
}
}
}
return (returnList, total);
}
else
{
var list = await query.Select(s => new SerialNumbersExportReponse()
{
PurchaseBillNo= s.sg == null ? "" : s.sg.PurchaseBillNo,
Specifications = _erpBasicDataExtendService.GetMaterialSpecifications(materials, s.serial.MaterialNumber),
MaterialNumber = s.serial.MaterialNumber,
MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, s.serial.MaterialNumber),
BarCode = _erpBasicDataExtendService.GetMaterialBarCode(materials, s.serial.MaterialNumber),
SerialNumber = s.serial.SerialNumber,
NumberCode = s.serial.NumberCode,
Number = s.sg == null ? 0 : s.sg.Number,
SupplierOrOrg = string.IsNullOrEmpty(s.sg.SupplierCode) ? _erpBasicDataExtendService.GetOrgName(orgs, s.sg.OrgCode)
: _erpBasicDataExtendService.GetSupplierName(suppliers, s.sg.SupplierCode)
}).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();
return (list, total); return (list, total);
}
} }
/// <summary> /// <summary>
/// 根据箱Id来搜索序列号 /// 根据箱Id来搜索序列号
/// </summary> /// </summary>
@@ -447,7 +757,7 @@ namespace BarCode.Web.Repositories
SerialNumber = s.SerialNumber, SerialNumber = s.SerialNumber,
IsUseNumber = s.IsUseNumber, IsUseNumber = s.IsUseNumber,
NumberCode = s.NumberCode, NumberCode = s.NumberCode,
TwoSerialNumber=s.TwoSerialNumber.Replace(s.SerialNumber,"").Replace(",","") TwoSerialNumber= (s.IsUseNumber==true)? s.TwoNumberCode.Replace(s.NumberCode,"").Replace(",",""): s.TwoSerialNumber.Replace(s.SerialNumber,"").Replace(",","")
}).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync(); }).Skip((dto.PageNo - 1) * dto.PageSize).Take(dto.PageSize).ToListAsync();
return (list, total); return (list, total);
} }
@@ -598,7 +908,11 @@ namespace BarCode.Web.Repositories
var entity = await query.FirstOrDefaultAsync(); var entity = await query.FirstOrDefaultAsync();
if (entity == null) return null; if (entity == null) return null;
bool isNumber = false;
if(entity.TwoNumberCode.IndexOf(serialNumber)>=0)
{
isNumber = true;
}
////如果为单套产品,那就直接取就行了。 ////如果为单套产品,那就直接取就行了。
//if (entity.IsTwo < 2) //if (entity.IsTwo < 2)
//{ //{
@@ -616,7 +930,8 @@ namespace BarCode.Web.Repositories
NumberCode = entity.NumberCode, NumberCode = entity.NumberCode,
IsTwo = entity.IsTwo, IsTwo = entity.IsTwo,
SuitNumber = entity.SuitNumber, SuitNumber = entity.SuitNumber,
TwoSerialNumber= entity.TwoSerialNumber.Replace(entity.SerialNumber,"").Replace(",","") TwoSerialNumber= (isNumber==true)? entity.TwoNumberCode.Replace(entity.NumberCode, "").Replace(",", ""): entity.TwoSerialNumber.Replace(entity.SerialNumber,"").Replace(",","")
// TwoNumberCode = entity.TwoNumberCode.Replace(entity.NumberCode, "").Replace(",", "")
}; };
//} //}
// else//跟据套装去查对应的 // else//跟据套装去查对应的
@@ -681,8 +996,27 @@ namespace BarCode.Web.Repositories
/// <returns></returns> /// <returns></returns>
public async Task<(object obj, int total)> GetListField(SerialNumberQueryRequest dto, LoginInDto loginInfo) public async Task<(object obj, int total)> GetListField(SerialNumberQueryRequest dto, LoginInDto loginInfo)
{ {
return await GetListAsync(dto, loginInfo); if (dto.isTwo == 2)
{
return await GetListAsync2(dto, loginInfo);
}
else
{
return await GetListAsync(dto, loginInfo);
}
} }
///// <summary>
///// 两件装条码列表导出
///// </summary>
///// <param name="dto"></param>
///// <param name="loginInfo"></param>
///// <returns></returns>
//public async Task<(object obj, int total)> GetListField2(SerialNumberQueryRequest dto, LoginInDto loginInfo)
//{
// return await GetListAsync2(dto, loginInfo);
//}
/// <summary> /// <summary>
/// 根据箱Id获取序列码 /// 根据箱Id获取序列码
/// </summary> /// </summary>