直接コードに
forループのforEach()メソッド
ストリーム()、フィルタ()()(Collectors.toList)を収集し、対応するリストに、必要な要素を表示します
ストリーム()。マップ(WechatUser :: getUin).collect(Collectors.toList())リストUINに取ります
ユーザー - > Math.abs(.. Period.between(LOCALDATE、user.getLastLoginTime()toLocalDate())getDays())> 89)、WechatUser :: getUin匿名の式、関数型プログラミング
/ ** *期限切れの90日間のユーザー情報を削除します *基礎を削除します。すべての注文の障害が発生した後、すべてのオンラインのマイクロチャネルのユーザーは15日、90日、管理者ユーザーは、未知の更新しないため、オフライン履歴情報リスク管理モジュールを強制的にシステムは、アカウントをクリーンアップします。 *定期的なタスク * // TODOの実行`更新タイマの有効期限タスク- updateCompanyLimitWxAndEndDate後の()`実行 * @return * / @Transactional 公衆結果expDeleteUserData(){ //クエリは、企業ユーザーの有効期限が切れ 一覧を<会社> = companyMapper.expDateGt90DaysCompany会社(); リスト<ユーザー> =新しい新しいcompanyUsersのArrayList <>(); companies.forEach(会社- > companyUsers.add(userMapper.selectCompanyUserByCompanyId(company.getCompanyId()))); //管理メンバーは、会社内のすべてのユーザーを追加し、時間フィルタをログイン LOCALDATE LOCALDATE = LocalDate.now(); 一覧<整数>ユーザーID =新しいArrayListを<>(); リスト<ユーザー>ユーザー= companyUsers.stream()フィルタ(ユーザ- > Math.abs(Period.between(LOCALDATE、user.getLastLoginTime()toLocalDate())getDays())> 89)。.collect(コレクター。 ToListメソッド())。 users.forEach(ユーザ- > userIds.addAll(userMapper.selectUserIdsByCompanyId(user.getCompanyId())))。 //批量软删除用户 userMapper.updateDeletedByIds(ユーザーID); 新しい検索結果を返す()成功(); }
/ ** *クリア期限切れの15日間のリスクコントロールのユーザーデータ *基礎を削除します。すべての注文の障害が発生した後、すべてのオンラインのマイクロチャネルのユーザーは15日間のオフライン、リスクコントロールモジュールの履歴情報を強制的に、90日、ユーザーは、管理者の更新ではありません;記録されていないシステムでは、アカウントをクリーンアップします *定期的なタスク * // TODOの実行`更新タイマの有効期限タスク- updateCompanyLimitWxAndEndDate()`実行後 * @return * / @Transactional 公衆結果expDeleteWxHistoryData(){ //クエリは15日期限切れ企業ユーザーの 一覧<会社> = companyMapper.expDateGt15DaysCompany会社(); リスト<ユーザー>は=新しい新しいcompanyUsersのArrayList <>(); companies.forEach(会社- > companyUsers.add(userMapper.selectCompanyUserByCompanyId(company.getCompanyId())) ); LOCALDATE LOCALDATE = LocalDate.now(); //すべてのそれらの有効期限が切れ ArrayListの<整数> =新しい新しいユーザーIDのArrayList <>(); companyUsers.forEach(ユーザー- > userIds.addAll(userMapper.selectUserIdsByCompanyId(user.getCompanyId()))); ここで行う//クリアTODO風制御データを //取得しますすべてのマイクロチャネルのユーザーに 一覧<WechatUser> wechatUsers = wechatUserMapper.getWeChatUserAccountByUserIds(ユーザーID); リスト<整数> = uins wechatUsers.stream()地図(WechatUser :: getUin).collect(Collectors.toList());. //削除風制御データ //wechatMessageMapper.deleteByUins(uins); ()成功();.新しい新しい検索結果を返します }