|
|
|
|
@ -134,5 +134,115 @@ namespace CncService.Tests
|
|
|
|
|
var count = TestDb.QuerySingle<int>("SELECT COUNT(*) FROM cnc_production_adjustment");
|
|
|
|
|
Assert.Equal(1, count);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ======== GetMachineSummary ========
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetMachineSummary_无数据_返回0值()
|
|
|
|
|
{
|
|
|
|
|
var result = _service.GetMachineSummary(null, null, null);
|
|
|
|
|
Assert.NotNull(result);
|
|
|
|
|
Assert.Equal(0, result.TotalQuantity);
|
|
|
|
|
Assert.Equal(0, result.RunningMachineCount);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetMachineSummary_有数据_返回正确统计()
|
|
|
|
|
{
|
|
|
|
|
// 插入测试数据:2台机床,各生产一个程序
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_collect_address (name, url, brand_id, collect_interval, is_enabled, created_at, updated_at)
|
|
|
|
|
VALUES ('测试地址', 'http://test', 1, 30, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_machine (device_code, name, workshop_id, collect_address_id, ip_address, brand_id, is_enabled, created_at, updated_at)
|
|
|
|
|
VALUES ('M001', '机床1', 1, 1, '0.0.0.0', 1, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_machine (device_code, name, workshop_id, collect_address_id, ip_address, brand_id, is_enabled, created_at, updated_at)
|
|
|
|
|
VALUES ('M002', '机床2', 1, 1, '0.0.0.0', 1, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_production_segment (machine_id, production_date, program_name, start_time, start_part_count, end_part_count, quantity, is_settled, created_at, updated_at)
|
|
|
|
|
VALUES (1, CURDATE(), 'O0001', NOW(), 0, 100, 100, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_production_segment (machine_id, production_date, program_name, start_time, start_part_count, end_part_count, quantity, is_settled, created_at, updated_at)
|
|
|
|
|
VALUES (2, CURDATE(), 'O0002', NOW(), 0, 50, 50, 1, NOW(), NOW())");
|
|
|
|
|
|
|
|
|
|
var result = _service.GetMachineSummary(DateTime.Today, DateTime.Today, null);
|
|
|
|
|
Assert.Equal(150, result.TotalQuantity);
|
|
|
|
|
Assert.Equal(2, result.RunningMachineCount);
|
|
|
|
|
Assert.Equal(75m, result.AvgPerMachine);
|
|
|
|
|
Assert.NotEmpty(result.TopMachineName);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ======== GetMachineList ========
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetMachineList_无数据_返回空列表()
|
|
|
|
|
{
|
|
|
|
|
var result = _service.GetMachineList(null, null, null, null);
|
|
|
|
|
Assert.NotNull(result);
|
|
|
|
|
Assert.Empty(result);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetMachineList_有数据_返回排行()
|
|
|
|
|
{
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_collect_address (name, url, brand_id, collect_interval, is_enabled, created_at, updated_at)
|
|
|
|
|
VALUES ('测试地址', 'http://test', 1, 30, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_machine (device_code, name, workshop_id, collect_address_id, ip_address, brand_id, is_enabled, created_at, updated_at)
|
|
|
|
|
VALUES ('M001', '机床1', 1, 1, '0.0.0.0', 1, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_machine (device_code, name, workshop_id, collect_address_id, ip_address, brand_id, is_enabled, created_at, updated_at)
|
|
|
|
|
VALUES ('M002', '机床2', 1, 1, '0.0.0.0', 1, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_production_segment (machine_id, production_date, program_name, start_time, start_part_count, end_part_count, quantity, is_settled, created_at, updated_at)
|
|
|
|
|
VALUES (1, CURDATE(), 'O0001', NOW(), 0, 100, 100, 1, NOW(), NOW())");
|
|
|
|
|
TestDb.Execute(@"INSERT INTO cnc_production_segment (machine_id, production_date, program_name, start_time, start_part_count, end_part_count, quantity, is_settled, created_at, updated_at)
|
|
|
|
|
VALUES (2, CURDATE(), 'O0002', NOW(), 0, 50, 50, 1, NOW(), NOW())");
|
|
|
|
|
|
|
|
|
|
var result = _service.GetMachineList(DateTime.Today, DateTime.Today, null, null);
|
|
|
|
|
Assert.NotEmpty(result);
|
|
|
|
|
Assert.Equal(2, result.Count);
|
|
|
|
|
Assert.Equal(1, result[0].Rank);
|
|
|
|
|
Assert.Equal("机床1", result[0].MachineName);
|
|
|
|
|
Assert.Equal(100, result[0].TotalQuantity);
|
|
|
|
|
Assert.Equal(2, result[1].Rank);
|
|
|
|
|
Assert.Equal("机床2", result[1].MachineName);
|
|
|
|
|
Assert.Equal(50, result[1].TotalQuantity);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ======== GetWorkerSummary ========
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetWorkerSummary_无数据_返回0值()
|
|
|
|
|
{
|
|
|
|
|
var result = _service.GetWorkerSummary(null, null);
|
|
|
|
|
Assert.NotNull(result);
|
|
|
|
|
Assert.Equal(0, result.TotalQuantity);
|
|
|
|
|
Assert.Equal(0, result.ActiveWorkerCount);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ======== GetWorkerList ========
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetWorkerList_无数据_返回空列表()
|
|
|
|
|
{
|
|
|
|
|
var result = _service.GetWorkerList(null, null, null);
|
|
|
|
|
Assert.NotNull(result);
|
|
|
|
|
Assert.Empty(result);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ======== GetProgramSummary ========
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetProgramSummary_无数据_返回0值()
|
|
|
|
|
{
|
|
|
|
|
var result = _service.GetProgramSummary(null, null, null);
|
|
|
|
|
Assert.NotNull(result);
|
|
|
|
|
Assert.Equal(0, result.TotalQuantity);
|
|
|
|
|
Assert.Equal(0, result.RunningProgramCount);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// ======== GetProgramList ========
|
|
|
|
|
|
|
|
|
|
[Fact]
|
|
|
|
|
public void GetProgramList_无数据_返回空列表()
|
|
|
|
|
{
|
|
|
|
|
var result = _service.GetProgramList(null, null, null);
|
|
|
|
|
Assert.NotNull(result);
|
|
|
|
|
Assert.Empty(result);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|