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/BasicSetting")]
[ControllerGroup("生产管理", "在线接口")]
public class ProductionManagementController : ApiController
{
//定义全局信息返回变量
ToMessage mes = new ToMessage();
RedisHelper redis = new RedisHelper();
#region[ERP订单查询]
///
/// ERP订单查询
///
/// 订单状态码
/// 订单编号
/// 产品编码
/// 产品名称
/// 产品规格
/// 交付时间
/// 创建人员
/// 创建时间
/// 页码
/// 每页显示条数
/// 排序字段
/// 排序规则
///
[Route(template: "ErpOrderSearch")]
[HttpGet]
public HttpResponseMessage ErpOrderSearch(string erporderstus = null, string erpordercode = null, string partcode = null, string partname = null, string partspec = null,string paydate=null,string creatuser=null,string createdate=null, int page = 0, int rows = 0, string prop = null, string order = null)
{
string paydatestartdate = ""; //交付开始时间
string paydateenddate = ""; //交付结束时间
string createstartdate = ""; //操作开始时间
string createenddate = ""; //操作结束时间
if (paydate != "" && paydate != null)
{
paydatestartdate = paydate.Split('~')[0].ToString();
paydateenddate = paydate.Split('~')[1].ToString();
}
if (createdate != "" && createdate != null)
{
createstartdate = paydate.Split('~')[0].ToString();
createenddate = paydate.Split('~')[1].ToString();
}
int startNum = rows * (page - 1) + 1; //起始记录rowNum
int endNum = rows * page; //结束记录 rowNum
mes = ProductionManagementBLL.ErpOrderSearch(erporderstus, erpordercode, partcode, partname, partspec, startNum, paydatestartdate, paydateenddate, creatuser, createstartdate, createenddate, endNum, prop, order);
return TJson.toJson(mes);
}
#endregion
#region[ERP订单下达]
///
/// ERP订单下达
///
/// 提交数据
///
[Route(template: "MarkSaveErpOrder")]
[HttpPost]
public HttpResponseMessage MarkSaveErpOrder([FromBody] JObject obj)
{
string erporderstus = obj["erporderstus"].ToString(); //订单状态码
string erpordercode = obj["erpordercode"].ToString(); //订单编号
string partcode = obj["partcode"].ToString(); //产品编码
string wkshopcode = obj["wkshopcode"].ToString(); //车间编码
string warehousecode = obj["warehousecode"].ToString(); //仓库编码
string erpqty = obj["erpqty"].ToString(); //订单数量
string markqty = obj["markqty"].ToString(); //下单数量
string ordernum = obj["ordernum"].ToString(); //下单单数
string relse_qty = obj["relse_qty"].ToString(); //已下单数量
var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
mes = ProductionManagementBLL.MarkSaveErpOrder(erporderstus, erpordercode, partcode, wkshopcode, warehousecode, erpqty, markqty, ordernum, relse_qty,username);
return TJson.toJson(mes);
}
#endregion
#region[ERP订单关闭]
///
/// ERP订单关闭
///
/// 订单号
///
[Route(template: "ClosedErpOrder")]
[HttpPost]
public HttpResponseMessage ClosedErpOrder(string erpordercode)
{
//var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
var username = "Admin";
mes = ProductionManagementBLL.ClosedErpOrder(erpordercode, username);
return TJson.toJson(mes);
}
#endregion
#region[MES工单查询]
///
/// MES工单查询
///
/// 工单状态码
/// 工单编号
/// 产品编码
/// 产品名称
/// 产品规格
/// 创建人员
/// 创建时间
/// 页码
/// 每页显示条数
/// 排序字段
/// 排序规则
///
[Route(template: "MesOrderSearch")]
[HttpGet]
public HttpResponseMessage MesOrderSearch(string mesorderstus = null, string mesordercode = null, string partcode = null, string partname = null, string partspec = null, string creatuser = null, string createdate = null, int page = 0, int rows = 0, string prop = null, string order = null)
{
int startNum = rows * (page - 1) + 1; //起始记录rowNum
int endNum = rows * page; //结束记录 rowNum
mes = ProductionManagementBLL.MesOrderSearch(mesorderstus, mesordercode, partcode, partname, partspec, startNum, creatuser, createdate, endNum, prop, order);
return TJson.toJson(mes);
}
#endregion
}
}