【add】代码生成模板添加字段校验功能

This commit is contained in:
mzc5649
2021-04-27 17:18:43 +08:00
parent 5836ba9c76
commit a42cbc2e2f
3 changed files with 36 additions and 19 deletions
@@ -2,39 +2,25 @@ package ${bussiPackage}.${entityPackage}.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.jero.common.api.vo.Result;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.util.oConvertUtils;
import ${bussiPackage}.${entityPackage}.entity.${entityName};
import ${bussiPackage}.${entityPackage}.service.I${entityName}Service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import com.jero.common.system.base.controller.JeroController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.jero.common.aspect.annotation.AutoLog;
<#assign bpm_flag=false>
<#list originalColumns as po>
<#if po.fieldDbName=='bpm_status'>
@@ -100,7 +86,7 @@ public class ${entityName}Controller extends JeroController<${entityName}, I${en
@AutoLog(value = "${tableVo.ftlDescription}-添加")
@ApiOperation(value="${tableVo.ftlDescription}-添加", notes="${tableVo.ftlDescription}-添加")
@PostMapping(value = "/add")
public Result<?> add(@RequestBody ${entityName} ${entityName?uncap_first}) {
public Result<?> add(@Validated @RequestBody ${entityName} ${entityName?uncap_first}) {
<#if bpm_flag>
${entityName?uncap_first}.setBpmStatus("1");
</#if>
@@ -117,7 +103,7 @@ public class ${entityName}Controller extends JeroController<${entityName}, I${en
@AutoLog(value = "${tableVo.ftlDescription}-编辑")
@ApiOperation(value="${tableVo.ftlDescription}-编辑", notes="${tableVo.ftlDescription}-编辑")
@PutMapping(value = "/edit")
public Result<?> edit(@RequestBody ${entityName} ${entityName?uncap_first}) {
public Result<?> edit(@Validated @RequestBody ${entityName} ${entityName?uncap_first}) {
${entityName?uncap_first}Service.editById(${entityName?uncap_first});
return Result.OK("编辑成功!");
}
@@ -83,6 +83,35 @@ public class ${entityName} implements Serializable {
</#if>
</#if>-->
</#if>
<#if po.fieldValidType??>
<#if po.fieldValidType=="e">
@javax.validation.constraints.Email(message = "请输入正确的邮箱")
<#elseif po.fieldValidType=="m">
@javax.validation.constraints.Pattern(regexp = "^1(?:3\\d|4[4-9]|5[0-35-9]|6[67]|7[013-8]|8\\d|9\\d)\\d{8}$",message = "请输入正确的手机号")
<#elseif po.fieldValidType=="n6-16">
@javax.validation.constraints.Min(value = 6L,message = "数字长度应为6-16")
@javax.validation.constraints.Max(value = 16L,message = "数字长度应为6-16")
<#elseif po.fieldValidType=="*6-16">
@javax.validation.constraints.Pattern(regexp = "^.{6,16}$"message = "长度应为6-16")
<#elseif po.fieldValidType=="url">
@org.hibernate.validator.constraints.URL(message = "请输入正确的网址")
<#elseif po.fieldValidType=="p">
@javax.validation.constraints.Pattern(regexp = "^\\d{6}$",message = "请输入正确的邮政编码")
<#elseif po.fieldValidType=="s">
@javax.validation.constraints.Pattern(regexp = "^[a-zA-Z]{1}$",message = "请输入正确的字母")
<#elseif po.fieldValidType=="n">
@javax.validation.constraints.Pattern(regexp = "^\\d+$",message = "请输入正确的数字")
<#elseif po.fieldValidType=="z">
@javax.validation.constraints.Pattern(regexp = "^-?[1-9]\\d+$",message = "请输入正确的整数")
<#elseif po.fieldValidType=="*">
@javax.validation.constraints.NotNull(message = "不能为空")
<#elseif po.fieldValidType=="s6-18">
@org.hibernate.validator.constraints.Length(min = 6, max = 18, message = "字符串长度应为6-18")
<#elseif po.fieldValidType=="money">
@javax.validation.constraints.Pattern(regexp = "(^[1-9]([0-9]+)?(\\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\\.[0-9]([0-9])?$)",message = "请输入正确的金额")
</#if>
</#if>
<#include "/common/blob.ftl">
</#list>
}
@@ -39,7 +39,9 @@ public class ${entityName}ServiceImpl extends ServiceImpl<${entityName}Mapper, $
*/
@Override
public void editById(${entityName} ${entityName?uncap_first}) {
updateById(${entityName?uncap_first});
LocalDateTime now = LocalDateTime.now();
${entityName?uncap_first}.setUpdateTime(now);
saveOrUpdate(${entityName?uncap_first});
}
/**