diff --git a/jsowell-admin/src/main/java/com/jsowell/api/uniapp/Jump2Controller.java b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/Jump2Controller.java new file mode 100644 index 000000000..f55d27594 --- /dev/null +++ b/jsowell-admin/src/main/java/com/jsowell/api/uniapp/Jump2Controller.java @@ -0,0 +1,123 @@ +package com.jsowell.api.uniapp; + +import com.alibaba.fastjson2.JSONObject; +import com.jsowell.common.annotation.Anonymous; +import com.jsowell.common.core.controller.BaseController; +import com.jsowell.common.core.domain.AjaxResult; +import com.jsowell.common.enums.ykc.ReturnCodeEnum; +import com.jsowell.common.exception.BusinessException; +import com.jsowell.common.response.RestApiResponse; +import com.jsowell.common.util.file.AliyunOssUploadUtils; +import com.jsowell.common.util.file.FileUtils; +import com.jsowell.pile.service.IPileBasicInfoService; +import com.jsowell.pile.vo.uniapp.GroundLockInfoVO; +import com.jsowell.pile.vo.uniapp.PileConnectorVO; +import com.jsowell.service.PileService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; + + +@Anonymous +@RestController +@RequestMapping("/app-xcx-h5/xixiao") +public class Jump2Controller extends BaseController { + + @Autowired + private PileService pileService; + + @Autowired + private IPileBasicInfoService pileBasicInfoService; + + /** + * 查询充电桩详情 + * http://localhost:8080/app-xcx-h5/pile/pileDetail/{pileSn} + */ + @GetMapping("/pile/pileDetail/{pileSn}") + public RestApiResponse getPileDetail(HttpServletRequest request, @PathVariable("pileSn") String pileSn) { + logger.info("app-xcx-h5查询充电桩详情 param:{}", pileSn); + logger.info("User-Agent:{}", request.getHeader("user-agent")); + RestApiResponse response = null; + try { + PileConnectorVO vo = pileService.getPileDetailByPileSn(pileSn); + response = new RestApiResponse<>(vo); + } catch (BusinessException e) { + logger.warn("app-xcx-h5查询充电桩详情 warn", e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + } catch (Exception e) { + logger.error("app-xcx-h5查询充电桩详情 error", e); + response = new RestApiResponse<>(ReturnCodeEnum.CODE_GET_PILE_DETAIL_ERROR); + } + logger.info("app-xcx-h5查询充电桩详情 result:{}", JSONObject.toJSONString(response)); + return response; + } + + /** + * 查询充电枪口详情 + * http://localhost:8080/app-xcx-h5/pile/connectorDetail/{pileConnectorCode} + */ + @GetMapping("/pile/connectorDetail/{pileConnectorCode}") + public RestApiResponse getConnectorDetail(HttpServletRequest request, @PathVariable("pileConnectorCode") String pileConnectorCode) { + logger.info("app-xcx-h5查询充电枪口详情 param:{}", pileConnectorCode); + logger.info("User-Agent:{}", request.getHeader("user-agent")); + RestApiResponse response = null; + try { + PileConnectorVO vo = pileService.getConnectorDetail(pileConnectorCode); + response = new RestApiResponse<>(vo); + } catch (BusinessException e) { + logger.warn("app-xcx-h5查询充电枪口详情 warn param:{}", pileConnectorCode, e); + response = new RestApiResponse<>(e.getCode(), e.getMessage()); + } catch (Exception e) { + logger.error("app-xcx-h5查询充电枪口详情 error param:{}", pileConnectorCode, e); + response = new RestApiResponse<>(ReturnCodeEnum.CODE_GET_PILE_DETAIL_ERROR); + } + logger.info("app-xcx-h5查询充电枪口详情 param:{} result:{}", pileConnectorCode, JSONObject.toJSONString(response)); + return response; + } + + /** + * 上传到阿里云oss + * http://localhost:8080/app-xcx-h5/uploadOSS + * @param file + * @return + */ + @CrossOrigin + @PostMapping("/uploadOSS") + public AjaxResult uploadFileOSS(MultipartFile file) { + try { + String url = AliyunOssUploadUtils.uploadFile(file); + AjaxResult ajax = AjaxResult.success(); + ajax.put("url", url); + ajax.put("fileName", FileUtils.getName(url)); + ajax.put("newFileName", FileUtils.getName(url)); + ajax.put("originalFilename", file.getOriginalFilename()); + return ajax; + }catch (Exception e){ + return AjaxResult.error(e.getMessage()); + } + } + + /** + * 获取地锁列表信息 + * http://localhost:8080/app-xcx-h5/getGroundLockInfo/{stationId} + * @param stationId + * @return + */ + @GetMapping("/getGroundLockInfo/{stationId}") + public RestApiResponse getGroundLockInfo(@PathVariable("stationId") String stationId) { + logger.info("获取地锁列表信息 params:{}", stationId); + RestApiResponse response = null; + try { + List list = pileBasicInfoService.getGroundLockInfo(stationId); + response = new RestApiResponse<>(list); + } catch (Exception e) { + logger.error("获取地锁列表信息 error, ", e); + response = new RestApiResponse<>(e); + } + logger.info("获取地锁列表信息 result:{}", response); + return response; + } +}