Files
dukang/server/dukang-api/src/modules/ops/admin-xiaofeixia.controller.ts
T
jacy e5fe8b903a
CI / verify (push) Waiting to run
feat(courier): 小飞侠签收照联调与 OSS 失败回退
补齐 admin 100108 联调入口;track 优先用缓存签收照,上传失败回退 dataURI,日志截断大图。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 17:57:10 +08:00

68 lines
1.9 KiB
TypeScript

import { Body, Controller, Get, Post, UseGuards } from '@nestjs/common';
import { HqAuthGuard } from '../../common/guards/hq-auth.guard';
import {
HqPermissionGuard,
RequireHqPermissions,
} from '../../common/guards/hq-permission.guard';
import { AdminXiaofeixiaService } from './admin-xiaofeixia.service';
import {
XiaofeixiaBatchShipmentQueryDto,
XiaofeixiaCheckCoverageDto,
XiaofeixiaCreateShipmentDto,
XiaofeixiaEstimateFreightDto,
XiaofeixiaShipmentQueryDto,
} from './dto/admin-courier.dto';
/** HQ 小飞侠接口联调(仅管理端,勿对 C 端暴露) */
@Controller('admin/courier/xiaofeixia')
@UseGuards(HqAuthGuard, HqPermissionGuard)
@RequireHqPermissions('deliveries_debug')
export class AdminXiaofeixiaController {
constructor(private readonly service: AdminXiaofeixiaService) {}
@Get('config')
getConfig() {
return this.service.getConfig();
}
@Post('estimate-freight')
estimateFreight(@Body() body: XiaofeixiaEstimateFreightDto) {
return this.service.estimateFreight(body);
}
@Post('check-coverage')
checkCoverage(@Body() body: XiaofeixiaCheckCoverageDto) {
return this.service.checkCoverage(body);
}
@Post('create-shipment')
createShipment(@Body() body: XiaofeixiaCreateShipmentDto) {
return this.service.createShipment(body);
}
@Post('cancel-shipment')
cancelShipment(@Body() body: XiaofeixiaShipmentQueryDto) {
return this.service.cancelShipment(body);
}
@Post('get-shipment')
getShipment(@Body() body: XiaofeixiaShipmentQueryDto) {
return this.service.getShipment(body);
}
@Post('batch-get-shipments')
batchGetShipments(@Body() body: XiaofeixiaBatchShipmentQueryDto) {
return this.service.batchGetShipments(body);
}
@Post('get-track')
getTrack(@Body() body: XiaofeixiaShipmentQueryDto) {
return this.service.getTrack(body);
}
@Post('get-sign-photos')
getSignPhotos(@Body() body: XiaofeixiaShipmentQueryDto) {
return this.service.getSignPhotos(body);
}
}