Exemplo n.º 1
0
        /// <summary>
        /// 初始化一个应用系统用户
        /// </summary>
        public static ResultOfInitBasicLogin InitBasicLogin(DBOperator dbOperator, int userID)
        {
            ResultOfInitBasicLogin myResult = new ResultOfInitBasicLogin();

            Bigdesk2010.Business.UserRightManager.IUserRightInfo ur = new Bigdesk2010.Business.UserRightManager.UserRightInfo(dbOperator, userID);
            if (ur.CountOfUserMatched < 1)
            {
                myResult.ResultCode = ResultCodeOfInitBasicLogin.用户不存在;
                myResult.Message    = "用户不存在!";
                return(myResult);
            }
            else if (ur.CountOfUserMatched > 1)
            {
                myResult.ResultCode = ResultCodeOfInitBasicLogin.用户重复;
                myResult.Message    = "用户重复,请与系统管理员联系!";
                return(myResult);
            }
            myResult.ResultCode = ResultCodeOfInitBasicLogin.唯一用户;

            BasicLoginInfo workUser = new BasicLoginInfo();

            workUser.UserID      = ur.UserID;
            workUser.LoginName   = ur.LoginName;
            workUser.UserName    = ur.UserName;
            workUser.UserType    = ur.UserType;
            workUser.OrgUnitName = ur.OrgUnitName;

            myResult.WorkUser = workUser;
            return(myResult);
        }
Exemplo n.º 2
0
        /// <summary>
        /// 初始化一个SCIC平台用户
        /// </summary>
        public static ResultOfInitScicLogin InitScicLogin(DBOperator dbOperator, int userID)
        {
            ResultOfInitScicLogin myResult = new ResultOfInitScicLogin();

            Bigdesk2010.Business.UserRightManager.IUserRightInfo ur = new Bigdesk2010.Business.UserRightManager.UserRightInfo(dbOperator, userID);
            if (ur.CountOfUserMatched < 1)
            {
                myResult.ResultCode = ResultCodeOfInitScicLogin.用户不存在;
                myResult.Message    = "用户不存在!";
                return(myResult);
            }
            else if (ur.CountOfUserMatched > 1)
            {
                myResult.ResultCode = ResultCodeOfInitScicLogin.用户重复;
                myResult.Message    = "用户重复,请与系统管理员联系!";
                return(myResult);
            }
            myResult.ResultCode = ResultCodeOfInitScicLogin.唯一用户;

            ScicLoginInfo workUser = new ScicLoginInfo();

            workUser.UserID      = ur.UserID;
            workUser.LoginName   = ur.LoginName;
            workUser.UserName    = ur.UserName;
            workUser.UserType    = ur.UserType;
            workUser.LoginType   = ScicLoginType.未定义;
            workUser.OrgID       = string.Empty;
            workUser.OrgUnitName = ur.OrgUnitName;

            List <ScicLoginType> selectableLoginTypes = new List <ScicLoginType>();
            string sql = string.Empty;
            SqlParameterCollection spc = dbOperator.CreateSqlParameterCollection();

            switch (workUser.UserType)
            {
            case BasicUserType.建设单位:
                sql = "select jsdwid from uepp_jsdw where userid = @UserID";
                spc.Add("@UserID", workUser.UserID);
                DataTable dtJsdw = dbOperator.ExeSqlForDataTable(sql, spc, "uepp_jsdw");
                if (dtJsdw.Rows.Count == 1)
                {
                    workUser.OrgID = dtJsdw.Rows[0]["jsdwid"].ToString();
                    selectableLoginTypes.Add(ScicLoginType.建设单位用户);
                }
                else if (dtJsdw.Rows.Count > 1)
                {
                    myResult.ResultCode = ResultCodeOfInitScicLogin.基础数据异常;
                    myResult.Message    = "建设单位表中用户编号(" + ur.UserID.ToString() + ")重复";
                    return(myResult);
                }
                else
                {
                    myResult.ResultCode = ResultCodeOfInitScicLogin.基础数据异常;
                    myResult.Message    = "建设单位表中用户编号(" + ur.UserID.ToString() + ")不存在";
                    return(myResult);
                }
                break;

            case BasicUserType.管理用户:
                selectableLoginTypes.Add(ScicLoginType.管理用户);
                break;

            case BasicUserType.经办人:
                selectableLoginTypes.Add(ScicLoginType.经办人);
                break;

            case BasicUserType.企业用户:
                sql = @"select b.* 
                            from uepp_qyjbxx a, uepp_qycsyw b
                            where a.userid = @UserID
                            and   a.qyid = b.qyid";
                spc.Add("@UserID", workUser.UserID);
                DataTable dtQyywlx = dbOperator.ExeSqlForDataTable(sql, spc, "uepp_qycsyw");
                if (dtQyywlx.Rows.Count > 0)
                {
                    workUser.OrgID = dtQyywlx.Rows[0]["qyid"].ToString();
                    foreach (DataRow dr in dtQyywlx.Rows)
                    {
                        QyYwlxCode localYwlx = (QyYwlxCode)Enum.Parse(typeof(QyYwlxCode), dr["csywlxid"].ToString());
                        switch (localYwlx)
                        {
                        case QyYwlxCode.建筑施工:
                        case QyYwlxCode.设计施工一体化:
                        case QyYwlxCode.园林绿化:
                            if (!selectableLoginTypes.Contains(ScicLoginType.施工企业用户))
                            {
                                selectableLoginTypes.Add(ScicLoginType.施工企业用户);
                            }
                            break;

                        case QyYwlxCode.工程监理:
                            if (!selectableLoginTypes.Contains(ScicLoginType.监理企业用户))
                            {
                                selectableLoginTypes.Add(ScicLoginType.监理企业用户);
                            }
                            break;

                        case QyYwlxCode.招标代理:
                            if (!selectableLoginTypes.Contains(ScicLoginType.代理机构用户))
                            {
                                selectableLoginTypes.Add(ScicLoginType.代理机构用户);
                            }
                            break;

                        case QyYwlxCode.工程勘察:
                            if (!selectableLoginTypes.Contains(ScicLoginType.勘察企业用户))
                            {
                                selectableLoginTypes.Add(ScicLoginType.勘察企业用户);
                            }
                            break;

                        case QyYwlxCode.工程设计:
                            if (!selectableLoginTypes.Contains(ScicLoginType.设计企业用户))
                            {
                                selectableLoginTypes.Add(ScicLoginType.设计企业用户);
                            }
                            break;

                        case QyYwlxCode.价咨询:
                            if (!selectableLoginTypes.Contains(ScicLoginType.价咨询用户))
                            {
                                selectableLoginTypes.Add(ScicLoginType.价咨询用户);
                            }
                            break;

                        case QyYwlxCode.工程检测:
                            if (!selectableLoginTypes.Contains(ScicLoginType.检测机构用户))
                            {
                                selectableLoginTypes.Add(ScicLoginType.检测机构用户);
                            }
                            break;
                        }
                    }
                }
                break;
            }

            workUser.SelectableLoginTypes = selectableLoginTypes;
            if (selectableLoginTypes.Count == 1)
            {
                workUser.LoginType = selectableLoginTypes[0];
            }

            myResult.WorkUser = workUser;
            return(myResult);
        }