Commit f45b4e53 by jiawei.su

someupdate

parent 1912d10a
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Siger.Middlelayer.AccRepository.Entities;
using Siger.Middlelayer.AccRepository.Repositories.Interface;
using Siger.Middlelayer.AccRepository.Request;
using Siger.Middlelayer.AccRepository.Response;
using Siger.Middlelayer.Common;
using Siger.Middlelayer.Common.Extensions;
using Siger.Middlelayer.Log;
using Siger.Middlelayer.Repository;
using Siger.Middlelayer.Repository.Repositories.Interface;
using Siger.Middlelayer.Repository.Response;
using Siger.Middlelayer.Share.Constant;
using Siger.Middlelayer.Share.Enum.ModuleEnum;
namespace Siger.ApiACC.Controllers
{
public class AutomationOperateController : BaseController
{
private readonly IUnitOfWork _unitOfWork;
private readonly ISigerProjectLevelSectionRepository _sigerProjectLevelSection;
private readonly ISigerDict _sigerDict;
private readonly IAutomationMachineStatus _automationMachineStatus;
public AutomationOperateController(IUnitOfWork unitOfWork,ISigerProjectLevelSectionRepository sigerProjectLevelSection , ISigerDict sigerDict,IAutomationMachineStatus automationMachineStatus)
{
_unitOfWork = unitOfWork;
_sigerProjectLevelSection = sigerProjectLevelSection;
_sigerDict = sigerDict;
_automationMachineStatus = automationMachineStatus;
}
public IActionResult Get()
{
return new ObjectResult(1);
}
[HttpGet]
public IActionResult GetloadStation(int line)
{
var stationDicts = _sigerDict.GetDataByCat(AccDictCost.Automation, ProjectId);
if (!stationDicts.Any())
{
Logger.WriteLineInfo($"AutoProcess 未配置设备类型字典");
throw new BadRequestException(CommonEnum.RecordNotFound);
}
var dictLoad = stationDicts.Where(s => s.dkey == DictKeyValConst.UploadloadStation);
if (!dictLoad.Any())
{
Logger.WriteLineInfo($"AutoProcess 未配置上下料工站字典");
throw new BadRequestException(CommonEnum.RecordNotFound);
}
var loadStation = dictLoad.Select(s => s.dval).ToList();
var objs = _sigerProjectLevelSection.GetAccStationByline(ProjectId, line);
if (!objs.Any())
{
throw new BadRequestException(CommonEnum.RecordNotFound);
}
var data = new List<ResponseLoadStation>();
foreach (var station in loadStation)
{
var section = _sigerProjectLevelSection.Get(f => f.id == station.ToInt() && f.status == (int)RowState.Valid);
if (section == null)
continue;
var loadStatus = (int)Automation.MachineStatus.Waiting;
var machineStatus = _automationMachineStatus.Get(f => f.section == station.ToInt());
if (machineStatus==null)
{
_automationMachineStatus.Insert(new siger_automation_machine_status
{
projectId=ProjectId,
enable=1,
machineid=0,
section=section.id,
updatetime=DateTime.Now
});
}else
{
loadStatus = machineStatus.status;
}
data.Add(new ResponseLoadStation {
section=section.id,
title=section.title,
status=loadStatus
});
}
return new ObjectResult(data);
}
/// <summary>
/// 准备上料
/// </summary>
/// <param name="loading"></param>
/// <returns></returns>
[HttpPost]
public IActionResult Loading([FromBody]requestAutomationLoading loading)
{
var data = new ResponseAutomationInfo {
sn="sn0001",
wo="wo123123"
};
return new ObjectResult(data);
}
/// <summary>
/// 安装完成
/// </summary>
/// <param name="assemble"></param>
/// <returns></returns>
[HttpPost]
public IActionResult CompalateAssemble([FromBody]requestAutoCompalateAssemble assemble)
{
return new ObjectResult(1);
}
/// <summary>
/// 准备下料
/// </summary>
/// <param name="unloading"></param>
/// <returns></returns>
[HttpPost]
public IActionResult Unloading([FromBody]requestAutomationUnloading unloading)
{
return new ObjectResult(1);
}
/// <summary>
/// 拆卸完成
/// </summary>
/// <param name="disassemble"></param>
/// <returns></returns>
[HttpPost]
public IActionResult Disassemble([FromBody]Requestdisassemble disassemble)
{
return new ObjectResult(1);
}
}
}
using System.Linq;
using System.Collections.Generic;
using System.Linq;
using Microsoft.AspNetCore.Mvc;
using Siger.Middlelayer.Common;
using Siger.Middlelayer.Log;
using Siger.Middlelayer.Repository.Repositories.Interface;
using Siger.Middlelayer.Repository.Response;
using Siger.Middlelayer.Share.Constant;
namespace Siger.ApiConfig.Controller
{
public class PositionController : BaseController
{
private readonly ISigerProjectLevelSectionRepository _projectLevelSection;
public PositionController(ISigerProjectLevelSectionRepository projectLevelSection)
private readonly ISigerDict _sigerDict;
public PositionController(ISigerProjectLevelSectionRepository projectLevelSection ,ISigerDict sigerDict)
{
_projectLevelSection = projectLevelSection;
_sigerDict = sigerDict;
}
[HttpGet]
......@@ -30,6 +37,38 @@ namespace Siger.ApiConfig.Controller
return new ObjectResult(obj);
throw new BadRequestException(CommonEnum.RecordNotFound);
}
[HttpGet]
public IActionResult GetloadStation(int line)
{
var stationDicts = _sigerDict.GetDataByCat(AccDictCost.Automation,ProjectId);
if (!stationDicts.Any())
{
Logger.WriteLineInfo($"AutoProcess 未配置设备类型字典");
throw new BadRequestException(CommonEnum.RecordNotFound);
}
var dictLoad = stationDicts.Where(s => s.dkey == DictKeyValConst.UploadloadStation);
if (!dictLoad.Any())
{
Logger.WriteLineInfo($"AutoProcess 未配置上下料工站字典");
throw new BadRequestException(CommonEnum.RecordNotFound);
}
var loadStation = dictLoad.Select(s => s.dval).ToList();
var objs = _projectLevelSection.GetAccStationByline(ProjectId, line);
if (!objs.Any())
{
throw new BadRequestException(CommonEnum.RecordNotFound);
}
var data = new List<ResponseLoadStation>();
foreach(var station in objs)
{
}
return new ObjectResult(data);
}
}
}
\ No newline at end of file
......@@ -34,12 +34,9 @@ namespace Siger.Middlelayer.Share.Constant
/// </summary>
public const string CleanStation = "CleanStation";
/// <summary>
/// key:上料工站
/// key:上料下料工站
/// </summary>
public const string UploadloadStation = "UploadloadStation";
/// <summary>
/// key:下料工站
/// </summary>
public const string DownloadStation = "DownloadStation";
public const string UploadloadStation = "LoadStation";
}
}
using System;
using System.Collections.Generic;
using System.Text;
namespace Siger.Middlelayer.AccRepository.Request
{
/// <summary>
/// 准备上料
/// </summary>
public class requestAutomationLoading
{
public int section { get; set; }
public string code { get; set; }
}
/// <summary>
/// 安装完成
/// </summary>
public class requestAutoCompalateAssemble
{
public int section { get; set; }
}
/// <summary>
/// 准备下料
/// </summary>
public class requestAutomationUnloading
{
public int section { get; set; }
}
/// <summary>
/// 拆卸
/// </summary>
public class Requestdisassemble
{
public int section { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Text;
namespace Siger.Middlelayer.AccRepository.Response
{
public class ResponseAutomationInfo
{
/// <summary>
/// 工单信息
/// </summary>
public string wo { get; set; }
public string productCode { get; set; }
public string productName { get; set; }
/// <summary>
/// 工件编码
/// </summary>
public string sn { get; set; }
public int status { get; set; }
public int statusDesc { get; set; }
/// <summary>
/// 储位位置
/// </summary>
public string locationDesc { get; set; }
/// <summary>
/// 工装编号
/// </summary>
public string fixture { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Text;
namespace Siger.Middlelayer.Repository.Response
{
public class ResponseLoadStation
{
/// <summary>
/// 工站ID
/// </summary>
public int section { get; set; }
/// <summary>
/// 工站名称
/// </summary>
public string title { get; set; }
/// <summary>
/// 上料位状态
/// </summary>
public int status { get; set; }
}
}
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