1
团队任务中我的任务板块是完成返厂管理,报废记录,批量操作支持以及系统级功能,今天先完成了基础数据准备,数据表结构如下
-- 返厂工单表
CREATE TABLE return_factory_order (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
sn_code VARCHAR(50) NOT NULL COMMENT '备件SN号',
fault_description TEXT COMMENT '故障描述',
status ENUM('PENDING','SHIPPED','RECEIVED','REPAIRING','RETURNED','SCRAPPED') DEFAULT 'PENDING',
vendor_id BIGINT NOT NULL COMMENT '厂商ID',
estimated_return_date DATE,
actual_return_date DATE,
repair_result TEXT,
cost DECIMAL(10,2),
tracking_number VARCHAR(50),
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (vendor_id) REFERENCES vendor (id)
);
-- 厂商表
CREATE TABLE vendor (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(100) NOT NULL,
contact_email VARCHAR(100),
warranty_coverage BOOLEAN DEFAULT FALSE COMMENT '是否支持保修'
);以及后端核心代码,返厂工单控制器
@RestController
@RequestMapping("/api/return-factory")
public class ReturnFactoryController {
@Autowired
private ReturnFactoryService returnFactoryService;
// 发起返厂申请
@PostMapping
public ResponseEntity<ReturnFactoryOrder> createOrder(
@RequestBody ReturnFactoryRequest request) {
return ResponseEntity.ok(returnFactoryService.createOrder(request));
}
// 厂商状态回调接口
@PostMapping("/{orderId}/status")
public ResponseEntity<Void> updateStatus(
@PathVariable Long orderId,
@RequestParam String status,
@RequestBody(required = false) RepairResultDTO result) {
returnFactoryService.updateStatus(orderId, status, result);
return ResponseEntity.ok().build();
}
}

浙公网安备 33010602011771号