Commit edc534b6 by jiawei.su

someupdate

parent c25b6bee
...@@ -21,6 +21,7 @@ using Siger.Middlelayer.Share.Enum.ModuleEnum; ...@@ -21,6 +21,7 @@ using Siger.Middlelayer.Share.Enum.ModuleEnum;
using Siger.Middlelayer.Common.Configuration; using Siger.Middlelayer.Common.Configuration;
using Siger.Middlelayer.Common.Helpers; using Siger.Middlelayer.Common.Helpers;
using Newtonsoft.Json; using Newtonsoft.Json;
using NPOI.SS.Formula;
namespace Siger.ApiACC.Controllers namespace Siger.ApiACC.Controllers
{ {
...@@ -452,7 +453,7 @@ namespace Siger.ApiACC.Controllers ...@@ -452,7 +453,7 @@ namespace Siger.ApiACC.Controllers
throw new BadRequestException(AccEnum.MonitorNotfound); throw new BadRequestException(AccEnum.MonitorNotfound);
} }
//移出 上料位 //移出 上料位
monitor.status = (int)Automation.MachineStatus.Waiting; monitor.section = 0;
var taskNo = _automationTaskList.CrateTaskNumber(Automation.TaskTrigerType.Manual); var taskNo = _automationTaskList.CrateTaskNumber(Automation.TaskTrigerType.Manual);
_automationTaskList.Insert(new siger_automation_task_list _automationTaskList.Insert(new siger_automation_task_list
{ {
...@@ -500,18 +501,27 @@ namespace Siger.ApiACC.Controllers ...@@ -500,18 +501,27 @@ namespace Siger.ApiACC.Controllers
[HttpPost] [HttpPost]
public IActionResult Unloading([FromBody]requestAutomationUnloading unloading) public IActionResult Unloading([FromBody]requestAutomationUnloading unloading)
{ {
var monitor = _automationFixtureMonitor.Get(f => f.section == unloading.section); //var monitor = _automationFixtureMonitor.Get(f => f.section == unloading.section);
if (monitor == null) //if (monitor == null)
//{
// Logger.WriteLineInfo($"AutoProcess 找不到CNC监控信息");
// return new ObjectResult(CommonEnum.RecordNotFound);
//}
//if (string.IsNullOrEmpty( monitor.sn))
//{
// Logger.WriteLineInfo($"AutoProcess 找不到CNC监控SN信息");
// return new ObjectResult(CommonEnum.RecordNotFound);
//}
var location = _automationLocation.Get(f => f.locationid == unloading.locationid);
if (location==null)
{ {
Logger.WriteLineInfo($"AutoProcess 找不到CNC监控信息");
return new ObjectResult(CommonEnum.RecordNotFound); return new ObjectResult(CommonEnum.RecordNotFound);
} }
if (string.IsNullOrEmpty( monitor.sn)) if (string.IsNullOrEmpty( location.sn))
{ {
Logger.WriteLineInfo($"AutoProcess 找不到CNC监控SN信息"); return new ObjectResult(AccEnum.LocationNoSn);
return new ObjectResult(CommonEnum.RecordNotFound);
} }
var levelSection = _sigerProjectLevelSection.Get(f => f.id == unloading.section); var levelSection = _sigerProjectLevelSection.Get(f => f.id == unloading.section);
var lineMode = _automationLine.Get(f => f.section ==levelSection.parentid); var lineMode = _automationLine.Get(f => f.section ==levelSection.parentid);
...@@ -540,17 +550,51 @@ namespace Siger.ApiACC.Controllers ...@@ -540,17 +550,51 @@ namespace Siger.ApiACC.Controllers
completetime = DateTime.MinValue, completetime = DateTime.MinValue,
trigger = Automation.TaskTrigerType.Manual, trigger = Automation.TaskTrigerType.Manual,
projectId = ProjectId, projectId = ProjectId,
productid = monitor.productId, productid = location.productid,
sn = monitor.sn, sn = location.sn,
ordercode = monitor.ordernumber, ordercode = location.ordernumber,
fixtureguid = monitor.fixtureguid, fixtureguid = location.fixturetools,
locationid = monitor.locationId, locationid = location.locationid,
productcode = monitor.productCode, productcode = location.productcode,
processid = 0, processid = 0,
programnumber = "", programnumber = "",
remark = "手动任务-准备上料", remark = "手动任务-准备上料",
}); });
var monitor = _automationFixtureMonitor.Get(f => f.section == unloading.section);
if (monitor == null)
{
_automationFixtureMonitor.Insert(new siger_automation_fixture_tools_monitor
{
fixtureguid = location.fixturetools,
fixturename = location.fixturename,
projectId = ProjectId,
section = unloading.section,
sn = location.sn,
createtime = DateTime.Now,
updatetime = DateTime.Now,
status = (int)Automation.MachineStatus.Produce,
productId = location.productid,
productCode = location.productcode,
productName = location.productname,
ordernumber = location.ordernumber,
locationId = location.locationid
});
}
else
{
monitor.sn = location.sn;
monitor.updatetime = DateTime.Now;
monitor.status = (int)Automation.MachineStatus.Produce;
monitor.productId = location.productid;
monitor.productName = location.productname;
monitor.productCode = location.productcode;
monitor.ordernumber = location.ordernumber;
monitor.locationId = location.locationid;
_automationFixtureMonitor.Update(monitor);
}
if (_unitOfWork.Commit() > 0) if (_unitOfWork.Commit() > 0)
{ {
...@@ -571,7 +615,64 @@ namespace Siger.ApiACC.Controllers ...@@ -571,7 +615,64 @@ namespace Siger.ApiACC.Controllers
public IActionResult Disassemble([FromBody]Requestdisassemble disassemble) public IActionResult Disassemble([FromBody]Requestdisassemble disassemble)
{ {
return new ObjectResult(1); var machineStatus = _automationMachineStatus.Get(f => f.section == disassemble.section);
if (machineStatus == null)
{
throw new BadRequestException(CommonEnum.RecordNotFound);
}
if (machineStatus.enable == 0)
{
throw new BadRequestException(AccEnum.MachineDisable);
}
if (!_automationTaskList.CanTask(ProjectId, disassemble.section))
{
throw new BadRequestException(AccEnum.TaskProcessing);
}
//创建 安装完成动作
var monitor = _automationFixtureMonitor.Get(f => f.projectId == ProjectId && f.section == disassemble.section);
if (monitor == null)
{
throw new BadRequestException(AccEnum.MonitorNotfound);
}
//移出 上料位
monitor.section = 0;
var taskNo = _automationTaskList.CrateTaskNumber(Automation.TaskTrigerType.Manual);
_automationTaskList.Insert(new siger_automation_task_list
{
no = taskNo,
action = Automation.TaskAction.Step_SXLW_LK,
actiontype = Automation.ExcueType.None,
triggertime = DateTime.Now,
tasktype = Automation.TaskActionType.Load,
operater = UserId,
operatetime = DateTime.Now,
sectionid = disassemble.section,
send = 0,
status = 1,
completetime = DateTime.MinValue,
trigger = Automation.TaskTrigerType.Manual,
projectId = ProjectId,
productid = monitor.productId,
sn = monitor.sn,
ordercode = monitor.ordernumber,
fixtureguid = monitor.fixtureguid,
locationid = monitor.locationId,
productcode = monitor.productCode,
processid = 0,
programnumber = "",
remark = "手动任务-拆卸完成",
});
if (_unitOfWork.Commit() > 0)
{
Logger.WriteLineError($"手动任务-拆卸完成-{Siger.Middlelayer.Common.Helpers.EnumHelper.GetEnumDesc(Automation.TaskAction.Step_SXLW_LK)}");
return new ObjectResult(CommonEnum.Succefull);
}
else
{
throw new BadRequestException(CommonEnum.Fail);
}
} }
} }
} }
...@@ -341,7 +341,9 @@ namespace Siger.Middlelayer.Common.ModuleEnum ...@@ -341,7 +341,9 @@ namespace Siger.Middlelayer.Common.ModuleEnum
[Description("产线当前为自动模式")] [Description("产线当前为自动模式")]
LineIsAutoMode, LineIsAutoMode,
[Description("该任务已经下发")] [Description("该任务已经下发")]
TaskIsSend TaskIsSend,
[Description("该储位无工件")]
LocationNoSn,
} }
public enum SeriNumCfg public enum SeriNumCfg
......
...@@ -31,6 +31,8 @@ namespace Siger.Middlelayer.AccRepository.Request ...@@ -31,6 +31,8 @@ namespace Siger.Middlelayer.AccRepository.Request
{ {
public int section { get; set; } public int section { get; set; }
public int locationid { get; set; }
} }
/// <summary> /// <summary>
......
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