调漆房

This commit is contained in:
quowingwang 2026-01-08 15:53:00 +08:00
parent 716900d4ef
commit 0ac46d2933
3 changed files with 46 additions and 19 deletions

View File

@ -16,8 +16,8 @@
//
// "Conn": "Data Source=47.116.122.230;Port=3307;User ID=root;Password=123456;Initial Catalog=ZrAdmin;",
//"Conn": "Data Source=139.224.232.211;User ID=root;Password=doantech123;Initial Catalog=ZrAdmin;Port=3308;AllowLoadLocalInfile=true",
"Conn": "Data Source=192.168.1.48;User ID=root;Password=123456;Initial Catalog=ZrAdmin;Port=3306;AllowLoadLocalInfile=true",
//"Conn": "Data Source=127.0.0.1;User ID=root;Password=123456;Initial Catalog=ZrAdmin;Port=3306;AllowLoadLocalInfile=true",
//"Conn": "Data Source=192.168.1.48;User ID=root;Password=123456;Initial Catalog=ZrAdmin;Port=3306;AllowLoadLocalInfile=true",
"Conn": "Data Source=127.0.0.1;User ID=root;Password=123456;Initial Catalog=ZrAdmin;Port=3306;AllowLoadLocalInfile=true",
//
// "Conn": "Data Source=192.168.60.251;Port=3306;User ID=root;Password=123456;Initial Catalog=ZrAdmin;",
//

View File

@ -130,17 +130,23 @@ namespace ZR.Service.Utils.MyAlarmLigth
break;
case 2:
_logger?.LogInformation($"✅ X{portNumber}触发:红灯闪烁");
_modbusClient.WriteSingleCoil(lightUnitId, 1, false);
_modbusClient.WriteSingleCoil(lightUnitId, 1, true);
break;
case 3:
_logger?.LogInformation($"✅ X{portNumber}触发:红灯闪烁");
_modbusClient.WriteSingleCoil(lightUnitId, 2, true);
break;
case 4:
_logger?.LogInformation($"✅ X{portNumber}触发:红灯闪烁");
_modbusClient.WriteSingleCoil(lightUnitId, 3, true);
break;
// X5 → 绿灯
case 5:
_logger?.LogInformation($"✅ X{portNumber}触发:绿灯常亮");
_modbusClient.WriteSingleCoil(lightUnitId, 0, false);
_modbusClient.WriteSingleCoil(lightUnitId, 1, false);
_modbusClient.WriteSingleCoil(lightUnitId, 2, false);
_modbusClient.WriteSingleCoil(lightUnitId, 3, false);
break;
}
}

View File

@ -215,23 +215,44 @@ namespace ZR.Service.mes.andon
DateTime startTime = now.AddDays(-7).Date;
// 方法1使用 ToDate 函数(确保按日期分组)
//var dbStats = Queryable()
// .Where(a => a.CreatedTime >= startTime && a.CreatedTime <= endTime)
// .Where(a => a.Area1 != null && a.Area1 != "")
// .GroupBy(a => a.Area1)
// .Select(a => new
// {
// Area1 = a.Area1,
// Hours = SqlFunc.Round(
// SqlFunc.IIF(
// a.Status == "已处理",
// a.DurationTime / 60.0, // 已处理:分钟转小时
// SqlFunc.DateDiff(DateType.Minute, SqlFunc.ToDate(a.CreatedTime), DateTime.Now) / 60.0 // 未处理:计算等待时间转小时
// ), 2),
// AlarmCount = SqlFunc.AggregateCount(1)
// })
// .OrderBy(a => a.Area1)
// .ToList();
var dbStats = Queryable()
.Where(a => a.CreatedTime >= startTime && a.CreatedTime <= endTime)
.Where(a => a.Area1 != null && a.Area1 != "")
.GroupBy(a => a.Area1)
.Select(a => new
{
Area1 = a.Area1,
Hours = SqlFunc.Round(
SqlFunc.IIF(
a.Status == "已处理",
a.DurationTime / 60.0, // 已处理:分钟转小时
SqlFunc.DateDiff(DateType.Minute, SqlFunc.ToDate(a.CreatedTime), DateTime.Now) / 60.0 // 未处理:计算等待时间转小时
), 2),
AlarmCount = SqlFunc.AggregateCount(1)
})
.OrderBy(a => a.Area1)
.ToList();
.Where(a => a.CreatedTime >= startTime && a.CreatedTime <= endTime)
.Where(a => !string.IsNullOrEmpty(a.Area1))
.GroupBy(a => a.Area1)
.Select(a => new
{
Area1 = a.Area1,
Hours = SqlFunc.Round(
SqlFunc.IIF(
// 给status加聚合函数取该区域任意一条的status
SqlFunc.AggregateMax(a.Status) == "已处理",
// 给durationTime加聚合函数取该区域总和/平均值
SqlFunc.AggregateSum(a.DurationTime) / 60.0,
// 给CreatedTime加聚合函数取该区域最早/最晚的创建时间
SqlFunc.DateDiff(DateType.Minute, SqlFunc.AggregateMax(SqlFunc.ToDate(a.CreatedTime)), DateTime.Now) / 60.0
), 2),
AlarmCount = SqlFunc.AggregateCount(1)
})
.OrderBy(a => a.Area1)
.ToList();
var chartData = new
{