Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

修复附近的小程序添加地点 #1822

Merged
merged 9 commits into from
Jun 14, 2019
Original file line number Diff line number Diff line change
Expand Up @@ -285,22 +285,40 @@ public static WxJsonResult CheckSession(string accessTokenOrAppId, string openId
/// <summary>
/// 添加地点
/// </summary>
/// <param name="accessTokenOrAppId">AccessToken或AppId(推荐使用AppId,需要先注册)</param>
/// <param name="relatedName">经营资质主体(与小程序同主体--不填,与小程序非同主体--必填)</param>
/// <param name="relatedCredential">经营资质证件号</param>
/// <param name="relatedAddress">经营资质地址</param>
/// <param name="relatedProofMaterial">相关证明材料照片临时素材mediaid(与小程序同主体--不填,与小程序非同主体--必填)</param>
/// <param name="accessTokenOrAppId"></param>
/// <param name="pic_list">门店图片,最多9张,最少1张,上传门店图片如门店外景、环境设施、商品服务等,图片将展示在微信客户端的门店页。图片链接通过文档https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1444738729中的《上传图文消息内的图片获取URL》接口获取。必填,文件格式为bmp、png、jpeg、jpg或gif,大小不超过5M pic_list是字符串,内容是一个json!</param>
/// <param name="service_infos">服务标签列表 选填,需要填写服务标签ID、APPID、对应服务落地页的path路径,详细字段格式见下方示例</param>
/// <param name="store_name">门店名字 必填,门店名称需按照所选地理位置自动拉取腾讯地图门店名称,不可修改,如需修改请重新选择地图地点或重新创建地点</param>
/// <param name="hour">营业时间,格式11:11-12:12 必填</param>
/// <param name="credential">资质号 必填, 15位营业执照注册号或9位组织机构代码</param>
/// <param name="address">地址 必填</param>
/// <param name="company_name">主体名字 必填</param>
/// <param name="qualification_list">证明材料 必填 如果company_name和该小程序主体不一致,需要填qualification_list,详细规则见附近的小程序使用指南-如何证明门店的经营主体跟公众号或小程序帐号主体相关http://kf.qq.com/faq/170401MbUnim17040122m2qY.html</param>
/// <param name="kf_info">客服信息 选填,可自定义服务头像与昵称,具体填写字段见下方示例kf_info pic_list是字符串,内容是一个json!</param>
/// <param name="poi_id">如果创建新的门店,poi_id字段为空 如果更新门店,poi_id参数则填对应门店的poi_id 选填</param>
/// <param name="timeOut"></param>
/// <returns></returns>
[ApiBind(NeuChar.PlatformType.WeChat_MiniProgram, "WxAppApi.AddNearbyPoi", true)]
public static AddNearbyPoiJsonResult AddNearbyPoi(string accessTokenOrAppId, string relatedName, string relatedCredential, string relatedAddress, string relatedProofMaterial, int timeOut = Config.TIME_OUT)
public static AddNearbyPoiJsonResult AddNearbyPoi(string accessTokenOrAppId, string pic_list, string service_infos, string store_name,string hour, string credential, string address, string company_name, string qualification_list="", string kf_info="", string poi_id="", int timeOut = Config.TIME_OUT)
{
return WxOpenApiHandlerWapper.TryCommonApi(accessToken =>
{
string urlFormat = Config.ApiMpHost + "/wxa/addnearbypoi?access_token={0}";
string url = string.Format(urlFormat, accessToken);

var data = new { related_name = relatedName, related_credential = relatedCredential, related_address = relatedAddress, related_proof_material = relatedProofMaterial };
var data = new {
is_comm_nearby = "1", //必填,写死为"1"
pic_list = pic_list,
service_infos = service_infos,
store_name = store_name,
hour = hour,
credential = credential,
address = address,
company_name = company_name,
qualification_list = qualification_list,
kf_info = kf_info,
poi_id = poi_id
};

return CommonJsonSend.Send<AddNearbyPoiJsonResult>(accessToken, url, data, timeOut: timeOut);

Expand All @@ -320,12 +338,12 @@ public static GetNearbyPoiListJsonResult GetNearbyPoiList(string accessTokenOrAp
{
return WxOpenApiHandlerWapper.TryCommonApi(accessToken =>
{
string urlFormat = Config.ApiMpHost + "/wxa/getnearbypoilist?access_token={0}";
string url = string.Format(urlFormat, accessToken);
string urlFormat = Config.ApiMpHost + "/wxa/getnearbypoilist?access_token={0}&page={1}&page_rows={2}";
string url = string.Format(urlFormat, accessToken, page, page_rows);

var data = new { page = page, page_rows = page_rows };
//var data = new { page = page, page_rows = page_rows };

return CommonJsonSend.Send<GetNearbyPoiListJsonResult>(accessToken, url, data, timeOut: timeOut);
return CommonJsonSend.Send<GetNearbyPoiListJsonResult>(accessToken, url, null, timeOut: timeOut);

}, accessTokenOrAppId);
}
Expand Down Expand Up @@ -778,30 +796,48 @@ public static async Task<WxJsonResult> CheckSessionAsync(string accessTokenOrApp
}, accessTokenOrAppId).ConfigureAwait(false);
}


/// <summary>
/// 【异步方法】添加地点
/// </summary>
/// <param name="accessTokenOrAppId">AccessToken或AppId(推荐使用AppId,需要先注册)</param>
/// <param name="relatedName">经营资质主体(与小程序同主体--不填,与小程序非同主体--必填)</param>
/// <param name="relatedCredential">经营资质证件号</param>
/// <param name="relatedAddress">经营资质地址</param>
/// <param name="relatedProofMaterial">相关证明材料照片临时素材mediaid(与小程序同主体--不填,与小程序非同主体--必填)</param>
/// <param name="accessTokenOrAppId"></param>
/// <param name="pic_list">门店图片,最多9张,最少1张,上传门店图片如门店外景、环境设施、商品服务等,图片将展示在微信客户端的门店页。图片链接通过文档https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1444738729中的《上传图文消息内的图片获取URL》接口获取。必填,文件格式为bmp、png、jpeg、jpg或gif,大小不超过5M pic_list是字符串,内容是一个json!</param>
/// <param name="service_infos">服务标签列表 选填,需要填写服务标签ID、APPID、对应服务落地页的path路径,详细字段格式见下方示例</param>
/// <param name="store_name">门店名字 必填,门店名称需按照所选地理位置自动拉取腾讯地图门店名称,不可修改,如需修改请重新选择地图地点或重新创建地点</param>
/// <param name="hour">营业时间,格式11:11-12:12 必填</param>
/// <param name="credential">资质号 必填, 15位营业执照注册号或9位组织机构代码</param>
/// <param name="address">地址 必填</param>
/// <param name="company_name">主体名字 必填</param>
/// <param name="qualification_list">证明材料 必填 如果company_name和该小程序主体不一致,需要填qualification_list,详细规则见附近的小程序使用指南-如何证明门店的经营主体跟公众号或小程序帐号主体相关http://kf.qq.com/faq/170401MbUnim17040122m2qY.html</param>
/// <param name="kf_info">客服信息 选填,可自定义服务头像与昵称,具体填写字段见下方示例kf_info pic_list是字符串,内容是一个json!</param>
/// <param name="poi_id">如果创建新的门店,poi_id字段为空 如果更新门店,poi_id参数则填对应门店的poi_id 选填</param>
/// <param name="timeOut"></param>
/// <returns></returns>
[ApiBind(NeuChar.PlatformType.WeChat_MiniProgram, "WxAppApi.AddNearbyPoiAsync", true)]
public static async Task<AddNearbyPoiJsonResult> AddNearbyPoiAsync(string accessTokenOrAppId, string relatedName, string relatedCredential, string relatedAddress, string relatedProofMaterial, int timeOut = Config.TIME_OUT)
public static async Task<AddNearbyPoiJsonResult> AddNearbyPoiAsync(string accessTokenOrAppId, string pic_list, string service_infos, string store_name, string hour, string credential, string address, string company_name, string qualification_list = "", string kf_info = "", string poi_id = "", int timeOut = Config.TIME_OUT)
{
return await WxOpenApiHandlerWapper.TryCommonApiAsync(async accessToken =>
return await WxOpenApiHandlerWapper.TryCommonApiAsync(accessToken =>
{
string urlFormat = Config.ApiMpHost + "/wxa/addnearbypoi?access_token={0}";
string url = string.Format(urlFormat, accessToken);

var data = new { related_name = relatedName, related_credential = relatedCredential, related_address = relatedAddress, related_proof_material = relatedProofMaterial };
var data = new
{
is_comm_nearby = "1", //必填,写死为"1"
pic_list = pic_list,
service_infos = service_infos,
store_name = store_name,
hour = hour,
credential = credential,
address = address,
company_name = company_name,
qualification_list = qualification_list,
kf_info = kf_info,
poi_id = poi_id
};

return await CommonJsonSend.SendAsync<AddNearbyPoiJsonResult>(accessToken, url, data, timeOut: timeOut).ConfigureAwait(false);
return CommonJsonSend.SendAsync<AddNearbyPoiJsonResult>(accessToken, url, data, timeOut: timeOut);

}, accessTokenOrAppId).ConfigureAwait(false);
}, accessTokenOrAppId);
}

/// <summary>
Expand All @@ -817,12 +853,12 @@ public static async Task<GetNearbyPoiListJsonResult> GetNearbyPoiListAsync(strin
{
return await WxOpenApiHandlerWapper.TryCommonApiAsync(async accessToken =>
{
string urlFormat = Config.ApiMpHost + "/wxa/getnearbypoilist?access_token={0}";
string url = string.Format(urlFormat, accessToken);
string urlFormat = Config.ApiMpHost + "/wxa/getnearbypoilist?access_token={0}&page={1}&page_rows={2}";
string url = string.Format(urlFormat, accessToken, page, page_rows);

var data = new { page = page, page_rows = page_rows };
//var data = new { page = page, page_rows = page_rows };

return await CommonJsonSend.SendAsync<GetNearbyPoiListJsonResult>(accessToken, url, data, timeOut: timeOut).ConfigureAwait(false);
return await CommonJsonSend.SendAsync<GetNearbyPoiListJsonResult>(accessToken, url, null, timeOut: timeOut).ConfigureAwait(false);

}, accessTokenOrAppId).ConfigureAwait(false);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,19 @@ public class GetNearbyPoiListJsonResult : WxJsonResult
[Serializable]
public class Data
{
/// <summary>
/// 剩余可添加地点个数
/// </summary>
public int left_apply_num { get; set; }

/// <summary>
/// 最大可添加地点个数
/// </summary>
public int max_apply_num { get; set; }

/// <summary>
/// 地址列表的 JSON 格式字符串
/// </summary>
public PoiList data { get; set; }
}

Expand All @@ -37,16 +46,39 @@ public class PoiList
[Serializable]
public class PoiInfo
{
/// <summary>
/// 附近地点 ID
/// </summary>
public string poi_id { get; set; }

/// <summary>
/// 资质证件地址
/// </summary>
public string qualification_address { get; set; }

/// <summary>
/// 资质证件证件号
/// </summary>
public string qualification_num { get; set; }

/// <summary>
/// 地点审核状态
/// 3 审核中
/// 4 审核失败
/// 5 审核通过
/// </summary>
public int audit_status { get; set; }

/// <summary>
/// 地点展示在附近状态
/// 0 未展示
/// 1 展示中
/// </summary>
public int display_status { get; set; }

/// <summary>
/// 审核失败原因,audit_status=4 时返回
/// </summary>
public string refuse_reason { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public override Event Event
public int status { get; set; }

/// <summary>
/// 如果status为3或者4,会返回审核失败的原因
/// 如果status为2,会返回审核失败的原因
/// </summary>
public string reason { get; set; }

Expand Down