zoukankan      html  css  js  c++  java
  • ERP渠道文档管理(二十四)

    基本需求:

    用例图:

    存储过程:

    CREATE PROCEDURE [dbo].[BioErpCrmChannelDocument_ADD]
    @DocumentID int,
    @ChannelID int
     AS 
    	INSERT INTO [BioErpCrmChannelDocument](
    	[DocumentID],[ChannelID]
    	)VALUES(
    	@DocumentID,@ChannelID
    	)
    	
    
    CREATE PROCEDURE BioErpCrmChannelDocument_Update
    @ChannelDocumentID int,
    @DocumentID int,
    @ChannelID int,
    @DeleteState bit
     AS 
    	UPDATE [BioErpCrmChannelDocument] SET 
    	[DocumentID] = @DocumentID,[ChannelID] = @ChannelID,[DeleteState] = @DeleteState
    	WHERE ChannelDocumentID=@ChannelDocumentID 
    
    	CREATE VIEW dbo.View_CRMChannelDocumentInfo
    	AS
    	SELECT     dbo.BioErpCrmManageChannel.ChannelName, dbo.UserManager.UserName, dbo.BioCrmCorrelationDocument.DocumentID, dbo.BioCrmCorrelationDocument.Subject, 
    						  dbo.BioCrmCorrelationDocument.Name, dbo.BioCrmCorrelationDocument.Type, dbo.BioCrmCorrelationDocument.DocumentLevel, 
    						  dbo.BioCrmCorrelationDocument.DocumentSize, dbo.BioCrmCorrelationDocument.ExetendName, dbo.BioCrmCorrelationDocument.[Content], 
    						  dbo.BioCrmCorrelationDocument.UserID, dbo.BioCrmCorrelationDocument.UploadTime, dbo.BioCrmCorrelationDocument.Remark, 
    						  dbo.BioErpCrmChannelDocument.DeleteState, dbo.BioErpCrmChannelDocument.ChannelDocumentID, dbo.BioErpCrmChannelDocument.ChannelID
    	FROM         dbo.BioErpCrmChannelDocument INNER JOIN
    						  dbo.BioCrmCorrelationDocument ON dbo.BioErpCrmChannelDocument.DocumentID = dbo.BioCrmCorrelationDocument.DocumentID INNER JOIN
    						  dbo.UserManager ON dbo.BioCrmCorrelationDocument.UserID = dbo.UserManager.UserId INNER JOIN
    						  dbo.BioErpCrmManageChannel ON dbo.BioErpCrmChannelDocument.ChannelID = dbo.BioErpCrmManageChannel.ChannelID
    

     BLL代码:

     public  class ChannelDocumentBLL
        {
          /// <summary>
          /// 文档信息添加
          /// </summary>
          /// <param name="document">文档对象</param>
          /// <returns>int</returns>
          public int BioErpCrmChannelDocumentAdd(BioErpCrmChannelDocument document)
          {
              SqlParameter[] pars = new SqlParameter[]{
              new SqlParameter("@DocumentID",document.DocumentID),
              new SqlParameter("@ChannelID",document.ChannelID)
             };
    
              return DataBaseHelper.ExcuteSqlReturnInt("BioErpCrmChannelDocument_ADD", CommandType.StoredProcedure, pars);
          }
    
          /// <summary>
          /// 修改文档对象
          /// </summary>
          /// <param name="document">文档对象</param>
          /// <returns>int</returns>
          public int BioErpCrmChannelDocumentUpdate(BioErpCrmChannelDocument document)
          {
              SqlParameter[] pars = new SqlParameter[]{
              new SqlParameter("@ChannelDocumentID",document.ChannelDocumentID),
              new SqlParameter("@DocumentID",document.DocumentID),
              new SqlParameter("@ChannelID",document.ChannelID),
              new SqlParameter("@DeleteState",document.DeleteState)
             };
              return DataBaseHelper.ExcuteSqlReturnInt("BioErpCrmChannelDocument_Update", CommandType.StoredProcedure, pars);
          }
    
          /// <summary>
          /// 根据ID查询文档的详细信息
          /// </summary>
          /// <param name="id"></param>
          /// <returns></returns>
          public ViewCRMChannelDocumentInfo getChannelDocumentViewByDocumentID(string id)
          {
            SqlDataReader reader=  CommTool.SqlComm.GetDataReaderByCondition("View_CRMChannelDocumentInfo", "*", " DocumentID=" + id);
            ViewCRMChannelDocumentInfo  view= null;
            if (reader.Read())
            {
                view = new ViewCRMChannelDocumentInfo()
                {
                    UserName = reader["UserName"].ToString(),
                    ChannelName = reader["ChannelName"].ToString(),
                    DocumentID = int.Parse(reader["DocumentID"].ToString()),
                    UserID = int.Parse(reader["UserID"].ToString()),
                    UploadTime = Convert.ToDateTime(reader["UploadTime"].ToString()),
                    Type = reader["Type"].ToString(),
                    Subject = reader["Subject"].ToString(),
                    Remark = reader["Remark"].ToString(),
                    Name = reader["Name"].ToString(),
                    ExetendName = reader["ExetendName"].ToString(),
                    DocumentSize = long.Parse(reader["DocumentSize"].ToString()),
                    DocumentLevel = reader["DocumentLevel"].ToString()               
                     
                };
              
            }
            reader.Close();
            return view;
          }
    
        }
    

     前端代码:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ChannelDocumentAdd.aspx.cs" Inherits="BioErpWeb.CRMSystem.CrmChannelDocument.ChannelDocumentAdd"  %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <link href="../../Styles/ERPBaseStyle.css" rel="stylesheet" type="text/css" />
        <link href="../../Styles/CalenderStyle.css" rel="stylesheet" type="text/css" />  
        <script src="../../JS/ChannelChoose.js" type="text/javascript"></script>
        <script src="../../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
        <script src="../../Scripts/jquery.validate.js" type="text/javascript"></script>
        <script src="../../Scripts/ValidateMessage_ZW.js" type="text/javascript"></script>
    
        <script type="text/javascript">
            $(document).ready(function () {
                $("#form1").validate();
            });
        
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
         <table class="maintable">
          <tr>
           <td colspan="2" class="titlebar"><span>渠道文档信息上传</span></td>
          </tr>
           <tr>
               <td>主题</td><td><asp:TextBox ID="txtsubJect" runat="server" CssClass="required"></asp:TextBox></td>
           </tr>
          <tr>
                <td>
                    文档等级</td>
              <td>
                  <asp:DropDownList ID="ddlLevel" runat="server">
                      <asp:ListItem Selected="True">一般文件</asp:ListItem>
                      <asp:ListItem>重要文件</asp:ListItem>
                      <asp:ListItem>非常重要文件</asp:ListItem>
                      <asp:ListItem>特别重要</asp:ListItem>
                  </asp:DropDownList>
              </td>
          </tr>
            <tr>
                <td>
                    文档选择</td>
              <td>
                  <asp:FileUpload ID="FileUpload1" runat="server" />
              </td>
          </tr>
              <tr>
                <td>
                    所属渠道
              </td>
              <td >
                  <asp:TextBox ID="txtSuperChannelID" runat="server"></asp:TextBox><input type="button" value="选择" style=" 100px;" onclick="showChannel()" />
              </td> 
          </tr>
              <tr>
                <td>
                    说明</td>
              <td >
                  <asp:TextBox ID="txtRemark" TextMode="MultiLine" Rows="5" runat="server" 
                      Width="380px"></asp:TextBox>
              </td> 
          </tr>
             <tr>
                 <td colspan="2" class="bottomtd">
                 
                     <asp:Button ID="btnSubmit" runat="server" Text="文档信息上传" 
                         onclick="btnSubmit_Click" />
                                      
                     <asp:Button ID="btnReturn" runat="server" Text="返回列表" UseSubmitBehavior="false" onclick="btnReturn_Click" 
                         />
                 </td>
             </tr>
    
         </table>
            <br />
        </div>
        </form>
    </body>
    </html>
    

     后端代码:

      public partial class ChannelDocumentAdd : System.Web.UI.Page
        {
            
            protected void Page_Load(object sender, EventArgs e)
            {
                Session["Userid"] = "29";
                if (!IsPostBack)
                {
                   
                }
            }
    
           
            
            protected void btnSubmit_Click(object sender, EventArgs e)
            {
                BioCrmCorrelationDocument document = new BioCrmCorrelationDocument();
                document.Subject = this.txtsubJect.Text;
                document.Name = DateTime.Now.ToString("yyyyMMddhhmmss") + this.FileUpload1.FileName;
                document.UserID = int.Parse(Session["Userid"].ToString());
                document.Remark = this.txtRemark.Text;
                document.DocumentLevel = this.ddlLevel.SelectedValue;
                document.Content = this.FileUpload1.FileBytes;
                document.DocumentSize = this.FileUpload1.FileContent.Length;
                document.Type = this.FileUpload1.PostedFile.ContentType;
                document.ExetendName = System.IO.Path.GetExtension(this.FileUpload1.FileName);
                
                //物理文件上传
                string filepath = Server.MapPath(@"FilesCRMChannelFiles");
                Comm.FileUpLoad(this.FileUpload1, filepath, document.Name);
                BioCrmCorrelationDocumentBLL documentbll = new BioCrmCorrelationDocumentBLL();
                //文档信息添加 包括文件上传(转换为二进制数组后上传)
                int documentid = documentbll.BioCrmCorrelationDocumentAdd(document);
                if (documentid != 0)
                {
                    BioErpCrmChannelDocument channeldocument = new BioErpCrmChannelDocument();
                    channeldocument.ChannelID = int.Parse(this.txtSuperChannelID.Text.ToString());
                    channeldocument.DocumentID = documentid;
    
                    ChannelDocumentBLL channelbll = new ChannelDocumentBLL();
                   int count=  channelbll.BioErpCrmChannelDocumentAdd(channeldocument);
                   if (count != 0)
                   {
                       ClientScript.RegisterStartupScript(this.GetType(), "test", "alert('添加成功')", true);
                   }
                   else
                   {
                       SqlComm.DeleteTableByCondition("BioCrmCorrelationDocument", " DocumentID=" + documentid);
                       ClientScript.RegisterStartupScript(this.GetType(), "test", "alert('添加失败')", true);
                   }
                }
            }
        }
    

     渠道文档管理显示界面:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ChannelDocumentListShow.aspx.cs" Inherits="BioErpWeb.CRMSystem.CrmChannelDocument.ChannelDocumentListShow" %>
    
    <%@ Register assembly="AspNetPager" namespace="Wuqi.Webdiyer" tagprefix="webdiyer" %>
    
    <%@ Register src="../../UserControl/CRMChannelMenuBar.ascx" tagname="CRMMenuBar" tagprefix="uc1" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <link href="../../Styles/ERPBaseStyle.css" rel="stylesheet" type="text/css" />
        <link href="../../Styles/AspNetPagerStyle.css" rel="stylesheet" type="text/css" />
        <link href="../../Scripts/jquery-ui-1.7.custom.css" rel="stylesheet" type="text/css" />
        <script src="../../Scripts/jquery-1.4.1.js" type="text/javascript"></script>
        <script src="../../Scripts/jquery-ui-1.7.custom.min.js" type="text/javascript"></script>
        <style type="text/css">
        td{ text-align:center;}
        .tdsearch{ line-height:30px;}
        .menubar{ background:url(../Web/images/block_hd_bg.png); height:25px; 100%;}
        .menubar ul{ margin:0px; padding:0px; list-style:none;}
        .menubar ul li{ display:inline; line-height:25px;}
        .menubar ul li a{display:inline-block;  text-align:center; 100px; color:#0066CC; text-decoration:none;}
    
        </style>
        <script type="text/javascript">
            $().ready(function () {
                $("#txtDate").datepicker({dateFormat:'yy-mm-dd'});
            });
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
     
            <uc1:CRMMenuBar ID="CRMMenuBar1" runat="server" />
     
        </div>
        <div>
             <table class="maintable" style=" 900px;">
                 <tr>
                     <td colspan="5" class="titlebar">
                         <span>渠道文档管理</span>
                     </td>
                 </tr>
                 <tr>
                     <td class="tdsearch">
                         <asp:Label ID="Label1" runat="server" Text="文档主题:"></asp:Label>
                         <asp:TextBox ID="txtName" runat="server"></asp:TextBox>
                     </td>
                     <td class="tdsearch">
                         <asp:Label ID="Label2" runat="server" Text="渠道名:"></asp:Label>
                          <asp:TextBox ID="txtCName" runat="server"></asp:TextBox>
                  </td>
                     <td class="tdsearch">
                         <asp:Label ID="Label3" runat="server" Text="上传时间:"></asp:Label>
                         <asp:TextBox ID="txtDate" runat="server"></asp:TextBox>
                          
                     </td>
                     
                     <td class="tdsearch">
                         <asp:ImageButton ID="imgbutnSearch" Width="60" Height="22" runat="server" 
                             ImageUrl="~/Web/images/Btnsearch.gif" onclick="imgbutnSearch_Click" /> 
                         <asp:ImageButton ID="imgbtnNew" runat="server"  Width="60" Height="22" 
                             ImageUrl="~/Web/images/btnadd.gif" onclick="imgbtnNew_Click"/>
                     </td>
                 </tr>
                 <tr>
                     <td colspan="5" class="bottomtd">
                         <asp:GridView ID="GridView1" Width="100%"  runat="server"  AutoGenerateColumns="False" DataKeyNames="DocumentID">
                             <Columns>
                                 <asp:TemplateField HeaderText="文档主题" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>
                                         <asp:Label ID="Label4" runat="server" Text='<%# Eval("Subject") %>'></asp:Label>
                                     </ItemTemplate>
                                     <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>
                                 <asp:TemplateField HeaderText="文档名" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>
                                         <asp:Label ID="Label5" runat="server" Text='<%# Eval("Name") %>'></asp:Label>
                                     </ItemTemplate>
                                     
                                     <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>
                                 <asp:TemplateField HeaderText="所属渠道" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>
                                         <asp:Label ID="Label6" runat="server" Text='<%# Eval("ChannelName") %>'></asp:Label>
                                     </ItemTemplate>
                                     <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>
                                 <asp:TemplateField HeaderText="文件级别" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>
                                         <asp:Label ID="Label7" runat="server" Text='<%# Eval("DocumentLevel") %>'></asp:Label>
                                     </ItemTemplate>
                                     <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>
                                 <asp:TemplateField HeaderText="上传时间" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>
                                         <asp:Label ID="Label9" runat="server" Text='<%# Convert.ToDateTime( Eval("UploadTime")).ToString("yyyy-MM-dd") %>'></asp:Label>
                                     </ItemTemplate>
                                     <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>
                           
                             <asp:TemplateField HeaderText="上传用户" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>
                                         <asp:Label ID="Label9" runat="server" Text='<%# Eval("UserName") %>'></asp:Label>
                                     </ItemTemplate>
                                     <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>
                                                     
                                 <asp:HyperLinkField DataNavigateUrlFields="DocumentID" 
                                     DataNavigateUrlFormatString="DocumentEditAndDown.aspx?ID={0}" HeaderText="操作" 
                                     Text="下载/编辑">
                                 <HeaderStyle HorizontalAlign="Center" />
                                 <ItemStyle HorizontalAlign="Center" />
                                 </asp:HyperLinkField>
                             </Columns>
                         </asp:GridView>
                     </td>
                 </tr>
                 <tr>
                  <td  colspan="5">
                      <webdiyer:AspNetPager ID="AspNetPager1" runat="server"   CssClass="paginator" CurrentPageButtonClass="cpb"
                          onpagechanged="AspNetPager1_PageChanged">
                      </webdiyer:AspNetPager>
                     </td>
                 </tr>
         </table>
        </div>
        </form>
    </body>
    </html>
    

     后端代码:

     public partial class ChannelDocumentListShow : System.Web.UI.Page
        {
            
            public static int pageindex = 0;
            public static int pagesize = 10;
            public static string condition = "";
    
            protected void Page_Load(object sender, EventArgs e)
            {
                Session["Userid"] = "29";
                if (Session["Userid"] == null)
                {
                  Response.Redirect(@"..WebUserLogin.aspx");
                  return;
                }
    
               if (!IsPostBack)
                {
                   getallPageList();
                }
            }
    
       
    
            /// <summary>
            /// 查询所有联系人信息
            /// </summary>
            private void getallPageList()
            {
                string id = Session["Userid"].ToString();
                condition += " and UserID=" + id;
                if (UserLogin.user.RoleId == 6) //市场部经理
                {
                    condition  += " or UserID !=" + id;
                }
                this.AspNetPager1.RecordCount = SqlComm.getDataCountByCondition("dbo.View_CRMChannelDocumentInfo", condition);
                this.AspNetPager1.PageSize = pagesize;
                this.GridView1.DataSource = SqlComm.getDataByPageIndex("dbo.View_CRMChannelDocumentInfo", "*", "DocumentID", condition, pageindex, pagesize);
                this.GridView1.DataBind();           
            }
    
            protected void AspNetPager1_PageChanged(object sender, EventArgs e)
            {
                pageindex = this.AspNetPager1.CurrentPageIndex - 1;
                getallPageList();
            }
    
            protected void imgbutnSearch_Click(object sender, ImageClickEventArgs e)
            {
                pageindex = 0;
                condition = "";
                if (txtName.Text.Trim() != null && this.txtName.Text.Trim().Length != 0)
                {
                    condition = condition + " and Subject like '" + txtName.Text + "%'";
                }
    
                if (this.txtCName.Text.Trim() != null && this.txtCName.Text.Trim().Length != 0)
                {
                    condition = condition + " and ChannelName like '" + txtCName.Text + "%'";
                }
    
                if (this.txtDate.Text.Trim() != null && this.txtDate.Text.Trim().Length!=0)
                {
                    condition = condition + " and (UploadTime >= '" + this.txtDate.Text + "' AND UploadTime< '" + Convert.ToDateTime(this.txtDate.Text).AddDays(1) + "')";
                }
                getallPageList();
            }
    
            protected void btnNew_Click(object sender, EventArgs e)
            {
    
            }
    
            protected void imgbtnNew_Click(object sender, ImageClickEventArgs e)
            {
                Server.Transfer("ChannelDocumentAdd.aspx");
            }
    
        }
    
  • 相关阅读:
    (转)解决AJAX中使用UpdatePanel后再用Response.Write();等无法弹出对话框问题 3法
    ASP.NET AJAX(开发代号Atlas)重要参考资源大收集
    Ajax.NET 和 Atlas 区别
    SqlDataAdapter的几种常用方法
    C# 2.0与泛型
    DataView 使用技巧 [转]
    .net事务
    SQL Server 2005 SQL Server 2000 改进
    Crystal Reports for Visual Studio 2005 学习一(报表绑定方案)
    oracle的substr函数的用法
  • 原文地址:https://www.cnblogs.com/sunliyuan/p/7191443.html
Copyright © 2011-2022 走看看