ERP渠道信息的修改和渠道联系记录(二十三)

 

用例图:

 

前端代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ChannelEdit.aspx.cs" Inherits="BioErpWeb.CRMSystem.CrmChannel.ChannelEdit"  %>
<!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/CheckUserName.js" type="text/javascript"></script>
    <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/validateExtender.js" type="text/javascript"></script>
    <script src="../../Scripts/ValidateMessage_ZW.js" type="text/javascript"></script>
    <script src="../../Scripts/cld.js" type="text/javascript"></script>
    <style type="text/css">
        .style1
        {
            height: 22px;
        }
        .style3
        {
            width: 352px;
        }
        .style4
        {
            width: 114px;
        }
        .style5
        {
            width: 92px;
        }
        
        .linkmantable{ width:100%; border:solid 1px; border-collapse:collapse; }
         .linkmantable td{ border:solid 1px ;}
         .linkmantable input{ width:70px;}
        </style>
       <script type="text/javascript">
           var i = 0; 
            $(document).ready(function () {             
               $("#form1").validate();              
               jQuery("#btnAddNew").click(function () {
                   i++;
                   tr = '';
                   tr = tr + ' <tr id="tr' + i + '">';
                   tr = tr + '  <td><input  name="txtLinkMan1"  MaxLength="10"></input></td>';
                   tr = tr + '  <td>';
                   tr = tr + '    <select  name="ddlSex1" > <option Value="0">男</option> <option Value="1">女</option></select>';
                   tr = tr + '    </td>';
                   tr = tr + '   <td>';
                   tr = tr + '    <input  name="txtBirthday1" onfocus="setday(this)" onclick="setday(this)"  MaxLength="20"></input></td>';
                   tr = tr + '  <td><select  name="ddlMainLink1"> <option Value="1">是</option> <option Value="0">否</option> </select></td>';
                   tr = tr + ' <td>   <input  name="txtOfficePhone"  MaxLength="20" ></input></td>';
                   tr = tr + '  <td> <input  name="txtMobile1"  MaxLength="20" ></input></td>';
                   tr = tr + '  <td> <input name="txtEmail11"  MaxLength="20"></input></td>';
                   tr = tr + ' <td> <input name="txtAddress1"  MaxLength="50" ></input></td>';
                   tr = tr + ' <td> <input  name="txtQQ1"  MaxLength="15"></input></td>';
                   tr = tr + ' <td> <input name="txtRemark1"  MaxLength="200"></input></td>';
                   tr = tr + ' </tr>';

                   $("#caption").before(tr);

               });

               jQuery("#btnDelete").click(function () {
                   $("#tr" + i).remove();
                   i--;
               });

           });


           function Autoaddrows(count) {
               for (var j = 0; j < count; j++) {
                   i++;
                   tr = '';
                   tr = tr + ' <tr id="tr' + i + '">';
                   tr = tr + '  <td><input  name="txtLinkMan1"  MaxLength="10"></input></td>';
                   tr = tr + '  <td>';
                   tr = tr + '    <select  name="ddlSex1" > <option Value="0">男</option> <option Value="1">女</option></select>';
                   tr = tr + '    </td>';
                   tr = tr + '   <td>';
                   tr = tr + '    <input  name="txtBirthday1" onfocus="setday(this)" onclick="setday(this)"  MaxLength="20"></input></td>';
                   tr = tr + '  <td><select  name="ddlMainLink1"> <option Value="1">是</option> <option Value="0">否</option> </select></td>';
                   tr = tr + ' <td>   <input  name="txtOfficePhone"  MaxLength="20" ></input></td>';
                   tr = tr + '  <td> <input  name="txtMobile1"  MaxLength="20" ></input></td>';
                   tr = tr + '  <td> <input name="txtEmail11"  MaxLength="20"></input></td>';
                   tr = tr + ' <td> <input name="txtAddress1"  MaxLength="50" ></input></td>';
                   tr = tr + ' <td> <input  name="txtQQ1"  MaxLength="15"></input></td>';
                   tr = tr + ' <td> <input name="txtRemark1"  MaxLength="200"></input></td>';
                   tr = tr + ' </tr>';

                   $("#caption").before(tr);
               }
           }

           //赋值
           function setvalues(LinkMans, Sexs, Birthdays, MainLinks, OfficePhones, mobiles, emails, addresses, QQs, remarks)
            {
            var LinkMans0=LinkMans.split(',');
            var Sexs0 = Sexs.split(',');
            var Birthdays0 = Birthdays.split(',');
            var MainLinks = MainLinks.split(',');
            var OfficePhones = OfficePhones.split(',');
            var mobiles = mobiles.split(',');
            var emails = emails.split(',');
            var addresses = addresses.split(',');
            var QQs = QQs.split(',');
            var remarks = remarks.split(',');
            var txtLinkMan1s= document.getElementsByName("txtLinkMan1");
            var txtBirthday1s = document.getElementsByName("txtBirthday1");
            var ddlMainLink1s = document.getElementsByName("ddlMainLink1");
            var txtOfficePhones = document.getElementsByName("txtOfficePhone");
            var txtMobile1s = document.getElementsByName("txtMobile1");
            var txtEmail11s = document.getElementsByName("txtEmail11");
            var txtAddress1s = document.getElementsByName("txtAddress1");
            var txtQQ1s = document.getElementsByName("txtQQ1");
            var txtRemark1s = document.getElementsByName("txtRemark1");
            var ddlSex1s = document.getElementsByName("ddlSex1");

            for (var k = 0; k < LinkMans0.length; k++) {                
                    txtLinkMan1s[k].value = LinkMans0[k];
                    ddlSex1s[k].value = Sexs0[k];
                    txtBirthday1s[k].value = Birthdays0[k];
                    ddlMainLink1s[k].value = MainLinks[k];
                    txtOfficePhones[k].value = OfficePhones[k];
                    txtMobile1s[k].value = mobiles[k];
                    txtEmail11s[k].value = emails[k];
                    txtAddress1s[k].value = addresses[k];
                    txtQQ1s[k].value = QQs[k];
                    txtRemark1s[k].value = remarks[k];
                }
           }
    
    </script>

