Browse Source

询价主表增加询价企业名称,方便过滤搜索

hejq 7 years ago
parent
commit
d7d1ceb86b

+ 15 - 1
src/main/java/com/uas/ps/inquiry/model/PublicInquiry.java

@@ -40,6 +40,12 @@ public class PublicInquiry implements Serializable {
 	@Column(name = "in_enuu")
 	private Long enUU;
 
+	/**
+	 * 企业名称(方便搜索)
+	 */
+	@Column(name = "in_enname")
+	private String enName;
+
 	/**
 	 * 询价企业信息
 	 */
@@ -249,7 +255,15 @@ public class PublicInquiry implements Serializable {
 		this.enUU = enUU;
 	}
 
-    public Enterprise getEnterprise() {
+	public String getEnName() {
+		return enName;
+	}
+
+	public void setEnName(String enName) {
+		this.enName = enName;
+	}
+
+	public Enterprise getEnterprise() {
         return enterprise;
     }
 

+ 15 - 1
src/main/java/com/uas/ps/inquiry/model/PublicInquiryInfo.java

@@ -37,6 +37,12 @@ public class PublicInquiryInfo implements Serializable {
 	@Column(name = "in_enuu")
 	private Long enUU;
 
+	/**
+	 * 询价企业名称(方便搜索)
+	 */
+	@Column(name = "in_enname")
+	private String enName;
+
 	/**
 	 * 询价企业信息
 	 */
@@ -243,7 +249,15 @@ public class PublicInquiryInfo implements Serializable {
 		this.enUU = enUU;
 	}
 
-    public Enterprise getEnterprise() {
+	public String getEnName() {
+		return enName;
+	}
+
+	public void setEnName(String enName) {
+		this.enName = enName;
+	}
+
+	public Enterprise getEnterprise() {
         return enterprise;
     }
 

+ 14 - 0
src/main/java/com/uas/ps/inquiry/model/PurcInquiry.java

@@ -33,6 +33,12 @@ public class PurcInquiry implements Serializable {
     @Column(name = "in_enuu")
     private Long enUU;
 
+    /**
+     * 企业名称(方便搜索过滤)
+     */
+    @Column(name = "in_enname")
+    private String enName;
+
     /**
      * 询价单所属用户UU
      */
@@ -197,6 +203,14 @@ public class PurcInquiry implements Serializable {
         this.enUU = enUU;
     }
 
+    public String getEnName() {
+        return enName;
+    }
+
+    public void setEnName(String enName) {
+        this.enName = enName;
+    }
+
     public Long getRecorderUU() {
         return recorderUU;
     }

+ 14 - 0
src/main/java/com/uas/ps/inquiry/model/PurcInquiryInfo.java

@@ -37,6 +37,12 @@ public class PurcInquiryInfo implements Serializable {
     @Column(name = "in_enuu")
     private Long enUU;
 
+    /**
+     * 企业名称(方便搜索过滤)
+     */
+    @Column(name = "in_enname")
+    private String enName;
+
     /**
      * 询价企业
      */
@@ -208,6 +214,14 @@ public class PurcInquiryInfo implements Serializable {
         this.enUU = enUU;
     }
 
+    public String getEnName() {
+        return enName;
+    }
+
+    public void setEnName(String enName) {
+        this.enName = enName;
+    }
+
     public Enterprise getEnterprise() {
         return enterprise;
     }

+ 2 - 1
src/main/java/com/uas/ps/inquiry/service/InquiryService.java

@@ -5,6 +5,7 @@ import com.uas.ps.inquiry.entity.InquiryProductInfo;
 import com.uas.ps.inquiry.model.*;
 import com.uas.ps.inquiry.page.PageInfo;
 import com.uas.ps.inquiry.page.SearchFilter;
+import javassist.NotFoundException;
 import org.springframework.data.domain.Page;
 
 /**
@@ -29,7 +30,7 @@ public interface InquiryService {
      *
      * @param inquiry 询价信息
      */
-    PurcInquiry saveInquiry(PurcInquiry inquiry);
+    PurcInquiry saveInquiry(PurcInquiry inquiry) throws NotFoundException;
 
     /**
      * 通过报价明细id对供应商报价进行相关审核操作

+ 8 - 0
src/main/java/com/uas/ps/inquiry/service/impl/InquiryForSaleServiceImpl.java

@@ -202,6 +202,10 @@ public class InquiryForSaleServiceImpl implements InquiryForSaleService {
                     inquiry.setAttachs(attachs);
 
                 }
+                if (null == inquiry.getEnName()) {
+                    Enterprise e = enterpriseDao.findOne(inquiry.getEnUU());
+                    inquiry.setEnName(e.getEnName());
+                }
                 inquiry = inquiryDao.save(inquiry);
                 return SaveInquiryItems(inquiry, inquiryItem);
             } else {// 插入
@@ -338,6 +342,10 @@ public class InquiryForSaleServiceImpl implements InquiryForSaleService {
         // 先判断客户询价单是否存在这张单据
         if (CollectionUtils.isEmpty(saleInquiries)) {
             inquiry = new PublicInquiry(item.getInquiry());
+            if (null == inquiry.getEnName()) {
+                Enterprise e = enterpriseDao.findOne(inquiry.getEnUU());
+                inquiry.setEnName(e.getEnName());
+            }
             inquiry = inquiryDao.save(inquiry);
             inquiryItem.setVendUU(enuu);
             inquiryItem.setVendUserUU(useruu);

+ 16 - 13
src/main/java/com/uas/ps/inquiry/service/impl/InquiryServiceImpl.java

@@ -3,19 +3,9 @@ package com.uas.ps.inquiry.service.impl;
 import com.uas.ps.core.util.CollectionUtils;
 import com.uas.ps.entity.Product;
 import com.uas.ps.entity.Status;
-import com.uas.ps.inquiry.dao.InquiryRemindDao;
-import com.uas.ps.inquiry.dao.ProductDao;
-import com.uas.ps.inquiry.dao.PublicInquiryDao;
-import com.uas.ps.inquiry.dao.PublicInquiryItemDao;
-import com.uas.ps.inquiry.dao.PurcInquiryDao;
-import com.uas.ps.inquiry.dao.PurcInquiryItemDao;
-import com.uas.ps.inquiry.dao.PurcInquiryItemInfoDao;
+import com.uas.ps.inquiry.dao.*;
 import com.uas.ps.inquiry.entity.*;
-import com.uas.ps.inquiry.model.PublicInquiry;
-import com.uas.ps.inquiry.model.PublicInquiryItem;
-import com.uas.ps.inquiry.model.PurcInquiry;
-import com.uas.ps.inquiry.model.PurcInquiryItem;
-import com.uas.ps.inquiry.model.PurcInquiryItemInfo;
+import com.uas.ps.inquiry.model.*;
 import com.uas.ps.inquiry.page.PageInfo;
 import com.uas.ps.inquiry.page.SearchFilter;
 import com.uas.ps.inquiry.page.criteria.CriterionExpression;
@@ -31,6 +21,8 @@ import javax.persistence.criteria.CriteriaBuilder;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
+
+import javassist.NotFoundException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.jpa.domain.Specification;
@@ -73,6 +65,9 @@ public class InquiryServiceImpl implements InquiryService {
     @Autowired
     private JdbcTemplate jdbcTemplate;
 
+    @Autowired
+    private EnterpriseDao enterpriseDao;
+
     /**
      * 查询公共询价列表信息
      *
@@ -145,11 +140,19 @@ public class InquiryServiceImpl implements InquiryService {
      * @param currentInquiry 询价信息
      */
     @Override
-    public PurcInquiry saveInquiry(PurcInquiry currentInquiry) {
+    public PurcInquiry saveInquiry(PurcInquiry currentInquiry) throws NotFoundException {
         PurcInquiry existInquiry = purcInquiryDao.findByCodeAndEnUU(currentInquiry.getCode(), currentInquiry.getEnUU());
         if (null != existInquiry) {
             throw new IllegalOperatorException("单号重复");
         } else {
+            if (null != currentInquiry.getEnUU()) {
+                Enterprise e = enterpriseDao.findOne(currentInquiry.getEnUU());
+                if (null != e) {
+                    currentInquiry.setEnName(e.getEnName());
+                } else {
+                    throw new NotFoundException("询价企业不存在");
+                }
+            }
             PurcInquiry inquiry = purcInquiryDao.save(currentInquiry);
             if (!CollectionUtils.isEmpty(currentInquiry.getInquiryItems())) {
                 List<PurcInquiryItem> items = new ArrayList<PurcInquiryItem>();

+ 8 - 2
src/main/java/com/uas/ps/inquiry/service/impl/PublicInquiryServiceImpl.java

@@ -371,6 +371,10 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
                     PurcInquiry purcInquiry = inquiry.covert();
                     purcInquiry.setEnUU(enuu);
                     purcInquiry.setShip(address);
+                    Enterprise e = enterpriseDao.findOne(enuu);
+                    if (null != e) {
+                        purcInquiry.setEnName(e.getEnName());
+                    }
                     Set<PurcInquiryItem> purcInquiryItems = new HashSet<PurcInquiryItem>();
                     if (!CollectionUtils.isEmpty(inquiry.getInProducts())) {
                         for (BatchInProduct batch : inquiry.getInProducts()) {
@@ -820,7 +824,8 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
                 SimpleExpression code = new SimpleExpression("inquiry.code", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
                 SimpleExpression title = new SimpleExpression("prodTitle", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
                 SimpleExpression prodTitle = new SimpleExpression("product.title", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
-                SimpleExpression[] simpleExpressions = new SimpleExpression[]{cmpCode, brand, prodCmpCode, prodBrand, code, title, prodTitle};
+                SimpleExpression inquiryEnName = new SimpleExpression("inquiry.enName", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
+                SimpleExpression[] simpleExpressions = new SimpleExpression[]{cmpCode, brand, prodCmpCode, prodBrand, code, title, prodTitle, inquiryEnName};
                 LogicalExpression logical = new LogicalExpression(simpleExpressions, CriterionExpression.Operator.OR);
                 info.expression(logical);
             }
@@ -897,7 +902,8 @@ public class PublicInquiryServiceImpl implements PublicInquiryService {
                         SimpleExpression brand = new SimpleExpression("inbrand", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
                         SimpleExpression title = new SimpleExpression("prodTitle", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
                         SimpleExpression code = new SimpleExpression("inquiry.code", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
-                        SimpleExpression[] simpleExpressions = new SimpleExpression[]{cmpCode, brand, code, title};
+                        SimpleExpression enName = new SimpleExpression("inquiry.enName", filter.getKeyword(), CriterionExpression.Operator.LIKE, true);
+                        SimpleExpression[] simpleExpressions = new SimpleExpression[]{cmpCode, brand, code, title, enName};
                         LogicalExpression logical = new LogicalExpression(simpleExpressions, CriterionExpression.Operator.OR);
                         info.expression(logical);
                     }