发送消息的方式使用链接方式收集用户的固定不同代表朋友圈站点,消息发送和接收的两方面固定朋友圈系数

package com.microsoft.aiRecmandation.controller;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.UUID;

import com.microsoft.aiRecmandation.domain.CustOpen2PublicUserClimbingLeaerBoardUsingStatistic;
import com.microsoft.aiRecmandation.domain.CustomerOpen2PublicUserWrapper;
import com.microsoft.aiRecmandation.domain.CustomerRetGoodAndReplyStatistic;
import com.microsoft.aiRecmandation.domain.CustomerScanne;
import com.microsoft.aiRecmandation.domain.FixedLeaderBoard;
import com.microsoft.aiRecmandation.domain.LeaderBoard;
import com.microsoft.aiRecmandation.domain.LeaderBoardZoneInjection;
import com.microsoft.aiRecmandation.domain.Log;
import com.microsoft.aiRecmandation.domain.OpenToPublicLeaderBoardUser;
import com.microsoft.aiRecmandation.domain.RetGoodAndReplyStatistic;

public class AIRecomandationController {

	public static void main(String[] args) {
		System.out.println("Hello world!");
	}
	
	/**
	 * 发送消息的方式使用链接方式收集用户的固定不同代表朋友圈站点,消息发送和接收的两方面固定朋友圈系数和更开放的朋友圈操作平台
	 * 系统推荐小程序的作用是通过不同方面的操作系统方式得到系统推荐的用户最佳最有价值使用用户集合
	 */
	public static List<Open2PublicUser> getAIRemandationUserListByMassageBook(List<MessageMasterOperateStatistics> messageOperateList) {
		if(messageOperateList==null) {
			return null;
		}
		if(messageOperateList.isEmpty()) {
			return null;
		}
		// first step is to fixed get 4 users referrenced list to open to recomandation 
		// test first rank one name open2PublicUser ret
		Open2PublicUser open2PublicUser = new Open2PublicUser();
		open2PublicUser.setId(UUID.randomUUID().toString());
		open2PublicUser.setName("");
		ArrayList<Open2PublicUser> arrayList = new ArrayList<Open2PublicUser>();
		if(open2PublicUser.getId().equals("")) {
			arrayList.add(open2PublicUser);
		}else if(open2PublicUser.getId().equals("")) {
			arrayList.add(open2PublicUser);
		}else if(open2PublicUser.getId().equals("")) {
			arrayList.add(open2PublicUser);
		}else if(open2PublicUser.getId().equals("")) {
			arrayList.add(open2PublicUser);
		}
		Open2PublicUserWrapper open2PublicWrapper = new Open2PublicUserWrapper();
		open2PublicWrapper.setId(UUID.randomUUID().toString());
		open2PublicWrapper.setName("");
		open2PublicWrapper.setMessageMasterOperateStatisticsId("messageMasterOperateStatisticsId");
		open2PublicWrapper.setOpen2PublicUserId("open2PublicUserId");
		ArrayList<Open2PublicUserWrapper> arrayList2 = new ArrayList<Open2PublicUserWrapper>();
		for (int i = 0; i < messageOperateList.size(); i++) {
			MessageMasterOperateStatistics messageMasterOperateStatistics = messageOperateList.get(0);
			Integer masterConcernedMessageRefCount = messageMasterOperateStatistics.getMasterConcernedMessageRefCount();
			Integer refMassageUserConcernedMasterReplyCount = messageMasterOperateStatistics.getRefMassageUserConcernedMasterReplyCount();
			Integer integer = masterConcernedMessageRefCount+refMassageUserConcernedMasterReplyCount;
			String id = messageMasterOperateStatistics.getId();
			if(id.equals(open2PublicWrapper.getId())) {
				arrayList2.add(open2PublicWrapper);
			}else if(id.equals(open2PublicWrapper.getId())) {
				arrayList2.add(open2PublicWrapper);
			}else if(id.equals(open2PublicWrapper.getId())) {
				arrayList2.add(open2PublicWrapper);
			}else if(id.equals(open2PublicWrapper.getId())) {
				arrayList2.add(open2PublicWrapper);
			}
			MessageMasterOperateStatistics messageMasterOperateStatistics1 = messageOperateList.get(1);
			MessageMasterOperateStatistics messageMasterOperateStatistics2 = messageOperateList.get(2);
			MessageMasterOperateStatistics messageMasterOperateStatistics3 = messageOperateList.get(3);
		}
		
		return arrayList;
	}
	