</head>
<body>
    <form id="form1" runat="server">
     
    <div style=" width:960px; margin:0px auto; height:550px; overflow:scroll;">
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
     <table class="maintable" style=" width:900px;">
      <tr>
       <td colspan="4" class="titlebar">渠道<span>信息添加</span></td>
      </tr>
       <tr>
           <td>渠道名</td><td><asp:TextBox ID="txtChannelName" CssClass="required" runat="server"></asp:TextBox></td>
           <td>上级渠道</td><td><asp:TextBox ID="txtSuperChannelID"  CssClass="number" runat="server"></asp:TextBox>
           <input type="button"  onclick="showChannel()" value="选择"/>
           </td>
       </tr>
       <tr>
           <td>注册时间</td><td><asp:TextBox ID="txtRegisterTime" CssClass="required dateISO" runat="server"></asp:TextBox>
              
           </td>
           <td>渠道规模</td><td>
              <asp:DropDownList ID="ddlChannelSize" runat="server">
                  <asp:ListItem>集团公司</asp:ListItem>
                  <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:TextBox ID="txtBank" runat="server"></asp:TextBox></td>
           <td>银行账号</td><td><asp:TextBox ID="txtAccounts" runat="server"></asp:TextBox>
           </td>
       </tr>
        <tr>
           <td>公司网址</td><td><asp:TextBox ID="txtWebSite"  runat="server"></asp:TextBox></td>
           <td>企业地址</td><td><asp:TextBox ID="txtAddress" runat="server"></asp:TextBox></td>
       </tr>
        <tr>
           <td>Email邮件</td><td><asp:TextBox ID="txtEmail" CssClass="email" runat="server"></asp:TextBox></td>
           <td>传真</td><td><asp:TextBox ID="txtFax" runat="server"></asp:TextBox></td>
       </tr>
          <tr>
           <td>电话号码1</td><td><asp:TextBox ID="txtTel1" CssClass="required isTel" runat="server"></asp:TextBox></td>
           <td>电话号码2</td><td><asp:TextBox ID="txtTel2" CssClass="isTel" runat="server"></asp:TextBox></td>
       </tr>
           <tr>
           <td>渠道等级</td><td>
              <asp:DropDownList ID="ddlLevel" runat="server">
                  <asp:ListItem>一级</asp:ListItem>
                  <asp:ListItem>二级</asp:ListItem>
                  <asp:ListItem>三级</asp:ListItem>
                  <asp:ListItem>四级</asp:ListItem>
              </asp:DropDownList>
               </td>
           <td>信用级别</td><td><asp:TextBox ID="txtCredit" runat="server"></asp:TextBox></td>
       </tr>
             <tr>
           <td>税号</td><td><asp:TextBox ID="txtTaxNumber" runat="server"></asp:TextBox></td>
           <td>下次联系时间</td><td><asp:TextBox ID="txtNextTime" CssClass="required dateISO" runat="server"></asp:TextBox>
          
           </td>
       </tr>
           <tr>
           <td>客户状态</td><td>
               <asp:DropDownList ID="ddlState" runat="server">
                   <asp:ListItem>良好</asp:ListItem>
                   <asp:ListItem>一般</asp:ListItem>
               </asp:DropDownList>
               </td>
           <td>所属行业</td><td>
              <asp:DropDownList ID="ddlVocation" runat="server">
                  <asp:ListItem>制造</asp:ListItem>
                  <asp:ListItem>服务</asp:ListItem>
                  <asp:ListItem>教育</asp:ListItem>
                  <asp:ListItem>医疗</asp:ListItem>
              </asp:DropDownList>
               </td>
       </tr>
          <tr>
           <td class="style1">客户类型</td><td class="style1">
              <asp:DropDownList ID="ddlType" runat="server">
                  <asp:ListItem>国有</asp:ListItem>
                  <asp:ListItem>民营</asp:ListItem>
                  <asp:ListItem>外资</asp:ListItem>
                  <asp:ListItem>合资</asp:ListItem>
                  <asp:ListItem>个体</asp:ListItem>
              </asp:DropDownList>
              </td>
           <td class="style1">是否删除</td><td class="style1">
              <asp:CheckBox ID="cbDelete" Text="是" runat="server" />
              </td>
       </tr>
       <tr>
       <td colspan="4">

          <asp:UpdatePanel ID="UpdatePanel1" runat="server">
         <ContentTemplate>
         <table style=" width:100%; border:0px;">
          <tr>
           <td class="style5">省份</td><td class="style3">
              <asp:DropDownList ID="ddlProvince" runat="server" Width="150px" AutoPostBack="True" 
                  onselectedindexchanged="ddlProvince_SelectedIndexChanged">
              </asp:DropDownList>
              </td>
           <td class="style4">城市</td>
           <td>
              <asp:DropDownList ID="ddlCity" CssClass="required" Width="150px" runat="server">
              </asp:DropDownList>
              </td>
       </tr>
       </table>
         </ContentTemplate>
         </asp:UpdatePanel>
         
       </td>
       </tr>
      
          <tr>
           <td>所属代表</td><td><asp:TextBox ID="txtUserName" CssClass="required" runat="server"></asp:TextBox><input type="button" style=" width:60px" value="选择" onclick="showDialog2()"/></td>
           <td>所属区域</td><td>
              <asp:DropDownList ID="ddlArea" runat="server" Width="150px" 
                  >
                  <asp:ListItem>东</asp:ListItem>
                  <asp:ListItem>西</asp:ListItem>
                  <asp:ListItem>南</asp:ListItem>
                  <asp:ListItem>北</asp:ListItem>
              </asp:DropDownList>
              </td>
       </tr>

          <tr>
           <td>公司概要:</td><td colspan="3">
              <asp:TextBox ID="txtCoSummary" runat="server" Rows="2" TextMode="MultiLine" 
                  Width="580px"></asp:TextBox>
              </td>
       </tr>

          <tr>
           <td>主要业务:</td><td colspan="3">
              <asp:TextBox ID="txtCoreOperttion" runat="server" Rows="2" TextMode="MultiLine" 
                  Width="580px"></asp:TextBox>
              </td>
       </tr>

          <tr>
           <td colspan="4">
          <table class="linkmantable">
             <tr>
                <td>联系人</td>
                <td>性别</td>
                <td>生日</td>
                <td>是否主联系人</td>
                <td>办公室电话</td>
                <td>个人手机</td>
                <td>Email</td>
                <td>地址</td>
                <td>QQ</td>
                <td>备注</td>
             </tr>
                <tr>
                <td><input  name="txtLinkMan1" class="required"  MaxLength="10"></input></td>
                <td>
                    <select  name="ddlSex1" >
                        <option Value="0">男</option>
                        <option Value="1">女</option>
                    </select>
                    </td>
                <td>
                    <input  name="txtBirthday1" onfocus="setday(this)" onclick="setday(this)"  MaxLength="20"></input></td>
                <td><select  name="ddlMainLink1">
                        <option Value="1">是</option>
                        <option Value="0">否</option>
                    </select></td>
                <td>   <input  name="txtOfficePhone"  MaxLength="20" ></input></td>
                <td> <input  name="txtMobile1" class="required isMobile"  MaxLength="20" ></input></td>
                <td> <input name="txtEmail11" class="email" MaxLength="20"></input></td>
                <td> <input name="txtAddress1"  MaxLength="50" ></input></td>
                <td> <input  name="txtQQ1" MaxLength="15"></input></td>
                <td> <input name="txtRemark1" MaxLength="200"></input></td>
             </tr>
            <tr id="caption">
                <td colspan="10" style="text-align: right; padding-right: 20px;">
                    <input type="button" value="删除一行" id="btnDelete" /><input type="button" value="添加一行" id="btnAddNew" />
                </td>
            </tr>

             </table>
           
           </td>
       </tr>

         <tr>
             <td colspan="4" class="bottomtd">
             
                 <asp:Button ID="btnReturn" UseSubmitBehavior="false" runat="server" Text="返回列表" 
                     onclick="btnReturn_Click" />
             
                 <asp:Button ID="btnSubmit" runat="server" Text="渠道资料编辑" 
                     onclick="btnSubmit_Click" />
             </td>
         </tr>

     </table>
       
    </div>
    </form>
