Init_9_Script.groovy 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import Ignore_ExecPageFlipper as ExecPageFlipper
  2. import com.yinjie.heating.business.dao.DocDao
  3. import com.yinjie.heating.common.api.NoSqlKeysService
  4. import com.yinjie.heating.common.datas.RedisKeys
  5. import com.yinjie.heating.common.entity.doc.BusinessScript
  6. import com.yinjie.heating.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.commons.lang3.StringUtils
  11. import org.rex.RMap
  12. static def createRunnable(String runEnvironment, RedisService redisService, NoSqlKeysService keysService, DocDao docDao, JsonConvert jsonConvert, String dataSourceId, long supplierCode) {
  13. return {
  14. if (!StringUtils.equalsIgnoreCase(runEnvironment, "dev")) {
  15. redisService.del(keysService.getRedisKey(RedisKeys.KEY_BUSINESSSCRIPT, supplierCode))
  16. }
  17. ExecPageFlipper.execute(300, { PageFlipper p ->
  18. RMap scriptParams = ERPUtils.ofRMap("voidFlag", -1, "businessModule", -1)
  19. List<BusinessScript> scriptList = docDao.selectBusinessScript(scriptParams, dataSourceId, supplierCode, p)
  20. Map<String, String> redisMap = scriptList.collectEntries { [it.businessCode, jsonConvert.convertTo(it)] }
  21. if (!redisMap.isEmpty()) {
  22. redisService.hmset(keysService.getRedisKey(RedisKeys.KEY_BUSINESSSCRIPT, supplierCode), redisMap)
  23. }
  24. })
  25. } as Runnable
  26. }
  27. //groovy最后一个表达式的值为返回
  28. createRunnable(runEnvironment, redisService, keysService, docDao, jsonConvert, dataSourceId, supplierCode)