	/**
	 * 根据用户主动关注用户和用户朋友圈以及其他关系层面平台注入的用户 系统推荐程序返回用户推荐列表 ralationship passport 
	 * another task is to do log analyser job by using standard tech redis
	 * @param srcList
	 * @return
	 * 
	 */
	public static List<OpenToPublicLeaderBoardUser> getAIRecomandationUserListByMaster(List<CustOpen2PublicUserClimbingLeaerBoardUsingStatistic> srcList){
		if(srcList==null) {
			return null;
		}
		if(srcList.isEmpty()) {
			return null;
		}
		//first time innicialized fixed 4 climibing leaderbaord user data
		List<CustomerOpen2PublicUserWrapper> custOpen2PublicUserWrapperList=new ArrayList<>();
		for (int i = 0; i < srcList.size(); i++) {
			CustomerOpen2PublicUserWrapper customerOpen2PublicUserWrapper = new CustomerOpen2PublicUserWrapper();
			customerOpen2PublicUserWrapper.setId(UUID.randomUUID().toString());
			customerOpen2PublicUserWrapper.setName("");
			CustOpen2PublicUserClimbingLeaerBoardUsingStatistic custOpen2PublicUserClimbingLeaerBoardUsingStatistic = srcList.get(i);
			Integer masterGoodFriendShipConcernedCount = custOpen2PublicUserClimbingLeaerBoardUsingStatistic.getMasterGoodFriendShipConcernedCount();
			Integer froCustomerFriendshipUserCount = custOpen2PublicUserClimbingLeaerBoardUsingStatistic.getFroCustomerFriendshipUserCount();
			Integer integer = masterGoodFriendShipConcernedCount+froCustomerFriendshipUserCount;
			customerOpen2PublicUserWrapper.setMasterConcerntedAndNormalFriendshipSelectedCountCopyPlatfroInputs(integer);
			customerOpen2PublicUserWrapper.setCustOpen2PublicUserClimbingLeaerBoardUsingStatisticId(custOpen2PublicUserClimbingLeaerBoardUsingStatistic.getId());
			custOpen2PublicUserWrapperList.add(customerOpen2PublicUserWrapper);
		}
		// rank page this master is to concerned and normal friendship selected
		Collections.sort(custOpen2PublicUserWrapperList,new Comparator<CustomerOpen2PublicUserWrapper>() {
			@Override
			public int compare(CustomerOpen2PublicUserWrapper o1, CustomerOpen2PublicUserWrapper o2) {
				// TODO Auto-generated method stub
				if(o1.getMasterConcerntedAndNormalFriendshipSelectedCountCopyPlatfroInputs()>o2.getMasterConcerntedAndNormalFriendshipSelectedCountCopyPlatfroInputs()) {
					return 1;
				}else if(o1.getMasterConcerntedAndNormalFriendshipSelectedCountCopyPlatfroInputs()<o2.getMasterConcerntedAndNormalFriendshipSelectedCountCopyPlatfroInputs()) {
					return -1;
				}
				return 0;
			}
		});
		CustomerOpen2PublicUserWrapper customerOpen2PublicUserWrapper = custOpen2PublicUserWrapperList.get(custOpen2PublicUserWrapperList.size()-1);
		CustomerOpen2PublicUserWrapper customerOpen2PublicUserWrapper2 = custOpen2PublicUserWrapperList.get(custOpen2PublicUserWrapperList.size()-2);
		CustomerOpen2PublicUserWrapper customerOpen2PublicUserWrapper3 = custOpen2PublicUserWrapperList.get(custOpen2PublicUserWrapperList.size()-3);
		CustomerOpen2PublicUserWrapper customerOpen2PublicUserWrapper4 = custOpen2PublicUserWrapperList.get(custOpen2PublicUserWrapperList.size()-4);
		// get this fixed relationship user list referrened to customerOpen2PublicUserWrapper
		String custOpen2PublicUserClimbingLeaerBoardUsingStatisticId = customerOpen2PublicUserWrapper.getCustOpen2PublicUserClimbingLeaerBoardUsingStatisticId();
		String custOpen2PublicUserClimbingLeaerBoardUsingStatisticId2 = customerOpen2PublicUserWrapper2.getCustOpen2PublicUserClimbingLeaerBoardUsingStatisticId();
		String custOpen2PublicUserClimbingLeaerBoardUsingStatisticId3 = customerOpen2PublicUserWrapper3.getCustOpen2PublicUserClimbingLeaerBoardUsingStatisticId();
		String custOpen2PublicUserClimbingLeaerBoardUsingStatisticId4 = customerOpen2PublicUserWrapper4.getCustOpen2PublicUserClimbingLeaerBoardUsingStatisticId();
		srcList.forEach(e->{
			// get this fist 4 elements of climbing leader board statistics
			String id = e.getId();
			if(id.equals(custOpen2PublicUserClimbingLeaerBoardUsingStatisticId)) {
//				e.getCustomerPlatformId();
			}else if(id.equals(custOpen2PublicUserClimbingLeaerBoardUsingStatisticId2)) {
				
			}else if(id.equals(custOpen2PublicUserClimbingLeaerBoardUsingStatisticId3)) {
				
			}else if(id.equals(custOpen2PublicUserClimbingLeaerBoardUsingStatisticId4)) {
				
			}
		});
		return null;
	}
	
