From 56c8fc4b7fbea1a69fefd888a9fec076ec1c6edd Mon Sep 17 00:00:00 2001
From: black-goat-me <226547893@qq.com>
Date: 星期四, 20 四月 2023 14:56:08 +0800
Subject: [PATCH] 配套表、发料清单添加工序工价列。 声明方法SubAddProcSalaryColumn()为配套表、发料清单的数据源添加工序工价列。 在位数据源赋值前调用该方法。

---
 WorkM/报表分析/Sc_ICMOWorkCompleteSet.cs |  108 ++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 93 insertions(+), 15 deletions(-)

diff --git "a/WorkM/\346\212\245\350\241\250\345\210\206\346\236\220/Sc_ICMOWorkCompleteSet.cs" "b/WorkM/\346\212\245\350\241\250\345\210\206\346\236\220/Sc_ICMOWorkCompleteSet.cs"
index 1b9a969..638179b 100644
--- "a/WorkM/\346\212\245\350\241\250\345\210\206\346\236\220/Sc_ICMOWorkCompleteSet.cs"
+++ "b/WorkM/\346\212\245\350\241\250\345\210\206\346\236\220/Sc_ICMOWorkCompleteSet.cs"
@@ -54,7 +54,7 @@
             //oDlg.ShowDialog();
             //if (oDlg.IsOk == 1)
             //{
-                timer1.Enabled = true;
+            timer1.Enabled = true;
             //}
             Sub_PrintRecord(1);
         }
@@ -142,14 +142,14 @@
                 Report.PrintPreview(false);
             }
         }
-       
+
         #endregion
 
         #region 鐣岄潰澶勭悊
         //鍒濆鍖栬〃澶存樉绀�
         private void initHeadCaption()
         {
-           
+
         }
 
         private bool Fun_AllowQuery()//瀹℃牳鏌ヨ鏉′欢
@@ -173,7 +173,7 @@
             long HEmpID = 0;
             long HProcID = 0;
             //鏄剧ず鎶ヨ〃澶� 鏍囬
-            
+
             //鍋滄GRID鍒锋柊 鍔犲揩閫熷害
             //
             string[] sNumber = txtHMaterNumber.Text.Split(',');
@@ -194,7 +194,7 @@
             string sDlgWhere = "";
 
             sDlgWhere = "'" + txtHICMOInterID.Text.Trim() + "'";
-            if (chkHSupFlag.Checked==true)
+            if (chkHSupFlag.Checked == true)
             {
                 sDlgWhere = sDlgWhere + ",-1 ";
             }
@@ -213,7 +213,7 @@
             }
 
             sDlgWhere = sDlgWhere + ",'" + sNewMaterNumber + "'";
-            if(sDlgWhere == "")
+            if (sDlgWhere == "")
             {
                 sDlgWhere = "_";
             }
@@ -223,7 +223,7 @@
             //    sDlgWhere = sDlgWhere.Substring(1, sDlgWhere.Length - 1);
             //}
             //
-            DSet = SubCn.RunProcReturn("exec h_p_Sc_ICMOWorkCompleteSet " + sDlgWhere, "Gy_Czygl");
+            DSet = SubCn.RunProcReturn("exec h_p_Sc_ICMOWorkCompleteSet_New " + sDlgWhere, "Gy_Czygl");
             //鐢熸垚棣栬鏍囬
             if (DSet == null)
             {
@@ -231,11 +231,12 @@
                 return;
             }
             //
+            Sub_AddProcSalaryColumn(DSet);
             grdMain.DataSource = DSet.Tables[0].DefaultView;
             grdSub.DataSource = DSet.Tables[1].DefaultView;
             //鑾峰彇鍔ㄦ�佸垪 锛堢墿鏂欎俊鎭級
 
-            
+
             if (DSet.Tables[2].Rows.Count != 0)
             {
                 txtcpNumber.Text = DSet.Tables[2].Rows[0]["鎴愬搧浠g爜"].ToString();
@@ -346,7 +347,7 @@
             //oDlg.ShowDialog();
             //if (oDlg.IsOk == 1)
             //{
-                timer1.Enabled = true;
+            timer1.Enabled = true;
             //}
         }
 
