【新增】新增微信扫码支付功能,对接PC端。

【新增】增加DTO类库,将逐步完善dto层。
【修复】修复【分类】切换后,切换回来未清零原始数据,导致更新数据重复的问题。
【调整】移除模板库功能,防止出现审核因为模板库页面存在而导致的审核失败。暂将模板库的代码存放到会员QQ群内,方便下载使用。
【调整】代码生成器【Repository.tpl】移除Cache手动增删改,【SqlSugarSetup】增加sqlsugar自动检测增删改后清理二级缓存。
【调整】后端新增秒杀独立组件,用于区分团购及秒杀的差异,首页新增秒杀组件。
【优化】重写首页所有组件样式及接口数据获取效率。
【优化】优化拼团,秒杀,团购,接龙数据获取逻辑,提升列表及详情页面数据获取效率。
【优化】调整拼团,秒杀,团购,服务商品推广海报为新式海报效果。增加服务商品推广海报。
【优化】清理h5相关代码判断,移除h5支付组件,提高响应速度。
【优化】移除小程序前端冗余代码。加快代码执行效率。
This commit is contained in:
大灰灰
2022-10-31 05:28:16 +08:00
parent 6ae59c6af7
commit 81dcf814d1
173 changed files with 4172 additions and 3408 deletions

View File

@@ -49,7 +49,7 @@ namespace CoreCms.Net.Repository
return jm;
}
var id = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync();
var id = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync();
var bl = id > 0;
jm.code = bl ? 0 : 1;
@@ -58,7 +58,7 @@ namespace CoreCms.Net.Repository
{
if (entity.isDefault)
{
await DbClient.Updateable<CoreCmsAgentGrade>().SetColumns(p => p.isDefault == false).Where(p => p.isDefault == true && p.id != id).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Updateable<CoreCmsAgentGrade>().SetColumns(p => p.isDefault == false).Where(p => p.isDefault == true && p.id != id).ExecuteCommandAsync();
}
}
return jm;
@@ -106,7 +106,7 @@ namespace CoreCms.Net.Repository
oldModel.description = entity.description;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
if (bl)
@@ -114,7 +114,7 @@ namespace CoreCms.Net.Repository
//其他处理
if (entity.isDefault)
{
await DbClient.Updateable<CoreCmsAgentGrade>().SetColumns(it => it.isDefault == false).Where(p => p.isDefault == true && p.id != entity.id).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Updateable<CoreCmsAgentGrade>().SetColumns(it => it.isDefault == false).Where(p => p.isDefault == true && p.id != entity.id).ExecuteCommandAsync();
}
}
@@ -141,7 +141,7 @@ namespace CoreCms.Net.Repository
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;
if (bl)
{
await DbClient.Deleteable<CoreCmsAgentProducts>().Where(p => p.agentGradeId == id).RemoveDataCache().ExecuteCommandHasChangeAsync();
await DbClient.Deleteable<CoreCmsAgentProducts>().Where(p => p.agentGradeId == id).ExecuteCommandHasChangeAsync();
}
return jm;
}

View File

@@ -45,7 +45,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
entity.createTime = DateTime.Now;
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -88,7 +88,7 @@ namespace CoreCms.Net.Repository
oldModel.storeId = entity.storeId;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -104,7 +104,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsPrinter>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsPrinter>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;

View File

