コード例 #1
0
        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);
        }
コード例 #2
0
        /// <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);
        }