From 2a72bbff6c293dcd9d84633a8a89b73f468a6f79 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期三, 27 三月 2024 10:02:32 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WarM/条码打印/Gy_BarCodeBill.cs |  167 ++++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 126 insertions(+), 41 deletions(-)

diff --git "a/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs" "b/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs"
index ece3c3e..a9a2bcb 100644
--- "a/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs"
+++ "b/WarM/\346\235\241\347\240\201\346\211\223\345\215\260/Gy_BarCodeBill.cs"
@@ -155,6 +155,8 @@
         //
         public  string ModName = "85";
         public  string ModCaption = "鏉$爜鐢熸垚";
+        public const string ModRightName = "Gy_BarCodeBill";
+        public const string ModRightNameSourceQty = ModRightName + "_SourceQty"; //瓒呮簮鍗曟暟閲忔帶鍒�
         public bool BillChange;   //
 
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -206,6 +208,10 @@
                 cmbHBarCodeType.Items.Add("浠櫒鎴愬搧鏉$爜瑙勫垯");
                 cmbHBarCodeType.Items.Add("璇曞墏鎴愬搧鏉$爜瑙勫垯");
             }
+            else if (sCapName == "涓帶")
+            {
+                cmbHBarCodeType.Items.Add("鍞竴鏉$爜");
+            }
             else
             {
                 //
@@ -215,20 +221,28 @@
                 //cmbHBarCodeType.Items.Add("鎵樼洏鏉$爜");
             }
 
-            //
-            cmbSourceBillType.Items.Add("鐢熶骇璁㈠崟");
-            cmbSourceBillType.Items.Add("鐢熶骇姹囨姤鍗�");
-            cmbSourceBillType.Items.Add("閲囪喘璁㈠崟");
-            cmbSourceBillType.Items.Add("鏀舵枡閫氱煡鍗�");
-            cmbSourceBillType.Items.Add("濮斿璁㈠崟");
-            cmbSourceBillType.Items.Add("宸ュ簭姹囨姤鍗�");
-            cmbSourceBillType.Items.Add("宸ュ簭娴佽浆鍗�");
-            cmbSourceBillType.Items.Add("閫�璐ч�氱煡鍗�");
-            cmbSourceBillType.Items.Add("鍏朵粬鍏ュ簱鍗�");
-            cmbSourceBillType.Items.Add("鐩存帴璋冩嫧鍗�");
-            cmbSourceBillType.Items.Add("閲囪喘閫�鏂欏崟");
-            cmbSourceBillType.Items.Add("鐢熶骇閫�鏂欏崟");
-            cmbSourceBillType.Items.Add("缁勮鎷嗗嵏鍗�");
+            //婧愬崟绫诲瀷
+            if (sCapName == "涓帶")
+            {
+                cmbSourceBillType.Items.Add("鐢熶骇姹囨姤鍗�");
+                cmbSourceBillType.Items.Add("鏀舵枡閫氱煡鍗�");
+            }
+            else
+            {
+                cmbSourceBillType.Items.Add("鐢熶骇璁㈠崟");
+                cmbSourceBillType.Items.Add("鐢熶骇姹囨姤鍗�");
+                cmbSourceBillType.Items.Add("閲囪喘璁㈠崟");
+                cmbSourceBillType.Items.Add("鏀舵枡閫氱煡鍗�");
+                cmbSourceBillType.Items.Add("濮斿璁㈠崟");
+                cmbSourceBillType.Items.Add("宸ュ簭姹囨姤鍗�");
+                cmbSourceBillType.Items.Add("宸ュ簭娴佽浆鍗�");
+                cmbSourceBillType.Items.Add("閫�璐ч�氱煡鍗�");
+                cmbSourceBillType.Items.Add("鍏朵粬鍏ュ簱鍗�");
+                cmbSourceBillType.Items.Add("鐩存帴璋冩嫧鍗�");
+                cmbSourceBillType.Items.Add("閲囪喘閫�鏂欏崟");
+                cmbSourceBillType.Items.Add("鐢熶骇閫�鏂欏崟");
+                cmbSourceBillType.Items.Add("缁勮鎷嗗嵏鍗�");
+            }
             //
             DBUtility.Xt_BaseBillFun.Sub_ClearBill(gbUp);
             //
