| 555 | } |
| 556 | |
| 557 | async enableScript(param: { uuid: string; enable: boolean }) { |
| 558 | const { uuid, enable } = param; |
| 559 | const logger = this.logger.with({ uuid, enable }); |
| 560 | const script = await this.scriptDAO.get(uuid); |
| 561 | if (!script) { |
| 562 | logger.error("script not found"); |
| 563 | throw new Error("script not found"); |
| 564 | } |
| 565 | return this.scriptDAO |
| 566 | .update(uuid, { |
| 567 | status: enable ? SCRIPT_STATUS_ENABLE : SCRIPT_STATUS_DISABLE, |
| 568 | updatetime: Date.now(), |
| 569 | }) |
| 570 | .then(() => { |
| 571 | logger.info("enable success"); |
| 572 | this.mq.publish<TEnableScript[]>("enableScripts", [{ uuid: uuid, enable: enable }]); |
| 573 | return {}; |
| 574 | }) |
| 575 | .catch((e) => { |
| 576 | logger.error("enable error", Logger.E(e)); |
| 577 | throw e; |
| 578 | }); |
| 579 | } |
| 580 | |
| 581 | async enableScripts(param: { uuids: string[]; enable: boolean }) { |
| 582 | const { uuids, enable } = param; |