Ejemplo n.º 1
0
def getTitle(bean,className):
    title="/*----------------------------------------------------------------------------*/"+"\n"\
          "/* "+ className+"                                                      "+"\n"\
          "/*----------------------------------------------------------------------------*/"+"\n"\
          "/* author : "+bean.bean_master.author+"\n"\
          "/* target : "+bean.bean_master.descript+"\n"\
          "/* create : "+commUtil.getCurDate()+" "+commUtil.getCurTime() +"\n"\
          "/* update : "+commUtil.getCurDate()+" "+commUtil.getCurTime() +"\n"\
          "/* version: "+bean.bean_master.version+"\n "\
          "/*----------------------------------------------------------------------------*/"+"\n"
    return title
Ejemplo n.º 2
0
def getTitle(bean):
	title="/*----------------------------------------------------------------------------*/"+"\n"\
	      "/* "+ bean.bean_master.entity+BEAN_PRE_NAME+"                                                      "+"\n"\
	      "/*----------------------------------------------------------------------------*/"+"\n"\
	      "/* author : "+bean.bean_master.author+"\n"\
	      "/* table  : "+bean.bean_master.table +"\n"\
	      "/* target : "+bean.bean_master.descript+"\n"\
	      "/* create : "+commUtil.getCurDate()+" "+commUtil.getCurTime() +"\n"\
	      "/* update : "+commUtil.getCurDate()+" "+commUtil.getCurTime() +"\n"\
		  "/* version: "+bean.bean_master.version+"\n "\
	      "/*----------------------------------------------------------------------------*/"+"\n"
	return title
Ejemplo n.º 3
0
def getAttributeDesc(bean):
    desc=[]
    desc.append(FOUR_SPACE+"/** "+"\n" )
    desc.append(FOUR_SPACE+" *   "+bean.bean_master.descript+"\n" )
    desc.append(FOUR_SPACE+" * @since  "+commUtil.getCurDate()+"\n" )
    desc.append(FOUR_SPACE+" */"+"\n")
    return ''.join(desc)
