liaoxujun@qq.com
2024-03-06 2fbf434b439ea3fdd55a587ac853cdbed2788a3e
经销商关联用户等级完成,修改部分版权后台图片
20个文件已修改
2个文件已删除
27064 ■■■■■ 已修改文件
CoreCms.Net.Configuration/SystemSettingConstVars.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Configuration/SystemSettingDictionary.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.IServices/User/ICoreCmsUserGradeServices.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Model/CoreCms.Net.Model.xml 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Model/Entities/Distribution/CoreCmsDistributionPartial.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Model/Entities/User/CoreCmsUserGrade.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Model/bin/Debug/net8.0/CoreCms.Net.Model.xml 13357 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Services/User/CoreCmsUserGradeServices.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Utility/bin/Debug/net8.0/CoreCms.Net.Model.xml 13357 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/Controllers/Distribution/CoreCmsDistributionController.cs 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/Controllers/User/CoreCmsUserGradeController.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/CoreCms.Net.Web.Admin.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/static/images/common/logo.png 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/static/images/common/logo2.png 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/distribution/distributor/edit.html 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/distribution/setting/index.html 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/shop/setting/index.html 63 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/user/login.html 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/create.html 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/details.html 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/edit.html 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/index.html 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CoreCms.Net.Configuration/SystemSettingConstVars.cs
@@ -933,6 +933,13 @@
        public static readonly string GiveCouponNumber = "giveCouponNumber";
        /// <summary>
        /// 分销商对应用户等级KEY 保存后如果是分销审批成功,用户自动切换值该用户组
        /// </summary>
        public static readonly string DictionaryUserGroupKey = "dictionaryUserGroupKey";
    }
}
CoreCms.Net.Configuration/SystemSettingDictionary.cs
@@ -119,6 +119,7 @@
            di.Add(SystemSettingConstVars.DistributionMoney, new DictionaryKeyValues() { sKey = "消费自动成为经销商", sValue = "100" });
            di.Add(SystemSettingConstVars.DistributionGoods, new DictionaryKeyValues() { sKey = "购买商品成为经销商", sValue = "1" });
            di.Add(SystemSettingConstVars.DistributionGoodsId, new DictionaryKeyValues() { sKey = "购买商品成为经销商指定商品序列号", sValue = "0" });
            //邀请好友
            di.Add(SystemSettingConstVars.CommissionType, new DictionaryKeyValues() { sKey = "佣金类型", sValue = "1" });
@@ -269,6 +270,11 @@
            //小程序直播
            di.Add(SystemSettingConstVars.ShowLiveBroadCast, new DictionaryKeyValues() { sKey = "显示小程序直播入口", sValue = "2" });
            //》++++++++++++++++++++++++++++++++++++百分兵法增加++++++++++++++++
            //分销商用户组绑定key 有就绑定,无则不绑定
            di.Add(SystemSettingConstVars.DictionaryUserGroupKey, new DictionaryKeyValues() { sKey = "经销商关联用户组KEY", sValue = "DictionaryUserGroupKey" });
            return di;
        }
CoreCms.Net.IServices/User/ICoreCmsUserGradeServices.cs
@@ -9,6 +9,7 @@
 ***********************************************************************/
using CoreCms.Net.Model.Entities;
using System.Threading.Tasks;
namespace CoreCms.Net.IServices
{
@@ -17,5 +18,19 @@
    /// </summary>
    public interface ICoreCmsUserGradeServices : IBaseServices<CoreCmsUserGrade>
    {
        /// <summary>
        /// 根据key获取用户等级/分组
        /// </summary>
        /// <param name="Key"></param>
        /// <returns></returns>
        public Task<CoreCmsUserGrade> GetUserGradeByValueKey(string Key);
        /// <summary>
        /// 获取默认用户组
        /// </summary>
        /// <returns></returns>
        public Task<CoreCmsUserGrade> GetDefaultUserGrade();
    }
}
CoreCms.Net.Model/CoreCms.Net.Model.xml
@@ -2110,6 +2110,11 @@
                用户等级
            </summary>
        </member>
        <member name="P:CoreCms.Net.Model.Entities.CoreCmsDistribution.areaName">
            <summary>
                区域字符串
            </summary>
        </member>
        <member name="T:CoreCms.Net.Model.Entities.CoreCmsDistributionCondition">
            <summary>
            经销商等级升级条件
