Ver Fonte

fix:客户转移时,修改客户关系我方联系人及下属用户归属。客户关系增加我方联系人信息列表。

dongbw há 7 anos atrás
pai
commit
229fd6eb22

+ 6 - 0
src/main/java/com/uas/platform/b2b/dao/DistributeDao.java

@@ -43,4 +43,10 @@ public interface DistributeDao extends JpaSpecificationExecutor<Distribute>, Gen
 	 */
 	List<Distribute> findByVendorIdAndLeaderUU(Long id, Long userUU);
 
+	/**
+	 * 根据leaderUU 查询客户绑定记录
+	 * @param userUU 用户UU
+	 * @return
+	 */
+    List<Distribute> findByLeaderUU(Long userUU);
 }

+ 21 - 20
src/main/java/com/uas/platform/b2b/model/Vendor.java

@@ -1,30 +1,18 @@
 package com.uas.platform.b2b.model;
 
-import java.io.Serializable;
-
-import javax.persistence.Cacheable;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.Index;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToOne;
-import javax.persistence.Table;
-import javax.persistence.Transient;
-
-import com.uas.platform.b2b.erp.model.InquiryVendorInfo;
-import org.codehaus.jackson.annotate.JsonIgnore;
-import org.hibernate.annotations.Cache;
-import org.hibernate.annotations.CacheConcurrencyStrategy;
-
 import com.alibaba.fastjson.annotation.JSONField;
+import com.uas.platform.b2b.erp.model.InquiryVendorInfo;
 import com.uas.platform.core.persistence.Logger;
 import com.uas.platform.core.persistence.OtherUserUU;
 import com.uas.platform.core.persistence.StatusColumn;
 import com.uas.platform.core.persistence.UserUU;
+import org.codehaus.jackson.annotate.JsonIgnore;
+import org.hibernate.annotations.Cache;
+import org.hibernate.annotations.CacheConcurrencyStrategy;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.util.List;
 
 @Entity
 @Table(name = "purc$vendors", indexes = {@Index(name = "index_vendor_status", columnList = "ve_status"), @Index(name = "index_vendor_myen_venden", columnList = "ve_myenuu, ve_vendenuu", unique = true)})
