| | |
| | | //经销商名称 nvarchar |
| | | var name = Request.Form["name"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(name)) where = where.And(p => p.name.Contains(name)); |
| | | //分销等级 int |
| | | //经销等级 int |
| | | var gradeId = Request.Form["gradeId"].FirstOrDefault().ObjectToInt(0); |
| | | if (gradeId > 0) where = where.And(p => p.gradeId == gradeId); |
| | | //用户等级 int |
| | |
| | | { |
| | | where = where.And(p => p.buyUserNickName.Contains(buyUserNickName)); |
| | | } |
| | | //分销用户昵称 nvarchar |
| | | //经销用户昵称 nvarchar |
| | | var distributorName = Request.Form["distributorName"].FirstOrDefault(); |
| | | if (!string.IsNullOrEmpty(distributorName)) |
| | | { |
| | |
| | | namespace CoreCms.Net.Web.Admin.Controllers |
| | | { |
| | | /// <summary> |
| | | /// 分销设置表 |
| | | /// 经销设置表 |
| | | ///</summary> |
| | | [Description("分销设置表")] |
| | | [Description("经销设置表")] |
| | | [Route("api/[controller]/[action]")] |
| | | [ApiController] |
| | | [RequiredErrorForAdmin] |
| | |
| | | //获取品牌 |
| | | var brands = await _brandServices.QueryAsync(true, true); |
| | | |
| | | //获取商品分销方式 |
| | | //获取商品经销方式 |
| | | var productsDistributionType = EnumHelper.EnumToList<GlobalEnumVars.ProductsDistributionType>(); |
| | | |
| | | jm.data = new |
| | |
| | | //获取用户等级 |
| | | var userGrade = await _userGradeServices.QueryAsync(); |
| | | |
| | | //获取商品分销enum |
| | | //获取商品经销enum |
| | | var productsDistributionType = EnumHelper.EnumToList<GlobalEnumVars.ProductsDistributionType>(); |
| | | |
| | | jm.data = new |
| | |
| | | var products = await _productsServices.QueryListByClauseAsync(p => p.goodsId == model.id && p.isDel == false); |
| | | //扩展信息 |
| | | var categoryExtend = await _categoryExtendServices.QueryListByClauseAsync(p => p.goodsId == model.id); |
| | | //获取商品分销enum |
| | | //获取商品经销enum |
| | | var productsDistributionType = EnumHelper.EnumToList<GlobalEnumVars.ProductsDistributionType>(); |
| | | |
| | | //获取参数列表 |
| | |
| | | var pIds = products.Select(p => p.id).ToList(); |
| | | if (pIds.Any()) |
| | | { |
| | | // 获取商品分销明细 |
| | | // 获取商品经销明细 |
| | | var pds = await _productsDistributionServices.QueryListByClauseAsync(p => pIds.Contains(p.productsId), p => p.id, OrderByType.Asc); |
| | | products.ForEach(p => |
| | | { |
| | |
| | | await _productsServices.QueryListByClauseAsync(p => p.goodsId == model.id && p.isDel == false); |
| | | //扩展信息 |
| | | var categoryExtend = await _categoryExtendServices.QueryListByClauseAsync(p => p.goodsId == model.id); |
| | | //获取商品分销enum |
| | | //获取商品经销enum |
| | | var productsDistributionType = EnumHelper.EnumToList<GlobalEnumVars.ProductsDistributionType>(); |
| | | |
| | | |
| | |
| | | var pIds = products.Select(p => p.id).ToList(); |
| | | if (pIds.Any()) |
| | | { |
| | | // 获取商品分销明细 |
| | | // 获取商品经销明细 |
| | | var pds = await _productsDistributionServices.QueryListByClauseAsync(p => pIds.Contains(p.productsId), p => p.id, OrderByType.Asc); |
| | | products.ForEach(p => |
| | | { |
| | |
| | | <html> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <title>百分兵法后台管理</title> |
| | | <title>百分兵法订单管理系统</title> |
| | | <meta name="keywords" content="百分兵法商城系统" /> |
| | | <meta name="description" content="作业本销售,生成制作" /> |
| | | <meta name="renderer" content="webkit"> |
| | |
| | | <input name="mobile" lay-verify="required|phone" class="layui-input" placeholder="请输入手机号" lay-reqText="请输入手机号" /> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="profession" class="layui-form-label">所属行业</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="profession" class="layui-input" placeholder="所属行业" lay-reqText="所属行业" value="{{ '文具店' }}" /> |
| | | </div> |
| | | <label for="sales" class="layui-form-label layui-form-required">年销售额</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="sales" class="layui-input" placeholder="年销售额" lay-reqText="年销售额" lay-verify="required|number" value="{{ '0' }}" /> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label for="weixin" class="layui-form-label">微信号</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="weixin" class="layui-input" placeholder="请输入微信号" lay-reqText="请输入微信号" /> |
| | | </div> |
| | | <label for="qq" class="layui-form-label">qq号</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="qq" class="layui-input" placeholder="请输入qq号" lay-reqText="请输入qq号" /> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label for="gradeId" class="layui-form-label layui-form-required">分销等级</label> |
| | | <label for="gradeId" class="layui-form-label layui-form-required">经销等级</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="gradeId" lay-verify="required"> |
| | | <option value="">请选择</option> |
| | |
| | | {{ d.params.data.model.name || '' }} |
| | | </td> |
| | | <td> |
| | | <label for="gradeId">分销等级</label> |
| | | <label for="gradeId">经销等级</label> |
| | | </td> |
| | | <td> |
| | | {{# layui.each(d.params.data.grades, function(index, item){ }} |
| | |
| | | |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label for="gradeId" class="layui-form-label layui-form-required">分销等级</label> |
| | | <label for="gradeId" class="layui-form-label layui-form-required">经销等级</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="gradeId" lay-verify="required"> |
| | | <option value="">请选择</option> |
| | |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <select name="gradeId"> |
| | | <option value="">请选择分销等级</option> |
| | | <option value="">请选择经销等级</option> |
| | | {{# layui.each(indexData.grades, function(index, item){ }} |
| | | <option value="{{ item.id }}">{{ item.name }}</option> |
| | | {{# }); }} |
| | |
| | | }, |
| | | { field: 'name', title: '经销商名称', sort: false, width: 105 }, |
| | | { |
| | | field: 'gradeId', title: '分销等级', sort: false, width: 90, templet: function (data) { |
| | | field: 'gradeId', title: '经销等级', sort: false, width: 90, templet: function (data) { |
| | | for (var i = 0; i < d.data.grades.length; i++) { |
| | | if (d.data.grades[i].id == data.gradeId) { |
| | | return d.data.grades[i].name; |
| | |
| | | } |
| | | } |
| | | }, |
| | | //{ field: 'gradeId', title: '分销等级', sort: false, width: 105 }, |
| | | //{ field: 'gradeId', title: '经销等级', sort: false, width: 105 }, |
| | | { field: 'mobile', title: '手机号', sort: false, width: 100 }, |
| | | // { field: 'weixin', title: '微信号', sort: false, width: 100 }, |
| | | { field: 'profession', title: '行业', sort: false, width: 100 }, |
| | |
| | | { field: 'name', title: '等级名称', sort: false, width: 205 }, |
| | | { field: 'isDefault', title: '是否默认等级', width: 95, templet: '#switch_isDefault', sort: false, unresize: true }, |
| | | { field: 'isAutoUpGrade', title: '是否自动升级', width: 95, templet: '#switch_isAutoUpGrade', sort: false, unresize: true }, |
| | | { field: 'sortId', title: '等级排序(分销等级排序越大,等级越高)', sort: false, width: 250 }, |
| | | { field: 'sortId', title: '等级排序(经销等级排序越大,等级越高)', sort: false, width: 250 }, |
| | | { field: 'description', title: '等级说明', sort: false }, |
| | | { width: 162, align: 'center', title: '操作', fixed: 'right', toolbar: '#LAY-app-CoreCmsDistributionGrade-tableBox-bar' } |
| | | ] |
| | |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <select name="isDelete"> |
| | | <option value="">请选择分销用户层级</option> |
| | | <option value="">请选择经销用户层级</option> |
| | | <option value="1">一级用户</option> |
| | | <option value="2">二级用户</option> |
| | | <option value="3">三级用户</option> |
| | |
| | | } |
| | | } |
| | | }, |
| | | { field: 'level', title: '分销用户层级', sort: false, width: 105 }, |
| | | { field: 'level', title: '经销用户层级', sort: false, width: 105 }, |
| | | { field: 'createTime', title: '创建时间', width: 130, sort: false }, |
| | | { field: 'updateTime', title: '更新时间', width: 130, sort: false }, |
| | | //{ field: 'isDelete', title: '是否删除', width: 95, templet: '#switch_isDelete', sort: false, unresize: true }, |
| | |
| | | <div class="layui-col-md12"> |
| | | <div class="layui-card"> |
| | | <!--<div class="layui-card-header"> |
| | | 分销设置 |
| | | 经销设置 |
| | | </div>--> |
| | | |
| | | <div class="layui-card-body"> |
| | | |
| | | <div class="layui-tab layui-tab-card" lay-filter="setting"> |
| | | <ul class="layui-tab-title"> |
| | | <li lay-id="distributionSet" class="layui-this">分销设置</li> |
| | | <li lay-id="distributionSet" class="layui-this">经销设置</li> |
| | | <li lay-id="userAgreement ">用户须知</li> |
| | | <li lay-id="distributionAgreement">分销协议</li> |
| | | <li lay-id="distributionAgreement">经销协议</li> |
| | | </ul> |
| | | <div class="layui-tab-content"> |
| | | |
| | |
| | | } |
| | | }); |
| | | |
| | | //初始化分销设置是否选中商品 |
| | | //初始化经销设置是否选中商品 |
| | | if (d.data.configs.distributionGoodsId) { |
| | | var obj = d.data.configs.distributionGoodsId; |
| | | if (obj.sValue) { |
| | |
| | | <label class="layui-form-label">{{d.data.configs['commissionChannel']['sKey']}}:</label> |
| | | <div class="layui-input-inline layui-inline-12"> |
| | | <input type="radio" lay-filter="commissionChannel" name="commissionChannel" value="1" title="仅代理" {{d.data.configs['commissionChannel']['sValue']==="1" ? 'checked':''}}> |
| | | <input type="radio" lay-filter="commissionChannel" name="commissionChannel" value="2" title="仅分销" {{d.data.configs['commissionChannel']['sValue']==="2" ? 'checked':''}}> |
| | | <input type="radio" lay-filter="commissionChannel" name="commissionChannel" value="3" title="先代理后分销" {{d.data.configs['commissionChannel']['sValue']==="3" ? 'checked':''}}> |
| | | <input type="radio" lay-filter="commissionChannel" name="commissionChannel" value="4" title="先分销后代理" {{d.data.configs['commissionChannel']['sValue']==="4" ? 'checked':''}}> |
| | | <input type="radio" lay-filter="commissionChannel" name="commissionChannel" value="2" title="仅经销" {{d.data.configs['commissionChannel']['sValue']==="2" ? 'checked':''}}> |
| | | <input type="radio" lay-filter="commissionChannel" name="commissionChannel" value="3" title="先代理后经销" {{d.data.configs['commissionChannel']['sValue']==="3" ? 'checked':''}}> |
| | | <input type="radio" lay-filter="commissionChannel" name="commissionChannel" value="4" title="先经销后代理" {{d.data.configs['commissionChannel']['sValue']==="4" ? 'checked':''}}> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">说明:</label> |
| | | <div class="layui-form-mid layui-word-aux"> |
| | | 【仅代理】指只计算代理分佣逻辑,如果代理分佣逻辑不满足而不继续执行。(必须要开启代理模块)<br /> |
| | | 【仅分销】指只计算三级分销佣金,如果三级分佣模式不满足则不继续执行。(必须要开启分销模块,此分销模块不是邀请好友的三级佣金模式)<br /> |
| | | 【先代理后分销】:指先计算代理分佣逻辑是否满足,如果是则只走代理分佣逻辑,如果不是,验证之后则继续执行三级分销分佣逻辑。(必须要开启代理模块,分销模块)<br /> |
| | | 【先分销后代理】:指先计算是否三级分销满足,满足则只计算三级分级分销,如果不满足再继续执行代理分佣逻辑。(必须要开启代理模块,分销模块)<br /> |
| | | 【仅经销】指只计算三级经销佣金,如果三级分佣模式不满足则不继续执行。(必须要开启经销模块,此经销模块不是邀请好友的三级佣金模式)<br /> |
| | | 【先代理后经销】:指先计算代理分佣逻辑是否满足,如果是则只走代理分佣逻辑,如果不是,验证之后则继续执行三级经销分佣逻辑。(必须要开启代理模块,经销模块)<br /> |
| | | 【先经销后代理】:指先计算是否三级经销满足,满足则只计算三级分级经销,如果不满足再继续执行代理分佣逻辑。(必须要开启代理模块,经销模块)<br /> |
| | | </div> |
| | | </div> --> |
| | | |
| | |
| | | </div> |
| | | <!-- |
| | | <blockquote class="layui-elem-quote"> |
| | | 佣金设置(当不开启【分销】【代理】两个独立佣金模块的时候,推广好友三级统一返现比例) |
| | | 佣金设置(当不开启【经销】【代理】两个独立佣金模块的时候,推广好友三级统一返现比例) |
| | | </blockquote> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">{{d.data.configs['commissionType']['sKey']}}:</label> |
| | |
| | | } |
| | | } |
| | | |
| | | //初始化分销设置是否选中商品 |
| | | //初始化经销设置是否选中商品 |
| | | if (d.data.configs.distributionGoodsId) { |
| | | var obj = d.data.configs.distributionGoodsId; |
| | | if (obj.sValue) { |