Ejemplo n.º 1
0
        /// 保存用户信息的第一页内容
        /// <summary>
        /// 保存用户信息的第一页内容
        /// </summary>
        private void EmployeeAgentOptionForPageOne(out string msg)
        {
            msg = "";
            try
            {
                //解析数据
                int      userid     = UserID;
                string   cc_sysid   = ConfigurationUtil.GetAppSettingValue("ThisSysID");
                string   im_sysid   = ConfigurationUtil.GetAppSettingValue("IMSysID");
                string[] role_ids   = UserRolesID.Split('_');
                string   cc_role_id = role_ids[0];
                string   im_role_id = role_ids[1];
                int      btype      = BLL.Util.GetMutilEnumDataValue <BusinessTypeEnum>(BusinessType);

                //清空CC和IM系统的权限
                BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.DeleteUserRole(userid, cc_sysid);
                BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.DeleteUserRole(userid, im_sysid);
                //开通CC和IM系统的权限
                if ((btype & (int)BusinessTypeEnum.CC) == (int)BusinessTypeEnum.CC)
                {
                    BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.InsertUserRole(userid, cc_sysid, cc_role_id);
                    BLL.Loger.Log4Net.Info("【用户基本信息设置】1.更新UserID=" + userid + "的用户在CC系统中的权限RoleID为:" + cc_role_id);
                }
                if ((btype & (int)BusinessTypeEnum.IM) == (int)BusinessTypeEnum.IM)
                {
                    BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.InsertUserRole(userid, im_sysid, im_role_id);
                    BLL.Loger.Log4Net.Info("【用户基本信息设置】2.更新UserID=" + userid + "的用户在IM系统中的权限RoleID为:" + im_role_id);
                }
                //删除其他人重复的工号
                DeleteOtherEmployeeAgentNum();
                //保存员工信息
                SaveEmployeeAgent(userid, btype);
                msg = "{'result':'success'}";
                UpdateUserSkillGroupDataRight(out msg);
                GetHeLiData(out msg);
            }
            catch (Exception ex)
            {
                msg = "{'result':'failure','msg':'" + ex.Message + "'}";
                BLL.Loger.Log4Net.Error("【用户基本信息设置】保存时,出现异常", ex);
            }
        }
Ejemplo n.º 2
0
        /// 批量修改处理逻辑
        /// <summary>
        /// 批量修改处理逻辑
        /// </summary>
        /// <param name="msg"></param>
        private void EmployeeAgentMutilOption(out string msg)
        {
            msg = "";
            try
            {
                string[] userids    = UserIDs.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
                string   cc_sysid   = ConfigurationUtil.GetAppSettingValue("ThisSysID");
                string   im_sysid   = ConfigurationUtil.GetAppSettingValue("IMSysID");
                string[] role_ids   = UserRolesID.Split('_');
                string   cc_role_id = role_ids[0];
                string   im_role_id = role_ids[1];
                int      btype      = BLL.Util.GetMutilEnumDataValue <BusinessTypeEnum>(BusinessType);
                BLL.Loger.Log4Net.Info("【批量修改用户数据权限】Start");
                //权限设置
                foreach (string key in userids)
                {
                    //批量清空权限
                    int userid = CommonFunction.ObjectToInteger(key);
                    BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.DeleteUserRole(userid, cc_sysid);
                    BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.DeleteUserRole(userid, im_sysid);

                    //批量设置权限
                    if ((btype & (int)BusinessTypeEnum.CC) == (int)BusinessTypeEnum.CC)
                    {
                        BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.InsertUserRole(userid, cc_sysid, cc_role_id);
                        BLL.Loger.Log4Net.Info("【批量修改用户数据权限】Step1.更新CC系统中[UserID=" + userid + "]的用户的角色ID为:" + cc_role_id);
                    }
                    if ((btype & (int)BusinessTypeEnum.IM) == (int)BusinessTypeEnum.IM)
                    {
                        BitAuto.YanFa.SysRightManager.Common.UserInfo.Instance.InsertUserRole(userid, im_sysid, im_role_id);
                        BLL.Loger.Log4Net.Info("【批量修改用户数据权限】Step1.更新IM系统中[UserID=" + userid + "]的用户的角色ID为:" + im_role_id);
                    }
                }
                //批量更新所属业务和所属分组
                string ids = string.Join(",", userids);
                BLL.EmployeeAgent.Instance.UpdateMutilEmployeeAgent(ids, btype, CommonFunction.ObjectToInteger(AtGroupID));
                BLL.Loger.Log4Net.Info("【批量修改用户数据权限】Step2.更新[UserID in (" + ids + ")]的用户的[BusinessType(所属业务)=" + btype + "],[BGID(所属分组)=" + AtGroupID + "]");
                foreach (string key in userids)
                {
                    int userid = CommonFunction.ObjectToInteger(key);
                    UpdateUserSkillGroupDataRightByUserID(userid, out msg);
                    string TrueNameAgentNum = BLL.EmployeeAgent.Instance.GetAgentNumberAndUserNameByUserId(userid);
                    if (!string.IsNullOrEmpty(TrueNameAgentNum))
                    {
                        string[] tnan = TrueNameAgentNum.Split(';');
                        if (tnan.Length == 2)
                        {
                            GetHeLiDataByUserNameAndAgentNum(tnan[0], tnan[1], out msg);
                        }
                        else
                        {
                            msg = "{'result':'failure','msg':'部分用户由于数据异常导致技能组数据未能传给合力厂商接口,请检查坐席的“用户名”和“工号”数据是否存在!'}";
                            BLL.Loger.Log4Net.Info("【批量修改用户数据权限】Step3.由于未能取到UserID=" + userid + "的用户的UserName或AgentNum的值,导致未能调用合力厂商的接口!");
                        }
                    }
                    else
                    {
                        msg = "{'result':'failure','msg':'部分用户由于数据异常导致技能组数据未能传给合力厂商接口,请检查坐席的“用户名”和“工号”数据是否存在!'}";
                        BLL.Loger.Log4Net.Info("【批量修改用户数据权限】Step3.由于未能取到UserID=" + userid + "的用户的UserName或AgentNum的值,导致未能调用合力厂商的接口!");
                    }
                }
                BLL.Loger.Log4Net.Info("【批量修改用户数据权限】End");
                if (msg == "")
                {
                    msg = "{'result':'success'}";
                }
            }
            catch (Exception ex)
            {
                msg = "{'result':'failure','msg':'" + ex.Message + "'}";
            }
        }