From 8614ad923e90849fbdb8f329e957de0b9388c59c Mon Sep 17 00:00:00 2001
From: yxj <yxj@hz-kingdee.com>
Date: 星期五, 11 七月 2025 16:36:50 +0800
Subject: [PATCH] 校验单据扫码模块,增加免扫物料条码上传功能
---
DLL/Pub_Class.dll | 0
CLOUDWEB/WebService1.asmx.cs | 1101 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--
2 files changed, 1,053 insertions(+), 48 deletions(-)
diff --git a/CLOUDWEB/WebService1.asmx.cs b/CLOUDWEB/WebService1.asmx.cs
index 311c4d4..243f281 100644
--- a/CLOUDWEB/WebService1.asmx.cs
+++ b/CLOUDWEB/WebService1.asmx.cs
@@ -12672,11 +12672,22 @@
}
else if (oSystemParameter.omodel.Kf_MoveStockBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_MoveStockBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_MoveStockBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_MoveStockBillCheck_SourceBarCodeCtl == "Y")
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SaveMoveStockBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -12696,8 +12707,10 @@
}
else if (oSystemParameter.omodel.Kf_MoveStockBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_MoveStockBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_MoveStockBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_MoveStockBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -12935,6 +12948,112 @@
return false;
}
}
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐩存帴璋冩嫧鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ [WebMethod]
+ private bool set_SaveMoveStockBill_CLD_BillCheck_Verify(Model.ClsKf_MoveStockBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_MoveStockBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_MoveStockBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_MoveStockBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛�" + DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_MoveStockBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "STK_TransferDirect", sJson2 });
+ //瀹℃牳鍗曟嵁
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "STK_TransferDirect", sJson3 });
+
+ HReturn = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳鐩存帴璋冩嫧鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍¢獙瀹℃牳鐩存帴璋冩嫧鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐩存帴璋冩嫧鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍¢獙瀹℃牳鐩存帴璋冩嫧鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐩存帴璋冩嫧鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
}
}
catch (Exception e)
@@ -19987,10 +20106,12 @@
}
else if (oSystemParameter.omodel.Kf_SellOutBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_SellOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
{
- if (set_SaveSellOutBill_CLD_BillCheck_Verify(oMain, ref sErrMsg) == true)
+ if (set_SaveSellOutBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
{
//涓婁紶鎴愬姛
return true;
@@ -20020,8 +20141,10 @@
}
else if (oSystemParameter.omodel.Kf_SellOutBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_SellOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -20268,11 +20391,11 @@
}
//CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- private bool set_SaveSellOutBill_CLD_BillCheck_Verify(Model.ClsKf_SellOutBillMain oMain, ref string sErrMsg)
+ private bool set_SaveSellOutBill_CLD_BillCheck_Verify(Model.ClsKf_SellOutBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
{
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
//涓婁紶鍓嶅垽鏂�
- DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_SellOutBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "'", "h_p_WMS_BeforeUpload_SellOutBillCheck_Verify");
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_SellOutBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_SellOutBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_SellOutBillCheck_Verify");
if (Ds == null || Ds.Tables[0].Rows.Count == 0)
{
sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
@@ -20290,8 +20413,8 @@
try
{
oCn.BeginTran();
- //鍐欏叆鏉$爜鍑哄叆搴撴牎楠岃〃
- oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "'");
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_SellOutBillCheck_AutoBarCode + "'");
//浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮�
if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
@@ -23649,11 +23772,23 @@
}
else if (oSystemParameter.omodel.Kf_MateOutBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_MateOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_MateOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_MateOutBillCheck_SourceBarCodeCtl == "Y"
+ )
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SaveMateOutBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -23673,8 +23808,10 @@
}
else if (oSystemParameter.omodel.Kf_MateOutBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_MateOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_MateOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_MateOutBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -23910,6 +24047,111 @@
return false;
}
}
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇棰嗘枡鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ private bool set_SaveMateOutBill_CLD_BillCheck_Verify(Model.ClsKf_MateOutBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_MateOutBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_MateOutBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_MateOutBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_MateOutBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "PRD_PickMtrl", sJson2 });
+ //瀹℃牳鍗曟嵁
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "PRD_PickMtrl", sJson3 });
+
+ HReturn = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇棰嗘枡鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍稿鏍¢獙瀹℃牳鐢熶骇棰嗘枡鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇棰嗘枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍稿鏍¢獙瀹℃牳鐢熶骇棰嗘枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇棰嗘枡鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
}
}
catch (Exception e)
@@ -24515,11 +24757,22 @@
}
else if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_SourceBarCodeCtl == "Y")
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SaveMateReplenishOutBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -24539,8 +24792,10 @@
}
else if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -24786,6 +25041,111 @@
}
}
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ private bool set_SaveMateReplenishOutBill_CLD_BillCheck_Verify(Model.ClsKf_MateReplenishOutBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_MateReplenishOutBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_MateReplenishOutBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_MateReplenishOutBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_MateReplenishOutBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "PRD_FeedMtrl", sJson2 });
+ //瀹℃牳鍗曟嵁
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "PRD_FeedMtrl", sJson3 });
+
+ HReturn = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇琛ユ枡鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍¢獙瀹℃牳鐢熶骇琛ユ枡鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇琛ユ枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍¢獙瀹℃牳鐢熶骇琛ユ枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇琛ユ枡鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇琛ユ枡鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+
//WMS 鍘熷崟鎹潪鎵爜鐢熸垚 鍙敓鎴怶MS鍗曟嵁
private bool set_SaveMateReplenishOutBill_WMS_BillCheck(Model.ClsKf_MateReplenishOutBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
{
@@ -24849,11 +25209,22 @@
}
else if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl == "Y")
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SaveEntrustReplenishOutBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -24873,8 +25244,10 @@
}
else if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -25101,6 +25474,111 @@
else
{
sErrMsg = "鏍¢獙瀹℃牳濮斿琛ユ枡鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
+ }
+ }
+
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ private bool set_SaveEntrustReplenishOutBill_CLD_BillCheck_Verify(Model.ClsKf_EntrustReplenishOutBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_EntrustReplenishOutBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_EntrustReplenishOutBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_EntrustReplenishOutBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_EntrustReplenishOutBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "SUB_FEEDMTRL", sJson2 });
+ //瀹℃牳鍗曟嵁
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "SUB_FEEDMTRL", sJson3 });
+
+ HReturn = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳濮斿琛ユ枡鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍¢獙瀹℃牳濮斿琛ユ枡鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳濮斿琛ユ枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍¢獙瀹℃牳濮斿琛ユ枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳濮斿琛ユ枡鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳濮斿琛ユ枡鍗曞け璐ワ紒" + e.Message;
oCn.RollBack();
return false;
}
@@ -27402,11 +27880,22 @@
}
else if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl == "Y")
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SaveEntrustOutBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -27426,8 +27915,10 @@
}
else if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -27654,6 +28145,111 @@
else
{
sErrMsg = "鏍¢獙瀹℃牳濮斿棰嗘枡鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
+ }
+ }
+
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ private bool set_SaveEntrustOutBill_CLD_BillCheck_Verify(Model.ClsKf_EntrustOutBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_EntrustOutBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_EntrustOutBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_EntrustOutBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_EntrustOutBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "SUB_PickMtrl", sJson2 });
+ //瀹℃牳鍗曟嵁
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "SUB_PickMtrl", sJson3 });
+
+ HReturn = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳濮斿棰嗘枡鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍¢獙瀹℃牳濮斿棰嗘枡鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳濮斿棰嗘枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍¢獙瀹℃牳濮斿棰嗘枡鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳濮斿棰嗘枡鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳濮斿棰嗘枡鍗曞け璐ワ紒" + e.Message;
oCn.RollBack();
return false;
}
@@ -29834,11 +30430,22 @@
}
else if (oSystemParameter.omodel.Kf_OtherOutBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_OtherOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_OtherOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_OtherOutBillCheck_SourceBarCodeCtl == "Y")
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SaveOtherOutBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -29858,8 +30465,10 @@
}
else if (oSystemParameter.omodel.Kf_OtherOutBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_OtherOutBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_OtherOutBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_OtherOutBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -30095,6 +30704,111 @@
return false;
}
}
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鍏朵粬鍑哄簱鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ public bool set_SaveOtherOutBill_CLD_BillCheck_Verify(Model.ClsKf_OtherOutBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_OtherOutBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_OtherOutBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_OtherOutBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛�" + DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_OtherOutBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "STK_MisDelivery", sJson2 });
+ //瀹℃牳鍗曟嵁
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "STK_MisDelivery", sJson3 });
+
+ HReturn = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳鍏朵粬鍑哄簱鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍¢獙瀹℃牳鍏朵粬鍑哄簱鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鍏朵粬鍑哄簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍¢獙瀹℃牳鍏朵粬鍑哄簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鍏朵粬鍑哄簱鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
}
}
catch (Exception e)
@@ -34595,11 +35309,22 @@
}
else if (oSystemParameter.omodel.Kf_POStockInBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_POStockInBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl == "Y")
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SavePOStockInBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -34619,8 +35344,10 @@
}
else if (oSystemParameter.omodel.Kf_POStockInBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_POStockInBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -34856,6 +35583,111 @@
return false;
}
}
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳閲囪喘鍏ュ簱鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ private bool set_SavePOStockInBill_CLD_BillCheck_Verify(Model.ClsKf_POStockInBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_POStockInBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_POStockInBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_POStockInBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛�" + DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_POStockInBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result2 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit",
+ new object[] { "STK_InStock", sJson2 });
+ //瀹℃牳鍗曟嵁
+ string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}";
+ var result3 = client.Execute<string>("Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit",
+ new object[] { "STK_InStock", sJson3 });
+
+ HReturn = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳閲囪喘鍏ュ簱鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍¢獙瀹℃牳閲囪喘鍏ュ簱鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳閲囪喘鍏ュ簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍¢獙瀹℃牳閲囪喘鍏ュ簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳閲囪喘鍏ュ簱鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
}
}
catch (Exception e)
@@ -37868,11 +38700,22 @@
}
else if (oSystemParameter.omodel.Kf_ProductInBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_ProductInBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_ProductInBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_ProductInBillCheck_SourceBarCodeCtl == "Y")
{
- sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
- return false;
+ if (set_SaveProductInBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
+ {
+ //涓婁紶鎴愬姛
+ return true;
+ }
+ else
+ {
+ //涓婁紶澶辫触
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛涗笂浼犲崟鎹け璐ワ紒" + sErrMsg;
+ return false;
+ }
}
//鍘熷崟鎹潪鎵爜鐢熸垚
else
@@ -37892,8 +38735,10 @@
}
else if (oSystemParameter.omodel.Kf_ProductInBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_ProductInBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_ProductInBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_ProductInBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -38129,6 +38974,111 @@
return false;
}
}
+ }
+ }
+ catch (Exception e)
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + e.Message;
+ oCn.RollBack();
+ return false;
+ }
+ }
+
+ //CLOUD 鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
+ //CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ private bool set_SaveProductInBill_CLD_BillCheck_Verify(Model.ClsKf_ProductInBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
+ {
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+
+ //涓婁紶鍓嶅垽鏂�
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_ProductInBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_ProductInBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_ProductInBillCheck_Verify");
+ if (Ds == null || Ds.Tables[0].Rows.Count == 0)
+ {
+ sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
+ return false;
+ }
+ else
+ {
+ if (DBUtility.ClsPub.isLong(Ds.Tables[0].Rows[0][0]) == 1)
+ {
+ sErrMsg = "鍗曟嵁鍙凤細" + oMain.HBillNo + "锛屽崟鎹甀D锛�" + oMain.HInterID + "锛�" + DBUtility.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HRemark"]);
+ return false;
+ }
+ }
+
+ try
+ {
+ oCn.BeginTran();
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_ProductInBillCheck_AutoBarCode + "'");
+
+ //浠庨厤缃枃浠惰幏鍙� 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)
+ {
+ //鎻愪氦鍗曟嵁
+ 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 = result3.ToString();
+
+ if (HReturn.Contains("\"IsSuccess\":false") == true)
+ {
+ //鍙嶅簭鍒楀寲json鏁版嵁
+ var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn);
+ //鎺ユ敹閲戣澏鎶ラ敊淇℃伅
+ var strErrorMsg = string.Empty;
+ //閬嶅巻鑾峰彇鎶ラ敊淇℃伅
+ foreach (var item in retModel.Result.ResponseStatus.Errors)
+ {
+ strErrorMsg += item.Message + "\r\n";
+ };
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇鍏ュ簱鍗曞け璐ワ紒閲戣澏浜戞彁绀猴細" + strErrorMsg;
+ LogService.Write("鏍¢獙瀹℃牳鐢熶骇鍏ュ簱鍗曞け璐ワ紒" + HReturn); //鍐欏叆txt鏂囨湰
+ oCn.RollBack();
+ return false;
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇鍏ュ簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo;
+ LogService.Write("鏍¢獙瀹℃牳鐢熶骇鍏ュ簱鍗曟垚鍔燂紒鍗曟嵁鍙蜂负锛�" + oMain.HBillNo); //鍐欏叆txt鏂囨湰
+ oCn.Commit();
+ return true;
+ }
+ }
+ else
+ {
+ sErrMsg = "鏍¢獙瀹℃牳鐢熶骇鍏ュ簱鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒";
+ oCn.RollBack();
+ return false;
}
}
catch (Exception e)
@@ -41839,10 +42789,12 @@
}
else if (oSystemParameter.omodel.Kf_OtherInBillCheck_ERPMode.ToUpper() == "CLOUD")
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_OtherInBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl == "Y")
{
- if (set_SaveOtherInBill_CLD_BillCheck_Verify(oMain, ref sErrMsg) == true)
+ if (set_SaveOtherInBill_CLD_BillCheck_Verify(oMain, oSystemParameter.omodel, ref sErrMsg) == true)
{
//涓婁紶鎴愬姛
return true;
@@ -41872,8 +42824,10 @@
}
else if (oSystemParameter.omodel.Kf_OtherInBillCheck_ERPMode.ToUpper() == "WMS") //鍙敓鎴怶MS鍗曟嵁
{
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛堝彧鎵弿婧愬崟杩涜瀹℃牳锛屼笉鎵弿鐗╂枡鏉$爜锛�
//鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl == "Y")
+ if (oSystemParameter.omodel.Kf_OtherInBillCheck_AutoBarCode == "Y"
+ || oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl == "Y")
{
sErrMsg = "鏆備笉鏀寔鎵爜鐢熸垚鍗曟嵁鐨勬牎楠屽姛鑳斤紒";
return false;
@@ -42120,11 +43074,11 @@
}
//CLOUD 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- private bool set_SaveOtherInBill_CLD_BillCheck_Verify(Model.ClsKf_OtherInBillMain oMain, ref string sErrMsg)
+ private bool set_SaveOtherInBill_CLD_BillCheck_Verify(Model.ClsKf_OtherInBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg)
{
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
//涓婁紶鍓嶅垽鏂�
- DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_OtherInBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "'", "h_p_WMS_BeforeUpload_OtherInBillCheck_Verify");
+ DataSet Ds = oCn.RunProcReturn("exec h_p_WMS_BeforeUpload_OtherInBillCheck_Verify " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HBillType + "','" + oSystemParameterMain.Kf_OtherInBillCheck_AutoBarCode + "'", "h_p_WMS_BeforeUpload_OtherInBillCheck_Verify");
if (Ds == null || Ds.Tables[0].Rows.Count == 0)
{
sErrMsg = "鏍¢獙涓婁紶鍓嶅垽鏂紝鍙戠敓閿欒锛�";
@@ -42142,8 +43096,8 @@
try
{
oCn.BeginTran();
- //鍐欏叆鏉$爜鍑哄叆搴撴牎楠岃〃
- oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "'");
+ //鍐欏叆鍑哄叆搴撴牎楠岃〃銆佹潯鐮佸嚭鍏ュ簱鏍¢獙琛�
+ oCn.RunProc("EXEC h_p_Kf_ICStockBillSub_WMS_Verify_Insert " + oMain.HInterID.ToString() + ",'" + oMain.HBillType + "','" + oMain.HBillNo + "','" + oSystemParameterMain.Kf_OtherInBillCheck_AutoBarCode + "'");
//浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮�
if (!Pub_Class.ClsPub.GetCLOUDLoginInfo(ref Pub_Class.ClsPub.sExeReturnInfo))
@@ -59988,6 +60942,7 @@
sErrMsg = "鑾峰彇绯荤粺鍙傛暟澶辫触锛� " + sErrMsg;
return null;
}
+ string sAutoBarCode = "N"; //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
string sSourceBarCodeCtl = "N"; //鏍¢獙-鏄惁杩涜婧愬崟瀵瑰簲鏉$爜鏍稿锛�'Y'涓烘牳瀵癸級
string sWHSPCtl = "Y"; //鏍¢獙-鏄惁鏍″浠撳簱浠撲綅锛�'Y'涓烘牎瀵癸級
string sERPMode = "CLOUD"; //WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
@@ -60005,6 +60960,11 @@
if (oSystemParameter.omodel.Kf_POStockInBillCheck_SourceBarCodeCtl.ToUpper() == "Y")
{
sSourceBarCodeCtl = "Y";
+ }
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_POStockInBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
}
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_POStockInBillCheck_ERPMode == "WMS")
@@ -60033,6 +60993,11 @@
{
sSourceBarCodeCtl = "Y";
}
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_ProductInBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
+ }
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_ProductInBillCheck_ERPMode == "WMS")
{
@@ -60059,6 +61024,11 @@
if (oSystemParameter.omodel.Kf_OtherInBillCheck_SourceBarCodeCtl.ToUpper() == "Y")
{
sSourceBarCodeCtl = "Y";
+ }
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_OtherInBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
}
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_OtherInBillCheck_ERPMode == "WMS")
@@ -60087,6 +61057,11 @@
{
sSourceBarCodeCtl = "Y";
}
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_MateOutBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
+ }
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_MateOutBillCheck_ERPMode == "WMS")
{
@@ -60113,6 +61088,11 @@
if (oSystemParameter.omodel.Kf_SellOutBillCheck_SourceBarCodeCtl.ToUpper() == "Y")
{
sSourceBarCodeCtl = "Y";
+ }
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_SellOutBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
}
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_SellOutBillCheck_ERPMode == "WMS")
@@ -60141,6 +61121,11 @@
{
sSourceBarCodeCtl = "Y";
}
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_OtherOutBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
+ }
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_OtherOutBillCheck_ERPMode == "WMS")
{
@@ -60167,6 +61152,11 @@
if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_SourceBarCodeCtl.ToUpper() == "Y")
{
sSourceBarCodeCtl = "Y";
+ }
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
}
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_EntrustOutBillCheck_ERPMode == "WMS")
@@ -60195,6 +61185,11 @@
{
sSourceBarCodeCtl = "Y";
}
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
+ }
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_MateReplenishOutBillCheck_ERPMode == "WMS")
{
@@ -60221,6 +61216,11 @@
if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_SourceBarCodeCtl.ToUpper() == "Y")
{
sSourceBarCodeCtl = "Y";
+ }
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
}
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_EntrustReplenishOutBillCheck_ERPMode == "WMS")
@@ -60249,6 +61249,11 @@
{
sSourceBarCodeCtl = "Y";
}
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡锛�'Y'涓轰笉鎵墿鏂欐潯鐮侊級
+ if (oSystemParameter.omodel.Kf_MoveStockBillCheck_AutoBarCode.ToUpper() == "Y")
+ {
+ sAutoBarCode = "Y";
+ }
//WMS绯荤粺鍚屾鑷矱RP鐨勭被鍨嬶紙WISE銆丆LOUD銆乄MS锛�
if (oSystemParameter.omodel.Kf_MoveStockBillCheck_ERPMode == "WMS")
{
@@ -60265,8 +61270,8 @@
}
#endregion
- //鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
- if (sSourceBarCodeCtl == "Y")
+ //鍏嶆壂鐗╂枡鏉$爜妯″紡 鎴� 鍘熷崟鎹负鎵爜鐢熸垚锛屽鍘熸壂鎻忕殑鏉$爜杩涜鏍稿
+ if (sAutoBarCode == "Y" || sSourceBarCodeCtl == "Y")
{
//灏嗗崟鎹俊鎭�佸崟鎹搴旀潯鐮佷俊鎭啓鍏ユ潯鐮佸嚭鍏ュ簱鏍¢獙涓存椂琛↘F_PonderationBillMain_Temp_Verify
DataSet dsVerify = oCn.RunProcReturn("exec h_p_WMS_AddBillBarCode_BillCheckVerify '" + HBillNo + "','" + HBillType + "','" + HMaker + "'," + HOWNERID.ToString(), "h_p_WMS_AddBillBarCode_BillCheckVerify");
diff --git a/DLL/Pub_Class.dll b/DLL/Pub_Class.dll
index d492194..0e3fb97 100644
--- a/DLL/Pub_Class.dll
+++ b/DLL/Pub_Class.dll
Binary files differ
--
Gitblit v1.9.1