public ReturnValue readFiles(string path, int pageNo = 1) { if (path == "\\") { path = ""; } ReturnValue err = new ReturnValue(); if (pageNo == 0) { pageNo = 1; } string rootPath = Tools.MapPath(@"\" + Config.webPath); string nowpath = Tools.MapPath(@"\" + Config.webPath + path); DirectoryInfo dir = new DirectoryInfo(nowpath); FileInfo[] list = dir.GetFiles(); ReturnPageData page = new ReturnPageData(); page.pageNo = pageNo; page.recordCount = list.Length; for (int i = (pageNo - 1) * page.pageSize; i < pageNo * page.pageSize; i++) { if (i < list.Length) { Dictionary <string, object> dictionary = new Dictionary <string, object>(); dictionary["text"] = list[i].Name; dictionary["path"] = list[i].FullName.Replace(rootPath, "").Replace(@"\", "//"); dictionary["updateTime"] = list[i].LastWriteTime.ToString("yyyy-MM-dd HH:mm"); dictionary["size"] = list[i].Length.FormatFileSize(); page.data.Add(dictionary); } } err.userData = page; return(err); }
/// <summary> /// 数据列表 /// </summary> public virtual ReturnValue dataList(double moduleId = 0, double classId = 0, int pageNo = 0, string orderBy = "", int sortDirection = 0, string type = "", string searchField = "", string keyword = "") { LoginInfo login = new LoginInfo(); ReturnValue returnValue = new ReturnValue(); double dataTypeId = -1; MySqlDataReader rs = null; Permissions p = null; if (moduleId == classId) { p = login.value.getModulePermissions(classId); rs = Sql.ExecuteReader("select savedatatype from module where id=@moduleId", new MySqlParameter[] { new MySqlParameter("moduleId", moduleId) }); if (rs.Read()) { dataTypeId = rs.GetDouble(0); } rs.Close(); } else { p = login.value.getColumnPermissions(classId); rs = Sql.ExecuteReader("select savedatatype from class where id=@classId", new MySqlParameter[] { new MySqlParameter("classId", classId) }); if (rs.Read()) { dataTypeId = rs.GetDouble(0); } rs.Close(); } if (!p.read) { returnValue.errNo = -1; returnValue.errMsg = "无权访问"; return(returnValue); } TableInfo table = new TableInfo(dataTypeId); List <FieldInfo> fieldList = table.fields.FindAll(delegate(FieldInfo v) { return(v.visible || v.isNecessary); }); string where = "";// " and A.orderid>-3"; if (type[0] == '0') { where += " and A.orderid<0 "; } if (type[1] == '0') { where += " and A.orderid<>-1 "; } if (type[2] == '0') { where += " and A.orderid<>-2 "; } if (type[3] == '0') { where += " and A.orderid<>-3 "; } //else if (type == 2) where = " and A.orderid=-3 "; if (keyword != "") { switch (searchField) { case "id": where += " and A." + searchField + "=" + keyword + ""; break; case "title": where += " and A." + searchField + " like '%" + keyword + "%'"; break; case "userId": object userId = Sql.ExecuteScalar("select id from m_admin where uname=@uname", new MySqlParameter[] { new MySqlParameter("uname", keyword) }); if (userId != null) { where += " and A." + searchField + "=" + userId.ToString(); } else { where += " and A.userId=-1 "; } break; default: where += " and "; FieldInfo list = table.fields.Find(delegate(FieldInfo v) { if (v.name == searchField) { return(true); } else { return(false); } }); if (list.type == "String") { where += searchField.IndexOf("u_") == 0 ? "B." : "A."; where += searchField + " like '%" + keyword + "%'"; } else if (list.type == "DateTime") { string[] item = keyword.Split(','); where += searchField.IndexOf("u_") == 0 ? "B." : "A."; where += searchField + ">='" + item[0].ToString() + "' and " + searchField + "<='" + item[1].ToString() + "'"; } else { string[] item = keyword.Split(','); where += searchField.IndexOf("u_") == 0 ? "B." : "A."; where += searchField + ">=" + item[0].ToString() + " and " + searchField + "<=" + item[1].ToString(); } break; } } if (!p.audit) { where += " and A.userId=" + login.value.id.ToString(); } ReturnPageData dataList = table.getDataList(moduleId, classId, pageNo, orderBy, sortDirection, where); object[] data = new object[] { fieldList, dataList }; returnValue.userData = data; return(returnValue); }