package com.artfess.rescue.external.controller;

import com.artfess.base.annotation.ApiGroup;
import com.artfess.base.constants.ApiGroupConsts;
import com.artfess.rescue.external.manager.ReceiveRescueManager;
import com.artfess.rescue.external.model.ApiResponse;
import com.artfess.rescue.external.model.RescueNode;
import com.artfess.rescue.external.model.RescueNodeFile;
import com.artfess.rescue.external.model.RescueOrder;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;

/**
 * @Author: wsf
 * @Description: 首讯-接收阳光救援信息
 * @DateTime: 2025/4/17 16:06
 **/

@RestController
@RequestMapping("external/api")
@ApiGroup(group = {ApiGroupConsts.GROUP_BIZ_RESCUE})
@Api(tags = "首讯-接收阳光救援信息")
public class ReceiveRescueController {

    @Resource
    private ReceiveRescueManager receiveRescueManager;

    @PostMapping("/updateRescue")
    @ApiOperation(value = "救援工单信息同步接口", notes = "救援工单信息同步接口")
    public ApiResponse<RescueOrder> updateRescue(@ApiParam(name = "rescueOrder", value = "救援工单信息") @RequestBody RescueOrder rescueOrder) {
        return receiveRescueManager.updateRescue(rescueOrder);
    }

    @PostMapping("/addDoRescue")
    @ApiOperation(value = "救援过程信息同步", notes = "救援过程信息同步")
    public ApiResponse<RescueNode> addDoRescue(@ApiParam(name = "data", value = "救援工单节点信息") @RequestBody RescueNode rescueNode) {
        return receiveRescueManager.addDoRescue(rescueNode);
    }

    @PostMapping("/addFile")
    @ApiOperation(value = "救援图片信息", notes = "救援图片信息")
    public ApiResponse<RescueNodeFile> addFile(@ApiParam(name = "data", value = "救援工单节点文件信息") @RequestBody RescueNodeFile rescueNodeFile) {
        return receiveRescueManager.addFile(rescueNodeFile);
    }

}
