Fix fanuc
Added noUserLogged filter in Alarms
This commit is contained in:
@@ -28,21 +28,27 @@ namespace Step.Database.Controllers
|
||||
dbCtx.Dispose();
|
||||
}
|
||||
|
||||
public List<DTOAlarmHistoricModel> GetPaginatedWithFilter(string title, List<ALARM_TYPE> types, int page, int pageSize, DateTime startDate, DateTime endDate, List<int> userIds, Dictionary<int, string> plcMessages)
|
||||
public List<DTOAlarmHistoricModel> GetPaginatedWithFilter(string title, List<ALARM_TYPE> types, int page, int pageSize, DateTime startDate, DateTime endDate, List<int?> userIds, Dictionary<int, string> plcMessages)
|
||||
{
|
||||
bool ifNoUser = false;
|
||||
var index = userIds.IndexOf(-1);
|
||||
if (userIds.IndexOf(-1) != -1)
|
||||
ifNoUser = true;
|
||||
|
||||
List<int> ncAlarmDescIds = dbCtx
|
||||
.AlarmDescriptions
|
||||
.Where(x => x.Title.Contains(title))
|
||||
.Select(x => x.AlarmId)
|
||||
.ToList();
|
||||
|
||||
// Add Plc messages
|
||||
// Get Plc messages ids
|
||||
List<int> plcAlarmDescIds =
|
||||
plcMessages
|
||||
.Where(x => x.Value.Contains(title))
|
||||
.Select(x => x.Key)
|
||||
.ToList();
|
||||
|
||||
// Query
|
||||
var occurrencesQuery = dbCtx
|
||||
.AlarmOccurrences
|
||||
.OrderBy(x => x.AlarmOccurrenceId)
|
||||
@@ -50,7 +56,7 @@ namespace Step.Database.Controllers
|
||||
.Where(x =>
|
||||
x.TimeStamp >= startDate && x.TimeStamp <= endDate // Filter by date
|
||||
&& types.Contains(x.Type) // Type
|
||||
&& x.Users.Any(y => userIds.Any(z => z == y.UserId)) // Check user
|
||||
&& ( (ifNoUser && x.Users.Count() == 0) || x.Users.Any(y => userIds.Any(z => z == y.UserId))) // Check user
|
||||
&&
|
||||
((x.Source == ALARM_SOURCE.NC && ncAlarmDescIds.Contains(x.AlarmDescriptionId.Value)) // Check if message is contained in NC messages
|
||||
|| (x.Source == ALARM_SOURCE.PLC && plcAlarmDescIds.Contains(x.PlcMessageId.Value))) // Check if message is contained in PLC messages
|
||||
@@ -61,7 +67,7 @@ namespace Step.Database.Controllers
|
||||
.ToList();
|
||||
|
||||
return occurrencesQuery
|
||||
.Select(x => (DTOAlarmHistoricModel)x)
|
||||
.Select(x => (DTOAlarmHistoricModel)x) // Convert to DTOALarmHistoricModel
|
||||
.ToList();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user