| using System; | 
| using System.Collections.Generic; | 
| using System.Data; | 
| using System.Linq; | 
| using System.Net; | 
| using System.Net.Http; | 
| using System.Web.Http; | 
| using WebAPI.Models; | 
| using System.Web; | 
| using System.IO; | 
| using SyntacticSugar.constant; | 
| using Newtonsoft.Json; | 
|   | 
| namespace WebAPI.Controllers.基础资料.基础资料 | 
| { | 
|     public class Gy_BarCodeReportController : ApiController | 
|     { | 
|         //获取系统参数 | 
|         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); | 
|         public DBUtility.ClsPub.Enum_BillStatus BillStatus; | 
|         public string sWhere = ""; | 
|         private json objJsonResult = new json(); | 
|         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); | 
|         DataSet ds; | 
|         string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"]; | 
|         // GET: Gy_BarCodeReport | 
|         #region //获取站台号 | 
|   | 
|         [Route("Gy_BarCodeReportController/Get_Stations")] | 
|         [HttpGet] | 
|         public object Get_Stations() | 
|         { | 
|             try | 
|             { | 
|                 DataSet oDs = new DataSet(); | 
|                 //========== | 
|                 oDs = oCN.RunProcReturn("select DISTINCT 检验工序 from h_v_QC_CheckNote_PNL_Temp_List", "h_v_QC_CheckNote_PNL_Temp_List"); | 
|                 objJsonResult.code = "1"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = "获取成功!"; | 
|                 objJsonResult.data = oDs.Tables[0]; | 
|                 return objJsonResult; ; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "删除失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|         #endregion | 
|   | 
|         #region 获取料号 | 
|   | 
|         [Route("Gy_BarCodeReportController/GetMaterialNos")] | 
|         [HttpGet] | 
|         public object GetMaterialNos() | 
|         { | 
|             try | 
|             { | 
|                 DataSet oDs = new DataSet(); | 
|                 //========== | 
|                 oDs = oCN.RunProcReturn("select DISTINCT HLayOutName from Gy_PNLInfo", "Gy_PNLInfo"); | 
|                 objJsonResult.code = "1"; | 
|                 objJsonResult.count = 1; | 
|                 objJsonResult.Message = "获取成功!"; | 
|                 objJsonResult.data = oDs.Tables[0]; | 
|                 return objJsonResult; ; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 objJsonResult.code = "0"; | 
|                 objJsonResult.count = 0; | 
|                 objJsonResult.Message = "删除失败!" + e.ToString(); | 
|                 objJsonResult.data = null; | 
|                 return objJsonResult; | 
|             } | 
|         } | 
|         #endregion | 
|   | 
|   | 
|         #region 表格查询 | 
|         [Route("Gy_BarCodeReportController/GetBadReason_proc")] | 
|         [HttpGet] | 
|         public object GetBadReason_proc(string sWhere, string user) | 
|         { | 
|             try | 
|             { | 
|                 Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere); | 
|   | 
|                 | 
|                 string HBeginDate = dic["HBeginDate"].ToString(); | 
|                 string HEndDate = dic["HEndDate"].ToString(); | 
|                 string Station = dic["Station"].ToString();//站台 | 
|                 string MaterialNo = dic["MaterialNo"].ToString();//料号 | 
|                 string LotNo = dic["LotNo"].ToString();//批次号 | 
|   | 
|                 List<object> columnNameList = new List<object>(); | 
|   | 
|                 ds = oCN.RunProcReturn("exec h_p_QC_BarCodeReasonTable '" + HBeginDate + "','" + HEndDate + "','"  + Station + "','" + MaterialNo + "','" + LotNo + "'", "h_p_QC_BarCodeReasonTable"); | 
|   | 
|                 //if (ds == null || ds.Tables.Count == 0) | 
|                 //{ | 
|                 //    objJsonResult.code = "0"; | 
|                 //    objJsonResult.count = 0; | 
|                 //    objJsonResult.Message = "未查询到数据!"; | 
|                 //    objJsonResult.data = null; | 
|                 //    return objJsonResult; | 
|                 //} | 
|                 //添加列名1 | 
|                 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; | 
|                     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("Gy_BarCodeReportController/GetBadReasonTotal_proc")] | 
|         [HttpGet] | 
|         public object GetBadReasonTotal_proc(string sWhere, string user) | 
|         { | 
|             try | 
|             { | 
|                 Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere); | 
|   | 
|   | 
|                 string HBeginDate = dic["HBeginDate"].ToString(); | 
|                 string HEndDate = dic["HEndDate"].ToString(); | 
|                 string Station = dic["Station"].ToString();//站台 | 
|                 string MaterialNo = dic["MaterialNo"].ToString();//料号 | 
|                 string LotNo = dic["LotNo"].ToString();//批次号 | 
|   | 
|                 List<object> columnNameList = new List<object>(); | 
|   | 
|                 ds = oCN.RunProcReturn("exec h_p_QC_BarCodeReasonTotalReport '" + HBeginDate + "','" + HEndDate + "','" +Station +  "','" + MaterialNo + "','" + LotNo + "'", "h_p_QC_BarCodeBadReasonReport"); | 
|   | 
|                 //添加列名 | 
|                 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 pie图 | 
|         [Route("Gy_BarCodeReportController/GetBadReason_pie")] | 
|         [HttpGet] | 
|         public object GetBadReason_pie(string sWhere, string user) | 
|         { | 
|             try | 
|             { | 
|                 Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere); | 
|   | 
|   | 
|                 string HBeginDate = dic["HBeginDate"].ToString(); | 
|                 string HEndDate = dic["HEndDate"].ToString(); | 
|                 string Station = dic["Station"].ToString();//站台 | 
|                 string MaterialNo = dic["MaterialNo"].ToString();//料号 | 
|                 string LotNo = dic["LotNo"].ToString();//批次号 | 
|   | 
|                 List<object> columnNameList = new List<object>(); | 
|   | 
|                 ds = oCN.RunProcReturn("exec h_p_QC_BarCodeBadReasonReport_pie '" + HBeginDate + "','" + HEndDate + "','" + Station + "','" + MaterialNo + "','" + LotNo + "'", "h_p_QC_BarCodeBadReasonReport_pie"); | 
|   | 
|                 //添加列名 | 
|                 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 | 
|   | 
|   | 
|     } | 
| } |