fix: API路由补齐+后台全面中文化

This commit is contained in:
testadmin
2026-04-29 03:33:00 +08:00
parent 664d4d9572
commit 6ce7adcbfb
267 changed files with 47059 additions and 0 deletions
@@ -0,0 +1,95 @@
@extends('admin._layoutNew')
@section('page-head')
@endsection
@section('page-content')
<div class="layui-inline btn-group layui-btn-group">
<button class="layui-btn layui-btn-primary" id="addbg">添加背景图</button>
</div>
<div class="layui-form">
<table id="accountlist" lay-filter="accountlist"></table>
<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-xs" lay-event="del">删除</a>
</script>
<script type="text/html" id="FcardTpl">
<img src="@{{ d.pic }}" width="100" height="100">
</script>
@endsection
@section('scripts')
<script>
window.onload = function() {
document.onkeydown=function(event){
var e = event || window.event || arguments.callee.caller.arguments[0];
if(e && e.keyCode==13){ // enter 键
$('#mobile_search').click();
}
};
layui.use(['element', 'form', 'layer', 'table'], function () {
var element = layui.element;
var layer = layui.layer;
var table = layui.table;
var $ = layui.$;
var form = layui.form;
$('#addbg').click(function(){layer_show('添加背景图', '/admin/invite/edit');});
function tbRend(url) {
table.render({
elem: '#accountlist'
, url: url
, page: true
,limit: 20
, cols: [[
{ field: 'id', title: 'ID', minWidth: 100}
, {field:'pic',title: '背景图',minWidth: 200,templet:'#FcardTpl'}
, {field:'create_time',title:'创建时间', minWidth:300}
,{fixed: 'right', title: '操作', width: 150, align: 'center', toolbar: '#barDemo'}
]]
});
}
tbRend("{{url('/admin/invite/bg_list')}}");
//监听工具条
table.on('tool(accountlist)', function (obj) { //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值"
var data = obj.data;
var layEvent = obj.event;
var tr = obj.tr;
if (layEvent === 'del') { //删除
layer.confirm('真的要删除吗?', function (index) {
//向服务端发送删除指令
$.ajax({
url: "{{url('admin/invite/bgdel')}}",
type: 'post',
dataType: 'json',
data: {id: data.id},
success: function (res) {
if (res.type == 'ok') {
obj.del(); //删除对应行(tr)的DOM结构,并更新缓存
layer.close(index);
} else {
layer.close(index);
layer.alert(res.message);
}
}
});
});
}else if (layEvent === 'edit'){ //编辑
layer_show('编辑背景图','{{url('admin/invite/edit')}}?id='+data.id);
}
});
});
}
</script>
@endsection
@@ -0,0 +1,158 @@
@extends('admin._layoutNew')
@section('page-head')
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
@endsection
@section('page-content')
<style>
.el-pagination{
display: flex;
align-items: center;
}
.layui-text ul{
padding: 5px 0 5px 5px;
}
</style>
<div id="app" v-cloak>
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
<legend>用户邀请关系图</legend>
</fieldset>
{{-- <div style="display: inline-block; padding: 10px; overflow: auto;">--}}
{{-- <ul id="demo2"></ul>--}}
{{-- </div>--}}
<el-table
:data="tableData"
style="width: 100%"
row-key="id"
border
lazy
:load="load"
:tree-props="{children: 'children', hasChildren: 'hasChildren'}">
<el-table-column
prop="account_number"
label="账号"
width="300">
</el-table-column>
</el-table>
<div style="margin-top: 20px">
<el-pagination
background
@current-change="handleCurrentChange"
:current-page="currentPage"
layout="prev, pager, next"
:total="total">
</el-pagination>
</div>
</div>
@endsection
@section('scripts')
<script src="https://cdn.bootcss.com/vue/2.6.11/vue.min.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script>
var vue = new Vue({
el: "#app",
data() {
return {
total:10,
currentPage:1,
tableData: []
}
},
mounted() {
this.list()
},
methods: {
list(){
let that = this;
$.ajax({
url:'{{url('admin/invite/getTop')}}' + '?page=' + this.currentPage,
type:'get',
dataType:'json',
success:function (res) {
let data = res.message;
let tableData = data.data ? data.data : [];
that.tableData = tableData;
that.total = data.total;
}
});
},
// 初始页currentPage、初始每页数据数pagesize和数据data
handleCurrentChange: function(currentPage){
this.currentPage = currentPage;
this.list();
},
load(tree, treeNode, resolve) {
console.log(tree)
let pid = tree.id;
$.ajax({
url:'{{url('admin/invite/getSon')}}' + '?pid=' + pid,
type:'get',
dataType:'json',
success:function (res) {
let data = res.message;
resolve(data)
}
});
}
}
})
</script>
@endsection
{{-- @section('scripts')--}}
<script>
window.onload = function() {
layui.use(['element', 'layer', 'table','tree'], function () {
var element = layui.element;
var layer = layui.layer;
var table = layui.table;
var $ = layui.$;
$.ajax({
url:'{{url('admin/invite/getTree')}}',
type:'get',
dataType:'json',
success:function (res) {
layui.tree({
elem: '#demo2' //指定元素
,nodes: res.data
});
}
});
});
}
</script>
{{--@endsection--}}
@@ -0,0 +1,89 @@
@extends('admin._layoutNew')
@section('page-head')
@endsection
@section('page-content')
<form class="layui-form" action="">
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">图片</label>
<div class="layui-input-block">
<button class="layui-btn" type="button" id="upload_test">选择图片</button>
<br>
<img src="@if(!empty($res->pic)){{$res->pic}}@endif" id="img_thumbnail" class="thumbnail" style="display: @if(!empty($res->pic)){{"block"}}@else{{"none"}}@endif;max-width: 200px;height: auto;margin-top: 5px;">
<input type="hidden" name="pic" id="thumbnail" value="@if(!empty($res->pic)){{$res->pic}}@endif">
</div>
</div>
<input type="hidden" name="id" value="{{$res->id}}">
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit="" lay-filter="demo1">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
@endsection
@section('scripts')
<script>
layui.use('upload', function(){
var upload = layui.upload;
//执行实例
var uploadInst = upload.render({
elem: '#upload_test' //绑定元素
,url: '{{URL("api/upload")}}' //上传接口
,done: function(res){
//上传完毕回调
if (res.type == "ok"){
$("#thumbnail").val(res.message)
$("#img_thumbnail").show()
$("#img_thumbnail").attr("src",res.message)
} else{
alert(res.message)
}
}
,error: function(){
//请求异常回调
}
});
});
layui.use(['form','laydate'],function () {
var form = layui.form
,$ = layui.jquery
,laydate = layui.laydate
,index = parent.layer.getFrameIndex(window.name);
//监听提交
form.on('submit(demo1)', function(data){
var data = data.field;
$.ajax({
url:'{{url('admin/invite/edit')}}'
,type:'post'
,dataType:'json'
,data : data
,success:function(res){
//console.log(res);
if(res.type=='error'){
layer.msg(res.message);
}else{
parent.layer.close(index);
parent.window.location.reload();
}
}
});
return false;
});
});
</script>
@endsection
@@ -0,0 +1,104 @@
@extends('admin._layoutNew')
@section('page-head')
@endsection
@section('page-content')
<div class="layui-inline btn-group layui-btn-group">
<button class="layui-btn layui-btn-primary cateManage" id="share">邀请分享设置</button>
<button class="layui-btn layui-btn-primary" id="childs">会员推荐关系图</button>
</div>
<div class="layui-inline">
<label class="layui-form-label">用户名</label>
<div class="layui-input-inline">
<input type="text" name="account" placeholder="请输入用户手机号或邮箱" autocomplete="off" class="layui-input" value="">
</div>
<button class="layui-btn btn-search" id="mobile_search" lay-submit lay-filter="mobile_search"> <i class="layui-icon">&#xe615;</i> </button>
</div>
<div class="layui-form">
<table id="accountlist" lay-filter="accountlist"></table>
<script type="text/html" id="barDemo">
<a class="layui-btn layui-btn-xs" lay-event="viewDetail">删除</a>
</script>
@endsection
@section('scripts')
<script>
window.onload = function() {
document.onkeydown=function(event){
var e = event || window.event || arguments.callee.caller.arguments[0];
if(e && e.keyCode==13){ // enter 键
$('#mobile_search').click();
}
};
layui.use(['element', 'form', 'layer', 'table'], function () {
var element = layui.element;
var layer = layui.layer;
var table = layui.table;
var $ = layui.$;
var form = layui.form;
$('#share').click(function(){layer_show('邀请分享设置', '/admin/invite/share');});
$('#childs').click(function(){layer_show('会员关系图', '/admin/invite/childs');});
$('#bg').click(function(){layer_show('邀请背景图管理', '/admin/invite/bgpic');});
form.on('submit(mobile_search)',function(obj){
var account = $("input[name='account']").val()
tbRend("{{url('/admin/invite/return_list')}}?account="+account);
return false;
});
function tbRend(url) {
table.render({
elem: '#accountlist'
, url: url
, page: true
,limit: 20
, cols: [[
{ field: 'id', title: 'ID', minWidth: 100}
/*, {field:'account',title: '用户账号',minWidth: 150}*/
, {field:'account_number',title: '用户交易号',minWidth: 150}
, {field:'value',title:'返佣值', minWidth:100}
, {field:'info',title:'记录备注', minWidth:300}
// , {field:'type',title:'类型', width:100}
, {field:'created_time',title:'创建时间', minWidth:300}
,{fixed: 'right', title: '操作', width: 150, align: 'center', toolbar: '#barDemo'}
]]
});
}
tbRend("{{url('/admin/invite/return_list')}}");
//监听工具条
table.on('tool(accountlist)', function (obj) { //注:tool是工具条事件名,test是table原始容器的属性 lay-filter="对应的值"
var data = obj.data;
var layEvent = obj.event;
var tr = obj.tr;
if (layEvent === 'delete') { //删除
layer.confirm('真的要删除吗?', function (index) {
//向服务端发送删除指令
$.ajax({
url: "{{url('admin/invite/del')}}",
type: 'post',
dataType: 'json',
data: {id: data.id},
success: function (res) {
if (res.type == 'ok') {
obj.del(); //删除对应行(tr)的DOM结构,并更新缓存
layer.close(index);
} else {
layer.close(index);
layer.alert(res.message);
}
}
});
});
}
});
});
}
</script>
@endsection
@@ -0,0 +1,62 @@
@extends('admin._layoutNew')
@section('page-head')
@stop
@section('page-content')
<div class="larry-personal-body clearfix">
<form class="layui-form col-lg-5">
<div class="layui-form-item">
<label class="layui-form-label">分享标题</label>
<div class="layui-input-block">
<input type="text" name="share_title" autocomplete="off" class="layui-input" value="{{$title}}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">分享内容</label>
<div class="layui-input-block">
<input type="text" name="share_content" autocomplete="off" class="layui-input" value="{{$content}}">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">分享链接</label>
<div class="layui-input-block">
<input type="text" name="share_url" autocomplete="off" class="layui-input" value="{{$url}}">
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="website_submit">立即提交</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
</div>
@stop
@section('scripts')
<script type="text/javascript">
layui.use(['form','layer'], function () {
var layer = layui.layer;
var form = layui.form;
var $ = layui.$;
form.on('submit(website_submit)', function (data) {
var data = data.field;
console.log(data);
$.ajax({
url: '/admin/invite/share',
type: 'post',
dataType: 'json',
data: data,
success: function (res) {
layer.msg(res.message);
}
});
return false;
});
});
</script>
@stop