@@ -4,23 +4,96 @@
* Web: https://www.corecms.net
* Author: 大灰灰
* Email: jianweie@163.com
* CreateTime: 2021/1/31 21:45:10
* CreateTime: 2022/10/24 3:54:14
* Description: 暂无
***********************************************************************/
using System;
using System.Collections.Generic;
using System.Linq.Expressions;
using System.Threading.Tasks;
using CoreCms.Net.Caching.Manual;
using CoreCms.Net.Configuration;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.ViewModels.Basics;
using CoreCms.Net.IRepository;
using CoreCms.Net.IRepository.UnitOfWork;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.ViewModels.UI;
using SqlSugar;
namespace CoreCms.Net.Repository
{
/// <summary>
/// 文章分类表 接口实现
/// 文章分类表 接口实现
/// </summary>
public class CoreCmsArticleTypeRepository : BaseRepository<CoreCmsArticleType>, ICoreCmsArticleTypeRepository
{
private readonly IUnitOfWork _unitOfWork;
public CoreCmsArticleTypeRepository(IUnitOfWork unitOfWork) : base(unitOfWork)
{
_unitOfWork = unitOfWork;
}
/// <summary>
/// 重写异步插入方法
/// </summary>
/// <param name="entity">实体数据</param>
/// <returns></returns>
public async Task<AdminUiCallBack> InsertAsync(CoreCmsArticleType entity)
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
return jm;
}
/// <summary>
/// 重写异步更新方法
/// </summary>
/// <param name="entity"></param>
/// <returns></returns>
public async Task<AdminUiCallBack> UpdateAsync(CoreCmsArticleType entity)
{
var jm = new AdminUiCallBack();
var oldModel = await DbClient.Queryable<CoreCmsArticleType>().In(entity.id).SingleAsync();
if (oldModel == null)
{
jm.msg = "不存在此信息";
return jm;
}
//事物处理过程开始
//oldModel.id = entity.id;
oldModel.name = entity.name;
oldModel.parentId = entity.parentId;
oldModel.sort = entity.sort;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
return jm;
}
/// <summary>
/// 重写删除指定ID的数据
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
public async Task<AdminUiCallBack> DeleteByIdAsync(object id)
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsArticleType>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;
return jm;
}
}
}
}

View File

@@ -66,8 +66,8 @@ namespace CoreCms.Net.Repository
_unitOfWork.BeginTran();
//先清理掉数据,因为是配置数据,可直接删除添加新的
await DbClient.Deleteable<CoreCmsContinuousCheckInRules>().Where(p => p.id > 0).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Deleteable<CoreCmsContinuousCheckInRuleDetails>().Where(p => p.id > 0).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Deleteable<CoreCmsContinuousCheckInRules>().Where(p => p.id > 0).ExecuteCommandAsync();
await DbClient.Deleteable<CoreCmsContinuousCheckInRuleDetails>().Where(p => p.id > 0).ExecuteCommandAsync();
//遍历数据存值
foreach (var item in entity)
@@ -77,13 +77,13 @@ namespace CoreCms.Net.Repository
days = item.days
};
var id = await DbClient.Insertable(continuous).RemoveDataCache().ExecuteReturnIdentityAsync();
var id = await DbClient.Insertable(continuous).ExecuteReturnIdentityAsync();
if (id <= 0) continue;
foreach (var detail in item.details)
{
detail.ruleId = id;
}
await DbClient.Insertable(item.details).RemoveDataCache().ExecuteReturnIdentityAsync();
await DbClient.Insertable(item.details).ExecuteReturnIdentityAsync();
}
_unitOfWork.CommitTran();

View File

@@ -49,7 +49,7 @@ namespace CoreCms.Net.Repository
return jm;
}
var id = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync();
var id = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync();
var bl = id > 0;
jm.code = bl ? 0 : 1;
@@ -58,7 +58,7 @@ namespace CoreCms.Net.Repository
{
if (entity.isDefault == true)
{
await DbClient.Updateable<CoreCmsDistributionGrade>().SetColumns(p => p.isDefault == false).Where(p => p.isDefault == true && p.id != id).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Updateable<CoreCmsDistributionGrade>().SetColumns(p => p.isDefault == false).Where(p => p.isDefault == true && p.id != id).ExecuteCommandAsync();
}
}
return jm;
@@ -103,7 +103,7 @@ namespace CoreCms.Net.Repository
oldModel.description = entity.description;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
if (bl)
@@ -111,7 +111,7 @@ namespace CoreCms.Net.Repository
//其他处理
if (entity.isDefault)
{
await DbClient.Updateable<CoreCmsDistributionGrade>().SetColumns(it => it.isDefault == false).Where(p => p.isDefault == true && p.id != entity.id).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Updateable<CoreCmsDistributionGrade>().SetColumns(it => it.isDefault == false).Where(p => p.isDefault == true && p.id != entity.id).ExecuteCommandAsync();
}
}
@@ -133,13 +133,13 @@ namespace CoreCms.Net.Repository
jm.msg = "存在关联的分销用户数据,禁止删除";
return jm;
}
var bl = await DbClient.Deleteable<CoreCmsDistributionGrade>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsDistributionGrade>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;
if (bl)
{
await DbClient.Deleteable<CoreCmsDistributionCondition>().Where(p => p.gradeId == id).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Deleteable<CoreCmsDistributionResult>().Where(p => p.gradeId == id).RemoveDataCache().ExecuteCommandAsync();
await DbClient.Deleteable<CoreCmsDistributionCondition>().Where(p => p.gradeId == id).ExecuteCommandAsync();
await DbClient.Deleteable<CoreCmsDistributionResult>().Where(p => p.gradeId == id).ExecuteCommandAsync();
}
return jm;