@@ -7998,6 +8003,11 @@
            权重优先级
            </summary>
        </member>
        <member name="P:CoreCms.Net.Model.Entities.CoreCmsUserGrade.valueKey">
            <summary>
            Key
            </summary>
        </member>
        <member name="T:CoreCms.Net.Model.Entities.CoreCmsUserLog">
            <summary>
            用户日志
CoreCms.Net.Model/Entities/Distribution/CoreCmsDistributionPartial.cs
@@ -134,5 +134,13 @@
        public int UserGradeId { get; set; } = 0;
        /// <summary>
        ///     区域字符串
        /// </summary>
        [Display(Name = "区域字符串")]
        [SugarColumn(IsIgnore = true)]
        public string areaName { get; set; }
    }
}
CoreCms.Net.Model/Entities/User/CoreCmsUserGrade.cs
@@ -122,7 +122,13 @@
        
        
        public System.Int32 prioritySortId  { get; set; }
        /// <summary>
        /// Key
        /// </summary>
        [Display(Name = "KEY")]
        public string valueKey { get; set; }
    }
}
CoreCms.Net.Model/bin/Debug/net8.0/CoreCms.Net.Model.xml
File was deleted
CoreCms.Net.Services/User/CoreCmsUserGradeServices.cs
@@ -9,12 +9,14 @@
 ***********************************************************************/
using System;
using System.Linq;
using System.Threading.Tasks;
using CoreCms.Net.Configuration;
using CoreCms.Net.IRepository;
using CoreCms.Net.IRepository.UnitOfWork;
using CoreCms.Net.IServices;
using CoreCms.Net.Model.Entities;
using static SKIT.FlurlHttpClient.Wechat.Api.Models.CgibinExpressIntracityUpdateStoreRequest.Types;
namespace CoreCms.Net.Services
@@ -33,7 +35,23 @@
            _unitOfWork = unitOfWork;
        }
        public async Task<CoreCmsUserGrade> GetDefaultUserGrade()
        {
            return await _unitOfWork.GetDbClient().Queryable<CoreCmsUserGrade>().Where(x => x.isDefault == true).WithCache(300).FirstAsync();
        }
        /// <summary>
        /// 获取key
        /// </summary>
        /// <param name="Key"></param>
        /// <returns></returns>
        public async Task<CoreCmsUserGrade> GetUserGradeByValueKey(string Key)
        {
           return await  _unitOfWork.GetDbClient().Queryable<CoreCmsUserGrade>().Where(x=>x.valueKey==Key).WithCache(300).FirstAsync();
        }
    }
}
CoreCms.Net.Utility/bin/Debug/net8.0/CoreCms.Net.Model.xml
File was deleted
CoreCms.Net.Web.Admin/Controllers/Distribution/CoreCmsDistributionController.cs
@@ -15,6 +15,7 @@
using System.Threading.Tasks;
using CoreCms.Net.Configuration;
using CoreCms.Net.Filter;
using CoreCms.Net.IRepository.UnitOfWork;
using CoreCms.Net.IServices;
using CoreCms.Net.Loging;
using CoreCms.Net.Model.Entities;
@@ -28,6 +29,7 @@
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.CodeAnalysis.Operations;
using SqlSugar;
namespace CoreCms.Net.Web.Admin.Controllers
@@ -47,18 +49,31 @@
        private readonly ICoreCmsDistributionGradeServices _distributionGradeServices;
        private readonly ICoreCmsUserServices _userServices;
        private readonly IWebHostEnvironment _webHostEnvironment;
        private readonly ICoreCmsAreaServices _areaServices;
        private readonly ICoreCmsSettingServices _coreCmsSettingServices;
        private readonly IUnitOfWork _unitOfWork;
        /// <summary>
        ///     构造函数
        /// </summary>
        public CoreCmsDistributionController(IWebHostEnvironment webHostEnvironment
            , ICoreCmsDistributionServices coreCmsDistributionServices, ICoreCmsUserGradeServices userGradeServices, ICoreCmsDistributionGradeServices distributionGradeServices, ICoreCmsUserServices userServices)
            , ICoreCmsDistributionServices coreCmsDistributionServices,
            ICoreCmsUserGradeServices userGradeServices,
            ICoreCmsDistributionGradeServices distributionGradeServices,
            ICoreCmsUserServices userServices,
            ICoreCmsAreaServices areaServices,
            ICoreCmsSettingServices coreCmsSettingServices,
            IUnitOfWork unitOfWork)
        {
            _webHostEnvironment = webHostEnvironment;
            _coreCmsDistributionServices = coreCmsDistributionServices;
            _userGradeServices = userGradeServices;
            _distributionGradeServices = distributionGradeServices;
            _userServices = userServices;
            _areaServices = areaServices;
            _coreCmsSettingServices = coreCmsSettingServices;
            _unitOfWork = unitOfWork;
        }
        #region 获取列表============================================================
