Browse Source

询价报价、主动报价、发货单、erp客户采购订单上传时增加更新个人物料库的方法

hejq 8 years ago
parent
commit
8b4848a2e2

+ 9 - 0
src/main/java/com/uas/platform/b2b/service/ProductUsersService.java

@@ -65,4 +65,13 @@ public interface ProductUsersService {
      * @param idList
      * @param idList
      */
      */
     void deleteByBatch(List<Long> idList);
     void deleteByBatch(List<Long> idList);
+
+    /**
+     * 转入我的物料库
+     *
+     * @param id
+     * @param enuu
+     * @param useruu
+     */
+    void coverToMyProduct(Long id, Long enuu, Long useruu, String method);
 }
 }

+ 17 - 1
src/main/java/com/uas/platform/b2b/service/impl/ProductUsersServiceImpl.java

@@ -1,9 +1,9 @@
 package com.uas.platform.b2b.service.impl;
 package com.uas.platform.b2b.service.impl;
 
 
 import com.alibaba.dubbo.common.utils.CollectionUtils;
 import com.alibaba.dubbo.common.utils.CollectionUtils;
+import com.uas.platform.b2b.core.util.ThreadUtils;
 import com.uas.platform.b2b.dao.ProductDao;
 import com.uas.platform.b2b.dao.ProductDao;
 import com.uas.platform.b2b.dao.ProductUsersDao;
 import com.uas.platform.b2b.dao.ProductUsersDao;
-import com.uas.platform.b2b.dao.RoleDao;
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.ProductUsers;
 import com.uas.platform.b2b.model.ProductUsers;
 import com.uas.platform.b2b.model.Role;
 import com.uas.platform.b2b.model.Role;
@@ -329,4 +329,20 @@ public class ProductUsersServiceImpl implements ProductUsersService {
         List<ProductUsers> prods = productUsersDao.findAll(idList);
         List<ProductUsers> prods = productUsersDao.findAll(idList);
         productUsersDao.delete(prods);
         productUsersDao.delete(prods);
     }
     }
+
+    /**
+     * 将物料信息同步到个人信息库
+     *
+     * @param productId
+     */
+    public void coverToMyProduct(final Long productId, final Long enuu, final Long useruu, final String method) {
+        logger.log("我的产品库", method + ":" + productId);
+        ThreadUtils.task(new Runnable() {
+
+            @Override
+            public void run() {
+                productUsersDao.coverToUserByPrid(productId, enuu, useruu);
+            }
+        }).run();
+    }
 }
 }

+ 6 - 0
src/main/java/com/uas/platform/b2b/service/impl/PurchaseInquiryServiceImpl.java

@@ -15,6 +15,7 @@ import com.uas.platform.b2b.event.PurchaseInquiryItemSaveReleaseEvent;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.service.AttachService;
 import com.uas.platform.b2b.service.AttachService;
+import com.uas.platform.b2b.service.ProductUsersService;
 import com.uas.platform.b2b.service.PurchaseInquiryService;
 import com.uas.platform.b2b.service.PurchaseInquiryService;
 import com.uas.platform.b2b.support.MessageConf;
 import com.uas.platform.b2b.support.MessageConf;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.SystemSession;
@@ -118,6 +119,9 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 
 
     static final String EMAIL_REGEXP = "\\w[-\\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\\.)+[A-Za-z]{2,14}";
     static final String EMAIL_REGEXP = "\\w[-\\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\\.)+[A-Za-z]{2,14}";
 
 
+    @Autowired
+    private ProductUsersService productUsersService;
+
 	@Override
 	@Override
 	public void save(List<PurchaseInquiryItem> inquiryItems) {
 	public void save(List<PurchaseInquiryItem> inquiryItems) {
         inquiryItems = purchaseInquiryItemDao.save(inquiryItems);
         inquiryItems = purchaseInquiryItemDao.save(inquiryItems);
@@ -602,6 +606,8 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 		}
 		}
 		// 将采购员单据设置未读
 		// 将采购员单据设置未读
 		userOrderDao.setReadStatus(purchaseInquiryItem.getInquiry().getEnUU(), purchaseInquiryItem.getInquiry().getRecorderUU(), "v$purc$inquiryitems", "purc", (short) Status.NOT_READ.value(), purchaseInquiryItem.getId());
 		userOrderDao.setReadStatus(purchaseInquiryItem.getInquiry().getEnUU(), purchaseInquiryItem.getInquiry().getRecorderUU(), "v$purc$inquiryitems", "purc", (short) Status.NOT_READ.value(), purchaseInquiryItem.getId());