@@ -577,23 +591,16 @@
         //鍗曟嵁瀹屾暣鎬у垽鏂�          鏈畬鎴�
         private bool Sub_AllowSave()
         {
-            ////蹇呰緭椤圭洰鏄惁涓虹┖
-            //if (txtHDeptID.Tag.ToString().Trim() == "0")
-            //{
-            //    MessageBox.Show("鐢熶骇杞﹂棿娌℃湁閫夋嫨锛�", "鎻愮ず");
-            //    return false;
-            //}
-            //if (txtHGroupID.Tag.ToString().Trim() == "0")
-            //{
-            //    MessageBox.Show("鐝粍娌℃湁閫夋嫨锛�", "鎻愮ず");
-            //    return false;
-            //}
-            //鍗曟嵁鍙锋槸鍚﹂噸澶�
-            //if (BillNew.IsExistBillNo(ref ClsPub.sExeReturnInfo, txtHBillNo.Text.Trim(), BillStatus, BillOld.omodel.HInterID))
-            //{
-            //    MessageBox.Show("鍗曟嵁鍙烽噸澶嶏紒", "鎻愮ず");
-            //    return false;
-            //}
+            //绯荤粺鍙傛暟锛屾湁婧愬崟鐢熸垚鏉$爜锛岀敓鎴愭潯鐮佹暟閲忓彲鍚﹁秴婧愬崟鏁伴噺鎺у埗锛圢涓轰笉鍙秴婧愬崟鏁伴噺锛�
+            if (SourceQtyCtl=="N")
+            {
+                //绯荤粺鍙傛暟涓轰笉鍙秴婧愬崟鏁伴噺鏃讹紝鍐嶆鍒ゆ柇鐢ㄦ埛鏉冮檺鏄惁鍙秴婧愬崟鏁伴噺
+                //鍒ゆ柇鏉冮檺
+                if (ClsPub.Security_Log(ModRightNameSourceQty, 3, false, ClsPub.CurUserName))
+                {
+                    SourceQtyCtl = "Y";
+                }
+            }
             //鏄庣粏琛ㄦ槸鍚︿负闆惰
             bool b = false;
             for (int i = 0; i < grdMain.RowCount; i++)
@@ -754,6 +761,8 @@
             int k = 0;
             Int64 n = 0;                  //鍚屼竴鎵圭敓鎴愭潯鐮佷腑鐨勭鍑犳潯
             string sTMNumber = "";      //鏉$爜鑷畾涔夊墠缂�
+            string sSourceBillNo = "";       //婧愬崟鍙�
+            string sSourceEntryID = "";       //琛屽彿锛堟簮鍗曞瓙ID锛�
             DataSet Ds;
             //Ds = oCn.RunProcReturn("exec GetLSH '" + ClsPub.GetServerDate(0) + "'", "GetLSH");
             //LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]);
@@ -815,6 +824,23 @@
                             Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
                             //oCn.RunProc("exec h_p_WMS_SetMaxNo '" + sTMNumber + "'");
                             LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                        }
+                        else if (CampanyName == "涓帶")
+                        {
+                            sSourceBillNo = DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HBillNoCol].Value);
+                            sSourceEntryID = DBUtility.ClsPub.isStrNull(grdMain.Rows[j].Cells[HSubIDCol].Value);
+                            if (sSourceBillNo == "")
+                            {
+                                //鏉$爜鍓嶇紑 = 缁勭粐浠g爜 + 鐗╂枡浠g爜 + 骞� + 鏈� + 鏃�
+                                sTMNumber = HOrgNumber + HNumber + sYear + sPeriod + sDay;
+                                Ds = oCn.RunProcReturn("exec h_p_WMS_GetMaxNo '" + sTMNumber + "'", "h_p_WMS_GetMaxNo");    //鑾峰彇鏈�澶ф祦姘村彿
+                                LSH = ClsPub.isLong(Ds.Tables[0].Rows[0][0]);
+                            }
+                            else
+                            {
+                                //鏉$爜 = 婧愬崟鍗曞彿 + 鐗╂枡ID + 琛屽彿
+                                sTMNumber = sSourceBillNo + HNumber + sSourceEntryID;
+                            }
                         }
                         else  //閫氱敤鏂规硶
                         {
@@ -924,6 +950,8 @@
                         return;
                     }
 
+                    Int64 HBQty2 = 0;              //绠辨暟
+                    HBQty2 =ClsPub.isLong(grdMain.Rows[j].Cells[HBQtyCol].Value);
                     HBQty = HBQty + ClsPub.isLong(grdMain.Rows[j].Cells[HBQtyCol].Value);
                     HMinQty = ClsPub.isDoule(grdMain.Rows[j].Cells[HMinQtyCol].Value);
                     HSumQty = ClsPub.isDoule(grdMain.Rows[j].Cells[HQtyCol].Value);
