1
yangle
昨天 6d0bfe2160e06a4502dc3052c43fab9813341db3
WebAPI/Controllers/ReportFromController.cs
@@ -8,6 +8,7 @@
using System.Net.Http;
using System.Web.Http;
using WebAPI.Models;
using WebAPI.DbUntil;
namespace WebAPI.Controllers
{
@@ -24,7 +25,7 @@
        [HttpGet]
        public object ReportFrom(int page,int limit,string sWhere)
        {
            List<string> columnNameList = new List<string>();
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
@@ -39,16 +40,18 @@
                    sWhere = " where 1=1" + sWhere;
                }
               
                count = new SQLHelper.ClsCN().RunProcReturn("select HItemID,HNumber 物料编码,HName 物料名称,HRemark 说明,HUseFlag 使用状态,HBirthDay 生日  from Gy_Employee " + sWhere, "Gy_Employee").Tables[0].Rows.Count;
                string sql = string.Format(@"select top " + pageSize + " HItemID,HNumber 物料编码,HName 物料名称,HRemark 说明,HUseFlag 使用状态,HBirthDay 生日 from(select row_number() over (order by HBirthDay desc) as RowNumber,HItemID,HNumber,HName ,HRemark,HUseFlag,HBirthDay from Gy_Employee " + sWhere + ")   as A where RowNumber >" + pageSize + " *(" + pageNum + "-1)");
                count = new SQLHelper.ClsCN().RunProcReturn("select HItemID,HNumber 编码,HName 姓名,HRemark 说明,HUseFlag 使用状态,HBirthDay 生日  from Gy_Employee " + sWhere, "Gy_Employee").Tables[0].Rows.Count;
                string sql = string.Format(@"select top " + pageSize + " HItemID,HNumber 编码,HName 姓名,HRemark 说明,HUseFlag 使用状态,HBirthDay 生日 from(select row_number() over (order by HBirthDay desc) as RowNumber,HItemID,HNumber,HName ,HRemark,HUseFlag,HBirthDay from Gy_Employee " + sWhere + ")   as A where RowNumber >" + pageSize + " *(" + pageNum + "-1)");
                ds=new SQLHelper.ClsCN().RunProcReturn(sql, "h_v_IF_ICMOBillList_Table");
                string aa = ds.Tables[0].Columns[0].ToString();
                
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    columnNameList.Add(col.ColumnName);//获取到DataColumn列对象的列名
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                //JsonConvert.SerializeObject(ds.Tables[0], Formatting.Indented, new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd" })
    
