mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2025-12-06 18:03:27 +08:00
【调整】移除后台设置是否会员绑定手机号码的设置。
【新增】新增商城小程序前端商家管理员功能,商家管理员可以通过商家中心查看所有信息。 【调整】商家中心按门店进行过滤,提货单,服务券,订单等,本门店只能处理本门店业务及查看相应数据。 【调整】后台商城配置移除【会员设置】tab,增加【商家设置】tab,将商家相关设置归集到一起。
This commit is contained in:
@@ -18,9 +18,12 @@ using CoreCms.Net.IRepository.UnitOfWork;
|
||||
using CoreCms.Net.IServices;
|
||||
using CoreCms.Net.Loging;
|
||||
using CoreCms.Net.Model.Entities;
|
||||
using CoreCms.Net.Model.Entities.Expression;
|
||||
using CoreCms.Net.Model.ViewModels.UI;
|
||||
using CoreCms.Net.Utility.Helper;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using SqlSugar;
|
||||
using static SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinUserInfoBatchGetResponse.Types;
|
||||
|
||||
|
||||
namespace CoreCms.Net.Services
|
||||
@@ -36,13 +39,20 @@ namespace CoreCms.Net.Services
|
||||
private readonly ICoreCmsOrderItemRepository _orderItemRepository;
|
||||
private readonly ICoreCmsUserRepository _userRepository;
|
||||
private readonly IUnitOfWork _unitOfWork;
|
||||
public CoreCmsBillLadingServices(IUnitOfWork unitOfWork, ICoreCmsBillLadingRepository dal, ICoreCmsClerkRepository clerkRepository, ICoreCmsStoreRepository storeRepository, ICoreCmsOrderItemRepository orderItemRepository, ICoreCmsUserRepository userRepository)
|
||||
private readonly ICoreCmsSettingServices _settingServices;
|
||||
|
||||
private readonly IServiceProvider _serviceProvider;
|
||||
|
||||
|
||||
public CoreCmsBillLadingServices(IUnitOfWork unitOfWork, ICoreCmsBillLadingRepository dal, ICoreCmsClerkRepository clerkRepository, ICoreCmsStoreRepository storeRepository, ICoreCmsOrderItemRepository orderItemRepository, ICoreCmsUserRepository userRepository, IServiceProvider serviceProvider, ICoreCmsSettingServices settingServices)
|
||||
{
|
||||
this._dal = dal;
|
||||
_clerkRepository = clerkRepository;
|
||||
_storeRepository = storeRepository;
|
||||
_orderItemRepository = orderItemRepository;
|
||||
_userRepository = userRepository;
|
||||
_serviceProvider = serviceProvider;
|
||||
_settingServices = settingServices;
|
||||
base.BaseDal = dal;
|
||||
_unitOfWork = unitOfWork;
|
||||
}
|
||||
@@ -95,13 +105,39 @@ namespace CoreCms.Net.Services
|
||||
/// 获取店铺提货单列表
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
public async Task<WebApiCallBack> GetStoreLadingList(int userId, int page, int limit)
|
||||
public async Task<WebApiCallBack> GetStoreLadingList(int userId, int storeId, int page, int limit)
|
||||
{
|
||||
var jm = new WebApiCallBack();
|
||||
|
||||
var clerks = await _clerkRepository.QueryListByClauseAsync(p => p.userId == userId);
|
||||
var storeIds = clerks.Select(p => p.storeId).ToList();
|
||||
var ladingList = await _dal.QueryPageAsync(p => storeIds.Contains(p.storeId) && p.isDel == false, p => p.createTime, OrderByType.Desc, page, limit);
|
||||
var where = PredicateBuilder.True<CoreCmsBillLading>();
|
||||
|
||||
using var container = _serviceProvider.CreateScope();
|
||||
var _userServices = container.ServiceProvider.GetService<ICoreCmsUserServices>();
|
||||
|
||||
var allConfigs = await _settingServices.GetConfigDictionaries();
|
||||
var shopManagerMobile = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShopManagerMobile);
|
||||
|
||||
var user = await _userServices.QueryByClauseAsync(p => p.id == userId);
|
||||
if (user == null)
|
||||
{
|
||||
jm.status = false;
|
||||
jm.msg = "用户获取失败";
|
||||
return jm;
|
||||
}
|
||||
var isManager = !string.IsNullOrEmpty(shopManagerMobile) && shopManagerMobile.Contains(user.mobile);
|
||||
if (isManager)
|
||||
{
|
||||
where = storeId == 0 ? where.And(p => p.isDel == false) : where.And(p => p.isDel == false && p.storeId == storeId);
|
||||
}
|
||||
else
|
||||
{
|
||||
where = where.And(p => p.isDel == false && p.storeId == storeId);
|
||||
//var clerks = await _clerkRepository.QueryListByClauseAsync(p => p.userId == userId);
|
||||
//var storeIds = clerks.Select(p => p.storeId).ToList();
|
||||
//where = where.And(p => storeIds.Contains(p.storeId) && p.isDel == false);
|
||||
}
|
||||
|
||||
var ladingList = await _dal.QueryPageAsync(where, p => p.createTime, OrderByType.Desc, page, limit);
|
||||
|
||||
|
||||
jm.status = true;
|
||||
@@ -186,17 +222,29 @@ namespace CoreCms.Net.Services
|
||||
var data = new List<CoreCmsBillLading>();
|
||||
if (list != null)
|
||||
{
|
||||
if (userId > 0)
|
||||
var userInfo = await _userRepository.QueryByClauseAsync(p => p.id == userId);
|
||||
if (userInfo != null)
|
||||
{
|
||||
var clerks = await _clerkRepository.QueryListByClauseAsync(p => p.userId == userId);
|
||||
if (clerks != null && clerks.Any())
|
||||
var allConfigs = await _settingServices.GetConfigDictionaries();
|
||||
var shopManagerMobile = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.ShopManagerMobile);
|
||||
|
||||
var isManager = !string.IsNullOrEmpty(shopManagerMobile) && shopManagerMobile.Contains(userInfo.mobile);
|
||||
if (isManager)
|
||||
{
|
||||
var storeIds = clerks.Select(p => p.storeId).ToList();
|
||||
foreach (var item in list)
|
||||
data = list;
|
||||
}
|
||||
else
|
||||
{
|
||||
var clerks = await _clerkRepository.QueryListByClauseAsync(p => p.userId == userId);
|
||||
if (clerks != null && clerks.Any())
|
||||
{
|
||||
if (storeIds.Contains(item.storeId))
|
||||
var storeIds = clerks.Select(p => p.storeId).ToList();
|
||||
foreach (var item in list)
|
||||
{
|
||||
data.Add(item);
|
||||
if (storeIds.Contains(item.storeId))
|
||||
{
|
||||
data.Add(item);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -209,7 +257,7 @@ namespace CoreCms.Net.Services
|
||||
item.statusName = EnumHelper.GetEnumDescriptionByValue<GlobalEnumVars.BillLadingStatus>(statusInt);
|
||||
if (item.clerkId > 0)
|
||||
{
|
||||
var userInfo = await _userRepository.QueryByClauseAsync(p => p.id == userId);
|
||||
|
||||
if (userInfo != null)
|
||||
{
|
||||
item.clerkIdName = !string.IsNullOrEmpty(userInfo.nickName)
|
||||
|
||||
Reference in New Issue
Block a user