Преглед изворни кода

模具询价单搜索方法

dongbw пре 9 година
родитељ
комит
df0d26be9e

+ 13 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/dao/PurchaseInquiryMouldDetailSimpleInfoDao.java

@@ -0,0 +1,13 @@
+package com.uas.search.console.b2b.dao;
+
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldDetailSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldSimpleInfo;
+
+public interface PurchaseInquiryMouldDetailSimpleInfoDao 
+		extends JpaRepository<PurchaseInquiryMouldDetailSimpleInfo, Long>,
+		JpaSpecificationExecutor<PurchaseInquiryMouldDetailSimpleInfo> {
+
+}

+ 13 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/dao/PurchaseInquiryMouldItemSimpleInfoDao.java

@@ -0,0 +1,13 @@
+package com.uas.search.console.b2b.dao;
+
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldItemSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldSimpleInfo;
+
+public interface PurchaseInquiryMouldItemSimpleInfoDao 
+		extends JpaRepository<PurchaseInquiryMouldItemSimpleInfo, Long>,
+		JpaSpecificationExecutor<PurchaseInquiryMouldItemSimpleInfo> {
+
+}

+ 12 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/dao/PurchaseInquiryMouldSimpleInfoDao.java

@@ -0,0 +1,12 @@
+package com.uas.search.console.b2b.dao;
+
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldSimpleInfo;
+
+public interface PurchaseInquiryMouldSimpleInfoDao 
+		extends JpaRepository<PurchaseInquiryMouldSimpleInfo, Long>,
+		JpaSpecificationExecutor<PurchaseInquiryMouldSimpleInfo> {
+
+}

+ 90 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/model/PurchaseInquiryMouldDetailSimpleInfo.java

@@ -0,0 +1,90 @@
+package com.uas.search.console.b2b.model;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+/**
+ * 模具物料明细
+ *
+ */
+@Table(name = "purc$inquirymoulddetail")
+@Entity
+public class PurchaseInquiryMouldDetailSimpleInfo {
+
+	@Id
+	@Column(name = "imd_id")
+	private Long id;
+
+	/**
+	 * 单号
+	 */
+	@Column(name = "imd_code")
+	private String code;
+
+	/**
+	 * 物料编号
+	 */
+	@Column(name = "imd_prodcode")
+	private String prodcode;
+
+	/**
+	 * 物料名称
+	 */
+	@Column(name = "imd_prodtitle")
+	private String prodtitle;
+
+	/**
+	 * 物料规格
+	 */
+	@Column(name = "imd_prodspec")
+	private String prodspec;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getProdcode() {
+		return prodcode;
+	}
+
+	public void setProdcode(String prodcode) {
+		this.prodcode = prodcode;
+	}
+
+	public String getProdtitle() {
+		return prodtitle;
+	}
+
+	public void setProdtitle(String prodtitle) {
+		this.prodtitle = prodtitle;
+	}
+
+	public String getProdspec() {
+		return prodspec;
+	}
+
+	public void setProdspec(String prodspec) {
+		this.prodspec = prodspec;
+	}
+
+	@Override
+	public String toString() {
+		return "PurchaseInquiryMouldSDetailSimpleInfo [id=" + id + ", code=" + code + ", prodcode=" + prodcode
+				+ ", prodtitle=" + prodtitle + ", prodspec=" + prodspec + "]";
+	}
+
+}

+ 78 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/model/PurchaseInquiryMouldItemSimpleInfo.java

@@ -0,0 +1,78 @@
+package com.uas.search.console.b2b.model;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+/**
+ * 模具询价明细
+ * 
+ */
+@Table(name = "purc$inquirymoulditems")
+@Entity
+public class PurchaseInquiryMouldItemSimpleInfo {
+
+	@Id
+	@Column(name = "imi_id")
+	private Long id;
+
+	/**
+	 * 单号
+	 */
+	@Column(name = "imi_code")
+	private String code;
+
+	/**
+	 * 模具编号
+	 */
+	@Column(name = "imi_pscode")
+	private String pscode;
+
+	/**
+	 * 模具名称
+	 */
+	@Column(name = "imi_psname")
+	private String psname;
+
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public String getPscode() {
+		return pscode;
+	}
+
+	public void setPscode(String pscode) {
+		this.pscode = pscode;
+	}
+
+	public String getPsname() {
+		return psname;
+	}
+
+	public void setPsname(String psname) {
+		this.psname = psname;
+	}
+
+
+	@Override
+	public String toString() {
+		return "PurchaseInquiryMouldItemSimpleInfo [id=" + id + ", code=" + code + ", pscode=" + pscode + ", psname="
+				+ psname + "]";
+	}
+
+}

