Init_37_MallUser.groovy 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import com.sdtool.business.dao.MallDao
  2. import com.sdtool.common.api.NoSqlKeysService
  3. import com.sdtool.common.datas.RedisKeys
  4. import com.sdtool.common.entity.mall.MallUser
  5. import com.sdtool.common.entity.system.SocialUser
  6. import com.sdtool.common.tool.ERPUtils
  7. import com.dySweetFishPlugin.redis.RedisService
  8. import com.sweetfish.convert.json.JsonConvert
  9. import com.sweetfish.source.PageFlipper
  10. import org.apache.logging.log4j.Logger
  11. import org.rex.RMap
  12. /**
  13. * @Author: xl Created on 2024-03-27
  14. * @Content:
  15. */
  16. static def createRunnable(RedisService redisService, NoSqlKeysService keysService,
  17. MallDao mallDao, Logger logger, JsonConvert jsonConvert, String dataSourceId, long supplierCode) {
  18. RMap params = ERPUtils.ofRMap("voidFlag", -1)
  19. return {
  20. redisService.del(keysService.getRedisKey(RedisKeys.KEY_ERP_MALL_User, supplierCode))
  21. Ignore_ExecPageFlipper.execute(1000, { PageFlipper p ->
  22. List<MallUser> mallUserList = mallDao.queryMallUserList(params, p, dataSourceId, supplierCode)
  23. if (!mallUserList.isEmpty()) {
  24. Map<String, String> redisMap = mallUserList.collectEntries { [String.valueOf(it.getId()), jsonConvert.convertTo(it)] }
  25. redisService.hmset(keysService.getRedisKey(RedisKeys.KEY_ERP_MALL_User, supplierCode), redisMap)
  26. logger.info("商城用户共" + mallUserList.size() + "条记录")
  27. }
  28. })
  29. redisService.del(keysService.getRedisKey(RedisKeys.KEY_ERP_MALL_SOCIAL_User, supplierCode))
  30. Ignore_ExecPageFlipper.execute(1000, { PageFlipper p ->
  31. List<SocialUser> socialUserList = mallDao.queryMallSocialUser(params, p, dataSourceId, supplierCode)
  32. if (!socialUserList.isEmpty()) {
  33. Map<String, String> redisMap = socialUserList.collectEntries { [it.userOpenId, jsonConvert.convertTo(it)] }
  34. redisService.hmset(keysService.getRedisKey(RedisKeys.KEY_ERP_MALL_SOCIAL_User, supplierCode), redisMap)
  35. logger.info("商城三方绑定用户共" + socialUserList.size() + "条记录")
  36. }
  37. })
  38. } as Runnable
  39. }
  40. createRunnable(redisService, keysService, mallDao, logger, jsonConvert, dataSourceId, supplierCode)