BE_VoidPrinterClient.groovy 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. import com.dySweetFishPlugin.redis.RedisService
  2. import com.dySweetFishPlugin.sql.TableIdService
  3. import com.dySweetFishPlugin.sql.dao.TunaService
  4. import com.sweetfish.convert.json.JsonConvert
  5. import com.sweetfish.service.RetResult
  6. import com.yinjie.printerAuthorize.business.dao.PrintersDao
  7. import com.yinjie.printerAuthorize.common.api.BusinessExecutor
  8. import com.yinjie.printerAuthorize.common.api.NoSqlKeysService
  9. import com.yinjie.printerAuthorize.common.api.printersAuthorize.AuthorizationService
  10. import com.yinjie.printerAuthorize.common.datas.ERPModule
  11. import com.yinjie.printerAuthorize.common.datas.RedisKeys
  12. import com.yinjie.printerAuthorize.common.entity.base.InvokeCallParams
  13. import com.yinjie.printerAuthorize.common.entity.base.InvokeCallResult
  14. import com.yinjie.printerAuthorize.common.entity.printers.PrinterClient
  15. import org.apache.commons.lang3.StringUtils
  16. import org.apache.logging.log4j.LogManager
  17. import org.apache.logging.log4j.Logger
  18. import javax.annotation.Resource
  19. class BE_VoidPrinterClient implements BusinessExecutor<InvokeCallParams, InvokeCallResult> {
  20. private final Logger logger = LogManager.getLogger(this.getClass().getSimpleName())
  21. @Resource
  22. private JsonConvert jsonConvert
  23. @Resource
  24. private RedisService redisService
  25. @Resource
  26. private NoSqlKeysService keysService
  27. @Resource
  28. private TunaService tunaService
  29. @Resource
  30. private TableIdService tableIdService
  31. @Resource
  32. private AuthorizationService authorizationService
  33. private PrintersDao printersDao
  34. @Override
  35. String scriptName() {
  36. return "禁用/启用数码机客户"
  37. }
  38. @Override
  39. ERPModule module() {
  40. return ERPModule.PRINTERS
  41. }
  42. @Override
  43. void start(long supplierCode) {
  44. printersDao = tunaService.generate(PrintersDao.class)
  45. }
  46. @Override
  47. RetResult<InvokeCallParams> checkExecute(InvokeCallParams source) {
  48. PrinterClient srcPrinter = jsonConvert.convertFrom(PrinterClient.class, source.params)
  49. String redisJson = redisService.hget(keysService.getRedisKey(RedisKeys.KEY_PRINTER_CLIENT_ID, source.supplierCode), srcPrinter.id as String)
  50. if (StringUtils.isBlank(redisJson)) {
  51. return RetResult.<InvokeCallParams> errorT().retinfo("目标机台不存在")
  52. }
  53. return RetResult.<InvokeCallParams> successT().result(source)
  54. }
  55. RetResult<InvokeCallResult> execute(InvokeCallParams source) {
  56. PrinterClient srcPrinter = jsonConvert.convertFrom(PrinterClient.class, source.params)
  57. String redisJson = redisService.hget(keysService.getRedisKey(RedisKeys.KEY_PRINTER_CLIENT_ID, source.supplierCode), srcPrinter.id as String)
  58. PrinterClient redisPrinter = jsonConvert.convertFrom(PrinterClient.class, redisJson)
  59. redisPrinter.setVoidFlag(srcPrinter.voidFlag)
  60. PrinterClient.update(redisPrinter, source.currentUser.id)
  61. redisService.hset(keysService.getRedisKey(RedisKeys.KEY_PRINTER_CLIENT_ID, source.supplierCode), redisPrinter.id as String, jsonConvert.convertTo(redisPrinter))
  62. redisService.hset(keysService.getRedisKey(RedisKeys.KEY_PRINTER_CLIENT_CODE, source.supplierCode), redisPrinter.printerUniqueCode, jsonConvert.convertTo(redisPrinter))
  63. printersDao.voidPrinterClient(redisPrinter, source.dataSourceId, source.supplierCode)
  64. return RetResult.<InvokeCallResult> successT().result(InvokeCallResult.success())
  65. }
  66. }