Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
projecttwo
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangtao
projecttwo
Commits
37fb1f8d
Commit
37fb1f8d
authored
Jun 17, 2025
by
wangzhengwen
Browse files
Options
Browse Files
Download
Plain Diff
6.17
parents
a9e10285
5efd862b
Changes
31
Hide whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
227 additions
and
53 deletions
+227
-53
BaseController.php
app/BaseController.php
+32
-0
AdminBase.php
app/admin/controller/AdminBase.php
+0
-10
Index.php
app/admin/controller/Index.php
+13
-0
Project.php
app/admin/controller/project/Project.php
+1
-0
index.html
app/admin/view/advert/index.html
+1
-1
index.html
app/admin/view/advert_cate/index.html
+1
-1
index.html
app/admin/view/article/index.html
+2
-14
index.html
app/admin/view/caiwu/user_money_log/index.html
+2
-1
index.html
app/admin/view/caiwu/withdrawal/index.html
+1
-1
index.html
app/admin/view/cert/cert/index.html
+2
-2
index.html
app/admin/view/cert/cert_order/index.html
+1
-1
detail.html
app/admin/view/course/course/detail.html
+3
-3
index.html
app/admin/view/course/course/index.html
+2
-2
index.html
app/admin/view/course/course_class/index.html
+1
-1
index.html
app/admin/view/course/course_class_category/index.html
+1
-1
index.html
app/admin/view/course/course_work/index.html
+1
-1
index.html
app/admin/view/index/index.html
+45
-1
index.html
app/admin/view/order/payment/index.html
+1
-1
index.html
app/admin/view/project/project/index.html
+3
-3
index.html
app/admin/view/users/business/index.html
+4
-1
index.html
app/admin/view/users/mail/index.html
+1
-1
index.html
app/admin/view/users/school/index.html
+3
-1
index.html
app/admin/view/users/user/index.html
+1
-1
usermoneylog.html
app/admin/view/users/user/usermoneylog.html
+1
-1
Cert.php
app/api/controller/cert/Cert.php
+4
-2
Project.php
app/api/controller/manage/Project.php
+1
-1
ShCourse.php
app/api/controller/manage/ShCourse.php
+6
-0
User.php
app/api/controller/manage/User.php
+63
-0
ProjectService.php
app/api/service/ProjectService.php
+1
-1
PhpOffice.php
app/event/PhpOffice.php
+24
-0
Project.php
app/model/Project.php
+5
-0
No files found.
app/BaseController.php
View file @
37fb1f8d
...
...
@@ -11,6 +11,7 @@ declare (strict_types=1);
namespace
app
;
use
app\event\PhpOffice
;
use
think\App
;
use
think\facade\Cache
;
use
think\facade\Db
;
...
...
@@ -400,4 +401,35 @@ abstract class BaseController
return
$bin
?
$item
:
$item
+
$data
;
}
public
function
downloadfile
(
$fileid
,
$excel
=
0
)
{
if
(
$excel
==
1
)
{
//导出下载
$fileinfo
=
Db
::
name
(
'excel_down'
)
->
where
([
'id'
=>
$fileid
])
->
find
();
$fileurl
=
strstr
(
$fileinfo
[
'fileurl'
],
'/static'
);
return
download
(
'.'
.
$fileurl
,
$fileinfo
[
'filename'
])
->
force
(
true
);
}
else
{
$fileinfo
=
get_upload_file
(
$fileid
,
'info'
);
if
(
$fileinfo
[
'storage'
]
==
'local'
)
{
//本地文件下载
$fileurl
=
strstr
(
$fileinfo
[
'fileurl'
],
'/static'
);
return
download
(
'.'
.
$fileurl
,
$fileinfo
[
'filename'
])
->
force
(
true
);
}
else
{
try
{
//oss文件下载 先保存到服务器 然后再下载到本地电脑
$path
=
'static/tempdown/'
.
$fileinfo
[
'filename'
];
PhpOffice
::
ossdownfile
(
$fileinfo
[
'fileurl'
],
$path
);
register_shutdown_function
(
function
()
use
(
$path
)
{
// 处理完成后删除临时文件
unlink
(
VT_PUBLIC
.
'/'
.
$path
);
});
return
download
(
'./'
.
$path
,
$fileinfo
[
'filename'
])
->
force
(
true
);
}
catch
(
\Exception
$e
)
{
return
$this
->
exitMsg
(
$e
->
getMessage
());
}
}
}
}
}
\ No newline at end of file
app/admin/controller/AdminBase.php
View file @
37fb1f8d
...
...
@@ -166,16 +166,6 @@ abstract class AdminBase extends BaseController
}
}
public
function
downloadfile
(
$fileid
,
$excel
=
0
)
{
if
(
$excel
==
1
)
{
$fileinfo
=
Db
::
name
(
'excel_down'
)
->
where
([
'id'
=>
$fileid
])
->
find
();
}
else
{
$fileinfo
=
get_upload_file
(
$fileid
,
'info'
);
}
$fileurl
=
strstr
(
$fileinfo
[
'fileurl'
],
'/static'
);
return
download
(
'.'
.
$fileurl
,
$fileinfo
[
'filename'
])
->
force
(
true
);
}
}
\ No newline at end of file
app/admin/controller/Index.php
View file @
37fb1f8d
...
...
@@ -144,6 +144,19 @@ class Index extends AdminBase
return
$this
->
fetch
();
}
//待审核数据 提示
public
function
dshtishi
()
{
$business_dsh_count
=
Db
::
name
(
'business'
)
->
where
([
'is_del'
=>
'0'
,
'status'
=>
0
])
->
count
();
//企业资料待审核
$school_dsh_count
=
Db
::
name
(
'school'
)
->
where
([
'is_del'
=>
'0'
,
'status'
=>
0
])
->
count
();
//学校资料待审核
$course_dsh_count
=
Db
::
name
(
'sh_course'
)
->
where
([
'is_del'
=>
'0'
,
'status'
=>
1
])
->
count
();
//课程待审核
$project_dsh_count
=
Db
::
name
(
'project'
)
->
where
([
'sh_status'
=>
0
])
->
where
(
'deletetime'
,
'NUll'
)
->
count
();
//项目待审核
$tixian_dsh_count
=
Db
::
name
(
'user_withdrawal'
)
->
where
([
'sh_status'
=>
0
])
->
where
(
'deletetime'
,
'NUll'
)
->
count
();
//提现待审核
$tixian_dk_dsh_count
=
Db
::
name
(
'user_withdrawal'
)
->
where
([
'sh_status'
=>
2
,
'dk_status'
=>
0
])
->
where
(
'deletetime'
,
'NUll'
)
->
count
();
//打款待审核
$dsh_sum_count
=
$business_dsh_count
+
$school_dsh_count
+
$course_dsh_count
+
$tixian_dsh_count
+
$tixian_dk_dsh_count
+
$project_dsh_count
;
return
$this
->
returnMsg
(
'success'
,
1
,
[
'dsh_sum_count'
=>
$dsh_sum_count
]);
}
public
function
main11111111111
()
{
...
...
app/admin/controller/project/Project.php
View file @
37fb1f8d
...
...
@@ -99,6 +99,7 @@ class Project extends AdminBase
{
$post
=
input
();
$info
=
$this
->
project
->
where
(
'id'
,
$post
[
'id'
])
->
with
([
'projectcatedata'
,
'getuserdata'
])
->
find
()
->
append
([
'sh_status_text'
,
'status_text'
,
'tag_title'
,
'file_list'
]);
$this
->
assign
(
'info'
,
$info
);
return
$this
->
fetch
(
''
,
''
,
false
);
}
...
...
app/admin/view/advert/index.html
View file @
37fb1f8d
...
...
@@ -61,7 +61,7 @@
elem
:
'#advert'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
kc
:
kc
},
cols
:
[[
...
...
app/admin/view/advert_cate/index.html
View file @
37fb1f8d
...
...
@@ -52,7 +52,7 @@
elem
:
'#advertcate'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
kc
:
kc
},
cols
:
[[
...
...
app/admin/view/article/index.html
View file @
37fb1f8d
...
...
@@ -3,7 +3,7 @@
<style>
#articlecategoryTreeBar
{
padding
:
10px
15px
;
border
:
1px
solid
#e6e6e6
;
background-color
:
#f2f2f2
}
#articlecategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
60px
);
height
:
-moz-calc
(
100vh
-
260px
);
height
:
calc
(
100vh
-
260
px
)}
#articlecategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
05px
);
height
:
-moz-calc
(
100vh
-
205px
);
height
:
calc
(
100vh
-
205
px
)}
.layui-tree-entry
.layui-tree-txt
{
padding
:
0
5px
;
border
:
1px
transparent
solid
;
text-decoration
:
none
!important
}
.layui-tree-entry.organ-tree-click
.layui-tree-txt
{
background-color
:
#fff3e0
;
border
:
1px
#ffe6b0
solid
}
.files_itemw
{
width
:
30px
;
height
:
30px
;
line-height
:
30px
;
cursor
:
pointer
;
padding
:
1px
;
background
:
#fff
;
display
:
-webkit-box
;
-moz-box-align
:
center
;
-webkit-box-align
:
center
;
-moz-box-pack
:
center
;
-webkit-box-pack
:
center
;}
...
...
@@ -26,11 +26,8 @@
<form
class=
"layui-form render"
>
<input
type=
"hidden"
name=
"groupid"
id=
"article-groupid"
value=
""
/>
<div
class=
"layui-form-item"
>
<div
class=
"layui-inline"
style=
"width:250px;"
><input
type=
"text"
name=
"kw"
placeholder=
"文章标题关键词"
autocomplete=
"off"
class=
"layui-input"
lay-affix=
"clear"
/></div>
<div
class=
"layui-inline"
>
<div
class=
"layui-btn-group"
>
<button
class=
"layui-btn"
lay-submit
lay-filter=
"search-article"
><i
class=
"layui-icon layui-icon-search"
></i>
搜索
</button>
...
...
@@ -44,16 +41,7 @@
</form>
</div>
<div
class=
"layui-card-body"
>
<!-- <div class="layui-card-box">-->
<!-- <div class="layui-btn-group">-->
<!-- <a class="layui-btn" id="article-add" ><i class="layui-icon layui-icon-add-circle"></i> 添加</a>-->
<!-- <a class="layui-btn" id="article-del"><i class="layui-icon layui-icon-delete"></i> 删除</a>-->
<!-- </div>-->
<!-- </div>-->
<div
class=
"layui-card-body"
>
<table
lay-filter=
"article"
id=
"article"
></table>
</div>
</div>
</div>
</div>
...
...
@@ -99,7 +87,7 @@
elem
:
'#article'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-
341
'
,
height
:
'full-
258
'
,
url
:
app_root
+
"index?&do=json"
,
cols
:
[[
{
type
:
'checkbox'
,
fixed
:
'left'
},
...
...
app/admin/view/caiwu/user_money_log/index.html
View file @
37fb1f8d
...
...
@@ -63,7 +63,7 @@
elem
:
'#usermoneylog'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
//
height: 'full-341',
url
:
app_root
+
"index?&do=json"
,
// css: 'td .layui-table-cell{height:80px;line-height:80px;padding:0 5px;}',
cols
:
[[
...
...
@@ -74,6 +74,7 @@
{
field
:
'front_money'
,
align
:
'center'
,
width
:
100
,
title
:
'更改前金额'
},
{
field
:
'money'
,
align
:
'center'
,
width
:
100
,
title
:
'金额'
},
{
field
:
'after_money'
,
align
:
'center'
,
width
:
100
,
title
:
'更改后金额'
},
{
field
:
'money_type'
,
align
:
'center'
,
width
:
100
,
title
:
'金额类型'
},
{
field
:
'type_text'
,
align
:
'center'
,
width
:
100
,
title
:
'类型'
},
{
field
:
'content'
,
align
:
'center'
,
title
:
'内容'
},
{
field
:
'createtime'
,
width
:
150
,
align
:
'center'
,
title
:
'时间'
},
...
...
app/admin/view/caiwu/withdrawal/index.html
View file @
37fb1f8d
...
...
@@ -108,7 +108,7 @@
elem
:
'#withdrawal'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
//
height: 'full-341',
// toolbar: 'default', //开启工具栏,此处显示默认图标,可以自定义模板,详见文档
url
:
app_root
+
"index?&do=json"
,
where
:{
sh_status
:
sh_status
,
dk_status
:
dk_status
},
...
...
app/admin/view/cert/cert/index.html
View file @
37fb1f8d
...
...
@@ -3,7 +3,7 @@
<style>
#certcategoryTreeBar
{
padding
:
10px
15px
;
border
:
1px
solid
#e6e6e6
;
background-color
:
#f2f2f2
}
#certcategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
90px
);
height
:
-moz-calc
(
100vh
-
290px
);
height
:
calc
(
100vh
-
290
px
)}
#certcategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
05px
);
height
:
-moz-calc
(
100vh
-
205px
);
height
:
calc
(
100vh
-
205
px
)}
.layui-tree-entry
.layui-tree-txt
{
padding
:
0
5px
;
border
:
1px
transparent
solid
;
text-decoration
:
none
!important
}
.layui-tree-entry.organ-tree-click
.layui-tree-txt
{
background-color
:
#fff3e0
;
border
:
1px
#ffe6b0
solid
}
.files_itemwcert
{
width
:
30px
;
height
:
30px
;
line-height
:
30px
;
cursor
:
pointer
;
padding
:
1px
;
background
:
#fff
;
display
:
-webkit-box
;
-moz-box-align
:
center
;
-webkit-box-align
:
center
;
-moz-box-pack
:
center
;
-webkit-box-pack
:
center
;}
...
...
@@ -108,7 +108,7 @@
elem
:
'#cert'
,
page
:
true
,
limit
:{
$limit
},
// height: 'full-341
',
height
:
'full-258
'
,
url
:
app_root
+
"index?&do=json"
,
// css: 'td .layui-table-cell{height:80px;line-height:80px;padding:0 5px;}',
cols
:
[[
...
...
app/admin/view/cert/cert_order/index.html
View file @
37fb1f8d
...
...
@@ -78,7 +78,7 @@
elem
:
'#certorder'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
cols
:
[[
{
type
:
'checkbox'
,
fixed
:
'left'
},
...
...
app/admin/view/course/course/detail.html
View file @
37fb1f8d
...
...
@@ -123,7 +123,7 @@
elem
:
'#courseclasscategory'
,
page
:
true
,
limit
:
20
,
height
:
'full-341'
,
url
:
map_root
+
"/course.course_class_category/index?&do=json"
,
where
:{
course_id
:
course_id
},
cols
:
[[
...
...
@@ -140,7 +140,7 @@
elem
:
'#courseclasstwo'
,
page
:
true
,
limit
:
20
,
height
:
'full-341'
,
url
:
map_root
+
"course.course_class/index?&do=json"
,
where
:{
course_id
:
course_id
},
cols
:
[[
...
...
@@ -164,7 +164,7 @@
elem
:
'#coursework'
,
page
:
true
,
limit
:
20
,
height
:
'full-341'
,
url
:
map_root
+
"course.course_work/index?&do=json"
,
where
:{
course_id
:
course_id
},
cols
:
[[
...
...
app/admin/view/course/course/index.html
View file @
37fb1f8d
...
...
@@ -3,7 +3,7 @@
<style>
#coursecategoryTreeBar
{
padding
:
10px
15px
;
border
:
1px
solid
#e6e6e6
;
background-color
:
#f2f2f2
}
#coursecategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
90px
);
height
:
-moz-calc
(
100vh
-
290px
);
height
:
calc
(
100vh
-
290
px
)}
#coursecategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
05px
);
height
:
-moz-calc
(
100vh
-
205px
);
height
:
calc
(
100vh
-
205
px
)}
.layui-tree-entry
.layui-tree-txt
{
padding
:
0
5px
;
border
:
1px
transparent
solid
;
text-decoration
:
none
!important
}
.layui-tree-entry.organ-tree-click
.layui-tree-txt
{
background-color
:
#fff3e0
;
border
:
1px
#ffe6b0
solid
}
.files_itemw
{
width
:
30px
;
height
:
30px
;
line-height
:
30px
;
cursor
:
pointer
;
padding
:
1px
;
background
:
#fff
;
display
:
-webkit-box
;
-moz-box-align
:
center
;
-webkit-box-align
:
center
;
-moz-box-pack
:
center
;
-webkit-box-pack
:
center
;}
...
...
@@ -134,7 +134,7 @@
elem
:
'#course'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-
341
'
,
height
:
'full-
258
'
,
url
:
app_root
+
"index?&do=json"
,
// css: 'td .layui-table-cell{height:80px;line-height:80px;padding:0 5px;}',
where
:{
status
:
status
},
...
...
app/admin/view/course/course_class/index.html
View file @
37fb1f8d
...
...
@@ -54,7 +54,7 @@
elem
:
'#courseclass'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
kw
:
kw
,
kc
:
kc
,
zj
:
zj
},
cols
:
[[
...
...
app/admin/view/course/course_class_category/index.html
View file @
37fb1f8d
...
...
@@ -54,7 +54,7 @@
elem
:
'#courseclasscategory'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
kc
:
kc
},
cols
:
[[
...
...
app/admin/view/course/course_work/index.html
View file @
37fb1f8d
...
...
@@ -52,7 +52,7 @@
elem
:
'#coursework'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
kc
:
kc
},
cols
:
[[
...
...
app/admin/view/index/index.html
View file @
37fb1f8d
...
...
@@ -14,6 +14,20 @@
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<style>
@keyframes
dshbounce
{
0
%,
100
%
{
transform
:
translateY
(
0
);
}
50
%
{
transform
:
translateY
(
-10px
);
}
}
.dshbounce
{
animation
:
dshbounce
1s
infinite
;
display
:
inline-block
;
font-weight
:
bold
;
color
:
#ff6b6b
;
}
</style>
</head>
<body
class=
"layui-layout-body"
>
<div
class=
"layui-layout layui-layout-admin"
>
...
...
@@ -24,6 +38,7 @@
<li
class=
"layui-nav-item"
lay-unselect
><a
v-event=
"refresh"
title=
"刷新"
><i
class=
"layui-icon layui-icon-refresh-3"
></i></a></li>
</ul>
<ul
class=
"layui-nav layui-layout-right"
>
<li
class=
"layui-nav-item"
id=
"new_dsh"
style=
"display: none;"
><a
title=
"有新的待审核"
href=
"#/index/main"
style=
"color: #ff2638;"
class=
"dshbounce"
>
有新的待审核(10)
</a></li>
<li
class=
"layui-nav-item"
lay-unselect
><a
v-event=
"clearCache"
title=
"缓存"
data-url=
"{$appMap}/index/clear"
><i
class=
"layui-icon layui-icon-clear"
></i></a></li>
<li
class=
"layui-nav-item"
lay-unselect
><a
href=
"{PUBLIC__PATH}/"
target=
"_blank"
title=
"前台"
><i
class=
"layui-icon layui-icon-website"
></i></a></li>
<li
class=
"layui-nav-item"
lay-unselect
><a
v-event=
"lockScreen"
data-url=
"{PUBLIC__PATH}/static/admin/page/tpl/lock.html"
title=
"锁屏"
><i
class=
"layui-icon layui-icon-password"
></i></a></li>
...
...
@@ -69,7 +84,7 @@ layui.config({
viewSuffix
:
''
,
// 视图后缀
reqPutToPost
:
true
,
// req请求put方法变成post
apiNoCache
:
true
,
// ajax请求json数据不带版本号
tabAutoRefresh
:
fals
e
,
// 是否每点击菜单都刷新
tabAutoRefresh
:
tru
e
,
// 是否每点击菜单都刷新
tableName
:
'vadmin'
,
// 存储表名
token
:
'{:token($tokenName)}'
,
// CSRF-TOKEN
}
...
...
@@ -96,6 +111,35 @@ layui.config({
$
(
'#vRole'
).
html
(
r_str
+
'<hr>'
);
});
});
//待审核消息提示
function
dshtishi
(){
$
.
ajax
({
method
:
"post"
,
url
:
'/admin/Index/dshtishi'
,
dataType
:
"json"
,
success
:
function
(
res
){
if
(
res
.
code
===
1
)
{
// new_dsh
if
(
res
.
data
.
dsh_sum_count
>
0
){
$
(
"#new_dsh"
).
show
();
$
(
"#new_dsh"
).
find
(
"a"
).
html
(
"有新的待审核("
+
res
.
data
.
dsh_sum_count
+
")"
);
}
else
{
$
(
"#new_dsh"
).
hide
();
}
}
}
});
}
// 每隔6秒执行一次
setInterval
(()
=>
{
dshtishi
();
},
6000
);
</script>
<script
src=
"{STATIC__PATH}/admin/echarts.min.js"
></script>
</body>
...
...
app/admin/view/order/payment/index.html
View file @
37fb1f8d
...
...
@@ -73,7 +73,7 @@
elem
:
'#payment'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
// css: 'td .layui-table-cell{height:80px;line-height:80px;padding:0 5px;}',
cols
:
[[
...
...
app/admin/view/project/project/index.html
View file @
37fb1f8d
...
...
@@ -3,7 +3,7 @@
<style>
#projectcategoryTreeBar
{
padding
:
10px
15px
;
border
:
1px
solid
#e6e6e6
;
background-color
:
#f2f2f2
}
#projectcategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
90px
);
height
:
-moz-calc
(
100vh
-
290px
);
height
:
calc
(
100vh
-
290
px
)}
#projectcategoryTree
{
border
:
1px
solid
#e6e6e6
;
border-top
:
none
;
padding
:
10px
5px
;
overflow
:
auto
;
height
:
-webkit-calc
(
100vh
-
2
05px
);
height
:
-moz-calc
(
100vh
-
205px
);
height
:
calc
(
100vh
-
205
px
)}
.layui-tree-entry
.layui-tree-txt
{
padding
:
0
5px
;
border
:
1px
transparent
solid
;
text-decoration
:
none
!important
}
.layui-tree-entry.organ-tree-click
.layui-tree-txt
{
background-color
:
#fff3e0
;
border
:
1px
#ffe6b0
solid
}
.files_itemwproject
{
width
:
30px
;
height
:
30px
;
line-height
:
30px
;
cursor
:
pointer
;
padding
:
1px
;
background
:
#fff
;
display
:
-webkit-box
;
-moz-box-align
:
center
;
-webkit-box-align
:
center
;
-moz-box-pack
:
center
;
-webkit-box-pack
:
center
;}
...
...
@@ -158,7 +158,7 @@
elem
:
'#project'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-
341
'
,
height
:
'full-
258
'
,
url
:
app_root
+
"index?&do=json"
,
// css: 'td .layui-table-cell{height:80px;line-height:80px;padding:0 5px;}',
where
:{
sh_status
:
sh_status
},
...
...
@@ -217,7 +217,7 @@
layer
.
open
({
type
:
2
,
// page 层类型
area
:
[
'500px'
,
'300px'
],
title
:
"
课程
推荐"
,
title
:
"
项目
推荐"
,
shade
:
0.6
,
// 遮罩透明度
shadeClose
:
true
,
// 点击遮罩区域,关闭弹层
btn
:
[
'确定'
,
'关闭'
],
...
...
app/admin/view/users/business/index.html
View file @
37fb1f8d
...
...
@@ -46,8 +46,11 @@
<script
type=
"text/html"
id=
"businessdemo"
>
<
div
class
=
"layui-clear-space"
>
<
a
class
=
"layui-btn layui-btn-xs"
lay
-
event
=
"detail"
>
详情
<
/a
>
{{
#
if
(
d
.
status
===
0
)
{
}}
<
a
class
=
"layui-btn layui-btn-xs"
lay
-
event
=
"shenhei"
>
审核
<
/a
>
{{
#
}
}}
<!--
<
a
class
=
"layui-btn layui-btn-xs"
lay
-
event
=
"more"
>-->
<!--
更多
-->
<!--
<
i
class
=
"layui-icon layui-icon-down"
><
/i>--
>
...
...
@@ -81,7 +84,7 @@
elem
:
'#business'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
status
:
status
},
cols
:
[[
...
...
app/admin/view/users/mail/index.html
View file @
37fb1f8d
...
...
@@ -67,7 +67,7 @@
elem
:
'#mail'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
// css: 'td .layui-table-cell{height:80px;line-height:80px;padding:0 5px;}',
cols
:
[[
...
...
app/admin/view/users/school/index.html
View file @
37fb1f8d
...
...
@@ -47,7 +47,9 @@
<
div
class
=
"layui-clear-space"
>
<
a
class
=
"layui-btn layui-btn-xs"
lay
-
event
=
"detail"
>
详情
<
/a
>
{{
#
if
(
d
.
status
===
0
)
{
}}
<
a
class
=
"layui-btn layui-btn-xs"
lay
-
event
=
"shenhei"
>
审核
<
/a
>
{{
#
}
}}
<!--
<
a
class
=
"layui-btn layui-btn-xs"
lay
-
event
=
"more"
>-->
<!--
更多
-->
<!--
<
i
class
=
"layui-icon layui-icon-down"
><
/i>--
>
...
...
@@ -86,7 +88,7 @@
elem
:
'#school'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
status
:
status
},
cols
:
[[
...
...
app/admin/view/users/user/index.html
View file @
37fb1f8d
...
...
@@ -73,7 +73,7 @@
elem
:
'#user'
,
page
:
true
,
limit
:{
$limit
},
height
:
'full-341'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
kc
:
kc
},
cols
:
[[
...
...
app/admin/view/users/user/usermoneylog.html
View file @
37fb1f8d
...
...
@@ -25,7 +25,7 @@
elem
:
'#usermoneylog'
,
page
:
true
,
limit
:{
$limit
},
height
:
'450'
,
url
:
app_root
+
"index?&do=json"
,
where
:{
user_id
:
user_id
},
// css: 'td .layui-table-cell{height:80px;line-height:80px;padding:0 5px;}',
...
...
app/api/controller/cert/Cert.php
View file @
37fb1f8d
...
...
@@ -46,8 +46,7 @@ class Cert extends BaseController
$page
=
$request
->
param
(
'page/d'
,
1
);
$pageSize
=
$request
->
param
(
'pageSize/d'
,
10
);
$data
[
'category_id'
]
=
$data
[
'category_id'
]
==
16
?
0
:
$data
[
'category_id'
];
$list
=
(
new
CertModel
())
->
getCertList
(
$data
[
'category_id'
],
$page
,
$pageSize
,
$data
[
'type'
],
$data
[
'searchKeyWords'
]
??
null
);
return
$this
->
returnMsg
(
'success'
,
1
,
$list
);
...
...
@@ -73,6 +72,9 @@ class Cert extends BaseController
$list
[
'data'
][]
=
$dd
;
$list
[
'data'
][]
=
$dd
;
$list
[
'data'
][]
=
$dd
;
$list
[
'data'
][]
=
$dd
;
$list
[
'data'
][]
=
$dd
;
$list
[
'data'
][]
=
$dd
;
return
$this
->
returnMsg
(
'success'
,
1
,
$list
);
}
...
...
app/api/controller/manage/Project.php
View file @
37fb1f8d
...
...
@@ -285,7 +285,7 @@ class Project extends BaseController
throw
new
\Exception
(
'企业信用金额更新失败'
);
}
//增加信用金额记录
UserMoneyLog
::
addUserMoneyLog
(
$request
->
userId
,
'-'
.
$data
[
'yusuan'
],
$user
[
'credit_money'
],
3
,
'发布项目:【'
.
$data
[
'title'
]
.
'】'
,
$project_id
,
2
);
UserMoneyLog
::
addUserMoneyLog
(
$request
->
userId
,
'-'
.
$data
[
'yusuan'
],
$user
[
'credit_money'
],
3
,
'发布项目:【'
.
$data
[
'title'
]
.
'】'
,
$project_id
,
1
);
// 提交事务
Db
::
commit
();
...
...
app/api/controller/manage/ShCourse.php
View file @
37fb1f8d
...
...
@@ -77,6 +77,12 @@ class ShCourse extends BaseController
}
$parm
=
$request
->
param
();
$where
=
[
'id'
=>
$parm
[
'course_id'
],
'user_id'
=>
$request
->
userId
];
if
(
$parm
[
'updateField'
]
==
'is_sell'
){
$status
=
ShCourseModel
::
where
(
$where
)
->
value
(
'status'
);
if
(
$status
!=
3
){
return
$this
->
returnMsg
(
'审核未通过不能上下架'
);
}
}
$result
=
ShCourseModel
::
where
(
$where
)
->
update
([
$parm
[
'updateField'
]
=>
$parm
[
'updateValue'
]]);
event
(
'Course'
,
[
'course_id'
=>
$parm
[
'course_id'
],
'tasktype'
=>
'course'
,
'action'
=>
'shcourseupdate'
]);
//同步数据
return
$this
->
returnMsg
(
'操作成功'
,
1
,
$result
);
...
...
app/api/controller/manage/User.php
View file @
37fb1f8d
...
...
@@ -6,6 +6,7 @@ use app\api\middleware\Auth;
use
app\api\service\UtilService
;
use
app\api\validate\BusinessValidate
;
use
app\BaseController
;
use
app\model\Payment
;
use
app\model\project\School
;
use
app\Request
;
use
think\facade\Db
;
...
...
@@ -70,4 +71,66 @@ class User extends BaseController
}
//用户订单
public
function
getOrderList
(
Request
$request
)
{
$page
=
$request
->
param
(
'page/d'
,
1
);
$pageSize
=
$request
->
param
(
'pageSize/d'
,
10
);
$where
=
[
'store_user_id'
=>
$request
->
userId
];
// 搜索条件
$order_no
=
$request
->
param
(
'order_no'
,
''
);
if
(
$order_no
)
{
$where
[
'order_no'
]
=
[
'like'
,
"%
{
$order_no
}
%"
];
}
$pay_no
=
$request
->
param
(
'pay_no'
,
''
);
if
(
$pay_no
)
{
$where
[
'pay_no'
]
=
[
'like'
,
"%
{
$pay_no
}
%"
];
}
$keyword
=
$request
->
param
(
'keyword'
,
''
);
$query
=
Payment
::
where
(
$where
)
// ->leftJoin('course c', "p.order_id = c.id AND p.order_type = 1")
// ->leftJoin('cert ce', "p.order_id = ce.id AND p.order_type = 2")
->
field
([
'order_no'
,
'pay_no'
,
'user_id'
,
'store_user_id'
,
'createtime'
,
'pay_channel'
,
'pay_method'
,
'order_price'
,
'pay_amount'
,
'pay_status'
,
'order_type'
,
'pay_time'
,
'subject'
])
->
with
([
'getuserdata'
])
->
append
([
'pay_method_text'
,
'pay_status_text'
,
'pay_time_text'
]);
if
(
$keyword
)
{
$query
=
$query
->
where
(
'p.subject'
,
'like'
,
"%
{
$keyword
}
%"
);
}
$list
=
$query
->
order
(
'createtime'
,
'desc'
)
->
paginate
([
'page'
=>
$page
,
'list_rows'
=>
$pageSize
]);
// foreach ($list as &$item) {
// $item['order_type_text'] = $item['order_type'] == 1 ? '课程' : '证书';
// $item['pay_method_text'] = $item['pay_method'] == 1 ? '支付宝' : '微信';
// }
// unset($item);
return
$this
->
returnMsg
(
'success'
,
1
,
$list
);
}
}
\ No newline at end of file
app/api/service/ProjectService.php
View file @
37fb1f8d
...
...
@@ -76,7 +76,7 @@ class ProjectService
$user
[
'id'
],
$projectData
[
'yusuan'
],
$user
[
'money'
],
1
,
0
,
'项目完成奖励'
,
$projectData
[
'id'
]
);
...
...
app/event/PhpOffice.php
View file @
37fb1f8d
...
...
@@ -194,6 +194,30 @@ class PhpOffice
return
$tempFile
;
}
/*
* 从阿里云oss文件保存到本地
*/
public
static
function
ossdownfile
(
$filePath
,
$downpath
=
''
)
{
//保存阿里云上面的地址
$filePath
=
str_replace
(
vconfig
(
'aliyun_domain'
)
.
'/'
,
""
,
$filePath
);
$domain
=
str_replace
(
'https://'
.
vconfig
(
'aliyun_bucket'
)
.
'.'
,
""
,
vconfig
(
'aliyun_domain'
));
// $filePath = strstr($filePath, 'public/');
// 1. 初始化OSS客户端
$ossClient
=
new
OssClient
(
vconfig
(
'access_key_id'
),
vconfig
(
'access_key_secret'
),
$domain
);
// 2. 创建临时文件
// 或者指定临时目录:
// $tempFile = '/tmp/oss_temp_' . uniqid() . '.xlsx';
// 3. 从OSS下载文件到临时文件
$options
=
array
(
OssClient
::
OSS_FILE_DOWNLOAD
=>
$downpath
);
$ossClient
->
getObject
(
vconfig
(
'aliyun_bucket'
),
$filePath
,
$options
);
}
}
class
ChunkReadFilter
implements
\PhpOffice\PhpSpreadsheet\Reader\IReadFilter
...
...
app/model/Project.php
View file @
37fb1f8d
...
...
@@ -184,6 +184,11 @@ class Project extends Model
public
function
getFileListAttr
(
$value
,
$data
)
{
return
get_upload_file
(
$data
[
'file_id_str'
],
'list'
);
}
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment