UpstreamController.cs 4.4 KB
using Hh.Mes.POJO.ApiEntity;
using Hh.Mes.POJO.EnumEntitys;
using Hh.Mes.POJO.Response;
using Hh.Mes.Service.ApiService;
using Hh.Mes.Service.WebService.Wo;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

namespace Hh.Mes.Api.Controllers
{
    /// <summary>
    /// 上游系统接口
    /// ps:新增方法需要在SystemVariable 注册 APIList、EnumLog 新增枚举 ,方便接口日志定位查询
    /// </summary>
    [Route("api/[controller]/[action]")]
    [ApiController]
    public class UpstreamController : BaseController
    {
        private readonly UpstreamService service;

        //private readonly UserAuthSession sysUserApi;

        public UpstreamController(UpstreamService service,IHttpContextAccessor accessor)
        {
            this.service = service;
            context = accessor.HttpContext;

            //this.sysUserApi = base.GetUser(context);
            //this.service.sysUserApi = sysUserApi;
        }

        /// <summary>
        /// 物料主数据 MOM_HH_001
        /// http://127.0.0.1:10008/api/Upstream/Mes/V1/SendMaterial
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/SendMaterial")]
        public string SendMaterial(MaterialEntity requestData)
        {
            var result = service.SendMaterial(requestData) ;
            return Serialize(result);
        }

        /// <summary>
        /// 工艺路线 MOM_HH_002
        /// http://127.0.0.1:10008/api/Upstream/Mes/V1/SendProcessRoute
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/SendProcessRoute")]
        public string SendProcessRoute(MomProcessRouteHeadEntity requestData)
        {
            var result = service.SendProcessRoute(requestData) ;
            return Serialize(result);
        }

        /// <summary>
        /// 人员信息 MOM_HH_003
        /// http://127.0.0.1:10008/api/Upstream/Mes/V1/SendUser
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/SendUser")]
        public string SendUser(SysUserEntity requestData)
        {
            return Serialize(service.SendUser(requestData));
        }

        /// <summary>
        /// 供应商信息  MOM_HH_004
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/SendSupplier")]
        public string SendSupplier(SupplierEntity requestData)
        {
            return Serialize(service.SendSupplier(requestData));
        }

        /// <summary>
        /// 生产订单  MOM_HH_005
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/SendWorkOrder")]
        public string SendWorkOrder(MomWorkOrderHead requestData)
        {
            return Serialize(service.SendWorkOrder(requestData));
        }

        /// <summary>
        /// 工作日历
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/SendCalendar")]
        public string SendCalendar(CalendarEntity requestData)
        {
            return Serialize(service.SendCalendar(requestData));
        }

        /// <summary>
        /// 质量问题状态
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/SendCheck")]
        public string SendCheck(QualityFeedbackEntity requestData)
        {
            return Serialize(service.SendCheck(requestData));
        }

        /// <summary>
        /// 产线中控将工序执行信息反馈MOM
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/ProcessRouteUpMom")]
        public string ProcessRouteUpMom(ProcessRouteUpMomEntity routeUpMomEntity)
        {
            return Serialize(service.ProcessRouteUpMom(routeUpMomEntity));
        }

        /// <summary>
        /// ANDON报警
        /// </summary>
        [HttpPost]
        [ActionName("Mes/V1/AndonUpMom")]
        public string AndonUpMom(AndonUpMomEntity andonUpMomEntity)
        {
            return Serialize(service.AndonUpMom(andonUpMomEntity));
        }

        /// <summary>
        /// 获取MOM请求Token
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        public string GetMomToken()
        {
            return Serialize(service.GetMomToken());
        }


        /// <summary>
        /// http://127.0.0.1:10008/api/Upstream/Mes/V1/MaterialUpCict
        /// </summary>
        /// <returns></returns>
        [HttpGet]
        [ActionName("Mes/V1/MaterialUpCict")]
        public string MaterialUpCict()
        {
            return Serialize(service.MaterialUpCict());
        }
    }
}