From 78af839e2e3dbe15283db12a816d54d31acb79c9 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期六, 13 九月 2025 22:15:45 +0800
Subject: [PATCH] 更新启用物料信息状态添加供应商过滤;新增送货物料信息物料id加组织过滤;条码档案数据信息处理;
---
WebAPI/Controllers/MaterialHandingController.cs | 155 ++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 146 insertions(+), 9 deletions(-)
diff --git a/WebAPI/Controllers/MaterialHandingController.cs b/WebAPI/Controllers/MaterialHandingController.cs
index 154228d..044dc29 100644
--- a/WebAPI/Controllers/MaterialHandingController.cs
+++ b/WebAPI/Controllers/MaterialHandingController.cs
@@ -273,12 +273,12 @@
#region 鐗╂枡鏍¢獙
[Route("MaterialHandingController/CheckMaterial")]
[HttpGet]
- public object CheckMaterial(string HMaterID, string user, int param,string OrganizationID)
+ public object CheckMaterial(string HMaterID, string user, int param,string OrganizationID,string SupID)
{
try
{
//ds1鑾峰彇鐨剆ql鍚庢湡璁板緱鏀瑰洖渚涘簲鍟嗭紝淇敼浜�->渚涘簲鍟�
- var ds1 = oCN.RunProcReturn("select * from h_v_Gy_UserMaterRelationEdit where 鐗╂枡浠g爜='" + HMaterID + "'" + "and 鍒涘缓浜�='" + user + "'", "h_v_Gy_UserMaterRelationEdit");
+ var ds1 = oCN.RunProcReturn("select * from h_v_Gy_UserMaterRelationEdit where 鐗╂枡浠g爜='" + HMaterID + "'" + "and HSupID ='" + SupID + "'", "h_v_Gy_UserMaterRelationEdit");
var ds = oCN.RunProcReturn("select * from Gy_Material where HNumber='" + HMaterID+ "'"+ " and HUSEORGID="+"'"+ OrganizationID+"'", "Gy_Material");
if(ds.Tables[0].Rows.Count == 0)
{
@@ -299,7 +299,8 @@
else
{
oCN.BeginTran();
- string sqlUpd = "UPDATE Gy_UserMaterRelation set HUseFlag=0 where HItemID=" + ds1.Tables[0].Rows[0]["HItemID"];
+ string sqlUpd = "UPDATE a set a.HUseFlag=0 from Gy_UserMaterRelation a with(nolock) left join Gy_Material m with(nolock) " +
+ "on a.HMaterID = m.HItemID where a.HSupID=" + SupID + " and m.HNumber = '" + HMaterID + "'";
oCN.RunProc(sqlUpd);
oCN.Commit();
@@ -374,19 +375,25 @@
{
try
{
+ //var _value = msg["msg"].ToString();
+ //string msg3 = _value.ToString();
+ ////string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+ ////string msg1 = sArray[0].ToString();
+ ////string msg2 = sArray[1].ToString();
+ //string msg2 = msg3.ToString();
+
var _value = msg["msg"].ToString();
- string msg3 = _value.ToString();
- //string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
- //string msg1 = sArray[0].ToString();
- //string msg2 = sArray[1].ToString();
- string msg2 = msg3.ToString();
+ string msg1 = _value.ToString();
+ string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+ string msg2 = sArray[0].ToString();//
+ string OrganizationID = sArray[1].ToString();//
//鍙嶅簭鍒楀寲
msg2 = "[" + msg2.ToString() + "]";
List<Model.Cls_MaterialHandingModel> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.Cls_MaterialHandingModel>>(msg2);
- var ds = oCN.RunProcReturn("select * from Gy_Material where HNumber='" + list[0].HMaterNumber + "'", "Gy_Material");
+ var ds = oCN.RunProcReturn("select * from Gy_Material where HNumber='" + list[0].HMaterNumber + "' and HUSEORGID = " + OrganizationID, "Gy_Material");
int HItemID =Convert.ToInt32(list[0].HItemID);
string HMaterNumber = list[0].HMaterNumber;
@@ -597,7 +604,137 @@
}
//#endregion
+ #region 涓婚〉闈㈠惎鐢�
+ [Route("MaterialHandingController/CheckMaterialCount")]
+ [HttpGet]
+ public object CheckMaterialCount(string HMaterID, string HSupID, int HInterID)
+ {
+ try
+ {
+ //妫�鏌ュ悓渚涘簲鍟嗕笅鏄惁鏈夊叾浠栫墿鏂�
+ string sql = "SELECT COUNT(*) as Count FROM Gy_UserMaterRelation " +
+ "WHERE HMaterID = '" + HMaterID + "' AND HSupID = " + HSupID +
+ " AND HItemID != " + HInterID;
+ var ds = oCN.RunProcReturn(sql, "Gy_UserMaterRelation");
+ int count = Convert.ToInt32(ds.Tables[0].Rows[0]["Count"]);
+ objJsonResult.code = "1";
+ objJsonResult.count = count;
+ objJsonResult.Message = "鏌ヨ鎴愬姛";
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏌ヨ澶辫触: " + e.Message;
+ return objJsonResult;
+ }
+ }
+
+ [Route("MaterialHandingController/OpenMaterial")]
+ [HttpGet]
+ public object OpenMaterial(int HInterID, int IsUse, string CurUserName, string HMaterID, string HSupID, int disableOthers)
+ {
+ try
+ {
+ var ds = oCN.RunProcReturn("SELECT * FROM Gy_UserMaterRelation WHERE HItemID=" + HInterID, "Gy_UserMaterRelation");
+
+ if (ds.Tables[0].Rows.Count == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+ return objJsonResult;
+ }
+
+ int currentUseFlag = Convert.ToInt32(ds.Tables[0].Rows[0]["HUseFlag"]);
+
+ // 妫�鏌ユ槸鍚﹀凡鍚敤
+ if (currentUseFlag == 1)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁宸插惎鐢�!涓嶈兘鍐嶆鍚敤锛�";
+ return objJsonResult;
+ }
+
+ oCN.BeginTran();
+
+ // 濡傛灉鐢ㄦ埛閫夋嫨绂佺敤
+ if (disableOthers == 1)
+ {
+ string disableSql = "UPDATE Gy_UserMaterRelation SET HUseFlag=0 " +
+ "WHERE HMaterID='" + HMaterID + "' AND HSupID=" + HSupID +
+ " AND HItemID!=" + HInterID;
+ oCN.RunProc(disableSql);
+ }
+
+ // 鍚敤鍓嶆帶鍒�
+ string sql1 = "EXEC h_p_Gy_MaterPrice_BeforeStopCtrl " + HInterID + ",'" + CurUserName + "'";
+ ds = oCN.RunProcReturn(sql1, "h_p_Gy_MaterPrice_BeforeStopCtrl");
+
+ if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍚敤澶辫触!鍘熷洜:鍚敤鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+ oCN.RollBack();
+ return objJsonResult;
+ }
+
+ if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍚敤澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
+ oCN.RollBack();
+ return objJsonResult;
+ }
+
+ // 鍚敤褰撳墠璁板綍
+ oCN.RunProc("UPDATE Gy_UserMaterRelation SET HUpDater='" + CurUserName +
+ "', HUpDateDate=GETDATE(), HUseFlag=1 WHERE HItemID=" + HInterID);
+
+ // 鍚敤鍚庢帶鍒�
+ string sql2 = "EXEC h_p_Gy_MaterPrice_AfterStopCtrl " + HInterID + ",'" + CurUserName + "'";
+ ds = oCN.RunProcReturn(sql2, "h_p_Gy_MaterPrice_AfterStopCtrl");
+
+ if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍚敤澶辫触!鍘熷洜:鍚敤鍚庡垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+ oCN.RollBack();
+ return objJsonResult;
+ }
+
+ if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍚敤澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString();
+ oCN.RollBack();
+ return objJsonResult;
+ }
+
+ oCN.Commit();
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鍚敤鎴愬姛";
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ oCN.RollBack();
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍚敤澶辫触!" + e.Message;
+ return objJsonResult;
+ }
+ }
+ #endregion
}
}
\ No newline at end of file
--
Gitblit v1.9.1