@@ -957,8 +985,30 @@
                         }
                         if (cmbHBarCodeType.Text == "鍞竴鏉$爜")
                         {
-                            //鏉$爜缂栧彿 = 鏉$爜鍓嶇紑 + 娴佹按鍙�
-                            TM = sTMNumber + LSH2;
+                            if (CampanyName == "涓帶")
+                            {
+                                if (sSourceBillNo == "")
+                                {
+                                    //鏉$爜缂栧彿 = 鏉$爜鍓嶇紑 + 娴佹按鍙�
+                                    TM = sTMNumber + LSH2;
+                                }
+                                else
+                                {
+                                    if (HBQty2 > 1)
+                                    {
+                                        MessageBox.Show("鐢熶骇姹囨姤鍗曘�佹敹鏂欓�氱煡鍗曠敓鎴愭潯鐮佹椂锛岀鏁颁笉鑳藉ぇ浜�1锛�");
+                                        bc.Enabled = true;
+                                        return;
+                                    }
+                                    //鏉$爜缂栧彿 = 鏉$爜鍓嶇紑
+                                    TM = sTMNumber;
+                                }
+                            }
+                            else
+                            {
+                                //鏉$爜缂栧彿 = 鏉$爜鍓嶇紑 + 娴佹按鍙�
+                                TM = sTMNumber + LSH2;
+                            }
                         }
                         else if (cmbHBarCodeType.Text == "搴忓垪鐮�")
                         {
@@ -2060,6 +2110,11 @@
                                             grdMain.Rows[sRow].Cells[HUnitNumberCol].Value = "";
                                             grdMain.Rows[sRow].Cells[HUnitNameCol].Value = "";
                                         }
+                                        if (CampanyName == "涓帶")
+                                        {
+                                            grdMain.Rows[sRow].Cells[HQtyCol].Value = oMater.omodel.HQtyMin;
+                                            grdMain.Rows[sRow].Cells[HBQtyCol].Value = 1;
+                                        }
                                         oEdit.Text = oMater.omodel.HNumber;
                                     }
                                     else
@@ -2393,7 +2448,7 @@
                     grdMain.Rows.Add();
                     grdMain.Rows[i].Cells[HTagCol].Value = "*";
                     //寰楀埌淇℃伅
-                    Ds = oCn.RunProcReturn("select * from h_v_IF_POStockInList where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_POStockInList");
+                    Ds = oCn.RunProcReturn("select * from h_v_IF_POStockInBillList_Source where hmainid=" + oSelectRow.BillMainID + " and hsubid=" + oSelectRow.BillSubID, "h_v_IF_POStockInBillList_Source");
                     //鍐欏叆淇℃伅
                     Sub_WriteInForm1(Ds.Tables[0], i);
                 }
@@ -2477,7 +2532,7 @@
                     //鍐欏叆淇℃伅
                     Sub_WriteInForm1(Ds.Tables[0], i);
                 }
