mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2026-02-05 16:29:50 +08:00
# 2022-01-22
### 开源社区版(会员专业版同步修改): --无修改 ### 0.1.1 会员专业版: 【新增】增加微信支付服务商配置,支付微信支付服务商及子商户功能。 【新增】增加根据不同下单类型,控制不同的下单送货模式的功能,如普通商品购买只需要【物流快递,同城配送】,团购秒杀只需要【同城配送,上门自提】,可后台自定义。 【新增】微信直播带货功能新增【上传图片】功能,可直接将本地图片上传至微信侧,获取cdn图片进行处理。 【更新】nuget更新组件。 【修复】修复首页商品组件图片高度被错写array的问题。 【修复】修复生成海报保存路径问题,调整开发版或者预览版小程序获取不到的二维码的报错问题。 【优化】调整订单详情商品tag未设置宽度,导致撑破容易的问题。 【修复】调整订单列表左侧图片大小,防止被遮挡。I4PP1F 【修复】修复微信自定义交易组件申请商品类目失败的问题。#I4QE17
This commit is contained in:
@@ -1586,5 +1586,86 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
//微信自定义交易组件================================================================
|
||||
|
||||
#region 自定义交易组件上传图片====================================================
|
||||
|
||||
/// <summary>
|
||||
/// 自定义交易组件上传图片
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
public async Task<AdminUiCallBack> MiNiShopOpenComponent2_UploadImg()
|
||||
{
|
||||
var jm = new AdminUiCallBack();
|
||||
|
||||
var filesStorageOptions = await _coreCmsSettingServices.GetFilesStorageOptions();
|
||||
//初始化上传参数
|
||||
var maxSize = 1024 * 1024 * filesStorageOptions.MaxSize; //上传大小5M
|
||||
|
||||
var file = Request.Form.Files["file"];
|
||||
if (file == null)
|
||||
{
|
||||
jm.msg = "请选择文件";
|
||||
return jm;
|
||||
}
|
||||
var fileName = file.FileName;
|
||||
var fileExt = Path.GetExtension(fileName).ToLowerInvariant();
|
||||
|
||||
//检查大小
|
||||
if (file.Length > maxSize)
|
||||
{
|
||||
jm.msg = "上传文件大小超过限制,最大允许上传" + filesStorageOptions.MaxSize + "M";
|
||||
return jm;
|
||||
}
|
||||
|
||||
//检查文件扩展名
|
||||
if (string.IsNullOrEmpty(fileExt) || Array.IndexOf(filesStorageOptions.FileTypes.Split(','), fileExt.Substring(1).ToLower()) == -1)
|
||||
{
|
||||
jm.msg = "上传文件扩展名是不允许的扩展名,请上传后缀名为:" + filesStorageOptions.FileTypes;
|
||||
return jm;
|
||||
}
|
||||
|
||||
byte[] bytes;
|
||||
await using (var ms = new MemoryStream())
|
||||
{
|
||||
await file.CopyToAsync(ms);
|
||||
bytes = ms.ToArray();
|
||||
}
|
||||
|
||||
string url = string.Empty;
|
||||
var accessToken = WeChatCacheAccessTokenHelper.GetWxOpenAccessToken();
|
||||
var client = _weChatApiHttpClientFactory.CreateWxOpenClient();
|
||||
var request = new ShopImageUploadRequest();
|
||||
request.AccessToken = accessToken;
|
||||
request.ImageFileBytes = bytes;
|
||||
request.ResponseType = 1;
|
||||
|
||||
var response = await client.ExecuteShopImageUploadAsync(request);
|
||||
if (response.IsSuccessful())
|
||||
{
|
||||
jm.code = 0;
|
||||
jm.msg = "上传成功!";
|
||||
jm.data = new
|
||||
{
|
||||
fileUrl = response.Image.TempImageUrl,
|
||||
src = response.Image.TempImageUrl
|
||||
};
|
||||
}
|
||||
else
|
||||
{
|
||||
jm.code = 1;
|
||||
jm.msg = response.ErrorMessage;
|
||||
}
|
||||
jm.otherData = response;
|
||||
|
||||
return jm;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user