package com.simple.controller; import com.github.pagehelper.PageInfo; import com.simple.common.Result; import com.simple.common.ResultData; import com.simple.domain.po.WxMsg; import com.simple.service.WxMsgService; import com.simple.utils.Constant; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.apache.commons.io.IOUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.FileOutputStream; import java.util.UUID; @RestController @RequestMapping("wxMsg") public class WxMsgController extends BaseController { private final Logger logger = LoggerFactory.getLogger(this.getClass()); @Autowired private WxMsgService wxMsgService; @ApiOperation("分页列表接口") @GetMapping("list") @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) public ResultData list(@ModelAttribute WxMsg wxMsg, Integer pageNum, Integer pageSize) { if (null == wxMsg) wxMsg = new WxMsg(); wxMsg.setTenantId(getTenantId()); final PageInfo page = wxMsgService.listAsPage(wxMsg, pageNum, pageSize); return new ResultData(page); } @ApiOperation("新增接口") @PostMapping("add") public ResultData add(@RequestBody WxMsg wxMsg) { //Assert.notNull(wxMsg.getName(), "角色名不能为空"); //Assert.isTrue(!checkUnique(sysRole.getName(), null), "重复的角色名"); wxMsg.setTenantId(getTenantId()); wxMsgService.saveOrUpdate(wxMsg); return new ResultData(); } @ApiOperation("根据id更新接口") @PostMapping("update") public ResultData update(@RequestBody WxMsg wxMsg) { wxMsgService.saveOrUpdate(wxMsg); return new ResultData(); } @ApiOperation("根据id删除接口") @GetMapping("/del") @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) public ResultData delete(Long id) { wxMsgService.deleteById(id); return new ResultData(Result.SUCCESS, "删除成功", null); } @ApiOperation("根据id查询接口") @GetMapping("/findById") @ApiImplicitParam(name = "id", value = "id", dataType = "Long", paramType = "query", required = true) public ResultData findById(Long id) { return new ResultData(Result.SUCCESS, "查询成功", wxMsgService.getById(id)); } @RequestMapping("/excleupload") public ResultData excleupload(@RequestParam("file") MultipartFile file) { if (file.isEmpty()) { return new ResultData(Result.SUCCESS, "上传文件不能为空"); } String filename = UUID.randomUUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); File path = new File(Constant.fileDirectory); if (!path.exists()) { path.mkdirs(); } String filepath = Constant.fileDirectory + File.separator + filename; try { FileOutputStream out = new FileOutputStream(new File(filepath)); IOUtils.write(file.getBytes(), out); IOUtils.closeQuietly(out); } catch (Exception e) { return new ResultData(Result.ERROR, "上传失败"); } return new ResultData(Result.SUCCESS, "上传成功", filepath); } }