tijian_tieying/web/dccdc/Common/Deepleo.Weixin.SDK/Merchant/ShelfAPI.cs
2025-02-20 12:14:39 +08:00

129 lines
5.3 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net.Http;
using Codeplex.Data;
namespace Deepleo.Weixin.SDK.Merchant
{
/// <summary>
/// 货架管理接口
/// </summary>
public class ShelfAPI
{
/// <summary>
/// 增加货架
/// </summary>
/// <param name="access_token"></param>
/// <param name="content">货架详情,参见官方文档
/// 注意货架有五个控件每个控件post的数据都不一样。
/// </param>
/// <returns>
/// {
///"errcode":0,
///"errmsg":"success",
///"shelf_id": 12
///}
/// </returns>
public static dynamic Add(string access_token, dynamic content)
{
var client = new HttpClient();
var result = client.PostAsync(string.Format("https://api.weixin.qq.com/merchant/shelf/add?access_token={0}", access_token),
new StringContent(DynamicJson.Serialize(content))).Result;
return DynamicJson.Parse(result.Content.ReadAsStringAsync().Result);
}
/// <summary>
/// 删除货架
/// </summary>
/// <param name="access_token"></param>
/// <param name="shelf_id">货架ID</param>
/// <returns>
/// {
/// "errcode":0,
///"errmsg":"success"
///}
/// </returns>
public static dynamic Delete(string access_token, int shelf_id)
{
var client = new HttpClient();
var content = new StringBuilder();
content.Append("{")
.Append('"' + "shelf_id" + '"' + ": " + shelf_id)
.Append("}");
var result = client.PostAsync(string.Format("https://api.weixin.qq.com/merchant/shelf/del?access_token={0}", access_token),
new StringContent(content.ToString())).Result;
return DynamicJson.Parse(result.Content.ReadAsStringAsync().Result);
}
/// <summary>
/// 修改货架
/// </summary>
/// <param name="access_token"></param>
/// <param name="shelf_id">货架ID</param>
/// <param name="shelf_data">货架详情(字段说明详见增加货架)</param>
/// <param name="shelf_banner">货架banner(图片需调用图片上传接口获得图片Url填写至此否则修改货架失败)</param>
/// <param name="shelf_name">货架名称</param>
/// <returns>
/// <returns>
/// {
/// "errcode":0,
///"errmsg":"success"
///}
/// </returns>
public static dynamic Update(string access_token, int shelf_id, dynamic shelf_data, string shelf_banner, string shelf_name)
{
var client = new HttpClient(); var content = new StringBuilder();
content.Append("{")
.Append('"' + "shelf_id" + '"' + ": " + shelf_id).Append(",")
.Append('"' + "shelf_data" + '"' + ": " + DynamicJson.Serialize(shelf_data)).Append(",")
.Append('"' + "shelf_banner" + '"' + ": " + '"' + shelf_banner + '"').Append(",")
.Append('"' + "shelf_name" + '"' + ": " + '"' + shelf_name + '"')
.Append("}");
var result = client.PostAsync(string.Format("https://api.weixin.qq.com/merchant/shelf/mod?access_token={0}", access_token),
new StringContent(content.ToString())).Result;
return DynamicJson.Parse(result.Content.ReadAsStringAsync().Result);
}
/// <summary>
/// 获取所有货架
/// </summary>
/// <param name="access_token"></param>
/// <returns></returns>
public static dynamic GetAll(string access_token)
{
var client = new HttpClient(); var content = new StringBuilder();
var result = client.GetAsync(string.Format("https://api.weixin.qq.com/merchant/shelf/getall?access_token={0}", access_token)).Result;
return DynamicJson.Parse(result.Content.ReadAsStringAsync().Result);
}
/// <summary>
/// 根据货架ID获取货架信息
/// </summary>
/// <param name="access_token"></param>
/// <param name="shelf_id">货架ID</param>
/// <returns>
/// {
/// "errcode": 0,
/// "errmsg": "success",
/// "shelf_info": {
/// "module_infos": [...]
/// },
/// "shelf_banner": "http://mmbiz.qpic.cn/mmbiz/4whpV1VZl2ibp2DgDXiaic6WdflMpNdInS8qUia2BztlPu1gPlCDLZXEjia2qBdjoLiaCGUno9zbs1UyoqnaTJJGeEew/0",
/// "shelf_name": "新建货架",
/// "shelf_id": 97
/// }
/// </returns>
public static dynamic GetById(string access_token, int shelf_id)
{
var client = new HttpClient();
var content = new StringBuilder();
content.Append("{")
.Append('"' + "shelf_id" + '"' + ": " + shelf_id)
.Append("}");
var result = client.PostAsync(string.Format("https://api.weixin.qq.com/merchant/shelf/getbyid?access_token={0}", access_token),
new StringContent(content.ToString())).Result;
return DynamicJson.Parse(result.Content.ReadAsStringAsync().Result);
}
}
}