CRM客户关系管理系统 ——客户联系人添加(十五)

需求描述: 1.业务员自己可以查看属于自己的客户信息 2.客服部经理可以查看查看所有客户信息 3.其他人员不得查看客户信息 效果截图: 前台代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LinkManAdd.aspx.cs" Inherits="BioErpWeb.CRMSystem.LinkManAdd"  %><%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="cc1" %>


客户联系人信息添加
联系人姓名联系人昵称
性别生日
部门职务
是否是主联系人工作电话
个人手机Email
住址邮编
QQ号码MSN
所属客户

跳转到查询页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CustomerListSelect.aspx.cs" Inherits="BioErpWeb.PersonList.CustomerListSelect" %>

 组装查询的代码:

 public string GetUserList{get {string strHtml = "";if (Request.QueryString["Customer"] == null){DataSet ds = SqlComm.GetDataByCondition("BioCrmCustomer", "top 10 CustomerID,CustomerName", " 1=1  order by CustomerID");foreach (DataRow dr in ds.Tables[0].Rows){strHtml += "";}}else{DataSet ds = SqlComm.GetDataByCondition("BioCrmCustomer", "top 10 CustomerID,CustomerName", " CustomerName like '" + Request.QueryString["Customer"].ToString() + "%' order by CustomerID");foreach (DataRow dr in ds.Tables[0].Rows){strHtml += "";}}return strHtml;}}

 员工的查询页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CustomerList.aspx.cs" Inherits="BioErpWeb.PersonList.CustomerList" %>


员工姓名

 JS的代码:

//人员选择对话框 
function showCustomerDialog() {var re = showModalDialog("../PersonList/CustomerList.aspx", "", "dialogWidth=320px;dialogHeight=350px");   if (re == "" || re == null) {if (document.getElementById("txtCustomerID").value == "" || document.getElementById("txtCustomerID").value == null){document.getElementById("txtCustomerID").value = "请选择";}}else{document.getElementById("txtCustomerID").value = re;}
}

 添加联系人的BLL层代码:

 /// /// 添加一条联系人记录/// /// BioCrmLinkmanInfo对象/// intpublic int LinkmanInfoADD( BioCrmLinkmanInfo LinkMan){SqlParameter[] pars = new SqlParameter[]{new SqlParameter("@LinkmanName",LinkMan.LinkmanName),new SqlParameter("@Nickname",LinkMan.Nickname),new SqlParameter("@Sex",LinkMan.Sex),new SqlParameter("@Birthday",LinkMan.Birthday),new SqlParameter("@LinkmanNumber",LinkMan.LinkmanNumber),new SqlParameter("@Department",LinkMan.Department),new SqlParameter("@Headship",LinkMan.Headship),new SqlParameter("@IsMain",LinkMan.IsMain),new SqlParameter("@WorkPhone",LinkMan.WorkPhone),new SqlParameter("@HomePhone",LinkMan.HomePhone),new SqlParameter("@Mobile",LinkMan.Mobile),new SqlParameter("@Email",LinkMan.Email),new SqlParameter("@Address",LinkMan.Address),new SqlParameter("@Postcode",LinkMan.Postcode),new SqlParameter("@QQ",LinkMan.QQ),new SqlParameter("@MSN",LinkMan.MSN),new SqlParameter("@CustomerID",LinkMan.CustomerID)};return DataBaseHelper.ExcuteSqlReturnInt("BioCrmLinkmanInfo_ADD", CommandType.StoredProcedure, pars);}/// /// 修改联系人信息/// /// /// intpublic int LinkmanInfoUpdate(BioCrmLinkmanInfo LinkMan){SqlParameter[] pars = new SqlParameter[]{new SqlParameter("@LinkmanID",LinkMan.LinkmanID),new SqlParameter("@LinkmanName",LinkMan.LinkmanName),new SqlParameter("@Nickname",LinkMan.Nickname),new SqlParameter("@Sex",LinkMan.Sex),new SqlParameter("@Birthday",LinkMan.Birthday),new SqlParameter("@LinkmanNumber",LinkMan.LinkmanNumber),new SqlParameter("@Department",LinkMan.Department),new SqlParameter("@Headship",LinkMan.Headship),new SqlParameter("@IsMain",LinkMan.IsMain),new SqlParameter("@WorkPhone",LinkMan.WorkPhone),new SqlParameter("@HomePhone",LinkMan.HomePhone),new SqlParameter("@Mobile",LinkMan.Mobile),new SqlParameter("@Email",LinkMan.Email),new SqlParameter("@Address",LinkMan.Address),new SqlParameter("@Postcode",LinkMan.Postcode),new SqlParameter("@QQ",LinkMan.QQ),new SqlParameter("@MSN",LinkMan.MSN),new SqlParameter("@CustomerID",LinkMan.CustomerID)};return DataBaseHelper.ExcuteSqlReturnInt("BioCrmLinkmanInfo_Update", CommandType.StoredProcedure, pars);}/// /// 根据客户ID号返回客户详细信息/// /// id/// BioCrmLinkmanInfopublic BioCrmLinkmanInfo getLinkManByID(string id){BioCrmLinkmanInfo linkman=null;//BioCrmLinkmanInfo linkman = new BioCrmLinkmanInfo();SqlDataReader reader= SqlComm.GetDataReaderByCondition("BioCrmLinkmanInfo", "*", " LinkmanID= " + id);if (reader.Read()){linkman = new BioCrmLinkmanInfo(){LinkmanID = int.Parse(reader["LinkmanID"].ToString()),LinkmanName = reader["LinkmanName"].ToString(),Nickname = reader["Nickname"].ToString(),Address = reader["Address"].ToString(),Birthday = Convert.ToDateTime(reader["Birthday"].ToString()),WorkPhone = reader["WorkPhone"].ToString(),Sex = Convert.ToBoolean(reader["Sex"].ToString()),QQ = reader["QQ"].ToString(),Postcode = reader["Postcode"].ToString(),MSN = reader["MSN"].ToString(),CustomerID = int.Parse(reader["CustomerID"].ToString()),Mobile = reader["Mobile"].ToString(),LinkmanNumber = reader["LinkmanNumber"].ToString(),Department = reader["Department"].ToString(),HomePhone = reader["HomePhone"].ToString(),IsMain = Convert.ToBoolean(reader["IsMain"].ToString()),Headship = reader["Headship"].ToString(),DeleteState = Convert.ToBoolean(reader["DeleteState"].ToString()),Email = reader["Email"].ToString()}; }  reader.Close();return linkman;           }

 进行查询页面的跳转:

  protected void btnReturn_Click(object sender, EventArgs e){Server.Transfer("CustomerListShow.aspx");}

 流程图:

 

