# 2022-02-12

### 1.3.5 开源社区版:
无
### 0.1.7 会员专业版:
【新增】表【CoreCmsUserShip】增加【精度longitude】【纬度latitude】【街道street】三字段。
【新增】用户地址新增及编辑增加地图选择获取街道及经纬度坐标功能。
【新增】【平台设置-订单管理】,新增【同城配送运费设置】,可设置2公里内,5公里内,10公里内,15公里内,20公里内不同距离运费。根据用户地址坐标与门店坐标进行计算。
【新增】商品详情轮播图增加视频图片混播结合功能,类似淘宝打开商品详情后显示视频并支持播放,左右滑动切换图片,实现混播。
【新增】商品添加/删除面板增加视频上传功能。
This commit is contained in:
JianWeie
2022-02-12 02:25:01 +08:00
parent 534cf303ba
commit a07106127e
31 changed files with 924 additions and 181 deletions

View File

@@ -554,7 +554,7 @@
后端常用方法
</summary>
</member>
<member name="M:CoreCms.Net.Web.Admin.Controllers.ToolsController.#ctor(CoreCms.Net.Auth.HttpContextUser.IHttpContextUser,Microsoft.AspNetCore.Hosting.IWebHostEnvironment,CoreCms.Net.IServices.ICoreCmsGoodsServices,CoreCms.Net.IServices.ICoreCmsSettingServices,CoreCms.Net.IServices.ICoreCmsArticleServices,CoreCms.Net.IServices.ICoreCmsFormServices,CoreCms.Net.IServices.ICoreCmsArticleTypeServices,CoreCms.Net.IServices.ICoreCmsNoticeServices,CoreCms.Net.IServices.ICoreCmsPinTuanRuleServices,CoreCms.Net.IServices.ICoreCmsPromotionServices,CoreCms.Net.IServices.ICoreCmsAreaServices,CoreCms.Net.IServices.ISysUserServices,CoreCms.Net.IServices.ISysRoleServices,CoreCms.Net.IServices.ISysMenuServices,CoreCms.Net.IServices.ISysUserRoleServices,CoreCms.Net.IServices.ISysOrganizationServices,CoreCms.Net.IServices.ICodeGeneratorServices,CoreCms.Net.IServices.ICoreCmsLogisticsServices,CoreCms.Net.IServices.ISysLoginRecordServices,CoreCms.Net.IServices.ISysNLogRecordsServices,CoreCms.Net.IServices.ICoreCmsBillPaymentsServices,CoreCms.Net.IServices.ICoreCmsBillDeliveryServices,CoreCms.Net.IServices.ICoreCmsUserServices,CoreCms.Net.IServices.ICoreCmsOrderServices,CoreCms.Net.IServices.ICoreCmsBillAftersalesServices,CoreCms.Net.IServices.ICoreCmsSettingServices,CoreCms.Net.IServices.ICoreCmsProductsServices,CoreCms.Net.IServices.ICoreCmsServicesServices,Microsoft.Extensions.Options.IOptions{CoreCms.Net.Model.ViewModels.Options.FilesStorageOptions},CoreCms.Net.IServices.ISysRoleMenuServices,CoreCms.Net.WeChat.Service.HttpClients.IWeChatApiHttpClientFactory,CoreCms.Net.IServices.ICoreCmsPagesServices,CoreCms.Net.IServices.IToolsServices)">
<member name="M:CoreCms.Net.Web.Admin.Controllers.ToolsController.#ctor(CoreCms.Net.Auth.HttpContextUser.IHttpContextUser,Microsoft.AspNetCore.Hosting.IWebHostEnvironment,CoreCms.Net.IServices.ICoreCmsGoodsServices,CoreCms.Net.IServices.ICoreCmsSettingServices,CoreCms.Net.IServices.ICoreCmsArticleServices,CoreCms.Net.IServices.ICoreCmsFormServices,CoreCms.Net.IServices.ICoreCmsArticleTypeServices,CoreCms.Net.IServices.ICoreCmsNoticeServices,CoreCms.Net.IServices.ICoreCmsPinTuanRuleServices,CoreCms.Net.IServices.ICoreCmsPromotionServices,CoreCms.Net.IServices.ICoreCmsAreaServices,CoreCms.Net.IServices.ISysUserServices,CoreCms.Net.IServices.ISysRoleServices,CoreCms.Net.IServices.ISysMenuServices,CoreCms.Net.IServices.ISysUserRoleServices,CoreCms.Net.IServices.ISysOrganizationServices,CoreCms.Net.IServices.ICoreCmsLogisticsServices,CoreCms.Net.IServices.ISysLoginRecordServices,CoreCms.Net.IServices.ISysNLogRecordsServices,CoreCms.Net.IServices.ICoreCmsBillPaymentsServices,CoreCms.Net.IServices.ICoreCmsBillDeliveryServices,CoreCms.Net.IServices.ICoreCmsUserServices,CoreCms.Net.IServices.ICoreCmsOrderServices,CoreCms.Net.IServices.ICoreCmsBillAftersalesServices,CoreCms.Net.IServices.ICoreCmsSettingServices,CoreCms.Net.IServices.ICoreCmsProductsServices,CoreCms.Net.IServices.ICoreCmsServicesServices,CoreCms.Net.IServices.ISysRoleMenuServices,CoreCms.Net.WeChat.Service.HttpClients.IWeChatApiHttpClientFactory,CoreCms.Net.IServices.ICoreCmsPagesServices,CoreCms.Net.IServices.IToolsServices)">
<summary>
构造函数
</summary>
@@ -783,6 +783,24 @@
</summary>
<returns></returns>
</member>
<member name="M:CoreCms.Net.Web.Admin.Controllers.ToolsController.MiNiShopOpenComponent2_UploadImgByUrl(CoreCms.Net.Model.FromBody.FMStringId)">
<summary>
自定义交易组件上传图片(Url交换)
</summary>
<returns></returns>
</member>
<member name="M:CoreCms.Net.Web.Admin.Controllers.ToolsController.MiNiShopOpenComponent2_UploadImgByUrlArr(CoreCms.Net.Model.FromBody.FMArrayStringIds)">
<summary>
自定义交易组件上传图片(Url交换)
</summary>
<returns></returns>
</member>
<member name="M:CoreCms.Net.Web.Admin.Controllers.ToolsController.MiNiShopOpenComponent2_UploadImgByUrlSingle(CoreCms.Net.Model.FromBody.FMStringId)">
<summary>
自定义交易组件上传图片(Url交换单张)
</summary>
<returns></returns>
</member>
<member name="T:CoreCms.Net.Web.Admin.Controllers.CoreCmsDistributionController">
<summary>
分销商表