+		// 更新个人物料库信息
+        productUsersService.coverToMyProduct(purchaseInquiryItem.getProductId(), SystemSession.getUser().getEnterprise().getUu(), SystemSession.getUser().getUserUU(), "客户询价单报价");
 		return purchaseInquiryItem;
 		return purchaseInquiryItem;
 	}
 	}
 
 

+ 16 - 1
src/main/java/com/uas/platform/b2b/service/impl/PurchaseNoticeServiceImpl.java

@@ -3,11 +3,13 @@ package com.uas.platform.b2b.service.impl;
 import com.uas.platform.b2b.core.util.ContextUtils;
 import com.uas.platform.b2b.core.util.ContextUtils;
 import com.uas.platform.b2b.core.util.SplitArray;
 import com.uas.platform.b2b.core.util.SplitArray;
 import com.uas.platform.b2b.core.util.ThreadTask;
 import com.uas.platform.b2b.core.util.ThreadTask;
+import com.uas.platform.b2b.core.util.ThreadUtils;
 import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.erp.model.PurchaseNotify;
 import com.uas.platform.b2b.erp.model.PurchaseNotify;
 import com.uas.platform.b2b.event.*;
 import com.uas.platform.b2b.event.*;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.search.SearchService;
+import com.uas.platform.b2b.service.ProductUsersService;
 import com.uas.platform.b2b.service.PurchaseNoticeService;
 import com.uas.platform.b2b.service.PurchaseNoticeService;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.UsageBufferedLogger;
 import com.uas.platform.b2b.support.UsageBufferedLogger;
@@ -61,16 +63,22 @@ public class PurchaseNoticeServiceImpl implements PurchaseNoticeService {
 
 
 	@Autowired
 	@Autowired
 	private B2bCodeSetDao b2bCodeSetDao;
 	private B2bCodeSetDao b2bCodeSetDao;
+
 	@Autowired
 	@Autowired
 	private BarPackageDao barPackageDao;
 	private BarPackageDao barPackageDao;
+
 	@Autowired
 	@Autowired
 	private BarSendNotifyDao barSendNotifyDao;
 	private BarSendNotifyDao barSendNotifyDao;
+
 	@Autowired
 	@Autowired
 	private BarPackageDetailDao barPackageDetailDao;
 	private BarPackageDetailDao barPackageDetailDao;
+
 	@Autowired
 	@Autowired
 	private CommonDao commonDao;
 	private CommonDao commonDao;
+
 	@Autowired
 	@Autowired
 	private BarLPSetingDao barLPSetingDao;
 	private BarLPSetingDao barLPSetingDao;
+
 	@Autowired
 	@Autowired
 	private SearchService searchService;
 	private SearchService searchService;
 
 
@@ -92,6 +100,9 @@ public class PurchaseNoticeServiceImpl implements PurchaseNoticeService {
 	@Autowired
 	@Autowired
 	private VendorDao vendorDao;
 	private VendorDao vendorDao;
 
 
+	@Autowired
+    private ProductUsersService productUsersService;
+
 	@Override
 	@Override
 	public void save(List<PurchaseNotice> notices) {
 	public void save(List<PurchaseNotice> notices) {
 		notices = purchaseNoticeDao.save(notices);
 		notices = purchaseNoticeDao.save(notices);
@@ -448,13 +459,15 @@ public class PurchaseNoticeServiceImpl implements PurchaseNoticeService {
 				saleSends.add(sendItems.get(0).getSend());
 				saleSends.add(sendItems.get(0).getSend());
 				ContextUtils.publishEvent(new SaleSendSaveEvent(saleSends));
 				ContextUtils.publishEvent(new SaleSendSaveEvent(saleSends));
 			}
 			}
+			// 我的产品库更新
+            productUsersService.coverToMyProduct(notice.getOrderItem().getProductId(), SystemSession.getUser().getEnterprise().getUu(), SystemSession.getUser().getUserUU(), "单个发货");
 			return sendItems.get(0).getSend();
 			return sendItems.get(0).getSend();
 		} else {
 		} else {
 			throw new IllegalOperatorException("请对有效的送货提醒发货!");
 			throw new IllegalOperatorException("请对有效的送货提醒发货!");
 		}
 		}
 	}
 	}
 
 