                if (ds.Tables[0].Rows.Count > 0)
                {
@@ -81,5 +84,446 @@
            return objJsonResult;
        }
        #endregion
        #region [动态列表2]
        [Route("Sc_MESReportFrom/ReportFromBillList2")]
        [HttpGet]
        public object ReportFromBillList2(string sWhere)
        {
            try
            {
                string sql = "select HItemID,HNumber 代码,HName 名称 from Gy_Process where 1 = 1 " + sWhere;
                ds = new SQLHelper.ClsCN().RunProcReturn(sql, "Gy_Employee");
                if (ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = DataFormatUntil.BackRowCount(sql, "Gy_Employee");
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.list = DataFormatUntil.BackColTitle(ds);
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "false!";
                    objJsonResult.data = null;
                    objJsonResult.list = DataFormatUntil.BackColTitle(ds);
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = null;
            }
            return objJsonResult;
        }
        #endregion
        #region [器具即时库存明细报表列表]
        [Route("Sc_MESReportFrom/ReportMouldStockBillList")]
        [HttpGet]
        public object ReportMouldStockBillList(int page, int limit, string HDate,string HNumber,string HBarCode,string HSupName)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                ds = oCN.RunProcReturn("exec h_p_Mes_ReportMouldStock '" + HDate + "','" + HNumber + "','" + HBarCode + "','" + HSupName + "',"+pageSize+","+pageNum+"", "h_p_Mes_ReportMouldStock");
                string aa = ds.Tables[0].Columns[0].ToString();
                foreach (DataColumn col in ds.Tables[4].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                //if (ds.Tables[4].Rows.Count > 0)
                //{
                objJsonResult.code = "1";
                objJsonResult.count = ds.Tables[3].Rows.Count;
                objJsonResult.Message = "获取资源绑定数据成功!";
                objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[4], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                objJsonResult.list = columnNameList;
                return objJsonResult;
                //}
                //else
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "暂无资源绑定!";
                //    objJsonResult.data = null;
                //    objJsonResult.list = columnNameList;
                //    return objJsonResult;
                //}
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [器具即时库存汇总报表列表]
        [Route("Sc_MESReportFrom/ReportMouldStockBillSumList")]
        [HttpGet]
        public object ReportMouldStockBillSumList(int page, int limit, string HDate, string HNumber, string HSupName)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                ds = oCN.RunProcReturn("exec h_p_Mes_ReportMouldStockSum '" + HDate + "','" + HNumber + "','" + HSupName + "'," + pageSize + "," + pageNum + "", "h_p_Mes_ReportMouldStockSum");
                string aa = ds.Tables[0].Columns[0].ToString();
                foreach (DataColumn col in ds.Tables[4].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                if (ds.Tables[4].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = ds.Tables[3].Rows.Count;
                    objJsonResult.Message = "获取资源绑定数据成功!";
                    objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[4], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "暂无资源绑定!";
                    objJsonResult.data = null;
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [器具库存台账明细报表列表]
        [Route("Sc_MESReportFrom/ReportInventoryAccountBillList")]
        [HttpGet]
        public object ReportInventoryAccountBillList(int page, int limit, string HStartDate, string HEndDate,string HSupName)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                ds = oCN.RunProcReturn("exec h_p_Mes_ReportInventoryAccount '" + HStartDate + "','" + HEndDate + "','" + HSupName + "'," + pageSize + "," + pageNum + "", "h_p_Mes_ReportInventoryAccount");
                string aa = ds.Tables[0].Columns[0].ToString();
                foreach (DataColumn col in ds.Tables[1].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                //if (ds.Tables[1].Rows.Count > 0)
                //{
                objJsonResult.code = "1";
                objJsonResult.count = ds.Tables[0].Rows.Count;
                objJsonResult.Message = "获取资源绑定数据成功!";
                objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[1], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                objJsonResult.list = columnNameList;
                return objJsonResult;
                //}
                //else
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "暂无资源绑定!";
                //    objJsonResult.data = null;
                //    objJsonResult.list = columnNameList;
                //    return objJsonResult;
                //}
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [器具收发料明细报表列表]
        [Route("Sc_MESReportFrom/ReportMaterialReceiptBillList")]
        [HttpGet]
        public object ReportMaterialReceiptBillList(int page, int limit, string HStartDate,string HEndDate, string HNumber, string HBarCode, string HSupName)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                ds = oCN.RunProcReturn("exec h_p_Mes_ReportMaterialReceipt '" + HStartDate + "','" + HEndDate + "','" + HNumber + "','" + HBarCode + "','" + HSupName + "'," + pageSize + "," + pageNum + "", "h_p_Mes_ReportMaterialReceipt");
                string aa = ds.Tables[0].Columns[0].ToString();
                foreach (DataColumn col in ds.Tables[1].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                if (ds.Tables[1].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = ds.Tables[0].Rows.Count;
                    objJsonResult.Message = "获取资源绑定数据成功!";
                    objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[1], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无数据!";
                    objJsonResult.data = null;
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [器具收发料汇总报表列表]
        [Route("Sc_MESReportFrom/ReportMaterialReceiptBillSumList")]
        [HttpGet]
        public object ReportMaterialReceiptBillSumList(int page, int limit, string HStartDate, string HEndDate, string HNumber, string HSupName)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                ds = oCN.RunProcReturn("exec h_p_Mes_ReportMaterialReceiptSum '" + HStartDate + "','" + HEndDate + "','" + HNumber + "','" + HSupName + "'," + pageSize + "," + pageNum + "", "h_p_Mes_ReportMaterialReceiptSum");
                string aa = ds.Tables[0].Columns[0].ToString();
                foreach (DataColumn col in ds.Tables[1].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                //if (ds.Tables[1].Rows.Count > 0)
                //{
                objJsonResult.code = "1";
                objJsonResult.count = ds.Tables[0].Rows.Count;
                objJsonResult.Message = "获取资源绑定数据成功!";
                objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[1], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                objJsonResult.list = columnNameList;
                return objJsonResult;
                //}
                //else
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "无数据!";
                //    objJsonResult.data = null;
                //    objJsonResult.list = columnNameList;
                //    return objJsonResult;
                //}
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [器具可用数据表报表列表明细]
        [Route("Sc_MESReportFrom/Get_MouldAvailableListToSub")]
        [HttpGet]
        public object Get_MouldAvailableListToSub(int page, int limit, string HNumber, string HBarCode)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                ds = oCN.RunProcReturn("exec h_p_Sc_MouldAvailableListToSub '" + HNumber + "','" + HBarCode + "'," + pageSize + "," + pageNum + "", "h_p_Sc_MouldAvailableListToSub");
                string aa = ds.Tables[0].Columns[0].ToString();
                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列对象的列名
                }
                //if (ds.Tables[4].Rows.Count > 0)
                //{
                objJsonResult.code = "1";
                objJsonResult.count = ds.Tables[0].Rows.Count;
                objJsonResult.Message = "查询成功!";
                objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[0], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                objJsonResult.list = columnNameList;
                return objJsonResult;
                //}
                //else
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "暂无资源绑定!";
                //    objJsonResult.data = null;
                //    objJsonResult.list = columnNameList;
                //    return objJsonResult;
                //}
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [器具即时库存汇总报表列表]
        [Route("Sc_MESReportFrom/Get_MouldAvailableListToSum")]
        [HttpGet]
        public object Get_MouldAvailableListToSum(int page, int limit, string HNumber)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                int count = 0;
                int pageNum = page;
                int pageSize = limit;
                ds = oCN.RunProcReturn("exec h_p_Sc_MouldAvailableListToSum '" + HNumber + "'," + pageSize + "," + pageNum + "", "h_p_Sc_MouldAvailableListToSum");
                string aa = ds.Tables[0].Columns[0].ToString();
                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列对象的列名
                }
                if (ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = ds.Tables[0].Rows.Count;
                    objJsonResult.Message = "查询成功!";
                    objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[0], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "暂无资源绑定!";
                    objJsonResult.data = null;
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
    }
}