# 2022-03-16

### 1.4.0 开源社区版:
【优化】首页标题默认设置为空,防止数据加载缓慢导致显示空的情况。#I4XM14
### 0.2.9 专业版:
【升级】升级uniapp前端框架到UView2.0.29版本。修复一些组件的细节bug,详情查询uviewui更新文档。
【优化】首页标题默认设置为空,防止数据加载缓慢导致显示空的情况。#I4XM14
【修复】修复BaseRepository中有SqlWith.NoLock使用Where错误的BUG。#I4XKFW
【修复】修复商品详情轮播图点击无法预览的问题。
【修复】自定义交易组件,在目录审核通过后,极端情况下会出现还需要“商品资质图片”的bug。
【新增】后台页面设计界面,增加常用前端的pages链接地址地址,方便进行复制使用。
【新增】普通商品详情,服务商品详情,拼团商品详情,秒杀商品详情,团购商品详情增加点击客服聊天,发送商品卡片功能,客服能直接接收到客户浏览的详情页面信息。
【新增】后台商城设置里面的“页面设计”功能页面,新增一个自定义页面的url 地址,便于复制引用如小程序中。#I4VZ6D
【修复】修复后台管理,编辑分销用户须知,分销协议,提交到代理方法的问题。#I4W5YL
【升级】升级后端打印组件版本。解决旧版本过低,导致新版本浏览器安装后无法调用的问题。#I4XDKC
【修复】修复mysql数据库有几个表存在主键未设置自增的问题,并发布完成版本。#I4XCT0
【升级】mysql数据库增加日历签到四个表。
This commit is contained in:
JianWeie
2022-03-16 00:45:09 +08:00
parent 584fef5577
commit 6cf82057f4
17 changed files with 15080 additions and 22 deletions

View File

