From 7f9d51c0a74e0e64ced9adc45f97e0f284d30cd2 Mon Sep 17 00:00:00 2001 From: "382696293@qq.com" <382696293@qq.com> Date: Tue, 23 Jan 2024 17:02:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F-=E6=89=8B=E5=8A=A8?= =?UTF-8?q?=E7=BB=91=E5=AE=9A=E4=BB=AA=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxInstrumentController.java | 63 ++++++++++++++----- .../service/IWxInstrumentService.java | 2 +- .../service/impl/WxInstrumentServiceImpl.java | 4 +- 3 files changed, 51 insertions(+), 18 deletions(-) diff --git a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/controller/WxInstrumentController.java b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/controller/WxInstrumentController.java index 423524c..44d6898 100644 --- a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/controller/WxInstrumentController.java +++ b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/controller/WxInstrumentController.java @@ -1,12 +1,18 @@ package com.flossom.miniProgram.controller; +import com.flossom.common.core.constant.Constants; import com.flossom.common.core.domain.R; +import com.flossom.common.core.domain.SysFile; +import com.flossom.common.core.exception.ServiceException; import com.flossom.common.core.web.controller.BaseController; import com.flossom.miniProgram.service.IWxInstrumentService; +import com.flossom.system.api.RemoteFileService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; /** * 仪器列Controller @@ -21,6 +27,47 @@ public class WxInstrumentController extends BaseController { @Autowired private IWxInstrumentService wxInstrumentService; + @Autowired + private RemoteFileService remoteFileService; + + /** + * 用户、序列号与仪器绑定 + */ + @GetMapping(value = "/binding") + public R binding(@NotBlank(message = "序列号不能为空") @RequestParam("serial") String serial) { + wxInstrumentService.binding(serial, null); + return R.ok(); + } + + /** + * 换绑 + */ + @GetMapping(value = "/exchangeBinding") + public R exchangeBinding(@NotBlank(message = "序列号不能为空") @RequestParam("serial") String serial) { + wxInstrumentService.exchangeBinding(serial); + return R.ok(); + } + + /** + * 手动输入序列号绑定仪器 + * + * @return + */ + @PostMapping("/manualCodeBinding") + public R manualCodeBinding(@NotNull(message = "请上传序列号图片") @RequestParam(value = "file") MultipartFile file, + @NotBlank(message = "请输入序列号") String serial) { + String serialImage = ""; + if (file != null) { + R result = remoteFileService.upload(file); + if (result.getCode() != Constants.SUCCESS) { + logger.error("上传序列号图片失败"); + throw new ServiceException("上传序列号图片失败"); + } + serialImage = result.getData().getUrl(); + } + wxInstrumentService.binding(serial, serialImage); + return R.ok(); + } /** * 获取已绑定的仪器列表 @@ -48,23 +95,7 @@ public class WxInstrumentController extends BaseController { return R.ok(wxInstrumentService.getInstrumentInfoBySerial(serial)); } - /** - * 用户、序列号与仪器绑定 - */ - @GetMapping(value = "/binding") - public R binding(@NotBlank(message = "序列号不能为空") @RequestParam("serial") String serial) { - wxInstrumentService.binding(serial); - return R.ok(); - } - /** - * 换绑 - */ - @GetMapping(value = "/exchangeBinding") - public R exchangeBinding(@NotBlank(message = "序列号不能为空") @RequestParam("serial") String serial) { - wxInstrumentService.exchangeBinding(serial); - return R.ok(); - } } diff --git a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/IWxInstrumentService.java b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/IWxInstrumentService.java index d99f26d..c12514d 100644 --- a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/IWxInstrumentService.java +++ b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/IWxInstrumentService.java @@ -14,7 +14,7 @@ import java.util.List; public interface IWxInstrumentService { WxInstrumentSerial getInstrumentInfoBySerial(String serial); - void binding(String serial); + void binding(String serial, String serialImage); void exchangeBinding(String serial); diff --git a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxInstrumentServiceImpl.java b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxInstrumentServiceImpl.java index c5fa8cf..11e9d74 100644 --- a/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxInstrumentServiceImpl.java +++ b/flossom-modules/flossom-mini-program/src/main/java/com/flossom/miniProgram/service/impl/WxInstrumentServiceImpl.java @@ -73,7 +73,7 @@ public class WxInstrumentServiceImpl implements IWxInstrumentService { @Override @Transactional - public void binding(String serial) { + public void binding(String serial, String serialImage) { WxUserMember wxUserMember = SecurityUtils.getLoginUser().getWxUserMember(); /* 1、获取序列号信息 */ WxInstrumentSerial wxInstrumentSerial = getInstrumentInfoBySerial(serial); @@ -130,6 +130,7 @@ public class WxInstrumentServiceImpl implements IWxInstrumentService { WxUserInstrument saveEntity = new WxUserInstrument(); saveEntity.setUserId(wxUserMember.getId()); saveEntity.setSerial(serial); + saveEntity.setSerialImage(serialImage); saveEntity.setInstrumentId(wxInstrumentSerial.getInstrumentId()); saveEntity.setInstrumentName(wxInstrumentSerial.getInstrumentName()); saveEntity.setGuarantee(wxInstrument.getGuarantee()); @@ -156,6 +157,7 @@ public class WxInstrumentServiceImpl implements IWxInstrumentService { wxUserInstrumentLog.setUserInstrumentId(saveEntity.getId()); wxUserInstrumentLog.setUserId(wxUserMember.getId()); wxUserInstrumentLog.setSerial(serial); + wxUserInstrumentLog.setSerialImage(saveEntity.getSerialImage()); wxUserInstrumentLog.setInstrumentId(wxInstrument.getId()); wxUserInstrumentLog.setInstrumentName(wxInstrument.getName()); wxUserInstrumentLog.setGuarantee(wxInstrument.getGuarantee());