| | |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | |
| | | string sql = "exec h_p_Gy_GetQCCheckItemByProject_Sec " + CheckProjectID + "," + HBatchQty + "," + HMaterID + ",'" + HBillType + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_Gy_GetQCCheckItemByProject_Sec"); |
| | | if (ds == null || ds.Tables[0].Rows.Count <= 0) |
| | |
| | | public string HTranslationText_English { get; set; } |
| | | public string HTranslationText_Spain { get; set; } |
| | | public List<MenuLoad> childMenus { get; set; } |
| | | public DateTime HMakeDate { get; set; } |
| | | public string HMaker { get; set; } |
| | | } |
| | | |
| | | [Route("Web/MenuList")] |
| | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 构建路由嵌套对象 |
| | | [Route("Web/MenuList_1")] |
| | | [HttpGet] |
| | | public object MenuList_1(string HMakeName, string HType) |
| | | { |
| | | try |
| | | { |
| | | string filePath = HttpContext.Current.Server.MapPath($"~/RouterDisplay/DisplayConfig.json"); |
| | | string directory = Path.GetDirectoryName(filePath); |
| | | if (!string.IsNullOrEmpty(directory) && !Directory.Exists(directory)) |
| | | { |
| | | Directory.CreateDirectory(directory); |
| | | } |
| | | DateTime lastWriteTime = File.GetLastWriteTime(filePath); |
| | | lastWriteTime = new DateTime(lastWriteTime.Year, lastWriteTime.Month, lastWriteTime.Day, lastWriteTime.Hour, 0, 0); |
| | | DataSet ds = oCN.RunProcReturn($"select top 1 HMakeDate from Gy_Menu_1_build ORDER BY HMakeDate desc ", "Gy_Menu_1_build"); |
| | | |
| | | DateTime dbTime = Convert.ToDateTime(ds.Tables[0].Rows[0]["HMakeDate"]); |
| | | dbTime = new DateTime(dbTime.Year, dbTime.Month, dbTime.Day, dbTime.Hour, 0, 0); |
| | | |
| | | if (dbTime> lastWriteTime) |
| | | { |
| | | List<MenuLoad> mu = new List<MenuLoad>(); //以父子级结构存放菜单清单信息 |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); //数据库操作工具 |
| | | string sql = "select HItemID,HPartentID,HNumber,HName,HLevel,Hurl,HType,HPicNum,HShowMode,isnull(HTranslationText_English,HName) HTranslationText_English,isnull(HTranslationText_Spain,HName) HTranslationText_Spain from Gy_MenuDefineSet where HMakeName = '" + HMakeName + "' and HType = '" + HType + "' order by HPosition"; |
| | | ds = oCn.RunProcReturn(sql, "Gy_MenuDefineSet"); //查询当前用户的自定义菜单数据 |
| | | if (ds.Tables[0] == null || ds.Tables[0].Rows.Count == 0) //判断当前用户是否有设置过自定义信息,若记录数为0,则没有设置过,加载所有的菜单信息 |
| | | { |
| | | string sql1 = "select HItemID,HPartentID,HNumber,HName,HLevel,Hurl,HType,HPicNum,HShowMode,isnull(HTranslationText_English,HName) HTranslationText_English,isnull(HTranslationText_Spain,HName) HTranslationText_Spain from Gy_MenuDefineSet where HMakeName=" + |
| | | "(select top 1 c.GroupName from Gy_Czygl a left join System_UserGroupInfo b on a.Czybm = b.UserId " + |
| | | "left join System_UserGroup c on b.GroupId = c.GroupID where a.Czymc ='" + HMakeName + "' order by len(c.GroupName ))"; |
| | | ds = oCn.RunProcReturn(sql1, "Gy_MenuDefineSet"); //查询用户绑定的角色 是否设置菜单信息 取角色名称最短的一个 |
| | | if ((ds.Tables[0] == null || ds.Tables[0].Rows.Count == 0)) |
| | | { |
| | | sql1 = "select HItemID,HPartentID,HNumber,HName,HLevel,Hurl,HType,HPicNum,HShowMode,isnull(HTranslationText_English,HName) HTranslationText_English,isnull(HTranslationText_Spain,HName) HTranslationText_Spain from Gy_MenuDefineSet where HMakeName = 'admin' and HType = '" + HType + "' order by HPosition"; |
| | | ds = oCn.RunProcReturn(sql1, "Gy_MenuDefineSet"); //查询admin 是否设置菜单信息 |
| | | if ((ds.Tables[0] == null || ds.Tables[0].Rows.Count == 0)) |
| | | { |
| | | sql = "Select HitemID,HNumber,HName,HPartentID,HLevel,Hurl,HShowMode,isnull(HTranslationText_English,HName) HTranslationText_English,isnull(HTranslationText_Spain,HName) HTranslationText_Spain,HPicNum from Gy_Menu_1_build where HType = '" + HType + "' Order by HPosition,len(HitemID),HitemID "; |
| | | ds = oCn.RunProcReturn(sql, "Gy_Menu_1_build"); |
| | | } |
| | | |
| | | } |
| | | } |
| | | |
| | | for (int i = 0; i < ds.Tables[0].Rows.Count; i++) //将菜单的根节点保存到列表menu中 |
| | | { |
| | | if (ds.Tables[0].Rows[i]["HPartentID"].ToString() == "0" || ds.Tables[0].Rows[i]["HitemID"].ToString() == ds.Tables[0].Rows[i]["HPartentID"].ToString()) //判断是否最外层根节点 |
| | | { |
| | | MenuLoad tbj = new MenuLoad(); |
| | | tbj.HitemID = ds.Tables[0].Rows[i]["HitemID"].ToString(); |
| | | tbj.HNumber = ds.Tables[0].Rows[i]["HNumber"].ToString(); |
| | | tbj.HName = ds.Tables[0].Rows[i]["HName"].ToString(); |
| | | tbj.HPartentID = ds.Tables[0].Rows[i]["HPartentID"].ToString(); |
| | | tbj.HLevel = int.Parse(ds.Tables[0].Rows[i]["HLevel"].ToString()); |
| | | tbj.Hurl = ds.Tables[0].Rows[i]["Hurl"].ToString(); |
| | | tbj.HShowMode = ds.Tables[0].Rows[i]["HShowMode"].ToString(); |
| | | tbj.HTranslationText_English = ds.Tables[0].Rows[i]["HTranslationText_English"].ToString(); |
| | | tbj.HTranslationText_Spain = ds.Tables[0].Rows[i]["HTranslationText_Spain"].ToString(); |
| | | if (ds.Tables[0].Rows[i]["HPicNum"] != null) |
| | | { |
| | | tbj.HPicNum = ds.Tables[0].Rows[i]["HPicNum"].ToString(); |
| | | } |
| | | mu.Add(tbj); |
| | | } |
| | | } |
| | | diguiLoad(ds.Tables[0], mu); //使用递归,将需要加载的数据以父子级的结构存放在mu中 |
| | | |
| | | |
| | | objJsonResult.code = "1";//信号参数 |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "查询成功!"; |
| | | objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(mu); |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | string josncontext = File.ReadAllText(filePath); |
| | | objJsonResult.code = "2"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "查询成功!"; |
| | | objJsonResult.data = josncontext; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "查询失败!"; |
| | | objJsonResult.data = e.ToString(); |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | public class RequestDto |
| | | { |
| | | public string content { get; set; } |
| | | } |
| | | [Route("Web/buildRouteObj")] |
| | | [HttpPost] |
| | | public object buildRouteObj([FromBody] RequestDto request) |
| | | { |
| | | string filePath = HttpContext.Current.Server.MapPath($"~/RouterDisplay/DisplayConfig.json"); |
| | | try |
| | | { |
| | | string jsonContent = request.content; |
| | | if (string.IsNullOrEmpty(jsonContent)) |
| | | { |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "JSON 内容不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (string.IsNullOrWhiteSpace(filePath)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "文件路径不能为空。!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | string directory = Path.GetDirectoryName(filePath); |
| | | if (!string.IsNullOrEmpty(directory) && !Directory.Exists(directory)) |
| | | { |
| | | Directory.CreateDirectory(directory); |
| | | } |
| | | string contentToWrite = jsonContent; |
| | | |
| | | File.WriteAllText(filePath, contentToWrite); |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "文件保存成功,路径为"+filePath; |
| | | objJsonResult.data = null; |
| | | LogService.Write($"路径为{filePath}"); |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | |
| | | LogService.Write("Exception!" + e.ToString()); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | |
| | | |
| | | #region [菜单目录自定义] |
| | |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region APP 获取异常反馈单 获取 检验单内容 通用方法 |
| | | [Route("Web/getCheckBillStatus")] |
| | | [HttpGet] |
| | | public object getCheckBillStatus(Int64 HInterID, string HBillType) |
| | | { |
| | | try { |
| | | string sql = ""; |
| | | List<object> columnNameList = new List<object>(); |
| | | if(HBillType == "7505") |
| | | { |
| | | // 首检 |
| | | sql = $@"SELECT |
| | | a.HInterID AS hmainid,b.HEntryID hsubid, a.HDate AS 日期, a.HBillNo AS 单据号, |
| | | a.HRemark AS 表头备注,s.HName 生产资源名称,s.HNumber 生产资源代码, m.HNumber AS 产品内码, m.HName AS 产品名称, m.HModel AS 产品型号,e.HNumber as 检验员代码, e.HName as 检验员名称, |
| | | a.HMaker AS 制单人, a.HMakeDate AS 制单日期, a.HChecker AS 审核人, a.HCheckDate AS 审核日期, a.HUpDater AS 修改人, |
| | | a.HUpDateDate AS 修改日期, a.HCloseMan AS 关闭人, a.HCloseDate AS 关闭日期, a.HDeleteMan AS 作废人, a.HDeleteDate AS 作废日期, |
| | | a.HBillType AS 单据类型,b.HEntryID hsubid, a.HCheckQty 检验数量, a.HSourceID HSourceID, |
| | | a.HProcExchInterID HProcExchInterID, a.HProcExchEntryID HProcExchEntryID, a.HProcExchBillNo 工序流转卡号, |
| | | a.HICMOInterID HICMOInterID, a.HICMOEntryID HICMOEntryID, a.HICMOBillNo 生产订单号 |
| | | FROM |
| | | dbo.QC_FirstPieceCheckBillMain AS a INNER JOIN |
| | | dbo.QC_FirstPieceCheckBillSub AS b ON a.HInterID = b.HInterID LEFT OUTER JOIN |
| | | dbo.Gy_Source s on a.HSourceID =s.HItemID LEFT OUTER JOIN |
| | | dbo.Gy_Material m on a.HMaterID = m.HItemID LEFT OUTER JOIN |
| | | dbo.Gy_Employee AS e ON a.HFirstCheckEmp = e.HItemID "; |
| | | sql += $" where a.HInterID = {HInterID}"; |
| | | |
| | | ds = oCN.RunProcReturn(sql, "QC_FirstPieceCheckBillMain"); |
| | | |
| | | } |
| | | else if (HBillType == "7520") |
| | | { |
| | | // 巡检 |
| | | sql = $@"SELECT |
| | | a.HInterID AS hmainid,b.HEntryID hsubid, a.HDate AS 日期, a.HBillNo AS 单据号, |
| | | a.HRemark AS 表头备注,s.HName 生产资源名称,s.HNumber 生产资源代码, m.HNumber AS 产品内码, m.HName AS 产品名称, m.HModel AS 产品型号,e.HNumber as 检验员代码, e.HName as 检验员名称, |
| | | a.HMaker AS 制单人, a.HMakeDate AS 制单日期, a.HChecker AS 审核人, a.HCheckDate AS 审核日期, a.HUpDater AS 修改人, |
| | | a.HUpDateDate AS 修改日期, a.HCloseMan AS 关闭人, a.HCloseDate AS 关闭日期, a.HDeleteMan AS 作废人, a.HDeleteDate AS 作废日期, |
| | | a.HBillType AS 单据类型,b.HEntryID hsubid, a.HCheckQty 检验数量, a.HSourceID HSourceID, |
| | | a.HProcExchInterID HProcExchInterID, a.HProcExchEntryID HProcExchEntryID, a.HProcExchBillNo 工序流转卡号, |
| | | a.HICMOInterID HICMOInterID, a.HICMOEntryID HICMOEntryID, a.HICMOBillNo 生产订单号 |
| | | FROM |
| | | dbo.QC_PatrolProcCheckOtherBillMain AS a INNER JOIN |
| | | dbo.QC_PatrolProcCheckOtherBillSub AS b ON a.HInterID = b.HInterID LEFT OUTER JOIN |
| | | dbo.Gy_Source s on a.HSourceID =s.HItemID LEFT OUTER JOIN |
| | | dbo.Gy_Material m on a.HMaterID = m.HItemID LEFT OUTER JOIN |
| | | dbo.Gy_Employee AS e ON a.HFirstCheckEmp = e.HItemID "; |
| | | sql += $" where a.HInterID = {HInterID}"; |
| | | |
| | | ds = oCN.RunProcReturn(sql, "QC_PatrolProcCheckOtherBillMain"); |
| | | } |
| | | else if(HBillType == "7507") |
| | | { |
| | | // 末检 |
| | | sql = $@"SELECT |
| | | a.HInterID AS hmainid,b.HEntryID hsubid, a.HDate AS 日期, a.HBillNo AS 单据号, |
| | | a.HRemark AS 表头备注,s.HName 生产资源名称,s.HNumber 生产资源代码, m.HNumber AS 产品内码, m.HName AS 产品名称, m.HModel AS 产品型号,e.HNumber as 检验员代码, e.HName as 检验员名称, |
| | | a.HMaker AS 制单人, a.HMakeDate AS 制单日期, a.HChecker AS 审核人, a.HCheckDate AS 审核日期, a.HUpDater AS 修改人, |
| | | a.HUpDateDate AS 修改日期, a.HCloseMan AS 关闭人, a.HCloseDate AS 关闭日期, a.HDeleteMan AS 作废人, a.HDeleteDate AS 作废日期, |
| | | a.HBillType AS 单据类型,b.HEntryID hsubid, a.HCheckQty 检验数量, a.HSourceID HSourceID, |
| | | a.HProcExchInterID HProcExchInterID, a.HProcExchEntryID HProcExchEntryID, a.HProcExchBillNo 工序流转卡号, |
| | | a.HICMOInterID HICMOInterID, a.HICMOEntryID HICMOEntryID, a.HICMOBillNo 生产订单号 |
| | | , HRemarkSN 条码 |
| | | FROM |
| | | dbo.QC_ProcessCheckBillMain AS a INNER JOIN |
| | | dbo.QC_ProcessCheckBillSub AS b ON a.HInterID = b.HInterID LEFT OUTER JOIN |
| | | dbo.Gy_Source s on a.HSourceID =s.HItemID LEFT OUTER JOIN |
| | | dbo.Gy_Material m on a.HMaterID = m.HItemID LEFT OUTER JOIN |
| | | dbo.Gy_Employee AS e ON a.HFirstCheckEmp = e.HItemID "; |
| | | sql += $" where a.HInterID = {HInterID}"; |
| | | |
| | | ds = oCN.RunProcReturn(sql, "QC_ProcessCheckBillMain"); |
| | | } |
| | | if(ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "查询数据异常,无检验单!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //添加列名 |
| | | 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 ex) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "查询数据异常,请与管理员联系!" + ex.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | } |
| | | } |