@@ -405,9 +406,9 @@
         {
             BLL.ClsPub_BLL.Sub_ClearText(txtHCenterID);
         }
-        
+
         //閰嶅琛ㄣ�佸彂鏂欐竻鍗曟煡璇㈡椂鏄剧ず鎵撳嵃娆℃暟鍜屾渶鏂版墦鍗拌褰�
-        private void Sub_PrintRecord(int iOperationIndex) 
+        private void Sub_PrintRecord(int iOperationIndex)
         {
             if (iOperationIndex == 1) {              //鏌ヨ鏃舵樉绀烘墦鍗版鏁板拰鎵撳嵃璁板綍
                 ClsCN SubCn = new ClsCN();
@@ -445,17 +446,17 @@
                 //鏇存柊绐楀彛鐨勫睍绀烘暟鎹�
                 if (DSet.Tables[0].Rows.Count != 0)
                 {
-                    lblHPrintTimes.Text = lblHPrintTimes.Text.Substring(0,5) + DSet.Tables[1].Rows[0]["鎵撳嵃娆℃暟"].ToString();
+                    lblHPrintTimes.Text = lblHPrintTimes.Text.Substring(0, 5) + DSet.Tables[1].Rows[0]["鎵撳嵃娆℃暟"].ToString();
                     lblHPrinterName.Text = lblHPrinterName.Text.Substring(0, 4) + DSet.Tables[0].Rows[0]["鎵撳嵃浜�"].ToString();
                     lblHPrintTime.Text = lblHPrintTime.Text.Substring(0, 7) + DSet.Tables[0].Rows[0]["鎵撳嵃鏃堕棿"].ToString();
                 }
                 else
                 {
-                    lblHPrintTimes.Text = lblHPrintTimes.Text.Substring(0, 5)+"0";
+                    lblHPrintTimes.Text = lblHPrintTimes.Text.Substring(0, 5) + "0";
                     lblHPrinterName.Text = lblHPrinterName.Text.Substring(0, 4);
                     lblHPrintTime.Text = lblHPrintTime.Text.Substring(0, 7);
                 }
-            }else if (iOperationIndex == 2)
+            } else if (iOperationIndex == 2)
             {
                 ClsCN SubCn = new ClsCN();
 
@@ -480,7 +481,84 @@
                 SubCn.RunProcReturn("exec h_p_Sc_SavePrintRecord " + sWhere, "Sc_PrintRecord_PtFl");
                 Sub_PrintRecord(1);
             }
