zoujiajian 1 ano atrás
pai
commit
1f703eabda

+ 28 - 12
netflix-dao/src/main/java/com/cyksj/model/views/CorpKfServicerSessionRecordView.java

@@ -5,6 +5,8 @@ import com.ejlchina.searcher.bean.SearchBean;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.Date;
+
 /**
  * 项目名: yhlxj2
  * 文件名: CorpKfServicerSessionRecordView
@@ -13,19 +15,19 @@ import lombok.Setter;
  */
 @Getter
 @Setter
-@SearchBean(tables = "(SELECT external_userid userid, q.servicer_userid follow_id, MAX(id) msgId " +
-		"FROM corp_kf_account_session_chat q where servicer_userid is not null" +
+@SearchBean(tables = "(SELECT open_kf_id,external_userid, servicer_userid, MAX(id) msgId " +
+		"FROM corp_kf_account_session_chat where servicer_userid is not null" +
 		" :keyword: " +
-		"GROUP BY q.external_userid , q.follow_id " +
-		"ORDER BY MAX(q.id) desc limit 1) t " +
+		"GROUP BY open_kf_id,external_userid,servicer_userid) t " +
 		"LEFT JOIN corp_kf_account_session_chat qm on qm.id = t.msgId " +
-		"LEFT JOIN corp_kf_user ku on ku.external_userid = t.userid "
+		"LEFT JOIN corp_kf_user ku on ku.external_userid = t.external_userid " +
+		"LEFT JOIN corp_follow cf on cf.userid = t.servicer_userid"
 )
 public class CorpKfServicerSessionRecordView {
 	/**
 	 * 用户名称
 	 */
-	@DbField("ifnull(ku.nickname,qm.sender_name)")
+	@DbField("ku.nickname")
 	private String nickname;
 
 	/**
@@ -34,17 +36,23 @@ public class CorpKfServicerSessionRecordView {
 	@DbField("ku.avatar")
 	private String avatar;
 
+	/**
+	 * 成员名称
+	 */
+	@DbField("cf.name")
+	private String followName;
+
 	/**
 	 * 成员id
 	 */
-	@DbField("t.follow_id")
-	private String followId;
+	@DbField("t.servicer_userid")
+	private String servicerUserid;
 
 	/**
 	 * 用户id
 	 */
-	@DbField("t.userid")
-	private String userid;
+	@DbField("t.external_userid")
+	private String externalUserid;
 
 	/**
 	 * 最近消息文本内容
@@ -59,9 +67,17 @@ public class CorpKfServicerSessionRecordView {
 	private String msgType;
 
 	/**
-	 * 最近消息时间
+	 * 最近消息时间 s
 	 */
 	@DbField("qm.send_time")
-	private String sendTime;
+	private Long sendTime;
+
+	/**
+	 * 最近消息时间
+	 */
+	@DbField("qm.send_date")
+	private Date sendDate;
 
+	@DbField("qm.open_kf_id")
+	private String openKfId;
 }

+ 2 - 2
netflix-web/src/main/java/com/cyksj/web/controller/manage/corp/wxkf/CorpKfController.java

@@ -182,8 +182,8 @@ public class CorpKfController {
 	@GetMapping("/get/session")
 	public Result<SearchResult<CorpKfServicerSessionRecordView>> getSession(String keyword) {
 		MapBuilder builder = MapUtils.flatBuilder(request.getParameterMap());
-		if(StringUtils.isNotBlank(keyword)){
-			builder.put("keyword", String.format(" and q.msg_content like '%s%%')",keyword));
+		if (StringUtils.isNotBlank(keyword)) {
+			builder.put("keyword", String.format(" and q.msg_content like '%s%%')", keyword));
 		}
 		SearchResult<CorpKfServicerSessionRecordView> search = beanSearcher.search(CorpKfServicerSessionRecordView.class, builder.build());
 		return GatewayResponse.SUCCESS.newBuilder().toResult(search);