BE_System_Void_ERPClient.groovy 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import com.yinjie.printerAuthorize.common.api.BusinessExecutor
  2. import com.yinjie.printerAuthorize.common.api.ERPService
  3. import com.yinjie.printerAuthorize.common.api.NoSqlKeysService
  4. import com.yinjie.printerAuthorize.common.datas.ERPModule
  5. import com.yinjie.printerAuthorize.common.datas.RedisKeys
  6. import com.yinjie.printerAuthorize.common.entity.base.DataBaseMultiItemEx
  7. import com.yinjie.printerAuthorize.common.entity.base.ProcessERPClientItem
  8. import com.yinjie.printerAuthorize.common.entity.base.ProcessStringItem
  9. import com.dySweetFishPlugin.redis.RedisService
  10. import com.dySweetFishPlugin.sql.DBService
  11. import com.sweetfish.service.RetResult
  12. import org.apache.logging.log4j.LogManager
  13. import org.apache.logging.log4j.Logger
  14. import org.rex.DB
  15. import org.rex.RMap
  16. import javax.annotation.Resource
  17. @SuppressWarnings("unused")
  18. class BE_System_Void_ERPClient implements BusinessExecutor<ProcessERPClientItem, ProcessStringItem> {
  19. protected final Logger logger = LogManager.getLogger(this.getClass().getSimpleName())
  20. @Resource
  21. private ERPService erpService
  22. @Resource
  23. private DBService dbService
  24. @Resource
  25. private RedisService redisService
  26. @Resource
  27. private NoSqlKeysService keysService
  28. @Override
  29. String scriptName() {
  30. return "启用禁用SAAS商户"
  31. }
  32. @Override
  33. ERPModule module() {
  34. return ERPModule.SYSTEM
  35. }
  36. RetResult<ProcessStringItem> execute(ProcessERPClientItem source) {
  37. //源头只需要传递itemCode和voidFlag即可
  38. DataBaseMultiItemEx dataItem = source.dataItem
  39. DataBaseMultiItemEx srcItem = erpService.getERPSupplierInfoByCode(dataItem.getItemCode())
  40. if (srcItem == null) {
  41. return RetResult.<ProcessStringItem> errorT().retinfo("无效的商户信息")
  42. }
  43. //禁用后需要通过BaseServlet之类的去判断最好,下次启动会删掉注入的脚本之类的,数据暂时保留
  44. srcItem.voidFlag = dataItem.voidFlag
  45. RMap dataParams = new RMap()
  46. dataParams.put("id", srcItem.id)
  47. dataParams.put("voidFlag", srcItem.voidFlag)
  48. DB.update("update sys_DataBaseMultiItem set voidFlag = #{voidFlag} where id = #{id}", dataParams)
  49. redisService.hset(keysService.getRedisKey(RedisKeys.KEY_SUPPLIER_PLATFORM), String.valueOf(srcItem.id), srcItem)
  50. redisService.hset(keysService.getRedisKey(RedisKeys.KEY_SUPPLIER_SHARDING_KEY_PLATFORM), srcItem.shardingKey, srcItem)
  51. redisService.hset(keysService.getRedisKey(RedisKeys.KEY_SUPPLIER_ITEM_CODE_PLATFORM), srcItem.itemCode, srcItem)
  52. return RetResult.<ProcessStringItem> successT()
  53. }
  54. }