1、新增应付明细
2、新增应收明细 3、新增异常处置 4、新增风险处置 5、新增在途追踪 6、修复业务模块bug
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# 风险处置后端接口契约
|
||||
|
||||
> 当前仓库为前端工程,无 Java 后端源码。本文件提供 BladeX 后端落库与接口实现契约,路径需放入 `blade-transport` 服务。
|
||||
|
||||
## Controller
|
||||
|
||||
```java
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
@RequestMapping("/risk-disposal")
|
||||
@Api(value = "风险处置", tags = "风险处置")
|
||||
public class RiskDisposalController {
|
||||
|
||||
private final IRiskDisposalService riskDisposalService;
|
||||
|
||||
@GetMapping("/list")
|
||||
public R<IPage<RiskDisposalVO>> list(RiskDisposalQuery query, Query page) {
|
||||
IPage<RiskDisposalVO> pages = riskDisposalService.selectRiskDisposalPage(Condition.getPage(page), query);
|
||||
return R.data(pages);
|
||||
}
|
||||
|
||||
@GetMapping("/detail")
|
||||
public R<RiskDisposalVO> detail(Long id) {
|
||||
return R.data(riskDisposalService.detail(id));
|
||||
}
|
||||
|
||||
@PostMapping("/dispose")
|
||||
public R<Boolean> dispose(@Valid @RequestBody RiskDisposalDTO dto) {
|
||||
return R.status(riskDisposalService.dispose(dto));
|
||||
}
|
||||
|
||||
@PostMapping("/batch-dispose")
|
||||
public R<Boolean> batchDispose(@Valid @RequestBody RiskDisposalBatchDTO dto) {
|
||||
return R.status(riskDisposalService.batchDispose(dto));
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## 字段约定
|
||||
|
||||
- `riskLevel`: `low` 低,`medium` 中,`high` 高
|
||||
- `disposalStatus`: `pending` 待处理,`processed` 已处理,`ignored` 已忽略
|
||||
- `disposalMethod`: `process` 处理,`ignore` 忽略
|
||||
- 列表默认按 `create_time DESC` 返回
|
||||
- `riskNo` 由后端生成:`RK + yyyyMMdd + 3位流水号`
|
||||
|
||||
## 接口
|
||||
|
||||
- `GET /blade-transport/risk-disposal/list`
|
||||
- `GET /blade-transport/risk-disposal/detail?id=`
|
||||
- `POST /blade-transport/risk-disposal/dispose`
|
||||
- `POST /blade-transport/risk-disposal/batch-dispose`
|
||||
|
||||
## DTO
|
||||
|
||||
```java
|
||||
@Data
|
||||
public class RiskDisposalDTO {
|
||||
@NotNull(message = "风险ID不能为空")
|
||||
private Long id;
|
||||
@NotBlank(message = "请选择处理方式")
|
||||
private String disposalMethod;
|
||||
@Length(max = 500, message = "处置说明不能超过500个字符")
|
||||
private String disposalRemark;
|
||||
}
|
||||
|
||||
@Data
|
||||
public class RiskDisposalBatchDTO {
|
||||
@NotEmpty(message = "风险ID不能为空")
|
||||
private List<Long> ids;
|
||||
@NotBlank(message = "请选择处理方式")
|
||||
private String disposalMethod;
|
||||
@Length(max = 500, message = "处置说明不能超过500个字符")
|
||||
private String disposalRemark;
|
||||
}
|
||||
```
|
||||
@@ -0,0 +1,27 @@
|
||||
# 在途追踪后端接口契约
|
||||
|
||||
## 接口
|
||||
|
||||
- `GET /blade-transport/track-tracking/map`
|
||||
- `GET /blade-transport/track-tracking/ship`
|
||||
|
||||
## 建议返回
|
||||
|
||||
```json
|
||||
{
|
||||
"code": 200,
|
||||
"success": true,
|
||||
"data": {
|
||||
"siteName": "XX园区A门",
|
||||
"address": "南宁市邕宁区龙岗大道21号",
|
||||
"coordinates": "108.348610;22.721864",
|
||||
"records": []
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## 说明
|
||||
|
||||
- `map` 用于轨迹查询
|
||||
- `ship` 用于船舶查询
|
||||
- 当前前端先做高德地图占位,后端可先只返回基础信息和轨迹点数组
|
||||
@@ -0,0 +1,66 @@
|
||||
-- 风险处置模块初始化脚本
|
||||
-- 父菜单:在途管理
|
||||
|
||||
INSERT INTO `blade_menu` (
|
||||
`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`,
|
||||
`remark`, `tenant_id`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`,
|
||||
`is_deleted`
|
||||
) VALUES (
|
||||
'1710000000000000001', 0, 'transit_manage', '在途管理', 'transit_manage', '/transit', 'el-icon-truck',
|
||||
20, 1, 1, 1, '在途管理父菜单', '000000', 1, 1, NOW(), 1, NOW(), 1, 0
|
||||
);
|
||||
|
||||
INSERT INTO `blade_menu` (
|
||||
`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`,
|
||||
`remark`, `tenant_id`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`,
|
||||
`is_deleted`
|
||||
) VALUES (
|
||||
'1710000000000000002', '1710000000000000001', 'risk_disposal', '风险处置', 'risk_disposal',
|
||||
'/transit/risk-disposal', 'el-icon-warning-outline', 20, 1, 1, 1, '风险处置页面',
|
||||
'000000', 1, 1, NOW(), 1, NOW(), 1, 0
|
||||
);
|
||||
|
||||
INSERT INTO `blade_menu` (
|
||||
`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`,
|
||||
`remark`, `tenant_id`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`,
|
||||
`is_deleted`
|
||||
) VALUES
|
||||
('1710000000000000003', '1710000000000000002', 'risk_disposal_query', '查询', 'risk_disposal_query', '', '', 10, 2, 1, 1, '风险处置查询权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0),
|
||||
('1710000000000000004', '1710000000000000002', 'risk_disposal_process', '处理', 'risk_disposal_process', '', '', 20, 2, 1, 1, '风险处置处理权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0),
|
||||
('1710000000000000005', '1710000000000000002', 'risk_disposal_ignore', '忽略', 'risk_disposal_ignore', '', '', 30, 2, 1, 1, '风险处置忽略权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0),
|
||||
('1710000000000000006', '1710000000000000002', 'risk_disposal_batch_process', '批量处理', 'risk_disposal_batch_process', '', '', 40, 2, 1, 1, '风险处置批量处理权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0),
|
||||
('1710000000000000007', '1710000000000000002', 'risk_disposal_batch_ignore', '批量忽略', 'risk_disposal_batch_ignore', '', '', 50, 2, 1, 1, '风险处置批量忽略权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0),
|
||||
('1710000000000000008', '1710000000000000002', 'risk_disposal_view', '查看', 'risk_disposal_view', '', '', 60, 2, 1, 1, '风险处置查看权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `tms_risk_disposal` (
|
||||
`id` bigint NOT NULL COMMENT '主键',
|
||||
`tenant_id` varchar(12) DEFAULT '000000' COMMENT '租户ID',
|
||||
`risk_no` varchar(30) NOT NULL COMMENT '风险编号',
|
||||
`rule_name` varchar(50) NOT NULL COMMENT '规则名称',
|
||||
`waybill_id` bigint DEFAULT NULL COMMENT '运单ID',
|
||||
`waybill_no` varchar(30) DEFAULT NULL COMMENT '运单号',
|
||||
`project_id` bigint DEFAULT NULL COMMENT '项目ID',
|
||||
`project_name` varchar(50) DEFAULT NULL COMMENT '项目名称',
|
||||
`risk_level` varchar(20) NOT NULL COMMENT '风险等级:low/medium/high',
|
||||
`transport_type` varchar(20) DEFAULT NULL COMMENT '运输类型',
|
||||
`risk_description` varchar(500) DEFAULT NULL COMMENT '风险描述',
|
||||
`trigger_time` datetime DEFAULT NULL COMMENT '触发时间',
|
||||
`disposal_status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '处理状态:pending/processed/ignored',
|
||||
`disposal_method` varchar(20) DEFAULT NULL COMMENT '处理方式:process/ignore',
|
||||
`disposal_remark` varchar(500) DEFAULT NULL COMMENT '处置说明',
|
||||
`dispose_user` bigint DEFAULT NULL COMMENT '处置人',
|
||||
`dispose_user_name` varchar(50) DEFAULT NULL COMMENT '处置人名称',
|
||||
`dispose_time` datetime DEFAULT NULL COMMENT '处置时间',
|
||||
`create_user` bigint DEFAULT NULL COMMENT '创建人',
|
||||
`create_dept` bigint DEFAULT NULL COMMENT '创建部门',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`update_user` bigint DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||||
`status` int DEFAULT 1 COMMENT '状态',
|
||||
`is_deleted` int DEFAULT 0 COMMENT '是否已删除',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `uk_tms_risk_disposal_no` (`risk_no`),
|
||||
KEY `idx_tms_risk_disposal_status` (`disposal_status`),
|
||||
KEY `idx_tms_risk_disposal_level` (`risk_level`),
|
||||
KEY `idx_tms_risk_disposal_waybill` (`waybill_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='风险处置';
|
||||
@@ -0,0 +1,29 @@
|
||||
-- 在途追踪模块初始化脚本
|
||||
|
||||
INSERT INTO `blade_menu` (
|
||||
`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`,
|
||||
`remark`, `tenant_id`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`,
|
||||
`is_deleted`
|
||||
) VALUES (
|
||||
'1720000000000000001', 0, 'transit_manage', '在途管理', 'transit_manage', '/transit', 'el-icon-truck',
|
||||
20, 1, 1, 1, '在途管理父菜单', '000000', 1, 1, NOW(), 1, NOW(), 1, 0
|
||||
);
|
||||
|
||||
INSERT INTO `blade_menu` (
|
||||
`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`,
|
||||
`remark`, `tenant_id`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`,
|
||||
`is_deleted`
|
||||
) VALUES (
|
||||
'1720000000000000002', '1720000000000000001', 'track_tracking', '在途追踪', 'track_tracking',
|
||||
'/transit/track-tracking', 'el-icon-position', 10, 1, 1, 1, '在途追踪页面',
|
||||
'000000', 1, 1, NOW(), 1, NOW(), 1, 0
|
||||
);
|
||||
|
||||
INSERT INTO `blade_menu` (
|
||||
`id`, `parent_id`, `code`, `name`, `alias`, `path`, `source`, `sort`, `category`, `action`, `is_open`,
|
||||
`remark`, `tenant_id`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`,
|
||||
`is_deleted`
|
||||
) VALUES
|
||||
('1720000000000000003', '1720000000000000002', 'track_tracking_query', '查询', 'track_tracking_query', '', '', 10, 2, 1, 1, '在途追踪查询权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0),
|
||||
('1720000000000000004', '1720000000000000002', 'track_tracking_ship_query', '船舶查询', 'track_tracking_ship_query', '', '', 20, 2, 1, 1, '在途追踪船舶查询权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0),
|
||||
('1720000000000000005', '1720000000000000002', 'track_tracking_refresh', '刷新', 'track_tracking_refresh', '', '', 30, 2, 1, 1, '在途追踪刷新权限', '000000', 1, 1, NOW(), 1, NOW(), 1, 0);
|
||||
Reference in New Issue
Block a user