View File

@@ -49,7 +49,7 @@ namespace CoreCms.Net.Repository
return jm;
}
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -84,7 +84,7 @@ namespace CoreCms.Net.Repository
oldModel.parameters = entity.parameters;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
return jm;
@@ -99,7 +99,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Updateable(entity).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(entity).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -115,7 +115,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsDistributionResult>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsDistributionResult>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;
@@ -131,7 +131,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsDistributionResult>().In(ids).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsDistributionResult>().In(ids).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;

View File

@@ -39,7 +39,7 @@ namespace CoreCms.Net.Repository
public async Task<AdminUiCallBack> InsertAsync(CoreCmsGoodsCategory entity)
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -56,7 +56,7 @@ namespace CoreCms.Net.Repository
var jm = new AdminUiCallBack();
//事物处理过程结束
var bl = await DbClient.Updateable(entity).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(entity).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -72,7 +72,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsGoodsCategory>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsGoodsCategory>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;

View File

@@ -36,6 +36,7 @@ namespace CoreCms.Net.Repository
}
#region
/// <summary>
/// 重写异步插入方法
/// </summary>
@@ -285,6 +286,9 @@ namespace CoreCms.Net.Repository
return jm;
}
#endregion
#region
/// <summary>
/// 重写异步更新方法方法
/// </summary>
@@ -734,7 +738,7 @@ namespace CoreCms.Net.Repository
return jm;
}
#endregion
#region ID集合的数据()
/// <summary>
@@ -1923,5 +1927,132 @@ namespace CoreCms.Net.Repository
}
#endregion
#region
/// <summary>
/// 获取商品及默认货品信息
/// </summary>
/// <param name="predicate"></param>
/// <param name="orderByPredicate"></param>
/// <param name="orderByType"></param>
/// <param name="blUseNoLock">是否使用WITH(NOLOCK)</param>
/// <returns></returns>
public async Task<List<CoreCmsGoods>> QueryGoodWithDefaultProductAsync(Expression<Func<CoreCmsGoods, bool>> predicate, Expression<Func<CoreCmsGoods, object>> orderByPredicate, OrderByType orderByType, bool blUseNoLock = false)
{
List<CoreCmsGoods> listData;
if (blUseNoLock)
{
listData = await DbClient.Queryable<CoreCmsGoods, CoreCmsProducts>((good, pd) => new JoinQueryInfos(JoinType.Left, good.id == pd.goodsId))
.Where((good, pd) => pd.isDefalut == true && pd.isDel == false)
.Select((good, pd) => new CoreCmsGoods
{
id = good.id,
bn = good.bn,
name = good.name,
brief = good.brief,
image = good.image,
images = good.images,
video = good.video,
productsDistributionType = good.productsDistributionType,
goodsCategoryId = good.goodsCategoryId,
goodsTypeId = good.goodsTypeId,
brandId = good.brandId,
isNomalVirtual = good.isNomalVirtual,
isMarketable = good.isMarketable,
unit = good.unit,
//intro = good.intro,
spesDesc = good.spesDesc,
parameters = good.parameters,
commentsCount = good.commentsCount,
viewCount = good.viewCount,
buyCount = good.buyCount,
uptime = good.uptime,
downtime = good.downtime,
sort = good.sort,
labelIds = good.labelIds,
newSpec = good.newSpec,
openSpec = good.openSpec,
createTime = good.createTime,
updateTime = good.updateTime,
isRecommend = good.isRecommend,
isHot = good.isHot,
isDel = good.isDel,
sn = pd.sn,
price = pd.price,
costprice = pd.costprice,
mktprice = pd.mktprice,
stock = pd.stock,
freezeStock = pd.freezeStock,
pointsDeduction = pd.pointsDeduction,
points = pd.points,
weight = pd.weight,
initialSales = good.initialSales,
})
.With(SqlWith.NoLock)
.MergeTable()
.WhereIF(predicate != null, predicate)
.OrderByIF(orderByPredicate != null, orderByPredicate, orderByType)
.ToListAsync();
}
else
{
listData = await DbClient.Queryable<CoreCmsGoods, CoreCmsProducts>((good, pd) => new JoinQueryInfos(
JoinType.Left, good.id == pd.goodsId))
.Where((good, pd) => pd.isDefalut == true && pd.isDel == false)
.Select((good, pd) => new CoreCmsGoods
{
id = good.id,
bn = good.bn,
name = good.name,
brief = good.brief,
image = good.image,
images = good.images,
video = good.video,
productsDistributionType = good.productsDistributionType,
goodsCategoryId = good.goodsCategoryId,
goodsTypeId = good.goodsTypeId,
brandId = good.brandId,
isNomalVirtual = good.isNomalVirtual,
isMarketable = good.isMarketable,
unit = good.unit,
//intro = good.intro,
spesDesc = good.spesDesc,
parameters = good.parameters,
commentsCount = good.commentsCount,
viewCount = good.viewCount,
buyCount = good.buyCount,
uptime = good.uptime,
downtime = good.downtime,
sort = good.sort,
labelIds = good.labelIds,
newSpec = good.newSpec,
openSpec = good.openSpec,
createTime = good.createTime,
updateTime = good.updateTime,
isRecommend = good.isRecommend,
isHot = good.isHot,
isDel = good.isDel,
sn = pd.sn,
price = pd.price,
costprice = pd.costprice,
mktprice = pd.mktprice,
stock = pd.stock,
freezeStock = pd.freezeStock,
pointsDeduction = pd.pointsDeduction,
points = pd.points,
weight = pd.weight,
initialSales = good.initialSales,
})
.MergeTable()
.WhereIF(predicate != null, predicate)
.OrderByIF(orderByPredicate != null, orderByPredicate, orderByType)
.ToListAsync();
}
return listData;
}
#endregion
}
}

