Пример #1
0
        /// <summary>
        /// 导入:博客
        /// </summary>
        public static JObject importBlog(string fileName)
        {
            //Excel导出入到DataTable
            DataTable dt = UtilExcelOle.ExcelToDataTableBySheet(fileName, "Blog");

            if (dt != null)
            {
                Dictionary <string, string> dic = new Dictionary <string, string>()
                {
                    { "标识", "ID" },
                    { "用户名称", "Username" },
                    { "博客标题", "Blog_Name" },
                    { "博客内容", "Blog_Content" },
                    { "创建时间", "CommitTime" },
                    { "更新时间", "UpdateTime" }
                };

                UtilDataTable.ReplaceColumnName(dt, dic);

                //循环插入数据
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    Blog blog = new Blog();
                    UtilDataTable.ToObject(blog, dt.Rows[i], dt.Columns);
                    User user = db.User.Where(e => e.Username.Equals(blog.Username)).SingleOrDefault();
                    blog.User_ID = user.ID;
                    db.Blog.Add(blog);
                }
                db.SaveChanges();
            }
            return(new JObject(
                       new JProperty("success", true),
                       new JProperty("data", true)
                       ));
        }
Пример #2
0
        public void importAdmin()
        {
            string fileName = "admin20140611084350.xls";

            fileName = Path.Combine(Gc.UploadPath, "attachment", "admin", fileName);
            //Excel导出入到DataTable
            DataTable dt = UtilExcelOle.ExcelToDataTableBySheet(fileName, "Admin");

            if (dt != null)
            {
                Dictionary <string, string> dic = new Dictionary <string, string>()
                {
                    { "编号", "ID" },
                    { "部门名称", "Department_Name" },
                    { "用户名称", "Username" },
                    { "密码", "Password" },
                    { "真实姓名", "Realname" },
                    { "扮演角色", "RoletypeShow" },
                    { "视野", "SeescopeShow" },
                    { "登录次数", "LoginTimes" },
                    { "创建时间", "CommitTime" },
                    { "更新时间", "UpdateTime" }
                };

                UtilDataTable.ReplaceColumnName(dt, dic);

                //检查数据格式是否正确
                //1、检查Excel中是否有用户名重复数据
                if (UtilDataTable.HasRepeat(dt, "Username"))
                {
                    Console.WriteLine("Excel中有重复用户名");
                    return;
                }
                //2、检查Excel中用户名是否存在与数据中相同数据
                List <Admin> admins  = db.Admin.ToList();
                DataTable    tableDt = UtilDataTable.ToDataTable <Admin>(admins);
                if (UtilDataTable.HasRepeat(tableDt, dt, "Username"))
                {
                    Console.WriteLine("Excel中与数据库有重复用户名");
                    //return;
                }
                //循环插入数据
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    Admin admin = new Admin();
                    UtilDataTable.ToObject(admin, dt.Rows[i], dt.Columns);
                    Department dep = db.Department.Where(e => e.Department_Name.Equals(admin.Department_Name)).SingleOrDefault();
                    admin.Department_ID = dep.ID;
                    admin.Seescope      = EnumSeescope.SeescopeByShow(admin.SeescopeShow);
                    admin.Roletype      = EnumRoletype.RoletypeByShow(admin.RoletypeShow);
                    //admin.CommitTime = DateTime.Now;
                    //admin.UpdateTime = DateTime.Now;
                    db.Admin.Add(admin);
                }
                db.SaveChanges();
            }
        }