-            
+
+        }
+        private void Sub_AddProcSalaryColumn(DataSet DSet)
+        {
+            //宸ュ簭宸ヤ环鍙橀噺
+            string sProcSalary = "";
+            //涓烘暟鎹〃娣诲姞宸ュ簭宸ヤ环鍒�
+            DataColumn oProcSalaryColumnPT = new DataColumn();
+            DataColumn oProcSalaryColumnFL = new DataColumn();
+            oProcSalaryColumnPT.DataType = System.Type.GetType("System.String");
+            oProcSalaryColumnFL.DataType = System.Type.GetType("System.String");
+            oProcSalaryColumnPT.ColumnName = "宸ュ簭宸ヤ环";
+            oProcSalaryColumnFL.ColumnName = "宸ュ簭宸ヤ环";
+            DSet.Tables[0].Columns.Add(oProcSalaryColumnPT);
+            DSet.Tables[1].Columns.Add(oProcSalaryColumnFL);
+           
+            //鎷兼帴閰嶅琛ㄦ垚鍝佷唬鐮佸搴斿伐搴忓伐浠�
+            for (int i = 0; i < DSet.Tables[0].Rows.Count; i++) 
+            {
+                for(int j=0;j<DSet.Tables[3].Rows.Count;j++)
+                {
+                    if(DSet.Tables[1].Rows[i]["鎴愬搧浠g爜"].Equals(DSet.Tables[3].Rows[j]["鐗╂枡浠g爜"]))
+                    {
+                        if(DSet.Tables[3].Rows[j]["涓诲伐搴�"]==null||DSet.Tables[3].Rows[j]["涓诲伐搴�"].Equals(""))
+                        {
+                            sProcSalary = sProcSalary + DSet.Tables[3].Rows[j]["宸ュ簭"] + "锛�";
+                            for(int k = 0; k < DSet.Tables[3].Rows.Count; k++)
+                            {
+                                if(DSet.Tables[3].Rows[j]["宸ュ簭"].Equals(DSet.Tables[3].Rows[k]["涓诲伐搴�"]))
+                                {
+                                    sProcSalary = sProcSalary + DSet.Tables[3].Rows[k]["宸ュ簭"] + "锛�" + DSet.Tables[3].Rows[k]["鍗曚环"] + "锛�"+(double)DSet.Tables[0].Rows[i]["鎬婚渶姹傞噺"]*(double)DSet.Tables[3].Rows[k]["鍗曚环"];
+                                }
+                            }
+                            if(sProcSalary.Split('锛�').Length>1)
+                            {
+                                sProcSalary = sProcSalary + "锛�";
+                            }else
+                            {
+                                sProcSalary = sProcSalary + DSet.Tables[3].Rows[j]["鍗曚环"] + "锛�" + (double)DSet.Tables[0].Rows[i]["鎬婚渶姹傞噺"] * (double)DSet.Tables[3].Rows[j]["鍗曚环"];
+                            }
+                        }
+                    }
+                }
+                DSet.Tables[0].Rows[i]["宸ュ簭宸ヤ环"] = sProcSalary;
+                sProcSalary = "";
+            }
+
+            //鎷兼帴鍙戞枡娓呭崟鎴愬搧浠g爜瀵瑰簲宸ュ簭宸ヤ环
+            for (int i = 0; i < DSet.Tables[1].Rows.Count; i++)
+            {
+                for (int j = 0; j < DSet.Tables[3].Rows.Count; j++)
+                {
+                    if (DSet.Tables[1].Rows[i]["鎴愬搧浠g爜"].Equals(DSet.Tables[3].Rows[j]["鐗╂枡浠g爜"]))
+                    {
+                        if (DSet.Tables[3].Rows[j]["涓诲伐搴�"] == null || DSet.Tables[3].Rows[j]["涓诲伐搴�"].Equals(""))
+                        {
+                            sProcSalary = sProcSalary + DSet.Tables[3].Rows[j]["宸ュ簭"] + "锛�";
+                            for (int k = 0; k < DSet.Tables[3].Rows.Count; k++)
+                            {
+                                if (DSet.Tables[3].Rows[j]["宸ュ簭"].Equals(DSet.Tables[3].Rows[k]["涓诲伐搴�"]))
+                                {
+                                    sProcSalary = sProcSalary + DSet.Tables[3].Rows[k]["宸ュ簭"] + "锛�" + DSet.Tables[3].Rows[k]["鍗曚环"] + "锛�"+ (double)DSet.Tables[0].Rows[i]["鎬婚渶姹傞噺"] * (double)DSet.Tables[3].Rows[k]["鍗曚环"];
+                                }
+                            }
+                            if (sProcSalary.Split('锛�').Length > 1)
+                            {
+                                sProcSalary = sProcSalary + "锛�";
+                            }
+                            else
+                            {
+                                sProcSalary = sProcSalary + DSet.Tables[3].Rows[j]["鍗曚环"] + "锛�"+ (double)DSet.Tables[0].Rows[i]["鎬婚渶姹傞噺"] * (double)DSet.Tables[3].Rows[j]["鍗曚环"];
+                            }
+                        }
+                    }
+                }
+                DSet.Tables[1].Rows[i]["宸ュ簭宸ヤ环"] = sProcSalary;
+                sProcSalary = "";
+            }
         }
         private void label8_Click(object sender, EventArgs e)
         {

--
Gitblit v1.9.1