Browse Source

号码解析服务添加

master
lvzb 1 year ago
parent
commit
1084b14fc5
  1. 25
      src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/MsgCheck/BillNumberTypeEnum.cs
  2. 3
      src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Entitys/BillNumberRecord.cs
  3. 59
      src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Services/BillNumberRecordDomainService.cs

25
src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/MsgCheck/BillNumberTypeEnum.cs

@ -0,0 +1,25 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace WY.NewJit.MsgCheck
{
public enum BillNumberTypeEnum
{
[Description("顺序")]
= 0,
/// <summary>
/// 已匹配,未打印
/// </summary>
[Description("断号")]
= 1,
/// <summary>
/// 已打印
/// </summary>
[Description("补打")]
= 2,
}
}

3
src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Entitys/BillNumberRecord.cs

@ -2,6 +2,7 @@
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@ -34,5 +35,7 @@ namespace WY.NewJit.MsgCheck
/// 更新时间#
/// </summary>
public virtual DateTime UpdateTime { get; set; }
[NotMapped]
public virtual Dictionary<string, BillNumberTypeEnum> dic { get; set; }
}
}

59
src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Services/BillNumberRecordDomainService.cs

@ -25,6 +25,63 @@ namespace WY.NewJit.MsgCheck
_logRemindDomainService = logRemindDomainService;
}
public async Task<BillNumberRecord> GetBillNumber(int number, string productLine)
{
Dictionary<string, BillNumberTypeEnum> ls = new Dictionary<string, BillNumberTypeEnum>();//待打印数据
BillNumberRecord record = new BillNumberRecord();
var bill = await _billNumberRepository.GetAsync(r => r.ProductLine == productLine);
int recordNumber = bill.RecordNumber;//记录号
int roundNumber = bill.RoundNumber;
int x = number - recordNumber;
if (x <= -1000)
{
roundNumber++;
record.InsertedRows = (1999 - recordNumber) + (number - 1) + 1;
for (int i = 1; i <= record.InsertedRows; i++)
{
BillNumberTypeEnum type = BillNumberTypeEnum.;
if (i + recordNumber > 1999)
{
if ((i + recordNumber - 1999) != number) type = BillNumberTypeEnum.;
ls.Add((roundNumber.ToString()+(i + recordNumber - 1999).ToString()), type);
}
else
{
if ((i + recordNumber) != number) type = BillNumberTypeEnum.;
ls.Add((roundNumber.ToString()+(i + recordNumber).ToString()), type);
}
}
recordNumber = number;
record.RoundNumber= roundNumber+1;
}
else if (-1000 < x && x < 0)
{
record.RoundNumber = roundNumber;
record.InsertedRows = 0;
ls.Add((roundNumber.ToString() + (recordNumber).ToString()), BillNumberTypeEnum.);
}
else if (0 < x && x < 1000)
{
record.RoundNumber = roundNumber;
record.RoundNumber = (number - recordNumber);
for (int i = 1; i <= record.RoundNumber; i++)
{
BillNumberTypeEnum type = BillNumberTypeEnum.;
if ((i + recordNumber) != number) type = BillNumberTypeEnum.;
ls.Add((roundNumber.ToString() + (i + recordNumber).ToString()), type);
}
recordNumber = number;
}
else if (x >= 1000)
{
record.RoundNumber = roundNumber - 1;
record.RoundNumber = 0;
ls.Add((roundNumber.ToString() + (recordNumber).ToString()), BillNumberTypeEnum.);
}
record.dic = ls;
return record;
}
}
}

Loading…
Cancel
Save