newsManage

public partial class admin_Modules_NewsInfoManages : ModuleBase
{
   
    /********************************显示新闻*****************/
   
    public Random rd;//用于随机产生数据
    int pageSize = 10;//每页要显示的记录条数
    private static int pageIndex = 0;//当前页从0开始
    private static int newsId;//标识新闻ID
    private static string  newsTilte1;//标识新闻标题
    private static int upn=0;//记录点击上传图片按钮的次数


    protected void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        {
            pageIndex = 0;
            dlsNewsTypeBind();//绑定新闻类型下拉列表
            dlsNewsType1Bind();//绑定新闻类型下拉列表 添加/修改中
            ChkedOrChke.Text = "全选";
            ShowNewsWithPage();//分页显示新闻列表
            divModify.Visible = false;//块修改隐藏
            divShowNewsAll.Visible = true;//块新闻列表显示
            ViewState["UpFile"] = "";
        }
    }

    /// <summary>
    /// dlsNewsType控件绑定事件
    /// </summary>
    private void dlsNewsTypeBind()
    {
        //动态生成Datalist控件的数据,用于显示所有类型的新闻
          //实例dataList ListItem
        ListItem ListAll = new ListItem();
        ListAll.Text = "***所有类型***";//控件的Text属性
        ListAll.Value = "%";//控件的Value
        ListAll.Selected = true;
        dlsNewsType.Items.Add(ListAll);//ListAll加入下拉列表dlsNewsType
        NewsSortAccess newsSortAccess = new NewsSortAccess();
        //实例一个数据集,用于接收方法GetAllNewsSort()传回的值
        DataSet ds = new DataSet();
        ds = newsSortAccess.GetAllNewsSort();
        //实例一个数据表,
        DataTable infoCateTb = ds.Tables[0];
        //在infoCateTb中取得每条记录,绑定到dlsNewsType中控件上
        foreach (DataRow row in infoCateTb.Rows)
        {
            ListItem newlistItem = new ListItem();
            newlistItem.Text = row["NewsSortName"].ToString();
            newlistItem.Value = row["NSID"].ToString();
            this.dlsNewsType.Items.Add(newlistItem);
        }

    }

  /// <summary>
    ///  实现分页显示
    /// </summary>
    private void ShowNewsWithPage()
    {
        NewsAccess newsAccess = new NewsAccess();
        //定义数组参数pages
        string[] pages = new string[2];
        //如果dlsNewsType选择的是%,显示所有新闻列表,否则分类显示
        if (dlsNewsType.SelectedValue == "%")
        {
            //为Datalist控件提供数据源
            this.dlsNews.DataSource = newsAccess.GetAllNews(pageSize, pageIndex, ref pages);
        }
        else //按所属类别,显示新闻
        {
            int dlsValue = Int32.Parse(dlsNewsType.SelectedValue);
            this.dlsNews.DataSource = newsAccess.GetAllNewsByNewsSorce(pageSize, pageIndex, dlsValue, ref pages);
        }
        //为datalist控件绑定主键为数据源的newID列
        dlsNews.DataKeyField = "NewsID";
        this.dlsNews.DataBind();
        lbPageCount.Text = pages[1].ToString();
        lblAllRecord.Text = pages[0].ToString();
        this.lblCurPage.Text = Convert.ToString(pageIndex + 1);
        if (Int32.Parse(lbPageCount.Text) <= Int32.Parse(lblCurPage.Text))
        {
            btnNext.Enabled = false;
            btnPre.Enabled = true;
        }
        else if (Int32.Parse(lblCurPage.Text) < 2)
        {
            btnNext.Enabled = true;
            btnPre.Enabled = false;
        }
        else
        {
            btnNext.Enabled = true;
            btnPre.Enabled = true;
        }
        if (Convert .ToInt32(lblCurPage.Text) <= 1)
        {
            btnPre.Enabled = false;
        }
    }
    //控件dlsNewsType改变后发生事件
    protected void dlsNewsType_SelectedIndexChanged(object sender, EventArgs e)
    {
        //分类显示新闻
        ShowNewsWithPage();
    }

    //首页
    protected void btnFirst_Click(object sender, EventArgs e)
    {
        pageIndex = 0;
        ShowNewsWithPage();


    }
    //上一页
    protected void btnPre_Click(object sender, EventArgs e)
    {
        pageIndex = pageIndex - 1;
        ShowNewsWithPage();

    }
    //下一页
    protected void btnNext_Click(object sender, EventArgs e)
    {
        pageIndex = pageIndex + 1;
        ShowNewsWithPage();

    }
    //尾页
    protected void btnLast_Click(object sender, EventArgs e)
    {
        pageIndex = Int32.Parse(lbPageCount.Text) - 1;
        ShowNewsWithPage();

    }


    //全选或反选
    protected void ChkedOrChke_CheckedChanged(object sender, EventArgs e)
    {

        if (ChkedOrChke.Checked)//复选框ChkedOrChke被选中
        {
            ChkedOrChke.Text = "反选";//text属性
            //在DataList控件中项中循环查找CheckNews控件,
            foreach (DataListItem item in dlsNews.Items)
            {
                //找到控件转化为checkBox控件,并选中
                CheckBox chkNews = (CheckBox)item.FindControl("CheckNews");
                chkNews.Checked = true;
            }
        }
        else //复选框ChkedOrChke不被选中
        {
            ChkedOrChke.Text = "全选";
            //在DataList控件中项中循环查找CheckNews控件,
            foreach (DataListItem item in dlsNews.Items)
            {
                //找到控件转化为checkBox控件,并选中
                CheckBox chkNews = (CheckBox)item.FindControl("CheckNews");
                chkNews.Checked = false;
            }
        }

    }

    //删除新闻
    protected void btnDel_Click(object sender, EventArgs e)
    {
        int m = 0;//记录删除的条数
        int n = 0;//记录要删除的条数
        //在DataList控件中项中循环查找CheckNews控件,
        foreach (DataListItem item in dlsNews.Items)
        {

            CheckBox checkNew = (CheckBox)item.FindControl("CheckNews");
            if (checkNew.Checked)
            {
                n++;
                NewsAccess newsAccess = new NewsAccess();
                int newsId = Int32.Parse(dlsNews.DataKeys[item.ItemIndex].ToString());
              
                bool flag = newsAccess.DelNewsByNewsID(newsId);
                if (flag)
                {
                    m++;
                }
            }
            if (n == 0)
            {
                //没有选择行
                messageBox(Page, "没有选择任何行");
            }

        }
        if (m == n)
        {
            //全部删除成功
            messageBox(Page, "全部删除成功!");
            ///
            ///删除新闻图片
            NewsVO newsVo = new NewsVO();
            newsVo = GetNewsBynewsID(newsId);
            string delPathnewPic = Server.MapPath(".") + "//" + newsVo.NewsPicturePath;//同时删除此条新闻上的图片
            if (File.Exists(delPathnewPic))
            {
                try
                {
                    //若文件存在删除文件
                    File.Delete(delPathnewPic);
                    lblShow.Text = "删除成功";
                }
                catch (Exception ex)
                {
                    lblShow.Text = ex.Message;
                }
            }

            ShowNewsWithPage();
        }
        else if (m > 0 && n > m)
        {
            messageBox(Page, "删除成功" + m + "还有" + (n - m) + "条可能已经不存在或则数据库已经关闭");
        }
        else
        { ;}

    }

    protected void btnAdd_Click(object sender, EventArgs e)
    {
      
       // dlsNewsType1Bind();
        clareForAdd();
        ViewState["SaveState"] = "添加";
        divShowNewsAll.Visible = false;
        divModify.Visible = true;
        shangchuan.Visible = false;
    }
    /**********************************修改或添加新闻********************/

    //修改新闻
   
    protected void dlsNews_ItemCommand(object source, DataListCommandEventArgs e)
    {
        //1、在DlsNew控件中找到“修改”按键所在的行,
        //2、在行中找到所绑定的列,也就是新闻ID
        //3、根据ID查找到新闻信息,在分别显示页面中的各控件
        ViewState["UpFile"] = "";
        //dlsNewsType1Bind();
        if (e.CommandName == "Modify")
        {
            //找到要修改的行的索引
            int row = e.Item.ItemIndex;
            //根据索引找到行绑定的主键
            newsId = Int32.Parse(dlsNews.DataKeys[row].ToString());
            NewsVO newsVo = new NewsVO();
            newsVo = GetNewsBynewsID(newsId);
            this.txtSub.Text = newsVo.NewsTitle.ToString();
            newsTilte1 = newsVo.NewsTitle.ToString().Trim ();
            this.txtSorce.Text = newsVo.Source.ToString();
            this.dlsNewsType1.SelectedValue = newsVo.NSId.ToString();
            //this.FileUpPic.ClientID = newsVo.NewsPicturePath;
            this.txtUpFile.Text = newsVo.NewsPicturePath.ToString();
            this.lblpath.Text = newsVo.NewsPicturePath.ToString();//用于保存修改前的图片地址,如果记录更新,用这个地址找到此图片,然后删除
            this.FreeTextBox1.Text = newsVo.NewsContent;

        }
        ViewState["SaveState"] = "修改";
        divShowNewsAll.Visible = false;
        divModify.Visible = true;
        shangchuan.Visible = false;

    }

    /// <summary>
    /// 绑定下拉列表dlsNewsType1
    /// </summary>
    private void dlsNewsType1Bind()
    {
        //绑定DLSNEWSTyp1控件.用于点击修改时,DlsNewsType1控件被选中对应的值
        NewsSortAccess newsSortAccess = new NewsSortAccess();
        DataSet ds = new DataSet();
        ds = newsSortAccess.GetAllNewsSort();

        DataTable infoCateTb = ds.Tables[0];
        dlsNewsType1.Controls.Clear();
        foreach (DataRow row in infoCateTb.Rows)
        {
            ListItem newlistItem = new ListItem();
            newlistItem.Text = row["NewsSortName"].ToString();
            newlistItem.Value = row["NSID"].ToString();
            this.dlsNewsType1.Items.Add(newlistItem);
        }

    }


    /// <summary>
    /// //根据新闻ID查找新闻信息
    /// </summary>
    /// <param name="newsID"></param>
    /// <returns></returns>
    public NewsVO GetNewsBynewsID(int newsID)
    {
        NewsAccess newsAccess = new NewsAccess();
        return newsAccess.GetNewsByNewsID(newsID);
    }

  
    /// <summary>
    ///  清空各控件,用于点添加新闻事件时
    /// </summary>
    public void clareForAdd()
    {
        this.FreeTextBox1.Text = null;
        this.txtSorce.Text = null;
        this.txtSub.Text = null;
    }

    修改方法
    public void modify()
    {
        bool flag = false;
        try
        {
            NewsVO newsVo = new NewsVO();
            string nesTi = this.txtSub.Text.ToString();
            if (nesTi.Trim() == newsTilte1)
            {
                nesTi = this.txtSub.Text.ToString();
            }
            else
            {
                if (FindNewsTilte(nesTi))
                {
                    messageBox(Page, "此标题已经存在,");

                }
                else
                {
                    newsVo.NewsTitle = nesTi;
                }
            }
            //newsVo.NewsTitle = this.txtSub.Text.ToString();
            newsVo.Source = this.txtSorce.Text.ToString();
            newsVo.NewsContent = this.FreeTextBox1.Text;
            newsVo.NewsPicturePath = this.txtUpFile.Text.ToString();
            newsVo.PublishTime = DateTime.Now;
            newsVo.NSId =Int32 .Parse ( dlsNewsType1.SelectedValue );
            NewsAccess newsAccess = new NewsAccess();
            flag = newsAccess.UpdateNews(newsVo, newsId);
            if (flag == true)//查入成功
            {
                messageBox(Page, "修改成功!");
            }
            else //添加不成功,要删除刚上传上的图片
            {
                deltPic();
            }
            //如果修改时上传了新图片
            if (ViewState["UpFile"].ToString() == "已经上传")
            {
                //标识上传到服务器上的文件的路径
                string delFile = Server.MapPath(".") + "//"+lblpath.Text;
                //文件是否存在
                if (File.Exists(delFile))
                {
                    try
                    {
                        //若文件存在删除文件
                        File.Delete(delFile);
                        lblShow.Text = "删除成功";
                    }
                    catch (Exception ex)
                    {
                        lblShow.Text = ex.Message;
                    }
                }
            }
        }
        catch (Exception ex)
        {
            messageBox(Page, ex.Message);
        }
    }
  
    ///添加新闻方法
    public void AddNews()
    {
        bool flag = false;
        try
        {
            NewsVO newsVo = new NewsVO();
            string nesTi=this.txtSub.Text.ToString();
           
            if (FindNewsTilte(nesTi))
            {
                messageBox(Page, "此标题已经存在,");

            }
            else
            {
               newsVo.NewsTitle = nesTi;
            }
            newsVo.Source = this.txtSorce.Text.ToString();
            newsVo.NewsContent = this.FreeTextBox1.Text;
            newsVo.NewsPicturePath = this.txtUpFile.Text.ToString();
            newsVo.PublishTime = DateTime.Now;
            newsVo.NSId = Int32.Parse (dlsNewsType1.SelectedValue);
            NewsAccess newsAccess = new NewsAccess();
            flag = newsAccess.AddNews(newsVo);
            if (flag == true)//查入成功
            {
                messageBox(Page, "添加成功!");
            }
            else //添加不成功,要删除刚上传上的图片
            {
                deltPic();
            }
           
        }
        catch (Exception ex)
        {
            messageBox(Page, ex.Message);
        }


    }

    //根据新闻标题查找新闻
    public bool FindNewsTilte(string newsTitle)
    {
        bool flag = false;
        NewsAccess newsAccess=new NewsAccess ();
        DataSet ds = new DataSet();
        ds = newsAccess.GetNewsIDByNewsTitle(newsTitle);
        {
            int rows = ds.Tables[0].Rows.Count;

            if (rows>0)
                {
                    flag = true;
                }
          
        }
        return flag;
    }
  

    /// <summary>
    /// //保存控件单击事件
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnSave_Click(object sender, EventArgs e)
    {
        //如是修改,先读出原图片的地址放到txtUpFile.text,如果修改图片,用图片地址为上传页面所传过来的地址参数修改txtUpFile.text
        if (ViewState["SaveState"].ToString() == "修改")
        {
            modify();
        }
        else
        {

          
            AddNews();
        }
       
        divShowNewsAll.Visible = true;
        divModify.Visible = false;
        upn = 0;
        ShowNewsWithPage();
    }
    /// <summary>
    /// 取消按键单击事件
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnCance_Click(object sender, EventArgs e)
    {
        //如果已经上传图片,根据上传页面所传过来的地址参数删除图片文件
        if (ViewState["UpFile"].ToString() == "已经上传")
        {
            deltPic();

        }
        //如果没有上传就显示DivShowNews
        divModify.Visible = false;
        divShowNewsAll.Visible = true;
        upn = 0;
    }

 

    /// <summary>
    /// //用于删除所上传上的图片
    /// </summary>
    public void deltPic()
    {


        //标识上传到服务器上的文件的路径
        string delFile = Server.MapPath(".") +"//"+ txtUpFile.Text;
        //文件是否存在
        if (File.Exists(delFile))
        {
            try
            {
                //若文件存在删除文件
                File.Delete(delFile);
                lblShow.Text = "删除成功";
            }
            catch (Exception ex)
            {
                lblShow.Text = ex.Message;
            }
        }
    }
    /*****************************上传图片*************************************/
    //上传图片事件
    protected void btnUpFile_Click(object sender, EventArgs e)
    {
        //显示浏览控件
        this.shangchuan.Visible = true;
        //隐藏上传图片按钮行
        this.trUPfile.Visible = false;
    }

    /// <summary>
    ///上传图片的具体操作
    /// 如果是第一次点击此控件,进行上传.如再次点击此控件,要再次上传的图片,如果再次上传成功,
    /// 就删除上一次所上传的图片,如果不成功点击保存,被系统保存的图片为上次上传的图片!
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnUpFilePic_Click(object sender, EventArgs e)
    {
        upn++;
        string name = FileUpload1.PostedFile.FileName; // 获取将上传文件的名称
        string size = FileUpload1.PostedFile.ContentLength.ToString();//获取将上传文件的大小
        string type = FileUpload1.PostedFile.ContentType;  //获取将上传文件的MIME内容类型
        string type2 = name.Substring(name.LastIndexOf(".") + 1);  //获取文件后缀名

        //string wpath = "photo//" + name; ;//写入到数据库里的虚拟路径

        rd = new Random(1);
        string filename = DateTime.Now.Date.ToString("yyyymmdd") + DateTime.Now.ToLongTimeString().Replace(":", "") + rd.Next(9999).ToString();
        if (name == "")
        {
            messageBox(Page, "请选择图片!");
        }
        else
        {

            if (type == "image/pjpeg" || type == "image/gif") //判断文件的类型及格式
            {
                if (Convert.ToInt32(size) > 35360)
                {
                    messageBox(Page, "你的图片过大,不能上传!");
                }
                else
                {
                    try
                    {
                        FileUpload1.SaveAs(Server.MapPath(".") + "//images//newsImagesFace//" + filename + "." + type2);//将文件保存到path路径里
                    }
                    catch (Exception ex)//如果上传不成功发出异常并跳出此次事件
                    {
                        messageBox(Page, "上传不成功"+ex);
                        return;
                    }
                    messageBox(Page, "上传成功");
                    ViewState["UpFile"] = "已经上传";
                    if (upn >= 2)//如果第二次点击btnUpFilePic
                    {
                        try
                        {
                            string fileDelMores = Server.MapPath(".") + "//" + txtUpFile.Text;//第一次上传图片的地址
                            if (File.Exists(fileDelMores))
                            {
                                File.Delete(fileDelMores);
                            }
                        }
                        catch (Exception ex)
                        {
                            messageBox(Page, ex.Message);
                        }

                    }
                    this.txtUpFile.Text = "images//newsImagesFace//" + filename + "." + type2;
                    string upPath = "images//newsImagesFace//" + filename + "." + type2;


                    this.shangchuan.Visible = false;
                    this.trUPfile.Visible = true;
                }

            }
            else
            {

                messageBox(Page, "图片为非法格式,不能上传!");

            }
        }
    }
}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值