From 23dbc5b616dfa1a2bcb1fa4302637b8df701f43c Mon Sep 17 00:00:00 2001
From: yxj <yxj@hz-kingdee.com>
Date: 星期四, 24 四月 2025 13:27:12 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/MateOutController.cs |  971 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 938 insertions(+), 33 deletions(-)

diff --git a/WebAPI/Controllers/MateOutController.cs b/WebAPI/Controllers/MateOutController.cs
index ccbc998..6c21da1 100644
--- a/WebAPI/Controllers/MateOutController.cs
+++ b/WebAPI/Controllers/MateOutController.cs
@@ -10,10 +10,12 @@
 using System.Linq;
 using System.Net;
 using System.Net.Http;
+using System.Text.RegularExpressions;
 using System.Web;
 using System.Web.Http;
 using WebAPI;
 using WebAPI.Code;
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
 using WebAPI.Models;
 using static WebAPI.Controllers.鍩虹璧勬枡.鍩虹璧勬枡.Gy_DutyBillController;
 
@@ -547,6 +549,9 @@
                 websLsmain.HBillNo = lsmain[0].HBillNo;
                 websLsmain.HDeptID = lsmain[0].HDeptID;
                 websLsmain.HEmpID = lsmain[0].HEmpID;
+                websLsmain.HKeeperID = lsmain[0].HKeeperID;
+                websLsmain.HSecManagerID = lsmain[0].HSecManagerID;
+                websLsmain.HBillerID = lsmain[0].HBillerID;
                 websLsmain.HRemark = lsmain[0].HRemark;
                 websLsmain.HMaker = lsmain[0].HMaker;
                 websLsmain.HBillType = "1204";//鍥哄畾鍊�
@@ -1347,10 +1352,19 @@
         #region 鐧藉澂鍙戝竷姹囨�绘姤琛�
         [Route("MaterOutSumReport/MaterOutSumReport_Cloth")]
         [HttpGet]
