2024-10-11 17:49:29 +08:00

157 lines
6.3 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package ${packageName}.controller;
import java.util.List;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.github.xiaoymin.knife4j.annotations.DynamicParameter;
import com.github.xiaoymin.knife4j.annotations.DynamicResponseParameters;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import com.neu.common.annotation.Log;
import com.neu.common.core.controller.BaseController;
import com.neu.common.core.domain.AjaxResult;
import com.neu.common.enums.BusinessType;
import ${packageName}.domain.${ClassName};
import ${packageName}.service.I${ClassName}Service;
import com.neu.common.utils.poi.ExcelUtil;
#if($table.crud || $table.sub)
import com.neu.common.core.page.TableDataInfo;
#elseif($table.tree)
#end
/**
* ${functionName}Controller
*
* @author ${author}
* @date ${datetime}
*/
@Api(tags = {"${functionName}"})
@RestController
@RequestMapping("/${moduleName}/${businessName}")
public class ${ClassName}Controller extends BaseController
{
@Autowired
private I${ClassName}Service ${className}Service;
/**
* 查询${functionName}列表
*/
@GetMapping("/list")
#if($table.crud || $table.sub)
@ApiOperation("查询${functionName}列表")
@DynamicResponseParameters(properties = {
@DynamicParameter(name = "total", value = "总记录数"),
@DynamicParameter(name = "code", value = "状态码200正确其他错误"),
@DynamicParameter(name = "rows", value = "返回业务数据(数组类型)", dataTypeClass = ${ClassName}.class),
@DynamicParameter(name = "msg", value = "返回消息内容")
})
public TableDataInfo list(${ClassName} ${className})
{
startPage();
List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
return getDataTable(list);
}
#elseif($table.tree)
@ApiOperation("查询${functionName}列表")
@DynamicResponseParameters(properties = {
@DynamicParameter(name = "code", value = "状态码200正确其他错误"),
@DynamicParameter(name = "data", value = "返回业务数据(数组类型)", dataTypeClass = ${ClassName}.class),
@DynamicParameter(name = "msg", value = "返回消息内容")
})
public AjaxResult list(${ClassName} ${className})
{
List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
return AjaxResult.success(list);
}
#end
/**
* 导出${functionName}列表
*/
@ApiOperation("导出${functionName}列表")
@DynamicResponseParameters(properties = {
@DynamicParameter(name = "code", value = "状态码200正确其他错误"),
@DynamicParameter(name = "msg", value = "文件名")
})
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')")
@Log(title = "${functionName}", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(${ClassName} ${className})
{
List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class);
return util.exportExcel(list, "${businessName}");
}
/**
* 获取${functionName}详细信息
*/
@ApiOperation("获取${functionName}详细信息")
@DynamicResponseParameters(properties = {
@DynamicParameter(name = "code", value = "状态码200正确其他错误"),
@DynamicParameter(name = "data", value = "返回业务数据", dataTypeClass = ${ClassName}.class),
@DynamicParameter(name = "msg", value = "返回消息内容")
})
@GetMapping(value = "/{${pkColumn.javaField}}")
public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField})
{
return AjaxResult.success(${className}Service.select${ClassName}ById(${pkColumn.javaField}));
}
/**
* 新增${functionName}
*/
@ApiOperation("新增${functionName}")
@DynamicResponseParameters(properties = {
@DynamicParameter(name = "code", value = "状态码200正确其他错误"),
@DynamicParameter(name = "msg", value = "返回消息内容")
})
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')")
@Log(title = "${functionName}", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody ${ClassName} ${className})
{
return toAjax(${className}Service.insert${ClassName}(${className}));
}
/**
* 修改${functionName}
*/
@ApiOperation("修改${functionName}")
@DynamicResponseParameters(properties = {
@DynamicParameter(name = "code", value = "状态码200正确其他错误"),
@DynamicParameter(name = "msg", value = "返回消息内容")
})
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')")
@Log(title = "${functionName}", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody ${ClassName} ${className})
{
return toAjax(${className}Service.update${ClassName}(${className}));
}
/**
* 删除${functionName}
*/
@ApiOperation("删除${functionName}")
@DynamicResponseParameters(properties = {
@DynamicParameter(name = "code", value = "状态码200正确其他错误"),
@DynamicParameter(name = "msg", value = "返回消息内容")
})
@PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')")
@Log(title = "${functionName}", businessType = BusinessType.DELETE)
@DeleteMapping("/{${pkColumn.javaField}s}")
public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s)
{
return toAjax(${className}Service.delete${ClassName}ByIds(${pkColumn.javaField}s));
}
}