//
//  ATripCalcResponse.h
//  AMapNavIOSSDK
//
//  Created by admin on 2026/3/25.
//

#import <Foundation/Foundation.h>
#import <MJExtension/MJExtension.h>

#import "AAlgorithmPathModel.h"
#import "APathModel.h"
#import "ASiteModel.h"
#import "ANaviPathInfoModel.h"
#import "ATruckModel.h"


NS_ASSUME_NONNULL_BEGIN

@class ATruckModel;
@class ASiteModel;
@class APathModel;
@class AAlgorithmPathModel;

#pragma mark - data 节点

/**
 {
     "truckDto": { ... },
     "truckDtoStr": null,
     "destinationSite": { ... },
     "pathDto": { ... },
     "algorithmPath": { ... },
     "isInvokeAlgorithm": true
 }
 */
@interface ATripCalcDataModel : NSObject

@property (nonatomic, strong, nullable) ATruckModel *truckDto;
@property (nonatomic, copy, nullable) NSString *truckDtoStr;
@property (nonatomic, strong, nullable) ASiteModel *destinationSite;
@property (nonatomic, strong, nullable) APathModel *pathDto;
@property (nonatomic, strong, nullable) AAlgorithmPathModel *algorithmPath;
@property (nonatomic, assign) BOOL isInvokeAlgorithm;

@end

#pragma mark - 根响应

/**
 {
     "code": 200,
     "msg": "操作成功!",
     "data": { ... }
 }
 */
@interface ATripCalcResponse : NSObject

@property (nonatomic, assign) NSInteger code;
@property (nonatomic, copy, nullable) NSString *msg;
@property (nonatomic, strong, nullable) ATripCalcDataModel *data;

@end

NS_ASSUME_NONNULL_END
