| | |
| | | private readonly IHubContext<TaskLogHub, ITaskLogHub> _taskLogHubContext; |
| | | private readonly SqlSugarRepository<WcsCheckTask> _wcsCheckTaskRep; |
| | | private readonly SqlSugarRepository<WcsMateialPzInfo> _wcsMateialPzInfoRep; |
| | | private readonly object _lockObj = new object(); |
| | | |
| | | public WcsTaskService(SqlSugarRepository<WcsTask> wcsTaskRep, IHubContext<TaskLogHub, ITaskLogHub> taskLogHubContext, SqlSugarRepository<WcsCheckTask> wcsCheckTaskRep, SqlSugarRepository<WcsMateialPzInfo> wcsMateialPzInfoRep) |
| | | { |
| | |
| | | [NonAction] |
| | | public string GetTaskCode(string codeFlag = "WCS") |
| | | { |
| | | var list = _db.Queryable<WcsTask>().Where(m => m.TaskNo.StartsWith("WCS")).ToList(); |
| | | string maxNo = list.Max(m => m.TaskNo); |
| | | if (!string.IsNullOrEmpty(maxNo)) |
| | | lock (_lockObj) |
| | | { |
| | | maxNo = maxNo.Substring(codeFlag.Length); |
| | | } |
| | | //获取数据库时间八位 |
| | | string date = DateTime.Now.ToString("yyyyMMdd").Trim(); |
| | | string no = ""; |
| | | if (string.IsNullOrEmpty(maxNo)) |
| | | { |
| | | no = codeFlag + date + "0001"; |
| | | } |
| | | else |
| | | { |
| | | if (maxNo.Length == 12 && maxNo.Substring(0, 8) == date) |
| | | var list = _db.Queryable<WcsTask>().Where(m => m.TaskNo.StartsWith("WCS")).ToList(); |
| | | string maxNo = list.Max(m => m.TaskNo); |
| | | if (!string.IsNullOrEmpty(maxNo)) |
| | | { |
| | | int lastNo = Convert.ToInt32(maxNo.Substring(8, 4)) + 1; |
| | | no = codeFlag + date + (lastNo.ToString().PadLeft(4, '0')); |
| | | maxNo = maxNo.Substring(codeFlag.Length); |
| | | } |
| | | else |
| | | //获取数据库时间八位 |
| | | string date = DateTime.Now.ToString("yyyyMMdd").Trim(); |
| | | string no = ""; |
| | | if (string.IsNullOrEmpty(maxNo)) |
| | | { |
| | | no = codeFlag + date + "0001"; |
| | | } |
| | | else |
| | | { |
| | | if (maxNo.Length == 12 && maxNo.Substring(0, 8) == date) |
| | | { |
| | | int lastNo = Convert.ToInt32(maxNo.Substring(8, 4)) + 1; |
| | | no = codeFlag + date + (lastNo.ToString().PadLeft(4, '0')); |
| | | } |
| | | else |
| | | { |
| | | no = codeFlag + date + "0001"; |
| | | } |
| | | } |
| | | return no; |
| | | } |
| | | return no; |
| | | |
| | | } |
| | | } |