package com.zt.life.modules.mainPart.statement.controller; import com.zt.common.annotation.LogOperation; import com.zt.common.constant.Constant; import com.zt.common.annotation.QueryParam; import com.zt.common.db.query.QueryFilter; import com.zt.common.servlet.Result; import com.zt.common.servlet.PageResult; import com.zt.common.validator.AssertUtils; import com.zt.common.validator.ValidatorUtils; import com.zt.common.validator.group.AddGroup; import com.zt.common.validator.group.DefaultGroup; import com.zt.common.validator.group.UpdateGroup; import com.zt.life.modules.mainPart.statement.model.Statement; import com.zt.life.modules.mainPart.statement.service.StatementService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; import javax.servlet.http.HttpServletResponse; import java.util.List; /** * statement * * @author zt generator * @since 1.0.0 2026-02-26 */ @RestController @RequestMapping("/statement/Statement/") @Api(tags="statement") public class StatementController { @Autowired private StatementService statementService; @GetMapping("page") @ApiOperation("分页") @ApiImplicitParams({ @ApiImplicitParam(name = Constant.Q.PAGE, value = Constant.QV.PAGE, required = true, dataType = Constant.QT.INT), @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT), @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING), @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING), @ApiImplicitParam(name = "year", value = "年份", dataType = Constant.QT.STRING, format = "YEAR^EQ"), @ApiImplicitParam(name = "project", value = "课题编码", dataType = Constant.QT.STRING, format = "PROJECT^LK"), @ApiImplicitParam(name = "isFinished", value = "是否完工", dataType = Constant.QT.STRING, format = "IS_FINISHED^EQ"), @ApiImplicitParam(name = "department", value = "部门编码", dataType = Constant.QT.STRING, format = "DEPARTMENT^LK") }) public PageResult page(@ApiIgnore @QueryParam QueryFilter queryFilter){ return PageResult.ok(statementService.page(queryFilter)); } @GetMapping("{id}") @ApiOperation("信息") public Result get(@PathVariable("id") Long id){ Statement data = statementService.get(id); return Result.ok(data); } @PostMapping @ApiOperation("新增") @LogOperation("新增") public Result insert(@RequestBody Statement statement){ //效验数据 ValidatorUtils.validateEntity(statement, AddGroup.class, DefaultGroup.class); statementService.insert(statement); return Result.ok(); } @PutMapping @ApiOperation("修改") @LogOperation("修改") public Result update(@RequestBody Statement statement){ //效验数据 ValidatorUtils.validateEntity(statement, UpdateGroup.class, DefaultGroup.class); statementService.update(statement); return Result.ok(); } @DeleteMapping @ApiOperation("删除") @LogOperation("删除") public Result delete(@RequestBody Long[] ids){ //效验数据 AssertUtils.isArrayEmpty(ids, "id"); statementService.delete(ids); return Result.ok(); } }