修改功能及样式
This commit is contained in:
parent
3ba4329600
commit
58527fad99
|
|
@ -47,15 +47,8 @@ public class NdNewController extends BaseController
|
||||||
@GetMapping()
|
@GetMapping()
|
||||||
public String news(ModelMap mmap)
|
public String news(ModelMap mmap)
|
||||||
{
|
{
|
||||||
List<CxSelect> cxList = new ArrayList<CxSelect>();
|
|
||||||
List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
||||||
for(int i=0;i< firstItems.size();i++){
|
mmap.put("data", firstItems);
|
||||||
CxSelect child = firstItems.get(i);
|
|
||||||
List<CxSelect> secondItems = ndNewService.getNewsTypes(Long.valueOf(child.getV()));
|
|
||||||
child.setS(secondItems);
|
|
||||||
cxList.add(child);
|
|
||||||
}
|
|
||||||
mmap.put("data", JSON.toJSON(cxList));
|
|
||||||
return prefix + "/list";
|
return prefix + "/list";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -71,6 +64,13 @@ public class NdNewController extends BaseController
|
||||||
List<NdNew> list = ndNewService.selectNdNewList(ndNew);
|
List<NdNew> list = ndNewService.selectNdNewList(ndNew);
|
||||||
return getDataTable(list);
|
return getDataTable(list);
|
||||||
}
|
}
|
||||||
|
@PostMapping("/getNewType")
|
||||||
|
@ResponseBody
|
||||||
|
public TableDataInfo getNewType(NdNew ndNew)
|
||||||
|
{
|
||||||
|
List<CxSelect> firstItems = ndNewService.getNewsTypes(ndNew.getId());
|
||||||
|
return getDataTable(firstItems);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 导出新闻列表
|
* 导出新闻列表
|
||||||
|
|
@ -92,15 +92,18 @@ public class NdNewController extends BaseController
|
||||||
@GetMapping("/add")
|
@GetMapping("/add")
|
||||||
public String add(ModelMap mmap)
|
public String add(ModelMap mmap)
|
||||||
{
|
{
|
||||||
List<CxSelect> cxList = new ArrayList<CxSelect>();
|
// List<CxSelect> cxList = new ArrayList<CxSelect>();
|
||||||
|
// List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
||||||
|
// for(int i=0;i< firstItems.size();i++){
|
||||||
|
// CxSelect child = firstItems.get(i);
|
||||||
|
// List<CxSelect> secondItems = ndNewService.getNewsTypes(Long.valueOf(child.getV()));
|
||||||
|
// child.setS(secondItems);
|
||||||
|
// cxList.add(child);
|
||||||
|
// }
|
||||||
|
// mmap.put("data", JSON.toJSON(cxList));
|
||||||
|
|
||||||
List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
||||||
for(int i=0;i< firstItems.size();i++){
|
mmap.put("data", firstItems);
|
||||||
CxSelect child = firstItems.get(i);
|
|
||||||
List<CxSelect> secondItems = ndNewService.getNewsTypes(Long.valueOf(child.getV()));
|
|
||||||
child.setS(secondItems);
|
|
||||||
cxList.add(child);
|
|
||||||
}
|
|
||||||
mmap.put("data", JSON.toJSON(cxList));
|
|
||||||
return prefix + "/add";
|
return prefix + "/add";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -134,6 +137,7 @@ public class NdNewController extends BaseController
|
||||||
String htmlRegex = "<[^>]*>";
|
String htmlRegex = "<[^>]*>";
|
||||||
// 使用正则表达式去除HTML标签
|
// 使用正则表达式去除HTML标签
|
||||||
String output = input.replaceAll(htmlRegex, "");
|
String output = input.replaceAll(htmlRegex, "");
|
||||||
|
output = output.replaceAll(" ", "");
|
||||||
return output;
|
return output;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -144,15 +148,21 @@ public class NdNewController extends BaseController
|
||||||
@GetMapping("/edit/{id}")
|
@GetMapping("/edit/{id}")
|
||||||
public String edit(@PathVariable("id") Long id, ModelMap mmap)
|
public String edit(@PathVariable("id") Long id, ModelMap mmap)
|
||||||
{
|
{
|
||||||
List<CxSelect> cxList = new ArrayList<CxSelect>();
|
// List<CxSelect> cxList = new ArrayList<CxSelect>();
|
||||||
|
// List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
||||||
|
// for(int i=0;i< firstItems.size();i++){
|
||||||
|
// CxSelect child = firstItems.get(i);
|
||||||
|
// List<CxSelect> secondItems = ndNewService.getNewsTypes(Long.valueOf(child.getV()));
|
||||||
|
// child.setS(secondItems);
|
||||||
|
// cxList.add(child);
|
||||||
|
// }
|
||||||
|
// mmap.put("data", JSON.toJSON(cxList));
|
||||||
|
|
||||||
|
|
||||||
List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
List<CxSelect> firstItems = ndNewService.getNewsTypes(0L);
|
||||||
for(int i=0;i< firstItems.size();i++){
|
mmap.put("data", firstItems);
|
||||||
CxSelect child = firstItems.get(i);
|
|
||||||
List<CxSelect> secondItems = ndNewService.getNewsTypes(Long.valueOf(child.getV()));
|
|
||||||
child.setS(secondItems);
|
|
||||||
cxList.add(child);
|
|
||||||
}
|
|
||||||
mmap.put("data", JSON.toJSON(cxList));
|
|
||||||
NdNew ndNew = ndNewService.selectNdNewById(id);
|
NdNew ndNew = ndNewService.selectNdNewById(id);
|
||||||
mmap.put("ndNew", ndNew);
|
mmap.put("ndNew", ndNew);
|
||||||
return prefix + "/edit";
|
return prefix + "/edit";
|
||||||
|
|
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 34 KiB |
|
|
@ -3,14 +3,14 @@ html {
|
||||||
}
|
}
|
||||||
body.signin {
|
body.signin {
|
||||||
height:auto;
|
height:auto;
|
||||||
background:url(../img/login-background.jpg) no-repeat center fixed;
|
background:url(../img/login-background.png) no-repeat center fixed;
|
||||||
-webkit-background-size:cover;
|
-webkit-background-size:cover;
|
||||||
-moz-background-size:cover;
|
-moz-background-size:cover;
|
||||||
-o-background-size:cover;
|
-o-background-size:cover;
|
||||||
background-size:cover
|
background-size:cover
|
||||||
}
|
}
|
||||||
.signinpanel {
|
.signinpanel {
|
||||||
width:750px;
|
width:900px;
|
||||||
margin:10% auto 0;
|
margin:10% auto 0;
|
||||||
color:rgba(255,255,255,.95)
|
color:rgba(255,255,255,.95)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1 +1 @@
|
||||||
html{height:100%}body.signin{height:auto;background:url(../img/login-background.jpg) no-repeat center fixed;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover}.signinpanel{width:750px;margin:10% auto 0;color:rgba(255,255,255,.95)}.signinpanel .logopanel{float:none;width:auto;padding:0;background:0}.signinpanel .signin-info ul{list-style:none;padding:0;margin:20px 0}.signinpanel .form-control{display:block;margin-top:15px}.signinpanel .uname{background:#fff url(../img/user.png) no-repeat 95% center;color:#333}.signinpanel .pword{background:#fff url(../img/locked.png) no-repeat 95% center;color:#333}.signinpanel .code{background:#fff no-repeat 95% center;color:#333;margin:0 0 15px 0}.signinpanel .btn{margin-top:15px}.signinpanel form{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);-moz-box-shadow:0 3px 0 rgba(12,12,12,.03);-webkit-box-shadow:0 3px 0 rgba(12,12,12,.03);box-shadow:0 3px 0 rgba(12,12,12,.03);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:30px}.signup-footer{border-top:solid 1px rgba(255,255,255,.3);margin:20px 0;padding-top:15px}@media screen and (max-width:768px){.signinpanel,.signuppanel{margin:0 auto;width:380px!important;padding:20px}.signinpanel form{margin-top:20px}.signup-footer,.signuppanel .form-control{margin-bottom:10px}.signup-footer .pull-left,.signup-footer .pull-right{float:none!important;text-align:center}.signinpanel .signin-info ul{display:none}}@media screen and (max-width:320px){.signinpanel,.signuppanel{margin:0 20px;width:auto}}.checkbox-custom{position:relative;padding:0 15px 0 25px;margin-bottom:7px;display:inline-block}.checkbox-custom input[type="checkbox"]{opacity:0;position:absolute;cursor:pointer;z-index:2;margin:-6px 0 0 0;top:50%;left:3px}.checkbox-custom label:before{content:'';position:absolute;top:50%;left:0;margin-top:-9px;width:18px;height:17px;display:inline-block;border-radius:2px;border:1px solid #bbb;background:#fff}.checkbox-custom input[type="checkbox"]:checked+label:after{position:absolute;display:inline-block;font-family:'Glyphicons Halflings';content:"\e013";top:42%;left:3px;margin-top:-5px;font-size:11px;line-height:1;width:16px;height:16px;color:#333}.checkbox-custom label{cursor:pointer;line-height:1.2;font-weight:normal;margin-bottom:0;text-align:left}.form-control,.form-control:focus,.has-error .form-control:focus,.has-success .form-control:focus,.has-warning .form-control:focus,.navbar-collapse,.navbar-form,.navbar-form-custom .form-control:focus,.navbar-form-custom .form-control:hover,.open .btn.dropdown-toggle,.panel,.popover,.progress,.progress-bar{box-shadow:none}.form-control{border-radius:1px!important;padding:6px 12px!important;height:34px!important}.form-control:focus{border-color:#1ab394!important}body .layer-ext-moon-msg[type="dialog"]{min-width:100px!important}body .layer-ext-moon-msg{background-color:rgba(0,0,0,0.6);color:#fff;border:0}body .layer-ext-moon-msg .layui-layer-content{padding:12px 25px;text-align:center}
|
html{height:100%}body.signin{height:auto;background:url(../img/login-background.png) no-repeat center fixed;-webkit-background-size:cover;-moz-background-size:cover;-o-background-size:cover;background-size:cover}.signinpanel{width:900px;margin:10% auto 0;color:rgba(255,255,255,.95)}.signinpanel .logopanel{float:none;width:auto;padding:0;background:0}.signinpanel .signin-info ul{list-style:none;padding:0;margin:20px 0}.signinpanel .form-control{display:block;margin-top:15px}.signinpanel .uname{background:#fff url(../img/user.png) no-repeat 95% center;color:#333}.signinpanel .pword{background:#fff url(../img/locked.png) no-repeat 95% center;color:#333}.signinpanel .code{background:#fff no-repeat 95% center;color:#333;margin:0 0 15px 0}.signinpanel .btn{margin-top:15px}.signinpanel form{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);-moz-box-shadow:0 3px 0 rgba(12,12,12,.03);-webkit-box-shadow:0 3px 0 rgba(12,12,12,.03);box-shadow:0 3px 0 rgba(12,12,12,.03);-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;padding:30px}.signup-footer{border-top:solid 1px rgba(255,255,255,.3);margin:20px 0;padding-top:15px}@media screen and (max-width:768px){.signinpanel,.signuppanel{margin:0 auto;width:380px!important;padding:20px}.signinpanel form{margin-top:20px}.signup-footer,.signuppanel .form-control{margin-bottom:10px}.signup-footer .pull-left,.signup-footer .pull-right{float:none!important;text-align:center}.signinpanel .signin-info ul{display:none}}@media screen and (max-width:320px){.signinpanel,.signuppanel{margin:0 20px;width:auto}}.checkbox-custom{position:relative;padding:0 15px 0 25px;margin-bottom:7px;display:inline-block}.checkbox-custom input[type="checkbox"]{opacity:0;position:absolute;cursor:pointer;z-index:2;margin:-6px 0 0 0;top:50%;left:3px}.checkbox-custom label:before{content:'';position:absolute;top:50%;left:0;margin-top:-9px;width:18px;height:17px;display:inline-block;border-radius:2px;border:1px solid #bbb;background:#fff}.checkbox-custom input[type="checkbox"]:checked+label:after{position:absolute;display:inline-block;font-family:'Glyphicons Halflings';content:"\e013";top:42%;left:3px;margin-top:-5px;font-size:11px;line-height:1;width:16px;height:16px;color:#333}.checkbox-custom label{cursor:pointer;line-height:1.2;font-weight:normal;margin-bottom:0;text-align:left}.form-control,.form-control:focus,.has-error .form-control:focus,.has-success .form-control:focus,.has-warning .form-control:focus,.navbar-collapse,.navbar-form,.navbar-form-custom .form-control:focus,.navbar-form-custom .form-control:hover,.open .btn.dropdown-toggle,.panel,.popover,.progress,.progress-bar{box-shadow:none}.form-control{border-radius:1px!important;padding:6px 12px!important;height:34px!important}.form-control:focus{border-color:#1ab394!important}body .layer-ext-moon-msg[type="dialog"]{min-width:100px!important}body .layer-ext-moon-msg{background-color:rgba(0,0,0,0.6);color:#fff;border:0}body .layer-ext-moon-msg .layui-layer-content{padding:12px 25px;text-align:center}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 1.0 MiB |
|
|
@ -2491,19 +2491,21 @@ html {
|
||||||
width: 33%;
|
width: 33%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.homeb .aleft .tzgg {
|
.homeb .aleft .tzgg {
|
||||||
background-size: 100% 100%;
|
background-size: 100% 100%;
|
||||||
padding: 1rem 1.875rem;
|
padding: 1rem 1.875rem 0.1rem 1.875rem;
|
||||||
background-color: #13439b;
|
background-color: #13439b;
|
||||||
}
|
}
|
||||||
|
|
||||||
.homeb .aleft .tzgg li {
|
.homeb .aleft .tzgg li {
|
||||||
margin-bottom: 1rem;
|
margin-bottom: 0.95rem;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
.jtfylist{
|
.jtfylist{
|
||||||
max-height: 31.25rem;
|
max-height: 31.25rem;
|
||||||
}
|
}
|
||||||
|
|
@ -4432,6 +4434,7 @@ li.A_li9:hover p {
|
||||||
padding:0.3rem 1rem;
|
padding:0.3rem 1rem;
|
||||||
position:absolute;
|
position:absolute;
|
||||||
bottom:2.4rem;
|
bottom:2.4rem;
|
||||||
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
.static-name h3{
|
.static-name h3{
|
||||||
font-family: "SourceHanSerifCN-Bold" !important;
|
font-family: "SourceHanSerifCN-Bold" !important;
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ function generPage(total, dom_page_class) {
|
||||||
|
|
||||||
|
|
||||||
let domStr = `
|
let domStr = `
|
||||||
<div class="pb_sys_common pb_sys_normal pb_sys_style1" style="margin-top: 10px; text-align: center; padding-bottom: 15px">
|
<div class="pb_sys_common pb_sys_normal pb_sys_style1" style="margin-top: 10px; text-align: center; padding-bottom: 15px;font-size: 16px;">
|
||||||
<span class="p_t">共${total}条</span>
|
<span class="p_t">共${total}条</span>
|
||||||
<span class="p_pages"><span class="p_no" ><a href="javascript:void(0);" onclick="pageChange(1,this)">首页</a></span>
|
<span class="p_pages"><span class="p_no" ><a href="javascript:void(0);" onclick="pageChange(1,this)">首页</a></span>
|
||||||
`
|
`
|
||||||
|
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 386 KiB |
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="renderer" content="webkit">
|
<meta name="renderer" content="webkit">
|
||||||
<title>若依系统首页</title>
|
<title>吉林省新农科长白山创新学院</title>
|
||||||
<!-- 避免IE使用兼容模式 -->
|
<!-- 避免IE使用兼容模式 -->
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<link th:href="@{favicon.ico}" rel="shortcut icon"/>
|
<link th:href="@{favicon.ico}" rel="shortcut icon"/>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="renderer" content="webkit">
|
<meta name="renderer" content="webkit">
|
||||||
<title>若依系统首页</title>
|
<title>吉林省新农科长白山创新学院</title>
|
||||||
<!-- 避免IE使用兼容模式 -->
|
<!-- 避免IE使用兼容模式 -->
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<link th:href="@{favicon.ico}" rel="shortcut icon"/>
|
<link th:href="@{favicon.ico}" rel="shortcut icon"/>
|
||||||
|
|
|
||||||
|
|
@ -21,15 +21,16 @@
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body class="signin">
|
<body class="signin">
|
||||||
<div class="signinpanel">
|
<div style="padding: 3rem 0 0 3rem;"><img alt="[ 吉林省新农科长白山创新学院 ]" src="../static/Log_img.png" th:src="@{/Log_img.png}" style="max-width:500px;"></div>
|
||||||
|
<div class="signinpanel">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-sm-7">
|
<div class="col-sm-7">
|
||||||
<div class="signin-info" style="text-align: center;">
|
<div class="signin-info" style="text-align: center;">
|
||||||
<div class="logopanel m-b">
|
<div class="logopanel m-b">
|
||||||
<h1><img alt="[ 吉林省新农科长白山创新学院 ]" src="../static/ruoyi.png" th:src="@{/ruoyi.png}"></h1>
|
<h1><img alt="[ 吉林省新农科长白山创新学院 ]" src="../static/ruoyi.png" th:src="@{/ruoyi.png}" style="max-width:500px;margin-top: -30px;"></h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="m-b"></div>
|
<!-- <div class="m-b"></div>-->
|
||||||
<h4>欢迎使用 <strong>长白山创新学院</strong> 后台管理系统</h4>
|
<!-- <h4>欢迎使用 <strong>长白山创新学院</strong> 后台管理系统</h4>-->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-5">
|
<div class="col-sm-5">
|
||||||
|
|
|
||||||
|
|
@ -12,13 +12,21 @@
|
||||||
<div id="element" class="form-group">
|
<div id="element" class="form-group">
|
||||||
<label class="col-sm-3 control-label">栏目类型:</label>
|
<label class="col-sm-3 control-label">栏目类型:</label>
|
||||||
<div class="col-sm-4">
|
<div class="col-sm-4">
|
||||||
<select class="first form-control" name="firstType" required>
|
<!-- <select class="form-control" name="firstType">-->
|
||||||
<option value="1" selected>首页</option>
|
<!-- <option value="1" selected>首页</option>-->
|
||||||
|
<!-- </select>-->
|
||||||
|
|
||||||
|
<select class="form-control" name="firstType" id="firstType" th:onchange="handleFirst()">
|
||||||
|
<option value="">请选择</option>
|
||||||
|
<option th:value="${item.v}" th:each="item : ${data}">[[${item.n}]]</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-4">
|
<div class="col-sm-4">
|
||||||
<select class="second form-control" name="newType" required>
|
<!-- <select class="form-control" name="newType">-->
|
||||||
<option value="10" selected>新闻动态</option>
|
<!-- <option value="10" selected>新闻动态</option>-->
|
||||||
|
<!-- </select>-->
|
||||||
|
<select class="form-control" name="newType" id="newType">
|
||||||
|
<option value="">请选择</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -101,56 +109,68 @@
|
||||||
<th:block th:include="include :: datetimepicker-js" />
|
<th:block th:include="include :: datetimepicker-js" />
|
||||||
<th:block th:include="include :: bootstrap-fileinput-js"/>
|
<th:block th:include="include :: bootstrap-fileinput-js"/>
|
||||||
<th:block th:include="include :: summernote-js" />
|
<th:block th:include="include :: summernote-js" />
|
||||||
<th:block th:include="include :: jquery-cxselect-js" />
|
<!-- <th:block th:include="include :: jquery-cxselect-js" />-->
|
||||||
|
<!-- <script th:src="@{/ajax/libs/cxselect/jquery.cxselect.js}"></script>-->
|
||||||
<script th:inline="javascript">
|
<script th:inline="javascript">
|
||||||
|
|
||||||
// 直接返回获取
|
|
||||||
var data = [[${data}]];
|
|
||||||
$('#element').cxSelect({
|
|
||||||
selects: ['first', 'second'],
|
|
||||||
jsonValue: 'v',
|
|
||||||
data: data
|
|
||||||
});
|
|
||||||
|
|
||||||
var prefix = ctx + "back/news/news"
|
var prefix = ctx + "back/news/news"
|
||||||
$("#form-new-add").validate({
|
|
||||||
focusCleanup: true
|
|
||||||
});
|
|
||||||
|
|
||||||
function submitHandler() {
|
function submitHandler() {
|
||||||
if ($.validate.form()) {
|
if ($.validate.form()) {
|
||||||
$.operate.save(prefix + "/add", $('#form-new-add').serialize());
|
$.operate.save(prefix + "/add", $('#form-new-add').serialize());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$("input[name='publishTime']").datetimepicker({
|
function handleFirst(){
|
||||||
format: "yyyy-mm-dd",
|
var record = document.getElementById("firstType").value;
|
||||||
minView: "month",
|
$.ajax({
|
||||||
autoclose: true
|
type: "post",
|
||||||
});
|
url: "/back/news/news/getNewType",
|
||||||
|
data: {
|
||||||
|
"id": record,
|
||||||
|
"fragment":'fragment-tasklist'
|
||||||
|
},
|
||||||
|
success: function(data) {
|
||||||
|
console.log('2222->',data);
|
||||||
|
var rows = data.rows;
|
||||||
|
var optionhtml = `<option value="">请选择</option>`;
|
||||||
|
for(var i = 0; i < rows.length; i++) {
|
||||||
|
optionhtml += `<option value="${rows[i].v}">${rows[i].n}</option>`;
|
||||||
|
}
|
||||||
|
document.getElementById("newType").innerHTML = optionhtml;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
$(".file-upload").fileinput({
|
$(function() {
|
||||||
uploadUrl: ctx + 'common/upload',
|
|
||||||
maxFileCount: 1,
|
|
||||||
autoReplace: true
|
|
||||||
}).on('fileuploaded', function (event, data, previewId, index) {
|
|
||||||
$("input[name='" + event.currentTarget.id + "']").val(data.response.url)
|
|
||||||
}).on('fileremoved', function (event, id, index) {
|
|
||||||
$("input[name='" + event.currentTarget.id + "']").val('')
|
|
||||||
})
|
|
||||||
|
|
||||||
$(".file-uploadb").fileinput({
|
$("input[name='publishTime']").datetimepicker({
|
||||||
uploadUrl: ctx + 'common/upload',
|
format: "yyyy-mm-dd",
|
||||||
maxFileCount: 10,
|
minView: "month",
|
||||||
autoReplace: true
|
autoclose: true
|
||||||
|
});
|
||||||
|
|
||||||
|
$(".file-upload").fileinput({
|
||||||
|
uploadUrl: ctx + 'common/upload',
|
||||||
|
maxFileCount: 1,
|
||||||
|
autoReplace: true
|
||||||
|
}).on('fileuploaded', function (event, data, previewId, index) {
|
||||||
|
$("input[name='" + event.currentTarget.id + "']").val(data.response.url)
|
||||||
|
}).on('fileremoved', function (event, id, index) {
|
||||||
|
$("input[name='" + event.currentTarget.id + "']").val('')
|
||||||
|
})
|
||||||
|
|
||||||
|
$(".file-uploadb").fileinput({
|
||||||
|
uploadUrl: ctx + 'common/upload',
|
||||||
|
maxFileCount: 10,
|
||||||
|
autoReplace: true
|
||||||
}).on('fileuploaded', function (event, data, previewId, index) {
|
}).on('fileuploaded', function (event, data, previewId, index) {
|
||||||
var inputaaa = $("input[name='" + event.currentTarget.id + "']").val();
|
var inputaaa = $("input[name='" + event.currentTarget.id + "']").val();
|
||||||
$("input[name='" + event.currentTarget.id + "']").val(inputaaa+"|"+data.response.url)
|
$("input[name='" + event.currentTarget.id + "']").val(inputaaa+"|"+data.response.url)
|
||||||
}).on('fileremoved', function (event, id, index) {
|
}).on('fileremoved', function (event, id, index) {
|
||||||
$("input[name='" + event.currentTarget.id + "']").val('')
|
$("input[name='" + event.currentTarget.id + "']").val('')
|
||||||
})
|
})
|
||||||
|
|
||||||
$(function() {
|
|
||||||
$('.summernote').summernote({
|
$('.summernote').summernote({
|
||||||
lang: 'zh-CN',
|
lang: 'zh-CN',
|
||||||
dialogsInBody: true,
|
dialogsInBody: true,
|
||||||
|
|
@ -185,10 +205,15 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
});
|
|
||||||
|
|
||||||
|
$("#form-new-add").validate({
|
||||||
|
focusCleanup: true
|
||||||
|
});
|
||||||
|
|
||||||
$("#contentDiv").show();
|
$("#contentDiv").show();
|
||||||
$("#linkUrlDiv").hide();
|
$("#linkUrlDiv").hide();
|
||||||
|
});
|
||||||
|
|
||||||
function handleRadioChange() {
|
function handleRadioChange() {
|
||||||
var radios = document.getElementsByName("type");
|
var radios = document.getElementsByName("type");
|
||||||
|
|
|
||||||
|
|
@ -22,15 +22,23 @@
|
||||||
<div id="element" class="form-group">
|
<div id="element" class="form-group">
|
||||||
<label class="col-sm-3 control-label">栏目类型:</label>
|
<label class="col-sm-3 control-label">栏目类型:</label>
|
||||||
<div class="col-sm-4">
|
<div class="col-sm-4">
|
||||||
<select class="first form-control" name="firstType" required>
|
<!-- <select class="first form-control" name="firstType" required>-->
|
||||||
<option th:value="*{firstType}" selected>[[*{firstTypeStr}]]</option>
|
<!-- <option th:value="*{firstType}" selected>[[*{firstTypeStr}]]</option>-->
|
||||||
|
<!-- </select>-->
|
||||||
|
|
||||||
|
<select class="form-control" name="firstType" id="firstType" th:onchange="handleFirst('')">
|
||||||
|
<!-- <option th:value="*{firstType}" selected>[[*{firstTypeStr}]]</option>-->
|
||||||
|
<option th:value="${item.v}" th:each="item : ${data}">[[${item.n}]]</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
<!-- <div class="form-group">-->
|
<!-- <div class="form-group">-->
|
||||||
<div class="col-sm-4">
|
<div class="col-sm-4">
|
||||||
<select class="second form-control" name="newType" required>
|
<!-- <select class="second form-control" name="newType" required>-->
|
||||||
<option th:value="*{newType}" selected>[[*{newTypeStr}]]</option>
|
<!-- <option th:value="*{newType}" selected>[[*{newTypeStr}]]</option>-->
|
||||||
|
<!-- </select>-->
|
||||||
|
<select class="form-control" name="newType" id="newType">
|
||||||
|
<!-- <option th:value="*{newType}" selected>[[*{newTypeStr}]]</option>-->
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -116,19 +124,13 @@
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
<th:block th:include="include :: footer" />
|
<th:block th:include="include :: footer" />
|
||||||
|
<!-- <th:block th:include="include :: jquery-min-js" />-->
|
||||||
<th:block th:include="include :: datetimepicker-js" />
|
<th:block th:include="include :: datetimepicker-js" />
|
||||||
<th:block th:include="include :: bootstrap-fileinput-js"/>
|
<th:block th:include="include :: bootstrap-fileinput-js"/>
|
||||||
<th:block th:include="include :: summernote-js" />
|
<th:block th:include="include :: summernote-js" />
|
||||||
<th:block th:include="include :: jquery-cxselect-js" />
|
<!-- <th:block th:include="include :: jquery-cxselect-js" />-->
|
||||||
|
|
||||||
<script th:inline="javascript">
|
<script th:inline="javascript">
|
||||||
var ndNew = [[${ndNew}]];
|
|
||||||
// 直接返回获取
|
|
||||||
var data = [[${data}]];
|
|
||||||
$('#element').cxSelect({
|
|
||||||
selects: ['first', 'second'],
|
|
||||||
jsonValue: 'v',
|
|
||||||
data: data
|
|
||||||
});
|
|
||||||
|
|
||||||
var prefix = ctx + "back/news/news";
|
var prefix = ctx + "back/news/news";
|
||||||
$("#form-new-edit").validate({
|
$("#form-new-edit").validate({
|
||||||
|
|
@ -141,6 +143,81 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function handleFirst(newType){
|
||||||
|
var record = document.getElementById("firstType").value;
|
||||||
|
await $.ajax({
|
||||||
|
type: "post",
|
||||||
|
url: "/back/news/news/getNewType",
|
||||||
|
data: {
|
||||||
|
"id": record,
|
||||||
|
"fragment":'fragment-tasklist'
|
||||||
|
},
|
||||||
|
success: function(data) {
|
||||||
|
console.log('2222->',data);
|
||||||
|
var rows = data.rows;
|
||||||
|
var optionhtml = `<option value="">请选择</option>`;
|
||||||
|
for(var i = 0; i < rows.length; i++) {
|
||||||
|
optionhtml += `<option value="${rows[i].v}">${rows[i].n}</option>`;
|
||||||
|
}
|
||||||
|
document.getElementById("newType").innerHTML = optionhtml;
|
||||||
|
if(newType){
|
||||||
|
document.getElementById("newType").value = newType;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
$(function() {
|
||||||
|
var ndNew = [[${ndNew}]];
|
||||||
|
// 直接返回获取
|
||||||
|
// var data = [[${data}]];
|
||||||
|
// $('#element').cxSelect({
|
||||||
|
// selects: ['first', 'second'],
|
||||||
|
// jsonValue: 'v',
|
||||||
|
// data: data
|
||||||
|
// });
|
||||||
|
document.getElementById("firstType").value =ndNew.firstType;
|
||||||
|
handleFirst(ndNew.newType);
|
||||||
|
|
||||||
|
$('.summernote').each(function(i) {
|
||||||
|
$('#' + this.id).summernote({
|
||||||
|
lang: 'zh-CN',
|
||||||
|
dialogsInBody: true,
|
||||||
|
height: '300px',
|
||||||
|
callbacks: {
|
||||||
|
onChange: function(contents, $edittable) {
|
||||||
|
$("input[name='" + this.id + "']").val(contents);
|
||||||
|
},
|
||||||
|
onImageUpload: function(files) {
|
||||||
|
var obj = this;
|
||||||
|
var data = new FormData();
|
||||||
|
data.append("file", files[0]);
|
||||||
|
$.ajax({
|
||||||
|
type: "post",
|
||||||
|
url: ctx + "common/upload",
|
||||||
|
data: data,
|
||||||
|
cache: false,
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
dataType: 'json',
|
||||||
|
success: function(result) {
|
||||||
|
if (result.code == web_status.SUCCESS) {
|
||||||
|
$('#' + obj.id).summernote('insertImage', result.url);
|
||||||
|
} else {
|
||||||
|
$.modal.alertError(result.msg);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
$.modal.alertWarning("图片上传失败。");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
var content = $("input[name='" + this.id + "']").val();
|
||||||
|
$('#' + this.id).summernote('code', content);
|
||||||
|
})
|
||||||
|
|
||||||
$("input[name='publishTime']").datetimepicker({
|
$("input[name='publishTime']").datetimepicker({
|
||||||
format: "yyyy-mm-dd",
|
format: "yyyy-mm-dd",
|
||||||
minView: "month",
|
minView: "month",
|
||||||
|
|
@ -181,66 +258,29 @@
|
||||||
$(this).fileinput('_initFileActions');
|
$(this).fileinput('_initFileActions');
|
||||||
});
|
});
|
||||||
|
|
||||||
$(function() {
|
|
||||||
$('.summernote').each(function(i) {
|
|
||||||
$('#' + this.id).summernote({
|
|
||||||
lang: 'zh-CN',
|
|
||||||
dialogsInBody: true,
|
|
||||||
height: '300px',
|
|
||||||
callbacks: {
|
|
||||||
onChange: function(contents, $edittable) {
|
|
||||||
$("input[name='" + this.id + "']").val(contents);
|
|
||||||
},
|
|
||||||
onImageUpload: function(files) {
|
|
||||||
var obj = this;
|
|
||||||
var data = new FormData();
|
|
||||||
data.append("file", files[0]);
|
|
||||||
$.ajax({
|
|
||||||
type: "post",
|
|
||||||
url: ctx + "common/upload",
|
|
||||||
data: data,
|
|
||||||
cache: false,
|
|
||||||
contentType: false,
|
|
||||||
processData: false,
|
|
||||||
dataType: 'json',
|
|
||||||
success: function(result) {
|
|
||||||
if (result.code == web_status.SUCCESS) {
|
|
||||||
$('#' + obj.id).summernote('insertImage', result.url);
|
|
||||||
} else {
|
|
||||||
$.modal.alertError(result.msg);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
error: function(error) {
|
|
||||||
$.modal.alertWarning("图片上传失败。");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
var content = $("input[name='" + this.id + "']").val();
|
|
||||||
$('#' + this.id).summernote('code', content);
|
|
||||||
})
|
|
||||||
});
|
});
|
||||||
|
|
||||||
function handleRadioChange() {
|
function handleRadioChange() {
|
||||||
var radios = document.getElementsByName("type");
|
var radios = document.getElementsByName("type");
|
||||||
for (var i = 0; i < radios.length; i++) {
|
for (var i = 0; i < radios.length; i++) {
|
||||||
if (radios[i].checked) {
|
if (radios[i].checked) {
|
||||||
if(radios[i].value == 1){
|
if(radios[i].value == 1){
|
||||||
$("#contentDiv").show();
|
$("#contentDiv").show();
|
||||||
$("#linkUrlDiv").hide();
|
$("#linkUrlDiv").hide();
|
||||||
}
|
}
|
||||||
if(radios[i].value == 2){
|
if(radios[i].value == 2){
|
||||||
$("#contentDiv").hide();
|
$("#contentDiv").hide();
|
||||||
$("#linkUrlDiv").show();
|
$("#linkUrlDiv").show();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
handleRadioChange();
|
handleRadioChange();
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
<!-- <script th:src="@{/ajax/libs/cxselect/jquery.cxselect.js}"></script>-->
|
||||||
|
<script th:src="@{/ajax/libs/cxselect/jquery.cxselect.js}"></script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
@ -5,213 +5,250 @@
|
||||||
<th:block th:include="include :: datetimepicker-css" />
|
<th:block th:include="include :: datetimepicker-css" />
|
||||||
<th:block th:include="include :: bootstrap-fileinput-css"/>
|
<th:block th:include="include :: bootstrap-fileinput-css"/>
|
||||||
<th:block th:include="include :: summernote-css" />
|
<th:block th:include="include :: summernote-css" />
|
||||||
|
<script th:src="@{/ajax/libs/cxselect/jquery.cxselect.js}"></script>
|
||||||
</head>
|
</head>
|
||||||
<body class="white-bg">
|
<body class="white-bg">
|
||||||
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
|
||||||
<form class="form-horizontal m" id="form-new-edit" th:object="${ndNew}">
|
<form class="form-horizontal m" id="form-new-edit" th:object="${ndNew}">
|
||||||
<input name="id" th:field="*{id}" type="hidden">
|
<input name="id" th:field="*{id}" type="hidden">
|
||||||
<!-- <div class="form-group">-->
|
<!-- <div class="form-group">-->
|
||||||
<!-- <label class="col-sm-3 control-label">状态:</label>-->
|
<!-- <label class="col-sm-3 control-label">状态:</label>-->
|
||||||
<!-- <div class="col-sm-8">-->
|
<!-- <div class="col-sm-8">-->
|
||||||
<!-- <div class="radio-box" th:each="dict : ${@dict.getType('sys_normal_disable')}">-->
|
<!-- <div class="radio-box" th:each="dict : ${@dict.getType('sys_normal_disable')}">-->
|
||||||
<!-- <input type="radio" th:id="${'delFlag_' + dict.dictCode}" name="delFlag" th:value="${dict.dictValue}" th:checked="${dict.default}">-->
|
<!-- <input type="radio" th:id="${'delFlag_' + dict.dictCode}" name="delFlag" th:value="${dict.dictValue}" th:checked="${dict.default}">-->
|
||||||
<!-- <label th:for="${'delFlag_' + dict.dictCode}" th:text="${dict.dictLabel}"></label>-->
|
<!-- <label th:for="${'delFlag_' + dict.dictCode}" th:text="${dict.dictLabel}"></label>-->
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
<div id="element" class="form-group">
|
<div id="element" class="form-group">
|
||||||
<label class="col-sm-3 control-label">栏目类型:</label>
|
<label class="col-sm-3 control-label">栏目类型:</label>
|
||||||
<div class="col-sm-4">
|
<div class="col-sm-4">
|
||||||
<select class="first form-control" name="firstType" required>
|
<select class="first form-control" name="firstType" required>
|
||||||
<option th:value="*{firstType}" selected>[[*{firstTypeStr}]]</option>
|
<option th:value="*{firstType}" selected>[[*{firstTypeStr}]]</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
<!-- <div class="form-group">-->
|
<!-- <div class="form-group">-->
|
||||||
<div class="col-sm-4">
|
<div class="col-sm-4">
|
||||||
<select class="second form-control" name="newType" required>
|
<select class="second form-control" name="newType" required>
|
||||||
<option th:value="*{newType}" selected>[[*{newTypeStr}]]</option>
|
<option th:value="*{newType}" selected>[[*{newTypeStr}]]</option>
|
||||||
</select>
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">内容类型:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<div class="radio-box" th:each="dict : ${@dict.getType('news_content_type')}">
|
||||||
|
<input type="radio" th:id="${'type_' + dict.dictCode}" name="type" th:value="${dict.dictValue}" th:field="*{type}" th:onchange="'javascript:handleRadioChange()'">
|
||||||
|
<label th:for="${'type_' + dict.dictCode}" th:text="${dict.dictLabel}"></label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
</div>
|
||||||
<label class="col-sm-3 control-label">内容类型:</label>
|
<div class="form-group">
|
||||||
<div class="col-sm-8">
|
<label class="col-sm-3 control-label">标题:</label>
|
||||||
<div class="radio-box" th:each="dict : ${@dict.getType('news_content_type')}">
|
<div class="col-sm-8">
|
||||||
<input type="radio" th:id="${'type_' + dict.dictCode}" name="type" th:value="${dict.dictValue}" th:field="*{type}" th:onchange="'javascript:handleRadioChange()'">
|
<input name="title" th:field="*{title}" class="form-control" required>
|
||||||
<label th:for="${'type_' + dict.dictCode}" th:text="${dict.dictLabel}"></label>
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">来源或作者:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input name="sourceAuthor" th:field="*{sourceAuthor}" class="form-control" type="text">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">发布时间:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<div class="input-group date">
|
||||||
|
<input name="publishTime" th:value="${#dates.format(ndNew.publishTime, 'yyyy-MM-dd')}" class="form-control" placeholder="yyyy-MM-dd" type="text">
|
||||||
|
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div id="contentDiv" class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">内容:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input type="hidden" class="form-control" th:field="*{content}">
|
||||||
|
<div class="summernote" id="content"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div id="linkUrlDiv" class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">超链接:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<textarea name="linkUrl" type="url" class="form-control">[[*{linkUrl}]]</textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="form-group">
|
||||||
|
<label class="col-sm-3 control-label">缩略图:</label>
|
||||||
|
<div class="col-sm-8">
|
||||||
|
<input type="hidden" name="imagePath" th:field="*{imagePath}">
|
||||||
|
<div class="file-loading">
|
||||||
|
<input class="form-control file-upload" id="imagePath" name="file" type="file" accept="image/*">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
</div>
|
||||||
<label class="col-sm-3 control-label">标题:</label>
|
<div class="form-group">
|
||||||
<div class="col-sm-8">
|
<label class="col-sm-3 control-label">附件:</label>
|
||||||
<input name="title" th:field="*{title}" class="form-control" required>
|
<div class="col-sm-8">
|
||||||
|
<input type="hidden" name="filePath" th:field="*{filePath}">
|
||||||
|
<div class="file-loading">
|
||||||
|
<input class="form-control file-uploadb" id="filePath" name="file" type="file" accept="*" multiple>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
</div>
|
||||||
<label class="col-sm-3 control-label">来源或作者:</label>
|
<!-- <div class="form-group">-->
|
||||||
<div class="col-sm-8">
|
<!-- <label class="col-sm-3 control-label">摘要:</label>-->
|
||||||
<input name="sourceAuthor" th:field="*{sourceAuthor}" class="form-control" type="text">
|
<!-- <div class="col-sm-8">-->
|
||||||
</div>
|
<!-- <textarea name="abstracts" class="form-control">[[*{abstracts}]]</textarea>-->
|
||||||
</div>
|
<!-- </div>-->
|
||||||
<div class="form-group">
|
<!-- </div>-->
|
||||||
<label class="col-sm-3 control-label">发布时间:</label>
|
<!-- <div class="form-group">-->
|
||||||
<div class="col-sm-8">
|
<!-- <label class="col-sm-3 control-label">点击率:</label>-->
|
||||||
<div class="input-group date">
|
<!-- <div class="col-sm-8">-->
|
||||||
<input name="publishTime" th:value="${#dates.format(ndNew.publishTime, 'yyyy-MM-dd')}" class="form-control" placeholder="yyyy-MM-dd" type="text">
|
<!-- <input name="clickRate" th:field="*{clickRate}" type="number" class="form-control">-->
|
||||||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span>
|
<!-- </div>-->
|
||||||
</div>
|
<!-- </div>-->
|
||||||
</div>
|
<!-- <div class="form-group">-->
|
||||||
</div>
|
<!-- <label class="col-sm-3 control-label">排序:</label>-->
|
||||||
<div id="contentDiv" class="form-group">
|
<!-- <div class="col-sm-8">-->
|
||||||
<label class="col-sm-3 control-label">内容:</label>
|
<!-- <input name="sort" th:field="*{sort}" class="form-control" type="number">-->
|
||||||
<div class="col-sm-8">
|
<!-- </div>-->
|
||||||
<input type="hidden" class="form-control" th:field="*{content}">
|
<!-- </div>-->
|
||||||
<div class="summernote" id="content"></div>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<th:block th:include="include :: footer" />
|
||||||
<div id="linkUrlDiv" class="form-group">
|
<!-- <th:block th:include="include :: jquery-min-js" />-->
|
||||||
<label class="col-sm-3 control-label">超链接:</label>
|
<th:block th:include="include :: datetimepicker-js" />
|
||||||
<div class="col-sm-8">
|
<th:block th:include="include :: bootstrap-fileinput-js"/>
|
||||||
<textarea name="linkUrl" type="url" class="form-control">[[*{linkUrl}]]</textarea>
|
<th:block th:include="include :: summernote-js" />
|
||||||
</div>
|
<!-- <th:block th:include="include :: jquery-cxselect-js" />-->
|
||||||
</div>
|
|
||||||
<div class="form-group">
|
<!--<script th:src="@{/ajax/libs/cxselect/jquery.cxselect.js}"></script>-->
|
||||||
<label class="col-sm-3 control-label">缩略图:</label>
|
<script th:inline="javascript">
|
||||||
<div class="col-sm-8">
|
|
||||||
<input type="hidden" name="imagePath" th:field="*{imagePath}">
|
|
||||||
<div class="file-loading">
|
function submitHandler() {
|
||||||
<input class="form-control file-upload" id="imagePath" name="file" type="file" accept="image/*">
|
if ($.validate.form()) {
|
||||||
</div>
|
$.operate.save(prefix + "/edit", $('#form-new-edit').serialize());
|
||||||
</div>
|
}
|
||||||
</div>
|
}
|
||||||
</form>
|
|
||||||
</div>
|
|
||||||
<th:block th:include="include :: footer" />
|
$(function() {
|
||||||
<th:block th:include="include :: datetimepicker-js" />
|
|
||||||
<th:block th:include="include :: bootstrap-fileinput-js"/>
|
|
||||||
<th:block th:include="include :: summernote-js" />
|
|
||||||
<th:block th:include="include :: jquery-cxselect-js" />
|
|
||||||
<script th:inline="javascript">
|
|
||||||
var ndNew = [[${ndNew}]];
|
var ndNew = [[${ndNew}]];
|
||||||
// 直接返回获取
|
// 直接返回获取
|
||||||
var data = [[${data}]];
|
var data = [[${data}]];
|
||||||
$('#element').cxSelect({
|
$('#element').cxSelect({
|
||||||
selects: ['first', 'second'],
|
selects: ['first', 'second'],
|
||||||
jsonValue: 'v',
|
jsonValue: 'v',
|
||||||
data: data
|
data: data
|
||||||
});
|
});
|
||||||
|
|
||||||
var prefix = ctx + "back/news/news";
|
var prefix = ctx + "back/news/news";
|
||||||
$("#form-new-edit").validate({
|
$("#form-new-edit").validate({
|
||||||
focusCleanup: true
|
focusCleanup: true
|
||||||
});
|
});
|
||||||
|
|
||||||
function submitHandler() {
|
$('.summernote').each(function(i) {
|
||||||
if ($.validate.form()) {
|
$('#' + this.id).summernote({
|
||||||
$.operate.save(prefix + "/edit", $('#form-new-edit').serialize());
|
lang: 'zh-CN',
|
||||||
}
|
dialogsInBody: true,
|
||||||
}
|
height: '300px',
|
||||||
|
callbacks: {
|
||||||
|
onChange: function(contents, $edittable) {
|
||||||
|
$("input[name='" + this.id + "']").val(contents);
|
||||||
|
},
|
||||||
|
onImageUpload: function(files) {
|
||||||
|
var obj = this;
|
||||||
|
var data = new FormData();
|
||||||
|
data.append("file", files[0]);
|
||||||
|
$.ajax({
|
||||||
|
type: "post",
|
||||||
|
url: ctx + "common/upload",
|
||||||
|
data: data,
|
||||||
|
cache: false,
|
||||||
|
contentType: false,
|
||||||
|
processData: false,
|
||||||
|
dataType: 'json',
|
||||||
|
success: function(result) {
|
||||||
|
if (result.code == web_status.SUCCESS) {
|
||||||
|
$('#' + obj.id).summernote('insertImage', result.url);
|
||||||
|
} else {
|
||||||
|
$.modal.alertError(result.msg);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
error: function(error) {
|
||||||
|
$.modal.alertWarning("图片上传失败。");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
var content = $("input[name='" + this.id + "']").val();
|
||||||
|
$('#' + this.id).summernote('code', content);
|
||||||
|
})
|
||||||
|
|
||||||
$("input[name='publishTime']").datetimepicker({
|
$("input[name='publishTime']").datetimepicker({
|
||||||
format: "yyyy-mm-dd",
|
format: "yyyy-mm-dd",
|
||||||
minView: "month",
|
minView: "month",
|
||||||
autoclose: true
|
autoclose: true
|
||||||
});
|
});
|
||||||
|
|
||||||
$(".file-upload").each(function (i) {
|
$(".file-upload").each(function (i) {
|
||||||
var val = $("input[name='" + this.id + "']").val()
|
var val = $("input[name='" + this.id + "']").val()
|
||||||
$(this).fileinput({
|
$(this).fileinput({
|
||||||
'uploadUrl': ctx + 'common/upload',
|
'uploadUrl': ctx + 'common/upload',
|
||||||
initialPreviewAsData: true,
|
initialPreviewAsData: true,
|
||||||
initialPreview: [val],
|
initialPreview: [val],
|
||||||
maxFileCount: 1,
|
maxFileCount: 1,
|
||||||
autoReplace: true
|
autoReplace: true
|
||||||
}).on('fileuploaded', function (event, data, previewId, index) {
|
}).on('fileuploaded', function (event, data, previewId, index) {
|
||||||
$("input[name='" + event.currentTarget.id + "']").val(data.response.url)
|
$("input[name='" + event.currentTarget.id + "']").val(data.response.url)
|
||||||
}).on('fileremoved', function (event, id, index) {
|
}).on('fileremoved', function (event, id, index) {
|
||||||
$("input[name='" + event.currentTarget.id + "']").val('')
|
$("input[name='" + event.currentTarget.id + "']").val('')
|
||||||
})
|
})
|
||||||
$(this).fileinput('_initFileActions');
|
$(this).fileinput('_initFileActions');
|
||||||
});
|
});
|
||||||
|
|
||||||
$(".file-uploadb").each(function (i) {
|
|
||||||
var val = $("input[name='" + this.id + "']").val()
|
|
||||||
$(this).fileinput({
|
|
||||||
'uploadUrl': ctx + 'common/upload',
|
|
||||||
initialPreviewAsData: true,
|
|
||||||
initialPreview: [val],
|
|
||||||
maxFileCount: 10,
|
|
||||||
autoReplace: true
|
|
||||||
}).on('fileuploaded', function (event, data, previewId, index) {
|
|
||||||
var inputaaa = $("input[name='" + event.currentTarget.id + "']").val();
|
|
||||||
$("input[name='" + event.currentTarget.id + "']").val(inputaaa+"|"+data.response.url)
|
|
||||||
}).on('fileremoved', function (event, id, index) {
|
|
||||||
$("input[name='" + event.currentTarget.id + "']").val('')
|
|
||||||
})
|
|
||||||
$(this).fileinput('_initFileActions');
|
|
||||||
});
|
|
||||||
$(function() {
|
|
||||||
$('.summernote').each(function(i) {
|
|
||||||
$('#' + this.id).summernote({
|
|
||||||
lang: 'zh-CN',
|
|
||||||
dialogsInBody: true,
|
|
||||||
height: '300px',
|
|
||||||
callbacks: {
|
|
||||||
onChange: function(contents, $edittable) {
|
|
||||||
$("input[name='" + this.id + "']").val(contents);
|
|
||||||
},
|
|
||||||
onImageUpload: function(files) {
|
|
||||||
var obj = this;
|
|
||||||
var data = new FormData();
|
|
||||||
data.append("file", files[0]);
|
|
||||||
$.ajax({
|
|
||||||
type: "post",
|
|
||||||
url: ctx + "common/upload",
|
|
||||||
data: data,
|
|
||||||
cache: false,
|
|
||||||
contentType: false,
|
|
||||||
processData: false,
|
|
||||||
dataType: 'json',
|
|
||||||
success: function(result) {
|
|
||||||
if (result.code == web_status.SUCCESS) {
|
|
||||||
$('#' + obj.id).summernote('insertImage', result.url);
|
|
||||||
} else {
|
|
||||||
$.modal.alertError(result.msg);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
error: function(error) {
|
|
||||||
$.modal.alertWarning("图片上传失败。");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
var content = $("input[name='" + this.id + "']").val();
|
|
||||||
$('#' + this.id).summernote('code', content);
|
|
||||||
})
|
|
||||||
});
|
|
||||||
|
|
||||||
function handleRadioChange() {
|
$(".file-uploadb").each(function (i) {
|
||||||
var radios = document.getElementsByName("type");
|
var val = $("input[name='" + this.id + "']").val()
|
||||||
for (var i = 0; i < radios.length; i++) {
|
$(this).fileinput({
|
||||||
if (radios[i].checked) {
|
'uploadUrl': ctx + 'common/upload',
|
||||||
if(radios[i].value == 1){
|
initialPreviewAsData: true,
|
||||||
$("#contentDiv").show();
|
initialPreview: [val],
|
||||||
$("#linkUrlDiv").hide();
|
maxFileCount: 10,
|
||||||
}
|
autoReplace: true
|
||||||
if(radios[i].value == 2){
|
}).on('fileuploaded', function (event, data, previewId, index) {
|
||||||
$("#contentDiv").hide();
|
var inputaaa = $("input[name='" + event.currentTarget.id + "']").val();
|
||||||
$("#linkUrlDiv").show();
|
$("input[name='" + event.currentTarget.id + "']").val(inputaaa+"|"+data.response.url)
|
||||||
}
|
}).on('fileremoved', function (event, id, index) {
|
||||||
break;
|
$("input[name='" + event.currentTarget.id + "']").val('')
|
||||||
}
|
})
|
||||||
}
|
$(this).fileinput('_initFileActions');
|
||||||
}
|
});
|
||||||
|
|
||||||
handleRadioChange();
|
});
|
||||||
|
|
||||||
</script>
|
function handleRadioChange() {
|
||||||
|
var radios = document.getElementsByName("type");
|
||||||
|
for (var i = 0; i < radios.length; i++) {
|
||||||
|
if (radios[i].checked) {
|
||||||
|
if(radios[i].value == 1){
|
||||||
|
$("#contentDiv").show();
|
||||||
|
$("#linkUrlDiv").hide();
|
||||||
|
}
|
||||||
|
if(radios[i].value == 2){
|
||||||
|
$("#contentDiv").hide();
|
||||||
|
$("#linkUrlDiv").show();
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
handleRadioChange();
|
||||||
|
|
||||||
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
@ -12,15 +12,14 @@
|
||||||
<ul id="element">
|
<ul id="element">
|
||||||
<li>
|
<li>
|
||||||
<label>栏目类型:</label>
|
<label>栏目类型:</label>
|
||||||
<select class="first" name="firstType">
|
<select name="firstType" id="firstType" th:onchange="handleFirst()">
|
||||||
<option value="">所有</option>
|
<option value="">所有</option>
|
||||||
<!-- <option value="1" selected>首页</option>-->
|
<option th:value="${item.v}" th:each="item : ${data}">[[${item.n}]]</option>
|
||||||
</select>
|
</select>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<select class="second" name="newType">
|
<select name="newType" id="newType">
|
||||||
<option value="">所有</option>
|
<option value="">所有</option>
|
||||||
<!-- <option value="10" selected>新闻动态</option>-->
|
|
||||||
</select>
|
</select>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -81,7 +80,9 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<th:block th:include="include :: footer" />
|
<th:block th:include="include :: footer" />
|
||||||
<th:block th:include="include :: jquery-cxselect-js" />
|
<!-- <script th:src="@{/js/jquery.min.js}"></script>-->
|
||||||
|
<!-- <th:block th:include="include :: jquery-cxselect-js" />-->
|
||||||
|
<!-- <script th:src="@{/ajax/libs/cxselect/jquery.cxselect.js}"></script>-->
|
||||||
<script th:inline="javascript">
|
<script th:inline="javascript">
|
||||||
var editFlag = [[${@permission.hasPermi('news:news:edit')}]];
|
var editFlag = [[${@permission.hasPermi('news:news:edit')}]];
|
||||||
var removeFlag = [[${@permission.hasPermi('news:news:remove')}]];
|
var removeFlag = [[${@permission.hasPermi('news:news:remove')}]];
|
||||||
|
|
@ -89,14 +90,28 @@
|
||||||
var datas = [[${@dict.getType('sys_normal_disable')}]];
|
var datas = [[${@dict.getType('sys_normal_disable')}]];
|
||||||
var contentType = [{dictValue:"1",dictLabel:"文本"},{dictValue:"2",dictLabel:"超链接"}];
|
var contentType = [{dictValue:"1",dictLabel:"文本"},{dictValue:"2",dictLabel:"超链接"}];
|
||||||
|
|
||||||
|
function handleFirst(){
|
||||||
|
var record = document.getElementById("firstType").value;
|
||||||
|
$.ajax({
|
||||||
|
type: "post",
|
||||||
|
url: "/back/news/news/getNewType",
|
||||||
|
data: {
|
||||||
|
"id": record,
|
||||||
|
"fragment":'fragment-tasklist'
|
||||||
|
},
|
||||||
|
success: function(data) {
|
||||||
|
console.log('2222->',data);
|
||||||
|
var rows = data.rows;
|
||||||
|
var optionhtml = `<option value="">所有</option>`;
|
||||||
|
for(var i = 0; i < rows.length; i++) {
|
||||||
|
optionhtml += `<option value="${rows[i].v}">${rows[i].n}</option>`;
|
||||||
|
}
|
||||||
|
document.getElementById("newType").innerHTML = optionhtml;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
// 直接返回获取
|
// 直接返回获取
|
||||||
var data = [[${data}]];
|
var data = [[${data}]];
|
||||||
$('#element').cxSelect({
|
|
||||||
selects: ['first', 'second'],
|
|
||||||
jsonValue: 'v',
|
|
||||||
data: data
|
|
||||||
});
|
|
||||||
|
|
||||||
$(function() {
|
$(function() {
|
||||||
var options = {
|
var options = {
|
||||||
url: prefix + "/list",
|
url: prefix + "/list",
|
||||||
|
|
@ -167,6 +182,14 @@
|
||||||
}]
|
}]
|
||||||
};
|
};
|
||||||
$.table.init(options);
|
$.table.init(options);
|
||||||
|
|
||||||
|
|
||||||
|
// $('#element').cxSelect({
|
||||||
|
// selects: ['first', 'second'],
|
||||||
|
// jsonValue: 'v',
|
||||||
|
// data: data
|
||||||
|
// });
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
/* 用户管理-重置密码 */
|
/* 用户管理-重置密码 */
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="renderer" content="webkit">
|
<meta name="renderer" content="webkit">
|
||||||
<title>若依系统首页</title>
|
<title>吉林省新农科长白山创新学院</title>
|
||||||
<!-- 避免IE使用兼容模式 -->
|
<!-- 避免IE使用兼容模式 -->
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@
|
||||||
<a href="https://www.jlau.edu.cn/" title="吉林省新农科长白山创新学院">
|
<a href="https://www.jlau.edu.cn/" title="吉林省新农科长白山创新学院">
|
||||||
<img class="logo-d" src="../../static/portal/images/logo2.png" th:src="@{/portal/images/logo2.png}"/>
|
<img class="logo-d" src="../../static/portal/images/logo2.png" th:src="@{/portal/images/logo2.png}"/>
|
||||||
</a>
|
</a>
|
||||||
<a href="/" class="zhongying" title="吉林省新农科长白山创新学院"><span>吉林省新农科长白山创新学院</span>
|
<a href="/login" class="zhongying" title="吉林省新农科长白山创新学院"><span>吉林省新农科长白山创新学院</span>
|
||||||
<!-- <span>Changbai Mountain Innovation College of Emerging Agricultural Education, jilin Province</span> -->
|
<!-- <span>Changbai Mountain Innovation College of Emerging Agricultural Education, jilin Province</span> -->
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="renderer" content="webkit">
|
<meta name="renderer" content="webkit">
|
||||||
<title>若依系统首页</title>
|
<title>吉林省新农科长白山创新学院</title>
|
||||||
<!-- 避免IE使用兼容模式 -->
|
<!-- 避免IE使用兼容模式 -->
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
||||||
|
|
@ -34,12 +34,12 @@
|
||||||
<th:block th:include="portal/headerAndFooter :: header" />
|
<th:block th:include="portal/headerAndFooter :: header" />
|
||||||
|
|
||||||
<div class="oneping">
|
<div class="oneping">
|
||||||
<a href="/login">
|
<a href="javascript:void(0);">
|
||||||
<div class="xiaoxun">
|
<div class="xiaoxun">
|
||||||
<!-- <img src="./static/images/xiaoxun.svg" alt=""> -->
|
<!-- <img src="./static/images/xiaoxun.svg" alt=""> -->
|
||||||
<span class="xxleft">
|
<span class="xxleft">
|
||||||
<span class="hui">行知</span>
|
<span class="hui">行知</span>
|
||||||
合一·
|
合一<span style="font-size:16px;">·</span>
|
||||||
<span class="hui">自由</span>
|
<span class="hui">自由</span>
|
||||||
探求
|
探求
|
||||||
</span>
|
</span>
|
||||||
|
|
@ -49,7 +49,7 @@
|
||||||
</div>
|
</div>
|
||||||
<span class="xxright">
|
<span class="xxright">
|
||||||
<span class="hui">扎根</span>
|
<span class="hui">扎根</span>
|
||||||
大地·
|
大地<span style="font-size:16px;">·</span>
|
||||||
<span class="hui">开放</span>
|
<span class="hui">开放</span>
|
||||||
交融
|
交融
|
||||||
</span>
|
</span>
|
||||||
|
|
@ -87,7 +87,7 @@
|
||||||
<div class="swiper-slide slide bg-mask" th:each="item : ${xwdtList}" >
|
<div class="swiper-slide slide bg-mask" th:each="item : ${xwdtList}" >
|
||||||
<div class="pic">
|
<div class="pic">
|
||||||
<a th:href="${item.type=='2'}?${item.linkUrl}:'/portal/details?id='+${item.id}" target="_blank" th:title="${item.title}" class="mark">
|
<a th:href="${item.type=='2'}?${item.linkUrl}:'/portal/details?id='+${item.id}" target="_blank" th:title="${item.title}" class="mark">
|
||||||
<img th:src="${item.imagePath}" th:alt="${item.title}" style="max-width:875px;max-height:599px;" />
|
<img th:src="${item.imagePath}" th:alt="${item.title}" />
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<p>
|
<p>
|
||||||
|
|
@ -107,7 +107,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<script type="text/javascript">
|
<script th:inline="javascript">
|
||||||
var slidenews = new Swiper('.slidenews', {
|
var slidenews = new Swiper('.slidenews', {
|
||||||
resistanceRatio: 0,
|
resistanceRatio: 0,
|
||||||
spaceBetween: 5,
|
spaceBetween: 5,
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="renderer" content="webkit">
|
<meta name="renderer" content="webkit">
|
||||||
<title>若依系统首页</title>
|
<title>吉林省新农科长白山创新学院</title>
|
||||||
<!-- 避免IE使用兼容模式 -->
|
<!-- 避免IE使用兼容模式 -->
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
||||||
|
|
@ -43,8 +43,8 @@
|
||||||
<div class="crumbs">
|
<div class="crumbs">
|
||||||
<img src="../../static/portal/images/shouye.png" th:src="@{/portal/images/shouye.png}" alt="" />
|
<img src="../../static/portal/images/shouye.png" th:src="@{/portal/images/shouye.png}" alt="" />
|
||||||
<a href="/">首页 > </a>
|
<a href="/">首页 > </a>
|
||||||
<a th:href="'/portal/list?newType='+${twoCode}" th:if="${twoCode!='-1'}">[[${twoName}]] > </a>
|
<a>[[${twoName}]] > </a>
|
||||||
<a th:href="'/portal/list?newType='+${threeCode}">[[${threeName}]]</a>
|
<a>[[${threeName}]]</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -142,7 +142,7 @@
|
||||||
let str = result.rows.reduce(function (prve, item) {
|
let str = result.rows.reduce(function (prve, item) {
|
||||||
prve += `
|
prve += `
|
||||||
<li class="clearfix">
|
<li class="clearfix">
|
||||||
<a href="/portal/details?id=${item.id}" target="_blank" title="2023-2024秋 本科生第二次游泳集中测试通知" class="clearfix">
|
<a href="/portal/details?id=${item.id}" target="_blank" class="clearfix">
|
||||||
<div class="left txt">
|
<div class="left txt">
|
||||||
<div class="fnt_22 title">${item.title}</div>
|
<div class="fnt_22 title">${item.title}</div>
|
||||||
<div class="des">${item.abstracts}</div>
|
<div class="des">${item.abstracts}</div>
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="renderer" content="webkit">
|
<meta name="renderer" content="webkit">
|
||||||
<title>若依系统首页</title>
|
<title>吉林省新农科长白山创新学院</title>
|
||||||
<!-- 避免IE使用兼容模式 -->
|
<!-- 避免IE使用兼容模式 -->
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
<link href="../../static/portal/css/swiper.min.css" th:href="@{/portal/css/swiper.min.css}" rel="stylesheet" />
|
||||||
|
|
|
||||||
|
|
@ -689,6 +689,7 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils
|
||||||
Pattern p = Pattern.compile(regEx);
|
Pattern p = Pattern.compile(regEx);
|
||||||
Matcher m = p.matcher(html);
|
Matcher m = p.matcher(html);
|
||||||
String s = m.replaceAll("");
|
String s = m.replaceAll("");
|
||||||
|
s = s.replaceAll(" ","");
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -281,6 +281,7 @@ public class ShiroConfig
|
||||||
// 对静态资源设置匿名访问
|
// 对静态资源设置匿名访问
|
||||||
filterChainDefinitionMap.put("/favicon.ico**", "anon");
|
filterChainDefinitionMap.put("/favicon.ico**", "anon");
|
||||||
filterChainDefinitionMap.put("/ruoyi.png**", "anon");
|
filterChainDefinitionMap.put("/ruoyi.png**", "anon");
|
||||||
|
filterChainDefinitionMap.put("/Log_img.png**", "anon");
|
||||||
filterChainDefinitionMap.put("/html/**", "anon");
|
filterChainDefinitionMap.put("/html/**", "anon");
|
||||||
filterChainDefinitionMap.put("/css/**", "anon");
|
filterChainDefinitionMap.put("/css/**", "anon");
|
||||||
filterChainDefinitionMap.put("/docs/**", "anon");
|
filterChainDefinitionMap.put("/docs/**", "anon");
|
||||||
|
|
|
||||||
|
|
@ -158,7 +158,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
<select id="getNewsTypes" parameterType="Long" resultType="com.ruoyi.common.core.domain.CxSelect">
|
<select id="getNewsTypes" parameterType="Long" resultType="com.ruoyi.common.core.domain.CxSelect">
|
||||||
select id as v, name as n
|
select id as v, name as n,id,name
|
||||||
from nd_new_type
|
from nd_new_type
|
||||||
where parent_id = #{parentId}
|
where parent_id = #{parentId}
|
||||||
order by sort
|
order by sort
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue