public string GetList() { Mes_Tec_Process root = new Mes_Tec_Process(); root.ProcessCode = "01"; root.Name = "工艺库"; string sql = @"SELECT * FROM dbo.Mes_Tec_Process T1 WITH(NOLOCK) WHERE RecordStatus = 1"; List <Mes_Tec_Process> list = this.CurDbSession.FromSql(sql).ToList <Mes_Tec_Process>(); List <Mes_Tec_Process> oneList = list.Where(p => p.ParentCode == root.ProcessCode).ToList(); StringBuilder jsonStr = new StringBuilder(); jsonStr.Append("[{"); jsonStr.AppendFormat("\"id\":\"{0}\",\"text\":\"{1}\"", root.ProcessCode, root.Name); jsonStr.Append(",\"children\":["); foreach (var item in oneList) { jsonStr.Append("{"); jsonStr.AppendFormat("\"id\":\"{0}\",\"text\":\"{1}\"", item.ProcessCode, item.Name); GetChildNodesByList(list, item, jsonStr); jsonStr.Append("},"); } if (oneList.Count > 0) { jsonStr = jsonStr.Remove(jsonStr.Length - 1, 1); } jsonStr.Append("]}]"); return(jsonStr.ToString()); }
/// <summary> /// 分页查询 /// </summary> /// <param name="obj"></param> /// <param name="pager"></param> /// <returns></returns> public List <Mes_Tec_Process> FindByPage(Mes_Tec_Process obj, ref PagerBase pager) { string sql = @"SELECT T1.*,T2.Name AS ParentName FROM Mes_Tec_Process T1 WITH(NOLOCK) LEFT JOIN Mes_Tec_Process T2 WITH(NOLOCK) ON T1.ParentCode=T2.ProcessCode WHERE T1.RecordStatus = 1 "; if (!string.IsNullOrEmpty(obj.Name)) { sql += string.Format(" AND T1.Name Like '%{0}%'", obj.Name); } if (!string.IsNullOrEmpty(obj.ProcessCode)) { if (obj.ProcessCode != "01") { sql += string.Format(" AND (T1.ProcessCode = '{0}' OR T1.ParentCode = '{0}')", obj.ProcessCode); } } string orderBy = pager.OrderBy; if (string.IsNullOrEmpty(orderBy)) { orderBy = "State,ProcessCode"; } string cmdPageSql = string.Format(BaseDao.PageSql, orderBy, sql, pager.StartNo, pager.EndNo); string cmdCountSql = string.Format(BaseDao.CountSql, sql.Substring(sql.ToLower().IndexOf("from", StringComparison.Ordinal))); //查询总记录数 pager.TotalItemCount = this.CurDbSession.FromSql(cmdCountSql).ToScalar <int>(); //返回当前页的记录数 return(this.CurDbSession.FromSql(cmdPageSql).ToList <Mes_Tec_Process>()); }
public string GetTree(Mes_Tec_Process obj) { string sql = @"SELECT * FROM dbo.Mes_Tec_Process T1 WITH(NOLOCK) WHERE RecordStatus = 1"; // { id: 1, pId: 0, name: "技术部", open: true}, List <Mes_Tec_Process> list = this.CurDbSession.FromSql(sql).ToList <Mes_Tec_Process>(); StringBuilder jsonStr = new StringBuilder(); jsonStr.Append("["); bool noCheck = (obj.IsCheck == 1) ? false : true; int isParent = 0; //是否包含子节点 foreach (var item in list) { isParent = 0; if (list.Exists(p => p.ParentCode == item.ProcessCode)) { isParent = 1; } jsonStr.Append(_treeItemContent.Replace("[0]", item.ProcessCode.ToString()) .Replace("[1]", item.ParentCode.ToString()) .Replace("[2]", item.Name) .Replace("[3]", noCheck.ToString()) .Replace("[4]", isParent.ToString()) .Replace("[5]", item.ID.ToString()) ); } string result = jsonStr.ToString(); return(result.Remove(result.Length - 1) + "]"); }
/// <summary> /// 保存记录 /// </summary> /// <returns></returns> public ActionResult ProcessMgt_Save(Mes_Tec_Process obj) { string sMessage = string.Empty; //判断数据有效性 if (string.IsNullOrEmpty(obj.ProcessCode)) { sMessage = "工序编码不可为空"; return(Json(new { IsSuccess = false, Message = sMessage }, JsonRequestBehavior.AllowGet)); } if (string.IsNullOrEmpty(obj.Name)) { sMessage = "工序名称不可为空"; return(Json(new { IsSuccess = false, Message = sMessage }, JsonRequestBehavior.AllowGet)); } if (obj.ID > 0) { obj.Modifier = base.CurUser.UserId; obj.ModifiedTime = DateTime.Now; } else { obj.Creater = base.CurUser.UserId; obj.CreatedTime = DateTime.Now; } bool result = MesTecProcessDao.Instance.Save(obj); if (!result) { sMessage = "保存失败"; return(Json(new { IsSuccess = false, Message = sMessage }, JsonRequestBehavior.AllowGet)); } return(Json(new { IsSuccess = true, Message = sMessage }, JsonRequestBehavior.AllowGet)); }
public ActionResult ProcessMgt_FindByPage(Mes_Tec_Process obj, int page, int rows) { var pager = new PagerBase() { CurrentPageIndex = page, PageSize = rows }; var list = MesTecProcessDao.Instance.FindByPage(obj, ref pager); return(Json(new { total = pager.TotalItemCount, rows = list })); }
/// <summary> /// 保存用户 /// </summary> /// <param name="obj"></param> /// <returns></returns> public bool Save(Mes_Tec_Process obj) { int result = -1; if (obj.ID > 0) { //修改 result = this.CurDbSession.Update <Mes_Tec_Process>(obj); } else { result = this.CurDbSession.Insert <Mes_Tec_Process>(obj); } if (result < 0) { return(false); } return(true); }
public void GetChildNodesByList(List <Mes_Tec_Process> list, Mes_Tec_Process node, StringBuilder jsonStr) { List <Mes_Tec_Process> childList = list.Where(p => p.ParentCode == node.ProcessCode).ToList(); if (childList == null || childList.Count == 0) { return; } jsonStr.Append(",\"children\":["); foreach (var item in childList) { jsonStr.Append("{"); jsonStr.AppendFormat("\"id\":\"{0}\",\"text\":\"{1}\"", item.ProcessCode, item.Name); GetChildNodesByList(list, item, jsonStr); jsonStr.Append("},"); } jsonStr = jsonStr.Remove(jsonStr.Length - 1, 1); jsonStr.Append("]"); }
private IList <ImportMessageModel> Import_TecProcessBom(DataTable dtData) { IList <ImportMessageModel> resultList = new List <ImportMessageModel>(); //提示用户导入消息有错,但不影响数据导入 IList <ImportMessageModel> msgList = new List <ImportMessageModel>(); List <Mes_Tec_ProcessBom> bomList = new List <Mes_Tec_ProcessBom>(); List <Mes_Tec_ProcessBomItem> dataList = new List <Mes_Tec_ProcessBomItem>(); List <Mes_Tec_Process> processList = null; List <Mes_Tec_ProductInfo> productList = null; int rowIndex = 0; //第1行是行头 DateTime time = DateTime.Now; ImportMessageModel errorObj = null; if (dtData != null && dtData.Rows.Count > 0) { Mes_Tec_ProcessBom bomObj = null; Mes_Tec_ProcessBomItem bomItemObj = null; Mes_Tec_Process processObj = null; Mes_Tec_ProductInfo productObj = null; processList = MesTecProcessDao.Instance.FindAll <Mes_Tec_Process>(); productList = MesTecProductInfoDao.Instance.FindAll <Mes_Tec_ProductInfo>(); foreach (DataRow row in dtData.Rows) { rowIndex++; bomItemObj = new Mes_Tec_ProcessBomItem(); bomItemObj.CreatedTime = time; bomItemObj.Creater = curUserId; //存样品信息 errorObj = TecProcessBom_FormatRow(row, bomItemObj, rowIndex); if (errorObj != null) //记录行错误信息 { resultList.Add(errorObj); continue; } processObj = processList.Where(p => p.Name == bomItemObj.ProcessName && p.RecordStatus == 1).FirstOrDefault(); if (processObj == null) { msgList.Add(new ImportMessageModel() { RowData = string.Format(ReadErrorMessage, rowIndex), RowMessage = string.Format("工艺【{0}】不存在", bomItemObj.ProcessName) }); } else { bomItemObj.ProcessID = processObj.ID; } productObj = productList.Where(p => p.MaterialProNo == bomItemObj.MaterialProNo).FirstOrDefault(); if (productObj == null) { msgList.Add(new ImportMessageModel() { RowData = string.Format(ReadErrorMessage, rowIndex), RowMessage = string.Format("产品编码【{0}】不存在", bomItemObj.MaterialProNo) }); } else { bomItemObj.MaterialCode = productObj.MaterialCode; if (!bomList.Exists(p => p.MaterialProNo == bomItemObj.MaterialProNo && p.Version == bomItemObj.Version)) { bomObj = new Mes_Tec_ProcessBom(); bomObj.MaterialProNo = bomItemObj.MaterialProNo; bomObj.MaterialCode = bomItemObj.MaterialCode; bomObj.Version = bomItemObj.Version; bomObj.CreatedTime = time; bomObj.Creater = curUserId; bomList.Add(bomObj); } } productObj = productList.Where(p => p.MaterialProNo == bomItemObj.SubMaterialProNo).First(); if (productObj == null) { msgList.Add(new ImportMessageModel() { RowData = string.Format(ReadErrorMessage, rowIndex), RowMessage = string.Format("物料编码【{0}】不存在", bomItemObj.MaterialProNo) }); } else { bomItemObj.SubMaterialCode = productObj.MaterialCode; } dataList.Add(bomItemObj); } } //如果校验有错误,直接返回错误信息 if (resultList.Count > 0) { return(resultList); } //2.校验成功执行导入 MesTecProcessBomDao.Instance.Import(bomList, dataList, resultList); if (resultList.Count == 0) { resultList.Add(new ImportMessageModel { RowData = "导入成功", RowMessage = "数据已成功导入" }); } return(resultList); }
public ActionResult ProcessMgt_FindTree(Mes_Tec_Process obj) { string stationTree = MesTecProcessDao.Instance.GetTree(obj); return(Json(new { IsSuccess = true, Message = stationTree })); }
public string ProcessMgt_GetList(Mes_Tec_Process obj) { string result = MesTecProcessDao.Instance.GetList(); return(result); }