-
+
@@ -20,6 +20,7 @@
import Step2 from './Step2'
import Step3 from './Step3'
import Step4 from './Step4'
+
export default {
name: "Alteration",
components: {
@@ -28,11 +29,11 @@
Step3,
Step4
},
- data () {
+ data() {
return {
description: '将一个冗长或用户不熟悉的表单任务分成多个步骤,指导用户完成。',
currentTab: 0,
- userList:{},
+ userList: {},
// form
form: null,
}
@@ -40,19 +41,19 @@
methods: {
// handler
- nextStep (data) {
- this.userList=data;
+ nextStep(data) {
+ this.userList = data;
if (this.currentTab < 4) {
this.currentTab += 1
}
},
- prevStep (data) {
- this.userList=data;
+ prevStep(data) {
+ this.userList = data;
if (this.currentTab > 0) {
this.currentTab -= 1
}
},
- finish () {
+ finish() {
this.currentTab = 0
}
}
diff --git a/ant-design-vue-jeecg/src/views/user/Login.vue b/ant-design-vue-jeecg/src/views/user/Login.vue
index 42ae377487a1db572d9a250bb442c7248fa08274..2f70744a6ade2a2b895490c14eb74ff893a21f52 100644
--- a/ant-design-vue-jeecg/src/views/user/Login.vue
+++ b/ant-design-vue-jeecg/src/views/user/Login.vue
@@ -9,7 +9,7 @@
@@ -18,7 +18,7 @@
-
+
-
-
+
-
-
+
+
+
@@ -88,7 +88,7 @@
忘记密码
-
+
注册账户
@@ -173,8 +173,7 @@
import Vue from 'vue'
import { ACCESS_TOKEN ,ENCRYPTED_STRING} from "@/store/mutation-types"
import JGraphicCode from '@/components/jeecg/JGraphicCode'
- import { putAction } from '@/api/manage'
- import { postAction } from '@/api/manage'
+ import { putAction,postAction,getAction } from '@/api/manage'
import { encryption , getEncryptedString } from '@/utils/encryption/aesEncrypt'
import store from '@/store/'
import { USER_INFO } from "@/store/mutation-types"
@@ -202,11 +201,11 @@
smsSendBtn: false,
},
validatorRules:{
- username:{rules: [{ required: true, message: '请输入用户名!',validator: 'click'}]},
+ username:{rules: [{ required: true, message: '请输入用户名!'},{validator: this.handleUsernameOrEmail}]},
password:{rules: [{ required: true, message: '请输入密码!',validator: 'click'}]},
mobile:{rules: [{validator:this.validateMobile}]},
captcha:{rule: [{ required: true, message: '请输入验证码!'}]},
- inputCode:{rules: [{ required: true, message: '请输入验证码!'},{validator: this.validateInputCode}]}
+ inputCode:{rules: [{ required: true, message: '请输入验证码!'}]}
},
verifiedCode:"",
inputCodeContent:"",
@@ -216,12 +215,16 @@
departVisible:false,
departSelected:"",
currentUsername:"",
- validate_status:""
+ validate_status:"",
+ currdatetime:'',
+ randCodeImage:''
}
},
created () {
+ this.currdatetime = new Date().getTime();
Vue.ls.remove(ACCESS_TOKEN)
this.getRouterData();
+ this.handleChangeCheckCode();
// update-begin- --- author:scott ------ date:20190805 ---- for:密码加密逻辑暂时注释掉,有点问题
//this.getEncrypte();
// update-end- --- author:scott ------ date:20190805 ---- for:密码加密逻辑暂时注释掉,有点问题
@@ -257,10 +260,9 @@
loginParams.password = values.password
loginParams.remember_me = values.rememberMe
// update-begin- --- author:scott ------ date:20190805 ---- for:密码加密逻辑暂时注释掉,有点问题
- let checkParams = this.$refs.jgraphicCodeRef.getLoginParam()
- loginParams.captcha = checkParams.checkCode
- loginParams.checkKey = checkParams.checkKey
-
+ loginParams.captcha = that.inputCodeContent
+ loginParams.checkKey = that.currdatetime
+ console.log("登录参数",loginParams)
that.Login(loginParams).then((res) => {
this.departConfirm(res)
}).catch((err) => {
@@ -339,6 +341,16 @@
this.stepCaptchaVisible = false
})
},
+ handleChangeCheckCode(){
+ this.currdatetime = new Date().getTime();
+ getAction(`/sys/randomImage/${this.currdatetime}`).then(res=>{
+ if(res.success){
+ this.randCodeImage = res.result
+ }else{
+ this.$message.error(res.message)
+ }
+ })
+ },
loginSuccess () {
// update-begin- author:sunjianlei --- date:20190812 --- for: 登录成功后不解除禁用按钮,防止多次点击
// this.loginBtn = false
@@ -384,12 +396,6 @@
},
inputCodeChange(e){
this.inputCodeContent = e.target.value
- if(!e.target.value||0==e.target.value){
- this.inputCodeNull=true
- }else{
- this.inputCodeContent = this.inputCodeContent.toLowerCase()
- this.inputCodeNull=false
- }
},
departConfirm(res){
if(res.success){
@@ -452,10 +458,12 @@
},
getRouterData(){
this.$nextTick(() => {
- this.form.setFieldsValue({
- 'username': this.$route.params.username
- });
- })
+ if (this.$route.params.username) {
+ this.form.setFieldsValue({
+ 'username': this.$route.params.username
+ });
+ }
+ })
},
//获取密码加密规则
getEncrypte(){
diff --git a/ant-design-vue-jeecg/src/views/user/RegisterResult.vue b/ant-design-vue-jeecg/src/views/user/RegisterResult.vue
index 97d826c9c1696129d7885784cb95f18f890c47e3..389e140c1308ea93bd4a8ca42f56df7ecdfba402 100644
--- a/ant-design-vue-jeecg/src/views/user/RegisterResult.vue
+++ b/ant-design-vue-jeecg/src/views/user/RegisterResult.vue
@@ -26,7 +26,7 @@
},
computed: {
email () {
- let v = this.form && this.form.username || 'xxx'
+ let v = this.form ? this.form.username || this.form.mobile : ' XXX '
let title = `你的账户:${v} 注册成功`
this.username = v;
return title
diff --git a/ant-design-vue-jeecg/src/views/user/Step1.vue b/ant-design-vue-jeecg/src/views/user/Step1.vue
index e15e590995f7e0469696756da8e2295c02017d05..46b0970511902e083717e900025a281f467e6293 100644
--- a/ant-design-vue-jeecg/src/views/user/Step1.vue
+++ b/ant-design-vue-jeecg/src/views/user/Step1.vue
@@ -1,14 +1,14 @@
-
+
+ placeholder="请输入用户账号或手机号">
@@ -32,6 +32,7 @@
+ 使用已有账户登录
下一步
@@ -40,95 +41,99 @@
\ No newline at end of file
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal__Style#Drawer.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal__Style#Drawer.vuei
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal__Style#Drawer.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/one/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal__Style#Drawer.vuei
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
similarity index 87%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
index d4b38dc25a9ca78ee3acbac3ea2019bf377abad9..d3150da9316250bfd8596bdb7c223275947f276b 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
@@ -42,6 +42,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.jeecg.common.aspect.annotation.AutoLog;
/**
* @Description: ${tableVo.ftlDescription}
@@ -49,6 +52,7 @@ import com.alibaba.fastjson.JSON;
* @Date: ${.now?string["yyyy-MM-dd"]}
* @Version: V1.0
*/
+@Api(tags="${tableVo.ftlDescription}")
@RestController
@RequestMapping("/${entityPackage}/${entityName?uncap_first}")
@Slf4j
@@ -69,6 +73,8 @@ public class ${entityName}Controller {
* @param req
* @return
*/
+ @AutoLog(value = "${tableVo.ftlDescription}-分页列表查询")
+ @ApiOperation(value="${tableVo.ftlDescription}-分页列表查询", notes="${tableVo.ftlDescription}-分页列表查询")
@GetMapping(value = "/list")
public Result> queryPageList(${entityName} ${entityName?uncap_first},
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@@ -86,6 +92,8 @@ public class ${entityName}Controller {
* @param ${entityName?uncap_first}Page
* @return
*/
+ @AutoLog(value = "${tableVo.ftlDescription}-添加")
+ @ApiOperation(value="${tableVo.ftlDescription}-添加", notes="${tableVo.ftlDescription}-添加")
@PostMapping(value = "/add")
public Result> add(@RequestBody ${entityName}Page ${entityName?uncap_first}Page) {
${entityName} ${entityName?uncap_first} = new ${entityName}();
@@ -100,6 +108,8 @@ public class ${entityName}Controller {
* @param ${entityName?uncap_first}Page
* @return
*/
+ @AutoLog(value = "${tableVo.ftlDescription}-编辑")
+ @ApiOperation(value="${tableVo.ftlDescription}-编辑", notes="${tableVo.ftlDescription}-编辑")
@PutMapping(value = "/edit")
public Result> edit(@RequestBody ${entityName}Page ${entityName?uncap_first}Page) {
${entityName} ${entityName?uncap_first} = new ${entityName}();
@@ -118,6 +128,8 @@ public class ${entityName}Controller {
* @param id
* @return
*/
+ @AutoLog(value = "${tableVo.ftlDescription}-通过id删除")
+ @ApiOperation(value="${tableVo.ftlDescription}-通过id删除", notes="${tableVo.ftlDescription}-通过id删除")
@DeleteMapping(value = "/delete")
public Result> delete(@RequestParam(name="id",required=true) String id) {
${entityName?uncap_first}Service.delMain(id);
@@ -130,6 +142,8 @@ public class ${entityName}Controller {
* @param ids
* @return
*/
+ @AutoLog(value = "${tableVo.ftlDescription}-批量删除")
+ @ApiOperation(value="${tableVo.ftlDescription}-批量删除", notes="${tableVo.ftlDescription}-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
this.${entityName?uncap_first}Service.delBatchMain(Arrays.asList(ids.split(",")));
@@ -142,6 +156,8 @@ public class ${entityName}Controller {
* @param id
* @return
*/
+ @AutoLog(value = "${tableVo.ftlDescription}-通过id查询")
+ @ApiOperation(value="${tableVo.ftlDescription}-通过id查询", notes="${tableVo.ftlDescription}-通过id查询")
@GetMapping(value = "/queryById")
public Result> queryById(@RequestParam(name="id",required=true) String id) {
${entityName} ${entityName?uncap_first} = ${entityName?uncap_first}Service.getById(id);
@@ -159,6 +175,8 @@ public class ${entityName}Controller {
* @param id
* @return
*/
+ @AutoLog(value = "${sub.ftlDescription}集合-通过id查询")
+ @ApiOperation(value="${sub.ftlDescription}集合-通过id查询", notes="${sub.ftlDescription}-通过id查询")
@GetMapping(value = "/query${sub.entityName}ByMainId")
public Result> query${sub.entityName}ListByMainId(@RequestParam(name="id",required=true) String id) {
List<${sub.entityName}> ${sub.entityName?uncap_first}List = ${sub.entityName?uncap_first}Service.selectByMainId(id);
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
similarity index 56%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
index 1f112ff40ff269139cf7b6c7c65056f95149d8ce..5553a250cb300de1d236b64896839547a1ddbccb 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
@@ -8,6 +8,10 @@ import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.jeecg.common.aspect.annotation.Dict;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
/**
* @Description: ${tableVo.ftlDescription}
@@ -15,26 +19,46 @@ import org.springframework.format.annotation.DateTimeFormat;
* @Date: ${.now?string["yyyy-MM-dd"]}
* @Version: V1.0
*/
+@ApiModel(value="${tableName}对象", description="${tableVo.ftlDescription}")
@Data
@TableName("${tableName}")
public class ${entityName} implements Serializable {
private static final long serialVersionUID = 1L;
-
+
<#list originalColumns as po>
+ <#-- 生成字典Code -->
+ <#assign list_field_dictCode="">
+ <#if po.classType='sel_user'>
+ <#assign list_field_dictCode=', dictTable = "sys_user", dicText = "realname", dicCode = "username"'>
+ <#elseif po.classType='sel_depart'>
+ <#assign list_field_dictCode=', dictTable = "sys_depart", dicText = "depart_name", dicCode = "id"'>
+ <#elseif po.classType=='list' || po.classType=='list_multi' || po.classType=='sel_search' || po.classType=='radio' || po.classType=='checkbox'>
+ <#if po.dictTable?default("")?trim?length gt 1>
+ <#assign list_field_dictCode=', dictTable = "${po.dictTable}", dicText = "${po.dictText}", dicCode = "${po.dictField}"'>
+ <#elseif po.dictField?default("")?trim?length gt 1>
+ <#assign list_field_dictCode=', dicCode = "${po.dictField}"'>
+ #if>
+ #if>
/**${po.filedComment}*/
<#if po.fieldName == primaryKeyField>
@TableId(type = IdType.ID_WORKER_STR)
<#else>
<#if po.fieldDbType =='Date'>
<#if po.classType=='date'>
+ @Excel(name = "${po.filedComment}", width = 15, format = "yyyy-MM-dd"${list_field_dictCode})
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
<#else>
+ @Excel(name = "${po.filedComment}", width = 20, format = "yyyy-MM-dd HH:mm:ss"${list_field_dictCode})
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
#if>
<#else>
+ @Excel(name = "${po.filedComment}", width = 15${list_field_dictCode})
#if>
+ <#if list_field_dictCode?length gt 1>
+ @Dict(${list_field_dictCode?substring(2)})
+ #if>
#if>
<#if po.fieldDbType=='Blob'>
private transient java.lang.String ${po.fieldName}String;
@@ -65,6 +89,7 @@ public class ${entityName} implements Serializable {
return "";
}
<#else>
+ @ApiModelProperty(value = "${po.filedComment}")
private ${po.fieldType} ${po.fieldName};
#if>
#list>
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
similarity index 57%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
index 730916c76caa216fc8310905988df6a2827cb08c..fa410574b3c47bdb1be37ae797cfb430881a2b82 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
@@ -11,6 +11,8 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
/**
* @Description: ${subTab.ftlDescription}
@@ -18,30 +20,45 @@ import java.util.Date;
* @Date: ${.now?string["yyyy-MM-dd"]}
* @Version: V1.0
*/
+@ApiModel(value="${tableName}对象", description="${tableVo.ftlDescription}")
@Data
@TableName("${subTab.tableName}")
public class ${subTab.entityName} implements Serializable {
private static final long serialVersionUID = 1L;
-
+
<#list subTab.originalColumns as po>
+ <#-- 生成字典Code -->
+ <#assign list_field_dictCode="">
+ <#if po.classType='sel_user'>
+ <#assign list_field_dictCode=', dictTable = "sys_user", dicText = "realname", dicCode = "username"'>
+ <#elseif po.classType='sel_depart'>
+ <#assign list_field_dictCode=', dictTable = "sys_depart", dicText = "depart_name", dicCode = "id"'>
+ <#elseif po.classType=='list' || po.classType=='list_multi' || po.classType=='sel_search' || po.classType=='radio' || po.classType=='checkbox'>
+ <#if po.dictTable?default("")?trim?length gt 1>
+ <#assign list_field_dictCode=', dictTable = "${po.dictTable}", dicText = "${po.dictText}", dicCode = "${po.dictField}"'>
+ <#elseif po.dictField?default("")?trim?length gt 1>
+ <#assign list_field_dictCode=', dicCode = "${po.dictField}"'>
+ #if>
+ #if>
/**${po.filedComment}*/
<#if po.fieldName == primaryKeyField>
@TableId(type = IdType.ID_WORKER_STR)
<#else>
<#if po.fieldDbType =='Date'>
<#if po.classType=='date'>
- @Excel(name = "${po.filedComment}", width = 15, format = "yyyy-MM-dd")
+ @Excel(name = "${po.filedComment}", width = 15, format = "yyyy-MM-dd"${list_field_dictCode})
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
<#else>
- @Excel(name = "${po.filedComment}", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "${po.filedComment}", width = 20, format = "yyyy-MM-dd HH:mm:ss"${list_field_dictCode})
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
#if>
<#elseif !subTab.foreignKeys?seq_contains(po.fieldName?cap_first)>
- @Excel(name = "${po.filedComment}", width = 15)
+ @Excel(name = "${po.filedComment}", width = 15${list_field_dictCode})
#if>
#if>
+ @ApiModelProperty(value = "${po.filedComment}")
private <#if po.fieldType=='java.sql.Blob'>byte[]<#else>${po.fieldType}#if> ${po.fieldName};
#list>
}
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/one/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vo/${entityName}Page.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vo/${entityName}Page.javai
similarity index 85%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vo/${entityName}Page.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vo/${entityName}Page.javai
index 1bc4e03588d2ae36ae4ac2e173e42be6c51c0be0..43b5f90206c7f0b127340bce0144a4d6fe7a7805 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vo/${entityName}Page.javai
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vo/${entityName}Page.javai
@@ -12,6 +12,8 @@ import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
/**
* @Description: ${tableVo.ftlDescription}
@@ -20,6 +22,7 @@ import java.util.Date;
* @Version: V1.0
*/
@Data
+@ApiModel(value="${tableName}Page对象", description="${tableVo.ftlDescription}")
public class ${entityName}Page {
<#list originalColumns as po>
@@ -40,12 +43,14 @@ public class ${entityName}Page {
@Excel(name = "${po.filedComment}", width = 15)
#if>
#if>
+ @ApiModelProperty(value = "${po.filedComment}")
private <#if po.fieldType=='java.sql.Blob'>byte[]<#else>${po.fieldType}#if> ${po.fieldName};
#list>
<#list subTables as sub>
@ExcelCollection(name="${sub.ftlDescription}")
- private List<${sub.entityName}> ${sub.entityName?uncap_first}List;
+ @ApiModelProperty(value = "${sub.ftlDescription}")
+ private List<${sub.entityName}> ${sub.entityName?uncap_first}List;
#list>
}
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
similarity index 82%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
index 1f143ac68dcde7ab6780f8db4ec236b9ebb1ae83..e5382ad02d6248c25f70d5bef0fe83dffaa64331 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
@@ -18,7 +18,7 @@
#if>
<#if po.queryMode=='single'>
- <#if query_field_no gt 1> #if>
+ <#if query_field_no gt 1> #if>
<#if query_field_no gt 1> #if>
<#if po.classType=='date'>
<#assign query_field_date=true>
@@ -42,7 +42,7 @@
<#if query_field_no gt 1> #if>
<#if query_field_no gt 1> #if>
<#else>
- <#if query_field_no gt 1> #if>
+ <#if query_field_no gt 1> #if>
<#if query_field_no gt 1> #if>
<#if po.classType=='date'>
<#assign query_field_date=true>
@@ -77,7 +77,7 @@
#if>
<#if query_flag>
-
+
查询
重置
@@ -182,7 +182,7 @@
import JDate from '@/components/jeecg/JDate.vue'
#if>
<#if list_need_dict>
- import {initDictOptions, filterMultiDictText} from '@/components/dict/JDictSelectUtil'
+ import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
#if>
<#if list_need_category>
import { loadCategoryData } from '@/api/api'
@@ -238,34 +238,15 @@
<#elseif po.classType=='image'>
dataIndex: '${po.fieldName}',
scopedSlots: {customRender: 'imgSlot'}
- <#elseif po.classType=='sel_search' || po.classType=='list_multi' || po.classType=='list' || po.classType=='radio' || po.classType=='checkbox' || po.classType=='sel_depart'>
- dataIndex: '${po.fieldName}',
- customRender:(text)=>{
- if(!text){
- return ''
- }else{
- return filterMultiDictText(this.dictOptions['${po.fieldName}'], text+"")
- }
- }
+ <#elseif po.classType=='list' || po.classType=='list_multi' || po.classType=='sel_search' || po.classType=='radio' || po.classType=='checkbox' || po.classType=='sel_depart' || po.classType=='sel_user'>
+ dataIndex: '${po.fieldName}_dictText'
<#elseif po.classType=='cat_tree'>
<#if list_need_category>
dataIndex: '${po.fieldName}',
- customRender:(text)=>{
- if(!text){
- return ''
- }else{
- return filterMultiDictText(this.dictOptions['${po.fieldName}'], text+"")
- }
- }
+ customRender: (text) => (text ? filterMultiDictText(this.dictOptions['${po.fieldName}'], text) : '')
<#else>
dataIndex: '${po.fieldName}',
- customRender:(text,record)=>{
- if(!text){
- return ''
- }else{
- return record['${po.dictText}']
- }
- }
+ customRender: (text, record) => (text ? record['${po.dictText}'] : '')
#if>
<#else>
dataIndex: '${po.fieldName}'
@@ -287,16 +268,7 @@
exportXlsUrl: "/${entityPackage}/${entityName?uncap_first}/exportXls",
importExcelUrl: "${entityPackage}/${entityName?uncap_first}/importExcel",
},
- dictOptions:{
- <#list columns as po>
- <#if (po.isQuery=='Y' || po.isShowList=='Y')>
- <#if po.classType='sel_depart' || po.classType=='list_multi' || po.classType=='list' || po.classType=='radio' || po.classType=='checkbox'>
- ${po.fieldName}:[],
- #if>
- #if>
- #list>
- },
-
+ dictOptions:{},
}
},
computed: {
@@ -308,30 +280,12 @@
initDictConfig(){
<#list columns as po>
<#if (po.isQuery=='Y' || po.isShowList=='Y') && po.classType!='popup'>
- <#if po.classType='sel_depart'>
- initDictOptions('sys_depart,depart_name,id').then((res) => {
- if (res.success) {
- this.$set(this.dictOptions, '${po.fieldName}', res.result)
- }
- })
- <#elseif po.classType=='cat_tree' && list_need_category==true>
+ <#if po.classType=='cat_tree' && list_need_category==true>
loadCategoryData({code:"${po.dictField}"}).then((res) => {
if (res.success) {
this.$set(this.dictOptions, '${po.fieldName}', res.result)
}
})
- <#elseif po.classType=='sel_search' || po.classType=='list_multi' || po.classType=='list' || po.classType=='radio' || po.classType=='checkbox'>
- <#assign list_field_dictCode="">
- <#if po.dictTable?default("")?trim?length gt 1>
- <#assign list_field_dictCode="${po.dictTable},${po.dictText},${po.dictField}">
- <#elseif po.dictField?default("")?trim?length gt 1>
- <#assign list_field_dictCode="${po.dictField}">
- #if>
- initDictOptions('${list_field_dictCode}').then((res) => {
- if (res.success) {
- this.$set(this.dictOptions, '${po.fieldName}', res.result)
- }
- })
#if>
#if>
#list>
@@ -341,5 +295,5 @@
}
\ No newline at end of file
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
similarity index 88%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
index 3e8438163f8fdceaf15598c45aa6319383b0d8f3..8b11a84019c6278006cab86b927a69ae70009c9a 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
@@ -47,7 +47,7 @@
<#elseif po.classType =='popup'>
<#assign form_popup=true>
<#elseif po.classType =='sel_depart'>
<#assign form_sel_depart=true>
-
+
<#elseif po.classType =='sel_user'>
<#assign form_sel_user = true>
-
+
<#elseif po.classType =='textarea'>
-
+
<#elseif po.classType=='list' || po.classType=='radio'>
<#assign form_select = true>
-
+
<#elseif po.classType=='list_multi' || po.classType=='checkbox'>
<#assign form_select_multi = true>
-
+
<#elseif po.classType=='sel_search'>
<#assign form_select_search = true>
-
+
<#elseif po.classType=='cat_tree'>
<#assign form_cat_tree = true>
- back="${po.dictText}" @change="handleCategoryChange"#if>/>
+ back="${po.dictText}" @change="handleCategoryChange"#if>/>
<#if po.dictText?default("")?trim?length gt 1>
<#assign form_cat_back = "${po.dictText}">
#if>
@@ -80,7 +80,7 @@
<#elseif po.classType=='file' || po.classType=='image'>
<#assign form_file = true>
-
+
<#elseif po.classType=='umeditor'>
<#assign form_editor = true>
@@ -136,6 +136,7 @@
import pick from 'lodash.pick'
import { FormTypes,getRefPromise } from '@/utils/JEditableTableUtil'
import { JEditableTableMixin } from '@/mixins/JEditableTableMixin'
+ import { validateDuplicateValue } from '@/utils/util'
<#list subTables as sub>
<#if sub.foreignRelationType =='1'>
import ${sub.entityName}Form from './${sub.entityName}Form.vue'
@@ -222,19 +223,7 @@
},
// 新增时子表默认添加几行空数据
addDefaultRowNum: 1,
- validatorRules: {
-<#list columns as po>
-<#if po.isShow =='Y'>
- <#if po.fieldName !='id'>
- <#if po.nullable =='N'>
- ${po.fieldName}: { rules: [{ required: true, message: '请输入${po.filedComment}!' }] },
- <#else>
- ${po.fieldName}:{},
- #if>
- #if>
-#if>
-#list>
- },
+ <#include "/common/validatorRulesTemplate.ftl">
refKeys: [<#list subTables as sub>'${sub.entityName?uncap_first}', #list>],
tableKeys:[<#list subTables as sub><#if sub.foreignRelationType =='0'>'${sub.entityName?uncap_first}', #if>#list>],
activeKey: '${subTables[0].entityName?uncap_first}',
@@ -313,8 +302,18 @@
placeholder: '请输入${'$'}{title}',
#if>
defaultValue: '',
- <#if col.nullable =='N'>
+ <#-- 子表的校验 -->
+ <#assign subFieldValidType = col.fieldValidType!''>
+ <#-- 非空校验 -->
+ <#if col.nullable == 'N' || subFieldValidType == '*'>
validateRules: [{ required: true, message: '${'$'}{title}不能为空' }],
+ <#-- 其他情况下,只要有值就被认为是正则校验 -->
+ <#elseif subFieldValidType?length gt 0>
+ <#assign subMessage = '格式不正确'>
+ <#if subFieldValidType == 'only' >
+ <#assign subMessage = '不能重复'>
+ #if>
+ validateRules: [{ pattern: "${subFieldValidType}", message: "${'$'}{title}${subMessage}" }],
#if>
},
#if>
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Form.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Form.vuei
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Form.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Form.vuei
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
similarity index 95%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
index a6bc2205d6597f3c9e4e42c9f88dd2c3268d6451..2bbf62e87b572d8229b938cb0612713450e61d00 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
@@ -66,10 +66,14 @@ public class ${entityName}Controller extends JeecgController<${entityName}, I${e
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
- if(oConvertUtils.isEmpty(${entityName?uncap_first}.get${pidFieldName?cap_first}())){
- ${entityName?uncap_first}.set${pidFieldName?cap_first}("0");
+ String parentId = ${entityName?uncap_first}.get${pidFieldName?cap_first}();
+ if (oConvertUtils.isEmpty(parentId)) {
+ parentId = "0";
}
+ ${entityName?uncap_first}.set${pidFieldName?cap_first}(null);
QueryWrapper<${entityName}> queryWrapper = QueryGenerator.initQueryWrapper(${entityName?uncap_first}, req.getParameterMap());
+ // 使用 eq 防止模糊查询
+ queryWrapper.eq("${pidFieldName}", parentId);
Page<${entityName}> page = new Page<${entityName}>(pageNo, pageSize);
IPage<${entityName}> pageList = ${entityName?uncap_first}Service.page(page, queryWrapper);
return Result.ok(pageList);
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
similarity index 63%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
index f98eae7f070efefc5d7e550798299d36815d9619..0781c10b4f461272e1702b1af065b8b7ada34192 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
@@ -22,24 +22,37 @@ import org.jeecg.common.aspect.annotation.Dict;
@TableName("${tableName}")
public class ${entityName} implements Serializable {
private static final long serialVersionUID = 1L;
-
+
<#list originalColumns as po>
+ <#-- 生成字典Code -->
+ <#assign list_field_dictCode="">
+ <#if po.classType='sel_user'>
+ <#assign list_field_dictCode=', dictTable = "sys_user", dicText = "realname", dicCode = "username"'>
+ <#elseif po.classType='sel_depart'>
+ <#assign list_field_dictCode=', dictTable = "sys_depart", dicText = "depart_name", dicCode = "id"'>
+ <#elseif po.classType=='list' || po.classType=='list_multi' || po.classType=='sel_search' || po.classType=='radio' || po.classType=='checkbox'>
+ <#if po.dictTable?default("")?trim?length gt 1>
+ <#assign list_field_dictCode=', dictTable = "${po.dictTable}", dicText = "${po.dictText}", dicCode = "${po.dictField}"'>
+ <#elseif po.dictField?default("")?trim?length gt 1>
+ <#assign list_field_dictCode=', dicCode = "${po.dictField}"'>
+ #if>
+ #if>
/**${po.filedComment}*/
<#if po.fieldName == primaryKeyField>
@TableId(type = IdType.ID_WORKER_STR)
<#else>
<#if po.fieldDbType =='Date'>
<#if po.classType=='date'>
- @Excel(name = "${po.filedComment}", width = 15, format = "yyyy-MM-dd")
+ @Excel(name = "${po.filedComment}", width = 15, format = "yyyy-MM-dd"${list_field_dictCode})
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
<#else>
- @Excel(name = "${po.filedComment}", width = 20, format = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "${po.filedComment}", width = 20, format = "yyyy-MM-dd HH:mm:ss"${list_field_dictCode})
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
#if>
<#else>
- @Excel(name = "${po.filedComment}", width = 15)
+ @Excel(name = "${po.filedComment}", width = 15${list_field_dictCode})
#if>
<#-- <#if po.classType!='popup'>
<#if po.dictTable?default("")?trim?length gt 1>
@@ -48,6 +61,9 @@ public class ${entityName} implements Serializable {
@Dict(dicCode="${po.dictField}")
#if>
#if>-->
+ <#if list_field_dictCode?length gt 1>
+ @Dict(${list_field_dictCode?substring(2)})
+ #if>
#if>
private <#if po.fieldType=='java.sql.Blob'>byte[]<#else>${po.fieldType}#if> ${po.fieldName};
#list>
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
similarity index 85%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
index 7d9f54865eef6e3746ed5be779f1e47c241ab573..b4806b4f7099230b1777532198dae29b3b714159 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
@@ -91,7 +91,7 @@
import { getAction } from '@/api/manage'
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import ${entityName}Modal from './modules/${entityName}Modal'
- import {initDictOptions, filterMultiDictText} from '@/components/dict/JDictSelectUtil'
+ import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
export default {
name: "${entityName}List",
@@ -130,15 +130,8 @@
<#elseif po.classType=='image'>
dataIndex: '${po.fieldName}',
scopedSlots: {customRender: 'imgSlot'}
- <#elseif po.classType=='list_multi' || po.classType=='list' || po.classType=='radio' || po.classType=='checkbox' || po.classType=='sel_depart'>
- dataIndex: '${po.fieldName}',
- customRender:(text)=>{
- if(!text){
- return ''
- }else{
- return filterMultiDictText(this.dictOptions['${po.fieldName}'], text+"")
- }
- }
+ <#elseif po.classType=='list' || po.classType=='list_multi' || po.classType=='sel_search' || po.classType=='radio' || po.classType=='checkbox' || po.classType=='sel_depart' || po.classType=='sel_user'>
+ dataIndex: '${po.fieldName}_dictText'
<#else>
dataIndex: '${po.fieldName}'
#if>
@@ -164,15 +157,7 @@
expandedRowKeys:[],
hasChildrenField:"${hasChildrenField}",
pidField:"${pidFieldName}",
- dictOptions:{
- <#list columns as po>
- <#if (po.isQuery=='Y' || po.isShowList=='Y')>
- <#if po.classType='sel_depart' || po.classType=='list_multi' || po.classType=='list' || po.classType=='radio' || po.classType=='checkbox'>
- ${po.fieldName}:[],
- #if>
- #if>
- #list>
- }
+ dictOptions: {}
}
},
computed: {
@@ -258,25 +243,6 @@
initDictConfig(){
<#list columns as po>
<#if (po.isQuery=='Y' || po.isShowList=='Y') && po.classType!='popup'>
- <#if po.classType='sel_depart'>
- initDictOptions('sys_depart,depart_name,id').then((res) => {
- if (res.success) {
- this.$set(this.dictOptions, '${po.fieldName}', res.result)
- }
- })
- <#elseif po.classType=='list_multi' || po.classType=='list' || po.classType=='radio' || po.classType=='checkbox'>
- <#assign list_field_dictCode="">
- <#if po.dictTable?default("")?trim?length gt 1>
- <#assign list_field_dictCode="${po.dictTable},${po.dictText},${po.dictField}">
- <#elseif po.dictField?default("")?trim?length gt 1>
- <#assign list_field_dictCode="${po.dictField}">
- #if>
- initDictOptions('${list_field_dictCode}').then((res) => {
- if (res.success) {
- this.$set(this.dictOptions, '${po.fieldName}', res.result)
- }
- })
- #if>
#if>
#list>
},
@@ -353,5 +319,5 @@
}
\ No newline at end of file
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
similarity index 88%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
index 12df05c8c0f30fc909939fb32b6c769619294332..d64171eb346d1d68b46e5736b381fe7e5416afe8 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/tree/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/default/tree/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
@@ -50,7 +50,7 @@
<#elseif po.classType =='popup'>
<#assign form_popup=true>
<#elseif po.classType =='sel_depart'>
<#assign form_sel_depart=true>
-
+
<#elseif po.classType =='sel_user'>
<#assign form_sel_user = true>
-
+
<#elseif po.classType =='textarea'>
-
+
<#elseif po.classType=='list' || po.classType=='radio'>
<#assign form_select = true>
-
+
<#elseif po.classType=='list_multi' || po.classType=='checkbox'>
<#assign form_select_multi = true>
-
+
<#elseif po.fieldDbType=='int' || po.fieldDbType=='double' || po.fieldDbType=='BigDecimal'>
<#elseif po.classType=='file' || po.classType=='image'>
<#assign form_file = true>
-
+
<#else>
#if>
@@ -91,6 +91,7 @@
import { httpAction } from '@/api/manage'
import pick from 'lodash.pick'
+ import { validateDuplicateValue } from '@/utils/util'
<#if form_date>
import JDate from '@/components/jeecg/JDate'
#if>
@@ -155,19 +156,7 @@
},
confirmLoading: false,
- validatorRules:{
- <#list columns as po>
- <#if po.isShow =='Y'>
- <#if po.fieldName !='id'>
- <#if po.nullable =='N'>
- ${po.fieldName}:{rules: [{ required: true, message: '请输入${po.filedComment}!' }]},
- <#else>
- ${po.fieldName}:{},
- #if>
- #if>
- #if>
- #list>
- },
+ <#include "/common/validatorRulesTemplate.ftl">
url: {
add: "/${entityPackage}/${entityName?uncap_first}/add",
edit: "/${entityPackage}/${entityName?uncap_first}/edit",
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/controller/${entityName}Controller.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/entity/${entityName}.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/entity/[1-n]Entity.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/${entityName}Mapper.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/[1-n]Mapper.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/${entityName}Mapper.xml
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/mapper/xml/[1-n]Mapper.xml
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/I${entityName}Service.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/[1-n]Service.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/${entityName}ServiceImpl.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/service/impl/[1-n]ServiceImpl.javai
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
similarity index 98%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
index b4dbb867d271dd7fe886702b9e5906c2767fd461..c46dc1a308b9019acb530388c420173aff9c3219 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
@@ -18,7 +18,7 @@
#if>
<#if po.queryMode=='single'>
- <#if query_field_no gt 1> #if>
+ <#if query_field_no gt 1> #if>
<#if query_field_no gt 1> #if>
<#if po.classType=='date'>
<#assign query_field_date=true>
@@ -42,7 +42,7 @@
<#if query_field_no gt 1> #if>
<#if query_field_no gt 1> #if>
<#else>
- <#if query_field_no gt 1> #if>
+ <#if query_field_no gt 1> #if>
<#if query_field_no gt 1> #if>
<#if po.classType=='date'>
<#assign query_field_date=true>
@@ -78,7 +78,7 @@
#if>
<#if query_flag>
-
+
查询
重置
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/[1-n]List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/[1-n]List.vuei
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/[1-n]List.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/[1-n]List.vuei
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/${entityName}Modal.vuei
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Modal.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Modal.vuei
similarity index 100%
rename from jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Modal.vuei
rename to jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template-online/erp/onetomany/java/${bussiPackage}/${entityPackage}/vue/modules/[1-n]Modal.vuei
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
index 9a837c19fda5dc1ca02a5e8dde59911e1cb27a00..7260adc3d2f024d372c619d0695f1628987040bc 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
@@ -8,20 +8,20 @@
<#list columns as po>
<#if po.fieldName !='id' && po_index<= tableVo.searchFieldNum>
-
+
<#elseif po_index == 2>
-
+
<#elseif po.fieldName !='id' && po_index< 5>
-
+
@@ -32,7 +32,7 @@
<#if (columns?size>1) >
#if>
-
+
查询
重置
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one2/java/${bussiPackage}/vue/${entityPackage}/${entityName}List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one2/java/${bussiPackage}/vue/${entityPackage}/${entityName}List.vuei
index ef865c8252e45b39c2351b2d97af6c2ef3ea6a2b..62654761672d2cf8419b3551a7ccd2cdfe355e3d 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one2/java/${bussiPackage}/vue/${entityPackage}/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/one2/java/${bussiPackage}/vue/${entityPackage}/${entityName}List.vuei
@@ -8,20 +8,20 @@
<#list columns as po>
<#if po.fieldName !='id' && po_index<= tableVo.searchFieldNum>
-
+
<#elseif po_index == 2>
-
+
<#elseif po.fieldName !='id' && po_index< 5>
-
+
@@ -32,7 +32,7 @@
<#if (columns?size>1) >
#if>
-
+
查询
重置
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
index ede267da1cdbab964264a641cedf0db7e007a39e..d6d1ea047463710f90aed421a1f0046f52e11137 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
@@ -7,14 +7,14 @@
<#list columns as po><#rt/>
<#if po.fieldName !='id' && po_index<= tableVo.searchFieldNum>
-
+
#if>
#list>
-
+
查询
重置
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany2/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany2/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
index 7ffba946afc7a6fd968ed9cac4dc1eb0534aa9fb..a07b2366fc78eda57db02289609ff7e4b1f6da16 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany2/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/jeecg/code-template/onetomany2/java/${bussiPackage}/${entityPackage}/vue/${entityName}List.vuei
@@ -7,14 +7,14 @@
<#list columns as po><#rt/>
<#if po.fieldName !='id' && po_index<= tableVo.searchFieldNum>
-
+
#if>
#list>
-
+
查询
重置
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/static/bigscreen/template1/js/resize.js b/jeecg-boot/jeecg-boot-module-system/src/main/resources/static/bigscreen/template1/js/resize.js
new file mode 100644
index 0000000000000000000000000000000000000000..e97958092bfa4860b9342cb1328860bdb2406b06
--- /dev/null
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/static/bigscreen/template1/js/resize.js
@@ -0,0 +1,28 @@
+
+window.onresize = function() {
+ setAppScale();
+};
+
+function setAppScale() {
+ var ratioY = $(window).height()/1536;
+ var ratioX = $(window).width()/4352;
+ var screenWidth = window.screen.width;
+ var screenHeigth = window.screen.height;
+ if (screenWidth >= 960) {
+ ratioX = 0.62
+ }
+ if(screenHeigth <= 1080){
+ ratioY = 0.62
+ }
+ $("body").css({
+ transform: "scale("+ ratioX+","+ ratioY+")",
+ transformOrigin: "left top",
+ overflow:"visible"
+ });
+ }
+
+
+$().ready(function(){
+ //初始化时调整大小
+ setAppScale();
+});
diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/resources/templates/bigscreen/template1/index.ftl b/jeecg-boot/jeecg-boot-module-system/src/main/resources/templates/bigscreen/template1/index.ftl
index dadbed85dbb9e7913e65f43a95c75cc6e8aa570d..6cfdf4c90fd2908ba59f61a819539755a6deb9ec 100644
--- a/jeecg-boot/jeecg-boot-module-system/src/main/resources/templates/bigscreen/template1/index.ftl
+++ b/jeecg-boot/jeecg-boot-module-system/src/main/resources/templates/bigscreen/template1/index.ftl
@@ -7,7 +7,7 @@
- JEECG-boot大屏指挥室
+ JEECG ROOM 作战指挥室
@@ -19,6 +19,7 @@
+
@@ -48,7 +49,7 @@
-
+
diff --git a/jeecg-boot/jeecg-boot-module-system/src/test/java/org/jeecg/modules/online/desform/test/DesformApiTest.java b/jeecg-boot/jeecg-boot-module-system/src/test/java/org/jeecg/modules/online/desform/test/DesformApiTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..bba82537a5f0a26d9a564951c5344f525a81b2ee
--- /dev/null
+++ b/jeecg-boot/jeecg-boot-module-system/src/test/java/org/jeecg/modules/online/desform/test/DesformApiTest.java
@@ -0,0 +1,191 @@
+package org.jeecg.modules.online.desform.test;
+
+import com.alibaba.fastjson.JSONObject;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.system.util.JwtUtil;
+import org.jeecg.common.util.RedisUtil;
+import org.jeecg.common.util.RestUtil;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.MediaType;
+import org.springframework.http.ResponseEntity;
+import org.springframework.test.context.junit4.SpringRunner;
+
+/**
+ * 表单设计器 API 接口单元测试
+ */
+@RunWith(SpringRunner.class)
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
+@SuppressWarnings({"FieldCanBeLocal", "SpringJavaAutowiredMembersInspection"})
+public class DesformApiTest {
+
+ @Autowired
+ private RedisUtil redisUtil;
+
+ /**
+ * 测试地址:实际使用时替换成你自己的地址
+ */
+ private final String BASE_URL = "http://localhost:8080/jeecg-boot/desform/api/";
+
+ // 请实际使用时替换成你自己的用户名和密码
+ private final String USERNAME = "admin";
+ private final String PASSWORD = "123456";
+
+ /**
+ * 表单code,实际使用时可以替换成你要测试的表单code
+ */
+ private final String DESFORM_CODE = "qingjiadan";
+
+ /**
+ * 测试用例:新增
+ */
+ @Test
+ public void testAdd() {
+ // 用户Token
+ String token = this.getToken();
+ // 请求地址
+ String url = BASE_URL + DESFORM_CODE;
+ // 请求 Header (用于传递Token)
+ HttpHeaders headers = this.getHeaders(token);
+ // 请求方式是 POST 代表提交新增数据
+ HttpMethod method = HttpMethod.POST;
+
+ System.out.println("请求地址:" + url);
+ System.out.println("请求方式:" + method);
+ System.out.println("请求Token:" + token);
+
+ JSONObject params = new JSONObject();
+ params.put("name", "张三");
+ params.put("sex", "1");
+ params.put("begin_time", "2019-12-27");
+ params.put("remarks", "生病了");
+
+ System.out.println("请求参数:" + params.toJSONString());
+
+ // 利用 RestUtil 请求该url
+ ResponseEntity result = RestUtil.request(url, method, headers, null, params, JSONObject.class);
+ if (result != null && result.getBody() != null) {
+ System.out.println("返回结果:" + result.getBody().toJSONString());
+ } else {
+ System.out.println("查询失败");
+ }
+ }
+
+
+ /**
+ * 测试用例:修改
+ */
+ @Test
+ public void testEdit() {
+ // 数据Id
+ String dataId = "f43ea15c654337fbcb2336dd5422ffc3";
+ // 用户Token
+ String token = this.getToken();
+ // 请求地址
+ String url = BASE_URL + DESFORM_CODE + "/" + dataId;
+ // 请求 Header (用于传递Token)
+ HttpHeaders headers = this.getHeaders(token);
+ // 请求方式是 PUT 代表提交修改数据
+ HttpMethod method = HttpMethod.PUT;
+
+ System.out.println("请求地址:" + url);
+ System.out.println("请求方式:" + method);
+ System.out.println("请求Token:" + token);
+
+ JSONObject params = new JSONObject();
+ params.put("name", "李四");
+ params.put("sex", "0");
+ params.put("begin_time", "2019-12-27");
+ params.put("remarks", "感冒了");
+
+ System.out.println("请求参数:" + params.toJSONString());
+
+ // 利用 RestUtil 请求该url
+ ResponseEntity result = RestUtil.request(url, method, headers, null, params, JSONObject.class);
+ if (result != null && result.getBody() != null) {
+ System.out.println("返回结果:" + result.getBody().toJSONString());
+ } else {
+ System.out.println("查询失败");
+ }
+ }
+
+
+ /**
+ * 测试用例:删除
+ */
+ @Test
+ public void testDelete() {
+ // 数据Id
+ String dataId = "f43ea15c654337fbcb2336dd5422ffc3";
+ // 用户Token
+ String token = this.getToken();
+ // 请求地址
+ String url = BASE_URL + DESFORM_CODE + "/" + dataId;
+ // 请求 Header (用于传递Token)
+ HttpHeaders headers = this.getHeaders(token);
+ // 请求方式是 DELETE 代表删除数据
+ HttpMethod method = HttpMethod.DELETE;
+
+ System.out.println("请求地址:" + url);
+ System.out.println("请求方式:" + method);
+ System.out.println("请求Token:" + token);
+
+ // 利用 RestUtil 请求该url
+ ResponseEntity result = RestUtil.request(url, method, headers, null, null, JSONObject.class);
+ if (result != null && result.getBody() != null) {
+ System.out.println("返回结果:" + result.getBody().toJSONString());
+ } else {
+ System.out.println("查询失败");
+ }
+ }
+
+ /**
+ * 测试用例:查询记录
+ */
+ @Test
+ public void testQuery() {
+ // 数据Id
+ String dataId = "18146ddaa062296442a9310a51baf67b";
+ // 用户Token
+ String token = this.getToken();
+ // 请求地址
+ String url = BASE_URL + DESFORM_CODE + "/" + dataId;
+ // 请求 Header (用于传递Token)
+ HttpHeaders headers = this.getHeaders(token);
+ // 请求方式是 GET 代表获取数据
+ HttpMethod method = HttpMethod.GET;
+
+ System.out.println("请求地址:" + url);
+ System.out.println("请求方式:" + method);
+ System.out.println("请求Token:" + token);
+
+ // 利用 RestUtil 请求该url
+ ResponseEntity result = RestUtil.request(url, method, headers, null, null, JSONObject.class);
+ if (result != null && result.getBody() != null) {
+ System.out.println("返回结果:" + result.getBody().toJSONString());
+ } else {
+ System.out.println("查询失败");
+ }
+ }
+
+ private String getToken() {
+ String token = JwtUtil.sign(USERNAME, PASSWORD);
+ redisUtil.set(CommonConstant.PREFIX_USER_TOKEN + token, token);
+ redisUtil.expire(CommonConstant.PREFIX_USER_TOKEN + token, 60);
+ return token;
+ }
+
+ private HttpHeaders getHeaders(String token) {
+ HttpHeaders headers = new HttpHeaders();
+ String mediaType = MediaType.APPLICATION_JSON_UTF8_VALUE;
+ headers.setContentType(MediaType.parseMediaType(mediaType));
+ headers.set("Accept", mediaType);
+ headers.set("X-Access-Token", token);
+ return headers;
+ }
+
+}
diff --git a/jeecg-boot/pom.xml b/jeecg-boot/pom.xml
index 2f18eeeb7dc7e3dbb45043629ae73bde83abffc7..dddab8f12af18a84fb1916a315ff211a5d1a6ca3 100644
--- a/jeecg-boot/pom.xml
+++ b/jeecg-boot/pom.xml
@@ -2,7 +2,7 @@
4.0.0
org.jeecgframework.boot
jeecg-boot-parent
- 2.1.3
+ 2.1.4
pom
@@ -17,7 +17,7 @@
jeecg-boot-base-common
jeecg-boot-module-system
-
+
jeecg
@@ -51,7 +51,7 @@
- 2.1.3
+ 2.1.4
1.8
UTF-8
UTF-8
@@ -62,6 +62,7 @@
3.2.3
1.0.0
3.6.0
+ 26.0-jre
@@ -206,6 +207,24 @@
+
+
+ org.hibernate
+ hibernate-re
+ 2.1.4
+
+
+ org.hibernate
+ hibernate-core
+
+
+ commons-collections
+ commons-collections
+
+
+
+
+
io.springfox
@@ -238,21 +257,6 @@
swagger-models
1.5.22
-
- org.hibernate
- hibernate-re
- 5.2.13
-
-
- org.hibernate
- hibernate-core
-
-
- commons-collections
- commons-collections
-
-
-
@@ -270,14 +274,14 @@
org.jeecgframework.boot
codegenerate
- 1.0.8
+ 1.1.0
org.jeecgframework
autopoi-web
- 1.0.4
+ 1.0.5
commons-codec
@@ -291,7 +295,19 @@
hutool-all
4.5.11
-
+
+
+
+ io.minio
+ minio
+ 4.0.0
+
+
+ com.google.guava
+ guava
+ ${guava.version}
+
+
com.aliyun
@@ -317,6 +333,18 @@
spring-boot-starter-websocket
+
+
+ org.springframework.boot
+ spring-boot-starter-jdbc
+
+
+ commons-dbcp
+ commons-dbcp
+ 1.4
+ compile
+
+
com.aliyun.oss
@@ -344,7 +372,11 @@
-
+
org.apache.maven.plugins
maven-compiler-plugin