using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web;
using System.Web.Http;
using VueWebApi.DLL.BLL;
using VueWebApi.Tools;
namespace VueWebApi.Controllers
{
[RoutePrefix(prefix: "api/AppProductionManagement")]
[ControllerGroup("App生产管理", "在线接口")]
[ChannelActionFilterAttributeApp]
public class AppProductionManagementController : ApiController
{
//定义全局信息返回变量
ToMessage mes = new ToMessage();
RedisHelper redis = new RedisHelper();
#region [生产开报工:开工(开始/报工)/外协(发料/收料)时条件判断及数据返回接口]
///
/// 生产开报工:开工(开始/报工)/外协(发料/收料)时条件判断及数据返回接口
///
/// 操作类型:自制(ZZ)/外协(WX)
/// 操作类型:外协发料标识(OUT)/外协收料标识(IN)
/// 扫描二维码信息
///
[Route(template: "MesOrderStepStart")]
[HttpGet]
public HttpResponseMessage MesOrderStepStart(string OperType, string orderstepqrcode, string SelectType = null)
{
mes = ProductionManagementBLL.MesOrderStepStart(OperType, SelectType, orderstepqrcode);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工:开工时获取设备下拉列表]
///
/// 生产开报工:开工时获取设备下拉列表
///
/// 扫描二维码信息
///
[Route(template: "MesOrderStepStartSelectEqp")]
[HttpGet]
public HttpResponseMessage MesOrderStepStartSelectEqp(string orderstepqrcode)
{
mes = ProductionManagementBLL.MesOrderStepStartSelectEqp(orderstepqrcode);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工:报工时获取生产班组下拉框]
///
/// 生产开报工:报工时获取生产班组下拉框
///
///
[Route(template: "MesOrderStepReportSelectUserGroup")]
[HttpGet]
public HttpResponseMessage MesOrderStepReportSelectUserGroup()
{
mes = ProductionManagementBLL.MesOrderStepReportSelectUserGroup();
return TJson.toJson(mes);
}
#endregion
#region[生产开报工:根据生产班组查找人员列表]
///
/// 生产开报工:根据生产班组查找人员列表
///
/// 班组编码
///
[Route(template: "MesOrderGroupSelectUser")]
[HttpGet]
public HttpResponseMessage MesOrderGroupSelectUser(string usergroupcode)
{
mes = ProductionManagementBLL.MesOrderGroupSelectUser(usergroupcode);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工:人员下拉列表]
///
/// 生产开报工:人员下拉列表
///
/// 人员编码
///
[Route(template: "MesOrderSelectUser")]
[HttpGet]
public HttpResponseMessage MesOrderSelectUser(string usercode = null)
{
mes = ProductionManagementBLL.MesOrderSelectUser(usercode);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工:发料/收料时获取外协下拉列表]
///
/// 生产开报工:发料/收料时获取外协下拉列表
///
/// 扫描二维码信息
///
[Route(template: "MesOrderStepSelectWX")]
[HttpGet]
public HttpResponseMessage MesOrderStepSelectWX(string orderstepqrcode)
{
mes = ProductionManagementBLL.MesOrderStepSelectWX(orderstepqrcode);
return TJson.toJson(mes);
}
#endregion
#region[生产报工:报工/外协收料 获取不良原因下拉列表]
///
/// 生产报工:报工/外协收料 获取不良原因下拉列表
///
/// 扫描二维码信息
///
[Route(template: "MesOrderStepSelectCause")]
[HttpGet]
public HttpResponseMessage MesOrderStepSelectCause(string orderstepqrcode)
{
mes = ProductionManagementBLL.MesOrderStepSelectCause(orderstepqrcode);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工,开工提交]
///
/// 生产开报工,开工提交
///
/// 开工提交数据
///
[Route(template: "SavaMesOrderStepStart")]
[HttpPost]
public HttpResponseMessage SavaMesOrderStepStart([FromBody] JObject obj)
{
string mesordercode = obj["mesordercode"].ToString(); //工单编号
string partcode = obj["partcode"].ToString(); //产品编码
string stepseq = obj["stepseq"].ToString(); //工序序号
string stepcode = obj["stepcode"].ToString(); //工序编码
string eqpcode = obj["eqpcode"].ToString(); //设备编码
string taskqty = obj["taskqty"].ToString(); //任务数量
string startqty = obj["startqty"].ToString(); //开工数量
var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //开工人员
mes = ProductionManagementBLL.SavaMesOrderStepStart(mesordercode, partcode, stepseq, stepcode, eqpcode, taskqty, startqty, username);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工,报工提交]
///
/// 生产开报工,报工提交
///
/// 报工提交数据
///
[Route(template: "SavaMesOrderStepReport")]
[HttpPost]
public HttpResponseMessage SavaMesOrderStepReport([FromBody] JObject obj)
{
string mesordercode = obj["mesordercode"].ToString(); //工单编号
string partcode = obj["partcode"].ToString(); //产品编码
string stepseq = obj["stepseq"].ToString(); //工序序号
string stepcode = obj["stepcode"].ToString(); //工序编码
string eqpcode = obj["eqpcode"].ToString(); //设备编码
string usergroupcode = obj["usergroupcode"].ToString(); //班组编码
string reportuser = obj["reportuser"].ToString(); //报工人员
string taskqty = obj["taskqty"].ToString(); //任务数量
string startqty = obj["startqty"].ToString(); //开工数量
string reportqty = obj["reportqty"].ToString(); //报工工数量
string ngqty = obj["ngqty"].ToString(); //不良数量
string badcode = obj["badcode"].ToString(); //不良原因编码
string remarks = obj["remarks"].ToString(); //备注
var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
mes = ProductionManagementBLL.SavaMesOrderStepReport(mesordercode, partcode, stepseq, stepcode, eqpcode, usergroupcode, reportuser, taskqty, startqty, reportqty, ngqty, badcode, remarks, username);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工,发料提交]
///
/// 生产开报工,发料提交
///
/// 发料提交数据
///
[Route(template: "SavaMesOrderStepOut")]
[HttpPost]
public HttpResponseMessage SavaMesOrderStepOut([FromBody] JObject obj)
{
string mesordercode = obj["mesordercode"].ToString(); //工单编号
string partcode = obj["partcode"].ToString(); //产品编码
string stepseq = obj["stepseq"].ToString(); //工序序号
string stepcode = obj["stepcode"].ToString(); //工序编码
string wxcode = obj["wxcode"].ToString(); //外协供应商编码
string outuser = obj["outuser"].ToString(); //发料人员
string taskqty = obj["taskqty"].ToString(); //任务数量
string fqty = obj["fqty"].ToString(); //发料数量
var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
mes = ProductionManagementBLL.SavaMesOrderStepOut(mesordercode, partcode, stepseq, stepcode, wxcode, outuser, taskqty, fqty, username);
return TJson.toJson(mes);
}
#endregion
#region[生产开报工,收料提交]
///
/// 生产开报工,收料提交
///
/// 收料提交数据
///
[Route(template: "SavaMesOrderStepIn")]
[HttpPost]
public HttpResponseMessage SavaMesOrderStepIn([FromBody] JObject obj)
{
string mesordercode = obj["mesordercode"].ToString(); //工单编号
string partcode = obj["partcode"].ToString(); //产品编码
string stepseq = obj["stepseq"].ToString(); //工序序号
string stepcode = obj["stepcode"].ToString(); //工序编码
string wxcode = obj["wxcode"].ToString(); //外协供应商编码
string inuser = obj["inuser"].ToString(); //收料人员
string taskqty = obj["taskqty"].ToString(); //任务数量
string sqty = obj["sqty"].ToString(); //收料数量
string ngqty = obj["ngqty"].ToString(); //不良数量
string badcode = obj["badcode"].ToString(); //不良原因编码
string remarks = obj["remarks"].ToString(); //备注
var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
mes = ProductionManagementBLL.SavaMesOrderStepIn(mesordercode, partcode, stepseq, stepcode, wxcode, inuser, taskqty, sqty, ngqty, badcode, remarks, username);
return TJson.toJson(mes);
}
#endregion
}
}