-        public object MaterOutSumReport_Cloth(string sWhere)
+        public object MaterOutSumReport_Cloth(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_MaterOutSumReport_Cloth", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
                 MaterOutSumReport com = JsonConvert.DeserializeObject<MaterOutSumReport>(sWhere.ToString());
 
@@ -1414,10 +1428,19 @@
         #region  鐧藉澂鍙戝竷鏄庣粏鎶ヨ〃
         [Route("MaterOutEntryReport/MaterOutEntryReport_Cloth")]
         [HttpGet]
-        public object MaterOutEntryReport_Cloth(string sWhere)
+        public object MaterOutEntryReport_Cloth(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_MaterOutEntryReport_Cloth", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
                 MaterOutSumReport com = JsonConvert.DeserializeObject<MaterOutSumReport>(sWhere.ToString());
 
@@ -1477,10 +1500,19 @@
         #region 鏌撳巶姹囨�绘姤琛�
         [Route("ProdProcessSumReport/ProdProcessSumReport_DyeColor")]
         [HttpGet]
-        public object ProdProcessSumReport_DyeColor(string sWhere)
+        public object ProdProcessSumReport_DyeColor(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_ProdProcessSumReport_DyeColor", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
                 MaterOutSumReport com = JsonConvert.DeserializeObject<MaterOutSumReport>(sWhere.ToString());
 
@@ -1533,10 +1565,19 @@
         #region 鏌撳巶鏄庣粏鎶ヨ〃
         [Route("ProdProcessEntryReport/ProdProcessEntryReport_DyeColor")]
         [HttpGet]
-        public object ProdProcessEntryReport_DyeColor(string sWhere,string sProcessNo)
+        public object ProdProcessEntryReport_DyeColor(string sWhere,string sProcessNo,string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_ProdProcessEntryReport_DyeColor", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
                 MaterOutSumReport com = JsonConvert.DeserializeObject<MaterOutSumReport>(sWhere.ToString());
 
@@ -1582,10 +1623,19 @@
         #region 鏌撳巶浜ч噺鎶ヨ〃
         [Route("ProdProcessSumReport/ProdProcessSumReport_DyeColor_third")]
         [HttpGet]
-        public object ProdProcessSumReport_DyeColor_third(string sWhere)
+        public object ProdProcessSumReport_DyeColor_third(string sWhere,string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_ProdProcessSumReport_DyeColor_third", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 //鍙嶅簭鍒楀寲浼犻�掔殑鍊�
                 MaterOutSumReport com = JsonConvert.DeserializeObject<MaterOutSumReport>(sWhere.ToString());
 
@@ -1594,7 +1644,8 @@
                     "and (浜у搧浠g爜=''" + com.HMaterNumber + "'' or ''" + com.HMaterNumber + "''='''') " +
                     "and (鐢熶骇璁㈠崟鍙�=''" + com.HBillNo + "'' or ''" + com.HBillNo + "''='''') " +
                     "and (浜у搧鍚嶇О=''" + com.HProductName + "'' or ''" + com.HProductName + "''='''') " +
-                    "and (浜у搧瑙勬牸=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch;
+                    "and (浜у搧瑙勬牸=''" + com.HProductModel + "'' or ''" + com.HProductModel + "''='''') " + com.RandomSearch +
+                    " " + com.OtherSearch; ;
 
                 ds = oCN.RunProcReturn($"exec h_p_Kf_ProdProcessSumReport_DyeColor_third '{sql}'", "h_p_Kf_ProdProcessSumReport_DyeColor_third");
 
@@ -1629,10 +1680,19 @@
         #region 鐑樺共瀹氬瀷鍑虹珯
         [Route("ProdProcessSumReport/Kf_DryFinalizeOutReport")]
         [HttpGet]
-        public object Kf_DryFinalizeOutReport(string sWhere)
+        public object Kf_DryFinalizeOutReport(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_DryFinalizeOutReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 ds = oCN.RunProcReturn($"select * from h_v_Kf_DryFinalizeOutReport where 1=1 "+sWhere, "h_v_Kf_DryFinalizeOutReport");
 
                 //鑾峰彇鍒楀悕
@@ -1666,10 +1726,19 @@
         #region 涓婃祮瀹氬瀷鍑虹珯
         [Route("ProdProcessSumReport/Kf_SizingFinalizeOutReport")]
         [HttpGet]
-        public object Kf_SizingFinalizeOutReport(string sWhere)
+        public object Kf_SizingFinalizeOutReport(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_SizingFinalizeOutReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 ds = oCN.RunProcReturn($"select * from h_v_Kf_SizingFinalizeOutReport where 1=1 " + sWhere, "h_v_Kf_SizingFinalizeOutReport");
 
                 //鑾峰彇鍒楀悕
@@ -1703,10 +1772,19 @@
         #region 鍒锋瘺鍑虹珯
         [Route("ProdProcessSumReport/Kf_BrushingOutReport")]
         [HttpGet]
-        public object Kf_BrushingOutReport(string sWhere)
+        public object Kf_BrushingOutReport(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_BrushingOutReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 ds = oCN.RunProcReturn($"select * from h_v_Kf_BrushingOutReport where 1=1 " + sWhere, "h_v_Kf_BrushingOutReport");
 
                 //鑾峰彇鍒楀悕
@@ -1740,10 +1818,19 @@
         #region 鑹插澂鐑厜鍑虹珯
         [Route("ProdProcessSumReport/Kf_ColorBlankLustringOutReport")]
         [HttpGet]
-        public object Kf_ColorBlankLustringOutReport(string sWhere)
+        public object Kf_ColorBlankLustringOutReport(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_ColorBlankLustringOutReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 ds = oCN.RunProcReturn($"select * from h_v_Kf_ColorBlankLustringOutReport where 1=1 " + sWhere, "h_v_Kf_ColorBlankLustringOutReport");
 
                 //鑾峰彇鍒楀悕
@@ -1778,46 +1865,55 @@
         #region 鍘嬫按鍑虹珯  姣涘皷鍑虹珯
         [Route("ProdProcessSumReport/Kf_PressurizedWaterOutReport")]
         [HttpGet]
-        public object Kf_PressurizedWaterOutReport(string sWhere,string HBillType)
+        public object Kf_PressurizedWaterOutReport(string sWhere,string HBillType,string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log(HBillType, 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 switch (HBillType)
                 {
-                    case "Kf_PressurizedWaterOutReport":
+                    case "Kf_PressurizedWaterOutReport"://姣涘皷 鍘嬫按鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_PressurizedWaterOutReport where 1=1 " + sWhere, "h_v_Kf_PressurizedWaterOutReport");
                         break;
-                    case "Kf_HairtipReport":
+                    case "Kf_HairtipReport"://姣涘皷 姣涘皷鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_HairtipReport where 1=1 " + sWhere, "h_v_Kf_HairtipReport");
                         break;
-                    case "Kf_DigitalSprayPaintingReport":
+                    case "Kf_DigitalSprayPaintingReport"://姣涘皷 鏁扮爜鍠疯姳鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_DigitalSprayPaintingReport where 1=1 " + sWhere, "h_v_Kf_DigitalSprayPaintingReport");
                         break;
-                    case "Kf_ShrinkBrushReport":
+                    case "Kf_ShrinkBrushReport"://鍚庢暣浜屽彿 缂╁埛鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_ShrinkBrushReport where 1=1 " + sWhere, "h_v_Kf_ShrinkBrushReport");
                         break;
-                    case "Kf_FinalizeTheDesignOutReport":
+                    case "Kf_FinalizeTheDesignOutReport"://鍚庢暣浜屽彿 瀹氬瀷鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_FinalizeTheDesignOutReport where 1=1 " + sWhere, "h_v_Kf_FinalizeTheDesignOutReport");
                         break;
-                    case "Kf_LustringOutReport":
+                    case "Kf_LustringOutReport"://鍚庢暣浜屽彿 鐑厜鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_LustringOutReport where 1=1 " + sWhere, "h_v_Kf_LustringOutReport");
                         break;
-                    case "Kf_ShrinkBrushOutReport":
+                    case "Kf_ShrinkBrushOutReport"://鍚庢暣涓�鍙� 缂╁埛鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_ShrinkBrushOutReport where 1=1 " + sWhere, "h_v_Kf_ShrinkBrushOutReport");
                         break;
-                    case "Kf_FinalizeOutReport":
+                    case "Kf_FinalizeOutReport"://鍚庢暣涓�鍙� 瀹氬瀷鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_FinalizeOutReport where 1=1 " + sWhere, "h_v_Kf_FinalizeOutReport");
                         break;
-                    case "Kf_LustringReport":
+                    case "Kf_LustringReport"://鍚庢暣涓�鍙� 鐑厜鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_LustringReport where 1=1 " + sWhere, "h_v_Kf_LustringReport");
                         break;
-                    case "Kf_ShrinkBrushTeReport":
+                    case "Kf_ShrinkBrushTeReport"://鐗规暣 缂╁埛鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_ShrinkBrushTeReport where 1=1 " + sWhere, "h_v_Kf_ShrinkBrushTeReport");
                         break;
-                    case "Kf_EmbossingOutReport":
+                    case "Kf_EmbossingOutReport"://鐗规暣 鍘嬭姳鍑虹珯
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_EmbossingOutReport where 1=1 " + sWhere, "h_v_Kf_EmbossingOutReport");
                         break;
-                    case "Kf_StereoscopicFlowerOutReport":
+                    case "Kf_StereoscopicFlowerOutReport"://鐗规暣 绔嬩綋鑺卞瀷鏈哄嚭绔�
                         ds = oCN.RunProcReturn($"select * from h_v_Kf_StereoscopicFlowerOutReport where 1=1 " + sWhere, "h_v_Kf_StereoscopicFlowerOutReport");
                         break;
                 }
@@ -1851,6 +1947,67 @@
         }
         #endregion
 
+        #region 鍘嬫按鏈嚭绔欐姤琛� 鏌ヨ
+        /// <summary>
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Kf_PressurizedWaterNoOutReport/list")]
+        [HttpGet]
+        public object GetKf_PressurizedWaterNoOutReport(string sWhere, string user, string userid)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                ////鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Kf_PressurizedWaterNoOutReport_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
+                //鏌ヨ
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    string sql = "exec h_p_Kf_PressurizedWaterNoOutReport '','" + userid + "'";
+                    ds = oCN.RunProcReturn(sql, "h_p_Kf_PressurizedWaterNoOutReport");
+                }
+                else
+                {
+                    string sql = "exec h_p_Kf_PressurizedWaterNoOutReport  '" + sWhere + "','" + userid + "'";
+                    ds = oCN.RunProcReturn(sql, "h_p_Kf_PressurizedWaterNoOutReport");
+                }
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region 棰嗘枡缁熻鎶ヨ〃
         /// <summary>
         /// 棰嗘枡缁熻鎶ヨ〃
@@ -1858,10 +2015,19 @@
         /// <returns></returns>
         [Route("MateOutController/GetKf_MateOutSumReport_QiaoYi_Json")]
         [HttpGet]
-        public object GetKf_MateOutSumReport_QiaoYi_Json(string sWhere)
+        public object GetKf_MateOutSumReport_QiaoYi_Json(string sWhere, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Kf_MateOutSumReport_QiaoYi", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 ds = oCN.RunProcReturn("exec h_p_Kf_MateOutSumReport_QiaoYi " + sWhere, "h_p_Kf_MateOutSumReport_QiaoYi");
                 if (ds == null || ds.Tables[0].Rows.Count == 0)
                 {
@@ -1906,10 +2072,20 @@
         #region  (鐢熶骇璁㈠崟缁村害)瀹㈡埛璁㈠崟鎶ヨ〃
         [Route("MaterOutEntryReport/sc_ICOMReportList")]
         [HttpGet]
-        public object sc_ICOMReportList(string sWhere,string HBeginDate,string HEndDate)
+        public object sc_ICOMReportList(string sWhere,string HBeginDate,string HEndDate, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("sc_ICOMReportList", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
                 string sql = "exec h_p_sc_ICOMReport '"+ sWhere + "','"+ HBeginDate + "','"+ HEndDate + "'";
 
                 ds = oCN.RunProcReturn(sql, "h_p_sc_ICOMReport");
@@ -1985,13 +2161,72 @@
         }
         #endregion
 
-        #region  鐢熶骇鍏ュ簱鎶ヨ〃
-        [Route("MaterOutEntryReport/sc_ICOMRKReport")]
+        #region  娴佽浆鍗℃湭鍏ュ簱鎶ヨ〃
+        [Route("MaterOutEntryReport/Sc_ProcExchangeNoInReport")]
         [HttpGet]
-        public object sc_ICOMRKReport(string sWhere)
+        public object Sc_ProcExchangeNoInReport(string sWhere, string HBeginDate, string HEndDate, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Sc_ProcExchangeNoInReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string sql = "exec h_p_Sc_ProcExchangeNoInReport '" + sWhere + "','" + HBeginDate + "','" + HEndDate + "'";
+
+                ds = oCN.RunProcReturn(sql, "h_p_Sc_ProcExchangeNoInReport");
+
+                DataTable dt = ds.Tables[0];
+
+                //鑾峰彇鍒楀悕
+                List<object> columnNameList = new List<object>();
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = dt;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region  鐢熶骇鍏ュ簱鎶ヨ〃
+        [Route("MaterOutEntryReport/sc_ICOMRKReport")]
+        [HttpGet]
+        public object sc_ICOMRKReport(string sWhere, string user)
+        {
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("sc_ICOMRKReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 string sql = "select * from  h_v_sc_ICOMRKReport where 1=1  " + sWhere + " order by 鏃ユ湡 ";
 
                 ds = oCN.RunProcReturn(sql, "h_v_sc_ICOMRKReport");
@@ -2013,6 +2248,67 @@
                 objJsonResult.Message = "Sucess锛�";
                 objJsonResult.list = columnNameList;
                 objJsonResult.data = dt;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 涓嶈壇鍘熷洜鍒嗘瀽鎶ヨ〃
+        /// <summary>
+        /// 杩斿洖涓嶈壇鍘熷洜鍒嗘瀽鎶ヨ〃鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Sc_BadReasonReport/list")]
+        [HttpGet]
+        public object list(string sWhere, string user,string HGroupID)
+        {
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_BadReasonReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> columnNameList = new List<object>();
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "璇烽�夋嫨鏈夋晥骞翠唤";
+                    return objJsonResult;
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("exec h_p_Sc_BadReasonReport '" + sWhere + "','" + HGroupID + "'", "h_p_Sc_BadReasonReport");
+                }
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
                 return objJsonResult;
             }
             catch (Exception e)
@@ -2075,17 +2371,28 @@
             public string HCustomerName { get; set; }
             public string HProductName { get; set; }
             public string HOtherSearch { get; set; }
+            public string HEmpName { get; set; }
+            public string sWheres { get; set; }
         }
         [Route("MaterOutEntryReport/SC_DayRkReport")]
         [HttpGet]
-        public object SC_DayRkReport(string sWhere,int num)
+        public object SC_DayRkReport(string sWhere,int num, string user)
         {
             try
             {
-               DayRkReport DayRkReportList = JsonConvert.DeserializeObject<DayRkReport>(sWhere);
+                if (!DBUtility.ClsPub.Security_Log("SC_DayRkReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                DayRkReport DayRkReportList = JsonConvert.DeserializeObject<DayRkReport>(sWhere);
 
                 string sql = $"exec h_p_Gy_DayRkReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" +
-                    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}','{DayRkReportList.HOtherSearch}'";
+                    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}','{DayRkReportList.HOtherSearch}','{DayRkReportList.HEmpName}','{DayRkReportList.sWheres}'";
                 //string sql = $"exec h_p_Gy_DayRkReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" +
                 //    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}'";
 
@@ -2154,10 +2461,19 @@
         }
         [Route("MaterOutEntryReport/SemiFinishedProductsReportList")]
         [HttpGet]
-        public object SemiFinishedProductsReportList(string sWhere, int num)
+        public object SemiFinishedProductsReportList(string sWhere, int num, string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("SemiFinishedProductsReportList", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 SemiFinishedProductsReport DayRkReportList = JsonConvert.DeserializeObject<SemiFinishedProductsReport>(sWhere);
 
                 string sql = $"exec h_p_sc_SemiFinishedProductsReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" +
@@ -2295,10 +2611,18 @@
         #region  宸ュ巶鏃ュ巻鏌ヨ
         [Route("MaterOutEntryReport/Sc_ShopCalendar")]
         [HttpGet]
-        public object Sc_ShopCalendar(string sWhere)
+        public object Sc_ShopCalendar(string sWhere,string user)
         {
             try
             {
+                if (!DBUtility.ClsPub.Security_Log("Gy_PlanShifts_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡璇㈡潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
                 string sql1 = string.Format("select * from h_v_Gy_PlanShiftsList where 1=1 " + sWhere);
 
                 ds = oCN.RunProcReturn(sql1, "h_v_Gy_PlanShiftsList");
@@ -2412,6 +2736,587 @@
         }
         #endregion
 
+        #region  宸ュ巶鏃ュ巻鎵规敼涓婄彮宸ユ椂
+        [Route("Gy_PlanShifts/BulkWorkTime")]
+        [HttpGet]
+        public object BulkWorkTime(string HSourceNumber1, string HSourceNumber2, string HBeginDate, string HEndDate,string HWorkTime)
+        {
+            try
+            {               
+                oCN.BeginTran();
+
+                string sql = $"update a set HOverTimes = {HWorkTime} from Gy_PlanShifts a left join Gy_Source b on a.HSourceID = b.HItemID where b.HNumber between '{HSourceNumber1}' and '{HSourceNumber2}' and CONVERT(varchar(120),a.HDate,23) between CONVERT(varchar(120),'{HBeginDate}',23) and CONVERT(varchar(120),'{HEndDate}',23)";
+
+                //鎵ц鏇存柊涓婄彮宸ユ椂璇彞
+                oCN.RunProc(sql);
+
+                oCN.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎵规敼鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 宸ュ巶鏃ュ巻 鏂囦欢涓婁紶
+        [Route("Gy_PlanShifts/Gy_PlanShifts_Excel")]
+        [HttpPost]
+        public object Gy_PlanShifts_Excel()
+        {
+            try
+            {
+                //var WorkBookName = HttpContext.Current.Request["WorkBookName"];
+                //DBUtility.ClsPub.HOrgID = long.Parse(HttpContext.Current.Request["HOrgID"]);
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HSourceID", typeof(Int32));//鐢熶骇璧勬簮ID
+
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    //濡傛灉琛ㄦ牸绗琲琛岀殑绗竴鍒椾负绌猴紝鍒欏垽鏂负杩欎竴琛岀殑鏁版嵁涓虹┖锛岃烦鍑哄惊鐜苟涓斾笉鎶婃暟鎹啓鍏� tb2
+                    if (ExcelDs.Tables[0].Rows[i][0].ToString() == "")
+                    {
+                        continue;
+                    }
+                    else
+                    {
+                        tb2.Rows.Add(row);
+                    }
+                }
+
+
+                var error = "";
+
+                //鏌ヨ宸ヨ壓璺嚎娌℃湁鐨勫垪
+                if (!tb2.Columns.Contains("缁勭粐缂栫爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囩紪鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囥�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐢熶骇璧勬簮浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮敓浜ц祫婧愪唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鐢熶骇璧勬簮"))
+                    error += "娌℃湁鎵惧埌銆愮敓浜ц祫婧愩�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鏃ユ湡"))
+                    error += "娌℃湁鎵惧埌銆愭棩鏈熴�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ユ椂"))
+                    error += "娌℃湁鎵惧埌銆愬伐鏃躲�戠殑鏍囬,";
+
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HSourceNumer = "";
+                    string HSourceName = "";
+                    string HDate = "";
+                    string HOverTimes = "";
+
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐缂栫爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐"].ToString());
+                    HSourceNumer = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐢熶骇璧勬簮浠g爜"].ToString());
+                    HSourceName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鐢熶骇璧勬簮"].ToString());
+                    HDate = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鏃ユ湡"].ToString());
+                    HOverTimes = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["宸ユ椂"].ToString());
+
+                    //妫�鏌ョ墿鏂�
+                    int index = i + 1;
+
+                    if (HORGNumber != "")
+                    {
+
+
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString();
+
+
+                        //鏌ヨ鐢熶骇璧勬簮
+                        ds = oCN.RunProcReturn("select * from Gy_Source where  HNumber='" + HSourceNumer + "'  and HUSEORGID=" + HORGid + "", "Gy_Department");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,鐢熶骇璧勬簮:" + HSourceName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HSourceID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+
+                        //鏃ユ湡
+                        if (HDate == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,鏃ユ湡涓虹┖锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }else if(!Regex.IsMatch(HDate, @"^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$"))
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,鏃ユ湡涓嶄负鈥測yyy-MM-dd鈥濇牸寮忥紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        //宸ユ椂
+                        if (HOverTimes == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,宸ユ椂涓虹┖锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        //else if (!Regex.IsMatch(HWorkTime, @"/^\d+(\.\d+)?$/"))
+                        //{
+                        //    objJsonResult.code = "0";
+                        //    objJsonResult.count = 0;
+                        //    objJsonResult.Message = "绗�" + index + "琛�,宸ユ椂涓嶄负闈炶礋鏁版牸寮忥紒";
+                        //    objJsonResult.data = null;
+                        //    return objJsonResult;
+                        //}
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 宸ュ巶鏃ュ巻 瀵煎叆(淇濆瓨)
+        [Route("Gy_PlanShifts/Gy_PlanShifts_btnSave")]
+        [HttpPost]
+        public object Gy_PlanShifts_btnSave([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { "&鍜�" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Gy_PlanShifts_Edit", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HSourceID = item["HSourceID"].ToString();//鐢熶骇璧勬簮ID
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string HDate = item["鏃ユ湡"].ToString();
+                    string HOverTimes = item["宸ユ椂"].ToString();
+
+                    ds = oCN.RunProcReturn("select * from Gy_PlanShifts where HSourceID=" + HSourceID + " and convert(varchar(100),HDate,23)='" + HDate + "'", "Gy_PlanShifts");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        string sql = "insert into Gy_PlanShifts(HDate,HSourceID,HShiftsID,HOverTimes,HClassCount,HRemark,HUseFlag) " +
+                            "values(" +
+                            "'" + HDate + "'" +
+                            "," + HSourceID + "" +
+                            ",0" +
+                            "," + HOverTimes + "" +
+                            ",1" +
+                            ",''" +
+                            ",''" + 
+                            ")";
+
+                        //涓昏〃
+                        oCN.RunProc(sql);
+                    }
+                    else
+                    {
+                        oCN.RunProc("update Gy_PlanShifts set HOverTimes = " + HOverTimes + " where HSourceID=" + HSourceID + " and convert(varchar(100),HDate,23)='" + HDate + "'");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region  鍒舵垚鐜囨槑缁嗘姤琛�
+        [Route("MaterOutEntryReport/Sc_ProductedRateReport")]
+        [HttpGet]
+        public object Sc_ProductedRateReport(string HBeginDate,string HEndDate,string sWhere,double HRate_BeyondICMOQty, string user)
+        {
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_ProductedRateReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string sql = "exec h_p_Sc_ProductedRateReport '" + HBeginDate + "','" + HEndDate + "','" + sWhere + "'," + HRate_BeyondICMOQty;
+
+                ds = oCN.RunProcReturn(sql, "h_p_Sc_ProductedRateReport");
+
+                DataTable dt = ds.Tables[0];
+
+                //鑾峰彇鍒楀悕
+                List<object> columnNameList = new List<object>();
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = ds.Tables;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region  婊炵暀鏃堕棿鎶ヨ〃
+        [Route("MaterOutEntryReport/Sc_RetentionTimeReport")]
+        [HttpGet]
+        public object Sc_RetentionTimeReport(string HBeginDate,string HEndDate,string sWhere, string user)
+        {
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_RetentionTimeReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string sql = "exec h_p_Sc_RetentionTimeReport '" + HBeginDate + "','" + HEndDate + "','" + sWhere + "'";
+
+                ds = oCN.RunProcReturn(sql, "h_p_Sc_RetentionTimeReport");
+
+                DataTable dt = ds.Tables[0];
+
+                //鑾峰彇鍒楀悕
+                List<object> columnNameList = new List<object>();
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = ds.Tables;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region  閿�鍞环鏍煎姣旀姤琛�
+        [Route("MaterOutEntryReport/Sc_CompareOrderToSelloutReport")]
+        [HttpGet]
+        public object Sc_CompareOrderToSelloutReport(string HBeginDate, string HEndDate, string sWhere, string user)
+        {
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Sc_CompareOrderToSelloutReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string sql = "exec h_p_Sc_CompareOrderToSelloutReport '" + HBeginDate + "','" + HEndDate + "','" + sWhere + "'";
+
+                ds = oCN.RunProcReturn(sql, "h_p_Sc_CompareOrderToSelloutReport");
+
+                DataTable dt = ds.Tables[0];
+
+                //鑾峰彇鍒楀悕
+                List<object> columnNameList = new List<object>();
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = ds.Tables;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 閿�鍞帓鍚嶆姤琛�
+        [Route("MaterOutEntryReport/Xs_SellOutMoneyRangeReport")]
+        [HttpGet]
+        public object Xs_SellOutMoneyRangeReport(string sWhere, string user)
+        {
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Xs_SellOutMoneyRangeReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> columnNameList = new List<object>();
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "璇烽�夋嫨鏈夋晥骞翠唤";
+                    return objJsonResult;
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("exec h_p_Xs_SellOutMoneyRangeReport '" + sWhere + "'", "h_p_Xs_SellOutMoneyRangeReport");
+                }
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region  閿�鍞鍗曟潯鐮佸嚭鍏ュ簱璇︽儏
+        [Route("MaterOutEntryReport/Xs_SeOrderBarCodeInAndOutStockDetailReport")]
+        [HttpGet]
+        public object Xs_SeOrderBarCodeInAndOutStockDetailReport(string sWhere, string user)
+        {
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Xs_SeOrderBarCodeInAndOutStockDetailReport", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string sql = "select * from h_v_Xs_SeOrderBarCodeInAndOutStockDetailReport_Query where 1=1 " + sWhere;
+                ds = oCN.RunProcReturn(sql, "h_v_Xs_SeOrderBarCodeInAndOutStockDetailReport_Query");
+
+                DataTable dt = ds.Tables[0];
+
+                //鑾峰彇鍒楀悕
+                List<object> columnNameList = new List<object>();
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.list = columnNameList;
+                objJsonResult.data = ds.Tables;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
         #endregion
 
     }

--
Gitblit v1.9.1