@@ -213,6 +228,7 @@
                where = where.And(p => p.isDelete == false);
            //获取数据
            var list = await _coreCmsDistributionServices.QueryPageAsync(where, orderEx, orderBy, pageCurrent, pageSize);
            //返回数据
            jm.data = list;
            jm.code = 0;
@@ -384,22 +400,124 @@
                return jm;
            }
            //事物处理过程开始
            oldModel.name = entity.name;
            oldModel.gradeId = entity.gradeId;
            oldModel.mobile = entity.mobile;
            oldModel.weixin = entity.weixin;
            oldModel.qq = entity.qq;
            oldModel.verifyStatus = entity.verifyStatus;
            oldModel.updateTime = DateTime.Now;
            if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) oldModel.verifyTime = DateTime.Now;
            //事物处理过程结束
            var bl = await _coreCmsDistributionServices.UpdateAsync(oldModel);
            jm.code = bl ? 0 : 1;
            jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
            try
            {
                _unitOfWork.BeginTran();
                if (oldModel.verifyStatus != (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes && entity.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes)
                {
                    var allConfigs = await _coreCmsSettingServices.GetConfigDictionaries();
                    var kc = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DictionaryUserGroupKey);
                    var group = await _userGradeServices.GetUserGradeByValueKey(kc);
                    if (group != null)
                    {
                        var olduser = await _userServices.QueryByIdAsync(oldModel.userId);
                        if (olduser != null)
                        {
                            olduser.grade = group.id;
                            olduser.updataTime = DateTime.Now;
                            await _userServices.UpdateAsync(olduser);
            return jm;
                        }
                    }
                    //如果是通过审核
                    oldModel.verifyTime = DateTime.Now;
                }
                else
                if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes && entity.verifyStatus != (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes)
                {
                    //如果是取消审核
                    var allConfigs = await _coreCmsSettingServices.GetConfigDictionaries();
                    var kc = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DictionaryUserGroupKey);
                    var group = await _userGradeServices.GetUserGradeByValueKey(kc);
                    var defgroup = await _userGradeServices.GetDefaultUserGrade();
                    if (defgroup != null)
                    {
                        var olduser = await _userServices.QueryByIdAsync(oldModel.userId);
                        if (olduser != null)
                        {
                            if (olduser.grade == group.id)
                            {
                                if (defgroup != null)
                                {
                                    olduser.grade = defgroup.id;
                                }
                                else
                                {
                                    olduser.grade = 0;
                                }
                                olduser.updataTime = DateTime.Now;
                                await _userServices.UpdateAsync(olduser);
                            }
                        }
                    }
                }
                    oldModel.verifyStatus = entity.verifyStatus;
                    oldModel.updateTime = DateTime.Now;
                    //if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes)
                    //{
                    //    oldModel.verifyTime = DateTime.Now;
                    //}
                    //事物处理过程结束
                    var bl = await _coreCmsDistributionServices.UpdateAsync(oldModel);
                _unitOfWork.CommitTran();
                jm.code = bl ? 0 : 1;
                    jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
                    return jm;
                }
            catch (Exception )
            {
                _unitOfWork.RollbackTran();
                jm.code =  1;
                jm.msg = GlobalConstVars.EditFailure;
                return jm;
            }
            //if(oldModel.verifyStatus!= (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes&& entity.verifyStatus== (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes)
            //{
            //    var allConfigs = await _coreCmsSettingServices.GetConfigDictionaries();
            //    var kc = CommonHelper.GetConfigDictionary(allConfigs, SystemSettingConstVars.DictionaryUserGroupKey);
            //    var group = await _userGradeServices.GetUserGradeByValueKey(kc);
            //    //如果是通过审核
            //    oldModel.verifyTime = DateTime.Now;
            //}
            //else
            //    if(oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes && entity.verifyStatus != (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes)
            //{
            //    //如果是取消审核
            //}
            //oldModel.verifyStatus = entity.verifyStatus;
            //oldModel.updateTime = DateTime.Now;
            ////if (oldModel.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes)
            ////{
            ////    oldModel.verifyTime = DateTime.Now;
            ////}
            ////事物处理过程结束
            //var bl = await _coreCmsDistributionServices.UpdateAsync(oldModel);
            //jm.code = bl ? 0 : 1;
            //jm.msg = bl ? GlobalConstVars.EditSuccess : GlobalConstVars.EditFailure;
            //return jm;
        }
        #endregion
