using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using Newtonsoft.Json.Linq;
using Pub_Class;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Models;
namespace WebAPI.Controllers
{
    /// 
    /// 工资报表菜单各模块接口
    ///  
    public class Pay_ReportController : ApiController
    {
        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
        private json objJsonResult = new json();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        DataSet ds;
        #region [职员明细列表]
        [Route("Pay_EmpDet/list")]
        [HttpGet]
        public object PayEmpDetList(string HBDate, string HEDate, string HBENumber, string HEENumber, string HBMNumber, string HEMNumber, string HBPNumber, string HEPNumber)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_EmpWorkQtyEntryReport '" + HBDate + "','" + HEDate + "','" + HBENumber + "','" + HEENumber + "','" + HBMNumber + "','" + HEMNumber + "','" + HBPNumber + "','" + HEPNumber + "'", "h_p_Pay_EmpWorkQtyEntryReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
                //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(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("Pay_Department/list")]
        [HttpGet]
        public object PayDepartment(int HYear,int HPeriod,int DeptID)
        {
            List columnNameList = new List();
            try
            {
                   ds = oCN.RunProcReturn("exec h_p_Pay_PayMentDeptSendList '" + HYear + "','" + HPeriod + "','" + DeptID + "'", "h_p_Pay_PayMentDeptSendList");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_DepYearAnalyze/list")]
        [HttpGet]
        public object PayDepYearAnalyze(string DeptID,string EDeptID,int Year)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_PayMentDeptYearReport '" + DeptID + "','" + EDeptID + "','" + Year + "'", "h_p_PayMentDeptYearReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_Wages/list")]
        [HttpGet]
        public object PayWages(int HYear, int HPeriod, int DeptID)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_PayMentSendList '" + HYear + "','" + HPeriod + "','" + DeptID + "'", "h_p_Pay_PayMentSendList");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_YearReport/list")]
        [HttpGet]
        public object PayYearReport(string DeptID, string EDeptID, int Year)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_PayMentYearReport '" + DeptID + "','" + EDeptID + "','" + Year + "'", "h_p_PayMentYearReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_Attendance/list")]
        [HttpGet]
        public object PayAttendance(int HYear,int HPeriod, int DeptID, string HStatus,string HType)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_WorkTimesList '" + HYear + "','" + HPeriod + "','" + DeptID + "','" + HStatus + "','" + HType+ "'", "h_p_Pay_WorkTimesList");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_ByThePiece_SumAna/list")]
        [HttpGet]
        public object PayByThePieceSum(int HYear,int HPeriod,string DeptNumber, string DeptNumber2, string GroupNumber, string GroupNumber2)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_EmpPayMentSumReport '" + HYear + "','" + HPeriod + "','" + DeptNumber + "','" + DeptNumber2 + "','" + GroupNumber + "','" + GroupNumber2 + "'", "h_p_Pay_EmpPayMentSumReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_ByTheTime_Detail/list")]
        [HttpGet]
        public object PayByTheTimeDetail(string HBDate, string HEDate, string HBDeptNumber, string HEDeptNumber, string HBEmpNumber, string HEEmpNumber)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_WorkTimesPayMentEntryReport '" + HBDate + "','" + HEDate + "','" + HBDeptNumber + "','" + HEDeptNumber + "','" + HBEmpNumber + "','" + HEEmpNumber + "'", "h_p_Pay_WorkTimesPayMentEntryReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_ByTheTime_Sum/list")]
        [HttpGet]
        public object PayByTheTimeSum(string HBDate, string HEDate, string HBDeptNumber, string HEDeptNumber, string HBEmpNumber, string HEEmpNumber)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_WorkTimesPayMentSumReport '" + HBDate + "','" + HEDate + "','" + HBDeptNumber + "','" + HEDeptNumber + "','" + HBEmpNumber + "','" + HEEmpNumber + "'", "h_p_Pay_WorkTimesPayMentSumReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_ByThePiece_Detail/list")]
        [HttpGet]
        public object PayByThePieceDetail(string HBDate, string HEDate, string HBDeptNumber, string HEDeptNumber, string HBEmpNumber, string HEEmpNumber)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_SingleBalBillEntryReport '" + HBDate + "','" + HEDate + "','" + HBDeptNumber + "','" + HEDeptNumber + "','" + HBEmpNumber + "','" + HEEmpNumber + "'", "h_p_Pay_SingleBalBillEntryReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_ByThePiece_Sum/list")]
        [HttpGet]
        public object PayByThePieceSum(string HBDate, string HEDate, string HBDeptNumber, string HEDeptNumber, string HBEmpNumber, string HEEmpNumber)
        {
            List columnNameList = new List();
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Pay_SingleBalBillSumReport '" + HBDate + "','" + HEDate + "','" + HBDeptNumber + "','" + HEDeptNumber + "','" + HBEmpNumber + "','" + HEEmpNumber + "'", "h_p_Pay_SingleBalBillSumReport");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                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("Pay_PaymentPieceSumReport/list")]
        [HttpGet]
        public object Pay_PaymentPieceSumReport(int HYear, int HPeriod, int DeptID, string user)
        {
            List columnNameList = new List();
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Pay_PaymentPieceSumReport", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限查看!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("exec h_p_Pay_PaymentPieceSumReport '" + HYear + "','" + HPeriod + "','" + DeptID + "'", "h_p_Pay_PaymentPieceSumReport");
                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 = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [车间计时工资汇总]
        [Route("Pay_PaymentTimeSumReport/list")]
        [HttpGet]
        public object Pay_PaymentTimeSumReport(int HYear, int HPeriod, int DeptID,int HEmpID,string user)
        {
            List columnNameList = new List();
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Pay_PaymentTimeSumReport", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限查看!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("exec h_p_Pay_PaymentTimeSumReport '" + HYear + "', '" + HPeriod + "','" + DeptID + "','" + HEmpID + "'", "h_p_Pay_PaymentTimeSumReport");
                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 = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [工资月报表]
        [Route("Pay_PaymentMonthSumReport/list")]
        [HttpGet]
        public object Pay_PaymentMonthSumReport(int HYear, int HPeriod, int DeptID,int HGroupID,int HEmpID, string user)
        {
            List columnNameList = new List();
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Pay_PaymentMonthSumReport", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限查看!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("exec h_p_Pay_PaymentMonthSumReport '" + HYear + "','" + HPeriod + "','" + DeptID + "','" + HGroupID + "','" + HEmpID + "'", "h_p_Pay_PaymentMonthSumReport");
                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 = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [工资汇总]
        [Route("Pay_PayWorkShopSumReport/list")]
        [HttpGet]
        public object Pay_PayWorkShopSumReport(int HYear, int HPeriod, int DeptID,int HEmpID, string user)
        {
            List columnNameList = new List();
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Pay_PayWorkShopSumReport", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限查看!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("exec h_p_Pay_PayWorkShopSumReport '" + HYear + "','" + HPeriod + "','" + DeptID + "','" + HEmpID + "'", "h_p_Pay_PayWorkShopSumReport");
                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 = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [每日工资确认]
        [Route("Pay_PaymentDayCheckReport/list")]
        [HttpGet]
        public object Pay_PaymentDayCheckReport(int HYear, int HPeriod, int DeptID,int HGroupID, int HEmpID, string user)
        {
            List columnNameList = new List();
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Pay_PaymentDayCheckReport", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限查看!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("exec h_p_Pay_PaymentDayCheckReport '" + HYear + "','" + HPeriod + "','" + DeptID + "','" + HGroupID + "','" + HEmpID + "'", "h_p_Pay_PaymentDayCheckReport");
                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 = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [系统计件报表]
        [Route("Pay_PaymentEntryReport/list")]
        [HttpGet]
        public object Pay_PaymentEntryReport(string sWhere, string user)
        {
            List columnNameList = new List();
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Pay_PaymentEntryReport", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限查看!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("exec h_p_Pay_PaymentEntryReport" + sWhere, "h_p_Pay_PaymentEntryReport");
                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 = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
        #region [工资报表--金蝶取值]
        [Route("Pay_PayrollReportByKD/list")]
        [HttpGet]
        public object Pay_PayrollReportByKD(string sWhere, string user)
        {
            List columnNameList = new List();
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Pay_PayrollReportByKD", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限查看!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere == "")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询条件!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                Dictionary dic = Newtonsoft.Json.JsonConvert.DeserializeObject>(sWhere);
                string HBeginDate = dic["HBeginDate"].ToString();
                string HEndDate = dic["HEndDate"].ToString();
                int HDeptID = int.Parse(dic["HDeptID"].ToString());
                string HGroupName = dic["HGroupName"].ToString();
                string HMaterNumber = dic["HMaterNumber"].ToString();
                string HMaterName = dic["HMaterName"].ToString();
                string HMaterModel = dic["HMaterModel"].ToString();
                ds = oCN.RunProcReturn("exec h_p_KD_PayrollReport '" + HBeginDate + "','" + HEndDate + "'," + HDeptID + ",'" + HGroupName + "','" + HMaterNumber + "','" + HMaterName + "','" + HMaterModel + "'", "h_p_KD_PayrollReport");
                //ds = oCN.RunProcReturn("select * from h_v_KD_PayrollReport where 1 = 1 " + sWhere, "h_v_KD_PayrollReport");
                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 = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion+
    }
}