	//根据点赞数量和回帖数量统计推荐用户方式接口排序 content recomandation engine dependency
	/**
	 * 使用 MySQL数据库存储用户内容操作点赞和回复统计数据  分享是一种级别更好的点赞方式 转载使用用户自己的平台再一次重新计算用户推荐程序列表
	 * @param retGoodAndReplyStatisticList
	 * @return
	 */
	public static List<OpenToPublicLeaderBoardUser> getAIRecomandationUserList(List<RetGoodAndReplyStatistic> retGoodAndReplyStatisticList) {
		if(retGoodAndReplyStatisticList==null) {
			return null;
		}
		if(retGoodAndReplyStatisticList.isEmpty()) {
			return null;
		}
		List<CustomerRetGoodAndReplyStatistic> custRetGoodAndReplyStatisticList=new ArrayList<CustomerRetGoodAndReplyStatistic>();
		for(RetGoodAndReplyStatistic retGoodAndReplyStatistic : retGoodAndReplyStatisticList) {
			Integer goodTypeTagCount = retGoodAndReplyStatistic.getGoodTypeTagCount();
			Integer replyTypeTagCount = retGoodAndReplyStatistic.getReplyTypeTagCount();
			int goodTypeTagCountPlusReplyCount=goodTypeTagCount+replyTypeTagCount;
			CustomerRetGoodAndReplyStatistic custRetGoodAndReplyStatistic=new CustomerRetGoodAndReplyStatistic();
			custRetGoodAndReplyStatistic.setId(UUID.randomUUID().toString());
			custRetGoodAndReplyStatistic.setName("");
			custRetGoodAndReplyStatistic.setGoodTypeTagCountPlusReplyCount(goodTypeTagCountPlusReplyCount);
			custRetGoodAndReplyStatistic.setRetGoodAndReplyStatisticId("");
			custRetGoodAndReplyStatisticList.add(custRetGoodAndReplyStatistic);
		}
		Collections.sort(custRetGoodAndReplyStatisticList,new Comparator<CustomerRetGoodAndReplyStatistic>() {
			@Override
			public int compare(CustomerRetGoodAndReplyStatistic o1, CustomerRetGoodAndReplyStatistic o2) {
				// TODO Auto-generated method stub
				if(o1.getGoodTypeTagCountPlusReplyCount()>o2.getGoodTypeTagCountPlusReplyCount()) {
					return 1;
				}else if(o1.getGoodTypeTagCountPlusReplyCount()<o2.getGoodTypeTagCountPlusReplyCount()) {
					return -1;
				}
				return 0;
			}
		});
		// fixd leader board items data consume to be a blank
		LeaderBoardZoneInjection leaderBoardInjection=new LeaderBoardZoneInjection();
		leaderBoardInjection.setId(UUID.randomUUID().toString());
		leaderBoardInjection.setName("leaderBoardInjection");
		LeaderBoard leaderBoard=new LeaderBoard();
		leaderBoard.setId(UUID.randomUUID().toString());
		leaderBoard.setName("leaderBoard");
		leaderBoard.setLeaderBoardInjectionId(leaderBoardInjection.getId());
		FixedLeaderBoard fixedLeaderBoard=new FixedLeaderBoard();
		fixedLeaderBoard.setId(UUID.randomUUID().toString());
		fixedLeaderBoard.setName("fixedLeaderBoard");
		fixedLeaderBoard.setLeaderBoardId(leaderBoard.getId());
		// add a customer injection scanne
		CustomerScanne customerScanne=new CustomerScanne();
		customerScanne.setId(UUID.randomUUID().toString());
		customerScanne.setName("customerScanne");
		customerScanne.setLeaderBoardZoneInjectionId(leaderBoardInjection.getId());
		OpenToPublicLeaderBoardUser openToPublicLeaderBoardUser=new OpenToPublicLeaderBoardUser();
		openToPublicLeaderBoardUser.setId(UUID.randomUUID().toString());
		openToPublicLeaderBoardUser.setName("openToPublicLeaderBoardUser");
		// first time get open to public user and innicialize leader board with 4 items data leader board
		// this is using gpt data retraining method to get experienced data leader board
		CustomerRetGoodAndReplyStatistic custRetGoodAndReplyStatistic=custRetGoodAndReplyStatisticList.get(0);
		Integer goodTypeTagCountPlusReplyCount0 = custRetGoodAndReplyStatistic.getGoodTypeTagCountPlusReplyCount();
		CustomerRetGoodAndReplyStatistic custRetGoodAndReplyStatistic1=custRetGoodAndReplyStatisticList.get(1);
		Integer goodTypeTagCountPlusReplyCount1 = custRetGoodAndReplyStatistic1.getGoodTypeTagCountPlusReplyCount();
		CustomerRetGoodAndReplyStatistic custRetGoodAndReplyStatistic2=custRetGoodAndReplyStatisticList.get(2);
		Integer goodTypeTagCountPlusReplyCount2 = custRetGoodAndReplyStatistic2.getGoodTypeTagCountPlusReplyCount();
		CustomerRetGoodAndReplyStatistic custRetGoodAndReplyStatistic3=custRetGoodAndReplyStatisticList.get(3);
		Integer goodTypeTagCountPlusReplyCount3 = custRetGoodAndReplyStatistic3.getGoodTypeTagCountPlusReplyCount();
		//log first versiton 1.0 innicialized
		Log log=new Log();
		log.setId(UUID.randomUUID().toString());
		log.setName("log first versiton 1.0 innicialized");
//		log.setLogRecordContent("logRecodrContent");
//		log.setOpenToPublicLeaderBoardUserLeaaderBoar_MoreDetailId("");
		return null;
	}
}
class Open2PublicUserWrapper{
	private String id;
	private String name;
	private String messageMasterOperateStatisticsId;
	private String open2PublicUserId;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getMessageMasterOperateStatisticsId() {
		return messageMasterOperateStatisticsId;
	}
	public void setMessageMasterOperateStatisticsId(String messageMasterOperateStatisticsId) {
		this.messageMasterOperateStatisticsId = messageMasterOperateStatisticsId;
	}
	public String getOpen2PublicUserId() {
		return open2PublicUserId;
	}
	public void setOpen2PublicUserId(String open2PublicUserId) {
		this.open2PublicUserId = open2PublicUserId;
	}
}
class Open2PublicUser{
	private String id;
	private String name;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}
