版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】微信开发中有关高级群发文本的示例分析
/upload/information/20201208/260/14027.jpg/upload/information/20201208/260/14028.jpg绑定本月剩余群发条数
///
<summary>
///
绑定本月剩余群发条数
///
</summary>
private
void
BindMassCount()
{
WxMassService
wms
=
new
WxMassService();
List<WxMassInfo>
wxmaslist
=
wms.GetMonthMassCount();
//官方微信服务号每月只能群发4条信息,(订阅号每天1条)多余信息,将不会成功推送,这里已经设定为4
this.lbMassCounts.Text
=
(4
-
int.Parse(wxmaslist.Count.ToString())).ToString();
if
(wxmaslist.Count
>=
4)
{
this.LinkBtnSubSend.Enabled
=
false;
this.LinkBtnSubSend.Attributes.Add("Onclick",
"return
confirm('群发信息已达上限!请下月初再试!')");
}
else
{
this.LinkBtnSubSend.Enabled
=
true;
this.LinkBtnSubSend.Attributes.Add("Onclick",
"return
confirm('您确定要群发此条信息??')");
}
}绑定分组列表
///
<summary>
///
绑定分组列表
///
</summary>
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
=
"/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,
null,
DateTime.Now.AddSeconds(7000),
System.Web.Caching.Cache.NoSlidingExpiration);
}
//使用前需要引用Newtonsoft.json.dll文件
JObject
jsonObj
=
JObject.Parse(content);
int
groupsnum
=
jsonObj["groups"].Count();
this.DDLGroupList.Items.Clear();//清除
for
(int
i
=
0;
i
<
groupsnum;
i++)
{
this.DDLGroupList.Items.Add(new
ListItem(jsonObj["groups"][i]["name"].ToString()
+
"("
+
jsonObj["groups"][i]["count"].ToString()
+
")",
jsonObj["groups"][i]["id"].ToString()));
}
}
///
<summary>
///
选择群发对象类型,显示隐藏分组列表项
///
</summary>
///
<param
name="sender"></param>
///
<param
name="e"></param>
protected
void
DDLMassType_SelectedIndexChanged(object
sender,
EventArgs
e)
{
if
(int.Parse(this.DDLMassType.SelectedValue.ToString())
>
0)
{
this.DDLGroupList.Visible
=
true;
}
else
{
this.DDLGroupList.Visible
=
false;
}
}群发
///
<summary>
///
群发
///
</summary>
///
<param
name="sender"></param>
///
<param
name="e"></param>
protected
void
LinkBtnSubSend_Click(object
sender,
EventArgs
e)
{
//根据单选按钮判断类型,发送
///如果选择的是文本消息
if
(this.RadioBtnList.SelectedValue.ToString().Equals("0"))
{
if
(String.IsNullOrWhiteSpace(this.txtwenben.InnerText.ToString().Trim()))
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('请输入您要群发文本内容!');",
true);
return;
}
if
(this.txtwenben.InnerText.ToString().Trim().Length<10)
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('文本内容至少需要10个字符以上!');",
true);
return;
}
WxMassService
wms
=
new
WxMassService();
List<WxMassInfo>
wxmaslist
=
wms.GetMonthMassCount();
if
(wxmaslist.Count
>=
4)
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('本月可群发消息数量已达上限!');",
true);
return;
}
else
{
//如何群发类型为全部用户,根据openID列表群发给全部用户,订阅号不可用,服务号认证后可用
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
StringBuilder
sbs
=
new
StringBuilder();
sbs.Append(GetAllUserOpenIDList());
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
posturl
=
"/cgi-bin/message/mass/send?access_token="
+
Access_tokento;
///群发POST数据示例如下:
//
{
//
"touser":[
//
"OPENID1",
//
"OPENID2"
//
],
//
"msgtype":
"text",
//
"text":
{
"content":
"hello
from
boxer."}
//}
string
postData
=
"{\"touser\":["
+
sbs.ToString()
+
"],\"msgtype\":\"text\",\"text\":{\"content\":\""
+
this.txtwenben.InnerText.ToString()
+
"\"}";
string
tuwenres
=
wxs.GetPage(posturl,
postData);
//使用前需药引用Newtonsoft.json.dll文件
JObject
jsonObj
=
JObject.Parse(tuwenres);
if
(jsonObj["errcode"].ToString().Equals("0"))
{
//群发成功后,保存记录
WxMassInfo
wmi
=
new
WxMassInfo();
wmi.ImageUrl
=
"";
wmi.type
=
"文本";
wmi.contents
=
this.txtwenben.InnerText.ToString().Trim();
wmi.title
=
this.txtwenben.InnerText.ToString().Substring(0,
10)
+
"...";
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
wmi.massObject
=
this.DDLMassType.SelectedItem.Text.ToString();
}
else
{
wmi.massObject
=
this.DDLGroupList.SelectedItem.Text.ToString();
}
wmi.massStatus
=
"成功";//群发成功之后返回的状态码
wmi.massMessageID
=
jsonObj["msg_id"].ToString();//群发成功之后返回的消息ID
wmi.massDate
=
System.DateTime.Now.ToString();
int
num
=
wms.AddWxMassInfo(wmi);
if
(num
>
0)
{
Session["wmninfo"]
=
null;
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据已保存!');location='WxMassManage.aspx';",
true);
return;
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据保存失败!');",
true);
return;
}
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务提交失败!!');",
true);
return;
}
}
else
{
string
group_id
=
this.DDLGroupList.SelectedValue.ToString();
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
posturl
=
"/cgi-bin/message/mass/send?access_token="
+
Access_tokento;
///群发POST数据示例如下:
//
{
//
"filter":{
//
"is_to_all":false
//
"group_id":"2"
//
},
//
"text":{
//
"content":"CONTENT"
//
},
//
"msgtype":"text"
//}
//}
string
postData
=
"{\"filter\":{\"is_to_all\":\"false\"\"group_id\":\""
+
group_id
+
"\"},\"text\":{\"content\":\""
+
this.txtwenben.InnerText.ToString()
+
"\"},\"msgtype\":\"text\"}";
string
tuwenres
=
wxs.GetPage(posturl,
postData);
//使用前需药引用Newtonsoft.json.dll文件
JObject
jsonObj
=
JObject.Parse(tuwenres);
if
(jsonObj["errcode"].ToString().Equals("0"))
{
//群发成功后,保存记录
WxMassInfo
wmi
=
new
WxMassInfo();
wmi.ImageUrl
=
"";
wmi.type
=
"文本";
wmi.contents
=
this.txtwenben.InnerText.ToString().Trim();
wmi.title
=
this.txtwenben.InnerText.ToString().Substring(0,
10)
+
"...";
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
wmi.massObject
=
this.DDLMassType.SelectedItem.Text.ToString();
}
else
{
wmi.massObject
=
this.DDLGroupList.SelectedItem.Text.ToString();
}
wmi.massStatus
=
"成功";//群发成功之后返回的状态码
wmi.massMessageID
=
jsonObj["msg_id"].ToString();//群发成功之后返回的消息ID
wmi.massDate
=
System.DateTime.Now.ToString();
int
num
=
wms.AddWxMassInfo(wmi);
if
(num
>
0)
{
Session["wmninfo"]
=
null;
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据已保存!');location='WxMassManage.aspx';",
true);
return;
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据保存失败!');",
true);
return;
}
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务提交失败!!');",
true);
return;
}
}
}
}
//如果选择的是图文消息
if
(this.RadioBtnList.SelectedValue.ToString().Equals("1"))
{
if
(String.IsNullOrWhiteSpace(this.lbtuwenmedai_id.Text.ToString().Trim()))
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('请选择或新建图文素材再进行群发!');",
true);
return;
}
WxMassService
wms
=
new
WxMassService();
List<WxMassInfo>
wxmaslist
=
wms.GetMonthMassCount();
if
(wxmaslist.Count
>=
4)
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('本月可群发消息数量已达上限!');",
true);
return;
}
else
{
//如何群发类型为全部用户,根据openID列表群发给全部用户,订阅号不可用,服务号认证后可用
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
StringBuilder
sbs
=
new
StringBuilder();
sbs.Append(GetAllUserOpenIDList());
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
posturl
=
"/cgi-bin/message/mass/send?access_token="
+
Access_tokento;
///群发POST数据示例如下:
//
{
//
"touser":[
//
"OPENID1",
//
"OPENID2"
//
],
//
"mpnews":{
//
"media_id":"123dsdajkasd231jhksad"
//
},
//
"msgtype":"mpnews"
//}
string
postData
=
"{\"touser\":["
+
sbs.ToString()
+
"],\"mpnews\":{\"media_id\":\""
+
this.lbtuwenmedai_id.Text.ToString()
+
"\"},\"msgtype\":\"mpnews\"}";
string
tuwenres
=
wxs.GetPage(posturl,
postData);
//使用前需药引用Newtonsoft.json.dll文件
JObject
jsonObj
=
JObject.Parse(tuwenres);
if
(jsonObj["errcode"].ToString().Equals("0"))
{
Session["media_id"]
=
null;
WxMassInfo
wmi
=
new
WxMassInfo();
if
(Session["wmninfo"]
!=
null)
{
WxMpNewsInfo
wmninfo
=
Session["wmninfo"]
as
WxMpNewsInfo;
wmi.title
=
wmninfo.title.ToString();
wmi.contents
=
wmninfo.contents.ToString();
wmi.ImageUrl
=
wmninfo.ImageUrl.ToString();
wmi.type
=
"图文";
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
wmi.massObject
=
this.DDLMassType.SelectedItem.Text.ToString();
}
else
{
wmi.massObject
=
this.DDLGroupList.SelectedItem.Text.ToString();
}
wmi.massStatus
=
"成功";//群发成功之后返回的状态码
wmi.massMessageID
=
jsonObj["msg_id"].ToString();//群发成功之后返回的消息ID
wmi.massDate
=
System.DateTime.Now.ToString();
int
num
=
wms.AddWxMassInfo(wmi);
if
(num
>
0)
{
Session["wmninfo"]
=
null;
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据已保存!');location='WxMassManage.aspx';",
true);
return;
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据保存失败!');",
true);
return;
}
}
else
{
wmi.title
=
"";
wmi.contents
=
"";
wmi.ImageUrl
=
"";
wmi.type
=
"图文";
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
wmi.massObject
=
this.DDLMassType.SelectedItem.Text.ToString();
}
else
{
wmi.massObject
=
this.DDLGroupList.SelectedItem.Text.ToString();
}
wmi.massStatus
=
"成功";//群发成功之后返回的状态码
wmi.massMessageID
=
jsonObj["msg_id"].ToString();//群发成功之后返回的消息ID
wmi.massDate
=
System.DateTime.Now.ToString();
int
num
=
wms.AddWxMassInfo(wmi);
if
(num
>
0)
{
Session["wmninfo"]
=
null;
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!图文部分数据已保存!');location='WxMassManage.aspx';",
true);
return;
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据保存失败!');",
true);
return;
}
}
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务提交失败!!');",
true);
return;
}
}
else
{
//根据分组进行群发,订阅号和服务号认证后均可用
string
group_id
=
this.DDLGroupList.SelectedValue.ToString();
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
posturl
=
"/cgi-bin/message/mass/send?access_token="
+
Access_tokento;
///群发POST数据示例如下:
//
{
//
"filter":{
//
"is_to_all":false
//
"group_id":"2"
//
},
//
"mpnews":{
//
"media_id":"123dsdajkasd231jhksad"
//
},
//
"msgtype":"mpnews"
//}
string
postData
=
"{\"filter\":{\"is_to_all\":\"false\"\"group_id\":\""+group_id+
"\"},\"mpnews\":{\"media_id\":\""
+
this.lbtuwenmedai_id.Text.ToString()
+
"\"},\"msgtype\":\"mpnews\"}";
string
tuwenres
=
wxs.GetPage(posturl,
postData);
//使用前需药引用Newtonsoft.json.dll文件
JObject
jsonObj
=
JObject.Parse(tuwenres);
if
(jsonObj["errcode"].ToString().Equals("0"))
{
Session["media_id"]
=
null;
WxMassInfo
wmi
=
new
WxMassInfo();
if
(Session["wmninfo"]
!=
null)
{
WxMpNewsInfo
wmninfo
=
Session["wmninfo"]
as
WxMpNewsInfo;
wmi.title
=
wmninfo.title.ToString();
wmi.contents
=
wmninfo.contents.ToString();
wmi.ImageUrl
=
wmninfo.ImageUrl.ToString();
wmi.type
=
"图文";
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
wmi.massObject
=
this.DDLMassType.SelectedItem.Text.ToString();
}
else
{
wmi.massObject
=
this.DDLGroupList.SelectedItem.Text.ToString();
}
wmi.massStatus
=
"成功";//群发成功之后返回的状态码
wmi.massMessageID
=
jsonObj["msg_id"].ToString();//群发成功之后返回的消息ID
wmi.massDate
=
System.DateTime.Now.ToString();
int
num
=
wms.AddWxMassInfo(wmi);
if
(num
>
0)
{
Session["wmninfo"]
=
null;
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据已保存!');location='WxMassManage.aspx';",
true);
return;
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据保存失败!');",
true);
return;
}
}
else
{
wmi.title
=
"";
wmi.contents
=
"";
wmi.ImageUrl
=
"";
wmi.type
=
"图文";
if
(this.DDLMassType.SelectedValue.ToString().Equals("0"))
{
wmi.massObject
=
this.DDLMassType.SelectedItem.Text.ToString();
}
else
{
wmi.massObject
=
this.DDLGroupList.SelectedItem.Text.ToString();
}
wmi.massStatus
=
"成功";//群发成功之后返回的状态码
wmi.massMessageID
=
jsonObj["msg_id"].ToString();//群发成功之后返回的消息ID
wmi.massDate
=
System.DateTime.Now.ToString();
int
num
=
wms.AddWxMassInfo(wmi);
if
(num
>
0)
{
Session["wmninfo"]
=
null;
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!图文部分数据已保存!');location='WxMassManage.aspx';",
true);
return;
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务已提交成功!!!数据保存失败!');",
true);
return;
}
}
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('群发任务提交失败!!');",
true);
return;
}
}
}
}
}发送前预览///
<summary>
///
发送前预览
///
</summary>
///
<param
name="sender"></param>
///
<param
name="e"></param>
protected
void
LinkBtnSendPreview_Click(object
sender,
EventArgs
e)
{
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
posturl
=
"/cgi-bin/message/mass/preview?access_token="
+
Access_tokento;
///如果选择的是文本消息
if
(this.RadioBtnList.SelectedValue.ToString().Equals("0"))
{
if
(String.IsNullOrWhiteSpace(this.txtwenben.InnerText.ToString().Trim()))
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('请输入您要发送预览的文本内容!');",
true);
return;
}
if
(this.txttoUserName.Value.ToString().Trim().Equals("请输入用户微信号"))
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('请输入接收消息的用户微信号!');",
true);
return;
}
//文本消息的json数据{
//
"touser":"OPENID",
可改为对微信号预览,例如towxname:zhangsan
//
"text":{
//
"content":"CONTENT"
//
},
//
"msgtype":"text"
//}
string
postData
=
"{\"towxname\":\""
+
this.txttoUserName.Value.ToString()
+
"\",\"text\":{\"content\":\""
+
this.txtwenben.InnerText.ToString()
+
"\"},\"msgtype\":\"text\"}";
string
tuwenres
=
wxs.GetPage(posturl,
postData);
//使用前需药引用Newtonsoft.json.dll文件
JObject
jsonObj
=
JObject.Parse(tuwenres);
if
(jsonObj["errcode"].ToString().Equals("0"))
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('发送预览成功!!');",
true);
return;
}
else
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('发送预览失败!!');",
true);
return;
}
}
//如果选择的是图文消息
if
(this.RadioBtnList.SelectedValue.ToString().Equals("1"))
{
if(String.IsNullOrWhiteSpace(this.lbtuwenmedai_id.Text.ToString().Trim()))
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('请选择要预览的图文素材!');",
true);
return;
}
if
(this.txttoUserName.Value.ToString().Trim().Equals("请输入用户微信号"))
{
ScriptManager.RegisterClientScriptBlock(this.Page,
this.GetType(),
"",
"alert('请输入接收消息的用户微信号!');",
true);
return;
}
//图文消息的json数据{
//
"touser":"OPENID",
可改为对微信号预览,例如towxname:zhangsan
//
"mpnews":{
//
"media_id":"123dsdajkasd231jhksad"
//
},
//
"msgtype":"mpnews"
//}
string
postData
=
"{\"towxname\":\""
+
this.txttoUserName.Value.ToString()
+
"\",\"mpnews\":{\"media_id\":\""
+
this.lbtuwenmedai_id.Text.ToString()
+
"\"},\"msgtype\":\"mpnews\"}";
string
tuwenres
=
wxs.GetPage(posturl,
postData);
//使用前需药引用Newtonsoft.json.d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高校图书馆SNS应用服务探索:以西南大学为鉴
- 高校信息公开政策的正当性研究
- 高新技术企业认定政策对企业全要素生产率的影响:理论、实证与启示
- 高斯态理论视角下偶极玻色凝聚体中自束缚液滴的多维度探究
- 八年级政治上其中复习资料
- 2026人教版四年级数学上册第三单元第5课《乘数中间或末尾有0的乘法》教案
- 风力发电场建设管理办法实施细则
- 高等学校辅导员队伍建设管理办法
- 初级护师考试历年真题及答案《基础知识》题及答案
- 道路运输车辆技术管理长效机制
- 小学英语-三年级升四年级英语阅读理解专项(附答案)
- 《接近开关原理与应用》课件
- 展会保密协议书范本
- 《浙江省中药饮片炮制规范》 2015年版
- 建筑力学与结构教学大纲2024
- TSG21-2025固定式压力容器安全技术(送审稿)
- GB 12955-2024防火门
- 《证券投资学》全套教学课件
- NB-T20073-2012核电厂仪表和控制设备接地准则
- 输尿管肿瘤术后护理查房
- 非公路用旅游观光车通用技术条件
评论
0/150
提交评论