</body>
</html>

 后台代码:

  protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.QueryString["ChannelID"] == null)
            {

                Response.Redirect("ChannelListShow.aspx");
                return;           
            }

            if (!IsPostBack)
            {
                ddlProvinceBind();
                pageInfobind();
            }
        }

        private void pageInfobind()
        {
            if (Request.QueryString["ChannelID"] == null)
            {
                Response.Redirect("ChannelListShow.aspx");
                return;
            }
            string channelid = Request.QueryString["ChannelID"].ToString();
            ViewCRMChannelInfo viewchannel = new ViewCRMChannelInfo();
            BioErpCrmManageChannelBLL channelbll = new BioErpCrmManageChannelBLL();
            viewchannel = channelbll.BioErpCrmManagerChannelViewByID(channelid);
            this.txtChannelName.Text = viewchannel.ChannelName;
            this.txtSuperChannelID.Text = viewchannel.SuperiorChannelID.ToString();
            if (viewchannel.NextContactTime.ToString() != "1970/1/1 0:00:00")
            {
                this.txtNextTime.Text =Convert.ToDateTime( viewchannel.NextContactTime.ToString()).ToString("yyyy-MM-dd");
            }
            if (viewchannel.EnrollTime.ToString() != "1970/1/1 0:00:00")
            {
                this.txtRegisterTime.Text =Convert.ToDateTime( viewchannel.EnrollTime.ToString()).ToString("yyyy-MM-dd");
            }
            this.ddlChannelSize.Text = viewchannel.ChannelSize.ToString();
            this.txtAccounts.Text = viewchannel.Accounts;
            this.txtBank.Text = viewchannel.Accounts;
            this.txtWebSite.Text = viewchannel.NetAddress;
            this.txtAddress.Text = viewchannel.Address;
            this.txtEmail.Text = viewchannel.Email;
            this.txtFax.Text = viewchannel.Fax;
            this.txtTel1.Text = viewchannel.Tel1;
            this.txtTel2.Text = viewchannel.Tel2;
            this.ddlLevel.Text = viewchannel.ChannelLevel;
            this.txtCredit.Text = viewchannel.CreditStanding;
            this.txtTaxNumber.Text = viewchannel.TaxNumber;
            this.ddlState.SelectedItem.Text = viewchannel.Status;
            this.ddlType.SelectedItem.Text = viewchannel.ChannelType;
            this.ddlVocation.SelectedItem.Text = viewchannel.Vocation;
            this.ddlProvince.SelectedItem.Text = viewchannel.Province;
            this.ddlCity.Items.Add(new ListItem(viewchannel.City, viewchannel.City));          
            this.txtUserName.Text = viewchannel.UserID.ToString();
            this.ddlArea.SelectedItem.Text = viewchannel.Areal;
            this.txtCoSummary.Text = viewchannel.CoSummary;
            this.txtCoreOperttion.Text = viewchannel.CoreOperttion;

            System.Data.DataTable dt= SqlComm.GetDataByCondition("BioErpCrmChannelLinkMan", "*", " ChannelID=" + Request.QueryString["ChannelID"].ToString()).Tables[0];
            int count = dt.Rows.Count;
            if (count != 0)
            {
                ScriptManager.RegisterStartupScript(this, this.GetType(), "Autoaddrows", "Autoaddrows(" + (count-1) + ");", true);
            }
            string LinkMans = "";
            string Sexs = "";
            string Birthdays = "";
            string MainLinks = "";
            string OfficePhones = "";
            string mobiles = "";
            string emails="", addresses="", QQs="", remarks="";


            for (int i = 0; i < dt.Rows.Count; i++)
            {
              LinkMans+=dt.Rows[i]["LinkmanName"].ToString() + ",";
              if (dt.Rows[i]["Sex"] != null)
              {
                  if (Convert.ToBoolean(dt.Rows[i]["Sex"].ToString()))
                  {
                      Sexs += "1" + ",";

                  }
                  else
                  {
                      Sexs += "0" + ",";
                  }
              }

              Birthdays += Convert.ToDateTime(dt.Rows[i]["Birthday"]).ToString("yyyy-MM-dd") +",";
              if (dt.Rows[i]["IsMainLinkman"] != null)
              {
                  if (Convert.ToBoolean(dt.Rows[i]["IsMainLinkman"].ToString()))
                  {
                      MainLinks += "1" + ",";
                  }
                  else
                  {
                      MainLinks += "0" + ",";

                  }
              }
              OfficePhones += dt.Rows[i]["OfficialPhone"].ToString() + ",";
              mobiles += dt.Rows[i]["MobilePhone"].ToString() + ",";
              emails += dt.Rows[i]["Email"].ToString() + ",";
              addresses += dt.Rows[i]["Address"].ToString() + ",";
              QQs += dt.Rows[i]["QQ"].ToString() + ",";
              remarks += dt.Rows[i]["Remark"].ToString() + ",";              
            }

            ScriptManager.RegisterStartupScript(this, this.GetType(), "setvalues", "setvalues('" + LinkMans + "','" + Sexs + "','" + Birthdays + "','" + MainLinks + "','" + OfficePhones + "','" + mobiles + "','" + emails + "','" + addresses + "','" + QQs + "','" + remarks + "');", true);    
        }

        public void ddlProvinceBind()
        {
            this.ddlProvince.DataSource = SqlComm.getProvinceInfoList();
            this.ddlProvince.DataTextField = "ProvinceInfoName";
            this.ddlProvince.DataValueField = "ProvinceInfoID";
            this.ddlProvince.DataBind();
            this.ddlProvince.Items.Add(new ListItem("--请选择省份--", "0"));
            this.ddlProvince.SelectedValue = "0";
        }

        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            BioErpCrmManageChannel channel = new BioErpCrmManageChannel()
            {
                ChannelID=int.Parse(Request.QueryString["ChannelID"].ToString()),
                ChannelName = this.txtChannelName.Text,
                AccountName = this.txtBank.Text,
                Accounts = this.txtAccounts.Text,
                Address = this.txtAddress.Text,
                Areal = this.ddlArea.SelectedItem.Text,
                ChannelLevel = this.ddlLevel.Text,
                ChannelSize = this.ddlChannelSize.SelectedItem.Text,
                ChannelType = this.ddlType.Text,
                City = this.ddlCity.SelectedItem.Text,
                Province = this.ddlProvince.SelectedItem.Text,
                CoreOperttion = this.txtCoreOperttion.Text,
                Tel1 = this.txtTel1.Text,
                Tel2 = this.txtTel2.Text,
                TaxNumber = this.txtTaxNumber.Text,
                CoSummary = this.txtCoSummary.Text,
                Email = this.txtEmail.Text,
                Fax = this.txtFax.Text,
                NetAddress = this.txtNextTime.Text,
                Vocation = this.ddlVocation.SelectedItem.Text,
                SuperiorChannel = this.txtSuperChannelID.Text == "" ? 0 : int.Parse(this.txtSuperChannelID.Text),
                UserID = int.Parse(this.txtUserName.Text),
                NextContactTime = Convert.ToDateTime(this.txtNextTime.Text),
                Status = this.ddlState.SelectedItem.Text,
                CreditStanding = this.txtCredit.Text,
                EnrollTime = Convert.ToDateTime(this.txtRegisterTime.Text),
                DeleteState=this.cbDelete.Checked
            };
            BioErpCrmManageChannelBLL channelbll = new BioErpCrmManageChannelBLL();
            BioErpCrmChannelLinkManBLL linkmanbll = new BioErpCrmChannelLinkManBLL();
            int count = channelbll.BioErpCrmManageChannelUpdate(channel);
            //渠道基本信息添加成功,才能添加联系人基本信息
            if (count != 0)
            {
                string linkman = Request["txtLinkMan1"].ToString();
                string ddlSex = Request["ddlSex1"].ToString();
                string Birthday = Request["txtBirthday1"].ToString();
                string MainLink = Request["ddlMainLink1"].ToString();
                string OfficePhone = Request["txtOfficePhone"].ToString();
                string Mobile = Request["txtMobile1"].ToString();
                string Email = Request["txtEmail11"].ToString();
                string Address = Request["txtAddress1"].ToString();
                string QQ = Request["txtQQ1"].ToString();
                string Remark = Request["txtRemark1"].ToString();

                string[] linkmans = linkman.Split(',');
                string[] ddlSexs = ddlSex.Split(',');
                string[] Birthdays = Birthday.Split(',');
                string[] MainLinks = MainLink.Split(',');
                string[] OfficePhones = OfficePhone.Split(',');
                string[] Mobiles = Mobile.Split(',');
                string[] Emails = Email.Split(',');
                string[] Addresses = Address.Split(',');
                string[] QQs = QQ.Split(',');
                string[] Remarks = Remark.Split(',');

                //先删除原来联系人记录表中的关于此渠道的所有联系人
                SqlComm.DeleteTableByCondition("BioErpCrmChannelLinkMan", " where ChannelID=" + channel.ChannelID);
                

                    //再添加新的联系人
                    BioErpCrmChannelLinkMan linkmanobj = null;
                    for (int i = 0; i < linkmans.Length; i++)
                    {
                        linkmanobj = new BioErpCrmChannelLinkMan()
                        {
                            LinkmanName = linkmans[i],
                            Address = Addresses[i],
                            Email = Emails[i],
                            Remark = Remarks[i],
                            Sex = ddlSexs[i] == "0" ? false : true,
                            QQ = QQs[i].ToString(),
                            OfficialPhone = OfficePhones[i],
                            MobilePhone = Mobiles[i],
                            Birthday = Convert.ToDateTime(Birthdays[i]),
                            ChannelID = channel.ChannelID,
                            IsMainLinkman = MainLinks[i] == "0" ? false : true
                        };
                        linkmanbll.BioErpCrmChannelLinkManADD(linkmanobj);
                    }       
            }
            Response.Redirect("ChannelListShow.aspx");
        }

        protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (this.ddlProvince.SelectedValue != "0")
            {
                string ProvinceId = this.ddlProvince.SelectedValue.ToString();
                ddlCity.DataSource = SqlComm.getCityListByProvinceID(ProvinceId);
                ddlCity.DataTextField = "CityInfoName";
                ddlCity.DataValueField = "CityInfoID";
                ddlCity.DataBind();
            }
        }

        protected void btnReturn_Click(object sender, EventArgs e)
        {
            Response.Redirect("ChannelListShow.aspx");
}

 权限控制:

 private void pageInfobind()
        {
            if (Request.QueryString["ID"] == null)
            {
                Response.Redirect("ChannelListShow.aspx");
                return;           
            }
            if (Session["Userid"] == null)
            {
                Response.Redirect("../../web/UserLogin.aspx");
            }

            string userid = Session["Userid"].ToString();
           
            string channelid = Request.QueryString["ID"].ToString();
            ViewCRMChannelInfo viewchannel=new ViewCRMChannelInfo();
            BioErpCrmManageChannelBLL channelbll=new BioErpCrmManageChannelBLL();
            viewchannel=  channelbll.BioErpCrmManagerChannelViewByID(channelid);

            //如果当前渠道的所属员工是当前登录用户,或则 当前登录用户的角色为“市场部经理(6)”则显示此按钮
            if (userid == viewchannel.UserID.ToString() || Web.UserLogin.user.RoleId==6)
            {
                this.btnSubmit.Visible = true;
            }
            else
            {
                this.btnSubmit.Visible = false;
            }
           


            this.txtChannelName.Text = viewchannel.ChannelName;
            this.txtSuperChannelID.Text = viewchannel.SuperiorChannel;
            if (viewchannel.NextContactTime.ToString() != "1970/1/1 0:00:00")
            {
                this.txtNextTime.Text = viewchannel.NextContactTime.ToString();
            }
            if (viewchannel.EnrollTime.ToString() != "1970/1/1 0:00:00")
            {
                this.txtRegisterTime.Text = viewchannel.EnrollTime.ToString();
            }
            this.ddlChannelSize.Text = viewchannel.ChannelSize.ToString();
            this.txtAccounts.Text = viewchannel.Accounts;
            this.txtBank.Text = viewchannel.Accounts;
            this.txtWebSite.Text = viewchannel.NetAddress;
            this.txtAddress.Text = viewchannel.Address;
            this.txtEmail.Text = viewchannel.Email;
            this.txtFax.Text=viewchannel.Fax;
            this.txtTel1.Text=viewchannel.Tel1;
            this.txtTel2.Text=viewchannel.Tel2;
            this.ddlLevel.Text=viewchannel.ChannelLevel;
            this.txtCredit.Text=viewchannel.CreditStanding;
            this.txtTaxNumber.Text=viewchannel.TaxNumber;
         
           
            this.ddlState.Text=viewchannel.Status;           
            this.ddlType.Text=viewchannel.ChannelType;
            this.ddlVocation.Text=viewchannel.Vocation;
            this.ddlProvince.Text=viewchannel.Province;
            this.ddlCity.Text=viewchannel.City;
            this.txtUserName.Text=viewchannel.UserName;
            this.ddlArea.Text=viewchannel.Areal;
            this.txtCoSummary.Text=viewchannel.CoSummary;
            this.txtCoreOperttion.Text=viewchannel.CoreOperttion;


            this.GridView1.DataSource = SqlComm.GetDataByCondition("ViewCrmChannelLinkManInfo", "*", " 渠道编号="+viewchannel.ChannelID);

            this.GridView1.DataBind();
        }

 渠道联系记录管理:

