2026-04-22 30587170535f5a850c59b4a2323b1a311a22aa6a
src/main/java/com/ruoyi/production/controller/ProductionOrderController.java
@@ -1,18 +1,72 @@
package com.ruoyi.production.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.framework.web.domain.R;
import com.ruoyi.production.bean.dto.ProductionOrderDto;
import com.ruoyi.production.bean.vo.ProductionOrderVo;
import com.ruoyi.production.pojo.ProductionOrder;
import com.ruoyi.production.service.ProductionOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * <p>
 * 生产订单表 前端控制器
 * </p>
 *
 * @author 芯导软件(江苏)有限公司
 * @since 2026-04-21 03:55:52
 */
import java.util.List;
@RestController
@RequestMapping("/productionOrder")
@Api(tags = "生产订单")
@RequiredArgsConstructor
public class ProductionOrderController {
    private final ProductionOrderService productionOrderService;
    @GetMapping("/page")
    @ApiOperation("分页查询")
    public R page(ProductionOrderDto dto, Page<ProductionOrderDto> page) {
        return R.ok(productionOrderService.pageProductionOrder(page, dto));
    }
    @GetMapping("/list")
    @ApiOperation("生产订单列表")
    public R<List<ProductionOrderVo>> list(ProductionOrderDto dto) {
        return R.ok(productionOrderService.listProductionOrder(dto));
    }
    @GetMapping("/{id}")
    @ApiOperation("生产订单详情")
    public R<ProductionOrderVo> getInfo(@PathVariable("id") Long id) {
        return R.ok(productionOrderService.getProductionOrderInfo(id));
    }
    @PostMapping
    @ApiOperation("新增生产订单")
    public R<Boolean> add(@RequestBody ProductionOrder productionOrder) {
        return R.ok(productionOrderService.saveProductionOrder(productionOrder));
    }
    @PutMapping
    @ApiOperation("修改生产订单")
    public R<Boolean> edit(@RequestBody ProductionOrder productionOrder) {
        return R.ok(productionOrderService.saveProductionOrder(productionOrder));
    }
    @PostMapping("/syncSnapshot/{id}")
    @ApiOperation("同步生产订单工艺/BOM快照")
    public R<Integer> syncSnapshot(@PathVariable("id") Long id) {
        return R.ok(productionOrderService.syncProductionOrderSnapshot(id));
    }
    @DeleteMapping("/delete")
    @ApiOperation("删除生产订单")
    public R<Boolean> remove(@RequestBody List<Long> ids) {
        return R.ok(productionOrderService.removeProductionOrder(ids));
    }
}