From a0e7ad65f78935d8b4818f063f6974db567d199d Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期四, 26 十一月 2020 16:40:11 +0800
Subject: [PATCH] 测试问题项更改

---
 src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs |   91 ++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 81 insertions(+), 10 deletions(-)

diff --git a/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs b/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs
index 4b2e832..b02119b 100644
--- a/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs
+++ b/src/BLL/Demo.BillView/PRD/ProCompleteAnalysisMateriel.cs
@@ -1,8 +1,11 @@
 锘縰sing Kingdee.BOS.App.Data;
 using Kingdee.BOS.Core.DynamicForm;
 using Kingdee.BOS.Core.DynamicForm.PlugIn;
+using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
+
 using Kingdee.BOS.Core.Metadata.EntityElement;
 using Kingdee.BOS.Orm.DataEntity;
+using Kingdee.BOS.ServiceHelper;
 using Kingdee.BOS.Util;
 using System;
 using System.Collections.Generic;
@@ -18,26 +21,84 @@
     [HotUpdate]
     public class ProCompleteAnalysisMateriel : AbstractDynamicFormPlugIn
     {
+        bool did = false;
+
         public override void OnLoad(EventArgs e)
         {
             base.OnLoad(e);
 
-            string FHMainICMOInterIDr = this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr").ToString();//涓荤敓浜ц鍗曚富鍐呯爜
-            //string FBillNo = this.View.OpenParameter.GetCustomParameter("FBillNo").ToString();
-            string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a  
+            if (this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr") == null)
+            {
+                SearchList();
+            }
+            else
+            {
+                if (did)
+                    return;
+                string FHMainICMOInterIDr = this.View.OpenParameter.GetCustomParameter("FHMainICMOInterIDr").ToString();//涓荤敓浜ц鍗曚富鍐呯爜
+                                                                                                                        //string FBillNo = this.View.OpenParameter.GetCustomParameter("FBillNo").ToString();
+                string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a  
                                         left join T_PRD_MO b on a.FHMainICMOInterIDr=b.FID
                                         where FHMainICMOInterIDr ='{0}' ", FHMainICMOInterIDr);
-            DataTable dt = DBUtils.ExecuteDataSet(this.Context, sql).Tables[0];
+                DataTable dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0];
+                if (dt.Rows.Count > 0)
+                {
+                    for (int i = 0; i < dt.Rows.Count; i++)
+                    {
+                        /*
+                        璁″垝鍙戞枡鏁伴噺 = 璁″垝鎬绘暟閲� * 鍗曚綅鐢ㄦ枡
+                        榻愬鏁伴噺 = 榻愬鏁� * 鍗曚綅鐢ㄦ枡锛堣�冭檻鍒嗗眰绾�* 鐖剁骇锛�
+                        缂烘枡鏁伴噺 = 1 - 2
+                        鏄惁榻愬 = 缂烘枡 < 0 ?
+                        */
+                        decimal FPlanIssueCount = Convert.ToDecimal(dt.Rows[i]["FSumPlanCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//璁″垝鍙戞枡鏁伴噺
+                        decimal FCompleteCount = Convert.ToDecimal(dt.Rows[i]["FCompleteCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//榻愬鏁伴噺
+
+                        decimal FLackCount = FPlanIssueCount - FCompleteCount;//缂烘枡鏁伴噺
+                        this.Model.CreateNewEntryRow("FEntity");
+                        this.Model.SetValue("FSEQ", i + 1, i);//搴忓彿
+                        this.Model.SetValue("FMateralDetailId", dt.Rows[i]["FHMATERID"], i);
+                        this.Model.SetValue("FScOrderNoDetail", dt.Rows[i]["FBILLNOs"], i);//鐢熶骇璁㈠崟鍙�
+                        this.Model.SetValue("FOccupyCount", FCompleteCount, i);//     
+                        this.Model.SetValue("FCurrentCount", dt.Rows[i]["FHStockQty"], i);//褰撳墠搴撳瓨鎯呭喌  
+                    }
+                }
+
+                did = true;
+
+            }
+
+
+        }
+
+        /// <summary>
+        /// 鏌ヨ浜嬩欢
+        /// </summary>
+        public void SearchList()
+        {
+            string sqlwhere = " where 1=1";
+            string sql = string.Format(@"/*dialect*/select a.*,b.FBILLNO FBILLNOs from JIT_MOMaterReadysBill a  
+                                        left join T_PRD_MO b on a.FHMainICMOInterIDr=b.FID
+                                         ");
+
+            //鐢熶骇璁㈠崟鍙�
+            string PRDBillNo = Convert.ToString(this.Model.GetValue("FScOrderNo"));
+            if (!string.IsNullOrEmpty(PRDBillNo))
+                sqlwhere += $" and FPRDBillNo='{PRDBillNo}'";
+
+            sql += sqlwhere;
+            DataTable dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0];
+            this.Model.DeleteEntryData("FEntity");
             if (dt.Rows.Count > 0)
             {
                 for (int i = 0; i < dt.Rows.Count; i++)
                 {
                     /*
-                    璁″垝鍙戞枡鏁伴噺 = 璁″垝鎬绘暟閲� * 鍗曚綅鐢ㄦ枡
-                    榻愬鏁伴噺 = 榻愬鏁� * 鍗曚綅鐢ㄦ枡锛堣�冭檻鍒嗗眰绾�* 鐖剁骇锛�
-                    缂烘枡鏁伴噺 = 1 - 2
-                    鏄惁榻愬 = 缂烘枡 < 0 ?
-                    */
+                        璁″垝鍙戞枡鏁伴噺 = 璁″垝鎬绘暟閲� * 鍗曚綅鐢ㄦ枡
+                        榻愬鏁伴噺 = 榻愬鏁� * 鍗曚綅鐢ㄦ枡锛堣�冭檻鍒嗗眰绾�* 鐖剁骇锛�
+                        缂烘枡鏁伴噺 = 1 - 2
+                        鏄惁榻愬 = 缂烘枡 < 0 ?
+                        */
                     decimal FPlanIssueCount = Convert.ToDecimal(dt.Rows[i]["FSumPlanCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//璁″垝鍙戞枡鏁伴噺
                     decimal FCompleteCount = Convert.ToDecimal(dt.Rows[i]["FCompleteCount"]) * Convert.ToDecimal(dt.Rows[i]["FUNITDOSAGE"]);//榻愬鏁伴噺
 
@@ -50,9 +111,19 @@
                     this.Model.SetValue("FCurrentCount", dt.Rows[i]["FHStockQty"], i);//褰撳墠搴撳瓨鎯呭喌  
                 }
             }
+            this.View.UpdateView();
+
+            did = true;
         }
 
 
-
+        public override void BarItemClick(BarItemClickEventArgs e)
+        {
+            base.BarItemClick(e);
+            if (e.BarItemKey.ToUpper() == "TBFILTER")
+            {
+                SearchList();
+            }
+        }
     }
 }

--
Gitblit v1.9.1