package com.ruoyi.fakeWarehousing.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.fakeWarehousing.pojo.FakeCarrierContract; import com.ruoyi.fakeWarehousing.service.IFakeCarrierContractService; import com.ruoyi.framework.aspectj.lang.annotation.Log; import com.ruoyi.framework.aspectj.lang.enums.BusinessType; import com.ruoyi.framework.web.domain.R; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import java.util.Arrays; /** * 承运合同管理Controller */ @RestController @RequiredArgsConstructor @RequestMapping("/fakeWarehousing") @Api(value = "fakeWarehousing", tags = "承运合同管理Controller") public class FakeCarrierContractController { private final IFakeCarrierContractService fakeCarrierContractService; /** * 分页查询承运合同列表 * * @param contract 查询条件 * @return 分页结果 */ @GetMapping("/list") @ApiOperation(value = "分页查询承运合同列表", notes = "分页查询承运合同列表") public IPage list(Page page, FakeCarrierContract contract) { return fakeCarrierContractService.selectAll(page, contract); } /** * 根据ID查询承运合同详情 * * @param id 合同主键ID * @return 合同详情 */ @GetMapping("/{id}") @ApiOperation(value = "根据ID查询承运合同详情", notes = "根据ID查询承运合同详情") public R getInfo(@PathVariable Long id) { return R.ok(fakeCarrierContractService.getById(id)); } /** * 新增承运合同 * * @param contract 合同实体(含合同编号、承运商信息等核心字段) * @return 操作结果 */ @Log(title = "新增承运合同", businessType = BusinessType.INSERT) @PostMapping @ApiOperation(value = "新增承运合同", notes = "新增承运合同") public R add(@RequestBody FakeCarrierContract contract) { return R.ok(fakeCarrierContractService.save(contract)); } /** * 修改承运合同 * * @param contract 合同实体(必须包含主键ID) * @return 操作结果 */ @Log(title = "修改承运合同", businessType = BusinessType.UPDATE) @PutMapping @ApiOperation(value = "修改承运合同", notes = "修改承运合同") public R edit(@RequestBody FakeCarrierContract contract) { if (contract.getId() == null) { return R.fail("修改失败,合同ID不能为空"); } return R.ok(fakeCarrierContractService.updateById(contract)); } /** * 删除承运合同(支持单条/多条删除) * * @param ids 合同主键ID数组 * @return 操作结果 */ @Log(title = "承运合同管理", businessType = BusinessType.DELETE) @ApiOperation(value = "承运合同管理", notes = "承运合同管理") @DeleteMapping("/{ids}") public R remove(@PathVariable Long[] ids) { return R.ok(fakeCarrierContractService.removeByIds(Arrays.asList(ids))); } }