master
wangbing 5 years ago
parent 619b0f55b4
commit 45169b489a

@ -85,6 +85,9 @@ public class ${table.getCName()}Ajax{
${table.getCName()}FindResponse response = ${table.getFName()}Manager.find(request, LocalData.getToken());
if (response.hasError()) {
return response;
} else if (response.getTotalCount() == 0) {
response.addError(ErrorType.BUSINESS_ERROR, "导出数据为空");
return response;
}
return ResponseUtil.apply(new WSheet<>(response.getResult()));
}

@ -65,6 +65,9 @@ public class DictAjax {
DictFindResponse response = dictManager.find(request, LocalData.getToken());
if (response.hasError()) {
return response;
} else if (response.getTotalCount() == 0) {
response.addError(ErrorType.BUSINESS_ERROR, "导出数据为空");
return response;
}
return ResponseUtil.apply(new WSheet<>(response.getResult()));
}

@ -60,6 +60,9 @@ public class DictItemAjax {
DictItemFindResponse response = dictItemManager.find(request, LocalData.getToken());
if (response.hasError()) {
return response;
} else if (response.getTotalCount() == 0) {
response.addError(ErrorType.BUSINESS_ERROR, "导出数据为空");
return response;
}
return ResponseUtil.apply(new WSheet<>(response.getResult()));
}

