diff --git a/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/MsgCheck/BillNumberTypeEnum.cs b/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain.Shared/MsgCheck/BillNumberTypeEnum.cs
new file mode 100644
index 0000000..0ab29fb
--- /dev/null
+++ b/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,
+
+ ///
+ /// 已匹配,未打印
+ ///
+ [Description("断号")]
+ 断号 = 1,
+
+ ///
+ /// 已打印
+ ///
+ [Description("补打")]
+ 补打 = 2,
+ }
+}
diff --git a/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Entitys/BillNumberRecord.cs b/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Entitys/BillNumberRecord.cs
index 549527d..fd7c2a5 100644
--- a/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Entitys/BillNumberRecord.cs
+++ b/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
/// 更新时间#
///
public virtual DateTime UpdateTime { get; set; }
+ [NotMapped]
+ public virtual Dictionary dic { get; set; }
}
}
diff --git a/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Services/BillNumberRecordDomainService.cs b/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Services/BillNumberRecordDomainService.cs
index b2c558a..66e7990 100644
--- a/src/Modules/新版JIT或JIS系统服务端/src/WY.NewJit.Domain/MsgCheck/Services/BillNumberRecordDomainService.cs
+++ b/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 GetBillNumber(int number, string productLine)
+ {
+ Dictionary ls = new Dictionary();//待打印数据
+ 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;
+ }
}
}