View File

@@ -64,10 +64,10 @@ namespace CoreCms.Net.Repository
var goodsTypeSpec = new CoreCmsGoodsTypeSpec();
goodsTypeSpec.name = entity.name;
goodsTypeSpec.sort = entity.sort;
var specId = await DbClient.Insertable(goodsTypeSpec).RemoveDataCache().ExecuteReturnIdentityAsync();
var specId = await DbClient.Insertable(goodsTypeSpec).ExecuteReturnIdentityAsync();
if (specId <= 0 || entity.value is not { Count: > 0 }) return jm;
var list = entity.value.Select((item, index) => new CoreCmsGoodsTypeSpecValue() { specId = specId, value = item, sort = index + 1 }).ToList();
var bl = await DbClient.Insertable(list).RemoveDataCache().ExecuteCommandAsync() > 0;
var bl = await DbClient.Insertable(list).ExecuteCommandAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -107,7 +107,7 @@ namespace CoreCms.Net.Repository
}
oldModel.name = entity.name;
oldModel.sort = entity.sort;
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
if (bl)
{
var oldValues = await DbClient.Queryable<CoreCmsGoodsTypeSpecValue>().OrderBy(p => p.sort).Where(p => p.specId == oldModel.id).ToListAsync();
@@ -115,7 +115,7 @@ namespace CoreCms.Net.Repository
//获取需要删除的数据库数据
var deleteValues = oldValues.Where(p => !entity.value.Contains(p.value)).ToList();
//删除旧数据
if (deleteValues.Any()) bl = await DbClient.Deleteable<CoreCmsGoodsTypeSpecValue>(deleteValues).RemoveDataCache().ExecuteCommandHasChangeAsync();
if (deleteValues.Any()) bl = await DbClient.Deleteable<CoreCmsGoodsTypeSpecValue>(deleteValues).ExecuteCommandHasChangeAsync();
//新数据
var values = oldValues.Select(p => p.value).ToList();
@@ -125,7 +125,7 @@ namespace CoreCms.Net.Repository
if (newValues.Any())
{
var newList = newValues.Select((t, index) => new CoreCmsGoodsTypeSpecValue() { specId = oldModel.id, value = t, sort = oldValues.Count + index }).ToList();
bl = await DbClient.Insertable<CoreCmsGoodsTypeSpecValue>(newList).RemoveDataCache().ExecuteCommandAsync() > 0;
bl = await DbClient.Insertable<CoreCmsGoodsTypeSpecValue>(newList).ExecuteCommandAsync() > 0;
}
}
jm.code = bl ? 0 : 1;
@@ -144,12 +144,12 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsGoodsTypeSpec>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsGoodsTypeSpec>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;
if (bl)
{
await DbClient.Deleteable<CoreCmsGoodsTypeSpecValue>(p => p.specId == (int)id).RemoveDataCache().ExecuteCommandHasChangeAsync();
await DbClient.Deleteable<CoreCmsGoodsTypeSpecValue>(p => p.specId == (int)id).ExecuteCommandHasChangeAsync();
}
return jm;

