页面过滤条件:开始时间和结束时间(根据检验信息中的创建时间进行过滤)、站台(检验信息中的检验工序)、料号(PNL布局信息名称)、批次(lot号) 2.柱状图:x轴lot号,y轴良品率。根据开始时间和结束时间、站台、料号 过滤检验信息并去重(一个PNL里的PCS不能有重复记录),然后根据料号、批次分组合计得到该料号每个批次的不良PCS的数量合计。然后获取该料号每个批次中PNL条码的数量(PNL条码不能重复)并乘PNL布局信息中子表的记录数(该料号中的PCS数量)得到每个批次的PCS总数。对每个批次进行((PCS总数-不良PCS数量)/PCS总数 *100)得到每个批次的良品率。 3.饼状图:根据开始时间和结束时间、站台、料号 过滤检验信息并去重(一个PNL里的PCS不能有重复记录),然后根据检验信息中的不良原因分组统计各个原因的数量。在饼状图显示 4.表格:根据开始时间和结束时间、站台、料号 过滤检验信息,表头包含(站台、料号、PNL条码、PCS号、正反面、不良原因),并针对表头字段进行去重
1个文件已修改
79 ■■■■ 已修改文件
WebAPI/Controllers/华远datamapping/Gy_BarCodeReportController.cs 79 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/»ªÔ¶datamapping/Gy_BarCodeReportController.cs
@@ -24,6 +24,8 @@
        DataSet ds;
        string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
        // GET: Gy_BarCodeReport
        #region //获取站台号
        [Route("Gy_BarCodeReportController/Get_Stations")]
        [HttpGet]
        public object Get_Stations()
@@ -48,6 +50,10 @@
                return objJsonResult;
            }
        }
        #endregion
        #region èŽ·å–æ–™å·
        [Route("Gy_BarCodeReportController/GetMaterialNos")]
        [HttpGet]
        public object GetMaterialNos()
@@ -72,29 +78,73 @@
                return objJsonResult;
            }
        }
        #endregion
        #region åˆ—表查询
        [Route("Gy_BarCodeReportController/list")]
        #region ä¸è‰¯åŽŸå› æŸ¥è¯¢
        [Route("Gy_BarCodeReportController/GetBadReason_proc")]
        [HttpGet]
        public object list(string sWhere, string user)
        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>();
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Sc_MouldUpperBill_Query", 1, false, user))
                ds = oCN.RunProcReturn("exec h_p_QC_BarCodeBadReasonReport '" + HBeginDate + "','" + HEndDate + "','" + Station + "','" + MaterialNo + "','" + LotNo + "'", "h_p_QC_BarCodeBadReasonReport");
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                //string sql1 = "s"+"select * from h_v_Gy_BarCodeReport";
                //string sql = sql1 + sWhere + "  ";
                //ds = oCN.RunProcReturn(sql, "h_v_Gy_BarCodeReport");
                ds =oCN.RunProcReturn("select a.HCheckProc æ£€éªŒå·¥åº,b.HLayOutName æ–™å·,a.HBarCode PNL条码编号,HPCSNo PCS号,a.HPageIndex æ­£åé¢,a.HBadReason ä¸è‰¯åŽŸå›  from QC_CheckNote_PNL_Temp a INNER JOIN Gy_PNLInfo b on a.HMakeDate=b.HMakeDate where 1=1 " + sWhere  , "h_v_Gy_BarCodeReport");
                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 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 + "','"  + "','" + MaterialNo + "','" + LotNo + "'", "h_p_QC_BarCodeBadReasonReport");
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
@@ -121,7 +171,6 @@
            }
        }
        #endregion
    }
}