/// <summary>
        /// 联系人详细
        /// </summary>
        /// <param name="context"></param>
        public void get_cust_linkman_detail(HttpContext context, string guid)
        {
            try
            {
                HttpRequest Request = context.Request;
                //主体承载
                linkman link_list = new linkman();
                long    id        = RequestHelper.long_transfer(Request, "id");
                string  userid    = RequestHelper.string_transfer(Request, "userid");
                //联系人
                cust_linkman li = linkman_info_fill(guid, link_list, id);
                if (li != null)
                {
                    //more跟进记录[2]
                    more_follow(guid, link_list, li);
                    //more签到记录[2]
                    more_sign(guid, link_list, li);
                }

                jsonModel = Constant.get_jsonmodel(0, "success", link_list);
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                jsonModel = Constant.ErrorGetData(ex);
            }
            finally
            {
                string jsonString = Constant.bbc.ConverDatetime(Constant.jss.Serialize(jsonModel));
                context.Response.Write("{\"result\":" + jsonString + "}");
            }
        }
Beispiel #2
0
        /// <summary>
        /// 获取客户和联系人姓名
        /// </summary>
        /// <param name="guid"></param>
        /// <param name="fp"></param>
        /// <param name="follow"></param>
        private static void get_customer_linkman(string guid, follow_up fp, follow follow)
        {
            try
            {
                #region 获取客户信息\联系人

                //联系人列表,当前用户
                List <cust_linkman> cust_linkman_selfs = cust_linkman_handle.list_All;

                //获取联系人信息
                string link_id      = fp.follow_link_id.ToString();
                long   link_id_long = Convert.ToInt64(link_id);
                //获取指定的客户【在自己的客户列表里获取】
                cust_linkman cust_linkman = (from t in cust_linkman_selfs
                                             where t.id == link_id_long
                                             select t).FirstOrDefault(); if (cust_linkman != null)
                {
                    follow.follow_up_info.follow_cust_name = cust_linkman.link_cust_name;
                    follow.follow_up_info.follow_link_name = cust_linkman.link_name;
                }

                #endregion
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
            finally
            {
            }
        }
        /// <summary>
        /// more签到记录[2]
        /// </summary>
        /// <param name="guid"></param>
        /// <param name="link_list"></param>
        /// <param name="li"></param>
        private static void more_sign(string guid, linkman link_list, cust_linkman li)
        {
            try
            {
                //签到列表
                List <sign_in> sign_in_selfs = sign_in_handle.dic_Self[guid];
                //获取指定的客户【在自己的客户列表里获取】
                List <sign_in> sign_ins = (from t in sign_in_selfs
                                           where t.sign_cust_id == li.link_cust_id
                                           orderby t.sign_date descending
                                           select t).Take(2).ToList();
                List <Dictionary <string, object> > dic_sign_ins = ConverList <sign_in> .ListToDic(sign_ins);

                foreach (var item in dic_sign_ins)
                {
                    //填入客户名称(签到)
                    item["sign_cust_name"] = li.link_cust_name;
                }
                link_list.sign = dic_sign_ins;
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
 /// <summary>
 /// 通知其他负责人进行添加
 /// </summary>
 /// <param name="custer"></param>
 public void Add_Other_Users(cust_linkman linkman, string cust_leaders)
 {
     try
     {
         //多负责人添加
         string[] arri = Split_Hepler.str_to_stringss(cust_leaders);
         foreach (var guid in arri)
         {
             if (!string.IsNullOrEmpty(guid))
             {
                 //如果不包含则添加
                 if (dic_Self.ContainsKey(guid))
                 {
                     if (!dic_Self[guid].Contains(linkman))
                     {
                         dic_Self[guid].Add(linkman);
                     }
                 }
             }
         }
     }
     catch (Exception ex)
     {
         LogHelper.Error(ex);
     }
 }
Beispiel #5
0
        /// <summary>
        /// 编辑联系人edit_cust_linkman
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static int edit_cust_linkman(cust_linkman model)
        {
            int result = 0;

            SqlParameter[] param =
            {
                new SqlParameter("@id",               model.id),
                new SqlParameter("@link_cust_id",     model.link_cust_id == null?0:model.link_cust_id),
                new SqlParameter("@link_name",        model.link_name == null?"":model.link_name),
                new SqlParameter("@link_department",  model.link_department == null?"":model.link_department),
                new SqlParameter("@link_position",    model.link_position == null?"":model.link_position),
                new SqlParameter("@link_level",       model.link_level == null?0:model.link_level),
                new SqlParameter("@link_sex",         model.link_sex == null?"":model.link_sex),
                new SqlParameter("@link_birthday",    model.link_birthday),
                new SqlParameter("@link_phonenumber", model.link_phonenumber == null?"":model.link_phonenumber),
                new SqlParameter("@link_telephone",   model.link_telephone == null?"":model.link_telephone),
                new SqlParameter("@link_email",       model.link_email == null?"":model.link_email),
                new SqlParameter("@link_status",      model.link_status == null?"":model.link_status),
                new SqlParameter("@link_users",       model.link_users == null?"0":model.link_users),
                new SqlParameter("@link_usersname",   model.link_usersname == null?"":model.link_usersname),
                new SqlParameter("@link_isdelete",    model.link_isdelete),
                new SqlParameter("@link_cust_name",   model.link_cust_name == null?"":model.link_cust_name)
            };
            result = Convert.ToInt32(SQLHelp.ExecuteScalar("edit_cust_linkman", System.Data.CommandType.StoredProcedure, param.ToArray()));
            return(result);
        }
Beispiel #6
0
        /// <summary>
        /// 编辑联系人edit_cust_linkman
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static int add_cust_linkman(cust_linkman model)
        {
            int result = 0;

            SqlParameter[] param =
            {
                new SqlParameter("@id",               SqlDbType.Int),
                new SqlParameter("@link_cust_id",     model.link_cust_id == null?0:model.link_cust_id),
                new SqlParameter("@link_name",        model.link_name == null?"":model.link_name),
                new SqlParameter("@link_department",  model.link_department == null?"":model.link_department),
                new SqlParameter("@link_position",    model.link_position == null?"":model.link_position),
                new SqlParameter("@link_level",       model.link_level == null?0:model.link_level),
                new SqlParameter("@link_sex",         model.link_sex == null?"":model.link_sex),
                new SqlParameter("@link_birthday",    model.link_birthday),
                new SqlParameter("@link_phonenumber", model.link_phonenumber == null?"":model.link_phonenumber),
                new SqlParameter("@link_telephone",   model.link_telephone == null?"":model.link_telephone),
                new SqlParameter("@link_email",       model.link_email == null?"":model.link_email),
                new SqlParameter("@link_status",      model.link_status == null?"":model.link_status),
                new SqlParameter("@link_users",       model.link_users == null?"0":model.link_users),
                new SqlParameter("@link_usersname",   model.link_usersname == null?"":model.link_usersname),
                new SqlParameter("@link_cust_name",   model.link_cust_name == null?"":model.link_cust_name)
            };
            param[0].Direction = ParameterDirection.Output;
            object obj = SQLHelp.ExecuteNonQuery("add_cust_linkman", CommandType.StoredProcedure, param);

            result = Convert.ToInt32(param[0].Value.ToString());
            return(result);
        }
Beispiel #7
0
        public JsonModel edit_cust_linkman(cust_linkman model)
        {
            JsonModel jsonModel = new JsonModel();

            try
            {
                int result = DALBaseCommon.edit_cust_linkman(model);
                jsonModel = new JsonModel()
                {
                    errNum  = 0,
                    errMsg  = "success",
                    retData = result
                };
                return(jsonModel);
            }
            catch (Exception ex)
            {
                jsonModel = new JsonModel()
                {
                    errNum  = 400,
                    errMsg  = ex.Message,
                    retData = ""
                };
                return(jsonModel);
            }
        }
        /// <summary>
        /// 添加联系人
        /// </summary>
        /// <param name="Request"></param>
        /// <param name="guid">用户id</param>
        private void add_linkman(string guid, string cust_leaders, cust_linkman new_linkman)
        {
            try
            {
                cust_customer customer = cust_customer_handle.list_All.FirstOrDefault(t => t.cust_category == 1 && t.id == new_linkman.link_cust_id);
                if (
                    customer == null)
                {
                    //姓名、部门、手机号码、性别一致的认定为重复联系人
                    cust_linkman linkman = cust_linkman_handle.list_All.FirstOrDefault(t => !string.IsNullOrEmpty(t.link_phonenumber) && t.link_phonenumber == new_linkman.link_phonenumber

                                                                                       );
                    if (linkman == null)
                    {
                        if (!dic_Self[guid].Contains(new_linkman))
                        {
                            //缓存添加客户
                            dic_Self[guid].Add(new_linkman);
                            //不需要开启线程操作数据库
                            jsonModel      = Constant.bbc.add_cust_linkman(new_linkman);
                            new_linkman.id = Convert.ToInt32(jsonModel.retData);

                            //开启线程操作数据库
                            new Thread(() =>
                            {
                                try
                                {
                                    //通知领导进行添加
                                    admin_add_linkman(guid, new_linkman);

                                    //通知其他负责人进行添加
                                    Add_Other_Users(new_linkman, cust_leaders);
                                }
                                catch (Exception ex)
                                {
                                    LogHelper.Error(ex);
                                }
                            })
                            {
                                IsBackground = true
                            }.Start();
                        }
                    }
                    else
                    {
                        jsonModel = Constant.get_jsonmodel(0, "failed", "联系人已存在,不可重复添加");
                    }
                }
                else
                {
                    jsonModel = Constant.get_jsonmodel(0, "failed", "您没有权限添加公共联系人");
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
Beispiel #9
0
        /// <summary>
        /// 获取根据记录【指定ID】
        /// </summary>
        /// <param name="context"></param>

        public void get_follow_up(HttpContext context, string guid)
        {
            HttpRequest Request = context.Request;

            try
            {
                long   id             = RequestHelper.long_transfer(Request, "id");
                long   follow_cust_id = RequestHelper.long_transfer(Request, "follow_cust_id");
                long   follow_link_id = RequestHelper.long_transfer(Request, "follow_link_id");
                string follow_type    = RequestHelper.string_transfer(Request, "follow_type");
                //跟进列表
                List <follow_up> follow_selfs = dic_Self[guid];
                //指定的一个客户
                follow_up follow_up = (from t in follow_selfs
                                       where t.id == id
                                       select t).FirstOrDefault();
                Dictionary <string, object> dic_follow_up = ConverList <follow_up> .T_ToDic(follow_up);

                //联系人列表,当前用户
                List <cust_linkman> cust_linkman_selfs = cust_linkman_handle.dic_Self[guid];
                //联系人名称和客户名称
                cust_linkman cust_linkman = (from t in cust_linkman_selfs
                                             where t.id == follow_up.follow_link_id
                                             select t).FirstOrDefault();
                if (cust_linkman != null)
                {
                    dic_follow_up["follow_link_name"] = cust_linkman.link_name;
                    dic_follow_up["follow_cust_name"] = cust_linkman.link_cust_name;
                }
                //跟进类型
                dic_follow_up["follow_type_name"] = LevelHelper.Getfollow_level(follow_up.follow_type.ToString());
                if (Constant.list_picture_All != null)
                {
                    //获取指定的图片【类型 和ID】
                    List <picture> listp = (from t in Constant.list_picture_All
                                            where t.pic_en_table == "follow_up" && t.pic_table_id == id
                                            select t).ToList();
                    string pic = "";
                    foreach (picture p in listp)
                    {
                        pic += p.pic_url + ',';
                    }
                    dic_follow_up["pic"] = pic.Trim(',');
                }
                jsonModel = Constant.get_jsonmodel(0, "success", dic_follow_up);
            }
            catch (Exception ex)
            {
                jsonModel = Constant.ErrorGetData(ex);
            }
            finally
            {
                string jsonString = Constant.jss.Serialize(jsonModel);
                context.Response.Write("{\"result\":" + jsonString + "}");
            }
        }
Beispiel #10
0
        /// <summary>
        /// 通知缓存的领导删除/数据库删除该联系人
        /// </summary>
        /// <param name="Request"></param>
        /// <param name="guid"></param>
        /// <param name="id_long"></param>
        /// <param name="delete_linkman"></param>
        private void admin_delete_linkman(string guid, cust_linkman delete_linkman)
        {
            try
            {
                //当前添加客户
                if (list_All.Contains(delete_linkman))
                {
                    list_All.Remove(delete_linkman);
                }

                string _guid = delete_linkman.link_users;
                //通知当事人进行删除  //多个负责人的联系人不让删除,在之前就已经限制
                if (dic_Self.ContainsKey(_guid))
                {
                    if (dic_Self[_guid].Contains(delete_linkman))
                    {
                        dic_Self[_guid].Remove(delete_linkman);
                    }
                }

                if (Constant.dic_custs_users.ContainsKey(guid))
                {
                    //获取上级的guid
                    List <string> commonAdmin_CustursID = Constant.dic_custs_users[guid];

                    //上级列表
                    foreach (var item in commonAdmin_CustursID)
                    {
                        //若领导在线,删除当前的联系人
                        if (dic_Self.ContainsKey(item))
                        {
                            //联系人列表,当前用户
                            List <cust_linkman> linkman_admins = dic_Self[item];
                            //判断领导是否存在该联系人
                            if (linkman_admins.Contains(delete_linkman))
                            {
                                //删除客户需要两个地方
                                linkman_admins.Remove(delete_linkman);
                            }
                        }
                    }
                }

                //数据库标示数据删除
                Constant.cust_linkman_S.Update(delete_linkman);
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
Beispiel #11
0
        /// <summary>
        /// 编辑联系人
        /// </summary>
        /// <param name="dic_data">excel数据</param>
        /// <param name="userName">用户名称</param>
        /// <param name="i">序号</param>
        /// <param name="link_name">联系人名称</param>
        /// <param name="d_1">生日</param>
        /// <param name="link_level">联系人等级</param>
        /// <param name="sex">性别</param>
        /// <param name="position">职务</param>
        /// <param name="email">邮箱地址</param>
        /// <param name="telep">电话号码</param>
        /// <param name="remark">联系人备注</param>
        /// <param name="customers">缓存联系人</param>
        private void linkman_edit(List <Dictionary <string, object> > dic_data, string userName, int i, string link_name, DateTime d_1, int link_level, string sex, string position, string email, string telep, string remark, List <cust_linkman> customers)
        {
            try
            {
                #region 修改联系人

                cust_linkman _linkman = customers[0];
                //覆盖联系人
                _linkman.link_birthday   = d_1;
                _linkman.link_level      = link_level;
                _linkman.link_updatedate = DateTime.Now;
                _linkman.link_sex        = sex;
                _linkman.link_telephone  = telep;
                _linkman.link_remark     = remark;
                _linkman.link_position   = position;
                _linkman.link_email      = email;

                string dp1 = Convert.ToString(dic_data[i]["F3"]).Trim();
                string dp2 = Convert.ToString(dic_data[i]["F4"]).Trim();
                if (!string.IsNullOrEmpty(dp1))
                {
                    _linkman.link_department = dp1;
                }
                else
                {
                    _linkman.link_department = dp2;
                }
                Constant.cust_linkman_S.Update(_linkman);

                #endregion

                exit_linkman_count++;
                this.Panel1.Controls.Add(new TextBox()
                {
                    Width = new Unit(100, UnitType.Percentage), Text = i + "、联系人已存在【客户名称、联系人名称、手机号相同】,联系人信息覆盖:" + link_name + "      负责人:" + userName + Environment.NewLine, ForeColor = Color.Red
                });
                this.Panel1.Controls.Add(new Literal()
                {
                    Text = "<br />"
                });
            }
            catch (Exception ex)
            {
                Label1.Text = "出现异常,请联系管理员";
                LogHelper.Error(ex);
            }
            finally
            {
            }
        }
Beispiel #12
0
        /// <summary>
        /// more跟进记录[2]
        /// </summary>
        /// <param name="guid"></param>
        /// <param name="link_list"></param>
        /// <param name="li"></param>
        private static void more_follow(string guid, linkman link_list, cust_linkman li)
        {
            try
            {
                //跟进记录
                List <follow_up> follow_ups_selfs = follow_up_handle.dic_Self[guid];

                //获取指定的跟进记录【在自己的跟进记录列表里获取,通过跟进时间做降序排列,只选取最上面的两条记录】
                List <follow_up> follow_ups = (from t in follow_ups_selfs
                                               where t.follow_cust_id == li.link_cust_id && t.follow_link_id == li.id
                                               orderby t.follow_date descending
                                               select t).Take(2).ToList();
                link_list.follow_up = ConverList <follow_up> .ListToDic(follow_ups);
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
Beispiel #13
0
        /// <summary>
        /// 编辑联系人
        /// </summary>
        /// <param name="dic_data">excel数据</param>
        /// <param name="userName">用户名称</param>
        /// <param name="i">序号</param>
        /// <param name="link_name">联系人名称</param>
        /// <param name="d_1">生日</param>
        /// <param name="link_level">联系人等级</param>
        /// <param name="sex">性别</param>
        /// <param name="position">职务</param>
        /// <param name="email">邮箱地址</param>
        /// <param name="telep">电话号码</param>
        /// <param name="remark">联系人备注</param>
        /// <param name="customers">缓存联系人</param>
        private void linkman_edit(List <Dictionary <string, object> > dic_data, string userName, int i, string link_name, DateTime d_1, int link_level, string sex, string position, string email, string telep, string remark, List <cust_linkman> customers)
        {
            try
            {
                #region 修改联系人

                cust_linkman _linkman = customers[0];
                //覆盖联系人
                _linkman.link_birthday   = d_1;
                _linkman.link_level      = link_level;
                _linkman.link_updatedate = DateTime.Now;
                _linkman.link_sex        = sex;
                _linkman.link_telephone  = telep;
                _linkman.link_remark     = remark;
                _linkman.link_position   = position;
                _linkman.link_email      = email;

                string dp1 = Convert.ToString(dic_data[i]["F3"]).Trim();
                string dp2 = Convert.ToString(dic_data[i]["F4"]).Trim();
                if (!string.IsNullOrEmpty(dp1))
                {
                    _linkman.link_department = dp1;
                }
                else
                {
                    _linkman.link_department = dp2;
                }
                Constant.cust_linkman_S.Update(_linkman);

                #endregion

                exit_linkman_count++;
                reinfo.Add(i + "、联系人已存在【客户名称、联系人名称、手机号相同】,联系人信息覆盖:" + link_name + "      负责人:" + userName);
            }
            catch (Exception ex)
            {
                reinfo.Add("出现异常,请联系管理员");
                LogHelper.Error(ex);
            }
            finally
            {
            }
        }
Beispiel #14
0
        /// <summary>
        /// 通知领导进行添加
        /// </summary>
        /// <param name="guid"></param>
        /// <param name="link"></param>
        public static void admin_add_linkman(string guid, cust_linkman new_linkman)
        {
            try
            {
                //通知领导我已添加用户
                if (Constant.dic_custs_users.ContainsKey(guid))
                {
                    if (!list_All.Contains(new_linkman))
                    {
                        //当前添加客户
                        list_All.Add(new_linkman);
                    }

                    //获取上级的guid
                    List <string> commonAdmin_CustursID = Constant.dic_custs_users[guid];

                    //上级列表
                    foreach (var item in commonAdmin_CustursID)
                    {
                        //若领导在线,添加当前添加的用户
                        if (dic_Self.ContainsKey(item))
                        {
                            //联系人列表,当前领导
                            List <cust_linkman> cust_linkman_admins = dic_Self[item];
                            //防止重复提交
                            if (!cust_linkman_admins.Contains(new_linkman))
                            {
                                cust_linkman_admins.Add(new_linkman);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
Beispiel #15
0
        /// <summary>
        /// 获取指定联系人信息
        /// </summary>
        /// <param name="guid"></param>
        /// <param name="link_list"></param>
        /// <param name="id"></param>
        /// <returns></returns>
        private static cust_linkman linkman_info_fill(string guid, linkman link_list, long id)
        {
            //联系人列表,当前用户
            List <cust_linkman> cust_linkman_selfs = dic_Self[guid];
            //获取指定的联系人【在自己的联系人列表里获取】
            cust_linkman li = (from t in cust_linkman_selfs
                               where t.id == id
                               select t).FirstOrDefault();

            try
            {
                if (li != null)
                {
                    //联系人展示实体
                    linkman_info cl = new linkman_info();

                    cl.customer_name    = li.link_cust_name;
                    cl.link_email       = li.link_email;
                    cl.link_level       = li.link_level.ToString();
                    cl.link_level_name  = pub_param_handle.dic_linkMan_Grade[Convert.ToString(li.link_level)];
                    cl.link_name        = li.link_name;
                    cl.link_phonenumber = li.link_phonenumber;
                    cl.link_position    = li.link_position;
                    cl.link_username    = li.link_usersname;
                    //联系人ID
                    cl.id = Convert.ToString(li.id);
                    //联系人客户ID
                    cl.link_cust_id        = Convert.ToString(li.link_cust_id);
                    link_list.cust_linkman = cl;
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }

            return(li);
        }
Beispiel #16
0
        /// <summary>
        /// 获取联系人信息
        /// </summary>
        /// <param name="context"></param>
        public void get_cust_linkman_info(HttpContext context, string guid)
        {
            HttpRequest Request = context.Request;
            long        id      = RequestHelper.int_transfer(Request, "id");

            try
            {
                //联系人列表,当前用户
                List <cust_linkman> cust_linkman_selfs = dic_Self[guid];
                //指定的一个联系人
                cust_linkman select_linkman = (from t in cust_linkman_selfs
                                               where t.id == id
                                               select t).FirstOrDefault();
                if (select_linkman != null)
                {
                    Dictionary <string, object> item = ConverList <cust_linkman> .T_ToDic(select_linkman);

                    //联系人名称
                    string link_levelName = Convert.ToString(item["link_level"]);
                    item["link_levelName"] = LevelHelper.Getlink_level(link_levelName);
                    //生日
                    DateTime datetime_P = Convert.ToDateTime(item["link_birthday"]);
                    item["link_birthday"] = datetime_P.ToString("yyyy-MM-dd") == "1800-01-01" ? "" : datetime_P.ToString("yyyy-MM-dd");

                    jsonModel = Constant.get_jsonmodel(0, "success", item);
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                jsonModel = Constant.ErrorGetData(ex);
            }
            finally
            {
                context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
            }
        }
Beispiel #17
0
        /// <summary>
        /// 删除联系人
        /// </summary>
        /// <param name="context"></param>
        public void update_cust_linkman_isdelete(HttpContext context, string guid)
        {
            HttpRequest  Request  = context.Request;
            HttpResponse response = context.Response;

            //id号
            long id_long = RequestHelper.long_transfer(Request, "id");

            try
            {
                if (id_long != 0)
                {
                    //联系人列表,当前用户
                    List <cust_linkman> cust_linkman_selfs = dic_Self[guid];
                    //获取当前用户的指定联系人
                    cust_linkman delete_linkman = cust_linkman_selfs.FirstOrDefault(item => item.id == id_long);
                    //删除指定ID的联系人
                    if (delete_linkman != null)
                    {
                        List <follow_up> follow_up_selfs = follow_up_handle.dic_Self[guid];

                        string[] has_the_Customer_users = Split_Hepler.str_to_stringss(delete_linkman.link_users);
                        if (has_the_Customer_users.Count() > 1)
                        {
                            jsonModel = Constant.get_jsonmodel(5, "failed", "无法删除,关联了多个负责人");
                        }
                        else if (follow_up_selfs.Count(item => item.follow_link_id == id_long) > 0)
                        {
                            jsonModel = Constant.get_jsonmodel(5, "failed", "无法删除,关联了跟进记录");
                        }

                        else
                        {
                            cust_linkman_selfs.Remove(delete_linkman);
                            //删除状态
                            delete_linkman.link_isdelete = RequestHelper.string_transfer(Request, "link_isdelete");
                            jsonModel = Constant.get_jsonmodel(0, "success", 1);
                            //开启线程操作数据库
                            new Thread(() =>
                            {
                                try
                                {
                                    //通知缓存的领导删除/数据库删除该联系人[进行数据库操作]
                                    admin_delete_linkman(guid, delete_linkman);
                                }
                                catch (Exception ex)
                                {
                                    LogHelper.Error(ex);
                                }
                            })
                            {
                                IsBackground = true
                            }.Start();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                jsonModel = Constant.ErrorGetData(ex);
            }
            finally
            {
                response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
            }
        }
Beispiel #18
0
        /// <summary>
        /// 编辑联系人
        /// </summary>
        /// <param name="id"></param>
        /// <param name="guid">用户id</param>
        private void edit_linkman(long id, string guid, cust_linkman new_linkman, string cust_leaders, string cust_leadernames)
        {
            try
            {
                //联系人列表,当前用户
                List <cust_linkman> cust_linkman_selfs = dic_Self[guid];
                cust_linkman        edit_linkman       = cust_linkman_selfs.FirstOrDefault(item => item.id == id);
                if (edit_linkman != null)
                {
                    edit_linkman.link_birthday    = new_linkman.link_birthday;
                    edit_linkman.link_cust_id     = new_linkman.link_cust_id;
                    edit_linkman.link_cust_name   = new_linkman.link_cust_name;
                    edit_linkman.link_department  = new_linkman.link_department;
                    edit_linkman.link_email       = new_linkman.link_email;
                    edit_linkman.link_level       = new_linkman.link_level;
                    edit_linkman.link_name        = new_linkman.link_name;
                    edit_linkman.link_phonenumber = new_linkman.link_phonenumber;
                    edit_linkman.link_position    = new_linkman.link_position;
                    edit_linkman.link_remark      = new_linkman.link_remark;
                    edit_linkman.link_sex         = new_linkman.link_sex;
                    edit_linkman.link_telephone   = new_linkman.link_telephone;

                    //查看是否有多负责人的情况
                    if (!string.IsNullOrEmpty(cust_leaders) && !string.IsNullOrEmpty(cust_leadernames))
                    {
                        string[] link_Users = Split_Hepler.str_to_stringss(edit_linkman.link_users);
                        for (int k = 0; k < link_Users.Count(); k++)
                        {
                            string link_user = link_Users[k];
                            //判断该用户是否在线 然后进行移除
                            if (!Constant.dicLimit_P.ContainsKey(link_user) && dic_Self.ContainsKey(link_user))
                            {
                                if (dic_Self[link_user].Contains(edit_linkman))
                                {
                                    dic_Self[link_user].Remove(edit_linkman);
                                }
                            }
                        }

                        edit_linkman.link_users     = cust_leaders;
                        edit_linkman.link_usersname = cust_leadernames;
                    }

                    //成功提示
                    jsonModel = Constant.get_jsonmodel(0, "success", 1);

                    //开启线程操作数据库
                    new Thread(() =>
                    {
                        jsonModel = Constant.bbc.edit_cust_linkman(edit_linkman);

                        //通知其他负责人进行添加
                        Add_Other_Users(edit_linkman, cust_leaders);
                    })
                    {
                        IsBackground = true
                    }.Start();
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
            }
        }
Beispiel #19
0
        /// <summary>
        /// 新增联系人
        /// </summary>
        /// <param name="context"></param>
        public void edit_cust_linkman(HttpContext context, string guid)
        {
            HttpRequest  Request  = context.Request;
            HttpResponse response = context.Response;
            long         id       = RequestHelper.long_transfer(Request, "id");

            try
            {
                cust_linkman new_linkman = new cust_linkman();
                new_linkman.link_birthday    = RequestHelper.DateTime_transfer(Request, "link_birthday");
                new_linkman.link_department  = RequestHelper.string_transfer(Request, "link_department");
                new_linkman.link_email       = RequestHelper.string_transfer(Request, "link_email");
                new_linkman.link_level       = RequestHelper.int_transfer(Request, "link_level");
                new_linkman.link_name        = RequestHelper.string_transfer(Request, "link_name");
                new_linkman.link_position    = RequestHelper.string_transfer(Request, "link_position");
                new_linkman.link_remark      = RequestHelper.string_transfer(Request, "link_remark");
                new_linkman.link_sex         = RequestHelper.string_transfer(Request, "link_sex");
                new_linkman.link_status      = RequestHelper.string_transfer(Request, "link_status");
                new_linkman.link_telephone   = RequestHelper.string_transfer(Request, "link_telephone");
                new_linkman.link_phonenumber = RequestHelper.string_transfer(Request, "link_phonenumber");
                new_linkman.link_cust_id     = RequestHelper.long_transfer(Request, "link_cust_id");
                new_linkman.link_cust_name   = new_linkman.link_cust_id > 0 ? RequestHelper.string_transfer(Request, "link_cust_name") : string.Empty;

                //多负责人
                string cust_leaders     = RequestHelper.string_transfer(Request, "cust_leaders");
                string cust_leadernames = RequestHelper.string_transfer(Request, "cust_leadernames");

                //是否为领导者
                if (string.IsNullOrEmpty(cust_leaders))
                {
                    new_linkman.link_users     = RequestHelper.string_transfer(Request, "link_users");
                    new_linkman.link_usersname = RequestHelper.string_transfer(Request, "link_usersname");//用户姓名
                }
                else
                {
                    new_linkman.link_users     = cust_leaders;
                    new_linkman.link_usersname = cust_leadernames;
                }

                //修改《暂时修改功能》
                if (id > 0)
                {
                    //编辑联系人
                    edit_linkman(id, guid, new_linkman, cust_leaders, cust_leadernames);
                }
                else if (id == 0)
                {
                    new_linkman.link_updatedate = DateTime.Now;
                    new_linkman.link_createdate = DateTime.Now;
                    new_linkman.link_isdelete   = "0";

                    //添加联系人
                    add_linkman(guid, cust_leaders, new_linkman);
                }
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                jsonModel = Constant.ErrorGetData(ex);
            }
            finally
            {
                response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
            }
        }
Beispiel #20
0
        /// <summary>
        /// 获取工作计划(分页)
        /// </summary>
        /// <param name="context"></param>
        public void get_workplan_list(HttpContext context, string guid)
        {
            HttpRequest Request = context.Request;

            try
            {
                //分页信息
                int  page_Index = RequestHelper.int_transfer(Request, "PageIndex");
                int  page_Size  = RequestHelper.int_transfer(Request, "PageSize");
                long wp_link_id = RequestHelper.long_transfer(Request, "wp_link_id");
                //部门的ID号【传参 】
                string departmentID = RequestHelper.string_transfer(Request, "departmentID");
                string memmberID    = RequestHelper.string_transfer(Request, "memmberID");
                //工作计划,当前用户
                List <workplan> workplan_selfs = workplan_handle.dic_Self[guid];

                //通过部门获取数据【或者纯粹获取某个成员的工作计划】
                workplan_selfs = Check_And_Get_List_dep(departmentID, memmberID, workplan_selfs).ToList();
                int workplan_count = workplan_selfs.Count;
                //进行分页
                List <workplan> workplans = GetPageByLinq(workplan_selfs, page_Index, page_Size);
                //对象集合转为dic集合列表
                List <Dictionary <string, object> > dicList = ConverList <workplan> .ListToDic(workplans);

                if (workplans.Count > 0)
                {
                    //数据对应
                    foreach (var item in dicList)
                    {
                        DateTime datetime_P = Convert.ToDateTime(item["wp_plandate"]);
                        int      pc         = datetime_P.Hour;

                        //工作计划具体时间   下午hh:mm   上午hh:mm
                        if (pc > 12)
                        {
                            item["wp_plandate"] = datetime_P.ToString("yyyy年 MM月dd日");
                        }
                        else
                        {
                            item["wp_plandate"] = datetime_P.ToString("yyyy年 MM月dd日");
                        }

                        //联系人列表,当前用户
                        List <cust_linkman> cust_linkman_selfs = cust_linkman_handle.dic_Self[guid];
                        //联系人和职位
                        cust_linkman linkman = (from t in cust_linkman_selfs
                                                where t.id == wp_link_id
                                                select t).FirstOrDefault();
                        if (linkman != null)
                        {
                            item["link_name"]     = linkman.link_name;
                            item["link_position"] = linkman.link_position;
                            item["cust_name"]     = linkman.link_cust_name;
                        }
                    }
                }
                //返回数据
                PagedDataModel <Dictionary <string, object> > psd = new PagedDataModel <Dictionary <string, object> >()
                {
                    PagedData = dicList, PageIndex = page_Index, PageSize = page_Size, RowCount = workplan_count
                };
                //数据包(json格式)
                jsonModel = Constant.get_jsonmodel(0, "success", psd);
            }
            catch (Exception ex)
            {
                LogHelper.Error(ex);
                jsonModel = Constant.ErrorGetData(ex);
            }
            finally
            {
                string status = string.Empty;
                //管理者
                if (Constant.dicLimit_P.ContainsKey(guid))
                {
                    jsonModel.status = "IsAdmin";
                }
                context.Response.Write("{\"result\":" + Constant.jss.Serialize(jsonModel) + "}");
            }
        }