-                //鐢熶骇姹囨姤鍗�
+                //宸ュ簭姹囨姤鍗�
                 if (oSelectRow.BillType == "3714")
                 {
                     grdMain.Rows.Add();
@@ -2561,6 +2616,11 @@
             {
                 grdMain.Rows[i].Cells[HMinQtyCol].Value = oTable.Rows[0]["鏈�灏忓寘瑁呮暟"].ToString();
             }
+            grdMain.Rows[i].Cells[HProduceDateCol].Value = oTable.Rows[0]["HProduceDate"].ToString();
+            grdMain.Rows[i].Cells[HExpiryDateCol].Value = oTable.Rows[0]["HExpiryDate"].ToString();
+            grdMain.Rows[i].Cells[HISKFPERIODCol].Value = oTable.Rows[0]["HISKFPERIOD"].ToString();
+            grdMain.Rows[i].Cells[HEXPUNITCol].Value = oTable.Rows[0]["HEXPUNIT"].ToString();
+            grdMain.Rows[i].Cells[HEXPPERIODCol].Value = oTable.Rows[0]["HEXPPERIOD"].ToString();
             //--
             //璁剧疆鍙紪杈戝垪
             string sAllowCol = HQtyCol.ToString() +
@@ -2611,6 +2671,11 @@
             grdMain.Rows[i].Cells[HUnitNameCol].Value = oTable.Rows[0]["璁¢噺鍗曚綅"].ToString();
             grdMain.Rows[i].Cells[HRemarkCol].Value = oTable.Rows[0]["澶囨敞"].ToString();
             grdMain.Rows[i].Cells[HMTONoCol].Value = oTable.Rows[0]["璁″垝璺熻釜鍙�"].ToString();
+            grdMain.Rows[i].Cells[HProduceDateCol].Value = oTable.Rows[0]["鐢熶骇鏃ユ湡"].ToString();
+            grdMain.Rows[i].Cells[HExpiryDateCol].Value = oTable.Rows[0]["鏈夋晥鏈熻嚦"].ToString();
+            grdMain.Rows[i].Cells[HISKFPERIODCol].Value = oTable.Rows[0]["HISKFPERIOD"].ToString();
+            grdMain.Rows[i].Cells[HEXPUNITCol].Value = oTable.Rows[0]["HEXPUNIT"].ToString();
+            grdMain.Rows[i].Cells[HEXPPERIODCol].Value = oTable.Rows[0]["HEXPPERIOD"].ToString();
             if (cmbHBarCodeType.Text == "浠櫒澶栬喘浠舵潯鐮佸鍣ㄨ鍒�")
             {
                 grdMain.Rows[i].Cells[HMinQtyCol].Value = ClsPub.isDoule(oTable.Rows[0]["鏈敓鎴愭潯鐮佹暟閲�"]);
@@ -2621,7 +2686,14 @@
             }
             else
             {
-                grdMain.Rows[i].Cells[HMinQtyCol].Value = oTable.Rows[0]["鏈�灏忓寘瑁呮暟"].ToString();
+                if (CampanyName == "涓帶")
+                {
+                    grdMain.Rows[i].Cells[HMinQtyCol].Value = ClsPub.isDoule(oTable.Rows[0]["鏈敓鎴愭潯鐮佹暟閲�"]);
+                }
+                else
+                {
+                    grdMain.Rows[i].Cells[HMinQtyCol].Value = oTable.Rows[0]["鏈�灏忓寘瑁呮暟"].ToString();
+                }
             }
             grdMain.Rows[i].Cells[HMakerCol].Value = ClsPub.CurUserName;
             if (cmbSourceBillType.Text.Trim() == "鏀舵枡閫氱煡鍗�"|| cmbSourceBillType.Text.Trim() == "閲囪喘璁㈠崟"
@@ -2722,6 +2794,10 @@
             grdMain.Rows[i].Cells[HISKFPERIODCol].Value = oTable.Rows[0]["HISKFPERIOD"].ToString();
             grdMain.Rows[i].Cells[HEXPUNITCol].Value = oTable.Rows[0]["HEXPUNIT"].ToString();
             grdMain.Rows[i].Cells[HEXPPERIODCol].Value = oTable.Rows[0]["HEXPPERIOD"].ToString();
+            if (CampanyName == "涓帶")
+            {
+                grdMain.Rows[i].Cells[HMinQtyCol].Value = ClsPub.isDoule(oTable.Rows[0]["鏁伴噺"]);
+            }
             //--
             //璁剧疆鍙紪杈戝垪
             string sAllowCol = HQtyCol.ToString() +
@@ -3613,11 +3689,20 @@
             }
             else
             {
-                cmbHBarCodeType.Items.Clear();
-                cmbHBarCodeType.Items.Add("鍞竴鏉$爜");
-                cmbHBarCodeType.Items.Add("鍝佺鏉$爜");
-                cmbHBarCodeType.Items.Add("鎵规鏉$爜");
-                this.cmbHBarCodeType.SelectedIndex = 0;
+                if (CampanyName == "涓帶")
+                {
+                    cmbHBarCodeType.Items.Clear();
+                    cmbHBarCodeType.Items.Add("鍞竴鏉$爜");
+                    this.cmbHBarCodeType.SelectedIndex = 0;
+                }
+                else
+                {
+                    cmbHBarCodeType.Items.Clear();
+                    cmbHBarCodeType.Items.Add("鍞竴鏉$爜");
+                    cmbHBarCodeType.Items.Add("鍝佺鏉$爜");
+                    cmbHBarCodeType.Items.Add("鎵规鏉$爜");
+                    this.cmbHBarCodeType.SelectedIndex = 0;
+                }
             }
         }
     }

--
Gitblit v1.9.1