import Ignore_ExecPageFlipper as ExecPageFlipper import com.yinjie.printerAuthorize.business.dao.SystemDao import com.yinjie.printerAuthorize.common.api.NoSqlKeysService import com.yinjie.printerAuthorize.common.datas.RedisKeys import com.yinjie.printerAuthorize.common.entity.system.UserNoticeMessage import com.dySweetFishPlugin.redis.RedisService import com.sweetfish.source.PageFlipper import org.rex.RMap static def createRunnable(RedisService redisService, NoSqlKeysService keysService, SystemDao systemDao, String dataSourceId, long supplierCode) { return { RMap params = new RMap() redisService.del(keysService.getRedisKey(RedisKeys.KEY_ERP_USERNOTICEMESSAGE, supplierCode)); ExecPageFlipper.execute(500, { PageFlipper p -> List personList = systemDao.selectUserNoticeMessage(params, p, dataSourceId, supplierCode); if (!personList.isEmpty()) { Map redisMap = personList.collectEntries { [it.messageCode + "-" + it.getIdUser() + "-0", "1"] } redisService.hmset(keysService.getRedisKey(RedisKeys.KEY_ERP_USERNOTICEMESSAGE, supplierCode), redisMap); } }) } as Runnable } //groovy最后一个表达式的值为返回 createRunnable(redisService, keysService, systemDao, dataSourceId, supplierCode)