天津投入产出系统后端
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.

188 lines
8.3 KiB

1 year ago
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
{
1 year ago
public Response<List<OrderPlan_PaoMo>> GetPlanList(string state)
1 year ago
{
1 year ago
//state = ok
//state = nok
1 year ago
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;
}
1 year ago
[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;
}
1 year ago
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);
1 year ago
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);
1 year ago
1 year ago
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);
1 year ago
1 year ago
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);
1 year ago
1 year ago
}
else
{
var ResponseNOK = new Response();
ResponseNOK.Code = 400;
ResponseNOK.Message = "禁止重复操作!";
return Ok(ResponseNOK);
}
}
1 year ago
var Response = new Response();
return Ok(Response);
}
}
}