@@ -163,6 +151,12 @@ public class Vendor implements Serializable {
 	@Column(name = "ve_erpstatus")
 	private Integer erpstatus;
 
+	/**
+	 * 客户资料中的我方联系人显示
+	 */
+	@Transient
+	private List<User> myContacts;
+
 	public Long getId() {
 		return id;
 	}
@@ -328,6 +322,13 @@ public class Vendor implements Serializable {
 		this.erpstatus = erpstatus;
 	}
 
+	public List<User> getMyContacts() {
+		return myContacts;
+	}
+
+	public void setMyContacts(List<User> myContacts) {
+		this.myContacts = myContacts;
+	}
 
 	public InquiryVendorInfo covert() {
 		InquiryVendorInfo info = new InquiryVendorInfo();

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

@@ -188,6 +188,9 @@ public class SearchServiceImpl implements com.uas.platform.b2b.search.SearchServ
     @Autowired
     private PurchaseOrderService purchaseOrderService;
 
+    @Autowired
+	private DistributeDao distributeDao;
+
 	/**
 	 * 联想词size
 	 */
@@ -863,6 +866,20 @@ public class SearchServiceImpl implements com.uas.platform.b2b.search.SearchServ
 	public SPage<Vendor> searchCustCheckIds(String keyword, PageParams pageParams) {
 		SPage<Long> idsPage = searchService.searchIds(keyword, Table_name.PURC$VENDORS_CUST, pageParams);
 		List<Vendor> content = vendorDao.findAll(idsPage.getContent());
+
+		// 设置我方联系人列表
+		List<User> myContacts = new ArrayList<>();
+		for (Vendor vendor : content) {
+			List<Distribute> distributes = distributeDao.findByVendorId(vendor.getId());
+			for (Distribute distribute : distributes) {
+				User user = new User();
+				user.setUserUU(distribute.getUserUU());
+				user.setUserName(distribute.getUser().getUserName());
+				user.setUserTel(distribute.getUser().getUserTel());
+				myContacts.add(user);
+			}
+			vendor.setMyContacts(myContacts);
+		}
 		sortByProperty(content, Vendor.class, "id", idsPage.getContent());
 		return toSPage(idsPage, content);
 	}

+ 22 - 3
src/main/java/com/uas/platform/b2b/service/impl/UserServiceImpl.java

@@ -890,14 +890,17 @@ public class UserServiceImpl implements UserService {
 	@Override
 	public boolean transferUserToVendor(Long custUU, List<User> users) {
 		List<Vendor> vendors = vendorDao.findByMyEnUUAndVendUU(custUU, SystemSession.getUser().getEnterprise().getUu());
-		if (!CollectionUtils.isEmpty(users)) {
+		if (!CollectionUtils.isEmpty(vendors) && !CollectionUtils.isEmpty(users)) {
+			Vendor vendor = vendors.get(0);
+			// 被转移人UU,用于修改转移人下属权限的leaderUU
+			Long userUU = null;
 			for (User u : users) {
 				Distribute distribute = new Distribute();
-				List<Distribute> transfers = distributeDao.findByUserUUAndVendorId(u.getUserUU(), vendors.get(0).getId());
+				List<Distribute> transfers = distributeDao.findByUserUUAndVendorId(u.getUserUU(), vendor.getId());
 				if (u.getTransfer()) {
 					if (CollectionUtils.isEmpty(transfers)) {
 						distribute.setUserUU(u.getUserUU());
-						distribute.setVendorId(vendors.get(0).getId());
+						distribute.setVendorId(vendor.getId());
 						distribute.setLeaderUU(SystemSession.getUser().getUserUU());
 						distribute.setIsTransfer(Constant.YES);
 						distributeDao.save(distribute);
@@ -909,8 +912,24 @@ public class UserServiceImpl implements UserService {
 							distributeDao.save(transfer);
 						}
 					}
+
+					// 被管理员转移的客户绑定用户,修改供应商关系中供应商联系人为被转移人
+					userUU = u.getUserUU();
+					vendor.setVendUserUU(userUU);
+					vendorDao.save(vendor);
 				} else {
 					if (!CollectionUtils.isEmpty(transfers) && null != transfers.get(0).getIsTransfer() &&  transfers.get(0).getIsTransfer() == Constant.YES) {
+
+						// 转移人下属权限,转移到被转移人下
+						List<Distribute> distributes = distributeDao.findByLeaderUU(transfers.get(0).getUserUU());
+						List<Distribute> changeLeaderUUList = new ArrayList<>();
+						for (Distribute bute : distributes) {
+							bute.setLeaderUU(userUU);
+							changeLeaderUUList.add(bute);
+						}
+						distributeDao.save(changeLeaderUUList);
+
+						// 删除被转移人权限
 						distributeDao.delete(transfers.get(0));
 					}
 

+ 6 - 6
src/main/resources/dev/sys.properties

@@ -1,9 +1,9 @@
 #path
-b2b=http://218.17.158.219:9000/b2b-test
+b2b=https://tb2b.usoftchina.com
 manage=http://218.17.158.219:9090/platform-manage
 manageInner=http://192.168.253.60:9090/platform-manage
 im=http://113.105.74.131:8092
-b2c=http://192.168.253.12:23400
+b2c=https://tmall.usoftchina.com
 registerUrl=http://192.168.253.12:32323/register/enterpriseRegistration
 
 #report url
@@ -11,16 +11,16 @@ reportPrintUrl=http://192.168.253.121:8090/report/print?userName=B2B%s&profile=$
 reportUploadUrl=http://192.168.253.121:8090/report/fileUpload?userName=B2B%s
 
 #product service url
-productServiceUrl=http://218.17.158.219:24000/
+productServiceUrl=http://10.1.51.92:24002
 
 #inquiry service url
-inquiryServiceUrl=http://218.17.158.219:24000/
+inquiryServiceUrl=http://10.1.51.92:24000
 
 #message service ip
-messageServiceIp=http://message.ubtob.com/
+messageServiceIp=http://10.1.51.92:24001
 
 #search url
-searchUrl=http://192.168.253.6:8081
+searchUrl=http://10.1.51.92:24005
 
 #dfs file url
 dfsFileUrl=http://10.10.100.200:9999