using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace LYFZ.WeixinServers.LoginApi { public partial class msg_server : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["type"] != null) { string strOptType = Request.QueryString["type"]; if (!string.IsNullOrEmpty(strOptType)) { if (strOptType.StartsWith("sys-")) { string strUser, strUserPsw; if (VerifySysParam(out strUser, out strUserPsw)) { // 获取系统账号信息,是否有权限操作行业信息; LoginModel.user model = GlobalCache.GetUserInfo(strUser, strUserPsw); if (model == null) { Response.Write("{\"code\":201, \"msg\":\"账号或密码不对\"}"); return; } if (model.user_type != 0) { Response.Write("{\"code\":201, \"msg\":\"账号操作权限不足\"}"); return; } switch (strOptType) { case "sys-add": { OptSysAdd(); } break; case "sys-delete": { OptSysDelete(); } break; case "sys-modify": { OptSysModify(); } break; case "sys-query": { OptSysQuery(); } break; default: break; } } else { Response.Write("{\"code\":201, \"msg\":\"参数名不对或参数缺少\"}"); } } else { } } else { Response.Write("{\"code\":201, \"msg\":\"参数名不对或参数缺少\"}"); } } else { Response.Write("{\"code\":201, \"msg\":\"参数名不对或参数缺少\"}"); } } public bool VerifySysParam(out string strUser, out string strUserPsw) { strUser = strUserPsw = ""; if (this.Request.Form["user"] != null && this.Request.Form["user_psw"] != null ) { strUser = this.Request.Form["user"]; strUserPsw = this.Request.Form["user_psw"]; if (string.IsNullOrEmpty(strUser) || string.IsNullOrEmpty(strUserPsw) ) return false; return true; } return false; } public void OptSysAdd() { bool hasnull = false; Dictionary PostParam = new Dictionary(); string[] not_null_field = { "server_ip", "server_name", "server_domain", "server_http_port", "server_tcp_port", "server_db_port", "server_db_user", "server_db_psw", "server_note" }; foreach (string str in not_null_field) { if (Request.Form[str] == null) { hasnull = true; break; } PostParam.Add(str, Request.Form[str]); } if (hasnull) { Response.Write("{\"code\":201, \"msg\":\"参数名不对或参数缺少\"}"); } else { LoginModel.server_entry model = new LoginModel.server_entry(); model.server_ip = PostParam["server_ip"]; model.server_name = PostParam["server_name"]; if (string.IsNullOrEmpty(model.server_ip) || string.IsNullOrEmpty(model.server_name)) { Response.Write("{\"code\":201, \"msg\":\"消息服务器ip或名称不能为空\"}"); return; } try { model.server_id = GlobalCache.GuidString(); model.server_http_port = Convert.ToInt32(PostParam["server_http_port"]); model.server_tcp_port = Convert.ToInt32(PostParam["server_tcp_port"]); model.server_db_port = Convert.ToInt32(PostParam["server_db_port"]); model.server_db_user = PostParam["server_db_user"]; model.server_domain = PostParam["server_domain"]; model.server_db_psw = PostParam["server_db_psw"]; model.server_note = PostParam["server_note"]; model.server_gen_time = GlobalCache.DateTimeToTimeStamp(DateTime.Now); GlobalCache.DalServer.Add(model, "id"); Response.Write("{\"code\":200, \"msg\":\"添加消息服务器成功\"}"); } catch (Exception ex) { Response.Write("{\"code\":201, \"msg\":\"数据库操作失败:" + ex.Message + "\"}"); } } } public void OptSysDelete() { if (Request.Form["server_id"] != null) { string strServerId = Request.Form["server_id"]; if (!string.IsNullOrEmpty(strServerId)) { if (GlobalCache.DalServer.DeleteEx(strServerId)) { Response.Write("{\"code\":200, \"msg\":\"删除消息服务器成功\"}"); } else { Response.Write("{\"code\":201, \"msg\":\"消息服务器可能已经删除了\"}"); } } else { Response.Write("{\"code\":201, \"msg\":\"没有指定要删除的服务器id\"}"); } } else { Response.Write("{\"code\":201, \"msg\":\"没有指定要删除的服务器id\"}"); } } public void OptSysModify() { bool hasnull = false; Dictionary PostParam = new Dictionary(); string[] not_null_field = { "server_id", "server_ip", "server_name", "server_domain", "server_http_port", "server_tcp_port", "server_db_port", "server_db_user", "server_db_psw", "server_note" }; foreach (string str in not_null_field) { if (Request.Form[str] == null) { hasnull = true; break; } PostParam.Add(str, Request.Form[str]); } if (hasnull) { Response.Write("{\"code\":201, \"msg\":\"参数名不对或参数缺少\"}"); } else { LoginModel.server_entry model = new LoginModel.server_entry(); model.server_id = PostParam["server_id"]; if (string.IsNullOrEmpty(model.server_id)) { Response.Write("{\"code\":201, \"msg\":\"消息服务器id不能为空\"}"); return; } try { model.server_http_port = Convert.ToInt32(PostParam["server_http_port"]); model.server_tcp_port = Convert.ToInt32(PostParam["server_tcp_port"]); model.server_db_port = Convert.ToInt32(PostParam["server_db_port"]); model.server_db_user = PostParam["server_db_user"]; model.server_domain = PostParam["server_domain"]; model.server_db_psw = PostParam["server_db_psw"]; model.server_note = PostParam["server_note"]; if (GlobalCache.DalServer.UpdateEx(model)) Response.Write("{\"code\":200, \"msg\":\"修改消息服务器成功\"}"); else Response.Write("{\"code\":200, \"msg\":\"消息服务器记录可能被删除,无法修改\"}"); } catch (Exception ex) { Response.Write("{\"code\":201, \"msg\":\"数据库操作失败:" + ex.Message + "\"}"); } } } public void OptSysQuery() { if ( Request.Form["server_id"] != null ) { string strServerId = Request.Form["server_id"]; if (!string.IsNullOrEmpty(strServerId)) { try { List listModel = new List(); DataSet ds = GlobalCache.DalServer.GetList("server_id = '"+ strServerId + "'", "id"); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { LoginModel.server_entry model = new LoginModel.server_entry(); foreach (DataRow dr in ds.Tables[0].Rows) { model = GlobalCache.DalServer.DataRowToModel(dr); listModel.Add(model); } string strJson = JsonConvert.SerializeObject(listModel); Response.Write(strJson); } else { Response.Write("{\"code\":201, \"msg\":\"没有查询到任何数据\"}"); } } catch (Exception ex) { Response.Write("{\"code\":201, \"msg\":\"数据库操作失败:" + ex.Message + "\"}"); } } else { Response.Write("{\"code\":201, \"msg\":\"参数无效\"}"); } } else { try { List listModel = new List(); DataSet ds = GlobalCache.DalServer.GetAllList("id"); if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) { LoginModel.server_entry model = new LoginModel.server_entry(); foreach (DataRow dr in ds.Tables[0].Rows) { model = GlobalCache.DalServer.DataRowToModel(dr); listModel.Add(model); } string strJson = JsonConvert.SerializeObject(listModel); Response.Write(strJson); } else { Response.Write("{\"code\":201, \"msg\":\"没有查询到任何数据\"}"); } } catch (Exception ex) { Response.Write("{\"code\":201, \"msg\":\"数据库操作失败:" + ex.Message + "\"}"); } } } } }