WebAPI/Controllers/MateOutController.cs
@@ -547,6 +547,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,27 +1350,36 @@
        #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());
                //string sql = "" +
                //    "( (日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                //    "and (产品代码=''" + 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 +
                //    " " + com.OtherSearch;
                string sql = "" +
                    "( (日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                    "and (产品代码=''" + 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;
                //string sql = "" +
                //    "( (日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                //    "and (产品代码=''" + 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;
                ds = oCN.RunProcReturn($"exec h_p_Kf_MaterOutSumReport_Cloth_New '{sql}'" , "h_p_Kf_MaterOutSumReport_Cloth_New");
@@ -1414,10 +1426,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,27 +1498,36 @@
        #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());
                //string sql = "" +
                //    "( (生产订单日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                //    "and (产品代码=''" + 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 +
                //    " " + com.OtherSearch;
                string sql = "" +
                    "( (生产订单日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                    "and (产品代码=''" + 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;
                //string sql = "" +
                //    "( (生产订单日期 between ''" + com.HBeginDate + "'' and ''" + com.HEndDate + "'') or (''" + com.HBeginDate + "'' = '''' and ''" + com.HEndDate + "''='''') ) " +
                //    "and (产品代码=''" + 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;
                ds = oCN.RunProcReturn($"exec h_p_Kf_ProdProcessSumReport_DyeColor '{sql}'", "h_p_Kf_ProdProcessSumReport_DyeColor");
@@ -1533,10 +1563,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 +1621,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 +1642,8 @@
                    "and (产品代码=''" + 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 +1678,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 +1724,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 +1770,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 +1816,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 +1863,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 +1945,67 @@
        }
        #endregion
        #region 压水未出站报表 查询
        /// <summary>
        ///参数:string 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));//获取到DataColumn列对象的列名
                }
                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 +2013,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 +2070,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 +2159,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));//获取到DataColumn列对象的列名
                }
                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 +2246,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>
        /// 返回不良原因分析报表列表
        ///参数:string 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));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
@@ -2075,19 +2369,30 @@
            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;
                }
                //string sql = $"exec h_p_Gy_DayRkReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" +
                //    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}','{DayRkReportList.HOtherSearch}'";
                DayRkReport DayRkReportList = JsonConvert.DeserializeObject<DayRkReport>(sWhere);
                string sql = $"exec h_p_Gy_DayRkReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" +
                    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}'";
                    $",'{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}'";
                ds = oCN.RunProcReturn(sql, "h_p_Gy_DayRkReport");
@@ -2154,16 +2459,25 @@
        }
        [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}'" +
                //    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}','{DayRkReportList.HOtherSearch}'";
                string sql = $"exec h_p_sc_SemiFinishedProductsReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" +
                    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}'";
                    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}','{DayRkReportList.HOtherSearch}'";
                //string sql = $"exec h_p_sc_SemiFinishedProductsReport '{DayRkReportList.HBeginDate}','{DayRkReportList.HEndDate}','{DayRkReportList.HMaterNumber}'" +
                //    $",'{DayRkReportList.HProductName}','{DayRkReportList.HCustomerName}'";
                ds = oCN.RunProcReturn(sql, "h_p_Gy_DayRkReport");
                DataTable dt = null;
@@ -2412,6 +2726,293 @@
        }
        #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("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));//获取到DataColumn列对象的列名
                }
                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));//获取到DataColumn列对象的列名
                }
                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));//获取到DataColumn列对象的列名
                }
                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));//获取到DataColumn列对象的列名
                }
                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));//获取到DataColumn列对象的列名
                }
                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
    }