-	@Override
+    @Override
 	public int getOnhandCount() {
 	public int getOnhandCount() {
 		return purchaseNoticeDao.getCountByVendUUAndStatus(SystemSession.getUser().getEnterprise().getUu(),
 		return purchaseNoticeDao.getCountByVendUUAndStatus(SystemSession.getUser().getEnterprise().getUu(),
 				(short) Status.NOT_REPLY.value());
 				(short) Status.NOT_REPLY.value());
@@ -513,6 +526,8 @@ public class PurchaseNoticeServiceImpl implements PurchaseNoticeService {
 				notice.setStatus(
 				notice.setStatus(
 						(short) (endQty == notice.getQty() ? Status.REPLIED.value() : Status.NOT_REPLY.value()));
 						(short) (endQty == notice.getQty() ? Status.REPLIED.value() : Status.NOT_REPLY.value()));
 				purchaseNoticeDao.save(notice);
 				purchaseNoticeDao.save(notice);
+                // 转入我的物料库
+                productUsersService.coverToMyProduct(notice.getOrderItem().getProductId(), SystemSession.getUser().getEnterprise().getUu(), SystemSession.getUser().getUserUU(), "批量发货");
 			}
 			}
 			if (!CollectionUtils.isEmpty(sendItems)) {
 			if (!CollectionUtils.isEmpty(sendItems)) {
 				List<SaleSend> saleSends = new ArrayList<SaleSend>();
 				List<SaleSend> saleSends = new ArrayList<SaleSend>();

+ 10 - 0
src/main/java/com/uas/platform/b2b/service/impl/PurchaseOrderServiceImpl.java

@@ -9,6 +9,7 @@ import com.uas.platform.b2b.event.PurchaseOrderReplyReleaseEvent;
 import com.uas.platform.b2b.event.PurchaseOrderSaveReleaseEvent;
 import com.uas.platform.b2b.event.PurchaseOrderSaveReleaseEvent;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.search.SearchService;
+import com.uas.platform.b2b.service.ProductUsersService;
 import com.uas.platform.b2b.service.PurchaseOrderService;
 import com.uas.platform.b2b.service.PurchaseOrderService;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.XingePusher;
 import com.uas.platform.b2b.support.XingePusher;
@@ -107,6 +108,9 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 	@Autowired
 	@Autowired
     private CommonDao commonDao;
     private CommonDao commonDao;
 
 
+	@Autowired
+    private ProductUsersService productUsersService;
+
 //	@Autowired
 //	@Autowired
 //    private SaleOrderForProdItemDao saleOrderForProdItemDao;
 //    private SaleOrderForProdItemDao saleOrderForProdItemDao;
 
 
@@ -129,6 +133,12 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
                 Enterprise vendor = enterpriseDao.findOne(orderAll.getVendUU());
                 Enterprise vendor = enterpriseDao.findOne(orderAll.getVendUU());
                 orderAll.setVendUserUU(vendor.getEnAdminuu());
                 orderAll.setVendUserUU(vendor.getEnAdminuu());
             }
             }
+            // 更新我的产品库
+            if(!CollectionUtils.isEmpty(orderAll.getOrderItems())) {
+			    for(PurcOrderInfoItem item : orderAll.getOrderItems()) {
+                    productUsersService.coverToMyProduct(item.getProductId(), orderAll.getVendUU(), orderAll.getVendUserUU(), "erp上传采购单");
+                }
+            }
             newOrderAlls.add(orderAll);
             newOrderAlls.add(orderAll);
 		}
 		}
 		saveUserOrders(orderAlls);
 		saveUserOrders(orderAlls);

+ 6 - 0
src/main/java/com/uas/platform/b2b/service/impl/SaleQuotationServiceImpl.java

@@ -7,6 +7,7 @@ import com.uas.platform.b2b.event.SaleQuotationDecideReleaseEvent;
 import com.uas.platform.b2b.event.SaleQuotationInvalidReleaseEvent;
 import com.uas.platform.b2b.event.SaleQuotationInvalidReleaseEvent;
 import com.uas.platform.b2b.event.SaleQuotationSaveEvent;
 import com.uas.platform.b2b.event.SaleQuotationSaveEvent;
 import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.model.*;
+import com.uas.platform.b2b.service.ProductUsersService;
 import com.uas.platform.b2b.service.SaleQuotationService;
 import com.uas.platform.b2b.service.SaleQuotationService;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.core.exception.NotFoundException;
 import com.uas.platform.core.exception.NotFoundException;
