![【移动应用开发技术】C#如何实现微信小店商品管理接口的封装和测试_第1页](http://file4.renrendoc.com/view/e44ec6e842f8e8c49e735a8fd50e532e/e44ec6e842f8e8c49e735a8fd50e532e1.gif)
![【移动应用开发技术】C#如何实现微信小店商品管理接口的封装和测试_第2页](http://file4.renrendoc.com/view/e44ec6e842f8e8c49e735a8fd50e532e/e44ec6e842f8e8c49e735a8fd50e532e2.gif)
![【移动应用开发技术】C#如何实现微信小店商品管理接口的封装和测试_第3页](http://file4.renrendoc.com/view/e44ec6e842f8e8c49e735a8fd50e532e/e44ec6e842f8e8c49e735a8fd50e532e3.gif)
![【移动应用开发技术】C#如何实现微信小店商品管理接口的封装和测试_第4页](http://file4.renrendoc.com/view/e44ec6e842f8e8c49e735a8fd50e532e/e44ec6e842f8e8c49e735a8fd50e532e4.gif)
![【移动应用开发技术】C#如何实现微信小店商品管理接口的封装和测试_第5页](http://file4.renrendoc.com/view/e44ec6e842f8e8c49e735a8fd50e532e/e44ec6e842f8e8c49e735a8fd50e532e5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【移动应用开发技术】C#如何实现微信小店商品管理接口的封装和测试
/upload/information/20201208/260/13052.jpg/upload/information/20201208/260/13053.jpg#region
商品信息
///
<summary>
///
创建商品
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="merchantJson">商品对象</param>
///
<returns></returns>
AddMerchantResult
AddMerchant(string
accessToken,
MerchantJson
merchantJson);
///
<summary>
///
删除商品
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="productId">商品ID</param>
///
<returns></returns>
CommonResult
DeleteMerchant(string
accessToken,
string
productId);
///
<summary>
///
修改商品
///
product_id表示要更新的商品的ID,其他字段说明请参考增加商品接口。
///
从未上架的商品所有信息均可修改,否则商品的名称(name)、商品分类(category)、商品属性(property)这三个字段不可修改。
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="merchantJson">修改商品的信息</param>
///
<returns></returns>
CommonResult
UpdateMerchant(string
accessToken,
MerchantJson
merchantJson);
///
<summary>
///
根据ID查询商品信息,如果成功返回MerchantJson信息,否则返回null
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="productId">商品的Id</param>
///
<returns></returns>
MerchantJson
GetMerchant(string
accessToken,
string
productId);
///
<summary>
///
获取指定状态的所有商品
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="status">商品状态(0-全部,
1-上架,
2-下架)</param>
///
<returns></returns>
List<MerchantJson>
GetMerchantByStatus(string
accessToken,
int
status);
///
<summary>
///
商品上下架
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="status">商品上下架标识(0-下架,
1-上架)</param>
///
<returns></returns>
CommonResult
UpdateMerchantStatus(string
accessToken,
string
productId,
int
status);
#endregion/upload/information/20201208/260/13054.jpg#region
商品分类及属性
///
<summary>
///
获取指定分类的所有子分类
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="cateId">大分类ID(根节点分类id为1)</param>
///
<returns></returns>
List<SubCategory>
GetSub(string
accessToken,
int
cate_id);
///
<summary>
///
获取指定子分类的所有SKU
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="cateId">商品子分类ID</param>
///
<returns></returns>
List<SubCategorySku>
GetSku(string
accessToken,
int
cate_id);
///
<summary>
///
获取指定分类的所有属性
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="cateId">分类ID</param>
///
<returns></returns>
List<SubCategoryProperty>
GetProperty(string
accessToken,
int
cate_id);
#endregion2、商品管理接口的实现///
<summary>
///
创建商品
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="merchantJson">商品对象</param>
///
<returns></returns>
public
AddMerchantResult
AddMerchant(string
accessToken,
MerchantJson
merchantJson)
{
var
url
=
string.Format("/merchant/create?access_token={0}",
accessToken);
string
postData
=
merchantJson.ToJson();
return
JsonHelper<AddMerchantResult>.ConvertJson(url,
postData);
}///
<summary>
///
微信返回Json结果的错误数据
///
</summary>
public
class
ErrorJsonResult
{
///
<summary>
///
返回代码
///
</summary>
public
ReturnCode
errcode
{
get;
set;
}
///
<summary>
///
错误消息
///
</summary>
public
string
errmsg
{
get;
set;
}
}///
<summary>
///
删除商品
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="productId">商品ID</param>
///
<returns></returns>
public
CommonResult
DeleteMerchant(string
accessToken,
string
productId)
{
var
url
=
string.Format("/merchant/del?access_token={0}",
accessToken);
var
data
=
new
{
product_id
=
productId
};
string
postData
=
data.ToJson();
return
Helper.GetExecuteResult(url,
postData);
}
///
<summary>
///
修改商品
///
product_id表示要更新的商品的ID,其他字段说明请参考增加商品接口。
///
从未上架的商品所有信息均可修改,否则商品的名称(name)、商品分类(category)、商品属性(property)这三个字段不可修改。
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="merchantJson">修改商品的信息</param>
///
<returns></returns>
public
CommonResult
UpdateMerchant(string
accessToken,
MerchantJson
merchantJson)
{
var
url
=
string.Format("/merchant/update?access_token={0}",
accessToken);
string
postData
=
merchantJson.ToJson();
return
Helper.GetExecuteResult(url,
postData);
}/upload/information/20201208/260/13055.jpg
///
<summary>
///
根据ID查询商品信息,如果成功返回MerchantJson信息,否则返回null
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="productId">商品的Id</param>
///
<returns></returns>
public
MerchantJson
GetMerchant(string
accessToken,
string
productId)
{
var
url
=
string.Format("/{0}",
accessToken);
var
data
=
new
{
product_id
=
productId
};
string
postData
=
data.ToJson();
MerchantJson
merchant
=
null;
GetMerchantResult
result
=
JsonHelper<GetMerchantResult>.ConvertJson(url,
postData);
if
(result
!=
null)
{
merchant
=
duct_info;
}
return
merchant;
}///
<summary>
///
获取指定状态的所有商品
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="status">商品状态(0-全部,
1-上架,
2-下架)</param>
///
<returns></returns>
public
List<MerchantJson>
GetMerchantByStatus(string
accessToken,
int
status)
{
var
url
=
string.Format("/merchant/getbystatus?access_token={0}",
accessToken);
var
data
=
new
{
status
=
status
};
string
postData
=
data.ToJson();
List<MerchantJson>
list
=
new
List<MerchantJson>();
GetMerchantByStatus
result
=
JsonHelper<GetMerchantByStatus>.ConvertJson(url,
postData);
if
(result
!=
null)
{
list
=
ducts_info;
}
return
list;
}///
<summary>
///
获取指定分类的所有子分类
///
</summary>
///
<param
name="accessToken">调用接口凭证</param>
///
<param
name="cateId">大分类ID(根节点分类id为1)</param>
///
<returns></returns>
public
List<SubCategory>
GetSub(string
accessToken,
int
cate_id)
{
var
url
=
string.Format("/merchant/category/getsub?access_token={0}",
accessToken);
var
data
=
new
{
cate_id
=
cate_id
};
string
postData
=
data.ToJson();
List<SubCategory>
list
=
new
List<SubCategory>();
GetSubResult
result
=
JsonHelper<GetSubResult>.ConvertJson(url,
postData);
if(result
!=
null)
{
list
=
result.cate_list;
}
return
list;
}3、商品管理接口的测试/upload/information/20201208/260/13056.jpgprivate
void
btnMerchant_Click(object
sender,
EventArgs
e)
{
//商品管理
IMerchantApi
api
=
new
MerchantApi();
//获取所有商品信息
Console.WriteLine("获取所有商品信息");
List<MerchantJson>
list
=
api.GetMerchantByStatus(token,
0);
foreach(MerchantJson
json
in
list)
{
Console.WriteLine(json.ToJson());
Console.WriteLine();
}
//更新商品状态
Console.WriteLine("更新商品状态");
foreach
(MerchantJson
json
in
list)
{
CommonResult
result
=
api.UpdateMerchantStatus(token,
duct_id,
1);
Console.WriteLine("商品ID:{0},商品名称:{1},
操作:{2}",
duct_id,
duct_,
result.Success
?
"成功"
:
"失败");
}
Thread.Sleep(1000);
//根据商品ID获取商品信息
Console.WriteLine("根据商品ID获取商品信息");
foreach
(MerchantJson
json
in
list)
{
MerchantJson
getJson
=
api.GetMerchant(token,
duct_id);
if(json
!=
null)
{
Console.WriteLine("商品ID:{0},商品名称:{1}",
getJduct_id,
getJduct_);
}
}
}{
"product_id":
"pSiLnt6FYDuFtrRRPMlkdKbye-rE",
"product_base":
{
"category_id":
[
"537103312"
],
"property":
[
{
"id":
"类型",
"vid":
"软件产品设计"
}
],
"name":
"代码生成工具Database2Sharp",
"sku_info":
[],
"main_img":
"/mmbiz/mLqH9gr11Gyb2sgiaelcsxYtQENGePp0Rb3AZKbjkicnKTUNBrEdo7Dyic97ar46SoAfKRB5x2R94bDUdNpgqiaZzA/0",
"img":
[
"/mmbiz/mLqH9gr11Gyb2sgiaelcsxYtQENGePp0RiaheJmVXm7tbvTYUQV7OF3DgfGiaQVMh4WbeEcGDOQQiajQXGKK9tfoeA/0"
],
"detail":
[],
"buy_limit":
0,
"detail_html":
""
},
"sku_list":
[
{
"sku_id":
"",
"ori_price":
100000,
"price":
50000,
"icon_url":
"",
"quantity":
1100,
"product_code":
""
}
],
"attrext":
{
"location":
{
"country":
"中国",
"province":
"广东",
"city":
"广州",
"address":
""
},
"isPostFree":
1,
"isHasReceipt":
0,
"isUnderGuaranty":
0,
"isSupportReplace":
0
},
"delivery_info":
{
"delivery_type":
0,
"template_id":
175807970,
"express":
[
{
"id":
10000027,
"price":
0
},
{
"id":
10000028,
"price":
0
},
{
"id":
10000029,
"price":
0
}
]
},
"status":
1
}/upload/information/20201208/260/13058.jpgprivate
void
btnMerchantEdit_Click(object
sender,
EventArgs
e)
{
IMerchantApi
api
=
new
MerchantApi();
string
img1
=
"/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0";
string
img2
=
"/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ul1UcLcwxrFdwTKYhH9Q5YZoCfX4Ncx655ZK6ibnlibCCErbKQtReySaVA/0";
string
img3
=
"/mmbiz/4whpV1VZl28bJj62XgfHPibY3ORKicN1oJ4CcoIr4BMbfA8LqyyjzOZzqrOGz3f5KWq1QGP3fo6TOTSYD3TBQjuw/0";
//商品增删改处理
MerchantJson
merchant
=
new
MerchantJson();
duct_base
=
new
Merchant_base();
duct_
=
"测试产品";
duct_base.category_id.Add("537074298");
duct_base.img
=
new
List<string>()
{
img1,
img2,
img3
};
duct_base.main_img
=
img1;
duct_base.detail.AddRange(new
List<MerchantDetail>()
{
new
MerchantDetail()
{
text
=
"test
first"
},
new
MerchantDetail()
{
img
=
img2
},
new
MerchantDetail()
{
text
=
"test
again"
}
});
duct_perty.AddRange(new
List<MerchantProperty>(){
new
MerchantProperty
{
id=
"1075741879",
vid="1079749967"
},
new
MerchantProperty{
id=
"1075754127",
vid=
"1079795198"
},
new
MerchantProperty(){
id=
"1075777334",
vid=
"1079837440"
}
});
duct_base.sku_info.AddRange(new
List<MerchantSku>(){
new
MerchantSku{
id=
"1075741873",
vid
=
new
List<string>()
{
"1079742386",
"1079742363"
}
}
});
duct_base.buy_limit
=
10;
//duct_base.detail_html
=
"<div
class=\"item_pic_wrp\"
style=\"margin-bottom:8px;font-size:0;\"><img
class=\"item_pic\"
style=\"width:100%;\"
alt=\"\"
src=\"/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0\"
></div><p
style=\"margin-bottom:11px;margin-top:11px;\">test</p><div
class=\"item_pic_wrp\"
style=\"margin-bottom:8px;font-size:0;\"><img
class=\"item_pic\"
style=\"width:100%;\"
alt=\"\"
src=\"/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ul1UcLcwxrFdwTKYhH9Q5YZoCfX4Ncx655ZK6ibnlibCCErbKQtReySaVA/0\"
></div><p
style=\"margin-bottom:11px;margin-top:11px;\">test
again</p>";
merchant.sku_list.AddRange(new
List<MerchantSku_list>()
{
new
MerchantSku_list(){
sku_id="1075741873:1079742386",
price=30,
icon_url="/mmbiz/4whpV1VZl2iccsvYbHvnphkyGtnvjD3ulEKogfsiaua49pvLfUS8Ym0GSYjViaLic0FD3vN0V8PILcibEGb2fPfEOmw/0",
quantity=800,
product_code="testing",
ori_price=9000000
},
new
MerchantSku_list(){
sku_id="1075741873:1079742363",
price=30,
icon_url="/mmbiz/4whpV1VZl28bJj62XgfHPibY3ORKicN1oJ4CcoIr4BMbfA8LqyyjzOZzqrOGz3f5KWq1QGP3fo6TOTSYD3TBQjuw/0",
quantity=800,
product_code="testingtesting",
ori_price=9000000
}
});
merchant.attrext
=
new
MerchantAttrext()
{
location
=
new
MerchantLocation()
{
country
=
"中国",
province
=
"广东省",
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教学目标的确定与达成
- 会计基础试题及答案五
- 2025年保山道路运输从业资格证考试内容是什么
- 公司薪酬管理制度细则
- Lecture3任务书开题报告文献综述
- 2024-2025学年高中地理第一章人口的变化第一节人口的数量变化教学案新人教版必修2
- 2024-2025学年高中政治同步训练11源远流长的中华文化含解析新人教版必修3
- 公司管理手册
- 2025年金属硫蛋白(MT)、高纯度MT、MT多糖项目合作计划书
- 2025年有机废水沼气系统合作协议书
- 无人机航拍技术理论考核试题题库及答案
- T∕CMATB 9002-2021 儿童肉类制品通用要求
- 工序劳务分包管理课件
- 暖通空调(陆亚俊编)课件
- 工艺评审报告
- 自动化腹膜透析(APD)的临床应用课件
- 中国滑雪运动安全规范
- DG-TJ 08-2343-2020 大型物流建筑消防设计标准
- 学前儿童发展心理学(第3版-张永红)教学课件1754
- 2022牛排消费趋势报告
- TPM╲t4Step Manul(三星TPM绝密资料)
评论
0/150
提交评论