/// <summary> /// 得到GM帐号信息类 /// </summary> /// <param name="userID">用户ID</param> /// <returns>GM帐号类</returns> public Message GM_QuerySysAdminInfo(int userID) { //int sysAdmin = -1; System.Data.DataSet ds = null; try { //将GM帐号信息存入DATASET ds = GMUserInfo.getUserInfo(userID); Query_Structure[] structList = new Query_Structure[1]; if(ds!=null && ds.Tables[0].Rows.Count>0) { Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[0].ItemArray.Length); strut.AddTagKey(TagName.SysAdmin,TagFormat.TLV_INTEGER,4,TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER,ds.Tables[0].Rows[0].ItemArray[9])); byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER,ds.Tables[0].Rows[0].ItemArray[5]); strut.AddTagKey(TagName.DepartID,TagFormat.TLV_INTEGER,(uint)bytes.Length,bytes); structList[0] = strut; return Message.COMMON_MES_RESP(structList,Msg_Category.USER_ADMIN,ServiceKey.USER_SYSADMIN_QUERY_RESP,2); } else { return Message.COMMON_MES_RESP(LanguageAPI.API_UserInfoAPI_NoAdmin,Msg_Category.USER_ADMIN,ServiceKey.USER_SYSADMIN_QUERY_RESP,TagName.ERROR_Msg,TagFormat.TLV_STRING); } } catch(System.Exception ex) { return Message.COMMON_MES_RESP(LanguageAPI.API_UserInfoAPI_NoAdmin,Msg_Category.USER_ADMIN,ServiceKey.USER_SYSADMIN_QUERY_RESP,TagName.ERROR_Msg,TagFormat.TLV_STRING); } }
/// <summary> /// 插入一个新的GM帐号 /// </summary> public Message GM_InsertUserInfo() { int result = -1; int operateUserID = 0; int departID = 0; string userName = null; string passWd = null; string realName = null; DateTime limit = DateTime.Now; int status= 0; try { //操作员ID TLV_Structure strut = new TLV_Structure(TagName.UserByID,4,msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer); operateUserID = (int)strut.toInteger(); //部门ID strut = new TLV_Structure(TagName.DepartID,4,msg.m_packet.m_Body.getTLVByTag(TagName.DepartID).m_bValueBuffer); departID = (int)strut.toInteger(); //用户名 userName = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.UserName).m_bValueBuffer); //密码 passWd =Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.PassWord).m_bValueBuffer); //中文名 realName =Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RealName).m_bValueBuffer); //状态值 TLV_Structure tlvStruct = new TLV_Structure(TagName.User_Status,4,msg.m_packet.m_Body.getTLVByTag(TagName.User_Status).m_bValueBuffer); status =(int)tlvStruct.toInteger(); //使用时限 tlvStruct = new TLV_Structure(TagName.Limit,3,msg.m_packet.m_Body.getTLVByTag(TagName.Limit).m_bValueBuffer); limit =tlvStruct.toDate(); //是否管理员 tlvStruct = new TLV_Structure(TagName.SysAdmin,4,msg.m_packet.m_Body.getTLVByTag(TagName.SysAdmin).m_bValueBuffer); int sysAdmin =(int)tlvStruct.toInteger(); result = GMUserInfo.insertRow(operateUserID,departID,userName,passWd,realName,limit,status,sysAdmin); if(result==1) { logAPI.writeTitle(LanguageAPI.API_Add + LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_Add + LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Success + "!"); logAPI.writeContent(LanguageAPI.Logic_UserValidate_User,LanguageAPI.API_UserInfoAPI_Password,LanguageAPI.API_UserInfoAPI_LimitDay); logAPI.writeData(userName,passWd,limit.ToString()); Console.WriteLine(logAPI.Buffer.ToString()); return Message.Common_USER_CREATE_RESP("SUCESS"); } else { logAPI.writeTitle(LanguageAPI.API_Add + LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_Add + LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Failure + "!"); logAPI.writeContent(LanguageAPI.Logic_UserValidate_User,LanguageAPI.API_UserInfoAPI_Password,LanguageAPI.API_UserInfoAPI_LimitDay); logAPI.writeData(userName,passWd,limit.ToString()); Console.WriteLine(logAPI.Buffer.ToString()); return Message.Common_USER_CREATE_RESP("FAILURE"); } } catch(Common.Logic.Exception ex) { Console.WriteLine(ex.Message); return Message.Common_USER_CREATE_RESP(ex.Message); } }
/// <summary> /// 修改用户信息 /// </summary> public Message GM_UpdateUserInfo() { int result = -1; int deptID = 0; int userID = 0; int userByID = 0; string realName = null; int status = 0; int onlineActive = 0; int sysAdmin = 0; DateTime limitTime; try { TLV_Structure tlv = new TLV_Structure(TagName.User_ID,4,msg.m_packet.m_Body.getTLVByTag(TagName.User_ID).m_bValueBuffer); userID =(int)tlv.toInteger(); tlv = new TLV_Structure(TagName.UserByID,4,msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer); userByID =(int)tlv.toInteger(); tlv = new TLV_Structure(TagName.DepartID,4,msg.m_packet.m_Body.getTLVByTag(TagName.DepartID).m_bValueBuffer); deptID =(int)tlv.toInteger(); realName = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RealName).m_bValueBuffer); tlv = new TLV_Structure(TagName.Limit,3,msg.m_packet.m_Body.getTLVByTag(TagName.Limit).m_bValueBuffer); limitTime =tlv.toDate(); tlv = new TLV_Structure(TagName.User_Status,4,msg.m_packet.m_Body.getTLVByTag(TagName.User_Status).m_bValueBuffer); status =(int)tlv.toInteger(); tlv = new TLV_Structure(TagName.OnlineActive, 4, msg.m_packet.m_Body.getTLVByTag(TagName.OnlineActive).m_bValueBuffer); onlineActive = (int)tlv.toInteger(); tlv = new TLV_Structure(TagName.SysAdmin, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SysAdmin).m_bValueBuffer); sysAdmin = (int)tlv.toInteger(); result = GMUserInfo.UpdateRow(userByID, deptID, userID, realName, limitTime, status, onlineActive,sysAdmin); if(result==1) { logAPI.writeTitle(LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Success + "!"); logAPI.writeContent(LanguageAPI.API_DepartmentAPI_OperatorID,LanguageAPI.API_UserInfoAPI_UserID,LanguageAPI.API_UserInfoAPI_LimitDay); logAPI.writeData(Convert.ToString(userByID),Convert.ToString(userID),Convert.ToString(limitTime)); Console.WriteLine(logAPI.Buffer.ToString()); return Message.Common_USER_UPDATE_RESP("SUCESS"); } else { logAPI.writeTitle(LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Failure + "!"); logAPI.writeContent(LanguageAPI.API_DepartmentAPI_OperatorID,LanguageAPI.API_UserInfoAPI_UserID,LanguageAPI.API_UserInfoAPI_LimitDay); logAPI.writeData(Convert.ToString(userByID),Convert.ToString(userID),Convert.ToString(limitTime)); Console.WriteLine(logAPI.Buffer.ToString()); return Message.Common_USER_UPDATE_RESP("FAILURE"); } } catch(SqlException ex) { Console.WriteLine(ex.Message); return Message.Common_USER_UPDATE_RESP(ex.Message); } }
/// <summary> /// 服务器断开以后,更新所有用户为断开状态 /// </summary> /// <returns>记录上线用户</returns> public void GM_UpdateActiveUser(int status) { int result = -1; try { result = GMUserInfo.updateActiveUser(status); } catch(Common.Logic.Exception ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// 判断该帐号是否已经上线 /// </summary> /// <param name="userName">用户名</param> /// <param name="password">密码</param> public int GM_ActiveUser(string userName,string password,string MAC) { int result = 1; try { result = GMUserInfo.getActiveUser(userName,password,MAC); } catch(System.Exception) { } return result; }
/// <summary> /// 记录MAC码信息 /// </summary> /// <returns>记录MAC信息</returns> public void GM_UpdateMACInfo() { int result = -1; string userName = null; string passWd = null; string mac= null; try { userName = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.UserName).m_bValueBuffer); passWd =Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.PassWord).m_bValueBuffer); mac = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.MAC).m_bValueBuffer); result = GMUserInfo.insertMac(userName,passWd,mac); } catch(Common.Logic.Exception ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// 修改密码信息 /// </summary> public Message GM_ModifPassWd() { GMLogAPI logAPI = new GMLogAPI(); int result = -1; int userID = 0; int userByID = 0; string passWd = null; try { TLV_Structure strut1 = new TLV_Structure(TagName.User_ID,4,msg.m_packet.m_Body.getTLVByTag(TagName.User_ID).m_bValueBuffer); userID =(int)strut1.toInteger(); TLV_Structure strut2 = new TLV_Structure(TagName.UserByID,4,msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer); userByID =(int)strut2.toInteger(); passWd =Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.PassWord).m_bValueBuffer); result = GMUserInfo.UpdateRow(userByID,userID,passWd); if(result==1) { logAPI.writeTitle(LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_Password,LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_Password + LanguageAPI.API_Success + "!"); logAPI.writeContent(LanguageAPI.API_DepartmentAPI_OperatorID,LanguageAPI.API_UserInfoAPI_UserID,LanguageAPI.API_UserInfoAPI_NewPassword); logAPI.writeData(Convert.ToString(userByID),Convert.ToString(userID),passWd); Console.WriteLine(logAPI.Buffer.ToString()); return Message.COMMON_MES_RESP("SUCESS",Msg_Category.USER_ADMIN,ServiceKey.USER_PASSWD_MODIF_RESP); } else { logAPI.writeTitle(LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_Password,LanguageAPI.API_Update + LanguageAPI.API_UserInfoAPI_Password + LanguageAPI.API_Failure + "!"); logAPI.writeContent(LanguageAPI.API_DepartmentAPI_OperatorID,LanguageAPI.API_UserInfoAPI_UserID,LanguageAPI.API_UserInfoAPI_NewPassword); logAPI.writeData(Convert.ToString(userByID),Convert.ToString(userID),passWd); Console.WriteLine(logAPI.Buffer.ToString()); return Message.COMMON_MES_RESP("FAILURE",Msg_Category.USER_ADMIN,ServiceKey.USER_PASSWD_MODIF_RESP); } } catch(SqlException ex) { Console.WriteLine(ex.Message); return Message.COMMON_MES_RESP(ex.Message,Msg_Category.USER_ADMIN,ServiceKey.USER_PASSWD_MODIF_RESP); } }
/// <summary> /// 得到GM帐号信息类 /// </summary> /// <param name="userID">用户ID</param> /// <returns>GM帐号类</returns> public GMUserInfo GM_QueryUserInfo(int userID) { System.Data.DataSet ds = null; GMUserInfo userInfo = null; try { //将GM帐号信息存入DATASET ds = GMUserInfo.getUserInfo(userID); //构造一个用户名和密码的信息类 userInfo = new GMUserInfo(ds.Tables[0].Rows[0].ItemArray[0].ToString(),ds.Tables[0].Rows[0].ItemArray[1].ToString()); } catch(System.Exception ex) { Console.WriteLine(ex.Message); } return userInfo; }
/// <summary> /// 记录上线用户 /// </summary> /// <returns>记录上线用户</returns> public Message GM_UpdateActiveUserPkg(int userByID, int status) { int result = -1; try { result = GMUserInfo.updateActiveUser(userByID, status); if(result==1) { Console.WriteLine(DateTime.Now+" - "+LanguageAPI.API_Update+userByID+LanguageAPI.API_UserInfoAPI_UserStatus+LanguageAPI.API_Success+"!"); return Message.COMMON_MES_RESP("SUCESS", Msg_Category.USER_ADMIN,ServiceKey.UPDATE_ACTIVEUSER_RESP); } else { Console.WriteLine(DateTime.Now+" - "+LanguageAPI.API_Update+userByID+LanguageAPI.API_UserInfoAPI_UserStatus+LanguageAPI.API_Success+"!"); return Message.COMMON_MES_RESP("FAILURE", Msg_Category.USER_ADMIN, ServiceKey.UPDATE_ACTIVEUSER_RESP); } } catch (Common.Logic.Exception ex) { return Message.COMMON_MES_RESP("FAILURE",Msg_Category.USER_ADMIN,ServiceKey.UPDATE_ACTIVEUSER_RESP); } }
/// <summary> /// 删除一个用户信息 /// </summary> public Message GM_DelUserInfo() { int result = -1; int userID = 0; int userByID = 0; try { TLV_Structure strut1 = new TLV_Structure(TagName.User_ID,4,msg.m_packet.m_Body.getTLVByTag(TagName.User_ID).m_bValueBuffer); userID =(int)strut1.toInteger(); TLV_Structure strut2 = new TLV_Structure(TagName.UserByID,4,msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer); userByID =(int)strut2.toInteger(); result = GMUserInfo.deleteRow(userID,userByID); if(result==1) { logAPI.writeTitle(LanguageAPI.API_Delete + LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_Delete + LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Success + "!"); logAPI.writeContent(LanguageAPI.API_DepartmentAPI_OperatorID,LanguageAPI.API_UserInfoAPI_UserID,LanguageAPI.API_UserInfoAPI_LimitDay); logAPI.writeData(Convert.ToString(userByID),Convert.ToString(userID),LanguageAPI.API_Delete); Console.WriteLine(logAPI.Buffer.ToString()); return Message.Common_USER_DELETE_RESP("SUCESS"); } else { logAPI.writeTitle(LanguageAPI.API_Delete + LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_Delete + LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Failure + "!"); logAPI.writeContent(LanguageAPI.API_DepartmentAPI_OperatorID,LanguageAPI.API_UserInfoAPI_UserID,LanguageAPI.API_UserInfoAPI_LimitDay); logAPI.writeData(Convert.ToString(userID),Convert.ToString(userByID),LanguageAPI.API_Delete); Console.WriteLine(logAPI.Buffer.ToString()); return Message.Common_USER_DELETE_RESP("FAILURE"); } } catch(SqlException ex) { Console.WriteLine(ex.Message); return Message.Common_USER_DELETE_RESP("FAILURE"); } }
/// <summary> /// 封装用户列表的消息包 /// </summary> /// <returns>完整的消息包</returns> public static byte[] PackUserListMsg(int userID) { string[] userName ; string[] passWd; string[] MAC; int iCurrPos = 0; int iDetailLen = 0; byte[] bDetail = new byte[128]; //调用UserInfo类的函数,把用户表数据读出来存入DATASET里面 DataSet ds = GMUserInfo.SelectAll(userID); userName = new string[ds.Tables[0].Rows.Count]; passWd = new string[ds.Tables[0].Rows.Count]; MAC = new string[ds.Tables[0].Rows.Count]; //遍历用户表所有数据,把用户名、密码、MAC存入Byte数组里面 //iCurrPos记录Byte数组的位置 for(int i=0;i<ds.Tables[0].Rows.Count;i++) { userName[i] = ds.Tables[0].Rows[i][1].ToString(); passWd[i] = ds.Tables[0].Rows[i][2].ToString(); MAC[i] = ds.Tables[0].Rows[i][3].ToString(); byte[] bTmpUserName = System.Text.Encoding.Default.GetBytes(userName[i]); Array.Copy(bTmpUserName,0,bDetail,iCurrPos,bTmpUserName.Length); iCurrPos+=bTmpUserName.Length; byte[] bTmpPassWord = System.Text.Encoding.Default.GetBytes(passWd[i]); Array.Copy(bTmpPassWord,0,bDetail,iCurrPos,bTmpPassWord.Length); iCurrPos+=bTmpPassWord.Length; byte[] bTmpMac = System.Text.Encoding.Default.GetBytes(MAC[i]); Array.Copy(bTmpMac,0,bDetail,iCurrPos,bTmpMac.Length); iCurrPos+=bTmpMac.Length; } //得到消息包的长度 iDetailLen = iCurrPos; //截取多余Byte空间 byte[] detailMsg = Packet_Body.getPacketBody(bDetail); byte[] bHead = new byte[16+ds.Tables[0].Rows.Count*3+iDetailLen]; iCurrPos = 0; //创建序列号ID bHead[iCurrPos++]=System.Convert.ToByte(iSequenceID&255); bHead[iCurrPos++]=System.Convert.ToByte((iSequenceID&65280)>>8); bHead[iCurrPos++]=System.Convert.ToByte((iSequenceID&16711680)>>16); bHead[iCurrPos++]=System.Convert.ToByte((iSequenceID&4278190080)>>32); //消息类型 bHead[iCurrPos++]=0x82; //保留地址 bHead[iCurrPos++]=0x80; //服务健是REQUEST还是RESP bHead[iCurrPos++]=0x01; bHead[iCurrPos++]=0x00; //定义消息体数据的长度,把它存在消息头里面,如果数据是多行的话就循环存储长度 for(int i=0;i<ds.Tables[0].Rows.Count;i++) { bHead[iCurrPos++]=Convert.ToByte(userName[i].Length); bHead[iCurrPos++]=Convert.ToByte(passWd[i].Length); bHead[iCurrPos++]=Convert.ToByte(MAC[i].Length); } //消息创建日期 System.DateTime dt = System.DateTime.Now; bHead[iCurrPos++]=System.Convert.ToByte(dt.Year-1900); bHead[iCurrPos++]=System.Convert.ToByte(dt.Month); bHead[iCurrPos++]=System.Convert.ToByte(dt.Day); bHead[iCurrPos++]=System.Convert.ToByte(dt.Hour); bHead[iCurrPos++]=System.Convert.ToByte(dt.Minute); bHead[iCurrPos++]=System.Convert.ToByte(dt.Second); iSequenceID++; bHead[iCurrPos++]=System.Convert.ToByte(detailMsg.Length&255); bHead[iCurrPos++]=System.Convert.ToByte((detailMsg.Length&65280)>>8); //把消息头和消息体组成一个消息包 Array.Copy(bDetail,0,bHead,iCurrPos,detailMsg.Length); return bHead; }
/// <summary> /// 得到所有GM帐号信息 /// </summary> /// <returns>返回GM帐号信息的消息包</returns> public Message GM_QueryList(int index,int pageSize,int userID) { GMLogAPI logAPI = new GMLogAPI(); ArrayList rowList = new ArrayList(); DataSet ds = null; try { if (userID == 0) { ds = GMUserInfo.SelectAll(); } else { ds = GMUserInfo.SelectAll(userID); } if (ds.Tables[0].Rows.Count <= 0) { return Message.COMMON_MES_RESP(LanguageAPI.API_UserInfoAPI_NoUserList, Msg_Category.USER_ADMIN, ServiceKey.USER_QUERY_RESP,TagName.ERROR_Msg,TagFormat.TLV_STRING); } else { //总页数 int pageCount = 0; pageCount = ds.Tables[0].Rows.Count % pageSize; if (pageCount > 0) { pageCount = ds.Tables[0].Rows.Count / pageSize + 1; } else pageCount = ds.Tables[0].Rows.Count / pageSize; //分页显示 if (index + pageSize > ds.Tables[0].Rows.Count) { pageSize = ds.Tables[0].Rows.Count - index; } logAPI.writeTitle(LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Success + " !"); Query_Structure[] structList = new Query_Structure[pageSize]; logAPI.writeContent(LanguageAPI.Logic_UserValidate_User,LanguageAPI.API_UserInfoAPI_Password,LanguageAPI.API_UserInfoAPI_MAC); for (int i = index; i < index + pageSize; i++) { Query_Structure strut = new Query_Structure(12); strut.AddTagKey(TagName.User_ID, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0])); byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[1]); strut.AddTagKey(TagName.UserName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes); bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[2]); strut.AddTagKey(TagName.PassWord, TagFormat.TLV_STRING, (uint)bytes.Length, bytes); string mac; if (ds.Tables[0].Rows[i].IsNull(3) == false) mac = ds.Tables[0].Rows[i].ItemArray[3].ToString(); else mac = ""; bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, mac); strut.AddTagKey(TagName.MAC, TagFormat.TLV_STRING, (uint)bytes.Length, bytes); //使用时效 object limit; if (ds.Tables[0].Rows[i].IsNull(8) == false) limit = ds.Tables[0].Rows[i].ItemArray[8]; else limit = ""; bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_DATE, limit); strut.AddTagKey(TagName.Limit, TagFormat.TLV_DATE, (uint)bytes.Length, bytes); //真实姓名 object realName; if (ds.Tables[0].Rows[i].IsNull(4) == false) realName = ds.Tables[0].Rows[i].ItemArray[4]; else realName = ""; bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, realName); strut.AddTagKey(TagName.RealName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes); //部门ID bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[5]); strut.AddTagKey(TagName.DepartID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes); //部门名称 bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[6]); strut.AddTagKey(TagName.DepartName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes); //状态 bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[7]); strut.AddTagKey(TagName.User_Status, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes); //总页数 strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount)); //在线状态 bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[9]); strut.AddTagKey(TagName.OnlineActive, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes); bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[10]); strut.AddTagKey(TagName.SysAdmin, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes); structList[i - index] = strut; logAPI.writeData(ds.Tables[0].Rows[i].ItemArray[1].ToString().Trim(), ds.Tables[0].Rows[i].ItemArray[2].ToString().Trim(), ds.Tables[0].Rows[i].ItemArray[3].ToString().Trim()); } Console.WriteLine(logAPI.Buffer.ToString()); return Message.COMMON_MES_RESP(structList, Msg_Category.USER_ADMIN, ServiceKey.USER_QUERY_RESP, 12); } } catch (System.Exception ex) { Console.WriteLine(ex.Message); return Message.COMMON_MES_RESP(LanguageAPI.API_UserInfoAPI_NoUserList, Msg_Category.USER_ADMIN, ServiceKey.USER_QUERY_RESP,TagName.ERROR_Msg,TagFormat.TLV_STRING); } }
/// <summary> /// 得到所有GM帐号信息 /// </summary> /// <returns>返回GM帐号信息的消息包</returns> public Message GM_QueryAll(int userID) { GMLogAPI logAPI = new GMLogAPI(); ArrayList rowList = new ArrayList(); DataSet ds = null; try { ds = GMUserInfo.SelectAll(userID); if(ds.Tables[0].Rows.Count<=0) { return Message.COMMON_MES_RESP("FAILURE",Msg_Category.USER_ADMIN,ServiceKey.USER_QUERY_ALL); } else { logAPI.writeTitle(LanguageAPI.API_Display + LanguageAPI.API_UserInfoAPI_AccountInfo,LanguageAPI.API_Display + LanguageAPI.API_UserInfoAPI_AccountInfo + LanguageAPI.API_Success + " !"); Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count]; logAPI.writeContent(LanguageAPI.Logic_UserValidate_User,LanguageAPI.API_UserInfoAPI_Password,LanguageAPI.API_UserInfoAPI_MAC); for(int i=0;i<ds.Tables[0].Rows.Count;i++) { Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length); strut.AddTagKey(TagName.User_ID,TagFormat.TLV_INTEGER,4,TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER,ds.Tables[0].Rows[i].ItemArray[0])); byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING,ds.Tables[0].Rows[i].ItemArray[1]); strut.AddTagKey(TagName.UserName,TagFormat.TLV_STRING,(uint)bytes.Length,bytes); bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING,ds.Tables[0].Rows[i].ItemArray[2]); strut.AddTagKey(TagName.PassWord,TagFormat.TLV_STRING,(uint)bytes.Length,bytes); string mac; if(ds.Tables[0].Rows[i].IsNull(3)==false) mac = ds.Tables[0].Rows[i].ItemArray[3].ToString(); else mac = ""; bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING,mac); strut.AddTagKey(TagName.MAC,TagFormat.TLV_STRING,(uint)bytes.Length,bytes); //使用时效 object limit; if(ds.Tables[0].Rows[i].IsNull(8)==false) limit = ds.Tables[0].Rows[i].ItemArray[8]; else limit = ""; bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_DATE,limit); strut.AddTagKey(TagName.Limit,TagFormat.TLV_DATE,(uint)bytes.Length,bytes); //状态 bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER,ds.Tables[0].Rows[i].ItemArray[7]); strut.AddTagKey(TagName.User_Status,TagFormat.TLV_INTEGER,(uint)bytes.Length,bytes); string realName; if(ds.Tables[0].Rows[i].IsNull(4)==false) realName = ds.Tables[0].Rows[i].ItemArray[4].ToString(); else realName = ""; bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING,realName); strut.AddTagKey(TagName.RealName,TagFormat.TLV_STRING,(uint)bytes.Length,bytes); bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[10]); strut.AddTagKey(TagName.SysAdmin, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes); structList[i]=strut; logAPI.writeData(ds.Tables[0].Rows[i].ItemArray[1].ToString().Trim(),ds.Tables[0].Rows[i].ItemArray[2].ToString().Trim(),ds.Tables[0].Rows[i].ItemArray[3].ToString().Trim()); } Console.WriteLine(logAPI.Buffer.ToString()); return Message.COMMON_MES_RESP(structList,Msg_Category.USER_ADMIN,ServiceKey.USER_QUERY_ALL,7); } } catch(SqlException ex) { Console.WriteLine(ex.Message); return Message.COMMON_MES_RESP(LanguageAPI.API_UserInfoAPI_NoUserList,Msg_Category.USER_ADMIN,ServiceKey.USER_QUERY_ALL,TagName.ERROR_Msg,TagFormat.TLV_STRING); } catch(System.Exception ex1) { Console.WriteLine(ex1.Message); return Message.COMMON_MES_RESP(LanguageAPI.API_UserInfoAPI_NoUserList,Msg_Category.USER_ADMIN,ServiceKey.USER_QUERY_ALL,TagName.ERROR_Msg,TagFormat.TLV_STRING); } }