@ -168,7 +168,7 @@ public class WSheet<T> implements Serializable, Cloneable {
*/
public WSheet(List<T> list) {
if (list == null || list.size() == 0) {
throw new RuntimeException("不允许传入空的列表");
throw new RuntimeException("导出数据为空");
}
if (list.size() > 0) {
List<WColumn> wColumns = initColumns(list.get(0).getClass());

@ -7,8 +7,11 @@ import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.*;
import org.dozer.DozerBeanMapper;
import org.dozer.Mapper;
import ${basePackage}.frame.auth.LocalData;
import java.io.IOException;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.List;
/**
@ -23,8 +26,16 @@ public class MapperUtil {
private static Mapper mapper;
static {
try {// 优先获取SpringBoot默认配置
om = LocalData.getBean(ObjectMapper.class);
} catch (Exception e) {
e.printStackTrace();
}
if (null == om) {
//初始化
om = new ObjectMapper();
// 日期格式化
om.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
//序列化时忽略null属性
om.setSerializationInclusion(JsonInclude.Include.NON_NULL);
//序列化时排序
@ -33,6 +44,7 @@ public class MapperUtil {
om.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
//支持空类序列化时出错InvalidDefinitionException
om.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
}
mapper = new DozerBeanMapper();
}

@ -41,7 +41,7 @@ pagehelper.params=count=countSql
# jackson 相关配置
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
spring.jackson.default-property-inclusion=use_defaults
spring.jackson.default-property-inclusion=non_null
spring.jackson.mapper.sort-properties-alphabetically=true
spring.jackson.deserialization.fail-on-unknown-properties=false
# freemarker

@ -483,22 +483,23 @@
type: 'warning'
}).then(function () {
for (var i = 0; i < this.select.length; i++) {
var obj = this.select[i];
(function (obj) {
this.$ajax.delete(this.module, this.target, {id: obj.id}).then(function (response) {
if (response.errors.length > 0) {
this.e(response.errors[0].message);
} else {
for (var j = 0; j < this.select.length; j++) {
if (this.select[j].id == obj.id) {
if (this.select[j].id === obj.id) {
this.select.splice(j, 1);
}
}
if (this.select.length == 0) {
if (this.select.length === 0) {
this.s("删除成功")
this.onFind();
}
}
}.bind(this))
}.bind(this))(this.select[i]);
}
}.bind(this)).catch(function (action) {

@ -16,7 +16,7 @@
<i class="el-icon-monitor"></i>
<span slot="title">系统设置</span>
</template>
<el-menu-item index="${tool.uuid()}" class="el-icon-coin" @click="addTab({title: '字典管理', name: 'dict', url: '${r'${context}'}/system/dict.htm'})">字典管理</el-menu-item>
<el-menu-item index="${tool.uuid()}" @click="addTab({title: '字典管理', name: 'dict', url: '${r'${context}'}/system/dict.htm'})">字典管理</el-menu-item>
</el-submenu>
<#list modules as item>
<el-submenu index="${tool.uuid()}">
@ -25,7 +25,7 @@
<span slot="title">${item.moduleComment}</span>
</template>
<#list item.tables as table>
<el-menu-item index="${tool.uuid()}" class="el-icon-tickets" @click="addTab({title: '${table.tableComment}', name: '${table.tableName}', url: '${r"${context}"}/${item.moduleName}/${table.getFName()}.htm'})">${table.tableComment}</el-menu-item>
<el-menu-item index="${tool.uuid()}" @click="addTab({title: '${table.tableComment}', name: '${table.tableName}', url: '${r"${context}"}/${item.moduleName}/${table.getFName()}.htm'})">${table.tableComment}</el-menu-item>
</#list>
</el-submenu>
</#list>
@ -121,6 +121,18 @@
border-right: solid 0 #e6e6e6;
}
.el-submenu__title{
height: 40px!important;
line-height: 40px!important;
}
.el-menu-item {
height: 40px!important;
line-height: 40px!important;
}
.el-menu--popup-right-start{
padding: 0px;
}
#main {
height: 100%;
margin-left: 200px;

@ -1,6 +1,6 @@
<div id="app" v-cloak>
<el-card class="box-card search">
<el-form :inline="true" :model="vm" ref="vm" label-width="90px">
<el-form :inline="true" :model="vm" ref="vm" label-position="left" label-width="90px">
<#list fields as item>
<#if item.isQuery>
<#if item.fieldType.javaType() =="Boolean">
@ -51,6 +51,8 @@
<el-date-picker
size="small"
v-model="vm.${item.getFName()}"
format="yyyy-MM-dd HH:dd:ss"
value-format="yyyy-MM-dd HH:dd:ss"
type="datetime"
placeholder="选择日期时间">
</el-date-picker>
@ -77,7 +79,7 @@
<el-button type="warning" size="small" icon="el-icon-download" @click="onExport">导出</el-button>
<el-dialog class="form" :title="form.title" :visible.sync="form.dialog">
<el-form :model="form" :inline="true" :rules="formRules" ref="form" label-width="90px">
<el-form :model="form" :inline="true" :rules="formRules" ref="form" label-position="left" label-width="90px">
<#list fields as item>
<#if !item.isSystem>
<#if item.fieldType.javaType() =="Boolean">
@ -128,6 +130,8 @@
<el-date-picker
size="small"
v-model="form.${item.getFName()}"
format="yyyy-MM-dd HH:dd:ss"
value-format="yyyy-MM-dd HH:dd:ss"
type="datetime"
placeholder="选择日期时间">
</el-date-picker>

@ -1,6 +1,6 @@
<div id="app" v-cloak>
<el-card class="box-card search">
<el-form :inline="true" :model="vm" ref="vm" label-width="90px">
<el-form :inline="true" :model="vm" ref="vm" label-position="left" label-width="90px">
<el-form-item label="字典名称" prop="dictName">
<el-input v-model="vm.dictName" clearable size="small" placeholder="请输入字典名称"></el-input>
</el-form-item>
@ -28,7 +28,7 @@
<el-button type="warning" size="small" icon="el-icon-download" @click="onExport">导出</el-button>
<el-dialog class="form" :title="form.title" :visible.sync="form.dialog">
<el-form :model="form" :inline="true" :rules="formRules" ref="form" label-width="90px">
<el-form :model="form" :inline="true" :rules="formRules" ref="form" label-position="left" label-width="90px">
<el-form-item label="字典名称" prop="dictName" required>
<el-input v-model="form.dictName" clearable size="small" placeholder="请输入字典名称"></el-input>
</el-form-item>

@ -1,6 +1,6 @@
<div id="app" v-cloak>
<el-card class="box-card search">
<el-form :inline="true" :model="vm" ref="vm" label-width="90px">
<el-form :inline="true" :model="vm" ref="vm" label-position="left" label-width="90px">
<el-form-item label="字典名称" prop="dictName">
<el-input v-model="vm.dictName" clearable size="small" placeholder="请输入字典名称" readonly></el-input>
</el-form-item>
@ -31,18 +31,16 @@
<el-button type="warning" size="small" icon="el-icon-download" @click="onExport">导出</el-button>
<el-dialog class="form" :title="form.title" :visible.sync="form.dialog">
<el-form :model="form" :inline="true" :rules="formRules" ref="form" label-width="90px">
<el-form-item label="字典名称" prop="dictName">
<el-input v-model="form.dictName" clearable size="small" placeholder="请输入字典名称" readonly></el-input>
</el-form-item>
<el-form-item label="字典键" prop="dictName">
<el-form :model="form" :inline="true" :rules="formRules" ref="form" label-position="left"
label-width="90px">
<el-form-item label="字典键" prop="key">
<el-input v-model="form.key" clearable size="small" placeholder="请输入字典键"></el-input>
</el-form-item>
<el-form-item label="字典值" prop="dictCode">
<el-form-item label="字典值" prop="value">
<el-input v-model="form.value" clearable size="small" placeholder="请输入字典值"></el-input>
</el-form-item>
<el-form-item label="排序值" prop="dictCode">
<el-input-number size="small" v-model="form.sort" :min="0" :max="10000"
<el-form-item label="排序值" prop="sort">
<el-input-number size="small" v-model="form.sort" :min="1" :max="10000"
label="描述文字"></el-input-number>
</el-form-item>
<el-form-item label="是否有效" prop="valid">
@ -190,10 +188,6 @@
rowVersion: ""
},
formRules: {
dictName: [
{required: true, message: '字典名称不能为空', trigger: 'blur'},
{min: 1, max: 50, message: '字典名称长度在 1 到 50 个字符', trigger: 'blur'}
],
key: [
{required: true, message: '请输入字典名称', trigger: 'blur'},
{min: 1, max: 50, message: '长度在 3 到 5 个字符', trigger: 'blur'}
@ -217,7 +211,7 @@
this.form.dictName = location.getParam("dictName");
this.form.key = '';
this.form.value = '';
this.form.sort = this.vm.totalCount;
this.form.sort = this.vm.totalCount + 1;
this.form.valid = true;
},
onCommand: function (arg) {

Loading…
Cancel
Save

Powered by TurnKey Linux.