Пример #3
0
        public JObject exportAdmin(Dictionary <String, object> condition)
        {
            var    admins         = db.Admin.OrderByDescending(e => e.ID);
            string attachment_url = "";

            if (admins != null)
            {
                var query = admins.AsEnumerable();

                foreach (Admin row in query)
                {
                    if (row.Roletype != null)
                    {
                        row.RoletypeShow = EnumRoletype.RoletypeShow(Convert.ToChar(row.Roletype));
                    }
                    if (row.Seescope != null)
                    {
                        row.SeescopeShow = EnumSeescope.SeescopeShow(Convert.ToChar(row.Seescope));
                    }
                    row.Department_Name = row.Department.Department_Name;
                }

                DataTable dt = UtilDataTable.ToDataTable(query);
                dt.TableName = "Admin";
                UtilDataTable.DeleteColumns(dt, "Seescope", "Roletype", "Department_ID");
                Dictionary <string, string> dic = new Dictionary <string, string>()
                {
                    { "ID", "编号" },
                    { "Department_Name", "部门名称" },
                    { "Username", "用户名称" },
                    { "Password", "密码" },
                    { "Realname", "真实姓名" },
                    { "RoletypeShow", "扮演角色" },
                    { "SeescopeShow", "视野" },
                    { "LoginTimes", "登录次数" },
                    { "CommitTime", "创建时间" },
                    { "UpdateTime", "更新时间" }
                };
                UtilDataTable.ReplaceColumnName(dt, dic);

                string fileName = "admin" + UtilDateTime.NowS() + ".xls";
                attachment_url = Gc.UploadUrl + "/attachment/admin/" + fileName;
                fileName       = Path.Combine(Gc.UploadPath, "attachment", "admin", fileName);
                UtilExcelOle.DataTableToExcel(fileName, dt);
            }

            return(new JObject(
                       new JProperty("success", true),
                       new JProperty("data", attachment_url)
                       ));
        }
Пример #4
0
        /// <summary>
        /// 导入:系统管理员
        /// </summary>
        public static JObject importAdmin(string fileName)
        {
            //Excel导出入到DataTable
            DataTable dt = UtilExcelOle.ExcelToDataTableBySheet(fileName, "Admin");

            if (dt != null)
            {
                Dictionary <string, string> dic = new Dictionary <string, string>()
                {
                    { "编号", "ID" },
                    { "部门名称", "Department_Name" },
                    { "用户名称", "Username" },
                    { "密码", "Password" },
                    { "真实姓名", "Realname" },
                    { "扮演角色", "RoletypeShow" },
                    { "视野", "SeescopeShow" },
                    { "登录次数", "LoginTimes" },
                    { "创建时间", "CommitTime" },
                    { "更新时间", "UpdateTime" }
                };

                UtilDataTable.ReplaceColumnName(dt, dic);

                //检查Excel中是否有用户名重复数据
                if (UtilDataTable.HasRepeat(dt, "Username"))
                {
                    Console.WriteLine("Excel中有重复用户名");
                    return(new JObject(
                               new JProperty("success", true),
                               new JProperty("data", false)
                               ));
                }
                //循环插入数据
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    Admin admin = new Admin();
                    UtilDataTable.ToObject(admin, dt.Rows[i], dt.Columns);
                    Department dep = db.Department.Where(e => e.Department_Name.Equals(admin.Department_Name)).SingleOrDefault();
                    admin.Department_ID = dep.ID;
                    admin.Seescope      = EnumSeescope.SeescopeByShow(admin.SeescopeShow);
                    admin.Roletype      = EnumRoletype.RoletypeByShow(admin.RoletypeShow);
                    db.Admin.Add(admin);
                }
                db.SaveChanges();
            }
            return(new JObject(
                       new JProperty("success", true),
                       new JProperty("data", true)
                       ));
        }
Пример #5
0
        public void exportAdmin()
        {
            //获取系统管理员数据
            List <Admin> admins = db.Admin.OrderByDescending(e => e.ID).Take(50).ToList();

            if (admins != null)
            {
                var query = admins.AsEnumerable();

                foreach (Administrator row in query)
                {
                    if (row.Roletype != null)
                    {
                        row.RoletypeShow = EnumRoletype.RoletypeShow(Convert.ToChar(row.Roletype));
                    }
                    if (row.Seescope != null)
                    {
                        row.SeescopeShow = EnumSeescope.SeescopeShow(Convert.ToChar(row.Seescope));
                    }
                    row.Department_Name = row.Department.Department_Name;
                }
                //管理员数据导出到excel
                DataTable dt = UtilDataTable.ToDataTable(query);
                dt.TableName = "Admin";
                UtilDataTable.DeleteColumns(dt, "Seescope", "Roletype", "Department_ID");
                Dictionary <string, string> dic = new Dictionary <string, string>()
                {
                    { "ID", "编号" },
                    { "Department_Name", "部门名称" },
                    { "Username", "用户名称" },
                    { "Password", "密码" },
                    { "Realname", "真实姓名" },
                    { "RoletypeShow", "扮演角色" },
                    { "SeescopeShow", "视野" },
                    { "LoginTimes", "登录次数" },
                    { "CommitTime", "创建时间" },
                    { "UpdateTime", "更新时间" }
                };

                UtilDataTable.ReplaceColumnName(dt, dic);

                string fileName = Path.Combine(Gc.UploadPath, "attachment", "admin", UtilDateTime.NowS() + ".xls");
                UtilExcelNpoi.DataTableToExcel(fileName, dt, "Admin");
                Console.WriteLine("导出文件:" + fileName);
            }
        }
Пример #6
0
        public JObject exportComment(Dictionary <String, object> condition)
        {
            var    comments       = db.Comment.OrderByDescending(e => e.ID);
            string attachment_url = "";

            if (comments != null)
            {
                var query = comments.AsEnumerable();

                foreach (Comment comment in query)
                {
                    comment.Username  = comment.User.Username;
                    comment.Blog_Name = comment.Blog.Blog_Name;
                    comment.Content   = comment.Comment1;
                }

                DataTable dt = UtilDataTable.ToDataTable(query);
                dt.TableName = "Comment";
                Dictionary <string, string> dic = new Dictionary <string, string>()
                {
                    { "ID", "标识" },
                    { "Username", "评论者" },
                    { "Content", "评论" },
                    { "Blog_Name", "博客标题" },
                    { "CommitTime", "创建时间" },
                    { "UpdateTime", "更新时间" }
                };
                UtilDataTable.ReplaceColumnName(dt, dic);

                string fileName = "comment" + UtilDateTime.NowS() + ".xls";
                attachment_url = Gc.UploadUrl + "/attachment/comment/" + fileName;
                fileName       = Path.Combine(Gc.UploadPath, "attachment", "comment", fileName);
                UtilExcelOle.DataTableToExcel(fileName, dt);
            }

            return(new JObject(
                       new JProperty("success", true),
                       new JProperty("data", attachment_url)
                       ));
        }
Пример #7
0
        public JObject exportBlog(Dictionary <String, object> condition)
        {
            var    blogs          = db.Blog.OrderByDescending(e => e.ID);
            string attachment_url = "";

            if (blogs != null)
            {
                var query = blogs.AsEnumerable();
                foreach (Blog blog in query)
                {
                    blog.Username = blog.User.Username;
                }

                DataTable dt = UtilDataTable.ToDataTable(query);
                dt.TableName = "Blog";
                UtilDataTable.DeleteColumns(dt, "User_ID");
                Dictionary <string, string> dic = new Dictionary <string, string>()
                {
                    { "ID", "标识" },
                    { "Username", "用户名称" },
                    { "Blog_Name", "博客标题" },
                    { "Blog_Content", "博客内容" },
                    { "CommitTime", "创建时间" },
                    { "UpdateTime", "更新时间" }
                };
                UtilDataTable.ReplaceColumnName(dt, dic);

                string fileName = "blog" + UtilDateTime.NowS() + ".xls";
                attachment_url = Gc.UploadUrl + "/attachment/blog/" + fileName;
                fileName       = Path.Combine(Gc.UploadPath, "attachment", "blog", fileName);
                UtilExcelOle.DataTableToExcel(fileName, dt);
            }

            return(new JObject(
                       new JProperty("success", true),
                       new JProperty("data", attachment_url)
                       ));
        }