| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <?php
- namespace app\common\logic;
- use app\common\model\external\ExternalPlatform;
- use app\common\model\recharge\RechargeOrder;
- use app\common\model\works\ServiceWork;
- use think\facade\Log;
- class ExternalPlatformLogic extends BaseLogic
- {
- /**
- * @notes 根据场景执行任务
- */
- public static function handleByScene($params)
- {
- try {
- switch ($params['send_code']){
- case 1002:
- case 1003:
- case 1005:
- case 1006:
- self::generalServiceWork($params['send_code'],$params['params']);
- break;
- default:
- throw new \Exception('场景不存在');
- }
- return true;
- } catch (\Exception $e) {
- Log::info('ExternalPlatform-error:'.$e->getMessage());
- self::setError($e->getMessage());
- return false;
- }
- }
- /**
- * 工单统一处理
- * @param $send_code
- * @param $params
- * @return bool
- * @author liugc <466014217@qq.com>
- * @date 2025/4/17 14:12
- */
- private static function generalServiceWork($send_code,$params)
- {
- try {
- $work = ServiceWork::where(['id'=>$params['work_id']])->findOrEmpty();
- if($work->isEmpty()){
- throw new \Exception('工单不存在');
- }
- if($work->external_platform_id > 0){
- $send_url = env('internal_api.api_url_host').'platf/performanceNotice';
- $data = [
- 'external_platform_id'=> $work->external_platform_id,
- 'send_code'=> $send_code,
- 'work_sn'=> $work->work_sn
- ];
- // 通过内部SDK服务 对外通知
- $res = http_request($send_url,http_build_query($data));
- Log::info('generalServiceWork:'
- .'url:'.$send_url
- .'|data:'.json_encode($data,JSON_UNESCAPED_UNICODE)
- .'|res:'.json_encode([$res],JSON_UNESCAPED_UNICODE)
- );
- }
- return true;
- } catch (\Exception $e) {
- Log::info('generalServiceWork-error:'.$e->getMessage());
- return false;
- }
- }
- }
|