/// <summary> /// 初始化一个应用系统用户 /// </summary> public static ResultOfInitBasicLogin InitBasicLogin(DBOperator dbOperator, int userID) { ResultOfInitBasicLogin myResult = new ResultOfInitBasicLogin(); Bigdesk8.Business.UserRightManager.IUserRightInfo ur = new Bigdesk8.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); }
/// <summary> /// 初始化一个SCIC平台用户 /// </summary> public static ResultOfInitScicLogin InitScicLogin(DBOperator dbOperator, int userID) { ResultOfInitScicLogin myResult = new ResultOfInitScicLogin(); Bigdesk8.Business.UserRightManager.IUserRightInfo ur = new Bigdesk8.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.园林绿化: 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); }