View File

@@ -150,7 +150,6 @@ namespace CoreCms.Net.Repository
#endregion
#region id和商品id获取下了多少订单
/// <summary>
/// 根据用户id和商品id获取下了多少订单

View File

@@ -14,6 +14,7 @@ using System.Linq;
using System.Linq.Expressions;
using System.Threading.Tasks;
using CoreCms.Net.Configuration;
using CoreCms.Net.DTO;
using CoreCms.Net.IRepository;
using CoreCms.Net.IRepository.UnitOfWork;
using CoreCms.Net.Model.Entities;
@@ -176,5 +177,71 @@ namespace CoreCms.Net.Repository
#endregion
#region ID数组获取拼团相关信息
/// <summary>
/// 根据规则ID数组获取拼团相关信息
/// </summary>
/// <param name="ruleIds">规则序列</param>
/// <param name="orderByExpression"></param>
/// <param name="orderByType"></param>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <returns></returns>
public async Task<IPageList<PinTuanListDTO>> GetPinTuanInfos(int[] ruleIds, Expression<Func<PinTuanListDTO, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1, int pageSize = 20)
{
var dt = DateTime.Now;
RefAsync<int> totalCount = 0;
var reuslt = await DbClient.Queryable<CoreCmsPinTuanRule, CoreCmsPinTuanGoods, CoreCmsGoods, CoreCmsProducts>(
(prModel, pgModel, goodModel, productsModel) => new object[]
{
JoinType.Inner, prModel.id ==pgModel.ruleId ,
JoinType.Inner, pgModel.goodsId == goodModel.id,
JoinType.Left, goodModel.id == productsModel.goodsId
})
.Where((prModel, pgModel, goodModel, productsModel) => prModel.isStatusOpen == true && ruleIds.Contains(prModel.id) && prModel.endTime > dt && productsModel.isDefalut == true && productsModel.isDel == false)
.Select((prModel, pgModel, goodModel, productsModel) => new PinTuanListDTO
{
id = prModel.id,
goodsId = pgModel.goodsId,
sortId = prModel.sort,
name = prModel.name,
pinTuanRecordNums = SqlFunc.Subqueryable<CoreCmsOrder>().Where(s => s.objectId == prModel.id).Count(),
buyPinTuanCount = SqlFunc.Subqueryable<CoreCmsOrderItem>()
.LeftJoin<CoreCmsOrder>((sOrderItem, sOrder) => sOrder.orderId == sOrderItem.orderId)
.Where((sOrderItem, sOrder) => sOrderItem.goodsId == pgModel.goodsId
&& sOrder.orderType == (int)GlobalEnumVars.OrderType.PinTuan
&& sOrder.objectId == prModel.id)
.Sum(p => p.nums),
peopleNumber = prModel.peopleNumber,
timestamp = 0,
startStatus = 0,
goodBrief = goodModel.brief,
goodName = goodModel.name,
goodThumbnail = goodModel.image,
goodImages = goodModel.images,
goodStock = productsModel.stock,
goodViewCount = goodModel.viewCount,
goodUnit = goodModel.unit,
mktPrice = productsModel.mktprice,
pinTuanPrice = productsModel.price,
startTime = prModel.startTime,
endTime = prModel.endTime,
discountAmount = prModel.discountAmount,
maxGoodsNums = prModel.maxGoodsNums,
maxNums = prModel.maxNums,
}).MergeTable()
.OrderByIF(orderByExpression != null, orderByExpression, orderByType)
.With(SqlWith.Null).ToPageListAsync(pageIndex, pageSize, totalCount);
var list = new PageList<PinTuanListDTO>(reuslt, pageIndex, pageSize, totalCount);
return list;
}
#endregion
}
}

