From 01876d595c48c32c7e35dcbdef26177b0f5161dc Mon Sep 17 00:00:00 2001
From: yxj <yxj@hz-kingdee.com>
Date: 星期一, 15 十二月 2025 17:01:37 +0800
Subject: [PATCH] 小卫条码解析规则修改
---
CLOUDWEB/WebService1.asmx.cs | 68 ++++++++++++++++++++++++---------
1 files changed, 49 insertions(+), 19 deletions(-)
diff --git a/CLOUDWEB/WebService1.asmx.cs b/CLOUDWEB/WebService1.asmx.cs
index d990c7e..d02d410 100644
--- a/CLOUDWEB/WebService1.asmx.cs
+++ b/CLOUDWEB/WebService1.asmx.cs
@@ -63251,18 +63251,47 @@
SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
//鑾峰彇瀵瑰簲鏉$爜瑙f瀽鏁版嵁
+ string sHMaterNumber = ""; //鐗╂枡缂栫爜
+ string sHMaterName = ""; //鐗╂枡鍚嶇О
+ string sHSupNumber = ""; //渚涘簲鍟嗙紪鐮�
+ string sHBatchNo = ""; //鏉ユ枡鎵瑰彿
+ string sHBarQty = ""; //鏉ユ枡鏁伴噺
+ string sHPOOrderBillNo = ""; //閲囪喘璁㈠崟缂栫爜
string[] str = sBarCode.Split('@');
- if (str.Length != 4 && str.Length < 6)
+ //鏉$爜瑙勫垯锛氱墿鏂欑紪鐮� @渚涘簲鍟嗙紪鐮� @鐢熶骇鏃ユ壒鍙�8浣嶆棩鏈熺爜 @閲囪喘璁㈠崟缂栫爜 @鏉ユ枡鎬绘暟閲�
+ if (str.Length == 5)
{
- sErrMsg = "1銆佹潯鐮佹。妗堜腑涓嶅瓨鍦ㄨ鏉$爜锛岃纭鏉$爜鏄惁姝g‘锛�2銆佹潯鐮佽В鏋愬け璐�,鏉$爜鏍煎紡閿欒锛屽繀椤诲寘鍚�3涓� @ 鍒嗛殧绗︽垨涓嶅皯浜�5涓� @ 鍒嗛殧绗︼紒";
+ sHMaterNumber = str[0];
+ sHSupNumber = str[1];
+ sHBatchNo = str[2];
+ sHPOOrderBillNo = str[3];
+ sHBarQty = str[4];
+ }
+ //鏉$爜瑙勫垯锛氱墿鏂欑紪鐮� @渚涘簲鍟嗙紪鐮� @鏉ユ枡鎵瑰彿 @鏉ユ枡鏁伴噺 @閲囪喘璁㈠崟缂栫爜 @娴佹按鍙�
+ else if (str.Length == 6)
+ {
+ sHMaterNumber = str[0];
+ sHSupNumber = str[1];
+ sHBatchNo = str[2];
+ sHBarQty = str[3];
+ sHPOOrderBillNo = str[4];
+ }
+ //鏉$爜瑙勫垯锛氱墿鏂欑紪鐮� @渚涘簲鍟嗙紪鐮� @鐗╂枡鍚嶇О @鎵瑰彿 @鏉ユ枡鏁伴噺 @閲囪喘璁㈠崟缂栫爜 @娴佹按鍙�
+ else if (str.Length == 7)
+ {
+ sHMaterNumber = str[0];
+ sHSupNumber = str[1];
+ sHMaterName = str[2];
+ sHBatchNo = str[3];
+ sHBarQty = str[4];
+ sHPOOrderBillNo = str[5];
+ }
+ else
+ {
+ sErrMsg = "1銆佹潯鐮佹。妗堜腑涓嶅瓨鍦ㄨ鏉$爜锛岃纭鏉$爜鏄惁姝g‘锛�2銆佹潯鐮佽В鏋愬け璐�,鏉$爜鏍煎紡閿欒锛屽繀椤诲寘鍚�4-6涓� @ 鍒嗛殧绗︼紒";
return false;
}
- string sHMaterNumber = str[0]; //鐗╂枡缂栫爜
- string sHSupNumber = str[1]; //渚涘簲鍟嗙紪鐮�
- string sHBatchNo = str[2]; //鏉ユ枡鎵瑰彿/鐗╂枡鍚嶇О锛堝寘鍚�3涓狜鍜�5涓狜鐨勪负鎵瑰彿锛屽寘鍚�6涓狜鐨勪负鐗╂枡鍚嶇О锛�
- string sHBarQty = str[3]; //鏉ユ枡鏁伴噺
- string sHPOOrderBillNo = str.Length > 4 ? str[4] : ""; //閲囪喘璁㈠崟缂栫爜
//瀹氫箟骞惰祴鍊兼潯鐮佽〃鎵�闇�鍐欏叆瀛楁鏁版嵁
Int64 HInterID = 0; //涓籌D
@@ -63271,7 +63300,7 @@
Int64 HMaterID = 0; //鐗╂枡ID
Int64 HUnitID = 0; //璁¢噺鍗曚綅ID
Int64 HAuxPropID = 0; //杈呭姪灞炴�D
- string HBatchNo = ""; //鎵规鍙�
+ string HBatchNo = sHBatchNo; //鎵规鍙�
string HMTONo = ""; //MTO鍙�
double HQty = DBUtility.ClsPub.isDoule(sHBarQty); //鏁伴噺
double HinitQty = 0; //鍒濆鍖栨暟閲忥紙鐢熸垚鏉$爜鏃舵暟閲忥級
@@ -63308,11 +63337,11 @@
string HPinfan = ""; //鍝佺暘
DateTime HEndDate = DateTime.Now; ; //璁″垝瀹屽伐鏃ユ湡
- //鑾峰彇鏉$爜绫诲瀷銆佹簮鍗曠被鍨�
- if (str.Length == 4)
+ //鏁伴噺鍒ゆ柇
+ if (HQty <= 0)
{
- HBarCodeType = "鎵规鏉$爜";
- HSourceBillType = "";
+ sErrMsg = "鏉$爜瑙f瀽澶辫触,鏉$爜鏁伴噺涓嶅厑璁稿皬浜�0锛�";
+ return false;
}
//鑾峰彇鐗╂枡鐩稿叧鏁版嵁
@@ -63325,17 +63354,18 @@
else
{
HMaterID = DBUtility.ClsPub.isLong(Mds.Tables[0].Rows[0]["HItemID"]);
- HMaterName = DBUtility.ClsPub.isStrNull(Mds.Tables[0].Rows[0]["HName"]);
+ if(sHMaterName!="")
+ {
+ HMaterName = sHMaterName;
+ }
+ else
+ {
+ HMaterName = DBUtility.ClsPub.isStrNull(Mds.Tables[0].Rows[0]["HName"]);
+ }
HUnitID = DBUtility.ClsPub.isLong(Mds.Tables[0].Rows[0]["HUnitID"]);
HISKFPERIOD = DBUtility.ClsPub.isBool(Mds.Tables[0].Rows[0]["HISKFPERIOD"]);
HEXPUNIT = DBUtility.ClsPub.isStrNull(Mds.Tables[0].Rows[0]["HEXPUNIT"]);
HEXPPERIOD = DBUtility.ClsPub.isDoule(Mds.Tables[0].Rows[0]["HEXPPERIOD"]);
- }
-
- //鑾峰彇鎵瑰彿
- if (str.Length == 6 || str.Length == 4)
- {
- HBatchNo = sHBatchNo;
}
//鑾峰彇渚涘簲鍟嗙浉鍏虫暟鎹�
--
Gitblit v1.9.1