mirror of
http://git.coreshop.cn/jianweie/coreshoppro.git
synced 2025-12-06 17:43:26 +08:00
【新增】新增后台可以增加代理商。方便有特别需求的用户,减少前端申请的申请及审核步骤。
This commit is contained in:
@@ -57,7 +57,52 @@ namespace CoreCms.Net.Model.FromBody
|
||||
public string storeName { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 后台创建代理商提交参数
|
||||
/// </summary>
|
||||
public class FMAdminCreateAgentPost
|
||||
{
|
||||
/// <summary>
|
||||
/// 已注册用户手机号码
|
||||
/// </summary>
|
||||
public System.String registeredUserMobile { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 用户序列
|
||||
/// </summary>
|
||||
public System.Int32 userId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分销商名称
|
||||
/// </summary>
|
||||
public System.String name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 分销等级
|
||||
/// </summary>
|
||||
public System.Int32 gradeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 手机号
|
||||
/// </summary>
|
||||
public System.String mobile { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 微信号
|
||||
/// </summary>
|
||||
public System.String weixin { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// qq号
|
||||
/// </summary>
|
||||
public System.String qq { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 审核状态
|
||||
/// </summary>
|
||||
public System.Int32 verifyStatus { get; set; }
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -29,6 +29,7 @@ using Microsoft.AspNetCore.Hosting;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using NPOI.HSSF.UserModel;
|
||||
using SqlSugar;
|
||||
using CoreCms.Net.Services;
|
||||
|
||||
namespace CoreCms.Net.Web.Admin.Controllers
|
||||
{
|
||||
@@ -45,16 +46,18 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
||||
private readonly IWebHostEnvironment _webHostEnvironment;
|
||||
private readonly ICoreCmsAgentServices _coreCmsAgentServices;
|
||||
private readonly ICoreCmsAgentGradeServices _agentGradeServices;
|
||||
private readonly ICoreCmsUserServices _userServices;
|
||||
|
||||
/// <summary>
|
||||
/// 构造函数
|
||||
///</summary>
|
||||
public CoreCmsAgentController(IWebHostEnvironment webHostEnvironment
|
||||
, ICoreCmsAgentServices coreCmsAgentServices, ICoreCmsAgentGradeServices agentGradeServices)
|
||||
, ICoreCmsAgentServices coreCmsAgentServices, ICoreCmsAgentGradeServices agentGradeServices, ICoreCmsUserServices userServices)
|
||||
{
|
||||
_webHostEnvironment = webHostEnvironment;
|
||||
_coreCmsAgentServices = coreCmsAgentServices;
|
||||
_agentGradeServices = agentGradeServices;
|
||||
_userServices = userServices;
|
||||
}
|
||||
|
||||
#region 获取列表============================================================
|
||||
@@ -277,6 +280,82 @@ namespace CoreCms.Net.Web.Admin.Controllers
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 创建数据============================================================
|
||||
// POST: Api/CoreCmsAgent/GetCreate
|
||||
/// <summary>
|
||||
/// 创建数据
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[Description("创建数据")]
|
||||
public async Task<AdminUiCallBack> GetCreate()
|
||||
{
|
||||
//返回数据
|
||||
var jm = new AdminUiCallBack { code = 0 };
|
||||
|
||||
var agentVerifyStatus = EnumHelper.EnumToList<GlobalEnumVars.AgentVerifyStatus>();
|
||||
var grades = await _agentGradeServices.GetCaChe();
|
||||
|
||||
jm.code = 0;
|
||||
jm.data = new
|
||||
{
|
||||
agentVerifyStatus,
|
||||
grades
|
||||
};
|
||||
|
||||
return jm;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 创建提交============================================================
|
||||
// POST: Api/CoreCmsAgent/DoCreate
|
||||
/// <summary>
|
||||
/// 创建提交
|
||||
/// </summary>
|
||||
/// <param name="entity"></param>
|
||||
/// <returns></returns>
|
||||
[HttpPost]
|
||||
[Description("创建提交")]
|
||||
public async Task<AdminUiCallBack> DoCreate([FromBody] FMAdminCreateAgentPost entity)
|
||||
{
|
||||
var jm = new AdminUiCallBack();
|
||||
|
||||
var user = await _userServices.QueryByClauseAsync(p => p.mobile == entity.registeredUserMobile);
|
||||
if (user == null)
|
||||
{
|
||||
jm.msg = "提交的【已注册手机号】未查询到注册用户";
|
||||
return jm;
|
||||
}
|
||||
|
||||
var isAgent = await _coreCmsAgentServices.ExistsAsync(p => p.userId == user.id);
|
||||
if (isAgent)
|
||||
{
|
||||
jm.msg = "提交的【已注册手机号】已经是代理商了。";
|
||||
return jm;
|
||||
}
|
||||
var model = new CoreCmsAgent();
|
||||
|
||||
model.userId = user.id;
|
||||
model.mobile = entity.registeredUserMobile;
|
||||
model.name = entity.name;
|
||||
model.gradeId = entity.gradeId;
|
||||
model.mobile = string.IsNullOrEmpty(entity.mobile) ? user.mobile : entity.mobile;
|
||||
model.weixin = entity.weixin;
|
||||
model.qq = entity.qq;
|
||||
model.verifyStatus = entity.verifyStatus;
|
||||
model.createTime = DateTime.Now;
|
||||
model.isDelete = false;
|
||||
if (model.verifyStatus == (int)GlobalEnumVars.DistributionVerifyStatus.VerifyYes) model.verifyTime = DateTime.Now;
|
||||
|
||||
var id = await _coreCmsAgentServices.InsertAsync(model);
|
||||
|
||||
jm.code = id > 0 ? 0 : 1;
|
||||
jm.msg = id > 0 ? GlobalConstVars.CreateSuccess : GlobalConstVars.CreateFailure;
|
||||
return jm;
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region 编辑数据============================================================
|
||||
// POST: Api/CoreCmsAgent/GetEdit
|
||||
/// <summary>
|
||||
|
||||
91
CoreCms.Net.Web.Admin/wwwroot/views/agent/agents/create.html
Normal file
91
CoreCms.Net.Web.Admin/wwwroot/views/agent/agents/create.html
Normal file
@@ -0,0 +1,91 @@
|
||||
<script type="text/html" template lay-done="layui.data.done(d);">
|
||||
<div class="layui-form coreshop-form layui-form-pane" lay-filter="LAY-app-CoreCmsAgent-createForm" id="LAY-app-CoreCmsAgent-createForm">
|
||||
|
||||
<input type="hidden" name="userId" value="0" />
|
||||
<div class="layui-form-item">
|
||||
<label for="mobile" class="layui-form-label layui-form-required">已注册手机号</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="registeredUserMobile" lay-verify="required|phone" class="layui-input" placeholder="请输入手机号" lay-reqText="请输入手机号" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="name" class="layui-form-label layui-form-required">代理商名称</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="name" lay-verify="required|verifyname" class="layui-input" placeholder="请输入代理商名称" lay-reqText="请输入代理商名称" />
|
||||
</div>
|
||||
<label for="mobile" class="layui-form-label layui-form-required">手机号</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="mobile" lay-verify="required|phone" class="layui-input" placeholder="请输入手机号" lay-reqText="请输入手机号" />
|
||||
</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>
|
||||
<div class="layui-input-inline">
|
||||
<select name="gradeId" lay-verify="required">
|
||||
<option value="">请选择</option>
|
||||
{{# layui.each(d.params.data.grades, function(index, item){ }}
|
||||
<option value="{{ item.id }}">{{ item.name }}</option>
|
||||
{{# }); }}
|
||||
</select>
|
||||
</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.agentVerifyStatus, function(index, item){ }}
|
||||
<option value="{{ item.value }}">{{ item.description }}</option>
|
||||
{{# }); }}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item text-right core-hidden">
|
||||
<input type="button" class="layui-btn" lay-submit lay-filter="LAY-app-CoreCmsAgent-createForm-submit" id="LAY-app-CoreCmsAgent-createForm-submit" value="确认添加">
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
<script>
|
||||
var debug = layui.setter.debug;
|
||||
layui.data.done = function (d) {
|
||||
//开启调试情况下获取接口赋值数据
|
||||
if (debug) { console.log(d.params.data); }
|
||||
layui.use(['admin', 'form', 'laydate', 'upload', 'coreHelper', 'cropperImg'],
|
||||
function () {
|
||||
var $ = layui.$
|
||||
, form = layui.form
|
||||
, admin = layui.admin
|
||||
, laydate = layui.laydate
|
||||
, upload = layui.upload
|
||||
, cropperImg = layui.cropperImg
|
||||
, coreHelper = layui.coreHelper;
|
||||
|
||||
form.verify({
|
||||
|
||||
verifyname: [/^.{0,255}$/, '代理商名称最大只允许输入255位字符'],
|
||||
verifymobile: [/^.{0,50}$/, '手机号最大只允许输入50位字符'],
|
||||
verifyweixin: [/^.{0,50}$/, '微信号最大只允许输入50位字符'],
|
||||
verifyqq: [/^.{0,50}$/, 'qq号最大只允许输入50位字符'],
|
||||
verifystoreName: [/^.{0,255}$/, '店铺名称最大只允许输入255位字符'],
|
||||
verifystoreLogo: [/^.{0,255}$/, '店铺Logo最大只允许输入255位字符'],
|
||||
verifystoreBanner: [/^.{0,255}$/, '店铺Banner最大只允许输入255位字符'],
|
||||
verifystoreDesc: [/^.{0,255}$/, '店铺简介最大只允许输入255位字符'],
|
||||
});
|
||||
//重载form
|
||||
form.render(null, 'LAY-app-CoreCmsAgent-createForm');
|
||||
})
|
||||
};
|
||||
</script>
|
||||
@@ -6,22 +6,22 @@
|
||||
<div class="layui-form-item">
|
||||
<label for="name" class="layui-form-label layui-form-required">代理商名称</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="name" lay-verType="tips" lay-verify="required|verifyname" class="layui-input" placeholder="请输入代理商名称" lay-reqText="请输入代理商名称" value="{{d.params.data.model.name || '' }}" />
|
||||
<input name="name" lay-verify="required|verifyname" class="layui-input" placeholder="请输入代理商名称" lay-reqText="请输入代理商名称" value="{{d.params.data.model.name || '' }}" />
|
||||
</div>
|
||||
<label for="mobile" class="layui-form-label layui-form-required">手机号</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="mobile" lay-verType="tips" lay-verify="required|phone" class="layui-input" placeholder="请输入手机号" lay-reqText="请输入手机号" value="{{d.params.data.model.mobile || '' }}" />
|
||||
<input name="mobile" lay-verify="required|phone" class="layui-input" placeholder="请输入手机号" lay-reqText="请输入手机号" value="{{d.params.data.model.mobile || '' }}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="layui-form-item">
|
||||
<label for="weixin" class="layui-form-label layui-form-required">微信号</label>
|
||||
<label for="weixin" class="layui-form-label">微信号</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="weixin" lay-verType="tips" lay-verify="required|verifyweixin" class="layui-input" placeholder="请输入微信号" lay-reqText="请输入微信号" value="{{d.params.data.model.weixin || '' }}" />
|
||||
<input name="weixin" class="layui-input" placeholder="请输入微信号" lay-reqText="请输入微信号" value="{{d.params.data.model.weixin || '' }}" />
|
||||
</div>
|
||||
<label for="qq" class="layui-form-label layui-form-required">qq号</label>
|
||||
<label for="qq" class="layui-form-label">qq号</label>
|
||||
<div class="layui-input-inline">
|
||||
<input name="qq" lay-verType="tips" lay-verify="required|number" class="layui-input" placeholder="请输入qq号" lay-reqText="请输入qq号" value="{{d.params.data.model.qq || '' }}" />
|
||||
<input name="qq" class="layui-input" placeholder="请输入qq号" lay-reqText="请输入qq号" value="{{d.params.data.model.qq || '' }}" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -66,18 +66,6 @@
|
||||
, upload = layui.upload
|
||||
, coreHelper = layui.coreHelper;
|
||||
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsAgent-createTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsAgent-updateTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
laydate.render({
|
||||
elem: '#editTime-CoreCmsAgent-verifyTime',
|
||||
type: 'datetime'
|
||||
});
|
||||
form.verify({
|
||||
|
||||
verifyname: [/^[\S]{0,255}$/, '代理商名称最大只允许输入255位字符,且不能出现空格'],
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
/* 重写样式 */
|
||||
</style>
|
||||
<script type="text/html" template lay-type="Post" lay-url="{{ layui.setter.apiUrl }}Api/CoreCmsAgent/GetIndex" lay-done="layui.data.done(d);">
|
||||
|
||||
|
||||
</script>
|
||||
<div class="table-body">
|
||||
<table id="LAY-app-CoreCmsAgent-tableBox" lay-filter="LAY-app-CoreCmsAgent-tableBox"></table>
|
||||
@@ -74,6 +74,13 @@
|
||||
</div>
|
||||
</script>
|
||||
|
||||
|
||||
<script type="text/html" id="LAY-app-CoreCmsAgent-pagebar">
|
||||
<div class="layui-btn-container">
|
||||
<button class="layui-btn layui-btn-sm" lay-event="addData"><i class="layui-icon layui-icon-add-1"></i>添加数据</button>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script type="text/html" id="LAY-app-CoreCmsAgent-tableBox-bar">
|
||||
<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">查看</a>
|
||||
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
|
||||
@@ -122,6 +129,8 @@
|
||||
url: layui.setter.apiUrl + 'Api/CoreCmsAgent/GetPageList',
|
||||
method: 'POST',
|
||||
toolbar: '#LAY-app-CoreCmsAgent-toolbar',
|
||||
pagebar: '#LAY-app-CoreCmsAgent-pagebar',
|
||||
className: 'pagebarbox',
|
||||
defaultToolbar: ['filter', 'print', 'exports'],
|
||||
height: 'full-127',//无面包屑127,搜索框189,1行62
|
||||
page: true,
|
||||
@@ -199,7 +208,15 @@
|
||||
//查看详情
|
||||
doDetails(obj);
|
||||
});
|
||||
|
||||
//头工具栏事件
|
||||
table.on('pagebar(LAY-app-CoreCmsAgent-tableBox)', function (obj) {
|
||||
var checkStatus = table.checkStatus(obj.config.id);
|
||||
switch (obj.event) {
|
||||
case 'addData':
|
||||
doCreate();
|
||||
break;
|
||||
};
|
||||
});
|
||||
//监听工具条
|
||||
table.on('tool(LAY-app-CoreCmsAgent-tableBox)',
|
||||
function (obj) {
|
||||
@@ -211,7 +228,49 @@
|
||||
doEdit(obj)
|
||||
}
|
||||
});
|
||||
//执行创建操作
|
||||
function doCreate() {
|
||||
coreHelper.Post("Api/CoreCmsAgent/GetCreate", null, function (e) {
|
||||
if (e.code === 0) {
|
||||
admin.popup({
|
||||
shadeClose: false,
|
||||
title: '创建数据',
|
||||
area: ['640px', '300px'],
|
||||
id: 'LAY-popup-CoreCmsAgent-create',
|
||||
success: function (layero, index) {
|
||||
view(this.id).render('agent/agents/create', { data: e.data }).done(function () {
|
||||
//监听提交
|
||||
form.on('submit(LAY-app-CoreCmsAgent-createForm-submit)',
|
||||
function (data) {
|
||||
var field = data.field; //获取提交的字段
|
||||
|
||||
if (debug) { console.log(field); } //开启调试返回数据
|
||||
//提交 Ajax 成功后,关闭当前弹层并重载表格
|
||||
coreHelper.Post("Api/CoreCmsAgent/DoCreate", field, function (e) {
|
||||
console.log(e)
|
||||
if (e.code === 0) {
|
||||
layui.table.reloadData('LAY-app-CoreCmsAgent-tableBox'); //重载表格
|
||||
layer.close(index); //再执行关闭
|
||||
layer.msg(e.msg);
|
||||
} else {
|
||||
layer.msg(e.msg);
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
// 禁止弹窗出现滚动条
|
||||
$(layero).children('.layui-layer-content').css('overflow', 'visible');
|
||||
}
|
||||
, btn: ['确定', '取消']
|
||||
, yes: function (index, layero) {
|
||||
layero.contents().find("#LAY-app-CoreCmsAgent-createForm-submit").click();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
layer.msg(e.msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
//执行编辑操作
|
||||
function doEdit(obj) {
|
||||
coreHelper.Post("Api/CoreCmsAgent/GetEdit", { id: obj.data.id }, function (e) {
|
||||
|
||||
Reference in New Issue
Block a user