anderx 1 год назад
Родитель
Сommit
aa71306e20

+ 2 - 0
src/main/java/com/goafanti/common/dao/UserMapper.java

@@ -252,4 +252,6 @@ public interface UserMapper {
     UserArchivesDetails selectUser(String id);
 
     List<PublicReleaseListBo> getPublicReleaseList(String uid);
+
+    void updateUserShareType(List<LockingReleaseBo> newList);
 }

+ 2 - 2
src/main/java/com/goafanti/common/mapper/UserLockReleaseMapper.xml

@@ -381,9 +381,9 @@
 		t0.id, t0.uid, t0.aid, DATE_FORMAT(t0.lock_time , '%Y-%m-%d') lockTime,u.new_channel newChannel,
 		um.last_follow_time lastFollowTime,u.nickname userName ,um.channel_type channelType,u.share_type shareType
 	from
-		(select id,uid,aid,lock_time from user_lock_release where aid = #{aid} and type = 0 and status = 0)t0
+		(select id,uid,aid,lock_time from user_lock_release where aid = #{aid}  and status = 0)t0
 	 left join user u on t0.uid=u.id  left join user_mid um on t0.uid=um.uid
-	where u.channel=0
+	where u.channel=0 and u.share_type in (0,2)
 	 and datediff(now(),if(t0.lock_time &lt; um.last_follow_time,um.last_follow_time,t0.lock_time))>30
     UNION
     SELECT t0.id, t0.uid, t0.aid, DATE_FORMAT(t0.lock_time , '%Y-%m-%d') lockTime,u.new_channel newChannel,

+ 8 - 0
src/main/java/com/goafanti/common/mapper/UserMapper.xml

@@ -1530,4 +1530,12 @@
         </if>
     </select>
 
+    <update id="updateUserShareType">
+        update user
+        set share_type = 0,transfer_time = now()
+        where id in
+        <foreach collection="list" item="item" separator="," open="(" close=")">
+                #{item.uid}
+        </foreach>
+    </update>
 </mapper>

+ 24 - 8
src/main/java/com/goafanti/common/task/ReleaseUserTask.java

@@ -33,6 +33,7 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.UUID;
+import java.util.stream.Collectors;
 
 
 @Component
@@ -232,29 +233,44 @@ public class ReleaseUserTask {
 		LoggerUtils.debug(getClass(), "==============客户释放开始============");
 		Date releaseTime = new Date();
 		try {
-			List<LockingReleaseBo> lockUserList = new ArrayList<LockingReleaseBo>();
+			List<LockingReleaseBo> lockUserList = new ArrayList<>();
+			List<LockingReleaseBo> lockUserList2 = new ArrayList<>();
 			if (userList != null && !userList.isEmpty()) {
 				for (User u : userList) {
 					System.out.println(u.getId());
 					if (StringUtils.isNotBlank(u.getId())&&!AFTConstants.CAOJIN_AID.equals(u.getId())) {
 						// 获取30天释放 释放以锁定表与user_mid最后跟进取时间
-
 						List<LockingReleaseBo>  userTmpList = customerService.selectWaitReleaseCustomer(u.getId());
 						customerService.pushReleaseLog(userTmpList, 0);
 						addUserNotice(userTmpList);
-						if (userTmpList != null && !userTmpList.isEmpty())
-							lockUserList.addAll(userTmpList);
+						if (!userTmpList.isEmpty()) {
+							//私有的交给原来的处理锁与客户,签单的另外处理
+							List<LockingReleaseBo> collect = userTmpList.stream().filter(e -> e.getShareType() == 0).collect(Collectors.toList());
+							lockUserList.addAll(collect);
+							List<LockingReleaseBo> collect2 = userTmpList.stream().filter(e -> e.getShareType() == 2).collect(Collectors.toList());
+							lockUserList2.addAll(collect2);
+						}
 					}
 				}
 			}
 			List<LockingReleaseBo> newList = new ArrayList<LockingReleaseBo>();
-			if (lockUserList != null && !lockUserList.isEmpty()) {
+			//处理私有客户
+			if (!lockUserList.isEmpty()) {
 				for (int i = 0; i < lockUserList.size(); i++) {
 					newList.add(lockUserList.get(i));
 					if (pointsDataLimit == newList.size() || i == lockUserList.size() - 1) {
-						if (!newList.isEmpty()) {
-							customerService.updatePendingReleaseLock(newList);
-						}
+                        customerService.updatePendingReleaseLock(newList);
+                        newList.clear();
+						Thread.sleep(2000);
+					}
+
+				}
+			}
+			if (!lockUserList2.isEmpty()) {
+				for (int i = 0; i < lockUserList2.size(); i++) {
+					newList.add(lockUserList2.get(i));
+					if (pointsDataLimit == newList.size() || i == lockUserList.size() - 1) {
+						userService.updateUserShareType(newList);
 						newList.clear();
 						Thread.sleep(2000);
 					}

+ 2 - 0
src/main/java/com/goafanti/customer/service/CustomerService.java

@@ -596,4 +596,6 @@ public interface CustomerService {
 	UserArchivesDetails selectUserByUid(String id);
 
 	Object getPublicReleaseList(String id);
+
+	void updateUserShareType(List<LockingReleaseBo> newList);
 }

+ 5 - 0
src/main/java/com/goafanti/customer/service/impl/CustomerServiceImpl.java

@@ -3131,6 +3131,11 @@ public class CustomerServiceImpl extends BaseMybatisDao<UserMapper> implements C
 		return map;
     }
 
+	@Override
+	public void updateUserShareType(List<LockingReleaseBo> newList) {
+
+	}
+
 
 	private List<InputExcelUser> pushUserName(List<InputExcelUser> list) {
 		List<InputExcelUser> res=new ArrayList<>();

+ 12 - 13
src/main/java/com/goafanti/user/service/UserService.java

@@ -1,21 +1,15 @@
 package com.goafanti.user.service;
 
-import java.util.List;
-import java.util.Map;
-
 import com.goafanti.app.bo.UserBasicInfo;
 import com.goafanti.common.bo.OutUser;
 import com.goafanti.common.bo.userDaysBo;
 import com.goafanti.common.model.User;
 import com.goafanti.core.mybatis.page.Pagination;
-import com.goafanti.user.bo.OrgListBo;
-import com.goafanti.user.bo.OrgUnitNames;
-import com.goafanti.user.bo.StarAndExpertListBo;
-import com.goafanti.user.bo.StarListBo;
-import com.goafanti.user.bo.UserDownLoadBo;
-import com.goafanti.user.bo.UserNames;
-import com.goafanti.user.bo.UserPageHomeBo;
-import com.goafanti.user.bo.UserPartnerDetailBo;
+import com.goafanti.customer.bo.LockingReleaseBo;
+import com.goafanti.user.bo.*;
+
+import java.util.List;
+import java.util.Map;
 
 public interface UserService {
 
@@ -78,6 +72,11 @@ public interface UserService {
 	void pushReleaseUserChannel(List<userDaysBo> newCList, Integer type);
 
 	List<OutUser> getuser();
-	
-	
+
+
+	/**
+	 * 将签单客户释放,但是不释放业务锁
+	 * @param newList
+	 */
+    void updateUserShareType(List<LockingReleaseBo> newList);
 }

+ 21 - 30
src/main/java/com/goafanti/user/service/impl/UserServiceImpl.java

@@ -1,28 +1,10 @@
 package com.goafanti.user.service.impl;
 
-import java.text.ParseException;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.UUID;
-
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.cache.annotation.Cacheable;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
 import com.goafanti.app.bo.UserBasicInfo;
 import com.goafanti.common.bo.OutUser;
 import com.goafanti.common.bo.userDaysBo;
 import com.goafanti.common.constant.AFTConstants;
-import com.goafanti.common.dao.CopyrightInfoMapper;
-import com.goafanti.common.dao.OrgIntellectualPropertyMapper;
-import com.goafanti.common.dao.OrganizationIdentityMapper;
-import com.goafanti.common.dao.PatentInfoMapper;
-import com.goafanti.common.dao.TechProjectMapper;
-import com.goafanti.common.dao.UserIdentityMapper;
-import com.goafanti.common.dao.UserMapper;
+import com.goafanti.common.dao.*;
 import com.goafanti.common.enums.UserType;
 import com.goafanti.common.model.OrganizationIdentity;
 import com.goafanti.common.model.User;
@@ -31,16 +13,20 @@ import com.goafanti.common.utils.DateUtils;
 import com.goafanti.core.mybatis.BaseMybatisDao;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
-import com.goafanti.user.bo.OrgListBo;
-import com.goafanti.user.bo.OrgPartnerDetailBo;
-import com.goafanti.user.bo.OrgUnitNames;
-import com.goafanti.user.bo.StarAndExpertListBo;
-import com.goafanti.user.bo.StarListBo;
-import com.goafanti.user.bo.UserDownLoadBo;
-import com.goafanti.user.bo.UserNames;
-import com.goafanti.user.bo.UserPageHomeBo;
-import com.goafanti.user.bo.UserPartnerDetailBo;
+import com.goafanti.customer.bo.LockingReleaseBo;
+import com.goafanti.user.bo.*;
 import com.goafanti.user.service.UserService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.annotation.Cacheable;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.text.ParseException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
 
 @Service
 public class UserServiceImpl extends BaseMybatisDao<UserMapper> implements UserService {
@@ -384,6 +370,11 @@ public class UserServiceImpl extends BaseMybatisDao<UserMapper> implements UserS
 	public List<OutUser> getuser() {
 		return userMapper.getAllUser();
 	}
-	
-	
+
+    @Override
+    public void updateUserShareType(List<LockingReleaseBo> newList) {
+		userMapper.updateUserShareType(newList);
+    }
+
+
 }

+ 2 - 2
src/main/resources/props/config_local.properties

@@ -1,8 +1,8 @@
 dev.name=local
 jdbc.driverClassName=com.mysql.jdbc.Driver
 
-static.host=//static.jishutao.com/1.3.25
-#static.host=//172.16.1.187/1.3.19
+#static.host=//static.jishutao.com/1.3.25
+static.host=//172.16.1.187/1.3.25
 
 #jdbc.url=jdbc\:mysql://localhost:3306/aft20240430?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false
 #jdbc.url=jdbc\:mysql://localhost:3306/aft?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false