From 6fb14149d62199cfcc0448c82eb2f51f9c5181de Mon Sep 17 00:00:00 2001
From: luliqiang <kidgrow>
Date: Thu, 31 Dec 2020 16:55:30 +0800
Subject: [PATCH] Merge branch 'dev' of http://192.168.2.240:7070/r/kidgrow-microservices-platform into parter

---
 kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java |   73 +++++++++++++++++++++++++-----------
 1 files changed, 51 insertions(+), 22 deletions(-)

diff --git a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java
index 07ebabc..32e9fb3 100644
--- a/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java
+++ b/kidgrow-business/kidgrow-opration-center/kidgrow-opration-center-server/src/main/java/com/kidgrow/oprationcenter/controller/ScreeningOrganizationInfoController.java
@@ -20,6 +20,7 @@
 import org.apache.commons.collections4.MapUtils;
 import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.io.ClassPathResource;
 import org.springframework.validation.BindingResult;
 import org.springframework.validation.ObjectError;
 import org.springframework.web.bind.annotation.*;
@@ -28,7 +29,10 @@
 
 import javax.servlet.http.HttpServletResponse;
 import javax.validation.Valid;
-import java.io.*;
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
@@ -106,15 +110,16 @@
             }
             return ResultBody.failed().msg(errMsg.toString());
         } else {
-            if (organizationInfo.getId() == null) {
-                //新增机构增加关注二维码
-                String url = createQr(String.valueOf(organizationInfo.getId()));
-                if (StringUtils.isNotBlank(url)) {
-                    organizationInfo.setQrCode(url);
-                }
-            }
             boolean v = organizationInfoService.saveOrUpdate(organizationInfo);
             if (v) {
+                if (StringUtils.isBlank(organizationInfo.getQrCode())) {
+                    //新增机构增加关注二维码
+                    String url = createQr(String.valueOf(organizationInfo.getId()));
+                    if (StringUtils.isNotBlank(url)) {
+                        organizationInfo.setQrCode(url);
+                        organizationInfoService.updateById(organizationInfo);
+                    }
+                }
                 return ResultBody.ok().data(organizationInfo).msg("保存成功");
             } else {
                 return ResultBody.failed().msg("保存失败");
@@ -124,7 +129,7 @@
 
     private String createQr(String id) {
         String url = "";
-        String str = "{\"action_name\": \"QR_LIMIT_STR_SCENE\", \"action_info\": {\"scene\": {\"scene_str\": \"kagscreening_\" " + id + "}}}";
+        String str = "{\"action_name\": \"QR_LIMIT_STR_SCENE\", \"action_info\": {\"scene\": {\"scene_str\": \"kagscreening_" + id + "\"}}}";
 
         String token = redisUtils.get("Wechat:Token:KagReceiveToken").toString();
         String result = HttpRequest.post("https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=" + token)
@@ -219,21 +224,24 @@
                 List<ScreeningOrganizationExcel> list = ExcelUtil.importExcel(excel, 0, 1, ScreeningOrganizationExcel.class);
                 rowNum = list.size();
                 if (rowNum > 0) {
-                    List<ScreeningOrganizationInfo> users = new ArrayList<>(rowNum);
                     String[] area = areaCode.split("#");
 
                     list.forEach(u -> {
-                        ScreeningOrganizationInfo user = new ScreeningOrganizationInfo();
-                        BeanUtil.copyProperties(u, user);
-                        user.setSourceHospitalName(hospitalName);
-                        user.setSourceHospitalId(Long.parseLong(hospitalId));
-                        user.setProvince(area[0]);
-                        user.setCity(area[1]);
-                        user.setArea(area[2]);
-                        user.setAreaCode(areaName);
-                        users.add(user);
+                        ScreeningOrganizationInfo organizationInfo = new ScreeningOrganizationInfo();
+                        BeanUtil.copyProperties(u, organizationInfo);
+                        organizationInfo.setSourceHospitalName(hospitalName);
+                        organizationInfo.setSourceHospitalId(Long.parseLong(hospitalId));
+                        organizationInfo.setProvince(area[0]);
+                        organizationInfo.setCity(area[1]);
+                        organizationInfo.setArea(area[2]);
+                        organizationInfo.setAreaCode(areaName);
+                        organizationInfoService.saveOrUpdate(organizationInfo);
+                        if (StringUtils.isBlank(organizationInfo.getQrCode())) {
+                            organizationInfo.setQrCode(createQr(String.valueOf(organizationInfo.getId())));
+                            organizationInfoService.updateById(organizationInfo);
+                        }
                     });
-                    organizationInfoService.saveBatch(users);
+
                 }
             }
         } catch (Exception e) {
@@ -249,7 +257,11 @@
     @PostMapping("/export")
     public void export(HttpServletResponse response) {
         try {
-            InputStream inStream =this.getClass().getResourceAsStream("/static/pages/template/机构导入模板.xlsx");
+            InputStream inStream = null;
+            ClassPathResource resource = new ClassPathResource(File.separator + "template" + File.separator + "机构导入模板.xlsx");
+            if (resource.exists()) {
+                inStream = resource.getInputStream();
+            }
             // 设置输出的格式
             response.reset();
             response.setContentType("bin");
@@ -274,9 +286,26 @@
     @PostMapping("/getOrganizationListByHospitalId")
     public ResultBody getOrganizationListByHospitalId(@RequestBody String id) {
         List<ScreeningOrganizationInfo> byHospitalId = organizationInfoService.findByHospitalId(Long.valueOf(id));
-        if(byHospitalId != null && byHospitalId.size() > 0){
+        if (byHospitalId != null && byHospitalId.size() > 0) {
             return ResultBody.ok().data(byHospitalId).msg("查询成功");
         }
         return ResultBody.failed().msg("查询失败");
     }
+
+    /**
+     * 关键字查询列表
+     */
+    @ApiOperation(value = "关键字查询列表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "page", value = "分页起始位置", required = true, dataType = "Integer"),
+            @ApiImplicitParam(name = "limit", value = "分页结束位置", required = true, dataType = "Integer")
+    })
+    @PostMapping(value = "/listByKeyWord")
+    public PageResult<ScreeningOrganizationInfo> listByKeyWord(@RequestParam Map<String, Object> params) {
+        if (params.size() == 0) {
+            params.put("page", 1);
+            params.put("limit", 10);
+        }
+        return organizationInfoService.findByKeyWord(params);
+    }
 }

--
Gitblit v1.8.0