From a8f6a1bfb1c1dd39985ddeb8401c46cd9620e803 Mon Sep 17 00:00:00 2001
From: yxj <1qaz@123>
Date: 星期二, 19 七月 2022 10:16:45 +0800
Subject: [PATCH] 生产入库(源单:生产订单、生产汇报单)生成CLOUD单据时根据参数按组织区分是否审核单据;表头增加递入MainCustom、HCheckFlag;生成单据时回滚事务修改
---
CLOUDWEB/WebService1.asmx.cs | 274 ++++++++++++++++++++++++++++++++++--------------------
1 files changed, 174 insertions(+), 100 deletions(-)
diff --git a/CLOUDWEB/WebService1.asmx.cs b/CLOUDWEB/WebService1.asmx.cs
index 103dcdd..9d7fa1e 100644
--- a/CLOUDWEB/WebService1.asmx.cs
+++ b/CLOUDWEB/WebService1.asmx.cs
@@ -24917,7 +24917,6 @@
if (SaveProductInBill_ICMO_CLD(oMain, sHSourceType, oSystemParameterMain, ref sErrMsg))
{
//"淇濆瓨鎴愬姛锛�";
- sErrMsg = "淇濆瓨鎴愬姛锛�" + oMain.HBillNo;
return true;
}
else
@@ -24932,7 +24931,6 @@
if (SaveProductInBill_ICMOReport_CLD(oMain, sHSourceType, oSystemParameterMain, ref sErrMsg))
{
//"淇濆瓨鎴愬姛锛�";
- sErrMsg = "淇濆瓨鎴愬姛锛�" + oMain.HBillNo;
return true;
}
else
@@ -24957,7 +24955,32 @@
/// <returns></returns>
public bool SaveProductInBill_ICMO_CLD(Model.ClsKf_ProductInBillMain oMain, string sHSourceType, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
{
- SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); //寤虹珛涓�涓� 浜嬪姟锛�
+ //浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮�
+ if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
+ {
+ sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
+ return false;
+ }
+
+ //鑾峰彇CLOUD璐﹀彿瀵嗙爜
+ string sCLOUDUseName = Pub_Class.ClsPub.sCLOUDUseName;
+ string sCLOUDPsd = Pub_Class.ClsPub.sCLOUDPsd;
+ DataSet ds11 = get_SaveCLOUDUseNameandPsd(oMain.HInterID);
+ if (ds11 == null || ds11.Tables[0].Rows.Count == 0)
+ {
+ }
+ else
+ {
+ sCLOUDUseName = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserName"]);
+ sCLOUDPsd = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserPsd"]);
+ }
+
+ string HReturn;
+ ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
+ string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117
+ bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052);
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
try
{
//鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
@@ -24993,12 +25016,6 @@
//鏇存柊鍏宠仈鏁伴噺
oCn.RunProc("exec h_p_Sc_UpDateRelation_ICMOToProductIn_Add " + oMain.HInterID.ToString());
- if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳
- {
- //瀹℃牳鍗曟嵁
- oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120) where HInterID= " + oMain.HInterID.ToString());
- }
-
//鏍规嵁TMP琛� 杩斿洖 瀛愯〃淇℃伅
DataSet Ds;
Ds = oCn.RunProcReturn("exec h_p_Kf_GetProductInBill_ICMO_CLD_New " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "'", "h_p_Kf_GetProductInBill_ICMO_CLD_New");
@@ -25010,6 +25027,17 @@
}
else
{
+ string sCheckFlag = ""; //鏄惁瀹℃牳鏍囧織
+ string sJson_MainCustom = ""; //涓昏〃鑷畾涔夊瓧娈�
+ //鏍规嵁缁勭粐鑾峰彇鏄惁瀹℃牳鏍囧織锛岃繑鍥� 涓嶄负绌猴紝鑾峰彇瀵瑰簲缁勭粐 鏄惁瀹℃牳鏍囧織
+ sCheckFlag = Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HCheckFlag"]);
+ if (sCheckFlag != "")
+ {
+ oSystemParameterMain.Kf_ProductInBill_AutoCheck = sCheckFlag;
+ }
+
+ sJson_MainCustom = Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["MainCustom"]);
+
string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\"," +
"\"IsEntryBatchFill\":\"false\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\"," +
"\"Model\": { \"FBILLNO\":\"" + oMain.HBillNo + "\"," +
@@ -25028,6 +25056,7 @@
//\"FCurrId\":{\"FNumber\":\"\"},
//\"FEntrustInStockId\":\"0\",
//\"FScanBox\":\"\",
+ sJson_MainCustom +
"\"FEntity\": [ ";
string sJson_Entry = "";
for (int i = 0; i < Ds.Tables[1].Rows.Count; i++)
@@ -25145,31 +25174,7 @@
string sJson_End = " ] }}";
string sJson = sJson_Main + sJson_Entry + sJson_End;
- //浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮�
- if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
- {
- sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
- return false;
- }
-
- //鑾峰彇CLOUD璐﹀彿瀵嗙爜
- string sCLOUDUseName = Pub_Class.ClsPub.sCLOUDUseName;
- string sCLOUDPsd = Pub_Class.ClsPub.sCLOUDPsd;
- DataSet ds11 = get_SaveCLOUDUseNameandPsd(oMain.HInterID);
- if (ds11 == null || ds11.Tables[0].Rows.Count == 0)
- {
- }
- else
- {
- sCLOUDUseName = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserName"]);
- sCLOUDPsd = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserPsd"]);
- }
-
- //鐢熸垚 鍏ュ簱鍗�
- string HReturn;
- ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
- string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117
- bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052);
+ //鐢熸垚閲戣澏浜戝崟鎹�
if (bLogin)
{
var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
@@ -25178,22 +25183,8 @@
//鐢熸垚鍗曟嵁鍚庢洿鏂拌嚜瀹氫箟瀛楁
oCn.RunProc("exec h_p_Sc_UpDateSelfFildProductIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
- if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳
- {
- string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
- var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
- new object[] { "PRD_INSTOCK", sJson2 }); //鎻愪氦鍗曟嵁
+ HReturn = result.ToString();
- string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
- var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
- new object[] { "PRD_INSTOCK", sJson3 }); //瀹℃牳鍗曟嵁
-
- HReturn = result.ToString() + "," + result2.ToString() + "," + result3.ToString();
- }
- else
- {
- HReturn = result.ToString();
- }
if (HReturn.Contains("\"IsSuccess\":false") == true)
{
sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + HReturn + sJson;
@@ -25203,12 +25194,11 @@
else
{
oCn.Commit();
- return true;
}
}
else
{
- sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曞け璐ワ紒鐧诲綍澶辫触锛�";
+ sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
oCn.RollBack();
return false;
}
@@ -25220,6 +25210,52 @@
oCn.RollBack();
return false;
}
+
+ if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳
+ {
+ try
+ {
+ oCn.BeginTran();
+ //瀹℃牳WMS鍗曟嵁
+ oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120) where HInterID= " + oMain.HInterID.ToString());
+
+ //鎻愪氦銆佸鏍搁噾铦朵簯鍗曟嵁
+ HReturn = "";
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "PRD_INSTOCK", sJson2 }); //鎻愪氦鍗曟嵁
+
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "PRD_INSTOCK", sJson3 }); //瀹℃牳鍗曟嵁
+
+ HReturn = result2.ToString() + "," + result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曟垚鍔燂紝瀹℃牳鍗曟嵁澶辫触锛�" + HReturn;
+ oCn.RollBack();
+ return true;
+ }
+ else
+ {
+ sErrMsg = "鐢熸垚骞跺鏍哥敓浜у叆搴撳崟鎴愬姛锛佸崟鎹彿涓猴細" + oMain.HBillNo;
+ oCn.Commit();
+ return true;
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "瀹℃牳鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+ else
+ {
+ sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ return true;
+ }
}
/// <summary>
@@ -25230,7 +25266,32 @@
/// <returns></returns>
public bool SaveProductInBill_ICMOReport_CLD(Model.ClsKf_ProductInBillMain oMain, string sHSourceType, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
{
- SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); //寤虹珛涓�涓� 浜嬪姟锛�
+ //浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮�
+ if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
+ {
+ sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
+ return false;
+ }
+
+ //鑾峰彇CLOUD璐﹀彿瀵嗙爜
+ string sCLOUDUseName = Pub_Class.ClsPub.sCLOUDUseName;
+ string sCLOUDPsd = Pub_Class.ClsPub.sCLOUDPsd;
+ DataSet ds11 = get_SaveCLOUDUseNameandPsd(oMain.HInterID);
+ if (ds11 == null || ds11.Tables[0].Rows.Count == 0)
+ {
+ }
+ else
+ {
+ sCLOUDUseName = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserName"]);
+ sCLOUDPsd = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserPsd"]);
+ }
+
+ string HReturn;
+ ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
+ string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117
+ bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052);
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
try
{
//鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
@@ -25266,12 +25327,6 @@
//鏇存柊鍏宠仈鏁伴噺
oCn.RunProc("exec h_p_Sc_UpDateRelation_ICMOReportToProductIn_Add " + oMain.HInterID.ToString());
- if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳
- {
- //瀹℃牳鍗曟嵁
- oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120) where HInterID= " + oMain.HInterID.ToString());
- }
-
//鏍规嵁TMP琛� 杩斿洖 瀛愯〃淇℃伅
DataSet Ds;
Ds = oCn.RunProcReturn("exec h_p_Kf_GetProductInBill_ICMOReport_CLD_New " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "'", "h_p_Kf_GetProductInBill_ICMOReport_CLD_New");
@@ -25283,6 +25338,17 @@
}
else
{
+ string sCheckFlag = ""; //鏄惁瀹℃牳鏍囧織
+ string sJson_MainCustom = ""; //涓昏〃鑷畾涔夊瓧娈�
+ //鏍规嵁缁勭粐鑾峰彇鏄惁瀹℃牳鏍囧織锛岃繑鍥� 涓嶄负绌猴紝鑾峰彇瀵瑰簲缁勭粐 鏄惁瀹℃牳鏍囧織
+ sCheckFlag = Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HCheckFlag"]);
+ if(sCheckFlag!="")
+ {
+ oSystemParameterMain.Kf_ProductInBill_AutoCheck = sCheckFlag;
+ }
+
+ sJson_MainCustom = Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["MainCustom"]);
+
string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\"," +
"\"IsEntryBatchFill\":\"false\",\"ValidateFlag\":\"True\",\"NumberSearch\":\"True\",\"InterationFlags\":\"\"," +
"\"Model\": { \"FBILLNO\":\"" + oMain.HBillNo + "\"," +
@@ -25301,6 +25367,7 @@
//\"FCurrId\":{\"FNumber\":\"\"},
//\"FEntrustInStockId\":\"0\",
//\"FScanBox\":\"\",
+ sJson_MainCustom +
"\"FEntity\": [ ";
string sJson_Entry = "";
for (int i = 0; i < Ds.Tables[1].Rows.Count; i++)
@@ -25444,31 +25511,7 @@
string sJson_End = " ] }}";
string sJson = sJson_Main + sJson_Entry + sJson_End;
- //浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮�
- if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
- {
- sErrMsg = Pub_Class.ClsPub.sExeReturnInfo;
- return false;
- }
-
- //鑾峰彇CLOUD璐﹀彿瀵嗙爜
- string sCLOUDUseName = Pub_Class.ClsPub.sCLOUDUseName;
- string sCLOUDPsd = Pub_Class.ClsPub.sCLOUDPsd;
- DataSet ds11 = get_SaveCLOUDUseNameandPsd(oMain.HInterID);
- if (ds11 == null || ds11.Tables[0].Rows.Count == 0)
- {
- }
- else
- {
- sCLOUDUseName = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserName"]);
- sCLOUDPsd = DBUtility.ClsPub.isStrNull(ds11.Tables[0].Rows[0]["HCloudUserPsd"]);
- }
-
- //鐢熸垚 鍏ュ簱鍗�
- string HReturn;
- ApiClient client = new ApiClient(Pub_Class.ClsPub.sCLOUDUrl);
- string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117
- bool bLogin = client.Login(dbId, sCLOUDUseName, sCLOUDPsd, 2052);
+ //鐢熸垚閲戣澏浜戝崟鎹�
if (bLogin)
{
var result = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save",
@@ -25477,22 +25520,8 @@
//鐢熸垚鍗曟嵁鍚庢洿鏂拌嚜瀹氫箟瀛楁
oCn.RunProc("exec h_p_Sc_UpDateSelfFildProductIn '" + oMain.HBillNo + "','" + sHSourceType + "'");
- if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳
- {
- string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
- var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
- new object[] { "PRD_INSTOCK", sJson2 }); //鎻愪氦鍗曟嵁
+ HReturn = result.ToString();
- string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
- var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
- new object[] { "PRD_INSTOCK", sJson3 }); //瀹℃牳鍗曟嵁
-
- HReturn = result.ToString() + "," + result2.ToString() + "," + result3.ToString();
- }
- else
- {
- HReturn = result.ToString();
- }
if (HReturn.Contains("\"IsSuccess\":false") == true)
{
sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + HReturn + sJson;
@@ -25502,12 +25531,11 @@
else
{
oCn.Commit();
- return true;
}
}
else
{
- sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曞け璐ワ紒鐧诲綍澶辫触锛�";
+ sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
oCn.RollBack();
return false;
}
@@ -25519,6 +25547,52 @@
oCn.RollBack();
return false;
}
+
+ if (oSystemParameterMain.Kf_ProductInBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳
+ {
+ try
+ {
+ oCn.BeginTran();
+ //瀹℃牳WMS鍗曟嵁
+ oCn.RunProc("Update Kf_ICStockBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=convert(varchar(10),getdate(),120) where HInterID= " + oMain.HInterID.ToString());
+
+ //鎻愪氦銆佸鏍搁噾铦朵簯鍗曟嵁
+ HReturn = "";
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "PRD_INSTOCK", sJson2 }); //鎻愪氦鍗曟嵁
+
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "PRD_INSTOCK", sJson3 }); //瀹℃牳鍗曟嵁
+
+ HReturn = result2.ToString() + "," + result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曟垚鍔燂紝瀹℃牳鍗曟嵁澶辫触锛�" + HReturn;
+ oCn.RollBack();
+ return true;
+ }
+ else
+ {
+ sErrMsg = "鐢熸垚骞跺鏍哥敓浜у叆搴撳崟鎴愬姛锛佸崟鎹彿涓猴細" + oMain.HBillNo;
+ oCn.Commit();
+ return true;
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "瀹℃牳鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+ else
+ {
+ sErrMsg = "鐢熸垚鐢熶骇鍏ュ簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ return true;
+ }
}
#endregion
--
Gitblit v1.9.1