asp.net微信开发(用户分组管理)

asp.net微信开发(用户分组管理),第1张

概述上一篇已讲解到新建用户分组,移动用户到分组的功能,这一章主要讲解修改分组名称和删除分组

上一篇已讲解到新建用户分组,移动用户到分组的功能,这一章主要讲解修改分组名称和删除分组

直接上代码,废话不多说,获取分组列表需要用到的实体类

 /// <summary> /// 微信分组类 /// </summary> public class WxGroupsInfo {  public string Group_ID { get; set; }//分组编号  public string Group_name { get; set; }//分组名称  public string Group_Count { get; set; }//分组人数 } 

前台代码:

<!DOCTYPE HTML><HTML xmlns="http://www.w3.org/1999/xhtml"><head runat="server"><Meta http-equiv="Content-Type" content="text/HTML; charset=utf-8"/>  <Title></Title>  <link href="CSS/style.CSS" rel="Stylesheet" type="text/CSS" /> <style type="text/CSS">   .inputstyle { height:35px; line-height:35px; text-indent:5px; wIDth:350px;background-image:url('images/inputbg.gif'); background-repeat:repeat-x;border-top:solID 1px #a7b5bc; border-left:solID 1px #a7b5bc; border-right:solID 1px #ced9df; border-bottom:solID 1px #ced9df;margin:15px auto 15px auto;  }  a:hover { cursor:pointer;  }  .g_Title { wIDth:100%; border-bottom:2px solID #ced9df;Font-size:20px; Font-weight:bold; text-align:left; text-indent:5px; height:40px; line-height:40px;  }   th { height:35px;background-image:url('images/th.gif'); background-repeat:repeat-x;  }   tr { height:30px;   }  #shownewgroup { wIDth:300px; height:200px; background-color:white;z-index:9999; border:2px solID #DDD; top:40%; left:40%; background-color:#fff; position:fixed;margin:-100px auto auto -100px; display:none;  }  #shownewgroupzhezhaoceng { height:200%; wIDth:200%; left:0px; top:0px;position:fixed; z-index:9998; background:rgb(50,50,50);background:rgba(0,0.5); display:none;  }  .closeLogin { height:30px; border-bottom:2px solID #31bb34; text-align:right; line-height:30px; Font-size:14px; Font-weight:bold;  }  a:hover { cursor:pointer;  }   .inputstyle22 { height:35px; line-height:35px; text-indent:5px; wIDth:280px;background-image:url('images/inputbg.gif'); background-repeat:repeat-x;border-top:solID 1px #a7b5bc; border-left:solID 1px #a7b5bc; border-right:solID 1px #ced9df; border-bottom:solID 1px #ced9df; float:left; margin:auto 5px auto 5px;  } </style>  <script src="../Js/jquery-1.7.1.min.Js" type="text/JavaScript"></script>  <script type="text/JavaScript">       //修改分组名称调用的函数   function EditRoster(PayNo,name) {    //alert(PayNo+":"+name);    var url = '****.aspx?ID=' + PayNo+"&name="+name;//转向网页的地址;     var name = 'add';       //网页名称,可为空;     var iWIDth = 600;       //d出窗口的宽度;     var iHeight = 300;       //d出窗口的高度;     //获得窗口的垂直位置     var itop = (window.screen.availHeight - 30 - iHeight) / 2;    //获得窗口的水平位置     var ileft = (window.screen.availWIDth - 10 - iWIDth) / 2;    window.open(url,name,'height=' + iHeight + ',innerHeight=' + iHeight + ',wIDth=' + iWIDth + ',innerWIDth=' + iWIDth + ',top=' + itop + ',left=' + ileft + ',status=no,toolbar=no,menubar=no,location=no,resizable=no,scrollbars=0,Titlebar=no');   }   $(document).ready(function () {    $(".newGroups").click(function () {     $("#shownewgroupzhezhaoceng").show();     $("#shownewgroup").show();    }),$('.closeloginpage').click(function () {    $("#shownewgroupzhezhaoceng").hIDe();    $("#shownewgroup").hIDe();   })   }) </script></head><body> <form ID="form1" runat="server">  <div >  <span>位置:</span>  <ul >   <li><a href="WelCome.aspx" target="rightFrame">首页</a></li>   <li>微信管理</li>   <li>德桥员工服务中心----分组管理</li>  </ul>  </div>  <div >分组管理</div>   <div ID="shownewgroup">     <div ><a ><span >新建分组</span>关闭</a>  </div>    <div >  30字符以内</div>    <input type="text" ID="txtgroupsname" name="txtgroupsname"  maxlength="30" runat="server" value="分组名称" onfocus="if(value==defaultValue){value='';this.style.color='#000'}" onblur="if(!value){value=defaultValue;this.style.color='#999'}" />   <asp:linkbutton ID="linkBtnCreateGroup" runat="server" OnClick="linkBtnCreateGroup_Click"><div > 确定创建</div></asp:linkbutton>     </div>    <div ID="shownewgroupzhezhaoceng"></div>  <table >   <asp:Repeater ID="RepeaterGroupList" runat="server" Onitemcommand="RepeaterGroupList_itemcommand" OnItemDataBound="RepeaterGroupList_ItemDataBound">    <headerTemplate>     <tr>      <th>序号</th>      <th>ID编号</th>      <th>分组名称</th>      <th>分组人数</th>      <th> *** 作</th>     </tr>    </headerTemplate>    <ItemTemplate>     <tr style='background-color: <%#(Container.ItemIndex%2==0)?"#fff":"#ced9ff"%>'>      <td><asp:Label ID="lbXuHao" runat="server" Text=""></asp:Label></td>      <td><%# Eval("Group_ID") %></td>      <td><%# Eval("Group_name") %></td>      <td><%# Eval("Group_Count") %></td>      <td>        <a onclick="EditRoster('<%# Eval("Group_ID") %>','<%# Eval("Group_name") %>');">修改分组名称</a>          <asp:linkbutton ID="linkBtnDeleteGroup" runat="server" Commandname="DeleteGroups" CommandArgument='<%# Eval("Group_ID") %>' >删除分组</asp:linkbutton>      </td>     </tr>    </ItemTemplate>   </asp:Repeater>  </table>  <a ><div > ┼ 新建分组</div></a> </form></body></HTML>

后台代码如下:
 

protected voID Page_Load(object sender,EventArgs e)  {   if(!Page.IsPostBack)   {    BindGroupList();    this.DataBind();   }  }  private voID BindGroupList()  {   WeiXinServer wxs = new WeiXinServer();   ///从缓存读取accesstoken   string Access_token = Cache["Access_token"] as string;   if (Access_token == null)   {    //如果为空,重新获取    Access_token = wxs.GetAccesstoken();    //设置缓存的数据7000秒后过期    Cache.Insert("Access_token",Access_token,null,DateTime.Now.AddSeconds(7000),System.Web.Caching.Cache.NoSlIDingExpiration);   }   string Access_tokento = Access_token.Substring(17,Access_token.Length - 37);   string Jsonres = "";   string content = Cache["AllGroups_content"] as string;   if (content == null)   {    Jsonres = "https://API.weixin.qq.com/cgi-bin/groups/get?access_token=" + Access_tokento;    httpWebRequest myRequest = (httpWebRequest)WebRequest.Create(Jsonres);    myRequest.Method = "GET";    httpWebResponse myResponse = (httpWebResponse)myRequest.GetResponse();    StreamReader reader = new StreamReader(myResponse.GetResponseStream(),EnCoding.UTF8);    content = reader.ReadToEnd();    reader.Close();    //设置缓存的数据7000秒后过期    Cache.Insert("AllGroups_content",content,System.Web.Caching.Cache.NoSlIDingExpiration);   }   //使用前需要引用Newtonsoft.Json.dll文件   JObject JsonObj = JObject.Parse(content);   int groupsnum = JsonObj["groups"].Count();   List<WxGroupsInfo> wxgroupList = new List<WxGroupsInfo>();      for (int i = 0; i < groupsnum; i++)   {    WxGroupsInfo wginfo = new WxGroupsInfo();    wginfo.Group_ID = JsonObj["groups"][i]["ID"].ToString();    wginfo.Group_name = JsonObj["groups"][i]["name"].ToString();    wginfo.Group_Count = JsonObj["groups"][i]["count"].ToString();    wxgroupList.Add(wginfo);   }   this.RepeaterGroupList.DataSource = wxgroupList;   this.RepeaterGroupList.DataBind();  }  /// <summary>  /// 绑定事件  /// </summary>  /// <param name="sender"></param>  /// <param name="e"></param>  protected voID RepeaterGroupList_ItemDataBound(object sender,RepeaterItemEventArgs e)  {   if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)   {    Label lbXuHao = e.Item.FindControl("lbXuHao") as Label;    int num = 1;    lbXuHao.Text = num.ToString();    for (int i = 0; i < this.RepeaterGroupList.Items.Count;i++ )    {     num += 1;     lbXuHao.Text = num.ToString();    }    linkbutton linkBtnDeleteGroup = e.Item.FindControl("linkBtnDeleteGroup") as linkbutton;    linkBtnDeleteGroup.Attributes.Add("OnClick","return confirm('您确定要删除该分组?删除后该分组内的人员即将恢复到默认分组!')");   }  }  /// <summary>  /// 执行事件  /// </summary>  /// <param name="source"></param>  /// <param name="e"></param>  protected voID RepeaterGroupList_itemcommand(object source,RepeaterCommandEventArgs e)  {   //ScriptManager.RegisterClIEntScriptBlock(this.Page,this.GetType(),"","alert('删除接口已关闭!');location='WxGroupManageList.aspx';",true);   if (e.Commandname == "DeleteGroups")   {    WeiXinServer wxs = new WeiXinServer();    string res = "";    ///从缓存读取accesstoken    string Access_token = Cache["Access_token"] as string;    if (Access_token == null)    {     //如果为空,重新获取     Access_token = wxs.GetAccesstoken();     //设置缓存的数据7000秒后过期     Cache.Insert("Access_token",System.Web.Caching.Cache.NoSlIDingExpiration);    }    string Access_tokento = Access_token.Substring(17,Access_token.Length - 37);    string posturl = "https://API.weixin.qq.com/cgi-bin/groups/delete?access_token=" + Access_tokento;    //POST数据例子: POST数据例子:{"group":{"ID":108}}    string groupID = e.CommandArgument.ToString();    string postData = "{\"group\":{\"ID\":\"" + groupID.ToString() + "\"}}";    res = wxs.GetPage(posturl,postData);    ScriptManager.RegisterClIEntScriptBlock(this.Page,"alert('删除成功!由于缓存问题,您可能需要重新登录才能看到效果!');location='WxGroupManageList.aspx';",true);   }  }  /// <summary>  /// 创建分组  /// </summary>  /// <param name="sender"></param>  /// <param name="e"></param>  protected voID linkBtnCreateGroup_Click(object sender,EventArgs e)  {   if (this.txtgroupsname.Value.ToString().Equals("分组名称"))   {    ////    ScriptManager.RegisterClIEntScriptBlock(this.Page,"alert('不能为空!')",true);    this.txtgroupsname.Focus();    return;   }   WeiXinServer wxs = new WeiXinServer();   string res = "";   ///从缓存读取accesstoken   string Access_token = Cache["Access_token"] as string;   if (Access_token == null)   {    //如果为空,重新获取    Access_token = wxs.GetAccesstoken();    //设置缓存的数据7000秒后过期    Cache.Insert("Access_token",Access_token.Length - 37);   string posturl = "https://API.weixin.qq.com/cgi-bin/groups/create?access_token=" + Access_tokento;   string postData = "{\"group\":{\"name\":\"" + this.txtgroupsname.Value.ToString().Trim() + "\"}}";   res = wxs.GetPage(posturl,postData);   ScriptManager.RegisterClIEntScriptBlock(this.Page,"alert('创建成功!如未显示,请退出重新登录即可!');location='WxGroupManageList.aspx';",true);  }

修改分组名称的页面

前台代码:

<!DOCTYPE HTML><HTML xmlns="http://www.w3.org/1999/xhtml"><head runat="server"><Meta http-equiv="Content-Type" content="text/HTML; charset=utf-8"/> <Title></Title> <style type="text/CSS">  .inputstyle { height:35px; line-height:35px; text-indent:5px; wIDth:280px;background-image:url('images/inputbg.gif'); background-repeat:repeat-x;border-top:solID 1px #a7b5bc; border-left:solID 1px #a7b5bc; border-right:solID 1px #ced9df; border-bottom:solID 1px #ced9df; float:left; margin:auto 5px auto 5px;  } </style></head><body> <form ID="form1" runat="server">  <table border="1" >   <tr>    <td >分组编号:</td>    <td> <asp:TextBox ID="txtGroupID" CSSClass="inputstyle" Enabled="false" runat="server"></asp:TextBox></td>   </tr>   <tr>    <td >分组名称:</td>    <td>      <asp:TextBox ID="txtGroupname" CSSClass="inputstyle" runat="server"></asp:TextBox>    </td>   </tr>   <tr>    <td></td>    <td>      <asp:linkbutton ID="linkBtnSet" runat="server" OnClick="linkBtnSet_Click" ><div > 设 置</div></asp:linkbutton></td>   </tr>  </table> </form></body></HTML>

后台代码:

 protected voID Page_Load(object sender,EventArgs e)  {   if(!Page.IsPostBack)   {    if (Request.queryString["ID"] != null)    {     string group_ID = Request.queryString["ID"].ToString();     string group_name = Request.queryString["name"].ToString();     this.txtGroupID.Text = group_ID.ToString();     this.txtGroupname.Text = group_name.ToString();     this.txtGroupname.Focus();    }   }  }  /// <summary>  /// 设置  /// </summary>  /// <param name="sender"></param>  /// <param name="e"></param>  protected voID linkBtnSet_Click(object sender,EventArgs e)  {   if(String.IsNullOrWhiteSpace(this.txtGroupname.Text.ToString().Trim()))   {    ScriptManager.RegisterClIEntScriptBlock(this.Page,"alert('不能为空!');",true);    this.txtGroupname.Focus();    return;   }   if (this.txtGroupname.Text.ToString().Trim().Length>30)   {    ScriptManager.RegisterClIEntScriptBlock(this.Page,"alert('组名称应在30个字符之内!');",true);    this.txtGroupname.Focus();    return;   }   WeiXinServer wxs = new WeiXinServer();   string res = "";   ///从缓存读取accesstoken   string Access_token = Cache["Access_token"] as string;   if (Access_token == null)   {    //如果为空,重新获取    Access_token = wxs.GetAccesstoken();    //设置缓存的数据7000秒后过期    Cache.Insert("Access_token",Access_token.Length - 37);   string posturl = "https://API.weixin.qq.com/cgi-bin/groups/update?access_token=" + Access_tokento;   //POST数据例子:POST数据例子:{"group":{"ID":108,"name":"test2_modify2"}}   //string postData = "{\"group\":{\"name\":\"" + this.txtgroupsname.Value.ToString().Trim() + "\"}}";   string postData = "{\"group\":{\"ID\":\"" + txtGroupID.Text.ToString() +"\",\"name\":\""+this.txtGroupname.Text.ToString()+"\"}}";   res = wxs.GetPage(posturl,postData);   //使用前需药引用Newtonsoft.Json.dll文件   JObject JsonObj = JObject.Parse(res);   ///获取返回结果的正确|true|false,string isright = JsonObj["errcode"].ToString();//0   string istrueorfalse = JsonObj["errmsg"].ToString();//ok   if (isright.Equals("0") && istrueorfalse.Equals("ok"))   {           ///修改成功之后,刷新父窗体,关闭本页    ScriptManager.RegisterClIEntScriptBlock(this.Page,"alert('修改成功!如未正常显示,属缓存问题,请重新登录即可!');window.opener.location.reload();this.close();",true);   }   else   {    ScriptManager.RegisterClIEntScriptBlock(this.Page,"alert('修改失败!');this.close();",true);   }  }

本文已被整理到了《ASP.NET微信开发教程汇总》,欢迎大家学习阅读。

以上就是用户分组管理的全部核心代码,仅供参考,希望对大家的学习有所帮助。

总结

以上是内存溢出为你收集整理的asp.net微信开发(用户分组管理)全部内容,希望文章能够帮你解决asp.net微信开发(用户分组管理)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1260844.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-08
下一篇2022-06-08

发表评论

登录后才能评论

评论列表(0条)

    保存