Просмотр исходного кода

Merge remote-tracking branch 'origin/master' into hotfix-1284-wangmh

wangmh 7 лет назад
Родитель
Сommit
61cbeb652e
24 измененных файлов с 146 добавлено и 138 удалено
  1. 2 6
      src/main/java/com/uas/platform/b2b/controller/ProductController.java
  2. 22 0
      src/main/java/com/uas/platform/b2b/core/util/SqlDateFormdateUtils.java
  3. 15 4
      src/main/java/com/uas/platform/b2b/dao/PurchaseOrderDao.java
  4. 15 25
      src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseAPBillServiceImpl.java
  5. 6 3
      src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseNotifyServiceImpl.java
  6. 28 15
      src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseProdInOutServiceImpl.java
  7. 2 2
      src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseServiceImpl.java
  8. 16 2
      src/main/java/com/uas/platform/b2b/model/ApbillAdjustment.java
  9. 0 55
      src/main/java/com/uas/platform/b2b/model/ApcheckField.java
  10. 1 1
      src/main/java/com/uas/platform/b2b/model/PurchaseAcceptItem.java
  11. 1 1
      src/main/java/com/uas/platform/b2b/model/PurchaseBadInItem.java
  12. 1 1
      src/main/java/com/uas/platform/b2b/model/PurchaseBadOutItem.java
  13. 1 1
      src/main/java/com/uas/platform/b2b/model/PurchaseMRB.java
  14. 1 1
      src/main/java/com/uas/platform/b2b/model/PurchaseNotice.java
  15. 1 1
      src/main/java/com/uas/platform/b2b/model/PurchaseReturnItem.java
  16. 1 1
      src/main/java/com/uas/platform/b2b/model/SaleSendItem.java
  17. 1 1
      src/main/java/com/uas/platform/b2b/model/SaleSendItemAll.java
  18. 0 1
      src/main/java/com/uas/platform/b2b/search/SearchServiceImpl.java
  19. 10 6
      src/main/java/com/uas/platform/b2b/service/impl/PurcOrderChangeServiceImpl.java
  20. 3 1
      src/main/java/com/uas/platform/b2b/service/impl/PurchaseOrderChangeServiceImpl.java
  21. 10 7
      src/main/java/com/uas/platform/b2b/task/ErrorLogTask.java
  22. 4 2
      src/main/java/com/uas/platform/b2b/task/SendNoticeTask.java
  23. 1 1
      src/main/resources/test/sys.properties
  24. 4 0
      src/main/webapp/resources/tpl/index/sale/vendorPerformanceAssess_detail.html

+ 2 - 6
src/main/java/com/uas/platform/b2b/controller/ProductController.java

