Commit 46ab806f by xin.yang

fix bug

parent 818b8888
...@@ -67,27 +67,33 @@ namespace Siger.ApiCNC.Controllers ...@@ -67,27 +67,33 @@ namespace Siger.ApiCNC.Controllers
throw new ServerException(800293); throw new ServerException(800293);
} }
var start = request.start_time.ToDateTime(); var maxTime = "2199-01-01 00:00:00".ToDateTime();
var end = request.end_time.ToDateTime().AddDays(1).AddSeconds(-1);
var entities = await _beatSetRepository.GetListAsync(q=>q.status == (int)RowState.Valid && q.process_number == request.program_number bool timSet = !string.IsNullOrEmpty(request.start_time) && !string.IsNullOrEmpty(request.end_time);
&& q.machineID == request.machineID && q.projectID == ProjectId); var start = timSet ? request.start_time.ToDateTime() : DateTime.MinValue;
if (entities.Any()) var end = timSet ? request.end_time.ToDateTime().AddDays(1).AddSeconds(-1) : maxTime;
if (timSet)
{ {
var beats = entities.ToList(); var entities = await _beatSetRepository.GetListAsync(q => q.status == (int)RowState.Valid && q.process_number == request.program_number
foreach (var beat in beats) && q.machineID == request.machineID && q.projectID == ProjectId);
if (entities.Any())
{ {
if (start >= beat.start_time && start <= beat.end_time) var beats = entities.ToList();
{ foreach (var beat in beats)
throw new ServerException(940009);
}
if (end >= beat.start_time && end <= beat.end_time)
{
throw new ServerException(940009);
}
if (start <= beat.start_time && end >= beat.end_time)
{ {
throw new ServerException(940009); if (start >= beat.start_time && start <= beat.end_time)
{
throw new ServerException(940009);
}
if (end >= beat.start_time && end <= beat.end_time)
{
throw new ServerException(940009);
}
if (start <= beat.start_time && end >= beat.end_time)
{
throw new ServerException(940009);
}
} }
} }
} }
...@@ -115,8 +121,8 @@ namespace Siger.ApiCNC.Controllers ...@@ -115,8 +121,8 @@ namespace Siger.ApiCNC.Controllers
route_name = request.route_name, route_name = request.route_name,
updown_besat = request.updown_besat.ToDouble(), updown_besat = request.updown_besat.ToDouble(),
yieldrate = request.yieldratio, yieldrate = request.yieldratio,
start_time = start, start_time = timSet ? start : DateTime.MinValue,
end_time = end end_time = timSet ? end : maxTime
}; };
await _beatSetRepository.InsertAsync(beatSet); await _beatSetRepository.InsertAsync(beatSet);
if (await _unitOfWork.CommitAsync() > 0) if (await _unitOfWork.CommitAsync() > 0)
...@@ -138,28 +144,34 @@ namespace Siger.ApiCNC.Controllers ...@@ -138,28 +144,34 @@ namespace Siger.ApiCNC.Controllers
throw new ServerException(800293); throw new ServerException(800293);
} }
var start = request.start_time.ToDateTime(); var maxTime = "2199-01-01 00:00:00".ToDateTime();
var end = request.end_time.ToDateTime().AddDays(1).AddSeconds(-1);
var entities = await _beatSetRepository.GetListAsync(q => q.status == (int)RowState.Valid && q.process_number == request.program_number bool timSet = !string.IsNullOrEmpty(request.start_time) && !string.IsNullOrEmpty(request.end_time);
&& q.machineID == request.machineID && q.projectID == ProjectId if (timSet)
&& q.id != request.id);
if (entities.Any())
{ {
var beats = entities.ToList(); var start = request.start_time.ToDateTime();
foreach (var beat in beats) var end = request.end_time.ToDateTime().AddDays(1).AddSeconds(-1);
var entities = await _beatSetRepository.GetListAsync(q => q.status == (int)RowState.Valid && q.process_number == request.program_number
&& q.machineID == request.machineID && q.projectID == ProjectId
&& q.id != request.id);
if (entities.Any())
{ {
if (start >= beat.start_time && start <= beat.end_time) var beats = entities.ToList();
{ foreach (var beat in beats)
throw new ServerException(940009);
}
if (end >= beat.start_time && end <= beat.end_time)
{
throw new ServerException(940009);
}
if (start <= beat.start_time && end >= beat.end_time)
{ {
throw new ServerException(940009); if (start >= beat.start_time && start <= beat.end_time)
{
throw new ServerException(940009);
}
if (end >= beat.start_time && end <= beat.end_time)
{
throw new ServerException(940009);
}
if (start <= beat.start_time && end >= beat.end_time)
{
throw new ServerException(940009);
}
} }
} }
} }
...@@ -171,7 +183,7 @@ namespace Siger.ApiCNC.Controllers ...@@ -171,7 +183,7 @@ namespace Siger.ApiCNC.Controllers
} }
beatSet.daily_standard_output = request.daily_standard_output; beatSet.daily_standard_output = request.daily_standard_output;
beatSet.edit_time = DateTime.Now; beatSet.edit_time = timSet ? DateTime.Now : DateTime.MinValue;
//beatSet.machineID = request.machineID; //beatSet.machineID = request.machineID;
//beatSet.section_id = request.sectionid; //beatSet.section_id = request.sectionid;
beatSet.standard_besat = request.standard_besat; beatSet.standard_besat = request.standard_besat;
...@@ -180,8 +192,8 @@ namespace Siger.ApiCNC.Controllers ...@@ -180,8 +192,8 @@ namespace Siger.ApiCNC.Controllers
//beatSet.route_name = request.route_name; //beatSet.route_name = request.route_name;
beatSet.updown_besat = request.updown_besat.ToDouble(); beatSet.updown_besat = request.updown_besat.ToDouble();
beatSet.yieldrate = request.yieldratio; beatSet.yieldrate = request.yieldratio;
beatSet.start_time = request.start_time.ToDateTime(); beatSet.start_time = timSet ? request.start_time.ToDateTime() : DateTime.MinValue;
beatSet.end_time = request.end_time.ToDateTime().AddDays(1).AddSeconds(-1); beatSet.end_time = timSet ? request.end_time.ToDateTime().AddDays(1).AddSeconds(-1) : maxTime;
await _beatSetRepository.UpdateAsync(beatSet); await _beatSetRepository.UpdateAsync(beatSet);
if (await _unitOfWork.CommitAsync() > 0) if (await _unitOfWork.CommitAsync() > 0)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment