Init_12_UserNoticeMessage.groovy 1.3 KB

12345678910111213141516171819202122232425262728293031
  1. import Ignore_ExecPageFlipper as ExecPageFlipper
  2. import com.yinjie.heating.business.dao.SystemDao
  3. import com.yinjie.heating.common.api.NoSqlKeysService
  4. import com.yinjie.heating.common.datas.RedisKeys
  5. import com.yinjie.heating.common.entity.system.UserNoticeMessage
  6. import com.dySweetFishPlugin.redis.RedisService
  7. import com.sweetfish.source.PageFlipper
  8. import org.rex.RMap
  9. static def createRunnable(RedisService redisService, NoSqlKeysService keysService, SystemDao systemDao, String dataSourceId, long supplierCode) {
  10. return {
  11. RMap params = new RMap()
  12. redisService.del(keysService.getRedisKey(RedisKeys.KEY_ERP_USERNOTICEMESSAGE, supplierCode));
  13. ExecPageFlipper.execute(500, { PageFlipper p ->
  14. List<UserNoticeMessage> personList = systemDao.selectUserNoticeMessage(params, p, dataSourceId, supplierCode);
  15. if (!personList.isEmpty()) {
  16. Map<String, String> redisMap = personList.collectEntries { [it.messageCode + "-" + it.getIdUser() + "-0", "1"] }
  17. redisService.hmset(keysService.getRedisKey(RedisKeys.KEY_ERP_USERNOTICEMESSAGE, supplierCode), redisMap);
  18. }
  19. })
  20. } as Runnable
  21. }
  22. //groovy最后一个表达式的值为返回
  23. createRunnable(redisService, keysService, systemDao, dataSourceId, supplierCode)