zoukankan      html  css  js  c++  java
  • ERP合同管理流程查询(三十一)

    根据任务表编号,及相关表单编号获取当前流程表的编号:

    CREATE FUNCTION [dbo].[FN_GetDynamicId] 
    (
    	@tasktableid INT,
    	@taskid INT
    )
    RETURNS INT 
    AS
    BEGIN
    	
    	DECLARE @listid INT
    
    	SELECT TOP 1 @listid=ListID FROM TaskListRecord
    	WHERE TaskTableID=@tasktableid AND TaskID=@taskid
    	ORDER BY ListID DESC
    		
    	RETURN @listid
    END
    GO
    

     根据用户的编号返回用户姓名:

    CREATE FUNCTION [dbo].[FN_GetUserNameByID]
    (
    	@UserID INT
    )
    RETURNS NVARCHAR(20) 
    AS
    BEGIN
    	
    	DECLARE @UserName NVARCHAR(20)
        SELECT @UserName=UserName FROM dbo.UserManager
        WHERE UserId=@UserID
    	RETURN @UserName
    
    END
    

     根据当前流程表返回当前任务提者:

    CREATE FUNCTION [dbo].[FN_CurrentTransmitter]
    (
    	@TaskTableID INT,
    	@taskid INT
    	
    )
    RETURNS NVARCHAR(20) 
    AS
    BEGIN
    	
    	DECLARE @UserName NVARCHAR(20)
      SELECT TOP 1 @UserName=dbo.FN_GetUserNameByID(Transmitter) FROM dbo.TaskListRecord
      WHERE TaskTableID=@TaskTableID AND TaskID=@taskid
      ORDER BY ListID DESC 
       
    	RETURN @UserName
    END
    

     获取当前任务的所属部门:

    CREATE FUNCTION [dbo].[getDepartMentByTaskListRecord]
    (
    	@TaskTableID INT,
    	@TaskID INT
    )
    RETURNS NVARCHAR(50)
    AS
    BEGIN
    
      DECLARE @departMent NVARCHAR(50)
       SELECT TOP 1 @departMent =dbo.FN_GetDepartMentByID(DepartMentId)
       FROM dbo.TaskListRecord WHERE TaskID=@TaskID AND TaskTableID=@TaskTableID
       ORDER BY ListID DESC 
    	
        RETURN @departMent
    
    END
    

     创建视图:

    CREATE VIEW [dbo].[View_ContractShowList]
    AS
    SELECT
    	ContractID,
    	ContractName,
    	ContractNumber,
    	CustomerID,
    	CustomerName=dbo.getCustomerByID(CustomerID),
    	CreateTime,
    	ContractSum,
    	SignTime,
    	EffectiveTime,
    	EndTime,
    	ContractType,
    	UserID,
    	UserName=dbo.getUserNameByUserID(UserID),
    	ExecutiveState,
    	ContractDesc,
    	AssessorAuditing,
    	DeleteState,
    	Transmitter=ISNULL(dbo.FN_CurrentTransmitter(1,ContractID),'数据错误'),
    	Listid= ISNULL(dbo.FN_GetDynamicId(1,ContractID),0),
    	AuditingSate=ISNULL(dbo.FN_CurrentAuditingSate(1,ContractID),0),
    	DepartMent=ISNULL(dbo.getDepartMentByTaskListRecord(1,ContractID),'数据错误')
    	
    FROM
    	BioCRMContract
    

     根据客户编号返回客户信息:

    CREATE FUNCTION [dbo].[getCustomerByID]
    (
    	@ID INT
    )
    RETURNS NVARCHAR(100)
    AS
    BEGIN
    	
    	DECLARE @CustomerName NVARCHAR(100)
    	SELECT @CustomerName=CustomerName  FROM  dbo.BioCrmCustomer
    	WHERE CustomerID=@ID
    	-- Return the result of the function
    	RETURN  @CustomerName
    END
    

     前端界面:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CRMContractListShow.aspx.cs" Inherits="BioErpWeb.CRMSystem.CRMContract.CRMContractListShow" %>
    
    <%@ Register assembly="AspNetPager" namespace="Wuqi.Webdiyer" tagprefix="webdiyer" %>
    
    <%@ Register src="../../UserControl/CRMChannelMenuBar.ascx" tagname="CRMChannelMenuBar" 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" />
        <script src="../../Scripts/jquery-1.4.1.js" type="text/javascript"></script>
        <link href="../../Scripts/jquery-ui-1.7.custom.css" rel="stylesheet" type="text/css" />
        <script src="../../Scripts/jquery-ui-1.7.custom.min.js" type="text/javascript"></script>
        <link href="../../Styles/TopMenu2.css" rel="stylesheet" type="text/css" />
        <script type="text/javascript">
            $().ready(function () {
                $("#txtNoteTime").datepicker({ dateFormat: 'yy-mm-dd' });
            });
        </script>
     
    </head>
    <body>
        <form id="form1" runat="server">
        
       <div>
    
       
       </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" Width="100px"></asp:TextBox>
                     </td>
                     <td class="tdsearch">
                      <asp:Label ID="Label2" runat="server" Text="合同负责人:"></asp:Label>
                         <asp:TextBox ID="txtUserName" runat="server"  Width="100px"></asp:TextBox>
                    </td>
                      <td class="tdsearch">
                         <asp:Label ID="Label11" runat="server" Text="提交时间"></asp:Label>
                         <asp:TextBox ID="txtNoteTime" runat="server"  Width="100px"></asp:TextBox>
                    </td>
                     <td class="tdsearch">
                         <asp:Label ID="Label3" runat="server" Text="是否删除"></asp:Label>
                         <asp:DropDownList ID="ddlState" runat="server">
                             <asp:ListItem Value="0">否</asp:ListItem>
                             <asp:ListItem Value="1">是</asp:ListItem>
                         </asp:DropDownList>
                     </td>
                       
                     <td class="tdsearch">
                         <asp:ImageButton ID="imgbutnSearch" Width="60" Height="22" runat="server" 
                             ImageUrl="~/Web/images/Btnsearch.gif" onclick="imgbutnSearch_Click" /> 
                         </td>
                 </tr>
                 <tr>
                     <td colspan="6" class="bottomtd">
                         <asp:GridView ID="GridView1" Width="100%"  runat="server"  AutoGenerateColumns="False" DataKeyNames="ContractID">
                             <Columns>                   
                                 <asp:TemplateField HeaderText="合同编号" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>                                 
                                         <asp:Label ID="Label4" runat="server" Text='<%# Eval("ContractNumber") %>'></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("ContractName") %>'></asp:Label>
                                     </ItemTemplate>
                                     <ItemStyle Width="120px" HorizontalAlign="Center" />
                                    <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
    
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>
                                 <asp:BoundField  DataField="AuditingSate" HeaderText="状态" HeaderStyle-HorizontalAlign="Center"/>
                                 
                                 <asp:TemplateField HeaderText="合同负责人" HeaderStyle-HorizontalAlign="Center">
                                     <ItemTemplate>
                                          <asp:Label ID="Label6" runat="server" Text='<%# Eval("UserName") %>'></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='<%# Convert.ToDateTime(Eval("CreateTime")).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("DepartMent") %>'></asp:Label>
                                     </ItemTemplate>   
    <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
                                     <ItemStyle HorizontalAlign="Center" />                          
                                 </asp:TemplateField>
                                 
                                 <asp:TemplateField HeaderText="送达人" HeaderStyle-HorizontalAlign="Center">
                                    <ItemTemplate>
                                          <asp:Label ID="Label10" runat="server" Text='<%#Eval("Transmitter").ToString()%>'></asp:Label>
                                     </ItemTemplate>
    
    <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
    
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField> 
                                     
                                     
                                <asp:TemplateField HeaderText="" HeaderStyle-HorizontalAlign="Center">
                                    <ItemTemplate>
                                         <a href="CRMContractShow.aspx?taskid=<%#Eval("ContractID") %>&listid=<%#Eval("Listid")%>">查看详细</a>
                                     </ItemTemplate>
    
    <HeaderStyle HorizontalAlign="Center"></HeaderStyle>
    
                                     <ItemStyle HorizontalAlign="Center" />
                                 </asp:TemplateField>                
                               
                             </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 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("../../web/UserLogin.aspx");
                }
    
            
                if (!IsPostBack)
                {
    
                    getallBioCRMContractList();
                }
            }
    
    
    
            /// <summary>
            /// 查询所有员工信息
            /// </summary>
            private void getallBioCRMContractList()
            {
                //如果是市场部经理,或客服部经理可以查看所有
                if (SqlComm.getUserRightsByUserId(Session["Userid"].ToString()).Contains(",44,"))
                {
                    this.AspNetPager1.RecordCount = SqlComm.getDataCountByCondition("dbo.View_ContractShowList", condition);
                    this.AspNetPager1.PageSize = pagesize;
                    this.GridView1.DataSource = SqlComm.getDataByPageIndex("dbo.View_ContractShowList", "*", "ContractID", condition, pageindex, pagesize);
                    this.GridView1.DataBind();
                }
                else //员工只能看自己的客户信息
                {
                    condition = condition + " and userid=" + Session["Userid"].ToString();
                    this.AspNetPager1.RecordCount = SqlComm.getDataCountByCondition("dbo.View_ContractShowList", condition);
                    this.AspNetPager1.PageSize = pagesize;
                    this.GridView1.DataSource = SqlComm.getDataByPageIndex("dbo.View_ContractShowList", "*", "ContractID", condition, pageindex, pagesize);
                    this.GridView1.DataBind();
                }
    
    
                for (int i = 0; i < GridView1.Rows.Count; i++)
                {
                    switch (GridView1.Rows[i].Cells[2].Text)
                    {
                        case "0":
                            GridView1.Rows[i].Cells[2].Text = "待审核";
                            GridView1.Rows[i].Cells[2].ForeColor = System.Drawing.Color.Green;
                            break;
                        case "2":
                            GridView1.Rows[i].Cells[2].Text = "执行中";
                            GridView1.Rows[i].Cells[2].ForeColor = System.Drawing.Color.Orange;
                            break;
                        case "3":
                            GridView1.Rows[i].Cells[2].Text = "已完成";
                            GridView1.Rows[i].Cells[2].ForeColor = System.Drawing.Color.Green;
                            break;
                        default:
                            GridView1.Rows[i].Cells[2].Text = "出现错误";
                            break;
                    }
    
                }
            }
    
            protected void AspNetPager1_PageChanged(object sender, EventArgs e)
            {
                pageindex = this.AspNetPager1.CurrentPageIndex - 1;
                getallBioCRMContractList();
            }
    
            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 ContractName like '" + txtName.Text + "%'";
                }
    
                if (this.txtUserName.Text.Trim() != null && this.txtUserName.Text.Trim().Length != 0)
                {
                    condition = condition + " and UserName like '" + txtUserName.Text + "%'";
                }
    
                if (this.ddlState.SelectedValue == "1")
                {
                    condition = condition + " and DeleteState ='True'";
                }
                else
                {
                    condition = condition + " and DeleteState ='False'";
                }
                if (this.txtNoteTime.Text.Trim() != null && this.txtNoteTime.Text.Trim().Length != 0)
                {
                    condition = condition + " and (CreateTime>= '" + this.txtNoteTime.Text + "' and  CreateTime<'" + Convert.ToDateTime(this.txtNoteTime.Text).AddDays(1) + "')";
                }
                getallBioCRMContractList();
            }
    

     审核过程中可以上传合同附件(但必须是合同负责人本人上传)

           int count = conbll.BioCRMContractaUpdate(contract);                       
                        //文档基本信息
                        if (this.FileUpload1.HasFile)
                        {
                            document = new BioCrmCorrelationDocument()
                            {                           
                                Subject = this.txtName.Text,
                                Content = this.FileUpload1.FileBytes,
                                DocumentSize =this.FileUpload1.FileContent.Length,
                                Type = this.FileUpload1.PostedFile.ContentType,
                                ExetendName = System.IO.Path.GetExtension(this.FileUpload1.FileName),
                                DocumentLevel = "绝密",
                                Name = this.FileUpload1.FileName,
                                Remark = "合同附件文档",
                                UserID = int.Parse(this.txtUser2.Text),
                                UploadTime = DateTime.Now
                            };
                         
                          BioCrmCorrelationDocumentBLL documentbll = new BioCrmCorrelationDocumentBLL();
                          //页面加载时如果检查当前合同信息没有附件,此时则上传新的文件,即添加
                          if (documentsid == null)
                          {
                              int docid = documentbll.BioCrmCorrelationDocumentAdd(document);
                              if (docid != 0)
                              {
                                  CRMContractDocument condocument = new CRMContractDocument()
                                  {
                                      DocumentID = docid,
                                      ContractID = int.Parse(Request.QueryString["taskid"].ToString())
    
                                  };
                                  conbll.CRMContractDocumentADD(condocument);
                              }
                          }
                          else //则修改
                          {
                              document.DocumentID = int.Parse(documentsid.ToString());
                              documentbll.BioCrmCorrelationDocumentUpdate(document);
                          }
                        }
    
  • 相关阅读:
    云架构师进阶攻略(3)
    微服务化之服务拆分与服务发现
    终于有人把云计算、大数据和人工智能讲明白了!(1)
    JavaScript的数组详解
    html中给元素添加背景图片或者gif动图
    JavaScript的事件
    JavaScript的匿名函数
    JavaScript获取和操作html的元素
    JavaScript的条件运算符与条件语句
    JavaScript变量、数据类型、函数
  • 原文地址:https://www.cnblogs.com/sunliyuan/p/7247458.html
Copyright © 2011-2022 走看看