CoreCms.Net.Web.Admin/Controllers/User/CoreCmsUserGradeController.cs
@@ -301,6 +301,7 @@
            oldModel.expenditureMoney = entity.expenditureMoney;
            oldModel.rechargeAmount = entity.rechargeAmount;
            oldModel.prioritySortId = entity.prioritySortId;
            oldModel.valueKey= entity.valueKey;
            //事物处理过程结束
            var bl = await _coreCmsUserGradeServices.UpdateAsync(oldModel, true);
CoreCms.Net.Web.Admin/CoreCms.Net.Web.Admin.xml
@@ -926,7 +926,7 @@
                经销商表
            </summary>
        </member>
        <member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsDistributionController.#ctor(Microsoft.AspNetCore.Hosting.IWebHostEnvironment,CoreCms.Net.IServices.ICoreCmsDistributionServices,CoreCms.Net.IServices.ICoreCmsUserGradeServices,CoreCms.Net.IServices.ICoreCmsDistributionGradeServices,CoreCms.Net.IServices.ICoreCmsUserServices)">
        <member name="M:CoreCms.Net.Web.Admin.Controllers.CoreCmsDistributionController.#ctor(Microsoft.AspNetCore.Hosting.IWebHostEnvironment,CoreCms.Net.IServices.ICoreCmsDistributionServices,CoreCms.Net.IServices.ICoreCmsUserGradeServices,CoreCms.Net.IServices.ICoreCmsDistributionGradeServices,CoreCms.Net.IServices.ICoreCmsUserServices,CoreCms.Net.IServices.ICoreCmsAreaServices,CoreCms.Net.IServices.ICoreCmsSettingServices,CoreCms.Net.IRepository.UnitOfWork.IUnitOfWork)">
            <summary>
                构造函数
            </summary>
CoreCms.Net.Web.Admin/wwwroot/static/images/common/logo.png

CoreCms.Net.Web.Admin/wwwroot/static/images/common/logo2.png

CoreCms.Net.Web.Admin/wwwroot/views/distribution/distributor/edit.html
@@ -1,3 +1,12 @@
<!--
 * @FilePath: edit.html
 * @Author: 小飞侠
 * @Date: 2024-02-28 13:48:49
 * @LastEditors: Please set LastEditors
 * @LastEditTime: 2024-03-06 11:35:53
 * Copyright: 2024  MinTinge CO.,LTD. All Rights Reserved.
 * @Descripttion: 写入你的描述
-->
<script type="text/html" template lay-done="layui.data.sendParams(d);">
    <div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-CoreCmsDistribution-editForm" id="LAY-app-CoreCmsDistribution-editForm">
        <input type="hidden" name="id" value="{{d.params.data.model.id || '' }}" />
@@ -15,16 +24,22 @@
        </div>
        <div class="layui-form-item">
            <label for="weixin" class="layui-form-label">微信号</label>
            <label for="profession" class="layui-form-label">所属行业</label>
            <div class="layui-input-inline">
                <input name="weixin" class="layui-input" placeholder="请输入微信号" lay-reqText="请输入微信号" value="{{d.params.data.model.weixin || '' }}" />
                <input name="profession" class="layui-input" placeholder="所属行业" lay-reqText="所属行业" value="{{d.params.data.model.profession || '' }}" />
            </div>
            <label for="qq" class="layui-form-label">qq号</label>
            <label for="sales" class="layui-form-label layui-form-required">年销售额</label>
            <div class="layui-input-inline">
                <input name="qq" class="layui-input" placeholder="请输入qq号" lay-reqText="请输入qq号" value="{{d.params.data.model.qq || '' }}" />
                <input name="sales" class="layui-input" placeholder="年销售额" lay-reqText="年销售额" lay-verify="required|number" value="{{d.params.data.model.sales || '0' }}" />
            </div>
        </div>
        <div class="layui-form-item">
            <label for="storeName" class="layui-form-label">店铺名称</label>
            <div class="layui-input-inline">
                <input name="storeName" class="layui-input" placeholder="店铺名称" lay-reqText="店铺名称" value="{{d.params.data.model.storeName || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
            <label for="gradeId" class="layui-form-label  layui-form-required">分销等级</label>
            <div class="layui-input-inline">
