|
@@ -1,9 +1,10 @@
|
|
|
package com.ruoyi.web.controller.info;
|
|
|
|
|
|
import java.util.Arrays;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
import javax.validation.constraints.NotEmpty;
|
|
|
import javax.validation.constraints.NotNull;
|
|
|
|
|
@@ -26,14 +27,19 @@ import com.ruoyi.common.core.validate.EditGroup;
|
|
|
import com.ruoyi.common.core.validate.QueryGroup;
|
|
|
import com.ruoyi.common.enums.BusinessType;
|
|
|
import com.ruoyi.common.utils.BeanCopyUtils;
|
|
|
-import com.ruoyi.common.utils.poi.ExcelUtil;
|
|
|
+import com.ruoyi.common.utils.StringUtils;
|
|
|
import com.ruoyi.info.hospital.domain.bo.HospitalBo;
|
|
|
+import com.ruoyi.info.hospital.domain.bo.HospitalQrCodeBo;
|
|
|
import com.ruoyi.info.hospital.domain.bo.HospitalRackUpdateBo;
|
|
|
import com.ruoyi.info.hospital.domain.vo.HospitalSimpleInfoVo;
|
|
|
import com.ruoyi.info.hospital.domain.vo.HospitalVo;
|
|
|
import com.ruoyi.info.hospital.service.IHospitalService;
|
|
|
+import com.ruoyi.system.domain.SysOss;
|
|
|
+import com.ruoyi.system.service.ISysOssService;
|
|
|
+import com.ruoyi.weixin.service.WxMinService;
|
|
|
|
|
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
|
|
+import cn.hutool.core.util.IdUtil;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
@@ -54,6 +60,10 @@ public class HospitalController extends BaseController {
|
|
|
|
|
|
private final IHospitalService iHospitalService;
|
|
|
|
|
|
+ private final WxMinService wxMinService;
|
|
|
+
|
|
|
+ private final ISysOssService iSysOssService;
|
|
|
+
|
|
|
/**
|
|
|
* 分页查询医院信息列表
|
|
|
*/
|
|
@@ -137,6 +147,38 @@ public class HospitalController extends BaseController {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ @ApiOperation("获取二维码")
|
|
|
+ @PostMapping("/getQrCode")
|
|
|
+ public R<Map<String,String>> getQrCode(@RequestBody HospitalQrCodeBo bo) {
|
|
|
+
|
|
|
+ HospitalVo hospitalVo = iHospitalService.queryById(bo.getHospitalId());
|
|
|
+ if(StringUtils.isNotBlank(hospitalVo.getQrCodeUrl())) {
|
|
|
+ Map<String,String> map = new HashMap<>();
|
|
|
+ map.put("url", hospitalVo.getQrCodeUrl());
|
|
|
+ return R.ok(map);
|
|
|
+ }
|
|
|
+
|
|
|
+ String t = getSceneType(bo);
|
|
|
+ String scene = String.format("t=%s&id=%s", t, bo.getHospitalId());
|
|
|
+ byte[] bytes = wxMinService.getWxMinCode(bo.getPath(), scene);
|
|
|
+ String filename = IdUtil.fastSimpleUUID() + ".jpg";
|
|
|
+ SysOss sysOss = iSysOssService.localUpload(bytes, filename);
|
|
|
+
|
|
|
+ iHospitalService.updateQrCodeUrl(bo.getHospitalId(), sysOss.getUrl());
|
|
|
+ Map<String,String> map = new HashMap<>();
|
|
|
+ map.put("url",sysOss.getUrl());
|
|
|
+ return R.ok(map);
|
|
|
+ }
|
|
|
+
|
|
|
+ private String getSceneType(HospitalQrCodeBo bo) {
|
|
|
+ switch (bo.getSceneType()){
|
|
|
+ case SHOP_INDEX:
|
|
|
+ return "i";
|
|
|
+ default:
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
|
|
|
|