给客户的编号number建立自动生成列的触发器:

CREATE TRIGGER [dbo].[CreateLinkmanNumberByLinkmanID]
--表名ON   [dbo].[BioCrmLinkmanInfo]AFTER  INSERT
AS 
BEGIN--定义变量DECLARE @str nvarchar(10)DECLARE @LinkmanNumber nvarchar(50)DECLARE @LinkmanID nvarchar(50)--给字符串赋值SET @str='0000000'--在查询的过程中赋值SELECT @LinkmanID=MAX(LinkmanID) FROM dbo.BioCrmLinkmanInfo--重新组装字符串函数SET @LinkmanNumber=RIGHT(@str+@LinkmanID,7)UPDATE dbo.BioCrmLinkmanInfo SET LinkmanNumber=@LinkmanNumber WHERE LinkmanID=@LinkmanID
end

 给联系人建立查询的视图:

右键添加视图

选中要生成视图的表:

生成Sql语句执行:

查询的时候直接查询视图:

 

在登录界面定义全局的变量:

   public static UserManager user = new UserManager();

 添加的后台代码:

public partial class LinkManAdd : System.Web.UI.Page{protected void Page_Load(object sender, EventArgs e){if (!IsPostBack){}}protected void btnSubmit_Click(object sender, EventArgs e){BioCrmLinkmanInfo linkman = new BioCrmLinkmanInfo(){LinkmanName = this.txtLinkmanName.Text,Address = this.txtAddress.Text,Birthday = Convert.ToDateTime(this.txtBirthday.Text),WorkPhone = this.txtWorkPhone.Text,Sex = this.ddlSex.SelectedValue == "0" ? false : true,Department = this.txtDepartment.Text,Email = this.txtEmail.Text,QQ = this.txtQQ.Text,MSN = this.txtMsN.Text,Headship = this.txtHeadship.Text,HomePhone = this.txtHeadship.Text,Mobile = this.txtMobile.Text,Postcode = this.txtPostcode.Text,Nickname = this.txtNickname.Text,IsMain = this.ddlMainMan.SelectedValue == "1" ? true : false,CustomerID = int.Parse(this.txtCustomerID.Text)};LinkManInfoBLL linkbll = new LinkManInfoBLL();if (linkbll.LinkmanInfoADD(linkman) != 0){Server.Transfer("LinkManListShow.aspx");}}protected void btnReturn_Click(object sender, EventArgs e){Server.Transfer("CustomerListShow.aspx");}}

 视图中case ... then ...的用法:

转载于:https://www.cnblogs.com/sunliyuan/p/5994813.html


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部