OSSEZ-11 创建一个新表用于存储 USCIS 的表单分类

This commit is contained in:
YuCheng Hu 2017-09-25 16:27:26 -04:00
parent d4c615a74c
commit 77a352c95f
3 changed files with 153 additions and 0 deletions

View File

@ -0,0 +1,45 @@
package com.usvisatrack.core.dao.model;
import com.usvisatrack.core.common.DataObject;
/**
* UscisForm ORM
*
* @author YuCheng Hu
*
*/
public class UscisFormClassification extends DataObject {
private UscisForm uscisForm;
private String uscisFormClassificationName;
private String uscisFormClassificationTitle;
public UscisFormClassification() {
}
public UscisForm getUscisForm() {
return uscisForm;
}
public void setUscisForm(UscisForm uscisForm) {
this.uscisForm = uscisForm;
}
public String getUscisFormClassificationName() {
return uscisFormClassificationName;
}
public void setUscisFormClassificationName(String uscisFormClassificationName) {
this.uscisFormClassificationName = uscisFormClassificationName;
}
public String getUscisFormClassificationTitle() {
return uscisFormClassificationTitle;
}
public void setUscisFormClassificationTitle(String uscisFormClassificationTitle) {
this.uscisFormClassificationTitle = uscisFormClassificationTitle;
}
}

View File

@ -0,0 +1,86 @@
package com.usvisatrack.core.factories;
import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.usvisatrack.core.common.DataObject;
import com.usvisatrack.core.common.Factory;
import com.usvisatrack.core.dao.model.UscisForm;
import com.usvisatrack.core.dao.model.UscisFormClassification;
/**
* Item Data Factory
*
* @author YuCheng Hu
*
*/
public class UscisFormFactory extends Factory {
private static Logger logger = LoggerFactory.getLogger(UscisFormFactory.class);
private static final int LISTING_PAGE_SIZE = 20;
public static final int DEFAULT_AUTH_EXPIRATION = 10;
/**
* Get Visa OBJ
*
* @param checkkeID
* @return
*/
public static UscisForm getUscisFormByCode(String uscisFormCode) {
logger.debug("Get UscisForm OBJ by form code - [{}]", uscisFormCode);
try {
Factory.beginTransaction();
Criteria criteria = Factory.createCriteria(UscisForm.class);
criteria.add(Restrictions.ilike("uscisFormCode", "%" + uscisFormCode + "%"));
criteria.setMaxResults(1);
return (UscisForm) criteria.uniqueResult();
} catch (Exception ex) {
logger.error("Search UscisForm data error", ex);
} finally {
Factory.commitTransaction();
}
return null;
}
/**
* Get Visa OBJ
*
* @param checkkeID
* @return
*/
public static UscisFormClassification getUscisFormClassification(UscisForm uscisForm, String formClassificationTitle,
String formClassificationName) {
// logger.debug("Get UscisFormClassification OBJ by formCode/formName - [{}]/[{}]", uscisForm.getUscisFormName(),
// formClassificationName);
try {
Factory.beginTransaction();
Criteria criteria = Factory.createCriteria(UscisFormClassification.class);
criteria.add(Restrictions.eq("uscisFormClassificationTitle", formClassificationTitle));
criteria.add(Restrictions.eq("uscisFormClassificationName", formClassificationName));
criteria.setMaxResults(1);
return (UscisFormClassification) criteria.uniqueResult();
} catch (Exception ex) {
logger.error("Search UscisFormClassification data error", ex);
} finally {
Factory.commitTransaction();
}
return null;
}
public static void save(DataObject object) {
Factory.beginTransaction();
Factory.save(object);
Factory.commitTransaction();
}
}

View File

@ -0,0 +1,22 @@
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.usvisatrack.core.dao.model">
<class name="UscisFormClassification" table="uscis_form_classification" catalog="northtecom_usvisatrack">
<id name="id" type="long">
<column name="uscis_form_classification_id" />
<generator class="identity" />
</id>
<many-to-one class="com.usvisatrack.core.dao.model.UscisForm" name="uscisForm" column="uscis_form_fk" fetch="join" />
<property name="uscisFormClassificationTitle" type="string">
<column name="uscis_form_classification_title" length="1024" />
</property>
<property name="uscisFormClassificationName" type="string">
<column name="uscis_form_classification_name" length="1024" />
</property>
</class>
</hibernate-mapping>