Ejemplo n.º 4
0
def genPKClass(bean):
	pk_count=0
	for detail in bean.bean_master.get_detail() :
	    if detail.field_isKey.upper() == "Y":
	       pk_count = pk_count +1
	if pk_count<=1:
	   return ""

	title=getTitle(bean)
	packageName = "package "+bean.bean_master.package+PACKAGE_PK_NAME+";"+"\n"*3   
	voName=""+bean.bean_master.entity[0].upper()+bean.bean_master.entity[1:]+'PK'
	
	#Field
	context=[]
	context.append("public class "+voName+" implements Serializable { \n")
	pk=[]
	constructor_field=""
	for detail in bean.bean_master.get_detail() :
	    if detail.field_isKey.upper() == "Y":
	       context.append(FOUR_SPACE+"/** "+"\n" )
	       context.append(FOUR_SPACE+" *   "+detail.field_desc+"\n" )
	       context.append(FOUR_SPACE+" * @since  "+commUtil.getCurDate()+"\n" )
	       context.append(FOUR_SPACE+" */"+"\n")
	       context.append(FOUR_SPACE+"@NotNull "+"\n")
	       context.append(FOUR_SPACE+"@Size(max = "+detail.field_width+") "+"\n")
	       context.append(FOUR_SPACE+"@Max(value="+detail.field_width+", message = \""+detail.field_desc+"長度不能超過["+detail.field_width+"] \")"+"\n")
	       context.append(FOUR_SPACE+"private String "+detail.entity_name +";"+"\n"*2)
	       pk.append(detail.field_dataType + ' '+detail.field_name)
	       constructor_field = constructor_field +FOUR_SPACE+" this."+detail.field_name+"="+detail.field_name+"\n"
	
	
	#constructor
	context.append(FOUR_SPACE+"public "+voName+"( "+','.join(pk)+") {"+"\n")
	context.append(FOUR_SPACE+constructor_field)

	context.append(FOUR_SPACE+"} "+"\n")
	
	#setter/getter
	for detail in bean.bean_master.get_detail() :
	   if detail.field_isKey.upper() == "Y":
	      context.append(getGetterAndSetterStr(detail))
	

	#toString
	context.append(FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"\
	               +FOUR_SPACE+"/*public methods "+"\n"\
	               +FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"*2)
	context.append(FOUR_SPACE+"public String toString( ) { "+"\n")
	context.append(FOUR_SPACE*2+"return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE) "+"\n"*2)

	for detail in bean.bean_master.get_detail() :
	    if detail.field_isKey.upper() == "Y":
	       context.append(FOUR_SPACE+".append(\""+detail.entity_name+"\", "+detail.entity_name+") "+"\n")
	context.append(".toString(); ")

	context.append(FOUR_SPACE+"} "+"\n")

	context.append(" } "+"\n"*2)
	return  title+packageName+getImportVOJar()+''.join(context)
Ejemplo n.º 5
0
def getJPA1Repository(bean):
	entity_name =  bean.bean_master.entity+BEAN_PRE_NAME #BaseP01+Bean
	repository_name=bean.bean_master.entity+BEAN_REPOSITORY_NAME 
	repository_package="repository"
	title="/*----------------------------------------------------------------------------*/"+"\n"\
	      "/* "+ repository_name +"                                  "+"\n"\
	      "/*----------------------------------------------------------------------------*/"+"\n"\
	      "/* author : "+bean.bean_master.author+"\n"\
	      "/* table  : "+bean.bean_master.table +"\n"\
	      "/* target : "+bean.bean_master.descript+"\n"\
	      "/* create : "+commUtil.getCurDate()+" "+commUtil.getCurTime() +"\n"\
	      "/* update : "+commUtil.getCurDate()+" "+commUtil.getCurTime() +"\n"\
	      "/*----------------------------------------------------------------------------*/"+"\n"
	packageName = "package "+bean.bean_master.package+"."+repository_package+";"+"\n"*4
	context=[]
	context.append("@Repository"+"\n")
	context.append("public interface "+repository_name+" extends JpaRepository<"+entity_name+", String> { "+"\n")
	context.append(FOUR_SPACE+"public final static String AppId = \""+entity_name.upper()+" \" ; "+"\n")
	context.append(FOUR_SPACE+"public final static String CLASS_VERSION =\"\" ; "+"\n")
	context.append("\n"*2)
	count = getPKCount(bean)
	#method
	no=1
	where=[]
	param=[]
	for detail in bean.bean_master.get_detail() : 
	    #print "no:"+str(no)
	    if detail.field_isKey.upper() == "Y":
	       where.append(" b."+detail.field_name+"=:"+detail.field_name)
	       data_type = "Date" if detail.field_dataType.upper() == "TIME" else detail.field_dataType
	       param.append("@Param(\""+detail.field_name+"\") "+data_type +" "+ detail.field_name)
	       context.append(FOUR_SPACE+"@Query(value=\"SELECT b FROM "+entity_name+" b WHERE "+" AND ".join(where)+" \" )"+"\n" )
	       if count==1 or no==count:
	          context.append(FOUR_SPACE+"public  "+entity_name+ " findByAllPK("+", ".join(param)+");"+"\n")
	       else :	
	             serial = str(no)
	             context.append(FOUR_SPACE+"public  "+entity_name+ " findByPK"+serial+"("+str(", ".join(param))+");"+"\n"*2)
	       no=no+1
	importp = bean.bean_master.package+".bean."+entity_name



	context.append("\n\n"+"}"+"\n")
	return title + packageName+ getImportDAOJar(importp)+''.join(context)
Ejemplo n.º 6
0
def getGetterAndSetterStr(detail):
	sgStr=[]
	if detail.field_dataType=="String":
	    #setter
	    sgStr.append(FOUR_SPACE+"/** "+"\n")
	    sgStr.append(FOUR_SPACE+" * "+"設定"+detail.field_desc+"\n")
	    sgStr.append(FOUR_SPACE+" * @since  "+commUtil.getCurDate()+"\n" )
	    sgStr.append(FOUR_SPACE+" */ "+"\n")
	    sgStr.append(FOUR_SPACE+"public void set"+detail.entity_name[0].upper()+detail.entity_name[1:]+"("+detail.field_dataType+" "+detail.entity_name+"){ \n")
	    sgStr.append(FOUR_SPACE*2+"this."+detail.entity_name+"=("+detail.entity_name+"==null)?\"\" : "+detail.entity_name+"; \n")
	    sgStr.append(FOUR_SPACE+"} "+"\n"*2)
	    #getter
	    sgStr.append(FOUR_SPACE+"/** "+"\n")
	    sgStr.append(FOUR_SPACE+" * "+"取得"+detail.field_desc+"\n")
	    sgStr.append(FOUR_SPACE+" * @since  "+commUtil.getCurDate()+"\n" )
	    sgStr.append(FOUR_SPACE+" */ "+"\n")
	    sgStr.append(FOUR_SPACE+"public "+detail.field_dataType+" get"+detail.entity_name[0].upper()+detail.entity_name[1:]+"(){ \n")
	    sgStr.append(FOUR_SPACE*2+" return this."+detail.entity_name+" \n")
	    sgStr.append(FOUR_SPACE+"} "+"\n"*2)
	return ''.join(sgStr)
Ejemplo n.º 7
0
def getJPA1VO(bean):
	packageName = "package "+bean.bean_master.package+".bean;"+"\n"*3
	title = getTitle(bean)
	preface ="/**"+"\n" \
	         "* "+bean.bean_master.descript+" Value Object "+"\n" \
	         "* Table Name        :"+bean.bean_master.table+"\n" \
	         "* Table Description :"+bean.bean_master.descript+"\n" \
	         "* Repository        :"+bean.bean_master.className+"\n" \
	         "* @Version          :"+bean.bean_master.model+" "+bean.bean_master.version+"\n" \
	         "* @since            :"+bean.bean_master.className+" "+commUtil.getCurDate()+"\n"\
	         "**/"+"\n"*2
	context=[]
	context.append("@Entity(name=\""+str(bean.bean_master.entity[0]).lower()+bean.bean_master.entity[1:]+"\") \n")
	context.append("@Table (name=\""+bean.bean_master.table+"\") \n")
	context.append("public class "+bean.bean_master.entity+BEAN_PRE_NAME+" implements Serializable  ")
	#if bean.bean_master.tool == "RowMapper":
	#   context.append(" , RowMapper<"+bean.bean_master.entity+"> ")
	context.append("{ "+"\n")
	
	context.append(FOUR_SPACE+"public final static String AppId = \""+bean.bean_master.entity.upper()+BEAN_PRE_NAME.upper()+" \" ; "+"\n")
	context.append(FOUR_SPACE+"public final static String CLASS_VERSION =\"\" ; "+"\n")
	context.append("/*----------------------------------------------------------------------------*/"+"\n"\
	               "/* "+bean.bean_master.table+" column Name */"+"\n"\
	               "/*----------------------------------------------------------------------------*/"+"\n")
	pkParamStr=[];
	pkParamTypes=[];
	pkParamNames=[];
	pk_count=0
	for detail in bean.bean_master.get_detail() : 
	    if detail.field_isKey.upper() == "Y":
	       pkParamTypes.append(detail.field_dataType)
	       pkParamNames.append(detail.entity_name)
	       pkParamStr.append(detail.field_dataType+" "+detail.entity_name)
	       pk_count=pk_count+1

	#field
	for detail in bean.bean_master.get_detail() :
	   context.append(FOUR_SPACE+"/** "+"\n" )
	   context.append(FOUR_SPACE+" *   "+detail.field_desc+"\n" )
	   context.append(FOUR_SPACE+" * @since  "+commUtil.getCurDate()+"\n" )
	   context.append(FOUR_SPACE+" */"+"\n")
	   if detail.field_isKey.upper() == "Y":
	      if pk_count >1:
	         context.append(FOUR_SPACE+"@EmbeddedId "+"\n" )
	      else:
	         context.append(FOUR_SPACE+"@Id "+"\n")
	      context.append(FOUR_SPACE+"@Column(name = \""+detail.field_name+"\", nullable = false) "+"\n")
	   else:
	      context.append(FOUR_SPACE+"@Column(name =\""+detail.field_name+"\" ) "+"\n")
	   
	   context.append(FOUR_SPACE+"@Max(value="+detail.field_width+", message = \""+detail.field_desc+"長度不能超過["+detail.field_width+"] \")"+"\n")

	   if detail.field_dataType.upper() =="DATE":
	      context.append(FOUR_SPACE+"@Temporal(value=TemporalType.DATE) "+"\n")
	      context.append(FOUR_SPACE+"private Date "+detail.entity_name+" ;"+"\n"*2)
	   elif detail.field_dataType.upper() =="TIME":
	      context.append(FOUR_SPACE+"@Temporal(value=TemporalType.TIME) "+"\n")
	      context.append(FOUR_SPACE+"private Date "+detail.entity_name+" ;"+"\n"*2)
	   else:
	      context.append(FOUR_SPACE+"private "+detail.field_dataType+" "+detail.entity_name+" ;"+"\n"*2)

	   

	#context.append("/** \n "+" * "+detail.field_desc+" \n  * @since "+commUtil.getCurDate() +" \n */"+"\n")

	# 建構子 constructor
	context.append(FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"\
	               +FOUR_SPACE+"/* 建構子 constructor "+"\n"\
	               +FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"*3)
	

	context.append(FOUR_SPACE+"/** \n"+FOUR_SPACE+" * 建構子 \n"+FOUR_SPACE+" * @since  "+commUtil.getCurDate()+"\n" +""+FOUR_SPACE+" */\n")
	context.append(FOUR_SPACE+"public "+bean.bean_master.entity+BEAN_PRE_NAME+"() { "+"\n"+" clear() ; }"+"\n")
	context.append(FOUR_SPACE+"public "+bean.bean_master.entity+BEAN_PRE_NAME+"("+','.join(pkParamStr)+") { "+"\n")
	for i in range(0,len(pkParamNames),1):
		context.append(FOUR_SPACE*2+"this."+pkParamNames[i]+"="+pkParamNames[i]+";\n")
	context.append(FOUR_SPACE+"}"+"\n")  

	#reset
	context.append(FOUR_SPACE+"/** \n"+FOUR_SPACE+" * 將所有的欄位 reset 成預設值 \n"+FOUR_SPACE+" * @since  "+commUtil.getCurDate()+"\n" +""+FOUR_SPACE+" */\n")
	context.append(FOUR_SPACE+"public void clear() { "+"\n")
	for detail in bean.bean_master.get_detail() :
	   if detail.field_dataType=="String":
	      context.append(FOUR_SPACE+"   this."+detail.entity_name+"=\"\" ;\n" )
	   elif detail.field_dataType=="int":
	      context.append(FOUR_SPACE+"   this."+detail.entity_name+"=0 ;\n" )
	   elif detail.field_dataType=="date" or detail.field_dataType=="time" :
	      context.append(FOUR_SPACE+"   this."+detail.entity_name+"= new Date() ;\n" )
	context.append(FOUR_SPACE+"} "+"\n")

	'''
	context.append("/** \n * 將自己複制一份出來 \n */ \n")
	context.append(FOUR_SPACE+"public "+bean.bean_master.entity+" myClone() { "+"\n")
	for detail in bean.bean_master.get_detail() :
	   if detail.field_format=="String":
	      context.append(FOUR_SPACE+"   this."+detail.entity_name+"=\"\" ;\n" )
	   elif detail.field_format=="int":
	      context.append(FOUR_SPACE+"   this."+detail.entity_name+"=0 ;\n" )
	   elif detail.field_format=="date" or detail.field_format=="time" :
	      context.append(FOUR_SPACE+"   this."+detail.entity_name+"= new Date() ;\n" )
	context.append(FOUR_SPACE+"} "+"\n")	
	'''
	#toString
	context.append(FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"\
	               +FOUR_SPACE+"/*public methods "+"\n"\
	               +FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"*2)
	context.append(FOUR_SPACE+"public String toString( ) { "+"\n")
	context.append(FOUR_SPACE*2+"return new ToStringBuilder(this, ToStringStyle.DEFAULT_STYLE) "+"\n")
	for detail in bean.bean_master.get_detail() :
	    context.append(FOUR_SPACE*2+".append(\""+detail.entity_name+"\", "+detail.entity_name+") "+"\n")
	context.append(".toString(); "+"\n")
	context.append(FOUR_SPACE+" } "+"\n")

	# detail
	context.append(FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"\
	               +FOUR_SPACE+"/* get and set methods for the instance variables "+"\n"\
	               +FOUR_SPACE+"/*----------------------------------------------------------------------------*/"+"\n"*2)
	
	for detail in bean.bean_master.get_detail() :
	   if detail.field_dataType=="String":
	       #setter
	       context.append(FOUR_SPACE*2+"/** "+"\n")
	       context.append(FOUR_SPACE*2+" * "+"設定"+detail.field_desc+"\n")
	       context.append(FOUR_SPACE*2+" * @since  "+commUtil.getCurDate()+"\n" )
	       context.append(FOUR_SPACE*2+" */ "+"\n")
	       context.append(FOUR_SPACE*2+"public void set"+detail.entity_name[0].upper()+detail.entity_name[1:]+"("+detail.field_dataType+" "+detail.entity_name+"){ \n")
	       context.append(FOUR_SPACE*3+"this."+detail.entity_name+"=("+detail.entity_name+"==null)?\"\" : "+detail.entity_name+"; \n")
	       context.append(FOUR_SPACE*2+"} "+"\n")
	       #getter
	       context.append(FOUR_SPACE*2+"/** "+"\n")
	       context.append(FOUR_SPACE*2+" * "+"取得"+detail.field_desc+"\n")
	       context.append(FOUR_SPACE*2+" * @since  "+commUtil.getCurDate()+"\n" )
	       context.append(FOUR_SPACE*2+" */ "+"\n")
	       context.append(FOUR_SPACE*2+"public "+detail.field_dataType+" get"+detail.entity_name[0].upper()+detail.entity_name[1:]+"(){ \n")
	       context.append(FOUR_SPACE*3+" return this."+detail.entity_name+" ;\n")
	       context.append(FOUR_SPACE*2+"} "+"\n")
	       #getter ( 處理單引號的問題 )
	       context.append(FOUR_SPACE*2+"/** "+"\n")
	       context.append(FOUR_SPACE*2+" * "+"取得"+detail.field_desc+" (處理單引號的問題) \n")
	       context.append(FOUR_SPACE*2+" * @since  "+commUtil.getCurDate()+"\n" )
	       context.append(FOUR_SPACE*2+" */ "+"\n")
	       context.append(FOUR_SPACE*2+"public "+detail.field_dataType+" get"+detail.entity_name[0].upper()+detail.entity_name[1:]+"S(){ \n")
	       context.append(FOUR_SPACE*3+" return this."+detail.entity_name+" ; \n")
	       context.append(FOUR_SPACE*2+"} "+"\n")
	   elif detail.field_dataType.upper()=="DATE" or detail.field_dataType.upper()=="TIME" :
	       #setter
	       context.append(FOUR_SPACE*2+"/** "+"\n")
	       context.append(FOUR_SPACE*2+" * "+"設定"+detail.field_desc+"\n")
	       context.append(FOUR_SPACE*2+" * @since  "+commUtil.getCurDate()+"\n" )
	       context.append(FOUR_SPACE*2+" */ "+"\n")
	       context.append(FOUR_SPACE*2+"public void set"+detail.entity_name[0].upper()+detail.entity_name[1:]+"( Date "+detail.entity_name+"){ \n")
	       context.append(FOUR_SPACE*3+"this."+detail.entity_name+"=("+detail.entity_name+"==null)? new Date() : "+detail.entity_name+"; \n")
	       context.append(FOUR_SPACE*2+"} "+"\n")
	       #getter
	       context.append(FOUR_SPACE*2+"/** "+"\n")
	       context.append(FOUR_SPACE*2+" * "+"取得"+detail.field_desc+"\n")
	       context.append(FOUR_SPACE*2+" * @since  "+commUtil.getCurDate()+"\n" )
	       context.append(FOUR_SPACE*2+" */ "+"\n")
	       context.append(FOUR_SPACE*2+"public Date get"+detail.entity_name[0].upper()+detail.entity_name[1:]+"(){ \n")
	       context.append(FOUR_SPACE*3+" return this."+detail.entity_name+" ; \n")
	       context.append(FOUR_SPACE*2+"} "+"\n")
	       #getter ( 處理單引號的問題 )
	       context.append(FOUR_SPACE*2+"/** "+"\n")
	       context.append(FOUR_SPACE*2+" * "+"取得"+detail.field_desc+" (處理單引號的問題) \n")
	       context.append(FOUR_SPACE*2+" * @since  "+commUtil.getCurDate()+"\n" )
	       context.append(FOUR_SPACE*2+" */ "+"\n")
	       context.append(FOUR_SPACE*2+"public String get"+detail.entity_name[0].upper()+detail.entity_name[1:]+"S(){ \n")
	       context.append(FOUR_SPACE*3+" return this."+detail.entity_name+".toString() ; \n")
	       context.append(FOUR_SPACE*2+"} "+"\n")
	context.append("} ")
	return title+packageName+str(getImportVOJar())+preface+''.join(context)