@@ -348,7 +348,7 @@
<!-- #endif -->
<!-- #ifdef MP-WEIXIN -->
<view class="action">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle" :send-message-title="goodsInfo.name" :send-message-path="'/pages/goods/goodDetails/goodDetails?id='+goodsInfo.id" :send-message-img="goodsInfo.image" show-message-card="true">
<u-icon name="server-fill" :size="20" label="找客服" :labelSize="12" labelPos="bottom"></u-icon>
</button>
</view>
@@ -796,10 +796,11 @@
this.shareBox = false;
},
// 图片点击放大
clickImg(imgs) {
clickImg(index) {
// 预览图片
uni.previewImage({
urls: imgs.split()
urls: this.goodsInfo.album,
current: index
});
},
//在线客服,只有手机号的,请自己替换为手机号

View File

@@ -387,7 +387,7 @@
<!-- #endif -->
<!-- #ifdef MP-WEIXIN -->
<view class="action">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle" :send-message-title="goodsInfo.name" :send-message-path="'/pages/goods/goodDetails/goodDetails?id='+goodsInfo.id" :send-message-img="goodsInfo.image" show-message-card="true">
<u-icon name="server-fill" :size="20" label="撩客服" :labelSize="12" labelPos="bottom"></u-icon>
</button>
</view>
@@ -946,10 +946,11 @@
this.pinTuanpop = true;
},
// 图片点击放大
clickImg(imgs) {
clickImg(index) {
// 预览图片
uni.previewImage({
urls: imgs.split()
urls: this.goodsInfo.album,
current: index
});
},
//在线客服,只有手机号的,请自己替换为手机号

View File

@@ -350,7 +350,7 @@
<!-- #endif -->
<!-- #ifdef MP-WEIXIN -->
<view class="action">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle" :send-message-title="goodsInfo.name" :send-message-path="'/pages/goods/goodDetails/goodDetails?id='+goodsInfo.id" :send-message-img="goodsInfo.image" show-message-card="true">
<u-icon name="server-fill" :size="20" label="找客服" :labelSize="12" labelPos="bottom"></u-icon>
</button>
</view>
@@ -799,10 +799,11 @@
this.shareBox = false;
},
// 图片点击放大
clickImg(imgs) {
clickImg(index) {
// 预览图片
uni.previewImage({
urls: imgs.split()
urls: this.goodsInfo.album,
current: index
});
},
//在线客服,只有手机号的,请自己替换为手机号

View File

@@ -307,7 +307,7 @@
<!-- #endif -->
<!-- #ifdef MP-WEIXIN -->
<view class="action">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle" :send-message-title="goodsInfo.name" :send-message-path="'/pages/goods/goodDetails/goodDetails?id='+goodsInfo.id" :send-message-img="goodsInfo.image" show-message-card="true">
<u-icon name="server-fill" :size="20" label="找客服" :labelSize="12" labelPos="bottom"></u-icon>
</button>
</view>
@@ -887,10 +887,11 @@
this.shareBox = false;
},
// 图片点击放大
clickImg(imgs) {
clickImg(index) {
// 预览图片
uni.previewImage({
urls: imgs.split()
urls: this.goodsInfo.album,
current: index
});
},
//在线客服,只有手机号的,请自己替换为手机号

View File

@@ -216,7 +216,7 @@
<!-- #endif -->
<!-- #ifdef MP-WEIXIN -->
<view class="action">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle">
<button open-type="contact" bindcontact="showChat" class="noButtonStyle" :send-message-title="info.title" :send-message-path="'/pages/serviceGoods/details/details?id='+info.id" :send-message-img="info.thumbnail" show-message-card="true">
<u-icon name="server-fill" :size="20" label="撩客服" :labelSize="12" labelPos="bottom"></u-icon>
</button>
</view>

View File

@@ -50,6 +50,9 @@ namespace CoreCms.Net.Web.Admin.Controllers
private readonly IWebHostEnvironment _webHostEnvironment;
private readonly IWeChatTransactionComponentGoodServices _weChatTransactionComponentGoodsServices;
private readonly IWeChatTransactionComponentGoodSKUServices _weChatTransactionComponentGoodSkuServices;
private readonly IWeChatTransactionComponentAuditCategoryServices
_weChatTransactionComponentAuditCategoryServices;
private readonly ICoreCmsProductsServices _productsServices;
private readonly WeChat.Service.HttpClients.IWeChatApiHttpClientFactory _weChatApiHttpClientFactory;
@@ -58,13 +61,14 @@ namespace CoreCms.Net.Web.Admin.Controllers
/// 构造函数
///</summary>
public WeChatTransactionComponentGoodController(IWebHostEnvironment webHostEnvironment
, IWeChatTransactionComponentGoodServices weChatTransactionComponentGoodsServices, IWeChatTransactionComponentGoodSKUServices weChatTransactionComponentGoodSkuServices, ICoreCmsProductsServices productsServices, IWeChatApiHttpClientFactory weChatApiHttpClientFactory)
, IWeChatTransactionComponentGoodServices weChatTransactionComponentGoodsServices, IWeChatTransactionComponentGoodSKUServices weChatTransactionComponentGoodSkuServices, ICoreCmsProductsServices productsServices, IWeChatApiHttpClientFactory weChatApiHttpClientFactory, IWeChatTransactionComponentAuditCategoryServices weChatTransactionComponentAuditCategoryServices)
{
_webHostEnvironment = webHostEnvironment;
_weChatTransactionComponentGoodsServices = weChatTransactionComponentGoodsServices;
_weChatTransactionComponentGoodSkuServices = weChatTransactionComponentGoodSkuServices;
_productsServices = productsServices;
_weChatApiHttpClientFactory = weChatApiHttpClientFactory;
_weChatTransactionComponentAuditCategoryServices = weChatTransactionComponentAuditCategoryServices;
}
#region ============================================================
@@ -412,7 +416,18 @@ namespace CoreCms.Net.Web.Admin.Controllers
request.Title = model.title;
request.PagePath = model.path;
request.HeadImageUrlList = new List<string>(model.headImg.Split(","));
var category = await _weChatTransactionComponentAuditCategoryServices.QueryByClauseAsync(p => p.level3 == model.thirdCatId, true);
if (category!=null && !string.IsNullOrEmpty(category.certificateImage))
{
request.QualificationPictureUrlList = new List<string>(category.certificateImage.Split(","));
}
else
{
request.QualificationPictureUrlList = new List<string>();
}
request.Detail = new ShopSPUAddRequest.Types.Detail();
request.Detail.Description = model.descInfoDesc;
@@ -520,7 +535,17 @@ namespace CoreCms.Net.Web.Admin.Controllers
request.Title = model.title;
request.PagePath = model.path;
request.HeadImageUrlList = new List<string>(model.headImg.Split(","));
var category = await _weChatTransactionComponentAuditCategoryServices.QueryByClauseAsync(p => p.level3 == model.thirdCatId, true);
if (category != null && !string.IsNullOrEmpty(category.certificateImage))
{
request.QualificationPictureUrlList = new List<string>(category.certificateImage.Split(","));
}
else
{
request.QualificationPictureUrlList = new List<string>();
}
request.Detail = new ShopSPUUpdateRequest.Types.Detail();
request.Detail.Description = model.descInfoDesc;

