added jpa entity generator
This commit is contained in:
parent
5e3343e200
commit
ba746b8a41
|
@ -11,6 +11,10 @@ module.exports = {
|
||||||
model.package = `${namespace}.${suffix}`;
|
model.package = `${namespace}.${suffix}`;
|
||||||
model.dir = model.package.replace(/\./g, '/')
|
model.dir = model.package.replace(/\./g, '/')
|
||||||
model.fields = model.fields.map(field => {
|
model.fields = model.fields.map(field => {
|
||||||
|
|
||||||
|
let field_attr = field.attributes.find(attr => attr.name == 'jpa_sql')
|
||||||
|
field_attr = field_attr || {}
|
||||||
|
|
||||||
field.isEnum = service.enums.find(e => e.name == field.type) != null
|
field.isEnum = service.enums.find(e => e.name == field.type) != null
|
||||||
field.name = utils.camelcase(field.name)
|
field.name = utils.camelcase(field.name)
|
||||||
field.type = javaType.mapJavaType(field.type, namespace, field.isEnum ? '' : 'Record')
|
field.type = javaType.mapJavaType(field.type, namespace, field.isEnum ? '' : 'Record')
|
||||||
|
@ -23,8 +27,11 @@ module.exports = {
|
||||||
field.default = javaType.mapDefaultValue(field.type, field.default)
|
field.default = javaType.mapDefaultValue(field.type, field.default)
|
||||||
field.nullable = !field.required
|
field.nullable = !field.required
|
||||||
field.isPkey = jpa.pkey == field.name
|
field.isPkey = jpa.pkey == field.name
|
||||||
|
field.unique = field.attr.unique
|
||||||
|
field.creationTimestamp = field_attr.timestamp == 'create'
|
||||||
|
field.updateTimestamp = field_attr.timestamp == 'update'
|
||||||
|
|
||||||
|
|
||||||
console.log("field", field)
|
|
||||||
|
|
||||||
return field
|
return field
|
||||||
})
|
})
|
||||||
|
|
|
@ -11,6 +11,10 @@
|
||||||
package {{package}};
|
package {{package}};
|
||||||
|
|
||||||
import javax.persistence.*;
|
import javax.persistence.*;
|
||||||
|
import org.hibernate.annotations.CreationTimestamp;
|
||||||
|
import org.hibernate.annotations.GenericGenerator;
|
||||||
|
import org.hibernate.annotations.Type;
|
||||||
|
import org.hibernate.annotations.UpdateTimestamp;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
{{#imports}}
|
{{#imports}}
|
||||||
import {{{.}}};
|
import {{{.}}};
|
||||||
|
@ -34,12 +38,13 @@ import {{{.}}};
|
||||||
public class {{name}} {
|
public class {{name}} {
|
||||||
|
|
||||||
{{#fields}}
|
{{#fields}}
|
||||||
{{#description}}/** {{.}} **/{{/description}}
|
{{#description}}/** {{.}} **/{{/description}}{{#isPkey}}
|
||||||
{{#isPkey}}
|
|
||||||
@Id{{/isPkey}}{{#type.isCollection}}
|
@Id{{/isPkey}}{{#type.isCollection}}
|
||||||
@OneToMany{{/type.isCollection}}
|
@OneToMany{{/type.isCollection}}
|
||||||
@Column(nullable = {{nullable}}){{#isEnum}}
|
@Column(nullable = {{nullable}}, unique = {{unique}}){{#isEnum}}
|
||||||
@Enumerated(EnumType.STRING){{/isEnum}}
|
@Enumerated(EnumType.STRING){{/isEnum}}{{#updateTimestamp}}
|
||||||
|
@UpdateTimestamp{{/updateTimestamp}}{{#creationTimestamp}}
|
||||||
|
@CreationTimestamp{{/creationTimestamp}}
|
||||||
private {{{type.name}}} {{name}};
|
private {{{type.name}}} {{name}};
|
||||||
|
|
||||||
{{/fields}}
|
{{/fields}}
|
||||||
|
|
Loading…
Reference in a new issue