From a825c44ff42da28c26c26a17b65dba6c1c896262 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期三, 16 十一月 2022 17:03:15 +0800
Subject: [PATCH] 完善修复基础资料列表增删改查功能(物料,仓库,职员,部门,组织,计量单位)

---
 DAL/WMS/ClsGy_BarCodeBill_Ctl.cs |  300 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 264 insertions(+), 36 deletions(-)

diff --git a/DAL/WMS/ClsGy_BarCodeBill_Ctl.cs b/DAL/WMS/ClsGy_BarCodeBill_Ctl.cs
index 84cb48b..d03c159 100644
--- a/DAL/WMS/ClsGy_BarCodeBill_Ctl.cs
+++ b/DAL/WMS/ClsGy_BarCodeBill_Ctl.cs
@@ -11,6 +11,10 @@
         //鍘熶唬鐮� 鐢ㄤ簬 鏇挎崲瀛愰」鐩�
         public string HOldNumber;
         public Model.ClsGy_BarCodeBill_WMS_Model oModel = new Model.ClsGy_BarCodeBill_WMS_Model();
+        public const string ModRightName = "Gy_BarCodeBillList";
+        public const string ModRightNameEdit = ModRightName + "_Edit";      //鍒犻櫎
+        public const string ModRightNameDelete = ModRightName + "_Delete";  //浣滃簾
+        public const string ModRightNamePrint = ModRightName + "_Print";    //鎵撳嵃
         //鏂板
         public override bool AddNew()
         {
@@ -163,42 +167,6 @@
             }
         }
 
-        //浣滃簾鏉$爜
-        public bool Cancelltion(string sBarCode)
-        {
-            try
-            {
-                oCn.BeginTran();
-                //浣滃簾鏉$爜
-                oCn.RunProc("update Gy_BarCodeBill set HStopflag=1 where HBarCode='" + sBarCode + "'", ref DBUtility.ClsPub.sExeReturnInfo);
-                oCn.Commit();
-                return true;
-            }
-            catch (Exception e)
-            {
-                oCn.RollBack();
-                throw (e);
-            }
-        }
-
-        //鍙嶄綔搴熸潯鐮�
-        public bool UnCancelltion(string sBarCode)
-        {
-            try
-            {
-                oCn.BeginTran();
-                //鍙嶄綔搴熸潯鐮�
-                oCn.RunProc("update Gy_BarCodeBill set HStopflag=0 where HBarCode='" + sBarCode + "'", ref DBUtility.ClsPub.sExeReturnInfo);
-                oCn.Commit();
-                return true;
-            }
-            catch (Exception e)
-            {
-                oCn.RollBack();
-                throw (e);
-            }
-        }
-
         public bool DeleteByMul(string[] sSQL, ref string sReturn)
         {
             try
@@ -220,6 +188,266 @@
             }
         }
 
+
+
+        //---------------------------------------------------------
+        //New
+
+        //浣滃簾鏉$爜
+        public bool Cancelltion(string sHItemID, string sHBarCode, string sHDeleteMan)
+        {
+            try
+            {
+                oCn.BeginTran();
+                string[] NewBarCode;
+                NewBarCode = sHBarCode.Split(Convert.ToChar("#"));
+
+                //浣滃簾鏉$爜
+                oCn.RunProc("update Gy_BarCodeBill set HStopflag=1,HDeleteMan='" + sHDeleteMan + "',HDeleteDate=getdate() where HItemID in (" + sHItemID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+                //鍐欏叆绯荤粺鏃ュ織
+                for (int i = 0; i <= NewBarCode.Length - 1; i++)
+                {
+                    oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','浣滃簾鏉$爜锛�" + NewBarCode[i] + "','WMS绯荤粺-鏉$爜妗f鍒楄〃妯″潡','" + DBUtility.ClsPub.IPAddress + "','浣滃簾'", ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+
+        //鍙嶄綔搴熸潯鐮�
+        public bool UnCancelltion(string sHItemID, string sHBarCode, string sSourceQtyCtl, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                string[] NewBarCode;
+                NewBarCode = sHBarCode.Split(Convert.ToChar("#"));
+                //鍙嶄綔搴熸潯鐮佸墠杩涜鍒ゆ柇
+                DataSet DS = oCn.RunProcReturn("exec h_p_Gy_BarCodeBill_UnCancelltion '" + sHItemID + "','" + sSourceQtyCtl + "'", "h_p_Gy_BarCodeBill_UnCancelltion", ref DBUtility.ClsPub.sExeReturnInfo);
+                if (DS == null || DS.Tables[0].Rows.Count <= 0)
+                {
+                    oCn.CnClose();
+                    oCn.CnDispose();
+                    sReturn = "鍙嶄綔搴熸潯鐮佸墠鍒ゆ柇鍙戠敓閿欒锛�";
+                    return false;
+                }
+                else
+                {
+                    if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]) == "1")
+                    {
+                        oCn.CnClose();
+                        oCn.CnDispose();
+                        sReturn = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]);
+                        return false;
+                    }
+                    else
+                    {
+                        //鍙嶄綔搴熸潯鐮�
+                        oCn.RunProc("update Gy_BarCodeBill set HStopflag=0,HDeleteMan='',HDeleteDate=null where HItemID in (" + sHItemID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鍐欏叆绯荤粺鏃ュ織
+                        for (int i = 0; i <= NewBarCode.Length - 1; i++)
+                        {
+                            oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','鍙嶄綔搴熸潯鐮侊細" + NewBarCode[i] + "','WMS绯荤粺-鏉$爜妗f鍒楄〃妯″潡','" + DBUtility.ClsPub.IPAddress + "','鍙嶄綔搴�'", ref DBUtility.ClsPub.sExeReturnInfo);
+                        }
+                        oCn.Commit();
+                        return true;
+                    }
+                }
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+
+        //鍗曟潯鍒犻櫎鏉$爜
+        public bool DeleteBill(long sHItemID, string sHBarCode, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鍒犻櫎鏉$爜鍓嶈繘琛屽垽鏂�
+                DataSet DS = oCn.RunProcReturn("exec h_p_Gy_BarCodeBill_Delete_Before " + sHItemID + ",'" + sHBarCode + "'", "h_p_Gy_BarCodeBill_Delete_Before", ref DBUtility.ClsPub.sExeReturnInfo);
+                if (DS == null || DS.Tables[0].Rows.Count <= 0)
+                {
+                    oCn.CnClose();
+                    oCn.CnDispose();
+                    sReturn = "鍒犻櫎鏉$爜鍓嶅垽鏂彂鐢熼敊璇紒";
+                    return false;
+                }
+                else
+                {
+                    if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]) == "1")
+                    {
+                        oCn.CnClose();
+                        oCn.CnDispose();
+                        sReturn = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]);
+                        return false;
+                    }
+                    else
+                    {
+                        //鍒犻櫎鏉$爜
+                        oCn.RunProc("Delete from Gy_BarCodeBill where HItemID = " + sHItemID, ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鍐欏叆绯荤粺鏃ュ織
+                        oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','鍒犻櫎鏉$爜锛�" + sHBarCode + "','WMS绯荤粺-鏉$爜妗f鍒楄〃妯″潡','" + DBUtility.ClsPub.IPAddress + "','鍒犻櫎'", ref DBUtility.ClsPub.sExeReturnInfo);
+                        oCn.Commit();
+                        return true;
+                    }
+                }
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+
+        //鎵归噺鍒犻櫎鏉$爜
+        public bool MulDeleteBill(string sHItemID, string sHBarCode, ref string sReturn)
+        {
+            try
+            {
+                oCn.BeginTran();
+                string[] NewBarCode;
+                NewBarCode = sHBarCode.Split(Convert.ToChar("#"));
+                //鎵归噺鍒犻櫎鏉$爜鍓嶈繘琛屽垽鏂�
+                DataSet DS = oCn.RunProcReturn("exec h_p_Gy_BarCodeBill_MulDelete_Before '" + sHItemID + "','" + sHBarCode + "'", "h_p_Gy_BarCodeBill_MulDelete_Before", ref DBUtility.ClsPub.sExeReturnInfo);
+                if (DS == null || DS.Tables[0].Rows.Count <= 0)
+                {
+                    oCn.CnClose();
+                    oCn.CnDispose();
+                    sReturn = "鎵归噺鍒犻櫎鏉$爜鍓嶅垽鏂彂鐢熼敊璇紒";
+                    return false;
+                }
+                else
+                {
+                    if (DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]) == "1")
+                    {
+                        oCn.CnClose();
+                        oCn.CnDispose();
+                        sReturn = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0]["HRemark"]);
+                        return false;
+                    }
+                    else
+                    {
+                        //鎵归噺鍒犻櫎鏉$爜
+                        oCn.RunProc("Delete from Gy_BarCodeBill where HItemID in (" + sHItemID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+                        //鍐欏叆绯荤粺鏃ュ織
+                        for (int i = 0; i <= NewBarCode.Length - 1; i++)
+                        {
+                            oCn.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + DBUtility.ClsPub.CurUserName + "','" + DBUtility.ClsPub.ComputerName + "','鎵归噺鍒犻櫎鏉$爜锛�" + NewBarCode[i] + "','WMS绯荤粺-鏉$爜妗f鍒楄〃妯″潡','" + DBUtility.ClsPub.IPAddress + "','鎵归噺鍒犻櫎'", ref DBUtility.ClsPub.sExeReturnInfo);
+                        }
+                        oCn.Commit();
+                        return true;
+                    }
+                }
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+
+        //鏉$爜鐢熸垚妯″潡璋冪敤    鏉$爜鎵撳嵃鍓嶏紝鏉$爜鎵撳嵃娆℃暟鎺у埗锛堟槸鍚﹁秴杩囧厑璁稿彲鎵撳嵃娆℃暟锛�
+        public bool Set_CheckPrintQty_SD(Int64 HInterID, long PrintQty, ref string sReturn)
+        {
+            DataSet DS;
+            string sBarCode = "";
+            DS = oCn.RunProcReturn("select stuff((select ','+HBarCode from Gy_BarCodeBill with(nolock) where HPrintQty >=" + PrintQty + " and HBarCodeType = '鍞竴鏉$爜' and HInterID = " + HInterID + " for xml path('')),1,1,'')", "Gy_BarCodeBill");
+            if (DS == null || DS.Tables[0].Rows.Count == 0)
+            {
+                sReturn = "姝e父锛�";
+                return false;
+            }
+            else
+            {
+                sBarCode = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]);
+                if (sBarCode == "")
+                {
+                    sReturn = "姝e父锛�";
+                    return false;
+                }
+                else
+                {
+                    sReturn = "鏉$爜缂栧彿锛�" + DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]) + "锛屽凡鎵撳嵃" + PrintQty + " 娆★紝涓嶅厑璁稿啀娆¢瑙堟墦鍗帮紒";
+                    return true;
+                }
+            }
+        }
+
+        //鏉$爜妗f鍒楄〃妯″潡璋冪敤    鏉$爜鎵撳嵃鍓嶏紝鏉$爜鎵撳嵃娆℃暟鎺у埗锛堟槸鍚﹁秴杩囧厑璁稿彲鎵撳嵃娆℃暟锛�
+        public bool Set_CheckPrintQty(string sBarCodeItemID, long PrintQty, ref string sReturn)
+        {
+            DataSet DS;
+            string sBarCode = "";
+            DS = oCn.RunProcReturn("select stuff((select ','+HBarCode from Gy_BarCodeBill with(nolock) where HPrintQty >=" + PrintQty + " and HBarCodeType = '鍞竴鏉$爜' and HItemID in (" + sBarCodeItemID + ") for xml path('')),1,1,'')", "Gy_BarCodeBill");
+            if (DS == null || DS.Tables[0].Rows.Count == 0)
+            {
+                sReturn = "姝e父锛�";
+                return false;
+            }
+            else
+            {
+                sBarCode = DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]);
+                if (sBarCode == "")
+                {
+                    sReturn = "姝e父锛�";
+                    return false;
+                }
+                else
+                {
+                    sReturn = "鏉$爜缂栧彿锛�" + DBUtility.ClsPub.isStrNull(DS.Tables[0].Rows[0][0]) + "锛屽凡鎵撳嵃" + PrintQty + " 娆★紝涓嶅厑璁稿啀娆¢瑙堟墦鍗帮紒";
+                    return true;
+                }
+            }
+        }
+
+        //鏉$爜鐢熸垚妯″潡璋冪敤    鏉$爜鎵撳嵃鍚庯紝鏇存柊鏉$爜鎵撳嵃娆℃暟
+        public bool Set_UpdatePrintQty_SD(Int64 HInterID)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鏇存柊 鏉$爜鎵撳嵃娆℃暟
+                oCn.RunProc("update Gy_BarCodeBill set HPrintQty=isnull(HPrintQty,0)+1 where HInterID = " + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+
+        //鏉$爜妗f鍒楄〃妯″潡璋冪敤    鏉$爜鎵撳嵃鍚庯紝鏇存柊鏉$爜鎵撳嵃娆℃暟
+        public bool Set_UpdatePrintQty(string sBarCodeItemID)
+        {
+            try
+            {
+                oCn.BeginTran();
+                //鏇存柊 鏉$爜鎵撳嵃娆℃暟
+                oCn.RunProc("update Gy_BarCodeBill set HPrintQty=isnull(HPrintQty,0)+1 where HItemID in (" + sBarCodeItemID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+                oCn.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                oCn.RollBack();
+                throw (e);
+            }
+        }
+
+
+
+
         //鏋勯�犲嚱鏁�
         public ClsGy_BarCodeBill_Ctl()
         {

--
Gitblit v1.9.1