using MES.Service.DB;
|
using MES.Service.Dto.service;
|
using MES.Service.util;
|
using Newtonsoft.Json;
|
using SqlSugar;
|
using System.Data;
|
|
namespace MES.Service.service.QC
|
{
|
public class RetMatService
|
{
|
public List<dynamic> GetAllDocs()
|
{
|
var db = SqlSugarHelper.GetInstance();
|
|
string sql = @"
|
SELECT THL_NO
|
FROM MES_ITEM_THL
|
-- WHERE JY_BS = 0 AND THL012 = 1
|
";
|
|
var table = db.Ado.GetDataTable(sql);
|
return table.ToDynamic();
|
}
|
|
public List<dynamic> GetHeader(string docNo)
|
{
|
var db = SqlSugarHelper.GetInstance();
|
|
string sql = @"
|
SELECT
|
a.THL001 AS moNo,
|
a.THL004 AS type,
|
s.ITEM_NO AS productCode,
|
d.DEPARTMENTNAME AS deptName,
|
TO_CHAR(a.THL011, 'yyyy-mm-dd hh24:mi:ss') AS createTime
|
FROM MES_ITEM_THL a
|
LEFT JOIN MES_ITEMS s ON a.ITEM_ID = s.ID
|
LEFT JOIN WOMDAA a0 ON a.THL001 = a0.DAA001
|
LEFT JOIN SYS_DEPARTMENT d ON a0.daa013 = d.ID
|
WHERE a.THL_NO = :docNo
|
";
|
|
var table = db.Ado.GetDataTable(sql, new SugarParameter("docNo", docNo));
|
return table.ToDynamic();
|
}
|
|
public List<dynamic> GetDetailList(string docNo)
|
{
|
var db = SqlSugarHelper.GetInstance();
|
|
string sql = @"
|
SELECT
|
s.ITEM_NO AS material,
|
s.ITEM_MODEL AS spec,
|
a.THLD005 AS qty,
|
a.THLD014 AS reason,
|
s.ID AS item_id
|
FROM MES_ITEM_THL_DETAIL a
|
LEFT JOIN MES_ITEM_THL b ON a.THLMID = b.ID
|
LEFT JOIN MES_ITEMS s ON a.ITEM_ID = s.ID
|
WHERE b.THL_NO = :docNo
|
";
|
|
return db.Ado.GetDataTable(sql, new SugarParameter("docNo", docNo)).ToDynamic();
|
}
|
|
public void UpdateHeader(string docNo, string user)
|
{
|
var db = SqlSugarHelper.GetInstance();
|
|
string sql = @"
|
UPDATE MES_ITEM_THL
|
SET JY_BS = 1,
|
JY_USER = :user,
|
JY_TIME = SYSDATE
|
WHERE THL_NO = :docNo
|
";
|
|
db.Ado.ExecuteCommand(sql,
|
new SugarParameter("docNo", docNo),
|
new SugarParameter("user", user)
|
);
|
}
|
|
/* public void SaveReviewItem(string docNo, string itemNo, string reason)
|
{
|
var db = SqlSugarHelper.GetInstance();
|
|
string sql = @"
|
UPDATE MES_ITEM_THL_DETAIL
|
SET THLD014 = :reason
|
WHERE THLMID = (
|
SELECT ID FROM MES_ITEM_THL WHERE THL_NO = :docNo
|
)
|
AND ITEM_ID = (
|
SELECT ID FROM MES_ITEMS WHERE ITEM_NO = :itemNo
|
)
|
";
|
|
db.Ado.ExecuteCommand(sql,
|
new SugarParameter("docNo", docNo),
|
new SugarParameter("itemNo", itemNo),
|
new SugarParameter("reason", reason)
|
);
|
}*/
|
|
public void SaveReview(string docNo, string user, List<ReviewItem> items)
|
{
|
var db = SqlSugarHelper.GetInstance();
|
|
string json = JsonConvert.SerializeObject(items); // 序列化为 JSON 字符串
|
|
|
|
foreach (ReviewItem item in items)
|
{
|
var parameters = new List<SugarParameter>
|
{
|
new SugarParameter("pi_NO", docNo, System.Data.DbType.String),
|
new SugarParameter("pi_user", user, System.Data.DbType.String),
|
new SugarParameter("pi_item_ID", item.ItemId, System.Data.DbType.Decimal),
|
new SugarParameter("pi_reason", item.Reason, System.Data.DbType.String)
|
};
|
|
|
db.Ado.UseStoredProcedure()
|
.ExecuteCommand("PRC_RET_MAT_AUDIT_ALL", parameters);
|
}
|
|
|
}
|
|
}
|
}
|