+ 273 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/model/PurchaseInquiryMouldSimpleInfo.java

@@ -0,0 +1,273 @@
+package com.uas.search.console.b2b.model;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+import java.util.Set;
+
+import javax.persistence.CascadeType;
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.OneToMany;
+import javax.persistence.OneToOne;
+import javax.persistence.Table;
+
+/**
+ * 
+ * 模具询价单
+ *
+ */
+@Table(name = PurchaseInquiryMouldSimpleInfo.TABLE_NAME)
+@Entity
+public class PurchaseInquiryMouldSimpleInfo {
+
+	/**
+	 * 表名
+	 */
+	public static final String TABLE_NAME = "V$PURC$INQUIRY_MOULD";
+
+	/**
+	 * 各字段名
+	 */
+	public static final String ID_FIELD = "im_id";
+
+	public static final String CODE_FIELD = "im_code";
+
+	public static final String ENTERPRISE_FIELD = "im_enuu";
+
+	public static final String VEND_FIELD = "im_venduu";
+
+	public static final String DATE_FIELD = "im_date";
+
+	public static final String STATUS_FIELD = "im_status";
+
+	public static final String ADOPTSTATUS_FIELD = "im_adoptstatus";
+
+	public static final String SENDSTATUS_FIELD = "im_sendstatus";
+
+	public static final String OVERDUE_FIELD = "im_overdue";
+
+	public static final String VALID_FIELD = "im_valid";
+
+	public static final String ITEMS_FIELD = "imi_imid";
+
+	public static final String PRODDETAIL_FIELD = "imd_imid";
+
+	@Id
+	@Column(name = ID_FIELD)
+	// TODO
+	// 每个主表必须存在并且命名为id,否则com.uas.search.console.b2b.util.ClassAndTableNameUtils.getId(T)无法正常执行
+	// 因此也必须有ID_FIELD变量
+	private Long id;
+
+	/**
+	 * 单号
+	 */
+	@Column(name = CODE_FIELD)
+	private String code;
+
+	/**
+	 * 处理状态(已回复、未回复),全部回复后改为已回复
+	 */
+	@Column(name = STATUS_FIELD)
+	private Short status;
+
+	/**
+	 * 采纳状态
+	 */
+	@Column(name = ADOPTSTATUS_FIELD)
+	private Short adoptstatus;
+
+	/**
+	 * 上传状态
+	 */
+	@Column(name = SENDSTATUS_FIELD)
+	private Short sendstatus;
+
+	/**
+	 * 是否有效(作废)
+	 */
+	@Column(name = VALID_FIELD)
+	private Short valid;
+
+	/**
+	 * 是否过期
+	 */
+	@Column(name = OVERDUE_FIELD)
+	private Short overdue;
+
+	/**
+	 * 单据归属日期
+	 */
+	@Column(name = DATE_FIELD)
+	private Date date;
+
+	/**
+	 * 采购企业
+	 */
+	@OneToOne(cascade = { CascadeType.REFRESH })
+	@JoinColumn(name = ENTERPRISE_FIELD, insertable = false, updatable = false)
+	private EnterpriseSimpleInfo enterprise;
+
+	/**
+	 * 供应商
+	 */
+	@OneToOne
+	@JoinColumn(name = VEND_FIELD, insertable = false, updatable = false)
+	private EnterpriseSimpleInfo vend;
+
+	/**
+	 * 询价单明细
+	 */
+	@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER)
+	@JoinColumn(name = ITEMS_FIELD, updatable = false, insertable = false)
+	private Set<PurchaseInquiryMouldItemSimpleInfo> mouldItems;
+
+	/**
+	 * 询价单物料明细
+	 */
+	@OneToMany(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER)
+	@JoinColumn(name = PRODDETAIL_FIELD, updatable = false, insertable = false)
+	private Set<PurchaseInquiryMouldDetailSimpleInfo> mouldDetails;
+
+	public Long getId() {
+		return id;
+	}
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+	public String getCode() {
+		return code;
+	}
+
+	public void setCode(String code) {
+		this.code = code;
+	}
+
+	public Short getStatus() {
+		return status;
+	}
+
+	public void setStatus(Short status) {
+		this.status = status;
+	}
+
+	public Short getValid() {
+		return valid;
+	}
+
+	public void setValid(Short valid) {
+		this.valid = valid;
+	}
+
+	public Short getAdoptstatus() {
+		return adoptstatus;
+	}
+
+	public void setAdoptstatus(Short adoptstatus) {
+		this.adoptstatus = adoptstatus;
+	}
+
+	public Short getSendstatus() {
+		return sendstatus;
+	}
+
+	public void setSendstatus(Short sendstatus) {
+		this.sendstatus = sendstatus;
+	}
+
+	public Short getOverdue() {
+		return overdue;
+	}
+
+	public void setOverdue(Short overdue) {
+		this.overdue = overdue;
+	}
+
+	public Date getDate() {
+		return date;
+	}
+
+	public void setDate(Date date) {
+		this.date = date;
+	}
+
+	public EnterpriseSimpleInfo getEnterprise() {
+		return enterprise;
+	}
+
+	public void setEnterprise(EnterpriseSimpleInfo enterprise) {
+		this.enterprise = enterprise;
+	}
+
+	public EnterpriseSimpleInfo getVend() {
+		return vend;
+	}
+
+	public void setVend(EnterpriseSimpleInfo vend) {
+		this.vend = vend;
+	}
+
+	public Set<PurchaseInquiryMouldItemSimpleInfo> getMouldItems() {
+		return mouldItems;
+	}
+
+	public void setMouldItems(Set<PurchaseInquiryMouldItemSimpleInfo> mouldItems) {
+		this.mouldItems = mouldItems;
+	}
+
+	public Set<PurchaseInquiryMouldDetailSimpleInfo> getMouldDetails() {
+		return mouldDetails;
+	}
+
+	public void setMouldDetails(Set<PurchaseInquiryMouldDetailSimpleInfo> mouldDetails) {
+		this.mouldDetails = mouldDetails;
+	}
+
+	@Override
+	public String toString() {
+		return "PurchaseInquiryMouldSimpleInfo [id=" + id + ", code=" + code + ", status=" + status + ", adoptstatus="
+				+ adoptstatus + ", sendstatus=" + sendstatus + ", valid=" + valid + ", overdue=" + overdue + ", date="
+				+ date + ", enterprise=" + enterprise + ", vend=" + vend + ", mouldItems=" + mouldItems
+				+ ", mouldDetails=" + mouldDetails + "]";
+	}
+
+	/**
+	 * 获取所有可以搜索的字段列名(索引的field名)
+	 * 
+	 * @return 可以搜索的字段列名
+	 */
+	public static List<String> getKeywordFields() {
+		List<String> fields = new ArrayList<>();
+		fields.add(CODE_FIELD);
+		fields.add(ITEMS_FIELD);
+		fields.add(PRODDETAIL_FIELD);
+		fields.add(ENTERPRISE_FIELD);
+		return fields;
+	}
+
+	// TODO 每个主表必须重写equals方法
+	public boolean equals(Object otherObject) {
+		if (this == otherObject) {
+			return true;
+		}
+		if (otherObject == null || getClass() != otherObject.getClass()
+				|| !(otherObject instanceof PurchaseInquiryMouldSimpleInfo)) {
+			return false;
+		}
+		PurchaseInquiryMouldSimpleInfo other = (PurchaseInquiryMouldSimpleInfo) otherObject;
+		// 不对从表的数据进行比较
+		return Objects.equals(id, other.getId()) && Objects.equals(code, other.getCode())
+				&& Objects.equals(status, other.getStatus()) && Objects.equals(date, other.getDate())
+				&& Objects.equals(adoptstatus, other.getAdoptstatus())
+				&& Objects.equals(sendstatus, other.getSendstatus()) && Objects.equals(valid, other.getValid())
+				&& Objects.equals(overdue, other.getOverdue());
+	}
+
+}

+ 4 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/util/ClassAndTableNameUtils.java

@@ -27,6 +27,7 @@ import com.uas.search.console.b2b.dao.PurchaseBadoutSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseChangesSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseForecastSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseInquiryItemSimpleInfoDao;
+import com.uas.search.console.b2b.dao.PurchaseInquiryMouldSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseMrbSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseNoticeSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseOrderSimpleInfoDao;
@@ -49,6 +50,7 @@ import com.uas.search.console.b2b.model.PurchaseBadoutSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseChangesSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseForecastSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseInquiryItemSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseMrbSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseNoticeSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseOrderSimpleInfo;
@@ -102,6 +104,7 @@ public class ClassAndTableNameUtils {
 		entityClasses.add(SaleArcheckSimpleInfo.class);
 		entityClasses.add(SaleQuotationSimpleInfo.class);
 		entityClasses.add(PurchaseInquiryItemSimpleInfo.class);
+		entityClasses.add(PurchaseInquiryMouldSimpleInfo.class);
 		// TODO 其他表
 
 		// entityClasses和entityDaoClasses对于表的添加顺序必须一致
@@ -128,6 +131,7 @@ public class ClassAndTableNameUtils {
 		entityDaoClasses.add(SaleArcheckSimpleInfoDao.class);
 		entityDaoClasses.add(SaleQuotationSimpleInfoDao.class);
 		entityDaoClasses.add(PurchaseInquiryItemSimpleInfoDao.class);
+		entityDaoClasses.add(PurchaseInquiryMouldSimpleInfoDao.class);
 		// TODO 其他表的Dao
 	}
 

+ 65 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/util/DocumentToObjectUtils.java

@@ -35,6 +35,9 @@ import com.uas.search.console.b2b.model.PurchaseChangesSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseForecastItemSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseForecastSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseInquiryItemSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldDetailSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldItemSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseInquirySimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseMrbSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseNoticeSimpleInfo;
@@ -118,7 +121,10 @@ public class DocumentToObjectUtils {
 			return (T) toInquiryItem(document);
 		} else if (clazz == PurchaseProofingItemSimpleInfo.class) {
 			return (T) toPurchaseProofingItem(document);
+		} else if (clazz == PurchaseInquiryMouldSimpleInfo.class) {
+			return (T) toPurchaseInquiryMould(document);
 		}
+
 		// TODO 其他表
 		else {
 			throw new SearchException("不支持将Document转为类型:" + clazz.getName());
@@ -919,6 +925,65 @@ public class DocumentToObjectUtils {
 				PurchaseForecastItemSimpleInfo.class));
 		return purchaseForecast;
 	}
