根据点赞数量和回帖数量统计推荐用户方式接口排序
package com.microsoft.aiRecmandation;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import java.util.UUID;
public class AIRecomandationController {
public static void main(String[] args) {
System.out.println("Hello world!");
}
//根据点赞数量和回帖数量统计推荐用户方式接口排序
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 CustomerRetGoodAndReplyStatistic{
private String id;
private String name;
private Integer goodTypeTagCountPlusReplyCount;
private String retGoodAndReplyStatisticId;
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 getGoodTypeTagCountPlusReplyCount() {
return goodTypeTagCountPlusReplyCount;
}
public void setGoodTypeTagCountPlusReplyCount(Integer goodTypeTagCountPlusReplyCount) {
this.goodTypeTagCountPlusReplyCount = goodTypeTagCountPlusReplyCount;
}
public String getRetGoodAndReplyStatisticId() {
return retGoodAndReplyStatisticId;
}
public void setRetGoodAndReplyStatisticId(String retGoodAndReplyStatisticId) {
this.retGoodAndReplyStatisticId = retGoodAndReplyStatisticId;
}
}
//generate leader board data: zone injection this module
class LeaderBoardZoneInjection{
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 LeaderBoard{
private String id;
private String name;
private String leaderBoardInjectionId;
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 getLeaderBoardInjectionId() {
return leaderBoardInjectionId;
}
public void setLeaderBoardInjectionId(String leaderBoardInjectionId) {
this.leaderBoardInjectionId = leaderBoardInjectionId;
}
}
//get climbing leader board entity: how to generate this climbing leader board
class FixedLeaderBoard{
private String id;
private String name;
private String leaderBoardId;
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 getLeaderBoardId() {
return leaderBoardId;
}
public void setLeaderBoardId(String leaderBoardId) {
this.leaderBoardId = leaderBoardId;
}
}
class CustomerScanne{
private String id;
private String name;
private String LeaderBoardZoneInjectionId;
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 getLeaderBoardZoneInjectionId() {
return LeaderBoardZoneInjectionId;
}
public void setLeaderBoardZoneInjectionId(String leaderBoardZoneInjectionId) {
LeaderBoardZoneInjectionId = leaderBoardZoneInjectionId;
}
}
class LeaderBoardZoneInjectionCustomerScannerLog{
private String id;
private String name;
private String LeaderBoardZoneInjectionId;
private String customerScannneId;
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 getLeaderBoardZoneInjectionId() {
return LeaderBoardZoneInjectionId;
}
public void setLeaderBoardZoneInjectionId(String leaderBoardZoneInjectionId) {
LeaderBoardZoneInjectionId = leaderBoardZoneInjectionId;
}
public String getCustomerScannneId() {
return customerScannneId;
}
public void setCustomerScannneId(String customerScannneId) {
this.customerScannneId = customerScannneId;
}
}
class OpenToPublicLeaderBoardUser{
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 LeaderBoard_{
private String id;
private String fixedLeaderBoardId;
private String leaderBoardId;// this leader board is very experienced
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getFixedLeaderBoardId() {
return fixedLeaderBoardId;
}
public void setFixedLeaderBoardId(String fixedLeaderBoardId) {
this.fixedLeaderBoardId = fixedLeaderBoardId;
}
public String getLeaderBoardId() {
return leaderBoardId;
}
public void setLeaderBoardId(String leaderBoardId) {
this.leaderBoardId = leaderBoardId;
}
}
class OpenToPublicLeaderBoardUserLeaderBoard_MoreDetail{
private String id;
private String name;
private String openToPublicLeaderBoardUserId;
private String leaderBoard__Id;
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 getOpenToPublicLeaderBoardUserId() {
return openToPublicLeaderBoardUserId;
}
public void setOpenToPublicLeaderBoardUserId(String openToPublicLeaderBoardUserId) {
this.openToPublicLeaderBoardUserId = openToPublicLeaderBoardUserId;
}
public String getLeaderBoard__Id() {
return leaderBoard__Id;
}
public void setLeaderBoard__Id(String leaderBoard__Id) {
this.leaderBoard__Id = leaderBoard__Id;
}
}
//here will generate some web 4.0 data and can analyse to be referrenced to statistic user list data
class Log{
private String id;
private String name;
private String logRecordContent;//RetGoodAndReplyStatistic
private String openToPublicLeaderBoardUserLeaaderBoar_MoreDetailId;
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 getLogRecordContent() {
return logRecordContent;
}
public void setLogRecordContent(String logRecordContent) {
this.logRecordContent = logRecordContent;
}
public String getOpenToPublicLeaderBoardUserLeaaderBoar_MoreDetailId() {
return openToPublicLeaderBoardUserLeaaderBoar_MoreDetailId;
}
public void setOpenToPublicLeaderBoardUserLeaaderBoar_MoreDetailId(
String openToPublicLeaderBoardUserLeaaderBoar_MoreDetailId) {
this.openToPublicLeaderBoardUserLeaaderBoar_MoreDetailId = openToPublicLeaderBoardUserLeaaderBoar_MoreDetailId;
}
}
class RetGoodAndReplyStatistic {
private String id;
private String name;
private String goodTypeTag;
private String replyTypeTag;
private Integer goodTypeTagCount;
private Integer replyTypeTagCount;
private String logId;
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 getGoodTypeTag() {
return goodTypeTag;
}
public void setGoodTypeTag(String goodTypeTag) {
this.goodTypeTag = goodTypeTag;
}
public String getReplyTypeTag() {
return replyTypeTag;
}
public void setReplyTypeTag(String replyTypeTag) {
this.replyTypeTag = replyTypeTag;
}
public Integer getGoodTypeTagCount() {
return goodTypeTagCount;
}
public void setGoodTypeTagCount(Integer goodTypeTagCount) {
this.goodTypeTagCount = goodTypeTagCount;
}
public Integer getReplyTypeTagCount() {
return replyTypeTagCount;
}
public void setReplyTypeTagCount(Integer replyTypeTagCount) {
this.replyTypeTagCount = replyTypeTagCount;
}
public String getLogId() {
return logId;
}
public void setLogId(String logId) {
this.logId = logId;
}
}
#我的求职进度条##我与AI的日常##这个offer值得去吗?##想做Agent可以做哪些岗位?##面试官拷打AI项目都会问什么?#Java技术 文章被收录于专栏
JavaEE技术 编程开发经验 企业通用技术
查看9道真题和解析
腾讯工作强度 1164人发布