@@ -60,9 +60,7 @@ public class ProductController {
 		if (custUU != null && custUU != 0) {
 			pageParams.getFilters().put("pr_enuu", custUU);
 			pageParams.getFilters().put("pr_ispurchase", Constant.YES);
-			HashMap<String, Object> map = new HashMap<>();
-			map.put("pr_b2cenabled", Constant.YES);
-			pageParams.setNotEqualFilters(map);
+			pageParams.getFilters().put("pr_b2cenabled", Constant.YES);
 			List<Sort> sortList = new ArrayList<>();
 			sortList.add(new Sort("pr_id", false, Type.INT, new Long(1)));
 			pageParams.getFilters().put(SearchConstants.SORT_KEY, sortList);
@@ -87,9 +85,7 @@ public class ProductController {
 		if (vendUU != null && vendUU != 0) {
 			pageParams.getFilters().put("pr_enuu", vendUU);
 			pageParams.getFilters().put("pr_issale", Constant.YES);
-			HashMap<String, Object> map = new HashMap<>();
-			map.put("pr_b2cenabled", Constant.YES);
-			pageParams.setNotEqualFilters(map);
+			pageParams.getFilters().put("pr_b2cenabled", Constant.YES);
 			List<Sort> sortList = new ArrayList<>();
 			sortList.add(new Sort("pr_id", false, Type.INT, new Long(1)));
 			pageParams.getFilters().put(SearchConstants.SORT_KEY, sortList);

+ 22 - 0
src/main/java/com/uas/platform/b2b/core/util/SqlDateFormdateUtils.java

@@ -0,0 +1,22 @@
+package com.uas.platform.b2b.core.util;
+
+import java.text.SimpleDateFormat;
+
+/**
+ * 数据库时间格式
+ *
+ * @author hejq
+ * @date 2018-08-07 11:39
+ */
+public class SqlDateFormdateUtils {
+
+    /**
+     * 数据库 date 字段格式
+     */
+    public static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-dd");
+
+    /**
+     * 数据库 datetime 字段格式
+     */
+    public static final SimpleDateFormat DATETIME_FORMAT = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+}

+ 15 - 4
src/main/java/com/uas/platform/b2b/dao/PurchaseOrderDao.java

@@ -20,13 +20,24 @@ import java.util.List;
 public interface PurchaseOrderDao extends JpaSpecificationExecutor<PurchaseOrder>, JpaRepository<PurchaseOrder, Long> {
 
 	/**
+     * 通过企业UU和采购单单号查询采购单
+     *
 	 * @param enUU
 	 *            买方企业ID
 	 * @param code
 	 *            订单号
 	 * @return
 	 */
-	public List<PurchaseOrder> findByEnUUAndCode(long enUU, String code);
+	List<PurchaseOrder> findByEnUUAndCode(long enUU, String code);
+
+    /**
+     * 通过企业UU和采购单单号查询数量
+     *
+     * @param enUU 企业UU
+     * @param code 采购单单号
+     * @return
+     */
+	Integer countByEnUUAndCode(long enUU, String code);
 
 	/**
 	 * 按采购单的供应商企业ID和采购单状态来统计条数
@@ -36,16 +47,16 @@ public interface PurchaseOrderDao extends JpaSpecificationExecutor<PurchaseOrder
 	 * @return
 	 */
 	@Query("select count(o) from PurchaseOrder o where o.vendUU = :vendUU and o.status = :status")
-	public int getCountByVendUUAndStatus(@Param("vendUU") long vendUU, @Param("status") short status);
+	int getCountByVendUUAndStatus(@Param("vendUU") long vendUU, @Param("status") short status);
 
 	/**
 	 * 获得每种单据状态的未读数量
 	 *
 	 * @param ids 未读单据id
-	 * @return 返回各个状态的数量,Object数据第一个值为数量,第二个值为砖头
+	 * @return 返回各个状态的数量,Object数据第一个值为数量,第二个值为状态
 	 */
 	@Query("select count(p), p.status from PurchaseOrderAll p where p.id in :ids and (p.end = 0 or p.end is null) and (p.status = 201 or p.status = 200) group by p.status")
-	public List<Object[]> getUnreadCountEveryStatus(@Param("ids") List<Long> ids);
+	List<Object[]> getUnreadCountEveryStatus(@Param("ids") List<Long> ids);
 
 	/**
 	 * 筛选出已回复单据的id号

+ 15 - 25
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseAPBillServiceImpl.java

@@ -81,37 +81,27 @@ public class PurchaseAPBillServiceImpl implements PurchaseAPBillService {
 		List<ApbillAdjustment> adjusts = new ArrayList<ApbillAdjustment>();
 		if (!CollectionUtils.isEmpty(apBills)) {
 			Long enUU = SystemSession.getUser().getEnterprise().getUu();
+			// 获取物料编号集合
+			Set<String> productCodes = CollectionUtil.getProductCodeCollection(apBills);
+            Map<String, ProductInfo> products = null;
+            if (!CollectionUtils.isEmpty(productCodes)) {
+                products = ProductUtils.findByEnUUAndCodes(enUU, productCodes);
+            }
 			for (PurchaseAPBill apBill : apBills) {
 				if (!CollectionUtils.isEmpty(apBill.getDetails())) {
 					for (PurchaseAPBillDetail detail : apBill.getDetails()) {
-						ApbillAdjustment adjust = new ApbillAdjustment(apBill);
-						Product product = new Product();
-						product.setCode(detail.getAbd_prodcode());
-						adjust.setPrid(product.getId());
-						adjust.setDetno(detail.getAbd_detno());
-						adjust.setProdcode(product.getCode());
-						adjust.setProdUnit(product.getUnit());
-						adjust.setQty(detail.getAbd_qty());
-						adjust.setThischeckqty(detail.getAbd_thisvoqty());
-						adjust.setOrderprice(detail.getAbd_price());
-						adjust.setOrdercode(detail.getAbd_ordercode());
-						adjust.setOrderdetno(detail.getAbd_orderdetno());
-						adjust.setTaxrate(detail.getAbd_taxrate());
-						if (detail.getAbd_yqty() != null) {
-							adjust.setYcheckqty(detail.getAbd_yqty());
-						} else {
-							adjust.setYcheckqty((double) 0);
-						}
+						ApbillAdjustment adjust = new ApbillAdjustment(apBill, detail);
 						Enterprise enterprise = enterpriseDao.findEnterpriseByUu(adjust.getEnuu());
 						adjust.setReceivename(enterprise.getEnName());
-						List<Product> products = ProductUtils.findByEnUUAndCode(enUU, adjust.getProdcode());
 						if (!CollectionUtils.isEmpty(products)) {
-							Product productInfo = products.get(0);
-							adjust.setPrid(productInfo.getId());
-							adjust.setProdcode(productInfo.getCode());
-							adjust.setProdtitle(productInfo.getTitle());
-							adjust.setProdspec(productInfo.getSpec());
-						}
+                            ProductInfo product = products.get(adjust.getProdcode());
+                            if (null != product) {
+                                adjust.setPrid(product.getId());
+                                adjust.setProdcode(product.getCode());
+                                adjust.setProdtitle(product.getTitle());
+                                adjust.setProdspec(product.getSpec());
+                            }
+                        }
 						adjusts.add(adjust);
 					}
 				}

+ 6 - 3
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseNotifyServiceImpl.java

@@ -1,5 +1,6 @@
 package com.uas.platform.b2b.erp.service.impl;
 
+import com.uas.platform.b2b.core.util.SqlDateFormdateUtils;
 import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.erp.model.AcceptNotify;
 import com.uas.platform.b2b.erp.model.AcceptNotifyConfirm;
@@ -56,6 +57,7 @@ public class PurchaseNotifyServiceImpl implements PurchaseNotifyService {
                         notice.getOrderItem().getOrder().getCode(), notice.getOrderItem().getNumber());
 				if (!CollectionUtils.isEmpty(idList)) {
 					notice.setOrderItemId(idList.get(0));
+					notice.setOrderItem(null);
 					notices.add(notice);
 				}
 				// 对现有的单据,修改
@@ -98,7 +100,7 @@ public class PurchaseNotifyServiceImpl implements PurchaseNotifyService {
 					}
 					if (!existDeliveryStr.equals(deliveryStr)) {
 						existNotice.setRemark(remark + dateString + "修改交期," + existDeliveryStr + " -> " + deliveryStr);
-                        mergeWaitingStatus(existNotice.getId());
+                        mergeWaitingStatus(existNotice.getId(), SqlDateFormdateUtils.DATE_FORMAT.format(notice.getDelivery()));
 					}
 					existNotice.setDelivery(notice.getDelivery());
 					notices.add(existNotice);
@@ -112,9 +114,10 @@ public class PurchaseNotifyServiceImpl implements PurchaseNotifyService {
      * 更新发货提醒备料状态
      *
      * @param noticeId 发货单id
+	 * @param deliveryStr 新的交货周期
      */
-    private void mergeWaitingStatus(Long noticeId) {
-        String sql = "update purc$notice,purc$orderitems set is_waiting = PURC_NOTICE_WAIT_TO_SEND(pn_delivery, coalesce(pr_ltinstock, 0)) " +
+    private void mergeWaitingStatus(Long noticeId, String deliveryStr) {
+        String sql = "update purc$notice,purc$orderitems set is_waiting = PURC_NOTICE_WAIT_TO_SEND(" + deliveryStr + ", coalesce(pr_ltinstock, 0)) " +
                 "where pn_pdid = pd_id and pn_id = " + noticeId;
         jdbcTemplate.execute(sql);
         communalLogDao.save(new CommunalLog("更新发货提醒备料状态", "通过发货提醒更新备料状态", "发货单id: " + noticeId,

+ 28 - 15
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseProdInOutServiceImpl.java

@@ -14,6 +14,7 @@ import com.uas.platform.b2b.service.NotExistOrderService;
 import com.uas.platform.b2b.service.NotExistProductService;
 import com.uas.platform.b2b.support.CollectionUtil;
 import com.uas.platform.b2b.support.SystemSession;
+import com.uas.platform.core.model.Constant;
 import org.apache.axis.utils.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -61,6 +62,9 @@ public class PurchaseProdInOutServiceImpl implements PurchaseProdInOutService {
 	@Autowired
     private PurchaseService purchaseService;
 
+	@Autowired
+    private PurchaseOrderDao purchaseOrderDao;
+
 	@Override
 	public List<PurchaseAcceptItem> convertProdInOuts(List<PurchaseProdInOut> prodInOuts) throws Exception {
 		List<PurchaseAcceptItem> acceptItems = new ArrayList<PurchaseAcceptItem>();
@@ -173,25 +177,34 @@ public class PurchaseProdInOutServiceImpl implements PurchaseProdInOutService {
         for (Iterator<PurchaseAcceptItem> it = accept.getAcceptItems().iterator(); it.hasNext();) {
             PurchaseAcceptItem item = it.next();
             if (item.getOrderItem() != null) {
-                List<PurchaseOrderItem> purchaseOrderItems = purchaseOrderItemDao
-                        .findByEnUUAndOrderCodeAndNumber(enUU, item.getOrderItem().getOrder().getCode(),
-                                item.getOrderItem().getNumber());
-                // 对应的采购单存在
-                if (purchaseOrderItems.size() > 0) {
-                    // 对应的采购单明细set进去
-                    item.setOrderItem(purchaseOrderItems.get(0));
-                    item.setOrderItemId(purchaseOrderItems.get(0).getId());
-                    // 设置主记录
-                    item.setAccept(accept);
-                    item.setErpDate(new Date());
-                    item.setProduct(purchaseOrderItems.get(0).getProduct());
-                    acceptItems.add(item);
-                } else {
+                Integer orderCount = purchaseOrderDao.countByEnUUAndCode(enUU, item.getOrderItem().getOrder().getCode());
+                if (orderCount == 0) {
                     if (StringUtils.isEmpty(uuid)) {
                         uuid = StringUtil.uuid();
                     }
                     ordersList.add(new NotExistOrders(enUU, item.getOrderItem().getOrder().getCode(),
-                            com.uas.platform.b2b.temporary.model.OrderType.saleItem.name(), item.getOrderItem().getNumber(), uuid));
+                            com.uas.platform.b2b.temporary.model.OrderType.saleMain.name(), Constant.NO, uuid));
+                } else {
+                    List<PurchaseOrderItem> purchaseOrderItems = purchaseOrderItemDao
+                            .findByEnUUAndOrderCodeAndNumber(enUU, item.getOrderItem().getOrder().getCode(),
+                                    item.getOrderItem().getNumber());
+                    // 对应的采购单存在
+                    if (purchaseOrderItems.size() > 0) {
+                        // 对应的采购单明细set进去
+                        item.setOrderItem(purchaseOrderItems.get(0));
+                        item.setOrderItemId(purchaseOrderItems.get(0).getId());
+                        // 设置主记录
+                        item.setAccept(accept);
+                        item.setErpDate(new Date());
+                        item.setProduct(purchaseOrderItems.get(0).getProduct());
+                        acceptItems.add(item);
+                    } else {
+                        if (StringUtils.isEmpty(uuid)) {
+                            uuid = StringUtil.uuid();
+                        }
+                        ordersList.add(new NotExistOrders(enUU, item.getOrderItem().getOrder().getCode(),
+                                com.uas.platform.b2b.temporary.model.OrderType.saleItem.name(), item.getOrderItem().getNumber(), uuid));
+                    }
                 }
             } else {
                 ProductInfo productInfo = products.get(item.getProdcode());

+ 2 - 2
src/main/java/com/uas/platform/b2b/erp/service/impl/PurchaseServiceImpl.java

@@ -73,8 +73,8 @@ public class PurchaseServiceImpl implements PurchaseService {
 		Map<String, ProductInfo> products = ProductUtils.findByEnUUAndCodes(enUU, productCodes);
 		for (Purchase purchase : purchases) {
 			// 先查看是否已存在
-			List<PurchaseOrder> orders = purchaseOrderDao.findByEnUUAndCode(enUU, purchase.getPu_code());
-			if (CollectionUtils.isEmpty(orders)) {
+			Integer orderCount = purchaseOrderDao.countByEnUUAndCode(enUU, purchase.getPu_code());
+			if (orderCount == 0) {
 				PurchaseOrderInfo order = purchase.convert();
 				// 将order的UserUU set 为em_uu
 				List<Vendor> vendors = vendorDao.findByMyEnUUAndVendUU(order.getEnUU(), order.getVendUU());

+ 16 - 2
src/main/java/com/uas/platform/b2b/model/ApbillAdjustment.java

@@ -1,6 +1,7 @@
 package com.uas.platform.b2b.model;
 
 import com.uas.platform.b2b.erp.model.PurchaseAPBill;
+import com.uas.platform.b2b.erp.model.PurchaseAPBillDetail;
 import com.uas.platform.b2b.support.SystemSession;
 
 import javax.persistence.*;
@@ -462,10 +463,9 @@ public class ApbillAdjustment implements Serializable {
 		this.nonposting = nonposting;
 	}
 
-	public ApbillAdjustment(PurchaseAPBill apBill) {
+	public ApbillAdjustment(PurchaseAPBill apBill, PurchaseAPBillDetail detail) {
 		Enterprise enterprise = SystemSession.getUser().getEnterprise();
 		this.setCurrency(apBill.getAb_currency());
-		this.setDate(new Date());
 		this.setOrderdate(apBill.getAb_date());
 		this.setSourceid(apBill.getAb_id());
 		this.setEnuu(apBill.getAb_vendoruu());
@@ -473,6 +473,20 @@ public class ApbillAdjustment implements Serializable {
 		this.setCustname(enterprise.getEnName());
 		this.setInoutno(apBill.getAb_code());
 		this.setRate(apBill.getAb_rate());
+		this.setProdcode(detail.getAbd_prodcode());
+		this.setDetno(detail.getAbd_detno());
+        this.setQty(detail.getAbd_qty());
+        this.setThischeckqty(detail.getAbd_thisvoqty());
+        this.setOrderprice(detail.getAbd_price());
+        this.setOrdercode(detail.getAbd_ordercode());
+        this.setOrderdetno(detail.getAbd_orderdetno());
+        this.setTaxrate(detail.getAbd_taxrate());
+        this.setDate(new Date(System.currentTimeMillis()));
+        if (detail.getAbd_yqty() != null) {
+            this.setYcheckqty(detail.getAbd_yqty());
+        } else {
+            this.setYcheckqty((double) 0);
+        }
 	}
 
 	public ApbillAdjustment() {

+ 0 - 55
src/main/java/com/uas/platform/b2b/model/ApcheckField.java

@@ -1,55 +0,0 @@
-package com.uas.platform.b2b.model;
-
-/**
- * 对账时采用的字段
- *
- * Created by hejq on 2018-05-17.
- */
-public enum ApcheckField {
-
-    /**
-     * 企业UU
-     */
-    _venduu,
-
-    /**
-     * 客户企业UU
-     */
-    _enuu,
-
-    /**
-     * 客户名称
-     */
-    en_name,
-
-    /**
-     * 开始日期
-     */
-    fromDate,
-
-    /**
-     * 截止日期
-     */
-    endDate,
-
-    /**
-     * 应付供应商
-     */
-    _receivename,
-
-    /**
-     * 送货工厂
-     */
-    _factory,
-
-    /**
-     * 物料名称
-     */
-    pr_title,
-
-    /**
-     * 物料规格
-     */
-    pr_spec
-
-}

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/PurchaseAcceptItem.java

@@ -55,7 +55,7 @@ public class PurchaseAcceptItem extends AbstractOrderProduct {
 	/**
 	 * 采购订单明细
 	 */
-	@OneToOne(cascade = { CascadeType.REFRESH })
+	@OneToOne()
 	@JoinColumn(name = "pai_pdid", insertable = false, updatable = false)
 	private PurchaseOrderItem orderItem;
 

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/PurchaseBadInItem.java

@@ -55,7 +55,7 @@ public class PurchaseBadInItem {
 	/**
 	 * 采购订单明细
 	 */
-	@OneToOne(cascade = { CascadeType.REFRESH })
+	@OneToOne(cascade = {  })
 	@JoinColumn(name = "pbi_pdid", insertable = false, updatable = false)
 	private PurchaseOrderItem orderItem;
 

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/PurchaseBadOutItem.java

@@ -71,7 +71,7 @@ public class PurchaseBadOutItem {
 	/**
 	 * 采购订单明细
 	 */
-	@OneToOne(cascade = { CascadeType.REFRESH })
+	@OneToOne(cascade = {  })
 	@JoinColumn(name = "poi_pdid", insertable = false, updatable = false)
 	private PurchaseOrderItem orderItem;
 

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/PurchaseMRB.java

@@ -56,7 +56,7 @@ public class PurchaseMRB implements Serializable {
 	/**
 	 * 采购订单明细
 	 */
-	@OneToOne(cascade = { CascadeType.REFRESH })
+	@OneToOne(cascade = {  })
 	@JoinColumn(name = "pm_pdid", insertable = false, updatable = false)
 	private PurchaseOrderItem orderItem;
 

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/PurchaseNotice.java

@@ -85,7 +85,7 @@ public class PurchaseNotice implements Serializable {
 	/**
 	 * 客户采购单明细
 	 */
-	@OneToOne(cascade = { CascadeType.ALL }, fetch = FetchType.EAGER)
+	@OneToOne(cascade = {  }, fetch = FetchType.EAGER)
 	@JoinColumn(name = "pn_pdid", insertable = false, updatable = false)
 	private PurchaseOrderItem orderItem;
 

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/PurchaseReturnItem.java

@@ -55,7 +55,7 @@ public class PurchaseReturnItem extends AbstractOrderProduct {
 	/**
 	 * 采购单明细id
 	 */
-	@OneToOne(optional = true, cascade = { CascadeType.REFRESH })
+	@OneToOne(optional = true, cascade = {  })
 	@JoinColumn(name = "pri_pdid", insertable = false, updatable = false, nullable = true)
 	private PurchaseOrderItem orderItem;
 

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/SaleSendItem.java

@@ -43,7 +43,7 @@ public class SaleSendItem {
 	/**
 	 * 客户采购单明细(可能存在不通过送货提醒发货的情况,所以需要能直接关联客户采购单明细)
 	 */
-	@OneToOne(cascade = { CascadeType.REFRESH })
+	@OneToOne(cascade = {  })
 	@JoinColumn(name = "si_pdid", insertable = false, updatable = false, nullable = false)
 	private PurchaseOrderItem orderItem;
 

+ 1 - 1
src/main/java/com/uas/platform/b2b/model/SaleSendItemAll.java

@@ -52,7 +52,7 @@ public class SaleSendItemAll {
 	/**
 	 * 客户采购单明细(可能存在不通过送货提醒发货的情况,所以需要能直接关联客户采购单明细)
 	 */
-	@OneToOne(cascade = { CascadeType.REFRESH })
+	@OneToOne(cascade = {  })
 	@JoinColumn(name = "si_pdid", insertable = false, updatable = false, nullable = false)
 	private PurchaseOrderItem orderItem;
 

+ 0 - 1
src/main/java/com/uas/platform/b2b/search/SearchServiceImpl.java

@@ -1306,7 +1306,6 @@ public class SearchServiceImpl implements com.uas.platform.b2b.search.SearchServ
 	public SPage<InvitationRecord> getInvitationByKeyword(String keyword, PageParams pageParams) {
 		SPage<Long> idsPage = searchService.searchIds(keyword, Table_name.INVITATIONRECORDS, pageParams);
 		List<InvitationRecord> content = invitationRecordDao.findAll(idsPage.getContent());
-		sortByProperty(content, InvitationRecord.class, "id", idsPage.getContent());
 		return toSPage(idsPage, content);
 	}
 

+ 10 - 6
src/main/java/com/uas/platform/b2b/service/impl/PurcOrderChangeServiceImpl.java

@@ -2,6 +2,7 @@ package com.uas.platform.b2b.service.impl;
 
 import com.uas.platform.b2b.core.util.ContextUtils;
 import com.uas.platform.b2b.dao.*;
+import com.uas.platform.b2b.erp.model.PurchaseChange;
 import com.uas.platform.b2b.event.PurchaseOrderChangeSaveReleaseEvent;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.service.PurcOrderChangeService;
@@ -152,6 +153,7 @@ public class PurcOrderChangeServiceImpl implements PurcOrderChangeService {
         if (StringUtils.isEmpty(change.getNewPayments()) || change.getNewPayments().equals(change.getOldPayments())) {
             change.setNewPayments(null);
         }
+        List<PurchaseOrderChangeItem> changeItemList = new ArrayList<>();
         if (!CollectionUtils.isEmpty(change.getOrderChangeItems())) {
             StringBuffer stringBuffer = new StringBuffer();
             Set<PurchaseOrderChangeItem> itemList = change.getOrderChangeItems();
@@ -161,18 +163,18 @@ public class PurcOrderChangeServiceImpl implements PurcOrderChangeService {
                 item.setOrderChange(change);
                 if ((!item.getNewPrice().equals(item.getOldPrice())) || (!item.getNewQty().equals(item.getOldQty()))
                         || (StringUtils.isEmpty(item.getNewDelivery()) || !item.getNewDelivery().equals(item.getOldDelivery())) || (!item.getNewTaxrate().equals(item.getOldTaxrate()))) {
-                    stringBuffer.append("行"+item.getOrderItemNumber()+":");
+                    stringBuffer.append("行" + item.getOrderItemNumber() + ":");
                     if (!item.getNewPrice().equals(item.getOldPrice())) {
-                        stringBuffer.append("单价"+".");
+                        stringBuffer.append("单价.");
                     }
                     if (!item.getNewQty().equals(item.getOldQty())) {
-                        stringBuffer.append("数量"+".");
+                        stringBuffer.append("数量.");
                     }
                     if (StringUtils.isEmpty(item.getNewDelivery()) || !item.getNewDelivery().equals(item.getOldDelivery())) {
-                        stringBuffer.append("交货日期"+".");
+                        stringBuffer.append("交货日期.");
                     }
                     if (!item.getNewTaxrate().equals(item.getOldTaxrate())) {
-                        stringBuffer.append("税率"+".");
+                        stringBuffer.append("税率.");
                     }
                 }
                 //判断单价、数量等是否变更,如不变更,将新单价等设为空
@@ -191,12 +193,14 @@ public class PurcOrderChangeServiceImpl implements PurcOrderChangeService {
                         item.setNewTaxrate(null);
                     }
                 }
+                //changeItemList.add(item);
             }
             if (!StringUtils.isEmpty(stringBuffer)) {
                 change.setDescription(stringBuffer.toString());
             }
+            changeItemList.addAll(itemList);
         }
-       List<PurchaseOrderChangeItem> items = changeItemDao.save(change.getOrderChangeItems());
+       List<PurchaseOrderChangeItem> items = changeItemDao.save(changeItemList);
        if (change.getUnNeedReply() == 1) {
            PurchaseOrderInfo orderInfo = orderInfoDao.findOne(change.getOrderId());
            if (!StringUtils.isEmpty(change.getNewPayments())) {

+ 3 - 1
src/main/java/com/uas/platform/b2b/service/impl/PurchaseOrderChangeServiceImpl.java

@@ -2,6 +2,7 @@ package com.uas.platform.b2b.service.impl;
 
 import com.uas.platform.b2b.core.util.ContextUtils;
 import com.uas.platform.b2b.core.util.SplitArray;
+import com.uas.platform.b2b.core.util.SqlDateFormdateUtils;
 import com.uas.platform.b2b.core.util.ThreadTask;
 import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.erp.model.SaleDownChangeReply;
@@ -308,7 +309,8 @@ public class PurchaseOrderChangeServiceImpl implements PurchaseOrderChangeServic
 		SimpleDateFormat dateFormat = new SimpleDateFormat("MM月dd日");
 		if (!dateFormat.format(changItem.getNewDelivery()).equals(dateFormat.format(orderItem.getDelivery()))) {
             // 更新备料状态
-            jdbcTemplate.execute("update purc$notice,purc$orderitems set is_waiting = PURC_NOTICE_WAIT_TO_SEND(pn_delivery, coalesce(pr_ltinstock, 0)) " +
+            jdbcTemplate.execute("update purc$notice,purc$orderitems set is_waiting = PURC_NOTICE_WAIT_TO_SEND('"
+					+ SqlDateFormdateUtils.DATE_FORMAT.format(changItem.getNewDelivery()) + "', coalesce(pr_ltinstock, 0)) " +
 					"where pn_pdid = pd_id and pn_pdid = " + orderItem.getId());
             communalLogDao.save(new CommunalLog("更新发货提醒备料状态", "采购变更更新备料状态", "采购明细id: " + orderItem.getId(),
                     SystemSession.getUser().getEnterprise().getUu()));

+ 10 - 7
src/main/java/com/uas/platform/b2b/task/ErrorLogTask.java

@@ -20,19 +20,22 @@ public class ErrorLogTask {
     private JdbcTemplate jdbcTemplate;
 
     /**
-     * 每天凌晨0点到1点开始执行
+     * 每天凌晨0点到2点开始执行
      */
-    @Scheduled(cron = "0 0/5 0,1 1 * ? ")
+    @Scheduled(cron = "0 0/5 0,1,2 * * ? ")
     public void deleteLogs() {
-         // 删除日志明细
+        // 先查询最大id
+        Long maxId = jdbcTemplate.queryForObject("select max(log_id) from log$error where date_format(log_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -2 day), '%Y-%m-%d')", Long.class);
+
+        // 删除日志明细
         jdbcTemplate.execute("delete from log$error$detail where log_logid in (select log_id from log$error " +
-                "where date_format(log_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d')) limit 1000");
+                "where log_logid <= " + maxId + " limit 10000");
         // 删除日志主表信息
         jdbcTemplate.execute("delete from log$error " +
-                "where date_format(log_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d') limit 1000");
+                "where log_id <= " + maxId + " limit 10000");
         // 删除单据记录
-        jdbcTemplate.execute("delete from erp$orders where date_format(or_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d') limit 1000");
+        jdbcTemplate.execute("delete from erp$orders where date_format(or_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -2 day), '%Y-%m-%d') limit 10000");
         // 删除物料记录
-        jdbcTemplate.execute("delete from erp$products where date_format(pr_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -1 week), '%Y-%m-%d') limit 1000");
+        jdbcTemplate.execute("delete from erp$products where date_format(pr_date, '%Y-%m-%d') <= date_format(date_add(now(), interval -2 day), '%Y-%m-%d') limit 10000");
     }
 }

+ 4 - 2
src/main/java/com/uas/platform/b2b/task/SendNoticeTask.java

@@ -53,8 +53,10 @@ public class SendNoticeTask {
     @Scheduled(cron = "0 0 6,12 * * ? ")
     public void updateWaitingStatus() {
         // 更新备料状态
-        String sql = "update purc$notice,products,purc$orderitems set is_waiting = PURC_NOTICE_WAIT_TO_SEND(pn_delivery, coalesce(purc$orderitems.pr_ltinstock, 0 )) " +
-                "where pr_id = pd_prid and pn_pdid = pd_id and is_waiting = 1 and coalesce(pn_end, 0) <> 1 and pn_status = 200";
+        String sql = "update purc$notice " +
+                "left join purc$orderitems on pn_pdid = pd_id " +
+                "set is_waiting = purc_notice_wait_to_send(pn_delivery, coalesce(pr_ltinstock, 0)) " +
+                "where purc_notice_wait_to_send(pn_delivery, coalesce(pr_ltinstock, 0)) <> is_waiting and pn_status = 200 and is_waiting = 1";
         jdbcTemplate.update(sql);
         communalLogDao.save(new CommunalLog("更新发货提醒备料状态", "定时任务自动更新备料数据", "时间: " + sdf.format(new Date()), DEFAULT_ENUU));
     }

+ 1 - 1
src/main/resources/test/sys.properties

@@ -13,7 +13,7 @@ reportUploadUrl=http://192.168.253.121:8090/report/fileUpload?userName=B2B%s
 #product service url
 ## test http://218.17.158.219:24000
 productServiceUrl=http://218.17.158.219:24000
-
+#productServiceUrl=http://10.1.51.24:8080/
 #inquiry service url
 inquiryServiceUrl=http://218.17.158.219:24000
 #inquiryServiceUrl=http://10.1.51.83:8080/

+ 4 - 0
src/main/webapp/resources/tpl/index/sale/vendorPerformanceAssess_detail.html

@@ -242,6 +242,10 @@
                         <div class="fl">总计得分):</div>
                         <div class="fr grey">{{vendorPerformanceAssess.vpaZjdf}}</div>
                     </dd>
+                    <dd>
+                        <div class="fl">等级评分):</div>
+                        <div class="fr grey">{{vendorPerformanceAssess.vpaGrade}}</div>
+                    </dd>
                 </dl>
             </div>
         </div>