You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
187 lines
8.3 KiB
187 lines
8.3 KiB
using QMAPP.BLL.Sys;
|
|
using QMAPP.DAL.Sys;
|
|
using QMAPP.Entity.Sys;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Net;
|
|
using System.Net.Http;
|
|
using System.Threading.Tasks;
|
|
using System.Web.Http;
|
|
using WebAPI.App_Start;
|
|
using WebAPI.Models;
|
|
|
|
namespace WebAPI.Controllers
|
|
{
|
|
|
|
public class InventoryController : ApiController
|
|
{
|
|
public Response<List<OrderPlan_PaoMo>> GetPlanList(string state)
|
|
{
|
|
//state = ok
|
|
//state = nok
|
|
var result = new Response<List<OrderPlan_PaoMo>>();
|
|
|
|
List<OrderPlan_PaoMo> List_plan = new List<OrderPlan_PaoMo>();
|
|
|
|
var sqlScript = "";
|
|
|
|
sqlScript = $"select top 10 * from T_PP_ORDERPLAN_PAOMO order by PLAN_DATE desc";
|
|
|
|
DataSet dataSet = SqlHelper.ExecuteDataset(Config.maindbConnectionString, CommandType.Text, sqlScript);
|
|
|
|
if (dataSet.Tables[0].Rows.Count > 0)
|
|
{
|
|
foreach (DataRow row in dataSet.Tables[0].Rows)
|
|
{
|
|
OrderPlan_PaoMo OrderPlan = new OrderPlan_PaoMo();
|
|
OrderPlan.PID = row["PID"].ToString();
|
|
OrderPlan.PLAN_NO = row["PLAN_NO"].ToString();
|
|
OrderPlan.PLAN_SEQ = row["PLAN_SEQ"].ToString();
|
|
OrderPlan.PLAN_STATE = row["PLAN_STATE"].ToString();
|
|
OrderPlan.MATERIAL_CODE = row["MATERIAL_CODE"].ToString();
|
|
OrderPlan.PBOM_CODE = row["PBOM_CODE"].ToString();
|
|
OrderPlan.ROUTE_CODE = row["ROUTE_CODE"].ToString();
|
|
OrderPlan.QTY = row["QTY"].ToString();
|
|
OrderPlan.COMPLETE_QTY = row["COMPLETE_QTY"].ToString();
|
|
OrderPlan.PLAN_DATE = row["PLAN_DATE"].ToString();
|
|
OrderPlan.SHIFT_CODE = row["SHIFT_CODE"].ToString();
|
|
|
|
List_plan.Add(OrderPlan);
|
|
}
|
|
|
|
result.Result = List_plan;
|
|
}
|
|
else
|
|
{
|
|
result.Code = 201;
|
|
result.Message = "用户信息不存在";
|
|
}
|
|
|
|
return result;
|
|
}
|
|
[HttpGet]
|
|
public Response<List<DefectDict>> GetDefectDictList()
|
|
{
|
|
//state = ok
|
|
//state = nok
|
|
var result = new Response<List<DefectDict>>();
|
|
|
|
List<DefectDict> List_plan = new List<DefectDict>();
|
|
|
|
var sqlScript = "";
|
|
|
|
sqlScript = $"select * from T_AW_MENDRECORDERERP where TYPE_CODE = 'BC316_ASSLINE' order by MFGCODE ";
|
|
|
|
DataSet dataSet = SqlHelper.ExecuteDataset(Config.maindbConnectionString, CommandType.Text, sqlScript);
|
|
|
|
if (dataSet.Tables[0].Rows.Count > 0)
|
|
{
|
|
foreach (DataRow row in dataSet.Tables[0].Rows)
|
|
{
|
|
DefectDict OrderPlan = new DefectDict();
|
|
OrderPlan.PID = row["PID"].ToString();
|
|
OrderPlan.MFGCODETYPE = row["MFGCODETYPE"].ToString();
|
|
OrderPlan.MFGCODETYPENAME = row["MFGCODETYPENAME"].ToString();
|
|
OrderPlan.TYPE_CODE = row["TYPE_CODE"].ToString();
|
|
OrderPlan.MFGCODE = row["MFGCODE"].ToString();
|
|
OrderPlan.MFGNAME = row["MFGNAME"].ToString();
|
|
|
|
List_plan.Add(OrderPlan);
|
|
}
|
|
|
|
result.Result = List_plan;
|
|
}
|
|
else
|
|
{
|
|
result.Code = 201;
|
|
result.Message = "用户信息不存在";
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
public async Task<IHttpActionResult> Insert()
|
|
{
|
|
var request = await this.Request.Content.ReadAsStringAsync();
|
|
|
|
var requeststr = request.Replace("\r", "").Replace("\n", "");
|
|
|
|
var resObj = JsonHelper.Instance.JsonToObj<Inventory>(requeststr);
|
|
|
|
if (resObj.State == "2")
|
|
{
|
|
var sql = $"select * from T_PA_InOutPut_InventoryLog where ProductCode = '{resObj.ProductCode}' and State = '1'";
|
|
DataSet dataSet = SqlHelper.ExecuteDataset(Config.maindbConnectionString, CommandType.Text, sql);
|
|
if (dataSet.Tables[0].Rows.Count > 0)
|
|
{
|
|
var sql2 = $"update T_PA_InOutPut_Inventory set State = '2' ,UpdateUser='{resObj.User}',UpdateDate='{DateTime.Now}'where PID = (SELECT TOP 1 PID FROM T_PA_InOutPut_Inventory WHERE ProductCode = '{resObj.ProductCode}' ORDER BY UpdateDate DESC) ";
|
|
SqlData.InsertWare(sql2);
|
|
|
|
var sql_log = $"INSERT INTO [dbo].[T_PA_InOutPut_InventoryLog] ([PID], [ProductCode], [Type], [State], [CreateUser], [CreateDate]) VALUES " +
|
|
$"(NEWID(), '{resObj.ProductCode}', '1', '2', '{resObj.User}', '{DateTime.Now}');";
|
|
SqlData.InsertWare(sql_log);
|
|
}
|
|
else
|
|
{
|
|
var ResponseNOK = new Response();
|
|
ResponseNOK.Code = 400;
|
|
ResponseNOK.Message = "当前条码未进行上悬链操作,禁止下悬链!";
|
|
return Ok(ResponseNOK);
|
|
}
|
|
}
|
|
else if (resObj.State == "1")
|
|
{
|
|
var sql = $"select * from T_PA_InOutPut_InventoryLog where ProductCode = '{resObj.ProductCode}' and State = '1'";
|
|
DataSet dataSet = SqlHelper.ExecuteDataset(Config.maindbConnectionString, CommandType.Text, sql);
|
|
if (dataSet.Tables[0].Rows.Count <= 0)
|
|
{
|
|
var sql2 = $"INSERT INTO [dbo].[T_PA_InOutPut_Inventory] ([PID], [ProductCode], [Type], [State], [CreateUser], [CreateDate], [UpdateUser], [UpdateDate], [Remark1], [Remark2], [Remark3], [PlanID], [MFGNAME]) VALUES " +
|
|
$"(NEWID(), '{resObj.ProductCode}', '1', '1', '{resObj.User}', '{DateTime.Now}', '{resObj.User}', '{DateTime.Now}', NULL, NULL, NULL, '{resObj.PlanID}', NULL);";
|
|
SqlData.InsertWare(sql2);
|
|
|
|
var sql_log = $"INSERT INTO [dbo].[T_PA_InOutPut_InventoryLog] ([PID], [ProductCode], [Type], [State], [CreateUser], [CreateDate]) VALUES " +
|
|
$"(NEWID(), '{resObj.ProductCode}', '1', '1', '{resObj.User}', '{DateTime.Now}');";
|
|
SqlData.InsertWare(sql_log);
|
|
}
|
|
else
|
|
{
|
|
var ResponseNOK = new Response();
|
|
ResponseNOK.Code = 400;
|
|
ResponseNOK.Message = "零件已在悬链上,禁止重复操作!";
|
|
return Ok(ResponseNOK);
|
|
}
|
|
}
|
|
else if (resObj.State == "3" || resObj.State == "4")
|
|
{
|
|
var sql = $"select * from T_PA_InOutPut_InventoryLog where ProductCode = '{resObj.ProductCode}' and State in ('3','4')";
|
|
DataSet dataSet = SqlHelper.ExecuteDataset(Config.maindbConnectionString, CommandType.Text, sql);
|
|
if (dataSet.Tables[0].Rows.Count <= 0)
|
|
{
|
|
var sql2 = $"INSERT INTO [dbo].[T_PA_InOutPut_Inventory] ([PID], [ProductCode], [Type], [State], [CreateUser], [CreateDate], [UpdateUser], [UpdateDate], [Remark1], [Remark2], [Remark3], [PlanID], [MFGNAME]) VALUES " +
|
|
$"(NEWID(), '{resObj.ProductCode}', '{resObj.Type}', '{resObj.State}', '{resObj.User}', '{DateTime.Now}', '{resObj.User}', '{DateTime.Now}', NULL, NULL, NULL, '{resObj.PlanID}', '{resObj.MFGNAME}');";
|
|
SqlData.InsertWare(sql2);
|
|
|
|
var sql_log = $"INSERT INTO [dbo].[T_PA_InOutPut_InventoryLog] ([PID], [ProductCode], [Type], [State], [CreateUser], [CreateDate]) VALUES " +
|
|
$"(NEWID(), '{resObj.ProductCode}', '{resObj.Type}', '{resObj.State}', '{resObj.User}', '{DateTime.Now}');";
|
|
SqlData.InsertWare(sql_log);
|
|
|
|
}
|
|
else
|
|
{
|
|
var ResponseNOK = new Response();
|
|
ResponseNOK.Code = 400;
|
|
ResponseNOK.Message = "禁止重复操作!";
|
|
return Ok(ResponseNOK);
|
|
}
|
|
}
|
|
|
|
var Response = new Response();
|
|
|
|
return Ok(Response);
|
|
}
|
|
|
|
|
|
}
|
|
}
|
|
|