package com.yuanchu.mom.controller; import cn.hutool.core.lang.UUID; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.annotation.ValueAuth; import com.yuanchu.mom.pojo.Device; import com.yuanchu.mom.service.DeviceService; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletRequest; import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.Map; /** * 设备(DeviceController)表控制层 */ @Api(tags = "设备") @AllArgsConstructor @RestController @RequestMapping("/deviceScope") public class DeviceController { private DeviceService deviceService; @ApiOperation(value = "查询设备详情列表") @PostMapping("/selectDeviceParameter") public Result selectDeviceParameter(@RequestBody Map data) throws Exception { Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); Device itemParameter = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), Device.class); return Result.success(deviceService.selectDeviceParameter(page, itemParameter)); } @ApiOperation(value = "添加设备详情参数") @PostMapping("/addDeviceParameter") public Result addDeviceParameter(@RequestBody Device itemParameter) { return Result.success(deviceService.addDeviceParameter(itemParameter)); } @ApiOperation(value = "删除设备详情参数") @PostMapping("/delDeviceParameter") public Result delDeviceParameter(Integer id) { return Result.success(deviceService.delDeviceParameter(id)); } @ApiOperation(value = "修改设备详情参数") @PostMapping("/upDeviceParameter") public Result upDeviceParameter(@RequestBody Device itemParameter) { return Result.success(deviceService.upDeviceParameter(itemParameter)); } @ApiOperation(value = "获取设备总览") @GetMapping("/selectEquipmentOverview") @ValueAuth public Result selectEquipmentOverview() { return Result.success(deviceService.selectEquipmentOverview()); } @ApiOperation(value = "获取被授权人") @GetMapping("/authorizedPerson") @ValueAuth public Result authorizedPerson() { return Result.success(deviceService.authorizedPerson()); } @ApiOperation(value = "搜索") @GetMapping("/search") @ValueAuth public Result search(Integer status, String deviceName, String specificationModel, String largeCategory) { return Result.success(deviceService.search(status, deviceName, specificationModel, largeCategory)); } //图片上传 @ApiOperation(value = "图片上传") @RequestMapping(value = "/uploadFile", method = RequestMethod.POST) public Result uploadFile(MultipartFile file, HttpServletRequest request) throws IOException { //获取文件名称 HashMap list = new HashMap<>(); String filename = file.getOriginalFilename(); String s = filename.substring(filename.lastIndexOf("."), filename.length()); System.out.println(filename); //获取真实路径 String realPath = request.getServletContext().getRealPath("/Users/gaoaoy/webapp/images"); //创建文件 File file1 = new File(realPath); if (!file1.exists()) { file1.mkdirs(); } file.transferTo(new File(file1 + "/" + filename)); String ss= filename; UUID uuid = UUID.randomUUID(); ss = uuid.toString() + s; String ful = "/Users/gaoaoy/webapp/images" + ss; System.out.println(file1); list.put("url", ful); list.put("name", filename); return Result.success(list); } @ApiOperation(value = "获取设备负责人") @GetMapping("/selectDevicePrincipal") @ValueAuth public Result selectDevicePrincipal() { return Result.success(deviceService.selectDevicePrincipal()); } }