View File

@@ -160,8 +160,9 @@
<div class="layui-form-item">
<label class="layui-form-label" for="video">视频</label>
<div class="layui-input-inline layui-inline-10">
<input name="goods[video]" size="15" autocomplete="off" class="layui-input" lay-reqText="请输入【视频地址】" />
<input name="goods[video]" size="15" autocomplete="off" class="layui-input" id="videoInput" lay-reqText="请输入【视频地址】" />
</div>
<button type="button" class="layui-btn layui-btn-sm" id="upVideoBtn"><i class="layui-icon"></i></button>
<div class="layui-form-mid">支持常用视频播放格式</div>
</div>
</div>
@@ -1229,6 +1230,28 @@
}
});
//视频上传
var uploadInst = upload.render({
elem: '#upVideoBtn'
, accept: 'video'
, url: layui.setter.apiUrl + 'Api/Tools/UploadFiles'
, before: function (obj) {
obj.preview(function (index, file, result) {
layer.msg('上传中', { icon: 16, shade: 0.4 });
});
}
, done: function (res) {
layer.closeAll('loading'); //关闭加载层
if (res.code > 0) {
return layer.msg('上传失败');
}
layer.msg('上传成功');
$("#videoInput").val(res.data.fileUrl);
}
, error: function () {
}
});
//提交操作
//监听提交
form.on('submit(LAY-app-CoreCmsGoods-createForm-submit)',

View File

@@ -155,8 +155,9 @@
<div class="layui-form-item">
<label class="layui-form-label" for="video">视频</label>
<div class="layui-input-inline layui-inline-10">
<input name="goods[video]" size="15" autocomplete="off" class="layui-input" value="{{d.data.model.video ||'' }}" lay-reqText="请输入【视频地址】" />
<input name="goods[video]" size="15" autocomplete="off" class="layui-input" id="videoInput" value="{{d.data.model.video ||'' }}" lay-reqText="请输入【视频地址】" />
</div>
<button type="button" class="layui-btn layui-btn-sm" id="upVideoBtn"><i class="layui-icon"></i></button>
<div class="layui-form-mid">支持常用视频播放格式</div>
</div>
</div>
@@ -1333,6 +1334,28 @@
}
});
//视频上传
var uploadInst = upload.render({
elem: '#upVideoBtn'
, accept: 'video'
, url: layui.setter.apiUrl + 'Api/Tools/UploadFiles'
, before: function (obj) {
obj.preview(function (index, file, result) {
layer.msg('上传中', { icon: 16, shade: 0.4 });
});
}
, done: function (res) {
layer.closeAll('loading'); //关闭加载层
if (res.code > 0) {
return layer.msg('上传失败');
}
layer.msg('上传成功');
$("#videoInput").val(res.data.fileUrl);
}
, error: function () {
}
});
form.on('submit(LAY-app-CoreCmsGoods-editForm-submit)',
function (data) {
var field = data.field; //获取提交的字段

View File

@@ -388,6 +388,46 @@
先分销后代理指先计算是否三级分销满足满足则只计算三级分级分销如果不满足再继续执行代理分佣逻辑<br />
</div>
</div>
<blockquote class="layui-elem-quote">
同城配送运费设置
</blockquote>
<div class="layui-form-item">
<label class="layui-form-label">{{d.data.configs['intraCityServiceBy2KM']['sKey']}}</label>
<div class="layui-input-inline layui-inline-2">
<input type="number" min="0" max="999999" name="intraCityServiceBy2KM" value="{{d.data.configs['intraCityServiceBy2KM']['sValue']}}" lay-verify="title|number" autocomplete="off" placeholder="请输入正整数" class="layui-input" list="defaultNumbers">
</div>
<div class="layui-form-mid layui-word-aux">2公里以内</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">{{d.data.configs['intraCityServiceBy5KM']['sKey']}}</label>
<div class="layui-input-inline layui-inline-2">
<input type="number" min="0" max="999999" name="intraCityServiceBy5KM" value="{{d.data.configs['intraCityServiceBy5KM']['sValue']}}" lay-verify="title|number" autocomplete="off" placeholder="请输入正整数" class="layui-input" list="defaultNumbers">
</div>
<div class="layui-form-mid layui-word-aux">2-5公里以内</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">{{d.data.configs['intraCityServiceBy10KM']['sKey']}}</label>
<div class="layui-input-inline layui-inline-2">
<input type="number" min="0" max="999999" name="intraCityServiceBy10KM" value="{{d.data.configs['intraCityServiceBy10KM']['sValue']}}" lay-verify="title|number" autocomplete="off" placeholder="请输入正整数" class="layui-input" list="defaultNumbers">
</div>
<div class="layui-form-mid layui-word-aux">5-10公里以内</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">{{d.data.configs['intraCityServiceBy15KM']['sKey']}}</label>
<div class="layui-input-inline layui-inline-2">
<input type="number" min="0" max="999999" name="intraCityServiceBy15KM" value="{{d.data.configs['intraCityServiceBy15KM']['sValue']}}" lay-verify="title|number" autocomplete="off" placeholder="请输入正整数" class="layui-input" list="defaultNumbers">
</div>
<div class="layui-form-mid layui-word-aux">10-15公里以内</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">{{d.data.configs['intraCityServiceBy20KM']['sKey']}}</label>
<div class="layui-input-inline layui-inline-2">
<input type="number" min="0" max="999999" name="intraCityServiceBy20KM" value="{{d.data.configs['intraCityServiceBy20KM']['sValue']}}" lay-verify="title|number" autocomplete="off" placeholder="请输入正整数" class="layui-input" list="defaultNumbers">
</div>
<div class="layui-form-mid layui-word-aux">15-20公里以内</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">&nbsp;</label>
<div class="layui-input-block">