first commit
This commit is contained in:
134
target/classes/templates/admin/news/add.ftl
Normal file
134
target/classes/templates/admin/news/add.ftl
Normal file
@@ -0,0 +1,134 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
||||
<title>猫眼|新闻管理-添加新闻</title>
|
||||
<#include "../common/header.ftl"/>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="lyear-layout-web">
|
||||
<div class="lyear-layout-container">
|
||||
<!--左侧导航-->
|
||||
<aside class="lyear-layout-sidebar">
|
||||
|
||||
<!-- logo -->
|
||||
<div id="logo" class="sidebar-header">
|
||||
<a href="index.html"><img src="/admin/images/logo.png" title="猫眼" alt="猫眼" /></a>
|
||||
</div>
|
||||
<div class="lyear-layout-sidebar-scroll">
|
||||
<#include "../common/left-menu.ftl"/>
|
||||
</div>
|
||||
|
||||
</aside>
|
||||
<!--End 左侧导航-->
|
||||
|
||||
<#include "../common/header-menu.ftl"/>
|
||||
|
||||
<!--页面主要内容-->
|
||||
<main class="lyear-layout-content">
|
||||
|
||||
<div class="container-fluid">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="card">
|
||||
<div class="card-header"><h4>添加新闻</h4></div>
|
||||
<div class="card-body">
|
||||
<form action="add" id="user-add-form" method="post" class="row">
|
||||
<div class="form-group col-md-12">
|
||||
<label>封面上传</label>
|
||||
<div class="form-controls">
|
||||
<ul class="list-inline clearfix lyear-uploads-pic">
|
||||
<li class="col-xs-4 col-sm-3 col-md-2">
|
||||
<figure>
|
||||
<img src="/admin/images/default-news.jpg" id="show-picture-img" alt="默认头像">
|
||||
</figure>
|
||||
</li>
|
||||
<input type="hidden" name="picture" class="required" id="picture" tips="请上传新闻封面!">
|
||||
<input type="file" id="select-file" style="display:none;" onchange="upload('show-picture-img','picture')">
|
||||
<li class="col-xs-4 col-sm-3 col-md-2">
|
||||
<a class="pic-add" id="add-pic-btn" href="javascript:void(0)" title="点击上传"></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">新闻标题</span>
|
||||
<input type="text" class="form-control required" id="title" name="title" value="" placeholder="请输入新闻标题" tips="请填写新闻标题" />
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">所属分类</span>
|
||||
<select name="newsCategory.id" class="form-control" id="newsCategory">
|
||||
<#list newsCategoryList as newsCategory>
|
||||
<option value="${newsCategory.id}">${newsCategory.name}</option>
|
||||
</#list>
|
||||
</select>
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">新闻摘要</span>
|
||||
<textarea class="form-control required" id="abs" name="abs" rows="3" maxlength="252" placeholder="请填写新闻摘要" tips="请填写新闻摘要"></textarea>
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">新闻内容</span>
|
||||
<textarea class="form-control required" id="content" name="content" rows="8" maxlength="2500" placeholder="请填写新闻内容" tips="请填写新闻内容"></textarea>
|
||||
</div>
|
||||
<div class="form-group col-md-12">
|
||||
<button type="button" class="btn btn-primary ajax-post" id="add-form-submit-btn">确 定</button>
|
||||
<button type="button" class="btn btn-default" onclick="javascript:history.back(-1);return false;">返 回</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</main>
|
||||
<!--End 页面主要内容-->
|
||||
</div>
|
||||
</div>
|
||||
<#include "../common/footer.ftl"/>
|
||||
<script type="text/javascript" src="/admin/js/perfect-scrollbar.min.js"></script>
|
||||
<script type="text/javascript" src="/admin/js/main.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
//提交按钮监听事件
|
||||
$("#add-form-submit-btn").click(function(){
|
||||
if(!checkForm("user-add-form")){
|
||||
return;
|
||||
}
|
||||
var data = $("#user-add-form").serialize();
|
||||
$.ajax({
|
||||
url:'add',
|
||||
type:'POST',
|
||||
data:data,
|
||||
dataType:'json',
|
||||
success:function(data){
|
||||
if(data.code == 0){
|
||||
showSuccessMsg('新闻添加成功!',function(){
|
||||
window.location.href = 'list';
|
||||
})
|
||||
}else{
|
||||
showErrorMsg(data.msg);
|
||||
}
|
||||
},
|
||||
error:function(data){
|
||||
alert('网络错误!');
|
||||
}
|
||||
});
|
||||
});
|
||||
//监听上传图片按钮
|
||||
$("#add-pic-btn").click(function(){
|
||||
$("#select-file").click();
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
135
target/classes/templates/admin/news/edit.ftl
Normal file
135
target/classes/templates/admin/news/edit.ftl
Normal file
@@ -0,0 +1,135 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
||||
<title>猫眼|新闻管理-编辑新闻</title>
|
||||
<#include "../common/header.ftl"/>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="lyear-layout-web">
|
||||
<div class="lyear-layout-container">
|
||||
<!--左侧导航-->
|
||||
<aside class="lyear-layout-sidebar">
|
||||
|
||||
<!-- logo -->
|
||||
<div id="logo" class="sidebar-header">
|
||||
<a href="index.html"><img src="/admin/images/logo.png" title="猫眼" alt="猫眼" /></a>
|
||||
</div>
|
||||
<div class="lyear-layout-sidebar-scroll">
|
||||
<#include "../common/left-menu.ftl"/>
|
||||
</div>
|
||||
|
||||
</aside>
|
||||
<!--End 左侧导航-->
|
||||
|
||||
<#include "../common/header-menu.ftl"/>
|
||||
|
||||
<!--页面主要内容-->
|
||||
<main class="lyear-layout-content">
|
||||
|
||||
<div class="container-fluid">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="card">
|
||||
<div class="card-header"><h4>编辑新闻</h4></div>
|
||||
<div class="card-body">
|
||||
<form action="add" id="user-add-form" method="post" class="row">
|
||||
<input type="hidden" name="id" value="${news.id}">
|
||||
<div class="form-group col-md-12">
|
||||
<label>封面上传</label>
|
||||
<div class="form-controls">
|
||||
<ul class="list-inline clearfix lyear-uploads-pic">
|
||||
<li class="col-xs-4 col-sm-3 col-md-2">
|
||||
<figure>
|
||||
<img src="/photo/view?filename=${news.picture}" id="show-picture-img" alt="默认头像">
|
||||
</figure>
|
||||
</li>
|
||||
<input type="hidden" value="${news.picture}" name="picture" class="required" id="picture" tips="请上传新闻封面!">
|
||||
<input type="file" id="select-file" style="display:none;" onchange="upload('show-picture-img','picture')">
|
||||
<li class="col-xs-4 col-sm-3 col-md-2">
|
||||
<a class="pic-add" id="add-pic-btn" href="javascript:void(0)" title="点击上传"></a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">新闻标题</span>
|
||||
<input type="text" class="form-control required" id="title" name="title" value="${news.title}" placeholder="请输入新闻标题" tips="请填写新闻标题" />
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">所属分类</span>
|
||||
<select name="newsCategory.id" class="form-control" id="newsCategory">
|
||||
<#list newsCategoryList as newsCategory>
|
||||
<option value="${newsCategory.id}" <#if news.newsCategory.id == newsCategory.id>selected</#if>>${newsCategory.name}</option>
|
||||
</#list>
|
||||
</select>
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">新闻摘要</span>
|
||||
<textarea class="form-control required" id="abs" name="abs" rows="3" maxlength="252" placeholder="请填写新闻摘要" tips="请填写新闻摘要">${news.abs}</textarea>
|
||||
</div>
|
||||
<div class="input-group m-b-10">
|
||||
<span class="input-group-addon">新闻内容</span>
|
||||
<textarea class="form-control required" id="content" name="content" rows="8" maxlength="2500" placeholder="请填写新闻内容" tips="请填写新闻内容">${news.content}</textarea>
|
||||
</div>
|
||||
<div class="form-group col-md-12">
|
||||
<button type="button" class="btn btn-primary ajax-post" id="add-form-submit-btn">确 定</button>
|
||||
<button type="button" class="btn btn-default" onclick="javascript:history.back(-1);return false;">返 回</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</main>
|
||||
<!--End 页面主要内容-->
|
||||
</div>
|
||||
</div>
|
||||
<#include "../common/footer.ftl"/>
|
||||
<script type="text/javascript" src="/admin/js/perfect-scrollbar.min.js"></script>
|
||||
<script type="text/javascript" src="/admin/js/main.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
//提交按钮监听事件
|
||||
$("#add-form-submit-btn").click(function(){
|
||||
if(!checkForm("user-add-form")){
|
||||
return;
|
||||
}
|
||||
var data = $("#user-add-form").serialize();
|
||||
$.ajax({
|
||||
url:'add',
|
||||
type:'POST',
|
||||
data:data,
|
||||
dataType:'json',
|
||||
success:function(data){
|
||||
if(data.code == 0){
|
||||
showSuccessMsg('新闻保存成功!',function(){
|
||||
window.location.href = 'list';
|
||||
})
|
||||
}else{
|
||||
showErrorMsg(data.msg);
|
||||
}
|
||||
},
|
||||
error:function(data){
|
||||
alert('网络错误!');
|
||||
}
|
||||
});
|
||||
});
|
||||
//监听上传图片按钮
|
||||
$("#add-pic-btn").click(function(){
|
||||
$("#select-file").click();
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
208
target/classes/templates/admin/news/list.ftl
Normal file
208
target/classes/templates/admin/news/list.ftl
Normal file
@@ -0,0 +1,208 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
||||
<title>猫眼|新闻管理-${title!""}</title>
|
||||
<#include "../common/header.ftl"/>
|
||||
<style>
|
||||
td{
|
||||
vertical-align:middle;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="lyear-layout-web">
|
||||
<div class="lyear-layout-container">
|
||||
<!--左侧导航-->
|
||||
<aside class="lyear-layout-sidebar">
|
||||
|
||||
<!-- logo -->
|
||||
<div id="logo" class="sidebar-header">
|
||||
<a href="index.html"><img src="/admin/images/logo.png" title="猫眼" alt="猫眼" /></a>
|
||||
</div>
|
||||
<div class="lyear-layout-sidebar-scroll">
|
||||
<#include "../common/left-menu.ftl"/>
|
||||
</div>
|
||||
|
||||
</aside>
|
||||
<!--End 左侧导航-->
|
||||
|
||||
<#include "../common/header-menu.ftl"/>
|
||||
|
||||
<!--页面主要内容-->
|
||||
<main class="lyear-layout-content">
|
||||
|
||||
<div class="container-fluid">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="card">
|
||||
<div class="card-toolbar clearfix">
|
||||
<form class="pull-right search-bar" method="get" action="list" role="form">
|
||||
<div class="input-group">
|
||||
<div class="input-group-btn">
|
||||
<button class="btn btn-default dropdown-toggle" id="search-btn" data-toggle="dropdown" type="button" aria-haspopup="true" aria-expanded="false">
|
||||
新闻标题 <span class="caret"></span>
|
||||
</button>
|
||||
<ul class="dropdown-menu">
|
||||
<li> <a tabindex="-1" href="javascript:void(0)" data-field="title">新闻标题</a> </li>
|
||||
</ul>
|
||||
</div>
|
||||
<input type="text" class="form-control" value="${title!""}" name="title" placeholder="请输入新闻名">
|
||||
<span class="input-group-btn">
|
||||
<button class="btn btn-primary" type="submit">搜索</button>
|
||||
</span>
|
||||
</div>
|
||||
</form>
|
||||
<#include "../common/third-menu.ftl"/>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<label class="lyear-checkbox checkbox-primary">
|
||||
<input type="checkbox" id="check-all"><span></span>
|
||||
</label>
|
||||
</th>
|
||||
<th>封面</th>
|
||||
<th>新闻标题</th>
|
||||
<th>所属分类</th>
|
||||
<th>浏览量</th>
|
||||
<th>添加时间</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<#if pageBean.content?size gt 0>
|
||||
<#list pageBean.content as news>
|
||||
<tr>
|
||||
<td style="vertical-align:middle;">
|
||||
<label class="lyear-checkbox checkbox-primary">
|
||||
<input type="checkbox" name="ids[]" value="${news.id}"><span></span>
|
||||
</label>
|
||||
</td>
|
||||
<td style="vertical-align:middle;">
|
||||
<#if news.picture??>
|
||||
<#if news.picture?length gt 0>
|
||||
<img src="/photo/view?filename=${news.picture}" width="60px" height="60px">
|
||||
<#else>
|
||||
<img src="/admin/images/default-head.jpg" width="60px" height="60px">
|
||||
</#if>
|
||||
</#if>
|
||||
</td>
|
||||
<td style="vertical-align:middle;">${news.title}</td>
|
||||
<td style="vertical-align:middle;">${news.newsCategory.name}</td>
|
||||
<td style="vertical-align:middle;">
|
||||
<font class="text-success">${news.viewNumber}</font>
|
||||
</td>
|
||||
<td style="vertical-align:middle;" style="vertical-align:middle;"><font class="text-success">${news.createTime}</font></td>
|
||||
</tr>
|
||||
</#list>
|
||||
<#else>
|
||||
<tr align="center"><td colspan="5">这里空空如也!</td></tr>
|
||||
</#if>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<#if pageBean.total gt 0>
|
||||
<ul class="pagination ">
|
||||
<#if pageBean.currentPage == 1>
|
||||
<li class="disabled"><span>«</span></li>
|
||||
<#else>
|
||||
<li><a href="list?title=${title!""}¤tPage=1">«</a></li>
|
||||
</#if>
|
||||
<#list pageBean.currentShowPage as showPage>
|
||||
<#if pageBean.currentPage == showPage>
|
||||
<li class="active"><span>${showPage}</span></li>
|
||||
<#else>
|
||||
<li><a href="list?title=${title!""}¤tPage=${showPage}">${showPage}</a></li>
|
||||
</#if>
|
||||
</#list>
|
||||
<#if pageBean.currentPage == pageBean.totalPage>
|
||||
<li class="disabled"><span>»</span></li>
|
||||
<#else>
|
||||
<li><a href="list?title=${title!""}¤tPage=${pageBean.totalPage}">»</a></li>
|
||||
</#if>
|
||||
<li><span>共${pageBean.totalPage}页,${pageBean.total}条数据</span></li>
|
||||
</ul>
|
||||
</#if>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</main>
|
||||
<!--End 页面主要内容-->
|
||||
</div>
|
||||
</div>
|
||||
<#include "../common/footer.ftl"/>
|
||||
<script type="text/javascript" src="/admin/js/perfect-scrollbar.min.js"></script>
|
||||
<script type="text/javascript" src="/admin/js/main.min.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(document).ready(function(){
|
||||
|
||||
});
|
||||
function del(url){
|
||||
if($("input[type='checkbox']:checked").length != 1){
|
||||
showWarningMsg('请选择一条数据进行删除!');
|
||||
return;
|
||||
}
|
||||
var id = $("input[type='checkbox']:checked").val();
|
||||
$.confirm({
|
||||
title: '确定删除?',
|
||||
content: '删除后数据不可恢复,请慎重!',
|
||||
buttons: {
|
||||
confirm: {
|
||||
text: '确认',
|
||||
action: function(){
|
||||
deleteReq(id,url);
|
||||
}
|
||||
},
|
||||
cancel: {
|
||||
text: '关闭',
|
||||
action: function(){
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
//打开编辑页面
|
||||
function edit(url){
|
||||
if($("input[type='checkbox']:checked").length != 1){
|
||||
showWarningMsg('请选择一条数据进行编辑!');
|
||||
return;
|
||||
}
|
||||
window.location.href = url + '?id=' + $("input[type='checkbox']:checked").val();
|
||||
}
|
||||
//调用删除方法
|
||||
function deleteReq(id,url){
|
||||
$.ajax({
|
||||
url:url,
|
||||
type:'POST',
|
||||
data:{id:id},
|
||||
dataType:'json',
|
||||
success:function(data){
|
||||
if(data.code == 0){
|
||||
showSuccessMsg('新闻删除成功!',function(){
|
||||
$("input[type='checkbox']:checked").parents("tr").remove();
|
||||
})
|
||||
}else{
|
||||
showErrorMsg(data.msg);
|
||||
}
|
||||
},
|
||||
error:function(data){
|
||||
alert('网络错误!');
|
||||
}
|
||||
});
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user