Init_20_AuthorizationItem.groovy 1.5 KB

12345678910111213141516171819202122232425262728293031323334
  1. import Ignore_ExecPageFlipper as ExecPageFlipper
  2. import com.dySweetFishPlugin.redis.RedisService
  3. import com.sweetfish.convert.json.JsonConvert
  4. import com.sweetfish.source.PageFlipper
  5. import com.yinjie.printerAuthorize.business.dao.PrintersDao
  6. import com.yinjie.printerAuthorize.common.api.NoSqlKeysService
  7. import com.yinjie.printerAuthorize.common.datas.RedisKeys
  8. import com.yinjie.printerAuthorize.common.entity.printers.AuthorizationItem
  9. import com.yinjie.printerAuthorize.common.tool.ERPUtils
  10. import org.rex.RMap
  11. static def createRunnable(RedisService redisService, NoSqlKeysService keysService, PrintersDao printersDao, JsonConvert jsonConvert, String dataSourceId, long supplierCode) {
  12. return {
  13. redisService.del(keysService.getRedisKey(RedisKeys.KEY_AUTHORIZATION_ITEM, supplierCode))
  14. RMap dictTypeParams = ERPUtils.ofRMap("voidFlag", -1)
  15. ExecPageFlipper.execute(500, { PageFlipper p ->
  16. List<AuthorizationItem> items = printersDao.selectAllAuthorizationItems(dictTypeParams, dataSourceId, supplierCode, p)
  17. Map<String, String> map = items.collectEntries { [String.valueOf(it.permissionIndex), jsonConvert.convertTo(it)] }
  18. if (!map.isEmpty()) {
  19. redisService.hmset(keysService.getRedisKey(RedisKeys.KEY_AUTHORIZATION_ITEM, supplierCode), map)
  20. }
  21. })
  22. } as Runnable
  23. }
  24. //groovy最后一个表达式的值为返回
  25. createRunnable(redisService, keysService, printersDao, jsonConvert, dataSourceId, supplierCode)