View File

@@ -42,7 +42,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -69,7 +69,7 @@ namespace CoreCms.Net.Repository
oldModel.sort = entity.sort;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -85,7 +85,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsArea>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsArea>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;

View File

@@ -54,35 +54,31 @@ namespace CoreCms.Net.Repository
sort = p.sort,
isDel = p.isDel,
createTime = p.createTime
}).ToPageListAsync(pageIndex, pageSize, totalCount);
}).WithCache().ToPageListAsync(pageIndex, pageSize, totalCount);
var list = new PageList<CoreCmsNotice>(page, pageIndex, pageSize, totalCount);
return list;
}
/// <summary>
/// 获取列表首页用
/// 获取首页组件数据
/// </summary>
/// <param name="predicate">判断集合</param>
/// <param name="orderByType">排序方式</param>
/// <param name="pageIndex">当前页面索引</param>
/// <param name="pageSize">分布大小</param>
/// <param name="orderByExpression"></param>
/// <returns></returns>
public async Task<List<CoreCmsNotice>> QueryListAsync(Expression<Func<CoreCmsNotice, bool>> predicate,
Expression<Func<CoreCmsNotice, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1,
int pageSize = 20)
public async Task<List<dynamic>> QueryComponentAsync(Expression<Func<CoreCmsNotice, bool>> predicate)
{
var list = await DbClient.Queryable<CoreCmsNotice>().OrderByIF(orderByExpression != null, orderByExpression, orderByType)
.WhereIF(predicate != null, predicate).Select(p => new CoreCmsNotice
var list = await DbClient.Queryable<CoreCmsNotice>()
.WhereIF(predicate != null, predicate)
.OrderBy(p => p.sort)
.Select(p => (dynamic)new
{
id = p.id,
title = p.title,
type = p.type,
sort = p.sort,
isDel = p.isDel,
createTime = p.createTime
}).ToPageListAsync(pageIndex, pageSize);
p.id,
p.title,
p.type,
p.sort,
p.createTime
})
.WithCache().ToListAsync();
return list;
}

View File

@@ -45,7 +45,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -76,7 +76,7 @@ namespace CoreCms.Net.Repository
oldModel.isOpenSelfDelivery = entity.isOpenSelfDelivery;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -92,7 +92,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsOrderDistributionModel>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsOrderDistributionModel>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;

View File

@@ -43,7 +43,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -73,7 +73,7 @@ namespace CoreCms.Net.Repository
oldModel.sortId = entity.sortId;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -89,7 +89,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsServiceDescription>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsServiceDescription>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;

View File

@@ -43,7 +43,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -76,7 +76,7 @@ namespace CoreCms.Net.Repository
oldModel.isDelete = entity.isDelete;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -92,7 +92,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsSolitaireItems>(id).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsSolitaireItems>(id).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;
@@ -108,7 +108,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Deleteable<CoreCmsSolitaireItems>().In(ids).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<CoreCmsSolitaireItems>().In(ids).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;

View File

@@ -42,7 +42,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Insertable(entity).RemoveDataCache().ExecuteReturnIdentityAsync() > 0;
var bl = await DbClient.Insertable(entity).ExecuteReturnIdentityAsync() > 0;
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
@@ -83,7 +83,7 @@ namespace CoreCms.Net.Repository
oldModel.identificationCode = entity.identificationCode;
//事物处理过程结束
var bl = await DbClient.Updateable(oldModel).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(oldModel).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -99,7 +99,7 @@ namespace CoreCms.Net.Repository
{
var jm = new AdminUiCallBack();
var bl = await DbClient.Updateable(entity).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Updateable(entity).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
@@ -126,7 +126,7 @@ namespace CoreCms.Net.Repository
var ids = new List<int>() { id };
GetIds(all, id, ids);
var bl = await DbClient.Deleteable<SysMenu>().In(ids).RemoveDataCache().ExecuteCommandHasChangeAsync();
var bl = await DbClient.Deleteable<SysMenu>().In(ids).ExecuteCommandHasChangeAsync();
jm.code = bl ? 0 : 1;
jm.msg = bl ? GlobalConstVars.DeleteSuccess : GlobalConstVars.DeleteFailure;