+	
+	
+	/**
+	 * 将Document转换成PurchaseInquiryMouldSimpleInfo对象
+	 * 
+	 * @param document
+	 * @return
+	 */
+	private static PurchaseInquiryMouldSimpleInfo toPurchaseInquiryMould(Document document) {
+		if (document == null) {
+			return null;
+		}
+		Table_name tableName = ClassAndTableNameUtils.toTableName(PurchaseInquiryMouldSimpleInfo.class);
+		PurchaseInquiryMouldSimpleInfo purchaseInquiryMould = new PurchaseInquiryMouldSimpleInfo();
+		purchaseInquiryMould.setId(Long.valueOf(
+				document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ID_FIELD))));
+		purchaseInquiryMould.setCode(
+				document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.CODE_FIELD)));
+		if (document.get(PurchaseInquiryMouldSimpleInfo.STATUS_FIELD) != null) {
+			purchaseInquiryMould.setStatus(Short.valueOf(
+					document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.STATUS_FIELD))));
+		}
+		if (document.get(PurchaseInquiryMouldSimpleInfo.ADOPTSTATUS_FIELD) != null) {
+			purchaseInquiryMould.setAdoptstatus(Short.valueOf(
+					document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ADOPTSTATUS_FIELD))));
+		}
+		if (document.get(PurchaseInquiryMouldSimpleInfo.SENDSTATUS_FIELD) != null) {
+			purchaseInquiryMould.setSendstatus(Short.valueOf(
+					document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.SENDSTATUS_FIELD))));
+		}
+		if (document.get(PurchaseInquiryMouldSimpleInfo.OVERDUE_FIELD) != null) {
+			purchaseInquiryMould.setOverdue(Short.valueOf(
+					document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.OVERDUE_FIELD))));
+		}
+		if (document.get(PurchaseInquiryMouldSimpleInfo.VALID_FIELD) != null) {
+			purchaseInquiryMould.setValid(Short.valueOf(document
+					.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.VALID_FIELD))));
+		}
+		String dateString = document
+				.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.DATE_FIELD));
+		if (!StringUtils.isEmpty(dateString)) {
+			purchaseInquiryMould.setDate(new Date(Long.valueOf(dateString)));
+		}
+		purchaseInquiryMould.setEnterprise(JSONObject.parseObject(
+				document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ENTERPRISE_FIELD)),
+				EnterpriseSimpleInfo.class));
+		purchaseInquiryMould.setVend(JSONObject.parseObject(
+				document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.VEND_FIELD)),
+				EnterpriseSimpleInfo.class));
+		purchaseInquiryMould.setMouldItems(toSet(
+				document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ITEMS_FIELD)),
+				PurchaseInquiryMouldItemSimpleInfo.class));
+		purchaseInquiryMould.setMouldDetails(toSet(
+				document.get(
+						ClassAndTableNameUtils.combineField(tableName,
+								PurchaseInquiryMouldSimpleInfo.PRODDETAIL_FIELD)),
+				PurchaseInquiryMouldDetailSimpleInfo.class));
+		return purchaseInquiryMould;
+	}
 
 	/**
 	 * 将Document转换成PurchaseInquiry

+ 79 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/util/ObjectToDocumentUtils.java

@@ -27,6 +27,7 @@ import com.uas.search.console.b2b.model.PurchaseBadoutSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseChangesSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseForecastSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseInquiryItemSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseInquiryMouldSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseMrbSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseNoticeSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseOrderSimpleInfo;
@@ -101,6 +102,8 @@ public class ObjectToDocumentUtils {
 			return toDocument((PurchaseApCheckSimpleInfo) object);
 		} else if (object instanceof PurchaseInquiryItemSimpleInfo) {
 			return toDocument((PurchaseInquiryItemSimpleInfo) object);
+		} else if (object instanceof PurchaseInquiryMouldSimpleInfo) {
+			return toDocument((PurchaseInquiryMouldSimpleInfo) object);
 		}
 		// TODO 其他表
 		else {
@@ -1296,4 +1299,80 @@ public class ObjectToDocumentUtils {
 				inquiryItem.getId()));
 		return document;
 	}
+
+	/**
+	 * 将PurchaseInquiryMouldSimpleInfo转换成Document
+	 * 
+	 * @param inquiryMould
+	 * @return
+	 */
+	public static Document toDocument(PurchaseInquiryMouldSimpleInfo inquiryMould) {
+		if (inquiryMould == null || inquiryMould.getId() == null || inquiryMould.getCode() == null
+				|| inquiryMould.getEnterprise() == null || inquiryMould.getEnterprise().getUu() == null
+				|| StringUtils.isEmpty(inquiryMould.getEnterprise().getEnName()) || inquiryMould.getVend() == null
+				|| inquiryMould.getVend().getUu() == null || StringUtils.isEmpty(inquiryMould.getVend().getEnName())) {
+			return null;
+		}
+		Table_name tableName = ClassAndTableNameUtils.toTableName(PurchaseInquiryMouldSimpleInfo.class);
+		Document document = new Document();
+		// 不能用LongField,否则后续实时更新索引时,方法updateDocument(new Term("", ""),
+		// doc)无法根据id进行更新
+		document.add(
+				new StringField(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ID_FIELD),
+						String.valueOf(inquiryMould.getId()), Store.YES));
+		document.add(
+				new TextField(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.CODE_FIELD),
+						String.valueOf(inquiryMould.getCode()), Store.YES));
+		if (null != inquiryMould.getDate()) {
+			document.add(new LongField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.DATE_FIELD),
+					Long.valueOf(inquiryMould.getDate().getTime()), Store.YES));
+		}
+		if (null != inquiryMould.getSendstatus()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.SENDSTATUS_FIELD),
+					String.valueOf(inquiryMould.getSendstatus()), Store.YES));
+		}
+		if (null != inquiryMould.getAdoptstatus()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ADOPTSTATUS_FIELD),
+					String.valueOf(inquiryMould.getAdoptstatus()), Store.YES));
+		}
+		if (null != inquiryMould.getStatus()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.STATUS_FIELD),
+					String.valueOf(inquiryMould.getStatus()), Store.YES));
+		}
+		if (null != inquiryMould.getOverdue()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.OVERDUE_FIELD),
+					String.valueOf(inquiryMould.getOverdue()), Store.YES));
+		}
+		if (null != inquiryMould.getValid()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.VALID_FIELD),
+					String.valueOf(inquiryMould.getValid()), Store.YES));
+		}
+		document.add(
+				new TextField(ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.VEND_FIELD),
+						JSON.toJSONString(inquiryMould.getVend()), Store.YES));
+		document.add(new TextField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ENTERPRISE_FIELD),
+						JSON.toJSONString(inquiryMould.getEnterprise()), Store.YES));
+		if (inquiryMould.getMouldItems() != null) {
+			document.add(new TextField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ITEMS_FIELD),
+					JSONObject.toJSONString(inquiryMould.getMouldItems()), Store.YES));
+		}
+		if (inquiryMould.getMouldDetails() != null) {
+			document.add(new TextField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.PRODDETAIL_FIELD),
+					JSONObject.toJSONString(inquiryMould.getMouldDetails()), Store.YES));
+		}
+		// 排序字段
+		document.add(new NumericDocValuesField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseInquiryMouldSimpleInfo.ID_FIELD),
+				inquiryMould.getId()));
+		return document;
+	}
 }