View File

@@ -235,7 +235,7 @@ template {
}
.edit-body {
height: auto;
width: calc(100% - 700px);
width: calc(100% - 700px - 300px);
}
.center-container {
width: 375px;
@@ -318,6 +318,17 @@ template {
padding: 0;
margin-top: 5px;
}
.urlBox {
width: 300px;
border: 1px solid #e9e9e9;
box-shadow: 0 3px 10px #dcdcdc;
position: relative;
padding: 10px;
}
.urlBox p {
font-size: 12px;
word-break: break-all;
}
.recycle {
position: absolute;
top: 43px;

View File

@@ -53,7 +53,7 @@ template { display: none; }
::-webkit-scrollbar-thumb { border-radius: 10px; background-color: #bdbdbd; -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3); }
.twolist-hidden { display: -webkit-box; word-break: break-all; text-overflow: ellipsis; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.form-edit-wrapper { display: -webkit-box; display: -ms-flexbox; display: flex; width: 100%; min-width: 1200px; background: #fff; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; }
.edit-body { height: auto; width: calc(100% - 700px); }
.edit-body { height: auto; width: calc(100% - 700px - 300px); }
.center-container { width: 375px; height: 806px; border: 1px solid #e9e9e9; box-shadow: 0 3px 10px #dcdcdc; position: relative;
.model-title { height: 88px; width: 100%; position: relative;
img { width: 100%; height: 100%; }
@@ -76,6 +76,9 @@ template { display: none; }
}
}
}
.urlBox { width: 300px; border: 1px solid #e9e9e9; box-shadow: 0 3px 10px #dcdcdc; position: relative; padding: 10px;
p { font-size: 12px; word-break: break-all; }
}
.recycle { position: absolute; top: 43px; right: 26px;
ul { position: relative;
li {

File diff suppressed because one or more lines are too long

View File

@@ -427,7 +427,7 @@
}
console.log(postData);
coreHelper.Post("Api/CoreCmsAgentSetting/DoSave", { entity: postData }, function (e) {
coreHelper.Post("Api/CoreCmsDistributionSetting/DoSave", { entity: postData }, function (e) {
if (debug) { console.log(e); } //开启调试返回数据
layer.msg(e.msg);
});

View File

@@ -124,6 +124,33 @@
<div class="edit-body">
<layout-config ref="config"></layout-config>
</div>
<div class="urlBox">
<h4>常用前端地址:</h4>
<p>前端首页:/pages/index/default/default</p>
<p>购 物 车:/pages/index/cart/cart</p>
<p>会员中心pages/index/member/member</p>
<p>搜索中心:/pages/search/search</p>
<p>分类首页:/pages/category/index/index</p>
<p>分类列表:/pages/category/list/list?id=分类序列</p>
<p>商品详情:/pages/goods/goodDetails/goodDetails?id=商品序列</p>
<p>门店列表:/pages/storeMap/storeMap</p>
<p>文章列表:/pages/article/list/list</p>
<p>文章详情:/pages/article/details/details?id=文章序列</p>
<p>万能表单:/pages/form/details/details?id=表单序列</p>
<p>服务商品列表:/pages/serviceGoods/index/index</p>
<p>服务商品详情:/pages/serviceGoods/details/details?id=商品序列</p>
<p>优惠券列表:/pages/coupon/coupon</p>
<p>打赏:/pages/reward/reward</p>
<p>拼团列表:/pages/activity/pinTuan/list/list</p>
<p>拼团详情:/pages/activity/pinTuan/pinTuanDetails/pinTuanDetails?id=拼团序列</p>
<p>秒杀列表:/pages/activity/seckill/list/list</p>
<p>秒杀详情:/pages/activity/seckill/seckillDetails/seckillDetails?id=秒杀序列</p>
<p>团购列表:/pages/activity/groupBuying/list/list</p>
<p>团购详情:/pages/activity/groupBuying/groupBuyingDetails/groupBuyingDetails?id=团购序列</p>
<p>接龙列表:/pages/activity/solitaire/list/list</p>
<p>接龙详情:/pages/activity/solitaire/solitaireDetails/solitaireDetails?id=接龙序列</p>
<p>日历签到:/pages/activity/checkIn/checkIn/checkIn</p>
</div>
</div>
</div>
</template>
@@ -540,12 +567,19 @@
<el-form-item label="商品组名称">
<input type="text" v-model="selectWg.value.title" class="selectLinkVal">
</el-form-item>
<el-form-item label="显示商品组名称">
<el-radio-group v-model="selectWg.value.lookTitle">
<el-radio label="true"></el-radio>
<el-radio label="false"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="是否查看更多">
<el-radio-group v-model="selectWg.value.lookMore">
<el-radio label="true"></el-radio>
<el-radio label="false"></el-radio>
</el-radio-group>
</el-form-item>
<div class="pl25">
<p class="layout-tip">
商品数据请到 商品管理 - <a href="javascript:;" lay-href="/good/goods/">商品列表</a> 中管理

View File

@@ -81,7 +81,11 @@
{ field: 'code', title: '可视化区域编码', sort: false, width: 205 },
{ field: 'name', title: '可编辑区域名称', sort: false, width: 205 },
{ field: 'description', title: '描述', sort: false },
//{ field: 'layout', title: '布局样式编码1手机端', sort: false, width: 105 },
{
field: 'code', title: '前端目录', sort: false, templet: function (data) {
return "/pages/index/custom/custom?pageCode=" + data.code;
}
},
{
field: 'type', title: '是否默认', sort: false, width: 105, templet: function (data) {
if (data.type == 1) {

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,125 @@
/*
SQLyog Ultimate v13.1.1 (64 bit)
MySQL - 5.7.32-log : Database - coreshop
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`coreshop` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `coreshop`;
/*Table structure for table `CoreCmsContinuousCheckInRuleDetails` */
DROP TABLE IF EXISTS `CoreCmsContinuousCheckInRuleDetails`;
CREATE TABLE `CoreCmsContinuousCheckInRuleDetails` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '序列',
`userGradeId` int(11) DEFAULT NULL COMMENT '用户级别',
`ruleId` int(11) DEFAULT NULL COMMENT '连续签到规则序列',
`num` int(11) DEFAULT NULL COMMENT '数量',
`type` int(11) DEFAULT NULL COMMENT '积分1余额2',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=121 DEFAULT CHARSET=utf8;
/*Data for the table `CoreCmsContinuousCheckInRuleDetails` */
insert into `CoreCmsContinuousCheckInRuleDetails`(`id`,`userGradeId`,`ruleId`,`num`,`type`) values
(109,2,37,1,1),
(110,6,37,2,1),
(111,1006,37,3,1),
(112,2,38,1,1),
(113,6,38,2,1),
(114,1006,38,3,1),
(115,2,39,1,1),
(116,6,39,2,1),
(117,1006,39,3,1),
(118,2,40,1,1),
(119,6,40,2,1),
(120,1006,40,3,1);
/*Table structure for table `CoreCmsContinuousCheckInRules` */
DROP TABLE IF EXISTS `CoreCmsContinuousCheckInRules`;
CREATE TABLE `CoreCmsContinuousCheckInRules` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '序列',
`days` int(11) DEFAULT NULL COMMENT '天数',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=41 DEFAULT CHARSET=utf8;
/*Data for the table `CoreCmsContinuousCheckInRules` */
insert into `CoreCmsContinuousCheckInRules`(`id`,`days`) values
(37,1),
(38,2),
(39,3),
(40,4);
/*Table structure for table `CoreCmsCumulativeCheckInRules` */
DROP TABLE IF EXISTS `CoreCmsCumulativeCheckInRules`;
CREATE TABLE `CoreCmsCumulativeCheckInRules` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '序列',
`days` int(11) DEFAULT NULL COMMENT '累计天数',
`num` int(11) DEFAULT NULL COMMENT '数量',
`type` int(11) DEFAULT NULL COMMENT '积分1余额2',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=61 DEFAULT CHARSET=utf8;
/*Data for the table `CoreCmsCumulativeCheckInRules` */
insert into `CoreCmsCumulativeCheckInRules`(`id`,`days`,`num`,`type`) values
(58,4,1,1),
(59,5,2,1),
(60,6,3,1);
/*Table structure for table `CoreCmsUserCheckIn` */
DROP TABLE IF EXISTS `CoreCmsUserCheckIn`;
CREATE TABLE `CoreCmsUserCheckIn` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '序列',
`userId` int(11) DEFAULT NULL COMMENT '用户序列',
`continuousCheckInCount` int(11) DEFAULT NULL COMMENT '连续签到次数',
`cumulativeCheckInCount` int(11) DEFAULT NULL COMMENT '累计签到次数',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8;
/*Data for the table `CoreCmsUserCheckIn` */
insert into `CoreCmsUserCheckIn`(`id`,`userId`,`continuousCheckInCount`,`cumulativeCheckInCount`) values
(17,4467,4,4);
/*Table structure for table `CoreCmsUserCheckInDetails` */
DROP TABLE IF EXISTS `CoreCmsUserCheckInDetails`;
CREATE TABLE `CoreCmsUserCheckInDetails` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '序列',
`userId` int(11) DEFAULT NULL COMMENT '用户序列',
`checkInData` varchar(10) DEFAULT NULL COMMENT '打卡日期',
`createTime` timestamp NULL DEFAULT NULL COMMENT '打卡时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=71 DEFAULT CHARSET=utf8;
/*Data for the table `CoreCmsUserCheckInDetails` */
insert into `CoreCmsUserCheckInDetails`(`id`,`userId`,`checkInData`,`createTime`) values
(67,4467,'2022-03-01','2022-03-14 00:35:06'),
(68,4467,'2022-03-02','2022-03-14 00:35:11'),
(69,4467,'2022-03-11','2022-03-14 00:35:12'),
(70,4467,'2022-03-12','2022-03-14 00:35:15');
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

View File

@@ -0,0 +1,12 @@
以下表主键为INT型没有设定自动递增请手动先修复。
CoreCmsSolitaireItems
CoreCmsSolitaire
CoreCmsGoodsImages
WeChatTransactionComponentAuditCategory
WeChatTransactionComponentAuditCategoryAuditLog
WeChatTransactionComponentDeliveryCompany
WeChatTransactionComponentGood
WeChatTransactionComponentGoodAuditLog
WeChatTransactionComponentGoodSKU
WeChatTransactionComponentOrder
WeChatTransactionComponentThirdCategory

View File

@@ -1,3 +1,6 @@
2022-03-16
【新增】表【CoreCmsContinuousCheckInRuleDetails】【CoreCmsContinuousCheckInRules】【CoreCmsCumulativeCheckInRules】【CoreCmsUserCheckIn】【CoreCmsUserCheckInDetails】实现日历签到功能。
2022-02-25
【新增】表【CoreCmsProducts】增加【赠送积分points】字段