存储过程:

ALTER PROCEDURE [dbo].[BioErpCrmChannelContactNote_ADD]
@ChannelID int,
@RelationRecord nvarchar(1000),
@RelationTime datetime,
@LinkmanID int,
@RelationType nvarchar(50),
@LinkMethod nvarchar(50),
@Userid int


 AS 
	INSERT INTO [BioErpCrmChannelContactNote](
	[ChannelID],[RelationRecord],[RelationTime],[LinkmanID],[RelationType],[LinkMethod],[Userid]
	)VALUES(
	@ChannelID,@RelationRecord,@RelationTime,@LinkmanID,@RelationType,@LinkMethod,@Userid
	)
	

 

修改的存储过程:

ALTER PROCEDURE [dbo].[BioErpCrmChannelContactNote_Update]
@RelationID int,
@ChannelID int,
@RelationRecord nvarchar(1000),
@RelationTime datetime,
@LinkmanID int,
@RelationType nvarchar(50),
@LinkMethod nvarchar(50),
@Userid int,
@DeleteState bit
 AS 
	UPDATE [BioErpCrmChannelContactNote] SET 
	[ChannelID] = @ChannelID,[RelationRecord] = @RelationRecord,[RelationTime] = @RelationTime,[LinkmanID] = @LinkmanID,[RelationType] = @RelationType,[LinkMethod] = @LinkMethod,[Userid] = @Userid,[DeleteState] = @DeleteState
	WHERE RelationID=@RelationID 

 创建视图:

SELECT   dbo.BioErpCrmChannelContactNote.RelationID, dbo.BioErpCrmChannelContactNote.ChannelID, 
                dbo.BioErpCrmChannelContactNote.RelationRecord, dbo.BioErpCrmChannelContactNote.RelationTime, 
                dbo.BioErpCrmChannelContactNote.LinkmanID, dbo.BioErpCrmChannelContactNote.RelationType, 
                dbo.BioErpCrmChannelContactNote.LinkMethod, dbo.BioErpCrmChannelContactNote.Userid, 
                dbo.BioErpCrmChannelContactNote.DeleteState, dbo.BioErpCrmManageChannel.ChannelName, 
                dbo.BioErpCrmChannelLinkMan.LinkmanName, dbo.UserManager.UserName
FROM      dbo.BioErpCrmChannelContactNote INNER JOIN
                dbo.BioErpCrmManageChannel ON 
                dbo.BioErpCrmChannelContactNote.ChannelID = dbo.BioErpCrmManageChannel.ChannelID INNER JOIN
                dbo.UserManager ON dbo.BioErpCrmChannelContactNote.Userid = dbo.UserManager.UserId INNER JOIN
                dbo.BioErpCrmChannelLinkMan ON 
                dbo.BioErpCrmChannelContactNote.LinkmanID = dbo.BioErpCrmChannelLinkMan.LinkmanID

 BLL层代码:

 public class BioErpCrmChannelContactNoteBLL
    {
       /// <summary>
       /// 添加一条联系记录
       /// </summary>
       /// <param name="contactnode"></param>
       /// <returns></returns>
       public int ChannelNoteAdd(BioErpCrmChannelContactNote contactnode)
       {
           SqlParameter[] parameters = {				
					new SqlParameter("@ChannelID", SqlDbType.Int,4),
					new SqlParameter("@RelationRecord", SqlDbType.NVarChar,1000),
					new SqlParameter("@RelationTime", SqlDbType.DateTime),
					new SqlParameter("@LinkmanID", SqlDbType.Int,4),
					new SqlParameter("@RelationType", SqlDbType.NVarChar,50),
					new SqlParameter("@LinkMethod", SqlDbType.NVarChar,50),
					new SqlParameter("@Userid", SqlDbType.Int,4),
				      };

           parameters[0].Value = contactnode.ChannelID;
           parameters[1].Value = contactnode.RelationRecord;
           parameters[2].Value = contactnode.RelationTime;
           parameters[3].Value = contactnode.LinkmanID;
           parameters[4].Value = contactnode.RelationType;
           parameters[5].Value = contactnode.LinkMethod;
           parameters[6].Value = contactnode.Userid;
          return  DataBaseHelper.ExcuteSqlReturnInt("BioErpCrmChannelContactNote_ADD", CommandType.StoredProcedure, parameters);
      
       }


       /// <summary>
       /// 修改一条联系记录
       /// </summary>
       /// <param name="contactnode"></param>
       /// <returns></returns>
       public int ChannelNoteUpdate(BioErpCrmChannelContactNote contactnode)
       {
           SqlParameter[] parameters = {
					new SqlParameter("@RelationID", SqlDbType.Int,4),
					new SqlParameter("@ChannelID", SqlDbType.Int,4),
					new SqlParameter("@RelationRecord", SqlDbType.NVarChar,1000),
					new SqlParameter("@RelationTime", SqlDbType.DateTime),
					new SqlParameter("@LinkmanID", SqlDbType.Int,4),
					new SqlParameter("@RelationType", SqlDbType.NVarChar,50),
					new SqlParameter("@LinkMethod", SqlDbType.NVarChar,50),
					new SqlParameter("@Userid", SqlDbType.Int,4),
					new SqlParameter("@DeleteState", SqlDbType.Bit,1)};
           parameters[0].Value = contactnode.RelationID;
           parameters[1].Value = contactnode.ChannelID;
           parameters[2].Value = contactnode.RelationRecord;
           parameters[3].Value = contactnode.RelationTime;
           parameters[4].Value = contactnode.LinkmanID;
           parameters[5].Value = contactnode.RelationType;
           parameters[6].Value = contactnode.LinkMethod;
           parameters[7].Value = contactnode.Userid;
           parameters[8].Value = contactnode.DeleteState;
           return DataBaseHelper.ExcuteSqlReturnInt("BioErpCrmChannelContactNote_Update", CommandType.StoredProcedure, parameters);

       }

       /// <summary>
       /// 根据id获取联系记录对象
       /// </summary>
       /// <param name="noteid"></param>
       /// <returns></returns>
       public ViewChannelNoteInfo getChannelContactNoteByNoteID(string noteid)
       {
        SqlDataReader reader=SqlComm.GetDataReaderByCondition("View_ChannelNoteInfo", "*", " RelationID="+noteid);
        ViewChannelNoteInfo  viewnote= null;
        while (reader.Read())
        {
            viewnote = new ViewChannelNoteInfo()
            {
                ChannelID = int.Parse(reader["ChannelID"].ToString()),
                RelationID = int.Parse(reader["RelationID"].ToString()),
                Userid = int.Parse(reader["Userid"].ToString()),
                RelationType = reader["RelationType"].ToString(),
                RelationTime = Convert.ToDateTime(reader["RelationTime"].ToString()),
                RelationRecord = reader["RelationRecord"].ToString(),
                LinkMethod = reader["LinkMethod"].ToString(),
                LinkmanID = int.Parse(reader["LinkmanID"].ToString()),
                DeleteState = Convert.ToBoolean(reader["DeleteState"].ToString())

            };

        }
        reader.Close();
        return viewnote;

       }

 后台代码:

  public partial class ChannelFeedback : System.Web.UI.Page
    {
        
        protected void Page_Load(object sender, EventArgs e)
        {
          
            Session["Userid"] = "29";
            if (Session["Userid"] == null)
            {
                Response.Redirect("~/Web/Desk.aspx");
            }
           
        
        }



        protected void btnSubmit_Click(object sender, EventArgs e)
        {
            if (this.txtSuperChannelID.Text == "" || this.txtSuperChannelID.Text == "0")
            {
                ClientScript.RegisterStartupScript(this.GetType(), "test", "alert('必须选择所属渠道')", true);
                return;
            }
            if(this.txtUserName.Text=="" || this.txtUserName.Text=="0")
            {
                ClientScript.RegisterStartupScript(this.GetType(),"test","alert('必须选择所属业务员')",true);
                return ;
            }

            if (this.ddlLinkMan.Items.Count == 0)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "test", "alert('没有联系人不能添加联系记录')", true);
                return;
            }

            BioErpCrmChannelContactNote contacknote = new BioErpCrmChannelContactNote()
            {
                ChannelID = int.Parse(this.txtSuperChannelID.Text),
                Userid = int.Parse(this.txtUserName.Text),
                RelationType = this.ddlType.Text,
                LinkMethod = this.ddlMethod.Text,
                RelationTime = Convert.ToDateTime(this.txtInvestigateTime.Text),
                LinkmanID = int.Parse(this.ddlLinkMan.SelectedValue),
                RelationRecord = this.txtRemark.Text
            };

            BioErpCrmChannelContactNoteBLL notebll = new BioErpCrmChannelContactNoteBLL();
            int count= notebll.ChannelNoteAdd(contacknote);
            if (count != 0)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "test", "alert('记录添加成功')", true);
                return;
            }
            else
            {
                ClientScript.RegisterStartupScript(this.GetType(), "test", "alert('记录添加失败')", true);
                return;
            }
        }

        protected void btnReturn_Click(object sender, EventArgs e)
        {
           
        }

      
        protected void txtSuperChannelID_TextChanged(object sender, EventArgs e)
        {
            if (this.txtSuperChannelID.Text != "" && this.txtSuperChannelID.Text.Trim() != "0")
            {
                this.ddlLinkMan.DataSource=SqlComm.GetDataByCondition("BioErpCrmChannelLinkMan", "LinkmanID,LinkmanName", " ChannelID=" + this.txtSuperChannelID.Text);
                this.ddlLinkMan.DataTextField = "LinkmanName";
                this.ddlLinkMan.DataValueField = "LinkmanID";
                this.ddlLinkMan.DataBind();

            }
        }·
    }
}

 综合查询业务:

渠道信息查询、联系时间查询、渠道联系人查询、是否删除  

渠道联系记录查询的前端代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ChannelFeedback.aspx.cs"
    Inherits="BioErpWeb.CRMSystem.CrmChannelNotes.ChannelFeedback" %>
<!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/CheckUserName.js" type="text/javascript"></script>

    <script src="../../JS/ChannelChoose.js" type="text/javascript"></script>
    <script src="../../Scripts/jquery-1.4.1.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 src="../../Scripts/validateExtender.js" type="text/javascript"></script>
    <script src="../../Scripts/cld.js" type="text/javascript"></script>
    <script src="../../Scripts/jquery.metadata.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>
    <style type="text/css">
        .style1
        {
            height: 22px;
        }
    </style>

    <script type="text/javascript">
        $().ready(function () {
            $("#form1").validate();
            $("#txtInvestigateTime").datepicker({dateFormat:'yy-mm-dd'});
        });
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <table class="maintable">
            <tr>
                <td colspan="2" class="titlebar">
                    渠道反馈信息记录
                </td>
            </tr>
            <tr>
                <td class="style1">
                    反馈信息渠道
                </td>
                <td class="style1">
                    <asp:TextBox ID="txtSuperChannelID" CssClass="{required:true, number:true, min:1}" runat="server" 
                        ontextchanged="txtSuperChannelID_TextChanged"></asp:TextBox>
                    <asp:Button  ID="Button1" runat="server" Text="选择渠道" CausesValidation="false" UseSubmitBehavior="false" OnClientClick="showChannel()" />
                </td>
            </tr>
            <tr>
                <td class="style1">
                    反馈联系人</td>
                <td class="style1">
                    <asp:DropDownList ID="ddlLinkMan"  runat="server">
                    </asp:DropDownList>
                </td>
            </tr>
            <tr>
                <td>
                    联系时间
                </td>
                <td>
                  <asp:TextBox ID="txtInvestigateTime" CssClass="required dateISO"   runat="server"></asp:TextBox>
                   

                </td>
            </tr>
            <tr>
                <td>
                    反馈类型</td>
                <td>
                    <asp:DropDownList ID="ddlType" runat="server">
                        <asp:ListItem>邮寄</asp:ListItem>
                        <asp:ListItem>即时通讯</asp:ListItem>                      
                    </asp:DropDownList>
                   

                </td>
            </tr>
            <tr>
                <td>
                    反馈方法</td>
                <td>
                    <asp:DropDownList ID="ddlMethod" runat="server">
                        <asp:ListItem>快递</asp:ListItem>
                        <asp:ListItem>电话</asp:ListItem>
                        <asp:ListItem>短信</asp:ListItem>
                        <asp:ListItem>Email</asp:ListItem>
                    </asp:DropDownList>
                </td>
            </tr>
            <tr>
                <td>
                   所属业务员
                </td>
                <td>
                    <asp:TextBox ID="txtUserName" runat="server"></asp:TextBox>   
                    <input type="button" onclick="showDialog2()"  value="选择"/>
                </td>
            </tr>
            <tr>
                <td>
                    备注 
                </td>
                <td>
                    <asp:TextBox ID="txtRemark" Width="552px" Height="101px" CssClass="required" runat="server"></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="返回列表" OnClick="btnReturn_Click" />
                </td>
            </tr>
        </table>
        <br />
    </div>
    </form>
