From f165ef7e3b194d59d05e999d4106953aca05f55a Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期三, 10 八月 2022 20:06:57 +0800
Subject: [PATCH] 优化 送货单批量删除
---
WebAPI/Controllers/POOrderController.cs | 2
WebAPI/Controllers/EntrustOrderController.cs | 23 ++-----
WebAPI/Controllers/POInStockController.cs | 101 ++++++++++++++++++++-------------
WebAPI/Controllers/BarCodeController.cs | 25 +++++++-
4 files changed, 90 insertions(+), 61 deletions(-)
diff --git a/WebAPI/Controllers/BarCodeController.cs b/WebAPI/Controllers/BarCodeController.cs
index 9250a1e..9665667 100644
--- a/WebAPI/Controllers/BarCodeController.cs
+++ b/WebAPI/Controllers/BarCodeController.cs
@@ -585,6 +585,27 @@
HSumQty = ClsPub.isDoule(oItemSub.HQty); //HWXQtyCol
for (int i = 0; i < HBQty; i++)
{
+ LSH = LSH + 1;
+ LSH2 = LSH.ToString();
+ while (LSH2.Length < LSHlen) //濡傛灉娴佹按鍙峰皬浜�6浣嶆暟鍓嶉潰琛�0
+ {
+ LSH2 = "0" + LSH2;
+ }
+ sDate = ClsPub.GetServerDate(0);
+ sYear = ClsPub.isDate(sDate).Year.ToString().Substring(2, 2);
+ sPeriod = "0" + ClsPub.isDate(sDate).Month.ToString();
+ sPeriod = sPeriod.Substring(sPeriod.Length - 2, 2);
+ sDay = "0" + ClsPub.isDate(sDate).Day.ToString();
+ sDay = sDay.Substring(sDay.Length - 2, 2);
+ //==================================
+ TM = HNumber + sYear + sPeriod + sDay + LSH2;
+ while (TM.Length < SumLen) //濡傛灉鏉$爜灏忎簬12浣嶆暟鍓嶉潰琛�0
+ {
+ TM = "0" + TM;
+ }
+ //TM = "B" + TM;
+ TM = "SRM" + "B" + TM;
+
if (HSumQty - HMinQty > 0)
{
WeiShu = "";
@@ -602,8 +623,6 @@
}
HMinQty = HSumQty;
}
- TM = $"{oItemSub.HMaterID}#{HMinQty}";
-
Model.ClsGy_BarCodeBill_WMS_Model bar = new Model.ClsGy_BarCodeBill_WMS_Model();
bar.HBarCode = TM;
bar.HMaterID = oItemSub.HMaterID;
@@ -695,7 +714,7 @@
TM2 = "0" + TM2;
}
bar2.HMaterID = oItemSub2.HMaterID;
- bar2.HBarCode = oItemSub2.HBarCode.Split('#')[0] + "#" + HWXQty.ToString();
+ bar2.HBarCode = oItemSub2.HBarCode + "-" + TM2;
bar2.HUnitID = oItemSub2.HUnitID;
bar2.HQty = HWXQty;
bar2.HBatchNo = DBUtility.ClsPub.isStrNull(oItemSub2.HBatchNo);
diff --git a/WebAPI/Controllers/EntrustOrderController.cs b/WebAPI/Controllers/EntrustOrderController.cs
index ab022cb..1b286f2 100644
--- a/WebAPI/Controllers/EntrustOrderController.cs
+++ b/WebAPI/Controllers/EntrustOrderController.cs
@@ -55,7 +55,7 @@
{
objjson.code = "0";
objjson.count = 0;
- objjson.Message = "鑾峰彇澶辫触";
+ objjson.Message = "杞崲鐗规畩瀛楃澶辫触";
objjson.data = null;
return objjson;
}
@@ -63,22 +63,11 @@
Int64 RowTotal = Common.GetRowTotal("H_v_SRM_EntrustOrderBillList", VsWhere, ref DBUtility.ClsPub.sExeReturnInfo);
//鑾峰彇杩斿洖鏁版嵁
ds = oCn.RunProcReturn("exec H_p_SRM_EntrustOrderBillList '" + PcWhere + "'", "H_p_SRM_EntrustOrderBillList");
- if (ds == null || ds.Tables[0].Rows.Count == 0)
- {
- objjson.code = "0";
- objjson.count = 0;
- objjson.Message = "鑾峰彇澶辫触";
- objjson.data = null;
- return objjson;
- }
- else
- {
- objjson.code = "0";
- objjson.count = 10000;
- objjson.Message = "鑾峰彇鎴愬姛";
- objjson.data = ds.Tables[0];
- return objjson;
- }
+ objjson.code = "0";
+ objjson.count = 10000;
+ objjson.Message = "鑾峰彇鎴愬姛";
+ objjson.data = ds.Tables[0];
+ return objjson;
}
catch (Exception e)
{
diff --git a/WebAPI/Controllers/POInStockController.cs b/WebAPI/Controllers/POInStockController.cs
index bd36aa7..8c06a45 100644
--- a/WebAPI/Controllers/POInStockController.cs
+++ b/WebAPI/Controllers/POInStockController.cs
@@ -662,6 +662,7 @@
LEFT JOIN {0}..T_BD_CURRENCY EC ON E. FSETTLECURRID =EC.FCURRENCYID
WHERE b.hinterid in ({1}) and M.HERPInterID = 0
", kdTbaleName, HInterID);
+ LogService.Write(sql);
//LEFT JOIN {0}..T_HR_EMPINFO T5 ON D.F_XBKF_BASE1 = T5.FID
dt = oCn.RunProcReturn(sql, "sltz").Tables[0];
@@ -1010,7 +1011,7 @@
[Route("DeltetPOInStockBill")]
[HttpGet]
- public object DeltetPOInStockBill(string HInterID, string HUserName, string HBillNo)
+ public object DeltetPOInStockBill(string HInterID, string HUserName)
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
try
@@ -1022,11 +1023,16 @@
if (objjson.code == "0")
return objjson;
- WebAPIController.Add_Log("閫佽揣鍗曞垹闄�", HUserName, "閫佽揣鍗曞垹闄わ紝鍗曞彿锛�" + HBillNo);
oCN.BeginTran();
- oBill.DeleteRelation(ref DBUtility.ClsPub.sExeReturnInfo, Convert.ToInt32(HInterID));
- oCN.RunProc("Delete From Cg_POInStockBillMain where HInterID = " + HInterID);
- oCN.RunProc("Delete From Cg_POInStockBillSub where HInterID = " + HInterID);
+ string sql = $"select HInterID,HBillNo from Cg_POInStockBillMain where HInterID in ({HInterID})";
+ DataTable dt = oCN.RunProcReturn(sql, "deleteTable").Tables[0];
+ foreach (DataRow dr in dt.Rows)
+ {
+ WebAPIController.Add_Log("閫佽揣鍗曞垹闄�", HUserName, "閫佽揣鍗曞垹闄わ紝鍗曞彿锛�" + dr["HBillNo"]);
+ oBill.DeleteRelation(ref DBUtility.ClsPub.sExeReturnInfo, Convert.ToInt32(dr["HInterID"]));
+ oCN.RunProc($"Delete From Cg_POInStockBillMain where HInterID in ({dr["HInterID"]})");
+ oCN.RunProc($"Delete From Cg_POInStockBillSub where HInterID in ({dr["HInterID"]})");
+ }
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
@@ -1049,54 +1055,69 @@
public json DeleteKingDee(string hinterid)
{
var kdTbaleName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DataBaseName");
-
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
string sql = string.Format("select HinterID,HERPBillNO,HERPInterID from Cg_POInStockBillMain where HERPInterID>0 and hinterid in (" + hinterid + ")");
string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo);
if (FCusName == "澶忓疂鐢靛櫒")
sql = $"select HinterID,HERPBillNO,HERPInterID from Cg_POInStockBillMain t1 join {kdTbaleName}..T_PUR_RECEIVE t2 on t1.HERPInterID = t2.FID where HERPInterID>0 and hinterid in (" + hinterid + ")";
- else if (FCusName.Contains("鐟炰笌绁�"))
+ else if (FCusName.Contains("鐟炰笌绁�") || FCusName == "")
sql = $"select HinterID,HERPBillNO,HERPInterID from Cg_POInStockBillMain t1 join {kdTbaleName}..T_PUR_RECEIVE t2 on t1.HERPInterID = t2.FID where HERPInterID>0 and hinterid in (" + hinterid + ")";
DataTable dt = oCN.RunProcReturn(sql, "deleteDt").Tables[0];
- if (dt.Rows.Count > 0)
+ if (dt.Rows.Count == 0)
{
- foreach (DataRow dr in dt.Rows)
- {
- var sJson = new
- {
- Numbers = dr["HERPBillNO"].ToString(),
- Ids = ""
- };
- var loginRet = InvokeHelper.Login();
- var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
- if (isSuccess == 0)
- {
- objjson.code = "0";
- objjson.count = 0;
- objjson.Message = "鎿嶄綔澶辫触,閲戣澏璐﹀彿鐧诲綍寮傚父銆�" + loginRet;
- objjson.data = null;
- return objjson;
- }
- //LogService.Write("");
- var result = InvokeHelper.Delete("PUR_ReceiveBill", JsonConvert.SerializeObject(sJson));
- //LogService.Write("api缁撴灉鍒犻櫎锛�" + result);
- if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
- {
- objjson.code = "0";
- objjson.count = 0;
- objjson.Message = "瀵瑰簲閲戣澏鏀舵枡閫氱煡鍗曞垹闄ゅけ璐� 锛�" + result;
- objjson.data = null;
- return objjson;
- }
-
- }
+ objjson.code = "1";
+ objjson.count = 1;
+ objjson.Message = "Sucess锛�";
+ objjson.data = null;
+ return objjson;
+ }
+ List<string> HERPInterIdList = new List<string>();
+ foreach (DataRow dr in dt.Rows)
+ {
+ HERPInterIdList.Add(dr["HERPInterID"].ToString());
+ }
+ var sJson = new
+ {
+ Ids = string.Join(",", HERPInterIdList)
+ };
+ var loginRet = InvokeHelper.Login();
+ var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
+ if (isSuccess <= 0)
+ {
+ objjson.code = "0";
+ objjson.count = 0;
+ objjson.Message = "鎿嶄綔澶辫触,閲戣澏璐﹀彿鐧诲綍寮傚父銆�" + loginRet;
+ objjson.data = null;
+ return objjson;
+ }
+ //LogService.Write("");
+ var result = InvokeHelper.Delete("PUR_ReceiveBill", JsonConvert.SerializeObject(sJson));
+ //LogService.Write("api缁撴灉鍒犻櫎锛�" + result);
+ if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+ {
+ //var errorsList = JObject.Parse(result)["Result"]["ResponseStatus"]["Errors"];
+ //List<string> errList = new List<string>();
+ //foreach (var item in errorsList)
+ //{
+ // errList.Add(item["Message"].ToString()+ "\r\n");
+ //}
+ //string err = string.Join(",", errList);
+ objjson.code = "0";
+ objjson.count = 0;
+ objjson.Message = "瀵瑰簲閲戣澏鏀舵枡閫氱煡鍗曞垹闄ゅけ璐� 锛乗r\n" + result;
+ objjson.data = null;
+ return objjson;
}
objjson.code = "1";
objjson.count = 1;
objjson.Message = "Sucess锛�";
objjson.data = null;
return objjson;
+
}
+
+
+
//[Route("POInStockAccept")]
//[HttpGet]
@@ -1258,7 +1279,7 @@
LEFT JOIN {1}..T_PUR_POORDERENTRY C ON B.HInterID = C.FID AND B.HEntryID = C.FENTRYID
WHERE ISNULL(C.FENTRYID,0) = 0
AND B.HEntryID in ({0})"
-, entryids, kdTbaleName);
+ , entryids, kdTbaleName);
DataSet ds = oCn.RunProcReturn(sql, "temp");
if (ds.Tables[0].Rows.Count > 0)
{
@@ -1280,7 +1301,7 @@
LEFT join {1}..T_PUR_POCHANGE F ON D.FID = F.FID
where b.HEntryID in ({0})
and F.FDOCUMENTSTATUS <> 'C'"
-, entryids, kdTbaleName);
+ , entryids, kdTbaleName);
ds = oCn.RunProcReturn(sql, "temp");
if (ds.Tables[0].Rows.Count > 0)
{
diff --git a/WebAPI/Controllers/POOrderController.cs b/WebAPI/Controllers/POOrderController.cs
index c524c2a..f1b0b27 100644
--- a/WebAPI/Controllers/POOrderController.cs
+++ b/WebAPI/Controllers/POOrderController.cs
@@ -56,7 +56,7 @@
{
objjson.code = "0";
objjson.count = 0;
- objjson.Message = "鑾峰彇澶辫触";
+ objjson.Message = "杞崲鐗规畩瀛楃澶辫触";
objjson.data = null;
return objjson;
}
--
Gitblit v1.9.1