dongbw 9 лет назад
Родитель
Сommit
75008906e3

+ 5 - 1
search-api-b2b/src/main/java/com/uas/search/b2b/service/SearchService.java

@@ -156,7 +156,11 @@ public interface SearchService {
 		/**
 		 * 器件信息表
 		 */
-		PRODUCT$COMPONENT("PRODUCT$COMPONENT");
+		PRODUCT$COMPONENT("PRODUCT$COMPONENT"),
+		/**
+		 * 器件信息表
+		 */
+		PURC$TENDER("PURC$TENDER");
 		// TODO
 
 		private Table_name(String phrase) {

+ 11 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/dao/PurchaseTenderItemSimpleInfoDao.java

@@ -0,0 +1,11 @@
+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.PurchaseTenderItemSimpleInfo;
+
+public interface PurchaseTenderItemSimpleInfoDao
+		extends JpaRepository<PurchaseTenderItemSimpleInfo, Long>, JpaSpecificationExecutor<PurchaseTenderItemSimpleInfo> {
+
+}

+ 11 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/dao/PurchaseTenderSimpleInfoDao.java

@@ -0,0 +1,11 @@
+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.PurchaseTenderSimpleInfo;
+
+public interface PurchaseTenderSimpleInfoDao
+		extends JpaRepository<PurchaseTenderSimpleInfo, Long>, JpaSpecificationExecutor<PurchaseTenderSimpleInfo> {
+
+}

+ 135 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/model/PurchaseTenderItemSimpleInfo.java

@@ -0,0 +1,135 @@
+package com.uas.search.console.b2b.model;
+
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
+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 = "purc$tenderitem")
+@Entity
+public class PurchaseTenderItemSimpleInfo {
+
+	@Id
+	@Column(name = "pti_id")
+	private Long id;
+
+	/**
+	 * 税率
+	 */
+	@Column(name = "pti_taxrate")
+	private String taxrate;
+
+	/**
+	 * 价格
+	 */
+	@Column(name = "pti_price")
+	private String price;
+
+	/**
+	 * 说明
+	 */
+	@Column(name = "pti_description")
+	private String description;
+
+	/**
+	 * 应用状态
+	 */
+	@Column(name = "pti_appalystatus")
+	private String appalyStatus;
+	
+	/**
+	 * 供应商信息
+	 */
+	@OneToOne(cascade = { CascadeType.REFRESH })
+	@JoinColumn(name = "pti_venduu", insertable = false, updatable = false)
+	private EnterpriseSimpleInfo vend;
+
+	
+	public Long getId() {
+		return id;
+	}
+
+
+	public void setId(Long id) {
+		this.id = id;
+	}
+
+
+	public String getTaxrate() {
+		return taxrate;
+	}
+
+
+	public void setTaxrate(String taxrate) {
+		this.taxrate = taxrate;
+	}
+
+
+	public String getPrice() {
+		return price;
+	}
+
+
+	public void setPrice(String price) {
+		this.price = price;
+	}
+
+
+	public String getDescription() {
+		return description;
+	}
+
+
+	public void setDescription(String description) {
+		this.description = description;
+	}
+
+
+	public String getAppalyStatus() {
+		return appalyStatus;
+	}
+
+
+	public void setAppalyStatus(String appalyStatus) {
+		this.appalyStatus = appalyStatus;
+	}
+
+
+	public EnterpriseSimpleInfo getVend() {
+		return vend;
+	}
+
+
+	public void setVend(EnterpriseSimpleInfo vend) {
+		this.vend = vend;
+	}
+
+
+	@Override
+	public String toString() {
+		return "PurchaseTenderItemSimpleInfo [id=" + id + ", taxrate=" + taxrate + ", price=" + price + ", description="
+				+ description + ", appalyStatus=" + appalyStatus + ", vend=" + vend + "]";
+	}
+
+
+	
+
+}
+
+

+ 374 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/model/PurchaseTenderSimpleInfo.java

@@ -0,0 +1,374 @@
+package com.uas.search.console.b2b.model;
+
+import java.util.ArrayList;
+import java.util.Calendar;
+import java.util.Date;
+import java.util.List;
+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 = PurchaseTenderSimpleInfo.TABLE_NAME)
+@Entity
+public class PurchaseTenderSimpleInfo {
+
+	/**
+	 * 表名
+	 */
+	public static final String TABLE_NAME = "PURC$TENDER";
+
+	/**
+	 * 各字段名
+	 */
+	public static final String ID_FIELD = "pt_id";
+
+	public static final String CODE_FIELD = "pt_code";
+
+	public static final String ENTERPRISE_FIELD = "pt_enuu";
+
+	public static final String TITLE_FIELD = "pt_title";
+
+	public static final String DATE_FIELD = "pt_date";
+
+	public static final String ENDDATE_FIELD = "pt_enddate";
+	
+	public static final String PUBLISHDATE_FIELD = "pt_publishdate";
+	
+	public static final String USER_FIELD = "pt_user";
+	
+	public static final String USERTEL_FIELD = "pt_usertel";
+
+	public static final String STATUS_FIELD = "pt_status";
+
+	public static final String PRODTITLE_FIELD = "pt_prodtitle";
+
+	public static final String PRODCODE_FIELD = "pt_prodcode";
+
+//	public static final String OVERDUE_FIELD = "pt_overdue";
+
+	public static final String SHIPADDRESS_FIELD = "pt_shipaddress";
+
+	public static final String CURRENCY_FIELD = "pt_currency";
+	
+	public static final String PAYMENT_FIELD = "pt_payment";
+	
+	public static final String CERTIFICATE_FIELD = "pt_certificate";
+	
+	public static final String ISPUBLISH_FIELD = "pt_ispublish";
+	
+	public static final String IFOPEN_FIELD = "pt_ifopen";
+
+	public static final String ITEMS_FIELD = "pti_ptid";
+	
+	@Id
+	@Column(name = ID_FIELD)
+	private Long id;
+
+	/**
+	 * 单号
+	 */
+	@Column(name = CODE_FIELD)
+	private String code;
+
+	/**
+	 * 单据状态
+	 */
+	@Column(name = STATUS_FIELD)
+	private String status;
+
+	/**
+	 * 录入日期
+	 */
+	@Column(name = DATE_FIELD)
+	private Date date;
+
+	/**
+	 * 投标截止日期
+	 */
+	@Column(name = ENDDATE_FIELD)
+	private Date endDate;
+
+	/**
+	 * 公布结果日期
+	 */
+	@Column(name = PUBLISHDATE_FIELD)
+	private Date publishDate;
+
+	/**
+	 * 付款方式
+	 */
+	@Column(name = PAYMENT_FIELD)
+	private String payment;
+
+	/**
+	 * 送货地址
+	 */
+	@Column(name = SHIPADDRESS_FIELD)
+	private String shipAddress;
+
+	/**
+	 * 招标标题
+	 */
+	@Column(name = TITLE_FIELD)
+	private String title;
+	
+	/**
+	 * 用户
+	 */
+	@Column(name = USER_FIELD)
+	private String user;
+	
+	/**
+	 * 用户电话
+	 */
+	@Column(name = USERTEL_FIELD)
+	private String userTel;
+	
+	/**
+	 * 物料名称
+	 */
+	@Column(name = PRODTITLE_FIELD)
+	private String prodTitle;
+	
+	/**
+	 * 物料号
+	 */
+	@Column(name = PRODCODE_FIELD)
+	private String prodCode;
+	
+	/**
+	 * 币别
+	 */
+	@Column(name = CURRENCY_FIELD)
+	private String currency;
+	
+	/**
+	 * 证照要求
+	 */
+	@Column(name = CERTIFICATE_FIELD)
+	private String certificate;
+	
+	/**
+	 * 是否开放(1为开放,0为针对专门供应商)
+	 */
+	@Column(name = IFOPEN_FIELD)
+	private Short ifOpen;
+	
+	/**
+	 * 是否发布(1为发布,0为保存)
+	 */
+	@Column(name = ISPUBLISH_FIELD)
+	private Short isPublish;
+
+	/**
+	 * 企业信息
+	 */
+	@OneToOne(cascade = { CascadeType.REFRESH })
+	@JoinColumn(name = ENTERPRISE_FIELD, insertable = false, updatable = false)
+	private EnterpriseSimpleInfo enterprise;
+
+	/**
+	 * 招标明细
+	 */
+	@OneToMany(cascade = { CascadeType.ALL}, fetch = FetchType.EAGER)
+	@JoinColumn(name = ITEMS_FIELD, updatable = false, insertable = false)
+	private Set<PurchaseTenderItemSimpleInfo> tenderItems;
+
+
+	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 getStatus() {
+		return status;
+	}
+
+	public void setStatus(String status) {
+		this.status = status;
+	}
+
+	public void setIfOpen(Short ifOpen) {
+		this.ifOpen = ifOpen;
+	}
+
+	public void setIsPublish(Short isPublish) {
+		this.isPublish = isPublish;
+	}
+
+	public Date getDate() {
+		return date;
+	}
+
+	public void setDate(Date date) {
+		this.date = date;
+	}
+
+	public Date getEndDate() {
+		return endDate;
+	}
+
+	public void setEndDate(Date endDate) {
+		this.endDate = endDate;
+	}
+
+	public Date getPublishDate() {
+		return publishDate;
+	}
+
+	public void setPublishDate(Date publishDate) {
+		this.publishDate = publishDate;
+	}
+
+	public String getPayment() {
+		return payment;
+	}
+
+	public void setPayment(String payment) {
+		this.payment = payment;
+	}
+
+	public String getShipAddress() {
+		return shipAddress;
+	}
+
+	public void setShipAddress(String shipAddress) {
+		this.shipAddress = shipAddress;
+	}
+
+	public String getTitle() {
+		return title;
+	}
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+	public String getUser() {
+		return user;
+	}
+
+	public void setUser(String user) {
+		this.user = user;
+	}
+
+	public String getUserTel() {
+		return userTel;
+	}
+
+	public void setUserTel(String userTel) {
+		this.userTel = userTel;
+	}
+
+	public String getProdTitle() {
+		return prodTitle;
+	}
+
+	public void setProdTitle(String prodTitle) {
+		this.prodTitle = prodTitle;
+	}
+
+	public String getProdCode() {
+		return prodCode;
+	}
+
+	public void setProdCode(String prodCode) {
+		this.prodCode = prodCode;
+	}
+
+	public String getCurrency() {
+		return currency;
+	}
+
+	public void setCurrency(String currency) {
+		this.currency = currency;
+	}
+
+	public String getCertificate() {
+		return certificate;
+	}
+
+	public void setCertificate(String certificate) {
+		this.certificate = certificate;
+	}
+
+	public Short getIfOpen() {
+		return ifOpen;
+	}
+
+	public Short getIsPublish() {
+		return isPublish;
+	}
+
+	public EnterpriseSimpleInfo getEnterprise() {
+		return enterprise;
+	}
+
+	public void setEnterprise(EnterpriseSimpleInfo enterprise) {
+		this.enterprise = enterprise;
+	}
+
+	public Set<PurchaseTenderItemSimpleInfo> getTenderItems() {
+		return tenderItems;
+	}
+
+	public void setTenderItems(Set<PurchaseTenderItemSimpleInfo> tenderItems) {
+		this.tenderItems = tenderItems;
+	}
+
+
+	@Override
+	public String toString() {
+		return "PurchaseTenderSimpleInfo [id=" + id + ", code=" + code + ", status=" + status + ", date=" + date
+				+ ", endDate=" + endDate + ", publishDate=" + publishDate + ", payment=" + payment + ", shipAddress="
+				+ shipAddress + ", title=" + title + ", user=" + user + ", userTel=" + userTel + ", prodTitle="
+				+ prodTitle + ", prodCode=" + prodCode + ", currency=" + currency + ", certificate=" + certificate
+				+ ", ifOpen=" + ifOpen + ", isPublish=" + isPublish + ", enterprise=" + enterprise + ", tenderItems="
+				+ tenderItems + "]";
+	}
+
+	/**
+	 * 获取所有可以搜索的字段列名(索引的field名)
+	 * 
+	 * @return 可以搜索的字段列名
+	 */
+	public static List<String> getKeywordFields() {
+		List<String> fields = new ArrayList<>();
+		fields.add(CODE_FIELD);
+		fields.add(TITLE_FIELD);
+		fields.add(USER_FIELD);
+		fields.add(PRODCODE_FIELD);
+		fields.add(PRODTITLE_FIELD);
+		fields.add(SHIPADDRESS_FIELD);
+		fields.add(PAYMENT_FIELD);
+		fields.add(ITEMS_FIELD);
+		fields.add(ENTERPRISE_FIELD);
+		return fields;
+	}
+
+}

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

@@ -37,6 +37,7 @@ import com.uas.search.console.b2b.dao.PurchaseNoticeSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseOrderSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseProofingItemSimpleInfoDao;
 import com.uas.search.console.b2b.dao.PurchaseReturnSimpleInfoDao;
+import com.uas.search.console.b2b.dao.PurchaseTenderSimpleInfoDao;
 import com.uas.search.console.b2b.dao.SaleArcheckSimpleInfoDao;
 import com.uas.search.console.b2b.dao.SaleQuotationSimpleInfoDao;
 import com.uas.search.console.b2b.dao.SaleSendSimpleInfoDao;
@@ -63,6 +64,7 @@ import com.uas.search.console.b2b.model.PurchaseNoticeSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseOrderSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseProofingItemSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseReturnSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseTenderSimpleInfo;
 import com.uas.search.console.b2b.model.SaleArcheckSimpleInfo;
 import com.uas.search.console.b2b.model.SaleQuotationSimpleInfo;
 import com.uas.search.console.b2b.model.SaleSendSimpleInfo;
@@ -115,6 +117,7 @@ public class ClassAndTableNameUtils {
 		entityClasses.add(ProdSimpleInfo.class);
 		entityClasses.add(EnterpriseSearchSimpleInfo.class);
 		entityClasses.add(ProductComponentSimpleInfo.class);
+		entityClasses.add(PurchaseTenderSimpleInfo.class);
 		// TODO 其他表
 
 		// entityClasses和entityDaoClasses对于表的添加顺序必须一致
@@ -145,6 +148,7 @@ public class ClassAndTableNameUtils {
 		entityDaoClasses.add(ProdSimpleInfoDao.class);
 		entityDaoClasses.add(EnterpriseSearchSimpleInfoDao.class);
 		entityDaoClasses.add(ProductComponentSimpleInfoDao.class);
+		entityDaoClasses.add(PurchaseTenderSimpleInfoDao.class);
 		// TODO 其他表的Dao
 	}
 

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

@@ -51,6 +51,8 @@ import com.uas.search.console.b2b.model.PurchaseProofingItemSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseProofingSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseReturnItemSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseReturnSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseTenderItemSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseTenderSimpleInfo;
 import com.uas.search.console.b2b.model.SaleARCheckItemSimpleInfo;
 import com.uas.search.console.b2b.model.SaleArcheckSimpleInfo;
 import com.uas.search.console.b2b.model.SaleQuotationItemSimpleInfo;
@@ -132,6 +134,8 @@ public class DocumentToObjectUtils {
 			return (T) toEnterprise(document);
 		} else if (clazz == ProductComponentSimpleInfo.class) {
 			return (T) toProdComponent(document);
+		} else if (clazz == PurchaseTenderSimpleInfo.class) {
+			return (T) toPurchaseTenderSimpleInfo(document);
 		}
 
 		// TODO 其他表
@@ -1255,6 +1259,114 @@ public class DocumentToObjectUtils {
 		}
 		return enterprise;
 	}