</body>
</html>

 后台查询代码:

    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 ChannelName like '" + txtName.Text + "%'";
            }

            if (this.txtUserName.Text.Trim() != null && this.txtUserName.Text.Trim().Length != 0)
            {
                condition = condition + " and LinkmanName 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 (RelationTime>= '" + this.txtNoteTime.Text + "' and  RelationTime<'" + Convert.ToDateTime(this.txtNoteTime.Text).AddDays(1) + "')";
            }

            getallCustomerList();
        }

 显示详情的界面:

protected void Page_Load(object sender, EventArgs e)
        {
          
            Session["Userid"] = "29";
            if (Session["Userid"] == null)
            {
                Response.Redirect("~/Web/Desk.aspx");
               
            }
            pageinfobind();
        
        }

        /// <summary>
        /// 页面信息绑定
        /// </summary>
        protected void pageinfobind()
        {
            if (Request.QueryString["ID"]== null)
            {
                Response.Redirect("ChannelNotesListShow.aspx");
                return;
            }
            string id = Request.QueryString["ID"].ToString();
            BioErpCrmChannelContactNoteBLL notebll = new BioErpCrmChannelContactNoteBLL();

            ViewChannelNoteInfo view = new ViewChannelNoteInfo();
            view= notebll.getChannelContactNoteByNoteID(id);
            lbChannelName.Text = view.ChannelName;
            lbLinkMan.Text = view.LinkmanName;
            lbNote.Text = view.RelationRecord;
            lbType.Text = view.RelationType;
            lbMethod.Text = view.LinkMethod;
            lbUser.Text = view.UserName;
            lbNoteTime.Text = Convert.ToDateTime(view.RelationTime).ToString("yyyy-MM-dd");

        }  

 

posted @ 2017-06-16 22:19  石shi  阅读(474)  评论(0编辑  收藏  举报