class MassageBook{
	private String id;
	private String name;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}
class Open2PublicUserMassageBookLog{
	private String id;
	private String name;
	private String open2PublicUserId;
	private String massageBookId;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getOpen2PublicUserId() {
		return open2PublicUserId;
	}
	public void setOpen2PublicUserId(String open2PublicUserId) {
		this.open2PublicUserId = open2PublicUserId;
	}
	public String getMassageBookId() {
		return massageBookId;
	}
	public void setMassageBookId(String massageBookId) {
		this.massageBookId = massageBookId;
	}
}
class Massage{
	private String id;
	private String name;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}
class Master{
	private String id;
	private String name;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}
class MassageMasterLog{
	private String id;
	private String name;
	private String messageId;
	private String masterId;
	private String logV3Id;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getMessageId() {
		return messageId;
	}
	public void setMessageId(String messageId) {
		this.messageId = messageId;
	}
	public String getMasterId() {
		return masterId;
	}
	public void setMasterId(String masterId) {
		this.masterId = masterId;
	}
	public String getLogV3Id() {
		return logV3Id;
	}
	public void setLogV3Id(String logV3Id) {
		this.logV3Id = logV3Id;
	}
}
class CustomerLogUser{
	private String id;
	private String name;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
}
class LogV3{
	private String id;
	private String name;
	private String logContent;  // big data user lab utils can analyse this longContent, respect this special data library
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getLogContent() {
		return logContent;
	}
	public void setLogContent(String logContent) {
		this.logContent = logContent;
	}
}
class CustomerLogUserLogV3{
	private String id;
	private String name;
	private String customerLogUserId;
	private String logV3Id;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getCustomerLogUserId() {
		return customerLogUserId;
	}
	public void setCustomerLogUserId(String customerLogUserId) {
		this.customerLogUserId = customerLogUserId;
	}
	public String getLogV3Id() {
		return logV3Id;
	}
	public void setLogV3Id(String logV3Id) {
		this.logV3Id = logV3Id;
	}
}
class AnalyserLogAnalysingStatistics{
	private String id;
	private String concernedCount;// refCount&masterCount
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getConcernedCount() {
		return concernedCount;
	}
	public void setConcernedCount(String concernedCount) {
		this.concernedCount = concernedCount;
	}
}
class MessageMasterOperateStatistics{
	private String id;
	private String name;
	private Integer masterConcernedMessageRefCount;
	private Integer refMassageUserConcernedMasterReplyCount;
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getMasterConcernedMessageRefCount() {
		return masterConcernedMessageRefCount;
	}
	public void setMasterConcernedMessageRefCount(Integer masterConcernedMessageRefCount) {
		this.masterConcernedMessageRefCount = masterConcernedMessageRefCount;
	}
	public Integer getRefMassageUserConcernedMasterReplyCount() {
		return refMassageUserConcernedMasterReplyCount;
	}
	public void setRefMassageUserConcernedMasterReplyCount(Integer refMassageUserConcernedMasterReplyCount) {
		this.refMassageUserConcernedMasterReplyCount = refMassageUserConcernedMasterReplyCount;
	}
}

#我的求职进度条##AI让海力士市值突破9000亿美元##如何排解工作中的焦虑##牛油的搬砖plog##机械笔面试考察这些知识点#
Java技术 文章被收录于专栏

JavaEE技术 编程开发经验 企业通用技术

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务