@@ -48,6 +49,9 @@ public class SaleQuotationServiceImpl implements SaleQuotationService {
 	@Autowired
 	@Autowired
 	private SaleQuotationDoneDao saleQuotationDoneDao;
 	private SaleQuotationDoneDao saleQuotationDoneDao;
 
 
+	@Autowired
+    private ProductUsersService productUsersService;
+
 	@Override
 	@Override
 	public void save(List<SaleQuotationItem> items) {
 	public void save(List<SaleQuotationItem> items) {
 		List<SaleQuotationItem> newItems = saleQuotationItemDao.save(items);
 		List<SaleQuotationItem> newItems = saleQuotationItemDao.save(items);
@@ -111,6 +115,8 @@ public class SaleQuotationServiceImpl implements SaleQuotationService {
 		List<SaleQuotationItem> list = new ArrayList<SaleQuotationItem>();
 		List<SaleQuotationItem> list = new ArrayList<SaleQuotationItem>();
 		list.add(newItem);
 		list.add(newItem);
 		saveEvent(list);// 保存触发相应的动作(关键词库、推送)
 		saveEvent(list);// 保存触发相应的动作(关键词库、推送)
+        // 更新我的物料库信息
+        productUsersService.coverToMyProduct(item.getProductId(), SystemSession.getUser().getEnterprise().getUu(), SystemSession.getUser().getUserUU(), "主动报价");
 		return newItem;
 		return newItem;
 	}
 	}
 
 

+ 7 - 7
src/main/webapp/resources/css/index.css

@@ -2703,10 +2703,10 @@ input.ng-invalid.ng-dirty,textarea.ng-invalid.ng-dirty {
 	position: absolute;
 	position: absolute;
 	text-align: left;
 	text-align: left;
 	 display: none;
 	 display: none;
-	right: 114px;
+	right: 93px;
 	top: 44px;
 	top: 44px;
 	/* animation: slideDown .2s ease-in 1 normal both; */
 	/* animation: slideDown .2s ease-in 1 normal both; */
-	width: 230px;
+	width: 250px;
 
 
 }
 }
 .user-tk div{
 .user-tk div{
@@ -2716,7 +2716,7 @@ input.ng-invalid.ng-dirty,textarea.ng-invalid.ng-dirty {
 .user-tk .user-message{
 .user-tk .user-message{
 	padding-left: 0;
 	padding-left: 0;
 	margin-bottom: 0;
 	margin-bottom: 0;
-	width: 230px;
+	width: 250px;
 	list-style: none;
 	list-style: none;
 	border: 1px solid #ccc;
 	border: 1px solid #ccc;
 	overflow: hidden;
 	overflow: hidden;
@@ -2725,7 +2725,7 @@ input.ng-invalid.ng-dirty,textarea.ng-invalid.ng-dirty {
 	overflow-y: auto;
 	overflow-y: auto;
 }
 }
 .user-tk .user-message li{
 .user-tk .user-message li{
-	width: 230px;
+	width: 250px;
 	overflow: hidden;
 	overflow: hidden;
 	text-overflow: ellipsis;
 	text-overflow: ellipsis;
 	white-space: nowrap;
 	white-space: nowrap;
@@ -2739,12 +2739,12 @@ input.ng-invalid.ng-dirty,textarea.ng-invalid.ng-dirty {
 .user-tk .user-message li a{
 .user-tk .user-message li a{
 	padding-left: 10px;
 	padding-left: 10px;
 	display: inline-block;
 	display: inline-block;
-	width: 220px;
+	width: 250px;
 	height: 38px;
 	height: 38px;
 	overflow: hidden;
 	overflow: hidden;
 }
 }
 .user-tk .user-message li.active a{
 .user-tk .user-message li.active a{
-	width: 230px;
+	width: 250px;
 	margin-top: 12px;
 	margin-top: 12px;
 	line-height: 38px;
 	line-height: 38px;
 	background: #e8e8e8;
 	background: #e8e8e8;
@@ -2757,7 +2757,7 @@ input.ng-invalid.ng-dirty,textarea.ng-invalid.ng-dirty {
 	float: left;
 	float: left;
 	font-size: 13px;
 	font-size: 13px;
 	color: #d32526;
 	color: #d32526;
-	width: 135px;
+    width: 155px;
 	overflow: hidden;
 	overflow: hidden;
 	text-overflow: ellipsis;
 	text-overflow: ellipsis;
 	white-space: nowrap;
 	white-space: nowrap;