查詢通用設定
首先定義一個Vo對象 裡面封裝了通用設定 手機号碼 問題
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SettingsVo implements Serializable {
private Long id;
private String strangerQuestion = "";
private String phone;
private Boolean likeNotification = true;
private Boolean pinglunNotification = true;
private Boolean gonggaoNotification = true;
}
1.controller調用service層 建立一個SettingVo對象 從ThroadLocal獲得使用者id和手機号碼 将手
機号碼設定給SettingVo
2.根據使用者的id 去資料庫裡面尋找使用者是否 有陌生人問題 調用QuestionApi
QuestionApi構造條件構造器 根據使用者id 來查詢是否有問題 傳回給controller 拿到question對象 判
斷它是否為空 如果未空就是沒有問題 那麼給它設定一個預設問題 否則就把查詢到的問題 指派給
SettingsVo對象
3.根據使用者id查詢 通用設定 調用settingsApi 傳入使用者id 構造條件構造器查詢并傳回 如果不等
于null 就設定給settingsVo對象 否者直接傳回(vo對象裡面有通用設定 預設是true 打開的)

陌生人問題
1.controller層獲得使用者輸入的問題 調用service層 傳入設定的問題
2.從ThreadLocal中獲得使用者id 去查詢是否有問題 如果有就是更新 沒有就是添加
3.沒有問題 重新new一個問題對象(因為查詢出來的是null) 設定問題 使用者id 調用api儲存
4.有問題 吧問題重新設定進去 調用api更新
通知設定
1.controller接收到map 傳入給service層
2.service層中擷取map的三個設定屬性 同時從ThreadLocal擷取使用者id
3.根據使用者id去資料庫裡面查找是否有通知設定 如果有進行更新 沒有進行添加
黑名單管理
1.使用PageResult對象對分頁資訊進行封裝
2.擷取目前使用者id調用 黑名單api 傳入使用者id page size 傳回ipage 轉為PageResult對象傳回
3.在黑名單api中 構造一個page對象 調用mapper 傳入page和目前使用者id 傳回ipage
4.根據使用者id查詢出它的黑名單id 根據前面查詢的作為條件 查詢出黑名單使用者
5.取消黑名單 使用條件構造器傳入使用者id和黑名單id 删除(必須傳入使用者id和黑名單id 因為 如