@@ -37,7 +52,6 @@
            </div>
            <label for="verifyStatus" class="layui-form-label  layui-form-required">审核状态</label>
            <div class="layui-input-inline">
                <select name="verifyStatus" id="verifyStatus">
                    <option value="">请选择</option>
                    {{# layui.each(d.params.data.distributionVerifyStatus, function(index, item){ }}
CoreCms.Net.Web.Admin/wwwroot/views/distribution/setting/index.html
@@ -62,6 +62,13 @@
                                                <input type="radio" lay-filter="distributionStore" name="distributionStore" value="2" title="不开启" {{d.data.configs['distributionStore']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['dictionaryUserGroupKey']['sKey']}}:</label>
                                            <div class="layui-input-inline ">
                                                <input type="text" name="dictionaryUserGroupKey" value="{{d.data.configs['dictionaryUserGroupKey']['sValue']}}"  autocomplete="off" placeholder="" class="layui-input">
                                            </div>
                                            <div class="layui-form-mid layui-word-aux">*非必要不修改*</div>
                                        </div>
                                        <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
                                            <legend>成为经销商</legend>
CoreCms.Net.Web.Admin/wwwroot/views/shop/setting/index.html
@@ -52,8 +52,8 @@
                                    <div class="layui-form coreshop-form">
                                        <blockquote class="layui-elem-quote" style="padding-top: 20px;line-height: 30px;">
                                            1、如果开启【显示门店列表】模块,则微信小程序审核如果发现可能会失败,并提示“<text style="color: #ff0000;">【小程序涉及多个商家提供商品的在线交易及配送,请补充选择:电商平台-电商平台类目。】</text>”,可先关闭,审核后再开启。<br />
                                            2、如果开启【显示充值】模块,则微信小程序审核如果发现可能会失败,并提示“<text style="color: #ff0000;">【小程序页面内容涉及账户充值服务,需补充商家自营-预付卡销售-发行方类目。】</text>”,可先关闭,审核后再开启。<br />
                                            2、如果开启【是否允许提现】模块,则微信小程序审核如果发现可能会失败,并提示“<text style="color: #ff0000;">【小程序页面内容涉嫌收集用户信息,包括但不限于银行卡,手机号码等。】</text>”,可先关闭,审核后再开启。<br />
                                            <!-- 2、如果开启【显示充值】模块,则微信小程序审核如果发现可能会失败,并提示“<text style="color: #ff0000;">【小程序页面内容涉及账户充值服务,需补充商家自营-预付卡销售-发行方类目。】</text>”,可先关闭,审核后再开启。<br />
                                            2、如果开启【是否允许提现】模块,则微信小程序审核如果发现可能会失败,并提示“<text style="color: #ff0000;">【小程序页面内容涉嫌收集用户信息,包括但不限于银行卡,手机号码等。】</text>”,可先关闭,审核后再开启。<br /> -->
                                        </blockquote>
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showStoresSwitch']['sKey']}}:</label>
@@ -62,7 +62,7 @@
                                                <input type="radio" lay-filter="showStoresSwitch" name="showStoresSwitch" value="2" title="不开启" {{d.data.configs['showStoresSwitch']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showStoreBalanceRechargeSwitch']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
                                                <input type="radio" lay-filter="showStoreBalanceRechargeSwitch" name="showStoreBalanceRechargeSwitch" value="1" title="开启" {{d.data.configs['showStoreBalanceRechargeSwitch']['sValue']==="1" ? 'checked':''}}>
@@ -75,8 +75,8 @@
                                                <input type="radio" lay-filter="isAllowWithdrawCash" name="isAllowWithdrawCash" value="1" title="开启" {{d.data.configs['isAllowWithdrawCash']['sValue']==="1" ? 'checked':''}}>
                                                <input type="radio" lay-filter="isAllowWithdrawCash" name="isAllowWithdrawCash" value="2" title="不开启" {{d.data.configs['isAllowWithdrawCash']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <blockquote class="layui-elem-quote" style="padding-top: 20px;line-height: 30px;">
                                        </div> -->
                                        <!-- <blockquote class="layui-elem-quote" style="padding-top: 20px;line-height: 30px;">
                                            控制首页是否弹出弹窗广告
                                        </blockquote>
                                        <div class="layui-form-item">
@@ -93,7 +93,7 @@
                                                <input type="text" name="indexPopupWindowHrefUrl" value="{{d.data.configs['indexPopupWindowHrefUrl']['sValue']}}" lay-verify="title" autocomplete="off" placeholder="请输入链接地址" class="layui-input">
                                            </div>
                                            <div class="layui-form-mid layui-word-aux">点击弹窗广告后跳转的小程序地址或者外部URl地址(需要在小程序业务域名增加外部URL的域名)</div>
                                        </div>
                                        </div> -->
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['indexPopupWindowImageUrl']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-5">
@@ -128,27 +128,31 @@
                                                <input type="radio" lay-filter="showVas" name="showVas" value="2" title="不开启" {{d.data.configs['showVas']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                        <!-- 服务商品-->
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['servicePackage']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
                                                <input type="radio" lay-filter="servicePackage" name="servicePackage" value="1" title="开启" {{d.data.configs['servicePackage']['sValue']==="1" ? 'checked':''}}>
                                                <input type="radio" lay-filter="servicePackage" name="servicePackage" value="2" title="不开启" {{d.data.configs['servicePackage']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                        </div> -->
                                        <!-- 优惠券-->
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showCoupon']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
                                                <input type="radio" lay-filter="showCoupon" name="showCoupon" value="1" title="开启" {{d.data.configs['showCoupon']['sValue']==="1" ? 'checked':''}}>
                                                <input type="radio" lay-filter="showCoupon" name="showCoupon" value="2" title="不开启" {{d.data.configs['showCoupon']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                        </div> -->
                                        <!-- 拼团-->
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showPinTuan']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
                                                <input type="radio" lay-filter="showPinTuan" name="showPinTuan" value="1" title="开启" {{d.data.configs['showPinTuan']['sValue']==="1" ? 'checked':''}}>
                                                <input type="radio" lay-filter="showPinTuan" name="showPinTuan" value="2" title="不开启" {{d.data.configs['showPinTuan']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        </div> -->
                                        <!-- 秒杀-->
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showSeckill']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
@@ -156,6 +160,7 @@
                                                <input type="radio" lay-filter="showSeckill" name="showSeckill" value="2" title="不开启" {{d.data.configs['showSeckill']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <!-- 团购按钮-->
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showGroupBuying']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
@@ -163,21 +168,23 @@
                                                <input type="radio" lay-filter="showGroupBuying" name="showGroupBuying" value="2" title="不开启" {{d.data.configs['showGroupBuying']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                        <!-- 接龙按钮-->
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showSolitaire']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
                                                <input type="radio" lay-filter="showSolitaire" name="showSolitaire" value="1" title="开启" {{d.data.configs['showSolitaire']['sValue']==="1" ? 'checked':''}}>
                                                <input type="radio" lay-filter="showSolitaire" name="showSolitaire" value="2" title="不开启" {{d.data.configs['showSolitaire']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                        </div> -->
                                        <!-- 签到按钮-->
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showCalendar']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
                                                <input type="radio" lay-filter="showCalendar" name="showCalendar" value="1" title="开启" {{d.data.configs['showCalendar']['sValue']==="1" ? 'checked':''}}>
                                                <input type="radio" lay-filter="showCalendar" name="showCalendar" value="2" title="不开启" {{d.data.configs['showCalendar']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        <div class="layui-form-item">
                                        </div> -->
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['showCustomForm']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-7">
                                                <input type="radio" lay-filter="showCustomForm" name="showCustomForm" value="1" title="开启" {{d.data.configs['showCustomForm']['sValue']==="1" ? 'checked':''}}>
@@ -190,7 +197,7 @@
                                                <input type="radio" lay-filter="showLiveBroadCast" name="showLiveBroadCast" value="1" title="开启" {{d.data.configs['showLiveBroadCast']['sValue']==="1" ? 'checked':''}}>
                                                <input type="radio" lay-filter="showLiveBroadCast" name="showLiveBroadCast" value="2" title="不开启" {{d.data.configs['showLiveBroadCast']['sValue']==="2" ? 'checked':''}}>
                                            </div>
                                        </div>
                                        </div> -->
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">&nbsp;</label>
                                            <div class="layui-input-block">
@@ -282,7 +289,7 @@
                                            </div>
                                            <div class="layui-form-mid layui-word-aux">多个【搜索发现】关键字请用 | 分割</div>
                                        </div>
                                        <div class="layui-form-item">
                                        <!-- <div class="layui-form-item">
                                            <label class="layui-form-label">{{d.data.configs['cateStyle']['sKey']}}:</label>
                                            <div class="layui-input-inline layui-inline-12 classifyimg">
                                                <div class="classifyimg-item">
@@ -307,7 +314,7 @@
                                                    3、二级分类图标尺寸建议:60px*60px<br />
                                                </div>
                                            </div>
                                        </div>
                                        </div> -->
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">&nbsp;</label>
                                            <div class="layui-input-block">
@@ -479,7 +486,7 @@
                                            <div class="layui-form-mid layui-word-aux">订单催付款时间,单位为【分钟】,请设置10分钟以上时间,因为催付款任务5分钟执行一次</div>
                                        </div>
                                        <blockquote class="layui-elem-quote">
                                        <!-- <blockquote class="layui-elem-quote">
                                            佣金通道
                                        </blockquote>
                                        <div class="layui-form-item">
@@ -499,9 +506,9 @@
                                                【先代理后分销】:指先计算代理分佣逻辑是否满足,如果是则只走代理分佣逻辑,如果不是,验证之后则继续执行三级分销分佣逻辑。(必须要开启代理模块,分销模块)<br />
                                                【先分销后代理】:指先计算是否三级分销满足,满足则只计算三级分级分销,如果不满足再继续执行代理分佣逻辑。(必须要开启代理模块,分销模块)<br />
                                            </div>
                                        </div>
                                        </div> -->
                                        <blockquote class="layui-elem-quote">
                                        <!-- <blockquote class="layui-elem-quote">
                                            同城配送运费设置
                                        </blockquote>
                                        <div class="layui-form-item">
@@ -552,7 +559,7 @@
                                                <input type="number" min="0" max="999999" name="intraCityServiceFreeCredit" value="{{d.data.configs['intraCityServiceFreeCredit']['sValue']}}" lay-verify="title|number" autocomplete="off" placeholder="请输入正整数" class="layui-input" list="defaultNumbers">
                                            </div>
                                            <div class="layui-form-mid layui-word-aux">订单超过多少钱,免运费,此设置超过0之后,条件满足的情况下以上的距离计算将失效。</div>
                                        </div>
                                        </div> -->
                                        <div class="layui-form-item">
                                            <label class="layui-form-label">&nbsp;</label>
@@ -722,7 +729,7 @@
                                <div class="layui-tab-item">
                                    <div class="layui-form coreshop-form">
                                        <blockquote class="layui-elem-quote">
                                        <!-- <blockquote class="layui-elem-quote">
                                            关闭后,个人中心将不显示【邀请好友】按钮及【天天分钱】板块通道。
                                        </blockquote>
                                        <div class="layui-form-item">
@@ -760,7 +767,7 @@
                                            <div class="layui-input-inline layui-inline-2">
                                                <input type="text" name="commissionThird" value="{{d.data.configs['commissionThird']['sValue']}}" lay-verify="title|money" autocomplete="off" placeholder="%" class="layui-input">
                                            </div>
                                        </div>
                                        </div> -->
                                        <blockquote class="layui-elem-quote">
                                            邀请一个好友注册成功,赠送多少积分
@@ -919,7 +926,7 @@
                                <div class="layui-tab-item">
                                    <div class="layui-form coreshop-form">
                                        <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;"> <legend>新人设置</legend></fieldset>
                                        <!-- <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;"> <legend>新人设置</legend></fieldset>
                                        <blockquote class="layui-elem-quote">
                                            注意:当前发送优惠券,只判断了选择的优惠券是否在有效期,另外并未计算优惠券剩余多少可领取与新人放发放数量对比限制。
                                        </blockquote>
@@ -959,7 +966,7 @@
                                            <div class="layui-input-block">
                                                <button class="layui-btn" lay-submit="" lay-filter="save">保存更改</button>
                                            </div>
                                        </div>
                                        </div> -->
                                    </div>
                                </div>
CoreCms.Net.Web.Admin/wwwroot/views/user/login.html
@@ -19,7 +19,7 @@
                <div class="swiper-container pt-5 pb-5">
                    <div class="swiper-wrapper text-center">
                        <div class="swiper-slide testimony__slide">
                            <p class=mb-5><strong class="super-lead color--white">“是否有核心,由你来确定。”</strong>
                            <p class=mb-5><strong class="super-lead color--white">“百分,从这里开始”</strong>
                        </div>
                    </div>
                </div>
@@ -28,7 +28,7 @@
        <div class="col-lg-5 d-flex align-items-md-baseline py-5 background--light vh-md-100 overflow-auto">
            <div class="w-75 mt-3 mt-md-5 mx-auto overflow-hidden px-md-5 px-lg-3">
                <header class="mb-5">
                    <img src='/static/images/common/logo.png' style="height: 80px;">
                    <img src='/static/images/common/logo.png' style="height: 80px; object-fit: contain;">
                </header>
                <main class="main">
                    <div class="form-validate layui-form">
@@ -50,7 +50,7 @@
                    </div>
                </main>
                <footer class=mt-5>
                    <small>©2020 - <a href="http://www.coreshop.cn/" target="_blank">CoreShop.Cn</a> All rights reserved. <br><span>推荐使用 <a href="//www.microsoft.com/zh-cn/edge" target=_blank>新版 Microsoft Edge 浏览器</a> 访问本系统</span></small>
                    <small>©2024 - <a href="http://www.cyin.cn/" target="_blank">www.cyin.cn</a> All rights reserved. <br><span>推荐使用 <a href="//www.microsoft.com/zh-cn/edge" target=_blank>新版 Microsoft Edge 浏览器</a> 访问本系统</span></small>
                </footer>
            </div>
        </div>
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/create.html
@@ -2,11 +2,17 @@
    <div class="layui-form coreshop-form" lay-filter="LAY-app-CoreCmsUserGrade-createForm" id="LAY-app-CoreCmsUserGrade-createForm">
        <div class="layui-form-item">
            <label for="title" class="layui-form-label">标题</label>
            <label for="title" class="layui-form-label layui-form-required">标题</label>
            <div class="layui-input-inline">
                <input name="title" id="title" lay-verify="required|verifytitle" class="layui-input" lay-reqText="请输入【标题】" />
            </div>
        </div>
        <div class="layui-form-item">
            <label for="valueKey" class="layui-form-label">Key值</label>
            <div class="layui-input-inline">
                <input name="valueKey" id="valueKey" lay-verify="verifytitle" class="layui-input" lay-reqText="请输入【Key值】" />
            </div>
        </div>
        <div class="layui-form-item">
            <label for="isDefault" class="layui-form-label">是否默认</label>
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/details.html
@@ -26,6 +26,15 @@
            <tr>
                <td>
                    <label for="valueKey">key值</label>
                </td>
                <td>
                    {{ d.params.data.valueKey || '' }}
                </td>
            </tr>
            <tr>
                <td>
                    <label for="isDefault">是否默认</label>
                </td>
                <td>
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/edit.html
@@ -1,3 +1,12 @@
<!--
 * @FilePath: edit.html
 * @Author: 小飞侠
 * @Date: 2024-02-28 13:48:50
 * @LastEditors: Please set LastEditors
 * @LastEditTime: 2024-03-06 10:03:25
 * Copyright: 2024  MinTinge CO.,LTD. All Rights Reserved.
 * @Descripttion: 用户组创建
-->
<script type="text/html" template lay-done="layui.data.sendParams(d);">
    <div class="layui-form coreshop-form" lay-filter="LAY-app-CoreCmsUserGrade-editForm" id="LAY-app-CoreCmsUserGrade-editForm">
        <input type="hidden" name="id" id="id" value="{{d.params.data.id || '' }}" />
@@ -7,6 +16,12 @@
                <input name="title" id="title" lay-verType="tips" lay-verify="required|verifytitle" class="layui-input" lay-reqText="请输入【标题】" value="{{d.params.data.title || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
            <label for="valueKey" class="layui-form-label">key值</label>
            <div class="layui-input-inline">
                <input name="valueKey" id="valueKey" lay-verType="tips" lay-verify="verifytitle" class="layui-input" lay-reqText="请输入【key值】" value="{{d.params.data.valueKey || '' }}" />
            </div>
        </div>
        <div class="layui-form-item">
            <label for="isDefault" class="layui-form-label">是否默认</label>
CoreCms.Net.Web.Admin/wwwroot/views/user/usergrade/index.html
@@ -99,7 +99,7 @@
                    cols: [
                        [
                            //{ type: "checkbox", fixed: "left" },
                            { field: 'id', title: '序列', sort: false, width: 60 },
                            { field: 'id', title: '序列', sort: false, width: 60 },
                            { field: 'title', title: '标题', sort: false },
                            { field: 'isDefault', title: '是否默认', width: 105, templet: '#switch_isDefault', sort: false, unresize: true },
                            { field: 'isOpenUpgrade', title: '开启自动升级', width: 95, templet: '#switch_isOpenUpgrade', sort: false, unresize: true },
@@ -107,6 +107,7 @@
                            { field: 'expenditureMoney', title: '订单消费金额', sort: false, width: 105 },
                            { field: 'rechargeAmount', title: '充值总金额', sort: false, width: 105 },
                            { field: 'prioritySortId', title: '权重优先级', sort: false,width: 105 },
                            { field: 'valueKey', title: 'Key值', sort: false },
                            { width: 142, align: 'center', title: '操作', fixed: 'right', toolbar: '#LAY-app-CoreCmsUserGrade-tableBox-bar' }
                        ]
                    ]