Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
guns-vip
Overview
Overview
Details
Activity
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
chenjunxiong
guns-vip
Commits
18467107
Commit
18467107
authored
May 09, 2017
by
fsn
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加页面,详情页面以及js模板化完成
parent
9d33074f
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
235 additions
and
39 deletions
+235
-39
src/main/baseResources/gunsTemplate/page_add.html.btl
+29
-0
src/main/baseResources/gunsTemplate/page_edit.html.btl
+29
-0
src/main/baseResources/gunsTemplate/page_info.js.btl
+92
-0
src/main/java/com/stylefeng/guns/core/template/config/ControllerConfig.java
+1
-0
src/main/java/com/stylefeng/guns/core/template/config/PageConfig.java
+28
-1
src/main/java/com/stylefeng/guns/core/template/engine/SimpleTemplateEngine.java
+29
-38
src/main/java/com/stylefeng/guns/core/template/engine/base/GunsTemplateEngine.java
+27
-0
No files found.
src/main/baseResources/gunsTemplate/page_add.html.btl
0 → 100644
View file @
18467107
@layout("/common/_container.html"){
<div class="ibox float-e-margins">
<div class="ibox-content">
<div class="form-horizontal">
<input type="hidden" id="id" value="">
<div class="row">
<div class="col-sm-6 b-r">
</div>
<div class="col-sm-6">
</div>
</div>
<div class="row btn-group-m-t">
<div class="col-sm-10">
<#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="${context.bizEnBigName}InfoDlg.addSubmit()"/>
<#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="${context.bizEnBigName}InfoDlg.close()"/>
</div>
</div>
</div>
</div>
</div>
<script src="\${ctxPath}/static/modular/system/${context.bizEnName}/${context.bizEnName}_info.js"></script>
@}
src/main/baseResources/gunsTemplate/page_edit.html.btl
0 → 100644
View file @
18467107
@layout("/common/_container.html"){
<div class="ibox float-e-margins">
<div class="ibox-content">
<div class="form-horizontal">
<input type="hidden" id="id" value="\${${context.bizEnName}.id}">
<div class="row">
<div class="col-sm-6 b-r">
</div>
<div class="col-sm-6">
</div>
</div>
<div class="row btn-group-m-t">
<div class="col-sm-10">
<#button btnCss="info" name="提交" id="ensure" icon="fa-check" clickFun="${context.bizEnBigName}InfoDlg.editSubmit()"/>
<#button btnCss="danger" name="取消" id="cancel" icon="fa-eraser" clickFun="${context.bizEnBigName}InfoDlg.close()"/>
</div>
</div>
</div>
</div>
</div>
<script src="\${ctxPath}/static/modular/system/${context.bizEnName}/${context.bizEnName}_info.js"></script>
@}
src/main/baseResources/gunsTemplate/page_info.js.btl
0 → 100644
View file @
18467107
/**
* 初始化${context.bizChName}详情对话框
*/
var ${context.bizEnBigName}InfoDlg = {
${context.bizEnName}InfoData : {}
};
/**
* 清除数据
*/
${context.bizEnBigName}InfoDlg.clearData = function() {
this.${context.bizEnName}InfoData = {};
}
/**
* 设置对话框中的数据
*
* @param key 数据的名称
* @param val 数据的具体值
*/
${context.bizEnBigName}InfoDlg.set = function(key, val) {
this.${context.bizEnName}InfoData[key] = (typeof value == "undefined") ? $("#" + key).val() : value;
return this;
}
/**
* 设置对话框中的数据
*
* @param key 数据的名称
* @param val 数据的具体值
*/
${context.bizEnBigName}InfoDlg.get = function(key) {
return $("#" + key).val();
}
/**
* 关闭此对话框
*/
${context.bizEnBigName}InfoDlg.close = function() {
parent.layer.close(window.parent.${context.bizEnBigName}.layerIndex);
}
/**
* 收集数据
*/
${context.bizEnBigName}InfoDlg.collectData = function() {
this.set('id');
}
/**
* 提交添加
*/
${context.bizEnBigName}InfoDlg.addSubmit = function() {
this.clearData();
this.collectData();
//提交信息
var ajax = new $ax(Feng.ctxPath + "/${context.bizEnName}/add", function(data){
Feng.success("添加成功!");
window.parent.${context.bizEnBigName}.table.refresh();
${context.bizEnBigName}InfoDlg.close();
},function(data){
Feng.error("添加失败!" + data.responseJSON.message + "!");
});
ajax.set(this.${context.bizEnName}InfoData);
ajax.start();
}
/**
* 提交修改
*/
${context.bizEnBigName}InfoDlg.editSubmit = function() {
this.clearData();
this.collectData();
//提交信息
var ajax = new $ax(Feng.ctxPath + "/${context.bizEnName}/update", function(data){
Feng.success("修改成功!");
window.parent.${context.bizEnBigName}.table.refresh();
${context.bizEnBigName}InfoDlg.close();
},function(data){
Feng.error("修改失败!" + data.responseJSON.message + "!");
});
ajax.set(this.${context.bizEnName}InfoData);
ajax.start();
}
$(function() {
});
src/main/java/com/stylefeng/guns/core/template/config/ControllerConfig.java
View file @
18467107
...
...
@@ -26,6 +26,7 @@ public class ControllerConfig {
imports
.
add
(
"org.springframework.web.bind.annotation.RequestMapping"
);
imports
.
add
(
"org.springframework.web.bind.annotation.ResponseBody"
);
imports
.
add
(
"org.springframework.ui.Model"
);
imports
.
add
(
"org.springframework.web.bind.annotation.PathVariable"
);
this
.
imports
=
imports
;
this
.
packageName
=
"com.stylefeng.guns.modular.system.controller"
;
}
...
...
src/main/java/com/stylefeng/guns/core/template/config/PageConfig.java
View file @
18467107
...
...
@@ -8,8 +8,11 @@ package com.stylefeng.guns.core.template.config;
*/
public
class
PageConfig
{
private
String
pageJsPathTemplate
=
"\\src\\main\\webapp\\static\\modular\\system\\{}\\{}.js"
;
private
String
pagePathTemplate
=
"\\src\\main\\webapp\\WEB-INF\\view\\system\\{}\\{}.html"
;
private
String
pageAddPathTemplate
=
"\\src\\main\\webapp\\WEB-INF\\view\\system\\{}\\{}_add.html"
;
private
String
pageEditPathTemplate
=
"\\src\\main\\webapp\\WEB-INF\\view\\system\\{}\\{}_edit.html"
;
private
String
pageJsPathTemplate
=
"\\src\\main\\webapp\\static\\modular\\system\\{}\\{}.js"
;
private
String
pageInfoJsPathTemplate
=
"\\src\\main\\webapp\\static\\modular\\system\\{}\\{}_info.js"
;
public
String
getPagePathTemplate
()
{
return
pagePathTemplate
;
...
...
@@ -26,4 +29,28 @@ public class PageConfig {
public
void
setPageJsPathTemplate
(
String
pageJsPathTemplate
)
{
this
.
pageJsPathTemplate
=
pageJsPathTemplate
;
}
public
String
getPageAddPathTemplate
()
{
return
pageAddPathTemplate
;
}
public
void
setPageAddPathTemplate
(
String
pageAddPathTemplate
)
{
this
.
pageAddPathTemplate
=
pageAddPathTemplate
;
}
public
String
getPageEditPathTemplate
()
{
return
pageEditPathTemplate
;
}
public
void
setPageEditPathTemplate
(
String
pageEditPathTemplate
)
{
this
.
pageEditPathTemplate
=
pageEditPathTemplate
;
}
public
String
getPageInfoJsPathTemplate
()
{
return
pageInfoJsPathTemplate
;
}
public
void
setPageInfoJsPathTemplate
(
String
pageInfoJsPathTemplate
)
{
this
.
pageInfoJsPathTemplate
=
pageInfoJsPathTemplate
;
}
}
src/main/java/com/stylefeng/guns/core/template/engine/SimpleTemplateEngine.java
View file @
18467107
...
...
@@ -2,11 +2,6 @@ package com.stylefeng.guns.core.template.engine;
import
com.stylefeng.guns.core.template.engine.base.GunsTemplateEngine
;
import
com.stylefeng.guns.core.util.ToolUtil
;
import
org.beetl.core.Template
;
import
java.io.File
;
import
java.io.FileNotFoundException
;
import
java.io.FileOutputStream
;
/**
* 通用的模板生成引擎
...
...
@@ -17,54 +12,50 @@ import java.io.FileOutputStream;
public
class
SimpleTemplateEngine
extends
GunsTemplateEngine
{
@Override
protected
void
generatePageEditHtml
()
{
String
path
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
getPageConfig
().
getPageEditPathTemplate
(),
super
.
getContextConfig
().
getBizEnName
(),
super
.
getContextConfig
().
getBizEnName
());
generateFile
(
"gunsTemplate/page_edit.html.btl"
,
path
);
System
.
out
.
println
(
"生成编辑页面成功!"
);
}
@Override
protected
void
generatePageAddHtml
()
{
String
path
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
getPageConfig
().
getPageAddPathTemplate
(),
super
.
getContextConfig
().
getBizEnName
(),
super
.
getContextConfig
().
getBizEnName
());
generateFile
(
"gunsTemplate/page_add.html.btl"
,
path
);
System
.
out
.
println
(
"生成添加页面成功!"
);
}
@Override
protected
void
generatePageInfoJs
()
{
String
path
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
getPageConfig
().
getPageInfoJsPathTemplate
(),
super
.
getContextConfig
().
getBizEnName
(),
super
.
getContextConfig
().
getBizEnName
());
generateFile
(
"gunsTemplate/page_info.js.btl"
,
path
);
System
.
out
.
println
(
"生成页面详情js成功!"
);
}
@Override
protected
void
generatePageJs
()
{
Template
pageTemplate
=
groupTemplate
.
getTemplate
(
"gunsTemplate/page.js.btl"
);
configTemplate
(
pageTemplate
);
String
jsPath
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
super
.
getPageConfig
().
getPageJsPathTemplate
(),
String
path
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
getPageConfig
().
getPageJsPathTemplate
(),
super
.
getContextConfig
().
getBizEnName
(),
super
.
getContextConfig
().
getBizEnName
());
File
file
=
new
File
(
jsPath
);
File
parentFile
=
file
.
getParentFile
();
if
(!
parentFile
.
exists
()){
parentFile
.
mkdirs
();
}
try
{
pageTemplate
.
renderTo
(
new
FileOutputStream
(
file
));
}
catch
(
FileNotFoundException
e
)
{
e
.
printStackTrace
();
}
generateFile
(
"gunsTemplate/page.js.btl"
,
path
);
System
.
out
.
println
(
"生成页面js成功!"
);
}
@Override
protected
void
generatePageHtml
()
{
Template
pageTemplate
=
groupTemplate
.
getTemplate
(
"gunsTemplate/page.html.btl"
);
configTemplate
(
pageTemplate
);
String
pagePath
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
super
.
getPageConfig
().
getPagePathTemplate
(),
String
path
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
getPageConfig
().
getPagePathTemplate
(),
super
.
getContextConfig
().
getBizEnName
(),
super
.
getContextConfig
().
getBizEnName
());
File
file
=
new
File
(
pagePath
);
File
parentFile
=
file
.
getParentFile
();
if
(!
parentFile
.
exists
()){
parentFile
.
mkdirs
();
}
try
{
pageTemplate
.
renderTo
(
new
FileOutputStream
(
file
));
}
catch
(
FileNotFoundException
e
)
{
e
.
printStackTrace
();
}
generateFile
(
"gunsTemplate/page.html.btl"
,
path
);
System
.
out
.
println
(
"生成页面成功!"
);
}
@Override
protected
void
generateController
()
{
Template
controllerTemplate
=
super
.
groupTemplate
.
getTemplate
(
"gunsTemplate/Controller.java.btl"
);
configTemplate
(
controllerTemplate
);
String
controllerPath
=
ToolUtil
.
format
(
super
.
getContextConfig
().
getProjectPath
()
+
super
.
getControllerConfig
().
getControllerPathTemplate
(),
ToolUtil
.
firstLetterToUpper
(
super
.
getContextConfig
().
getBizEnName
()));
try
{
controllerTemplate
.
renderTo
(
new
FileOutputStream
(
controllerPath
));
}
catch
(
FileNotFoundException
e
)
{
e
.
printStackTrace
();
}
generateFile
(
"gunsTemplate/Controller.java.btl"
,
controllerPath
);
System
.
out
.
println
(
"生成控制器成功!"
);
}
}
src/main/java/com/stylefeng/guns/core/template/engine/base/GunsTemplateEngine.java
View file @
18467107
...
...
@@ -6,6 +6,9 @@ import org.beetl.core.GroupTemplate;
import
org.beetl.core.Template
;
import
org.beetl.core.resource.ClasspathResourceLoader
;
import
java.io.File
;
import
java.io.FileNotFoundException
;
import
java.io.FileOutputStream
;
import
java.io.IOException
;
import
java.util.Properties
;
...
...
@@ -45,12 +48,36 @@ public abstract class GunsTemplateEngine extends AbstractTemplateEngine {
template
.
binding
(
"context"
,
super
.
getContextConfig
());
}
public
void
generateFile
(
String
template
,
String
filePath
){
Template
pageTemplate
=
groupTemplate
.
getTemplate
(
template
);
configTemplate
(
pageTemplate
);
File
file
=
new
File
(
filePath
);
File
parentFile
=
file
.
getParentFile
();
if
(!
parentFile
.
exists
()){
parentFile
.
mkdirs
();
}
try
{
pageTemplate
.
renderTo
(
new
FileOutputStream
(
file
));
}
catch
(
FileNotFoundException
e
)
{
e
.
printStackTrace
();
}
}
public
void
start
()
{
generateController
();
generatePageHtml
();
generatePageAddHtml
();
generatePageEditHtml
();
generatePageJs
();
generatePageInfoJs
();
}
protected
abstract
void
generatePageEditHtml
();
protected
abstract
void
generatePageAddHtml
();
protected
abstract
void
generatePageInfoJs
();
protected
abstract
void
generatePageJs
();
protected
abstract
void
generatePageHtml
();
...
...
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