|
@@ -126,7 +126,7 @@ namespace TeamAAS_VP.Data
|
|
|
{
|
|
{
|
|
|
UserId = userId,
|
|
UserId = userId,
|
|
|
Success = true,
|
|
Success = true,
|
|
|
- Time = DateTime.Now,
|
|
|
|
|
|
|
+ Time = DateTime.UtcNow,
|
|
|
Message = "Set as current user"
|
|
Message = "Set as current user"
|
|
|
};
|
|
};
|
|
|
|
|
|
|
@@ -146,7 +146,7 @@ namespace TeamAAS_VP.Data
|
|
|
{
|
|
{
|
|
|
UserId = user.Id,
|
|
UserId = user.Id,
|
|
|
Success = true,
|
|
Success = true,
|
|
|
- Time = DateTime.Now,
|
|
|
|
|
|
|
+ Time = DateTime.UtcNow,
|
|
|
Message = user.UserName
|
|
Message = user.UserName
|
|
|
};
|
|
};
|
|
|
await RecordUserLoginAsync(rec);
|
|
await RecordUserLoginAsync(rec);
|
|
@@ -176,9 +176,9 @@ namespace TeamAAS_VP.Data
|
|
|
////如果没有登录记录则返回一个默认的用户,即第一个用户
|
|
////如果没有登录记录则返回一个默认的用户,即第一个用户
|
|
|
//if (rec == null) return _db.Queryable<User>().First();
|
|
//if (rec == null) return _db.Queryable<User>().First();
|
|
|
//return _db.Queryable<User>().InSingle(rec.UserId);
|
|
//return _db.Queryable<User>().InSingle(rec.UserId);
|
|
|
- if (CurrentUser==null)
|
|
|
|
|
|
|
+ if (CurrentUser == null)
|
|
|
{
|
|
{
|
|
|
- CurrentUser= _db.Queryable<User>().ToList().FirstOrDefault();
|
|
|
|
|
|
|
+ CurrentUser = _db.Queryable<User>().ToList().FirstOrDefault();
|
|
|
}
|
|
}
|
|
|
return CurrentUser;
|
|
return CurrentUser;
|
|
|
}
|
|
}
|
|
@@ -190,7 +190,7 @@ namespace TeamAAS_VP.Data
|
|
|
public async Task RecordUserLoginAsync(UserLoginRecord record)
|
|
public async Task RecordUserLoginAsync(UserLoginRecord record)
|
|
|
{
|
|
{
|
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
|
- if (record.Time == default(DateTime)) record.Time = DateTime.Now;
|
|
|
|
|
|
|
+ if (record.Time == default(DateTime)) record.Time = DateTime.UtcNow;
|
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -397,10 +397,10 @@ namespace TeamAAS_VP.Data
|
|
|
public async Task<int> GetTodayProductionAsync(string productName)
|
|
public async Task<int> GetTodayProductionAsync(string productName)
|
|
|
{
|
|
{
|
|
|
//今天的起始时间
|
|
//今天的起始时间
|
|
|
- var todayStart = DateTime.Now.Date;
|
|
|
|
|
|
|
+ var todayStart = DateTime.UtcNow.Date;
|
|
|
//今天的结束时间
|
|
//今天的结束时间
|
|
|
- var todayEnd = DateTime.Now.Date;
|
|
|
|
|
- todayEnd= todayEnd.AddDays(1);
|
|
|
|
|
|
|
+ var todayEnd = DateTime.UtcNow.Date;
|
|
|
|
|
+ todayEnd = todayEnd.AddDays(1);
|
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
|
var total = await _db.Queryable<ProductionRecord>()
|
|
var total = await _db.Queryable<ProductionRecord>()
|
|
|
.Where(r => r.ProductName == productName && r.Timestamp >= todayStart && r.Timestamp < todayEnd)
|
|
.Where(r => r.ProductName == productName && r.Timestamp >= todayStart && r.Timestamp < todayEnd)
|
|
@@ -415,8 +415,8 @@ namespace TeamAAS_VP.Data
|
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
|
public async Task<int> GetLastHourProductionAsync(string productName)
|
|
public async Task<int> GetLastHourProductionAsync(string productName)
|
|
|
{
|
|
{
|
|
|
- var lastHourStart = DateTime.Now.AddHours(-1);
|
|
|
|
|
- var lastHourEnd = DateTime.Now;
|
|
|
|
|
|
|
+ var lastHourStart = DateTime.UtcNow.AddHours(-1);
|
|
|
|
|
+ var lastHourEnd = DateTime.UtcNow;
|
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
|
var total = await _db.Queryable<ProductionRecord>()
|
|
var total = await _db.Queryable<ProductionRecord>()
|
|
|
.Where(r => r.ProductName == productName && r.Timestamp >= lastHourStart && r.Timestamp < lastHourEnd)
|
|
.Where(r => r.ProductName == productName && r.Timestamp >= lastHourStart && r.Timestamp < lastHourEnd)
|
|
@@ -432,7 +432,7 @@ namespace TeamAAS_VP.Data
|
|
|
public Task<int> GetCurrentMonthProductionAsync(string productName)
|
|
public Task<int> GetCurrentMonthProductionAsync(string productName)
|
|
|
{
|
|
{
|
|
|
|
|
|
|
|
- var now = DateTime.Now;
|
|
|
|
|
|
|
+ var now = DateTime.UtcNow;
|
|
|
var monthStart = new DateTime(now.Year, now.Month, 1);
|
|
var monthStart = new DateTime(now.Year, now.Month, 1);
|
|
|
var monthEnd = monthStart.AddMonths(1);
|
|
var monthEnd = monthStart.AddMonths(1);
|
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
@@ -449,7 +449,7 @@ namespace TeamAAS_VP.Data
|
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
|
public Task<int> GetCurrentWeekProductionAsync(string productName)
|
|
public Task<int> GetCurrentWeekProductionAsync(string productName)
|
|
|
{
|
|
{
|
|
|
- var now = DateTime.Now;
|
|
|
|
|
|
|
+ var now = DateTime.UtcNow;
|
|
|
var weekStart = FirstDayOfWeek(now);
|
|
var weekStart = FirstDayOfWeek(now);
|
|
|
var weekEnd = weekStart.AddDays(7);
|
|
var weekEnd = weekStart.AddDays(7);
|
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
//按照产品名称和时间范围查询生产记录的总数
|
|
@@ -522,7 +522,7 @@ namespace TeamAAS_VP.Data
|
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
|
public async Task<Dictionary<DateTime, Dictionary<string, int>>> GetMonthlyProductionByDayAndCategoryAsync(string productName)
|
|
public async Task<Dictionary<DateTime, Dictionary<string, int>>> GetMonthlyProductionByDayAndCategoryAsync(string productName)
|
|
|
{
|
|
{
|
|
|
- var now = DateTime.Now;
|
|
|
|
|
|
|
+ var now = DateTime.UtcNow;
|
|
|
var monthStart = new DateTime(now.Year, now.Month, 1);
|
|
var monthStart = new DateTime(now.Year, now.Month, 1);
|
|
|
var monthEnd = monthStart.AddMonths(1);
|
|
var monthEnd = monthStart.AddMonths(1);
|
|
|
var list = await _db.Queryable<ProductionRecord>()
|
|
var list = await _db.Queryable<ProductionRecord>()
|
|
@@ -547,7 +547,7 @@ namespace TeamAAS_VP.Data
|
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
|
public async Task<Dictionary<int, Dictionary<string, int>>> GetWeeklyProductionByDayAndCategoryAsync(string productName)
|
|
public async Task<Dictionary<int, Dictionary<string, int>>> GetWeeklyProductionByDayAndCategoryAsync(string productName)
|
|
|
{
|
|
{
|
|
|
- var now = DateTime.Now;
|
|
|
|
|
|
|
+ var now = DateTime.UtcNow;
|
|
|
var weekStart = FirstDayOfWeek(now);
|
|
var weekStart = FirstDayOfWeek(now);
|
|
|
var weekEnd = weekStart.AddDays(7);
|
|
var weekEnd = weekStart.AddDays(7);
|
|
|
var list = await _db.Queryable<ProductionRecord>()
|
|
var list = await _db.Queryable<ProductionRecord>()
|
|
@@ -571,7 +571,7 @@ namespace TeamAAS_VP.Data
|
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
|
public async Task<Dictionary<int, Dictionary<string, int>>> GetDailyProductionByHourAndCategoryAsync(string productName)
|
|
public async Task<Dictionary<int, Dictionary<string, int>>> GetDailyProductionByHourAndCategoryAsync(string productName)
|
|
|
{
|
|
{
|
|
|
- var now = DateTime.Now;
|
|
|
|
|
|
|
+ var now = DateTime.UtcNow;
|
|
|
var dayStart = now.Date;
|
|
var dayStart = now.Date;
|
|
|
var dayEnd = dayStart.AddDays(1);
|
|
var dayEnd = dayStart.AddDays(1);
|
|
|
var list = await _db.Queryable<ProductionRecord>()
|
|
var list = await _db.Queryable<ProductionRecord>()
|
|
@@ -614,7 +614,7 @@ namespace TeamAAS_VP.Data
|
|
|
public async Task RecordAlarmAsync(AlarmRecord alarm)
|
|
public async Task RecordAlarmAsync(AlarmRecord alarm)
|
|
|
{
|
|
{
|
|
|
if (alarm == null) throw new ArgumentNullException(nameof(alarm));
|
|
if (alarm == null) throw new ArgumentNullException(nameof(alarm));
|
|
|
- if (alarm.Time == default(DateTime)) alarm.Time = DateTime.Now;
|
|
|
|
|
|
|
+ if (alarm.Time == default(DateTime)) alarm.Time = DateTime.UtcNow;
|
|
|
await _db.Insertable(alarm).ExecuteCommandAsync();
|
|
await _db.Insertable(alarm).ExecuteCommandAsync();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -646,7 +646,7 @@ namespace TeamAAS_VP.Data
|
|
|
public async Task RecordPhotoCaptureAsync(PhotoCaptureRecord record)
|
|
public async Task RecordPhotoCaptureAsync(PhotoCaptureRecord record)
|
|
|
{
|
|
{
|
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
|
- if (record.CaptureTime == default(DateTime)) record.CaptureTime = DateTime.Now;
|
|
|
|
|
|
|
+ if (record.CaptureTime == default(DateTime)) record.CaptureTime = DateTime.UtcNow;
|
|
|
record.Id = record.Id == Guid.Empty ? Guid.NewGuid() : record.Id;
|
|
record.Id = record.Id == Guid.Empty ? Guid.NewGuid() : record.Id;
|
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
|
}
|
|
}
|
|
@@ -699,7 +699,7 @@ namespace TeamAAS_VP.Data
|
|
|
public async Task RecordAssemblyAsync(AssemblyRecord record)
|
|
public async Task RecordAssemblyAsync(AssemblyRecord record)
|
|
|
{
|
|
{
|
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
|
- if (record.Timestamp == default(DateTime)) record.Timestamp = DateTime.Now;
|
|
|
|
|
|
|
+ if (record.Timestamp == default(DateTime)) record.Timestamp = DateTime.UtcNow;
|
|
|
record.Id = record.Id == Guid.Empty ? Guid.NewGuid() : record.Id;
|
|
record.Id = record.Id == Guid.Empty ? Guid.NewGuid() : record.Id;
|
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
|
}
|
|
}
|
|
@@ -747,7 +747,7 @@ namespace TeamAAS_VP.Data
|
|
|
try
|
|
try
|
|
|
{
|
|
{
|
|
|
if (result == null) throw new ArgumentNullException(nameof(result));
|
|
if (result == null) throw new ArgumentNullException(nameof(result));
|
|
|
- if (result.Timestamp == default(DateTime)) result.Timestamp = DateTime.Now;
|
|
|
|
|
|
|
+ if (result.Timestamp == default(DateTime)) result.Timestamp = DateTime.UtcNow;
|
|
|
await _db.Insertable(result).ExecuteCommandAsync();
|
|
await _db.Insertable(result).ExecuteCommandAsync();
|
|
|
}
|
|
}
|
|
|
catch (Exception)
|
|
catch (Exception)
|
|
@@ -787,14 +787,14 @@ namespace TeamAAS_VP.Data
|
|
|
var list = await q.OrderBy(r => r.Timestamp, OrderByType.Desc).ToListAsync();
|
|
var list = await q.OrderBy(r => r.Timestamp, OrderByType.Desc).ToListAsync();
|
|
|
return list;
|
|
return list;
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 记录一次螺丝供料器批次更换记录
|
|
/// 记录一次螺丝供料器批次更换记录
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
public async Task RecordScrewFeederBatchAsync(ScrewFeederBatchRecord record)
|
|
public async Task RecordScrewFeederBatchAsync(ScrewFeederBatchRecord record)
|
|
|
{
|
|
{
|
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
if (record == null) throw new ArgumentNullException(nameof(record));
|
|
|
- if (record.ChangeTime == default(DateTime)) record.ChangeTime = DateTime.Now;
|
|
|
|
|
|
|
+ if (record.ChangeTime == default(DateTime)) record.ChangeTime = DateTime.UtcNow;
|
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
await _db.Insertable(record).ExecuteCommandAsync();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -865,7 +865,6 @@ namespace TeamAAS_VP.Data
|
|
|
}
|
|
}
|
|
|
#endregion
|
|
#endregion
|
|
|
|
|
|
|
|
-
|
|
|
|
|
#region 产品和mes的绑定,自动切换产品
|
|
#region 产品和mes的绑定,自动切换产品
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
/// 添加绑定信息
|
|
/// 添加绑定信息
|
|
@@ -930,18 +929,25 @@ namespace TeamAAS_VP.Data
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
/// <summary>
|
|
|
- /// 通过产品的编码和颜色查询产品的名称
|
|
|
|
|
|
|
+ /// 通过产品的编码和颜色查询产品
|
|
|
/// </summary>
|
|
/// </summary>
|
|
|
/// <param name="code"></param>
|
|
/// <param name="code"></param>
|
|
|
/// <returns></returns>
|
|
/// <returns></returns>
|
|
|
- public async Task<string> QueryProductFromMesAsync(string code, string color)
|
|
|
|
|
|
|
+ public async Task<ProductWithMes> QueryProductFromMesAsync(string code, string color)
|
|
|
{
|
|
{
|
|
|
var v = await _db.Queryable<ProductWithMes>().Where(r => r.ProductCode == code && r.ProductColor == color).FirstAsync();
|
|
var v = await _db.Queryable<ProductWithMes>().Where(r => r.ProductCode == code && r.ProductColor == color).FirstAsync();
|
|
|
- if (v == null || v.ProductName == null)
|
|
|
|
|
- {
|
|
|
|
|
- return "";
|
|
|
|
|
- }
|
|
|
|
|
- return v.ProductName;
|
|
|
|
|
|
|
+ return v;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /// <summary>
|
|
|
|
|
+ /// 通过产品名称的查询产品
|
|
|
|
|
+ /// </summary>
|
|
|
|
|
+ /// <param name="code"></param>
|
|
|
|
|
+ /// <returns></returns>
|
|
|
|
|
+ public async Task<ProductWithMes> QueryProductFromMesAsync(string name)
|
|
|
|
|
+ {
|
|
|
|
|
+ var v = await _db.Queryable<ProductWithMes>().Where(r => r.ProductName == name).FirstAsync();
|
|
|
|
|
+ return v;
|
|
|
}
|
|
}
|
|
|
#endregion
|
|
#endregion
|
|
|
}
|
|
}
|