+	
+	/**
+	 * 将Document转换成PurchaseTenderSimpleInfo对象
+	 * 
+	 * @param document
+	 * @return
+	 */
+	private static PurchaseTenderSimpleInfo toPurchaseTenderSimpleInfo(Document document) {
+		if (document == null) {
+			return null;
+		}
+		Table_name tableName = ClassAndTableNameUtils.toTableName(PurchaseTenderSimpleInfo.class);
+		PurchaseTenderSimpleInfo purchasetender = new PurchaseTenderSimpleInfo();
+		purchasetender.setId(Long.valueOf(
+				document.get(ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ID_FIELD))));
+		purchasetender.setCode(document
+				.get(ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.CODE_FIELD)));
+		String title = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.TITLE_FIELD));
+		if (title != null) {
+			purchasetender.setTitle(title);
+		}
+		String status = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.STATUS_FIELD));
+		if (title != null) {
+			purchasetender.setStatus(status);
+		}
+		String date = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.DATE_FIELD));
+		if (title != null) {
+			purchasetender.setDate(new Date(Long.valueOf(date)));
+		}
+		String endDate = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.ENDDATE_FIELD));
+		if (title != null) {
+			purchasetender.setEndDate(new Date(Long.valueOf(endDate)));
+		}
+		String publishDate = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.PUBLISHDATE_FIELD));
+		if (title != null) {
+			purchasetender.setPublishDate(new Date(Long.valueOf(publishDate)));
+		}
+		String payment = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.PAYMENT_FIELD));
+		if (payment != null) {
+			purchasetender.setPayment(payment);
+		}
+		String shipAddress = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.SHIPADDRESS_FIELD));
+		if (shipAddress != null) {
+			purchasetender.setShipAddress(shipAddress);
+		}
+		String user = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.USER_FIELD));
+		if (user != null) {
+			purchasetender.setUser(user);
+		}
+		String userTel = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.USERTEL_FIELD));
+		if (userTel != null) {
+			purchasetender.setUserTel(userTel);
+		}
+		String prodTitle = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.PRODTITLE_FIELD));
+		if (prodTitle != null) {
+			purchasetender.setProdTitle(prodTitle);
+		}
+		String prodCode = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.PRODCODE_FIELD));
+		if (prodCode != null) {
+			purchasetender.setProdCode(prodCode);
+		}
+		String currency = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.CURRENCY_FIELD));
+		if (currency != null) {
+			purchasetender.setCurrency(currency);
+		}
+		String certificate = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.CERTIFICATE_FIELD));
+		if (prodCode != null) {
+			purchasetender.setCertificate(certificate);
+		}
+		String isPublish = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.ISPUBLISH_FIELD));
+		if (isPublish != null) {
+			purchasetender.setIsPublish(Short.valueOf(isPublish));
+		}
+		String ifOpen = document.get(ClassAndTableNameUtils.combineField(tableName,
+				PurchaseTenderSimpleInfo.IFOPEN_FIELD));
+		if (ifOpen != null) {
+			purchasetender.setIsPublish(Short.valueOf(ifOpen));
+		}
+		purchasetender
+				.setEnterprise(
+						JSONObject
+								.parseObject(
+										document.get(ClassAndTableNameUtils.combineField(tableName,
+												PurchaseTenderSimpleInfo.ENTERPRISE_FIELD)),
+						EnterpriseSimpleInfo.class));
+		if (null != document
+				.get(ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ITEMS_FIELD))) {
+			purchasetender.setTenderItems(toSet(
+					document.get(
+							ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ITEMS_FIELD)),
+					PurchaseTenderItemSimpleInfo.class));
+		}
+		return purchasetender;
+	}
 
 	/**
 	 * 将json字符串转为Set<T>对象

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

@@ -38,6 +38,7 @@ import com.uas.search.console.b2b.model.PurchaseNoticeSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseOrderSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseProofingItemSimpleInfo;
 import com.uas.search.console.b2b.model.PurchaseReturnSimpleInfo;
+import com.uas.search.console.b2b.model.PurchaseTenderSimpleInfo;
 import com.uas.search.console.b2b.model.SaleArcheckSimpleInfo;
 import com.uas.search.console.b2b.model.SaleQuotationSimpleInfo;
 import com.uas.search.console.b2b.model.SaleSendSimpleInfo;
@@ -113,6 +114,8 @@ public class ObjectToDocumentUtils {
 			return toDocument((EnterpriseSearchSimpleInfo) object);
 		} else if (object instanceof ProductComponentSimpleInfo) {
 			return toDocument((ProductComponentSimpleInfo) object);
+		} else if (object instanceof PurchaseTenderSimpleInfo) {
+			return toDocument((PurchaseTenderSimpleInfo) object);
 		}
 		// TODO 其他表
 		else {
@@ -1548,4 +1551,109 @@ public class ObjectToDocumentUtils {
 						String.valueOf(prodComp.getKindid()), Store.YES));
 		return document;
 	}
+	
+	/**
+	 * 将PurcahseTenderSimplInfo转换为Document
+	 * 
+	 * @param tender
+	 * @return
+	 */
+	public static Document toDocument(PurchaseTenderSimpleInfo tender) {
+		System.out.println("tender--" + JSON.toJSONString(tender));
+		if (tender == null || tender.getId() == null || tender.getCode() == null ||tender.getProdCode() == null
+				|| tender.getProdTitle() == null || tender.getStatus() == null || tender.getIfOpen() == null  || tender.getIsPublish() == null || CollectionUtils.isEmpty(tender.getTenderItems())) {
+			return null;
+		}
+		Table_name tableName = ClassAndTableNameUtils.toTableName(PurchaseTenderSimpleInfo.class);
+		Document document = new Document();
+		// 不能用LongField,否则后续实时更新索引时,方法updateDocument(new Term("", ""),
+		// doc)无法根据id进行更新
+		document.add(
+				new StringField(ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ID_FIELD),
+						String.valueOf(tender.getId()), Store.YES));
+		document.add(
+				new TextField(ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.CODE_FIELD),
+						tender.getCode(), Store.YES));
+		document.add(new StringField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.CURRENCY_FIELD),
+				tender.getCurrency(), Store.YES));
+		document.add(new StringField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.STATUS_FIELD),
+				tender.getStatus(), Store.YES));
+		document.add(new StringField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ISPUBLISH_FIELD),
+				String.valueOf(tender.getIsPublish()), Store.YES));
+		document.add(new StringField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.IFOPEN_FIELD),
+				String.valueOf(tender.getIfOpen()), Store.YES));
+		if (null != tender.getDate()) {
+			document.add(new LongField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.DATE_FIELD),
+					Long.valueOf(tender.getDate().getTime()), Store.YES));
+		}
+		if (null != tender.getEndDate()) {
+			document.add(new LongField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ENDDATE_FIELD),
+					Long.valueOf(tender.getEndDate().getTime()), Store.YES));
+		}
+		if (null != tender.getPublishDate()) {
+			document.add(new LongField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.PUBLISHDATE_FIELD),
+					Long.valueOf(tender.getPublishDate().getTime()), Store.YES));
+		}
+		if (null != tender.getCertificate()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.CERTIFICATE_FIELD),
+					String.valueOf(tender.getCertificate()), Store.YES));
+		}
+		if (null != tender.getUser()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.USER_FIELD),
+					tender.getUser(), Store.YES));
+		}
+		if (null != tender.getUserTel()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.USERTEL_FIELD),
+					tender.getUserTel(), Store.YES));
+		}
+		if (null != tender.getProdCode()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.PRODCODE_FIELD),
+					tender.getProdCode(), Store.YES));
+		}
+		if (null != tender.getProdTitle()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.PRODTITLE_FIELD),
+					tender.getProdTitle(), Store.YES));
+		}
+		if (null != tender.getTitle()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.TITLE_FIELD),
+					tender.getTitle(), Store.YES));
+		}
+		if (null != tender.getShipAddress()) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.SHIPADDRESS_FIELD),
+					tender.getShipAddress(), Store.YES));
+		}
+		if (null != tender.getPayment()) {
+			document.add(
+					new TextField(ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.PAYMENT_FIELD),
+							tender.getPayment(), Store.YES));
+		}
+		document.add(new StringField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ENTERPRISE_FIELD),
+						JSON.toJSONString(tender.getEnterprise()), Store.YES));
+		if (tender.getTenderItems() != null) {
+			document.add(new StringField(
+					ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ITEMS_FIELD),
+					JSONObject.toJSONString(tender.getTenderItems()), Store.YES));
+		}
+		
+		// 排序字段
+		document.add(new NumericDocValuesField(
+				ClassAndTableNameUtils.combineField(tableName, PurchaseTenderSimpleInfo.ID_FIELD),
+				tender.getId()));
+		return document;
+	}
 }