From 77bd1cd5a821e8be666c65b28db11d1bbc8ca9ea Mon Sep 17 00:00:00 2001
From: linjj <850658129@qq.com>
Date: Mon, 14 Aug 2023 13:55:17 +0800
Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=89=E6=96=B9=E6=8E=A5=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 7 +
power-admin/pom.xml | 58 +-
.../com/manage/config/WebServiceConfig.java | 3 +
.../com/manage/controller/FontController.java | 1032 ++--
.../manage/controller/LoginController.java | 16 +-
.../com/manage/controller/UserController.java | 7 +
.../main/resources/config/config.properties | 18 +-
.../src/main/resources/config/jdbc.properties | 15 +-
.../main/webapp/WEB-INF/jspf/webSocket.jspf | 13 +-
.../WEB-INF/views/gatewayDir/gatewayIndex.jsp | 647 +--
.../webapp/WEB-INF/views/loginDir/index.jsp | 7 +-
.../webapp/WEB-INF/views/loginDir/login.jsp | 180 +-
.../WEB-INF/views/loginDir/xmzslogin.jsp | 233 +
.../views/userDir/XMZSYYupdatePassword.jsp | 40 +
.../dist/css/skins/_all-skins.min.css | 2 +-
.../webapp/static/css/gatewayPageStyles.css | 4894 +----------------
.../main/webapp/static/img/login/login_bg.png | Bin 0 -> 355667 bytes
.../login/厦门中山医院修改密码.png | Bin 0 -> 17810 bytes
.../src/main/webapp/static/js/getewayIndex.js | 54 +-
.../src/main/webapp/static/js/login.js | 108 +-
power-admin/src/main/webapp/static/js/md5.js | 256 +
.../webapp/static/js/zsxmHospitalLogin.js | 124 +
power-dao/pom.xml | 5 +
.../manage/dao/Power_Hospital_FlagMapper.java | 18 +
.../java/com/manage/dao/Power_UserMapper.java | 4 +
.../java/com/manage/entity/Power_User.java | 1 +
.../java/com/manage/vo/PowerHospitalVo.java | 41 +
.../main/java/com/manage/vo/Power_UserVo.java | 13 +
.../mapper/Power_Hospital_FlagMapper.xml | 10 +
.../resources/mapper/Power_Sys_DictMapper.xml | 4 +-
.../resources/mapper/Power_UserMapper.xml | 64 +-
power-foundaton/pom.xml | 15 +
.../main/java/com/manage/util/HttpUtil.java | 167 +
.../src/main/java/com/manage/util/Msg.java | 22 +-
power-service/pom.xml | 5 +
.../com/manage/service/Power_UserService.java | 12 +
.../manage/service/ipml/PowerServiceImpl.java | 17 +-
.../service/ipml/Power_UserServiceImpl.java | 90 +-
.../manage/service/webSocket/StartFilter.java | 2 +-
39 files changed, 2436 insertions(+), 5768 deletions(-)
create mode 100644 power-admin/src/main/webapp/WEB-INF/views/loginDir/xmzslogin.jsp
create mode 100644 power-admin/src/main/webapp/WEB-INF/views/userDir/XMZSYYupdatePassword.jsp
create mode 100644 power-admin/src/main/webapp/static/img/login/login_bg.png
create mode 100644 power-admin/src/main/webapp/static/img/login/厦门中山医院修改密码.png
create mode 100644 power-admin/src/main/webapp/static/js/md5.js
create mode 100644 power-admin/src/main/webapp/static/js/zsxmHospitalLogin.js
create mode 100644 power-dao/src/main/java/com/manage/dao/Power_Hospital_FlagMapper.java
create mode 100644 power-dao/src/main/java/com/manage/vo/PowerHospitalVo.java
create mode 100644 power-dao/src/main/resources/mapper/Power_Hospital_FlagMapper.xml
create mode 100644 power-foundaton/src/main/java/com/manage/util/HttpUtil.java
diff --git a/pom.xml b/pom.xml
index 5e7bc4b..2f9ec7e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -226,6 +226,13 @@
+
+
+ com.github.anish7kumar
+ XML_JSON
+ 1.0.1
+
+
diff --git a/power-admin/pom.xml b/power-admin/pom.xml
index 03938c3..680d2e8 100644
--- a/power-admin/pom.xml
+++ b/power-admin/pom.xml
@@ -16,8 +16,14 @@
UTF-8
UTF-8
+ 1.2.5
+
+ com.docus
+ docus-soap-api-client
+ 1.0-SNAPSHOT
+
com.manage
power-dao
@@ -30,6 +36,18 @@
1.0-SNAPSHOT
+
+ javax.inject
+ javax.inject
+ 1
+
+
+
+ com.alibaba
+ fastjson
+ 1.2.50
+
+
com.manage
power-foundaton
@@ -56,6 +74,11 @@
org.mybatis
mybatis-spring
+
+ org.apache.httpcomponents
+ httpclient
+ 4.3.5
+
com.alibaba
@@ -107,6 +130,11 @@
org.apache.cxf
cxf-rt-frontend-jaxws
+
+ org.apache.shiro
+ shiro-spring
+ ${shiro.version}
+
org.apache.commons
@@ -122,17 +150,45 @@
commons-fileupload
commons-fileupload
+
+
+
+ org.apache.httpcomponents
+ httpclient
+ 4.5.2
+
+
+
+ org.apache.httpcomponents
+ httpcore
+ 4.4.5
+
+
+
+
org.apache.logging.log4j
log4j-web
+
+
+
+ com.google.code.gson
+ gson
+ 1.7.2
+
org.apache.logging.log4j
log4j-slf4j-impl
+
+ com.github.anish7kumar
+ XML_JSON
+ 1.0.1
+
power
@@ -155,7 +211,7 @@
2.2
/power
- 8080
+ 8081
UTF-8
diff --git a/power-admin/src/main/java/com/manage/config/WebServiceConfig.java b/power-admin/src/main/java/com/manage/config/WebServiceConfig.java
index 0b7b30a..fa61b40 100644
--- a/power-admin/src/main/java/com/manage/config/WebServiceConfig.java
+++ b/power-admin/src/main/java/com/manage/config/WebServiceConfig.java
@@ -1,5 +1,7 @@
package com.manage.config;
+
+import com.docus.soap.api.EnableSoapAPIClient;
import com.manage.interfaces.webservice.PowerWebService;
import com.manage.interfaces.webservice.impl.PowerWebServiceImpl;
import org.apache.cxf.Bus;
@@ -12,6 +14,7 @@ import javax.xml.ws.Endpoint;
@Configuration
+@EnableSoapAPIClient
public class WebServiceConfig {
@Bean(name = Bus.DEFAULT_BUS_ID)
diff --git a/power-admin/src/main/java/com/manage/controller/FontController.java b/power-admin/src/main/java/com/manage/controller/FontController.java
index 0fcb599..2974764 100644
--- a/power-admin/src/main/java/com/manage/controller/FontController.java
+++ b/power-admin/src/main/java/com/manage/controller/FontController.java
@@ -1,9 +1,18 @@
package com.manage.controller;
-import com.alibaba.fastjson.JSON;
+
import com.alibaba.fastjson.JSONObject;
+import com.docus.soap.api.SoapAPISettings;
+import com.docus.soap.api.request.zsyy.GetLoginInfoRequest;
+import com.docus.soap.api.request.zsyy.GetQRCodeBySysRequest;
+import com.docus.soap.api.request.zsyy.GetQueryQRCodeRequest;
+import com.docus.soap.api.response.zsyy.GetLoginInfoResponse;
+import com.docus.soap.api.response.zsyy.GetQRCodeBySysResponse;
+import com.docus.soap.api.response.zsyy.GetQueryQRCodeResponse;
+import com.docus.soap.api.service.XMZSYYQRCodeAPIService;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.manage.dao.Power_NoticeMapper;
+import com.manage.dao.Power_Sys_DictMapper;
import com.manage.dao.Power_UserMapper;
import com.manage.encrypt.Base64;
import com.manage.encrypt.MD5;
@@ -11,14 +20,20 @@ import com.manage.entity.*;
import com.manage.service.*;
import com.manage.service.cache.Cache;
import com.manage.service.cache.CacheManager;
+import com.manage.service.ipml.PageServiceImpl;
import com.manage.service.ipml.Power_NoticeServiceImpl;
import com.manage.service.webSocket.WsPool;
-import com.manage.util.ActionScopeUtils;
-import com.manage.util.DateUtils;
-import com.manage.util.ExceptionPrintUtil;
-import com.manage.util.Msg;
+import com.manage.util.*;
import com.manage.vo.*;
import org.apache.commons.lang3.StringUtils;
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.client.ClientProtocolException;
+import org.apache.http.client.HttpClient;
+import org.apache.http.client.methods.HttpPost;
+import org.apache.http.entity.StringEntity;
+import org.apache.http.impl.client.HttpClients;
+import org.apache.http.util.EntityUtils;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
@@ -28,11 +43,16 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.StringReader;
+import java.io.UnsupportedEncodingException;
+import java.nio.charset.Charset;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -55,6 +75,12 @@ public class FontController {
private String STR_SPLIT;
@Value("${EMRRECORD_URLHEAD}")
private String EMRRECORD_URLHEAD;
+ @Value("${EMRMEDICALRECORD_URLHEAD}")
+ private String EMRMEDICALRECORD_URLHEAD;
+ @Value("${EMRAPPLYCOPY_URLHEAD}")
+ private String EMRAPPLYCOPY_URLHEAD;
+ @Value("${EMRFILES_URLHEAD}")
+ private String EMRFILES_URLHEAD;
@Autowired
private PowerService powerService;
@Autowired
@@ -64,52 +90,324 @@ public class FontController {
@Autowired
private Power_UserMapper userMapper;
@Autowired
+ private Power_UserService powerUserService;
+ @Autowired
private Power_NoticeServiceImpl noticeService;
@Autowired
private Power_UserService userService;
+ @Autowired
+ private Power_NoticeServiceImpl powerNoticeService;
+ @Autowired
+ private PageServiceImpl pageService;
+ @Autowired
+ private Power_Sys_DictMapper sysDictMapper;
+ @Autowired
+ private LogService logService;
@Value("${TOKEN_EXPIRE_TIME}")
private long TOKEN_EXPIRE_TIME;
@Autowired
private Power_MenuService powerMenuService;
@Autowired
private Power_DeptService power_deptService;
+ @Autowired
+ private XMZSYYQRCodeAPIService xmzsyyqrCodeAPIService;
+
+ @Value("${WEBSOCKET_URLHEAD}")
+ private String WEBSOCKET_URLHEAD;
+
+ @Value("${wsdlUrl}")
+ private String wsdlUrl;
+ @Value("${operationName}")
+ private String operationName;
+ @Value("${queryQRCodeUrl}")
+ private String queryQRCodeUrl;
+
+ @Value("${queryQRCodeUrlName}")
+ private String queryQRCodeUrlName;
+ @Value("${getLoginUserInfoName}")
+ private String getLoginUserInfoName;
+
+ @Value("${getLoginUserInfoUrl}")
+ private String getLoginUserInfoUrl;
+
public static Class getUserClass(Object root) {
return null;
}
+
+ /**
+ * @description: 五邑中医院单点登录
+ * @params: ticket
+ * @return: gatewayPage
+ * @author linjj
+ * @date: 2023/4/7 11:50
+ */
+ @RequestMapping(value = "casLogin")
+ public String casLogin(String ticket) {
+ String url = "http://172.16.1.50:34084/casServer/appservice/validateService";
+ String username = sendPost(url, ticket);
+ Power_UserVo user = powerUserService.casLoginUserName(username);
+ if (user != null) {
+ String date = String.valueOf(DateUtils.getDate());
+ String token = Base64.encode(MD5.KL(date));
+ ActionScopeUtils.setSessionAttribute("token", token, Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME)) / 1000);
+
+ //设置用户登录次数缓存
+ SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
+ CacheManager.addloginUserCount(fmt.format(new Date()), user.getUserName());
+ CacheManager.addExcCount("noExc");
+ List list = null;
+ List menuList = new ArrayList<>();
+ Set menus = new LinkedHashSet<>();
+ if (user.getRoleId().equals(0) || user.getRoleId().equals(-100)) {
+ list = powerMenuService.queryAllPowerMenu(null, user.getRoleId());
+ } else {
+ list = powerMenuService.selectUserAndRoleMenuListPower(user.getUserId(), null);
+ }
+ if (null != list && !list.isEmpty()) {
+ for (Power_Menu powerMenu : list) {
+ User_Dept_Menu deptMenu = new User_Dept_Menu();
+ String menuUrl = powerMenu.getMenuUrl();
+ if (StringUtils.isNotBlank(menuUrl)) {
+ BeanUtils.copyProperties(powerMenu, deptMenu);
+ deptMenu.setMethodParent(powerMenu.getParentId());
+ menuList.add(deptMenu);
+ }
+ if (StringUtils.isNotBlank(powerMenu.getMethod())) {
+ menus.add(powerMenu.getMenuUrl());
+ }
+ }
+ }
+ user.setMenuList(menuList);
+ user.setMenus(menus);
+
+ //设置科室
+ StringBuilder powerDepts = new StringBuilder();
+ List powerDeptList = power_deptService.selectByPrimaryKeys(user.getDeptId());
+ for (int j = 0; j < powerDeptList.size(); j++) {
+ if (j < powerDeptList.size() - 1) {
+ powerDepts.append(powerDeptList.get(j).getDeptName()).append(",");
+ } else {
+ powerDepts.append(powerDeptList.get(j).getDeptName());
+ }
+ }
+ user.setRemark(powerDepts.toString());
+
+ //设置进缓存
+ CacheManager.putCache(date, new Cache(date, user, TOKEN_EXPIRE_TIME));
+ ActionScopeUtils.setSessionAttribute("CURRENT_USER", user, Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME)) / 1000);
+ return "redirect:gatewayPage";
+ }
+ return "查无此账号";
+ }
+
+
+ @RequestMapping(value = "gatewayPage")
+ public String register(Model model, HttpServletRequest request, Integer noticeId) {
+ model.addAttribute("EMRMEDICALRECORD_URLHEAD", EMRMEDICALRECORD_URLHEAD);
+
+ model.addAttribute("EMRRECORD_URLHEAD", EMRRECORD_URLHEAD);
+
+ model.addAttribute("EMRAPPLYCOPY_URLHEAD", EMRAPPLYCOPY_URLHEAD);
+
+ model.addAttribute("EMRFILES_URLHEAD", EMRFILES_URLHEAD);
+
+ model.addAttribute("WEBSOCKET_URLHEAD", WEBSOCKET_URLHEAD);
+ model.addAttribute("STR_SPLIT", STR_SPLIT);
+ model.addAttribute("flag", noticeId);
+ //登录成功
+ //插入成功日志
+ Power_UserVo powerUser = (Power_UserVo) request.getSession().getAttribute("CURRENT_USER");
+ Power_Log log = new Power_Log();
+ log.setLogTitle("登录");
+ log.setLogContent("用户登录成功");
+ log.setCreater(powerUser.getUserName());
+ //查询系统权限
+ List sysList = new ArrayList<>();
+ try {
+ logService.insert(log);
+ //修改该通知为已读
+ if (null != noticeId && noticeId != -1) {
+ powerNoticeService.updateNoticeReadFlag(noticeId);
+ CacheManager.addExcCount("noExc");
+ }
+ //查询当前用户
+ Power_UserVo user = (Power_UserVo) request.getSession().getAttribute("CURRENT_USER");
+ if (user.getRoleId() == 0) {
+ sysList = sysDictMapper.selectSysFlagsByUserId(null, null);
+ } else {
+ sysList = sysDictMapper.selectSysFlagsByUserId(user.getUserId(), user.getRoleId());
+ }
+ } catch (Exception e) {
+ ExceptionPrintUtil.printException(e);
+ e.printStackTrace();
+ CacheManager.addExcCount("exc");
+ }
+ int power = 0;
+ int emr_medical_record = 0;
+ int emr_record = 0;
+ int emr_apply_copy = 0;
+ int emr_files = 0;
+ int power1 = 0;
+ int emr_medical_record1 = 0;
+ int emr_record1 = 0;
+ int emr_apply_copy1 = 0;
+ int emr_files1 = 0;
+ if (null != sysList && !sysList.isEmpty()) {
+ //获取权限菜单
+ List menuList = powerUser.getMenuList();
+ if (null != menuList && !menuList.isEmpty()) {
+ for (User_Dept_Menu menu : menuList) {
+ String sysFlag = menu.getSysFlag();
+ if (StringUtils.isNotBlank(sysFlag)) {
+ if ("power".equals(sysFlag)) {
+ power1 = 1;
+ continue;
+ }
+ if ("emr_medical_record".equals(sysFlag)) {
+ emr_medical_record1 = 1;
+ continue;
+ }
+ if ("emr_record".equals(sysFlag)) {
+ emr_record1 = 1;
+ continue;
+ }
+ if ("emr_apply_copy".equals(sysFlag)) {
+ emr_apply_copy1 = 1;
+ continue;
+ }
+ if ("emr_files".equals(sysFlag)) {
+ emr_files1 = 1;
+ continue;
+ }
+ }
+ }
+ }
+ for (Power_Sys_Dict powerSysDict : sysList) {
+ String sysFlag = powerSysDict.getSysFlag();
+ if (StringUtils.isNotBlank(sysFlag)) {
+ if ("power".equals(sysFlag)) {
+ power = 1;
+ continue;
+ }
+ if ("emr_medical_record".equals(sysFlag)) {
+ emr_medical_record = 1;
+ continue;
+ }
+ if ("emr_record".equals(sysFlag)) {
+ emr_record = 1;
+ continue;
+ }
+ if ("emr_apply_copy".equals(sysFlag)) {
+ emr_apply_copy = 1;
+ continue;
+ }
+ if ("emr_files".equals(sysFlag)) {
+ emr_files = 1;
+ continue;
+ }
+ }
+ }
+ }
+ if (power == 1 && power1 == 1) {
+ power = 1;
+ } else {
+ power = 0;
+ }
+ if (emr_medical_record == 1 && emr_medical_record1 == 1) {
+ emr_medical_record = 1;
+ } else {
+ emr_medical_record = 0;
+ }
+ if (emr_record == 1 && emr_record1 == 1) {
+ emr_record = 1;
+ } else {
+ emr_record = 0;
+ }
+ if (emr_apply_copy == 1 && emr_apply_copy1 == 1) {
+ emr_apply_copy = 1;
+ } else {
+ emr_apply_copy = 0;
+ }
+ if (emr_files == 1 && emr_files1 == 1) {
+ emr_files = 1;
+ } else {
+ emr_files = 0;
+ }
+ model.addAttribute("power", power);
+ model.addAttribute("emr_medical_record", emr_medical_record);
+ model.addAttribute("emr_record", emr_record);
+ model.addAttribute("emr_apply_copy", emr_apply_copy);
+ model.addAttribute("emr_files", emr_files);
+ return "/gatewayDir/gatewayIndex";
+ }
+
+
+ //发起httppost请求
+ public static String sendPost(String url, String ticket) {
+ String username = "";
+ HttpClient client = HttpClients.createDefault();
+ //默认post请求
+ HttpPost post = new HttpPost(url);
+ //拼接多参数
+ JSONObject json = new JSONObject();
+ json.put("ticket", ticket);
+ try {
+ post.addHeader("Content-type", "application/json; charset=utf-8");
+ post.setHeader("Accept", "application/json");
+ post.setEntity(new StringEntity(json.toString(), Charset.forName("utf-8")));
+ HttpResponse httpResponse = client.execute(post);
+
+ HttpEntity responseEntity = httpResponse.getEntity();
+ System.out.println("响应状态为:" + httpResponse.getStatusLine());
+ if (responseEntity != null) {
+ JSONObject jsonObject = JSONObject.parseObject(EntityUtils.toString(responseEntity));
+ username = jsonObject.getString("username");
+ }
+ } catch (UnsupportedEncodingException e1) {
+ e1.printStackTrace();
+ } catch (ClientProtocolException e) {
+ e.printStackTrace();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return username;
+ }
+
/**
* 2.1
- * @ProjectName: getRolePowerTreeBySysFlag
- * @Description: 获取菜单通过系统标识
- * @Param 无
- * @Return getMenusByUserIdAndSysFlag
- * @Author: 曾文和
- * @CreateDate: 2019/7/9 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/7/9 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: getRolePowerTreeBySysFlag
+ * @Description: 获取菜单通过系统标识
+ * @Param 无
+ * @Return getMenusByUserIdAndSysFlag
+ * @Author: 曾文和
+ * @CreateDate: 2019/7/9 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/7/9 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
- @RequestMapping(value = "getMenusByUserIdAndSysFlag",method = RequestMethod.GET)
+ @RequestMapping(value = "getMenusByUserIdAndSysFlag", method = RequestMethod.GET)
@ResponseBody
- public Msg getMenusByUserIdAndSysFlag(String userName,String sysFlag,Integer userId,Integer roleId,Integer sysId,Integer hospitalId) throws Exception{
- if(StringUtils.isNotBlank(sysFlag) && StringUtils.isBlank(userName) && userId == null && roleId == null
- && sysId == null && hospitalId == null){
+ public Msg getMenusByUserIdAndSysFlag(String userName, String sysFlag, Integer userId, Integer roleId, Integer sysId, Integer hospitalId) throws Exception {
+ if (StringUtils.isNotBlank(sysFlag) && StringUtils.isBlank(userName) && userId == null && roleId == null
+ && sysId == null && hospitalId == null) {
return Msg.fail("查询复杂,数据大,暂不支持只带sysFlag参数查询");
}
- if(StringUtils.isBlank(sysFlag) && StringUtils.isBlank(userName) && userId == null && roleId == null
- && sysId != null && hospitalId == null){
+ if (StringUtils.isBlank(sysFlag) && StringUtils.isBlank(userName) && userId == null && roleId == null
+ && sysId != null && hospitalId == null) {
return Msg.fail("查询复杂,数据大,暂不支持只带sysId参数查询");
}
- if(StringUtils.isBlank(sysFlag) && StringUtils.isBlank(userName) && userId == null && roleId == null
- && sysId == null && hospitalId != null){
+ if (StringUtils.isBlank(sysFlag) && StringUtils.isBlank(userName) && userId == null && roleId == null
+ && sysId == null && hospitalId != null) {
return Msg.fail("查询复杂,数据大,暂不支持只带hospitalId参数查询");
}
- if(StringUtils.isNotBlank(userName)){
+ if (StringUtils.isNotBlank(userName)) {
List powerUsers = userMapper.checkUserName(userName);
- if(null != powerUsers && !powerUsers.isEmpty()){
- if(powerUsers.get(0).getRoleId().equals(0) || powerUsers.get(0).getRoleId().equals(-100)){
+ if (null != powerUsers && !powerUsers.isEmpty()) {
+ if (powerUsers.get(0).getRoleId().equals(0) || powerUsers.get(0).getRoleId().equals(-100)) {
roleId = powerUsers.get(0).getRoleId();
}
}
@@ -117,59 +415,61 @@ public class FontController {
List list = userDeptMenuService.selectAll(userName, sysFlag, userId, roleId, sysId, hospitalId);
CacheManager.addExcCount("noExc");
- return Msg.success().add("list",list);
+ return Msg.success().add("list", list);
}
/**
* 2.2
- * @ProjectName: selectAllByUserIdOrRoleIdAndSysIdOrSysFlag
- * @Description: 根据用户id或角色id和系统id或系统标识查询通知记录
- * @Param 无
- * @Return selectAllByUserIdOrRoleIdAndSysIdOrSysFlag
- * @Author: 曾文和
- * @CreateDate: 2019/7/29 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/7/29 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: selectAllByUserIdOrRoleIdAndSysIdOrSysFlag
+ * @Description: 根据用户id或角色id和系统id或系统标识查询通知记录
+ * @Param 无
+ * @Return selectAllByUserIdOrRoleIdAndSysIdOrSysFlag
+ * @Author: 曾文和
+ * @CreateDate: 2019/7/29 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/7/29 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
@RequestMapping(value = "selectAllByUserIdOrRoleIdAndSysIdOrSysFlag")
@ResponseBody
- public Msg selectAllByUserIdOrRoleIdAndSysIdOrSysFlag(Integer userId,Integer roleId,Integer sysId,String sysFlag) throws Exception{
+ public Msg selectAllByUserIdOrRoleIdAndSysIdOrSysFlag(Integer userId, Integer roleId, Integer sysId, String sysFlag) throws Exception {
List list = powerNoticeMapper.selectAllByUserIdOrRoleIdAndSysIdOrSysFlag(userId, roleId, sysId, sysFlag);
CacheManager.addExcCount("noExc");
- return Msg.success().add("list",list);
+ return Msg.success().add("list", list);
}
/**
* 2.4
- * @ProjectName: getUserPowerTreeBySysFlag
- * @Description: 获取系统用户树通过系统标识
- * @Param 无
- * @Return PowerTree
- * @Author: 曾文和
- * @CreateDate: 2019/7/9 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/7/9 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: getUserPowerTreeBySysFlag
+ * @Description: 获取系统用户树通过系统标识
+ * @Param 无
+ * @Return PowerTree
+ * @Author: 曾文和
+ * @CreateDate: 2019/7/9 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/7/9 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
- @RequestMapping(value = "getUserPowerTreeBySysFlag",produces = {"text/json;charset=UTF-8"})
+ @RequestMapping(value = "getUserPowerTreeBySysFlag", produces = {"text/json;charset=UTF-8"})
@ResponseBody
- public String getUserPowerTreeBySysFlag(String sysFlag,Integer userId){
+ public String getUserPowerTreeBySysFlag(String sysFlag, Integer userId) {
try {
- if(null != userId){
+ if (null != userId) {
//查询该用户
Power_UserVo user = userMapper.selectByPrimaryKey(userId);
- List dicts = powerService.getUserPowerTreeBySysFlag(sysFlag,user);
+ List dicts = powerService.getUserPowerTreeBySysFlag(sysFlag, user);
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(dicts);
CacheManager.addExcCount("noExc");
return json;
- }else{
+ } else {
return null;
}
- }catch(Exception e){
+ } catch (Exception e) {
ExceptionPrintUtil.printException(e);
CacheManager.addExcCount("exc");
e.printStackTrace();
@@ -179,32 +479,33 @@ public class FontController {
/**
* 2.5
- * @ProjectName: getRolePowerTreeBySysFlag
- * @Description: 获取系统角色树通过系统标识
- * @Param 无
- * @Return PowerTree
- * @Author: 曾文和
- * @CreateDate: 2019/7/9 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/7/9 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: getRolePowerTreeBySysFlag
+ * @Description: 获取系统角色树通过系统标识
+ * @Param 无
+ * @Return PowerTree
+ * @Author: 曾文和
+ * @CreateDate: 2019/7/9 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/7/9 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
- @RequestMapping(value = "getRolePowerTreeBySysFlag",produces = {"text/json;charset=UTF-8"})
+ @RequestMapping(value = "getRolePowerTreeBySysFlag", produces = {"text/json;charset=UTF-8"})
@ResponseBody
- public String getRolePowerTreeBySysFlag(String sysFlag,Integer userId){
+ public String getRolePowerTreeBySysFlag(String sysFlag, Integer userId) {
try {
- if(null != userId){
+ if (null != userId) {
Power_UserVo user = userMapper.selectByPrimaryKey(userId);
- List dicts = powerService.getRolePowerTreeBySysFlag(sysFlag,user);
+ List dicts = powerService.getRolePowerTreeBySysFlag(sysFlag, user);
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(dicts);
CacheManager.addExcCount("noExc");
return json;
- }else{
+ } else {
return null;
}
- }catch(Exception e){
+ } catch (Exception e) {
ExceptionPrintUtil.printException(e);
CacheManager.addExcCount("exc");
e.printStackTrace();
@@ -214,55 +515,57 @@ public class FontController {
/**
* 2.6
- * @ProjectName: getUserList
- * @Description: 获取用户id和用户名
- * @Param 无
- * @Return userList
- * @Author: 曾文和
- * @CreateDate: 2019/9/6 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/9/6 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: getUserList
+ * @Description: 获取用户id和用户名
+ * @Param 无
+ * @Return userList
+ * @Author: 曾文和
+ * @CreateDate: 2019/9/6 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/9/6 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
@RequestMapping(value = "getUserList")
@ResponseBody
- public Msg getUserList(String userName) throws Exception{
+ public Msg getUserList(String userName) throws Exception {
List list = new ArrayList<>();
- if(StringUtils.isNoneBlank(userName)){
+ if (StringUtils.isNoneBlank(userName)) {
List users = userMapper.checkUserName(userName);
- if(null != users && !users.isEmpty()){
+ if (null != users && !users.isEmpty()) {
Integer roleId = users.get(0).getRoleId();
- if(roleId == 0){
+ if (roleId == 0) {
list = userMapper.selectUserIdAndUserNameList(null);
- }else{
+ } else {
list = userMapper.selectUserIdAndUserNameList(users.get(0).getUserId());
}
}
- }else{
+ } else {
return Msg.fail("用户名不能为空");
}
CacheManager.addExcCount("noExc");
- return Msg.success().add("userList",list);
+ return Msg.success().add("userList", list);
}
/**
* 2.7
- * @ProjectName: checkToken
- * @Description: 验证token是否有效
- * @Param 无
- * @Return Msg
- * @Author: 曾文和
- * @CreateDate: 2019/9/24 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/9/24 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: checkToken
+ * @Description: 验证token是否有效
+ * @Param 无
+ * @Return Msg
+ * @Author: 曾文和
+ * @CreateDate: 2019/9/24 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/9/24 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
- @RequestMapping(value = "checkToken",method = RequestMethod.POST)
+ @RequestMapping(value = "checkToken", method = RequestMethod.POST)
@ResponseBody
- public Msg checkToken(String token) throws Exception{
- if(StringUtils.isNotBlank(token) && StringUtils.isNotBlank(token) ) {
+ public Msg checkToken(String token) throws Exception {
+ if (StringUtils.isNotBlank(token) && StringUtils.isNotBlank(token)) {
token = MD5.JM(Base64.decode(token));
Cache cache = CacheManager.getCacheInfo(token);
if (cache == null) {
@@ -271,8 +574,8 @@ public class FontController {
//更新过期时间
Power_UserVo user = (Power_UserVo) cache.getValue();
String date = String.valueOf(DateUtils.getDate());
- CacheManager.putCache(token,new Cache(date,user,TOKEN_EXPIRE_TIME));
- }else{
+ CacheManager.putCache(token, new Cache(date, user, TOKEN_EXPIRE_TIME));
+ } else {
return Msg.fail("token不能为空");
}
return Msg.success();
@@ -280,39 +583,40 @@ public class FontController {
/**
* 2.8
- * @ProjectName: getUserByToken
- * @Description: 根据token获取用户
- * @Param 无
- * @Return getMenuListByToken
- * @Author: 曾文和
- * @CreateDate: 2019/10/31 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/10/31 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: getUserByToken
+ * @Description: 根据token获取用户
+ * @Param 无
+ * @Return getMenuListByToken
+ * @Author: 曾文和
+ * @CreateDate: 2019/10/31 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/10/31 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
- @RequestMapping(value = "getUserByToken",method = RequestMethod.POST)
+ @RequestMapping(value = "getUserByToken", method = RequestMethod.POST)
@ResponseBody
- public Msg getMenuListByToken(String token,String sysFlag) throws Exception{
- if(StringUtils.isBlank(token)){
+ public Msg getMenuListByToken(String token, String sysFlag) throws Exception {
+ if (StringUtils.isBlank(token)) {
return Msg.fail("token不能为空!");
}
- if(StringUtils.isBlank(sysFlag)){
+ if (StringUtils.isBlank(sysFlag)) {
return Msg.fail("sysFlag不能为空!");
}
token = MD5.JM(Base64.decode(token));
Cache cacheInfo = CacheManager.getCacheInfo(token);
Power_UserVo user = (Power_UserVo) cacheInfo.getValue();
- if(null != user){
+ if (null != user) {
List menuList = user.getMenuList();
List list = new ArrayList<>();
Set menus = new TreeSet<>();
- if(null != menuList && !menuList.isEmpty()){
+ if (null != menuList && !menuList.isEmpty()) {
for (int i = 0; i < menuList.size(); i++) {
String menuSysFlag = menuList.get(i).getSysFlag();
- if(StringUtils.isNotBlank(menuSysFlag) && menuSysFlag.equals(sysFlag)){
+ if (StringUtils.isNotBlank(menuSysFlag) && menuSysFlag.equals(sysFlag)) {
list.add(menuList.get(i));
- if(StringUtils.isNotBlank(menuList.get(i).getMethod())){
+ if (StringUtils.isNotBlank(menuList.get(i).getMethod())) {
menus.add(menuList.get(i).getMenuUrl());
}
}
@@ -321,44 +625,45 @@ public class FontController {
user.setMenuList(list);
user.setMenus(menus);
UserVo userVo = new UserVo();
- BeanUtils.copyProperties(user,userVo);
+ BeanUtils.copyProperties(user, userVo);
//查询用户集合
List userList = new ArrayList<>();
Integer roleId = userVo.getRoleId();
- if(roleId == 0){
+ if (roleId == 0) {
userList = userMapper.selectUserIdAndUserNameList(null);
- }else{
+ } else {
userList = userMapper.selectUserIdAndUserNameList(userVo.getUserId());
}
//设置用户集合
userVo.setUserList(userList);
CacheManager.addExcCount("noExc");
- return Msg.success().add("user",userVo);
- }else{
+ return Msg.success().add("user", userVo);
+ } else {
return Msg.fail("token已失效");
}
}
/**
* 2.9
- * @ProjectName: getMenuByToken
- * @Description: 根据token获取菜单
- * @Param 无
- * @Return getMenuListByToken
- * @Author: 曾文和
- * @CreateDate: 2019/10/31 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/10/31 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: getMenuByToken
+ * @Description: 根据token获取菜单
+ * @Param 无
+ * @Return getMenuListByToken
+ * @Author: 曾文和
+ * @CreateDate: 2019/10/31 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/10/31 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
- @RequestMapping(value = "getMenuByToken",method = RequestMethod.POST)
+ @RequestMapping(value = "getMenuByToken", method = RequestMethod.POST)
@ResponseBody
- public Msg getMenuByToken(String token,String sysFlag) throws Exception{
- if(StringUtils.isBlank(token)){
+ public Msg getMenuByToken(String token, String sysFlag) throws Exception {
+ if (StringUtils.isBlank(token)) {
return Msg.fail("token不能为空!");
}
- if(StringUtils.isBlank(sysFlag)){
+ if (StringUtils.isBlank(sysFlag)) {
return Msg.fail("sysFlag不能为空!");
}
token = MD5.JM(Base64.decode(token));
@@ -366,16 +671,16 @@ public class FontController {
Power_UserVo user = (Power_UserVo) cacheInfo.getValue();
List menuList = user.getMenuList();
List list = new ArrayList<>();
- if(null != menuList && !menuList.isEmpty()){
+ if (null != menuList && !menuList.isEmpty()) {
for (int i = 0; i < menuList.size(); i++) {
String menuSysFlag = menuList.get(i).getSysFlag();
- if(StringUtils.isNotBlank(menuSysFlag) && menuSysFlag.equals(sysFlag)){
+ if (StringUtils.isNotBlank(menuSysFlag) && menuSysFlag.equals(sysFlag)) {
list.add(menuList.get(i));
}
}
}
CacheManager.addExcCount("noExc");
- return Msg.success().add("list",list);
+ return Msg.success().add("list", list);
}
@@ -391,16 +696,17 @@ public class FontController {
/**
* 2.10
- * @ProjectName: getToken
- * @Description: 获取token
- * @Param 无
- * @Return Msg
- * @Author: 曾文和
- * @CreateDate: 2019/11/06 10:00
- * @UpdateUser: 更新者
- * @UpdateDate: 2019/11/06 10:00
- * @UpdateRemark: 更新说明
- * @Version: 1.0
+ *
+ * @ProjectName: getToken
+ * @Description: 获取token
+ * @Param 无
+ * @Return Msg
+ * @Author: 曾文和
+ * @CreateDate: 2019/11/06 10:00
+ * @UpdateUser: 更新者
+ * @UpdateDate: 2019/11/06 10:00
+ * @UpdateRemark: 更新说明
+ * @Version: 1.0
*/
// @RequestMapping(value = "getTokenForHis",method = RequestMethod.POST)
// @ResponseBody
@@ -439,16 +745,13 @@ public class FontController {
// String token = setToken(userVo);
// return Msg.success().add("token",token);
// }
-
-
-
- @RequestMapping(value = "saveThirdUser",method = RequestMethod.POST)
+ @RequestMapping(value = "saveThirdUser", method = RequestMethod.POST)
@ResponseBody
- public Msg saveThirdUser(@RequestParam("userName") String userName,@RequestParam("passWord")String passWord) throws Exception{
- if(StringUtils.isBlank(userName)){
- return Msg.fail("用户名不能为空");
+ public Msg saveThirdUser(@RequestParam("userName") String userName, @RequestParam("passWord") String passWord) throws Exception {
+ if (StringUtils.isBlank(userName)) {
+ return Msg.fail("用户名不能为空");
}
- if(StringUtils.isBlank(passWord)){
+ if (StringUtils.isBlank(passWord)) {
return Msg.fail("密码不能为空");
}
Power_UserVo userVo = new Power_UserVo();
@@ -458,16 +761,17 @@ public class FontController {
userVo.setPassWord(passWord);
userMapper.insertUserInfo(userVo);
return Msg.fail("同步用户密码成功");
- }else {
+ } else {
userVo.setUserName(userName);
userVo.setPassWord(passWord);
userMapper.updateinsertUserInfo(userVo);
return Msg.fail("同步用户密码成功");
}
}
- @RequestMapping(value = "getThirdToken",method = RequestMethod.POST)
+
+ @RequestMapping(value = "getThirdToken", method = RequestMethod.POST)
@ResponseBody
- public Msg getThirdToken(String userName,String passWord) throws Exception {
+ public Msg getThirdToken(String userName, String passWord) throws Exception {
if (StringUtils.isBlank(userName)) {
return Msg.fail("账号不能为空");
}
@@ -479,21 +783,21 @@ public class FontController {
if (!CollectionUtils.isEmpty(userInfo)) {
String date = String.valueOf(DateUtils.getDate());
String token = Base64.encode(MD5.KL(date));
- ActionScopeUtils.setSessionAttribute("token",token,Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME))/1000);
+ ActionScopeUtils.setSessionAttribute("token", token, Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME)) / 1000);
//设置用户登录次数缓存
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
- CacheManager.addloginUserCount(fmt.format(new Date()),userName);
+ CacheManager.addloginUserCount(fmt.format(new Date()), userName);
CacheManager.addExcCount("noExc");
List list = null;
List menuList = new ArrayList<>();
Set menus = new LinkedHashSet<>();
userVo.setRoleId(0);
if (userVo.getRoleId().equals(0) || userVo.getRoleId().equals(-100)) {
- list = powerMenuService.queryAllPowerMenu(null,userVo.getRoleId());
+ list = powerMenuService.queryAllPowerMenu(null, userVo.getRoleId());
} else {
- list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(),null);
+ list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(), null);
}
- if(null != list && !list.isEmpty()){
+ if (null != list && !list.isEmpty()) {
for (Power_Menu powerMenu : list) {
User_Dept_Menu deptMenu = new User_Dept_Menu();
String menuUrl = powerMenu.getMenuUrl();
@@ -512,98 +816,14 @@ public class FontController {
userVo.setRemark("HIS科室");
//设置进缓存
- CacheManager.putCache(date,new Cache(date,userVo,TOKEN_EXPIRE_TIME));
- ActionScopeUtils.setSessionAttribute("CURRENT_USER",userVo,Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME))/1000);
-// UserVo userVo1 =new UserVo();
-//// userVo1.setUserName("admin");
-//// userVo1.setPassWord("123456");
-//// CloseableHttpClient httpClient = HttpClientBuilder.create().build();
-//// // 创建Post请求
-//// HttpPost httpPost = new HttpPost(EMRRECORD_URLHEAD+"/login");
-//// String jsonString = JSON.toJSONString(userVo1);
-//// StringEntity entity = new StringEntity(jsonString, "UTF-8");
-//// // post请求是将参数放在请求体里面传过去的;这里将entity放入post请求体中
-//// httpPost.setEntity(entity);
-//// httpPost.setHeader("Content-Type", "application/json;charset=utf8");
-//// // 响应模型
-//// CloseableHttpResponse response = null;
-//// HttpEntity responseEntity=null;
-//// try {
-//// // 由客户端执行(发送)Post请求
-//// response = httpClient.execute(httpPost);
-//// // 从响应模型中获取响应实体
-//// responseEntity = response.getEntity();
-//// System.out.println("responseEntity::::"+responseEntity);
-//// System.out.println("响应状态为:" + response.getStatusLine());
-//// } catch (ClientProtocolException e) {
-//// e.printStackTrace();
-//// } catch (IOException e) {
-//// e.printStackTrace();
-//// } finally {
-//// try {
-//// // 释放资源
-//// if (httpClient != null) {
-//// httpClient.close();
-//// }
-//// if (response != null) {
-//// response.close();
-//// }
-//// } catch (IOException e) {
-//// e.printStackTrace();
-//// }
-//// }
-//// String date = String.valueOf(DateUtils.getDate());
-//// String token = Base64.encode(MD5.KL(date));
-//// ActionScopeUtils.setSessionAttribute("token", token, Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME)) / 1000);
-//// SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
-//// CacheManager.addloginUserCount(fmt.format(new Date()), userVo.getUserName());
-//// CacheManager.addExcCount("noExc");
-//// List list = null;
-//// List menuList = new ArrayList<>();
-//// Set menus = new LinkedHashSet<>();
-//// userVo.setRoleId(0);
-//// if (userVo.getRoleId().equals(0) || userVo.getRoleId().equals(-100)) {
-//// list = powerMenuService.queryAllPowerMenu(null, userVo.getRoleId());
-//// } else {
-//// list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(), null);
-//// }
-//// if (null != list && !list.isEmpty()) {
-//// for (Power_Menu powerMenu : list) {
-//// User_Dept_Menu deptMenu = new User_Dept_Menu();
-//// String menuUrl = powerMenu.getMenuUrl();
-//// if (StringUtils.isNotBlank(menuUrl)) {
-//// BeanUtils.copyProperties(powerMenu, deptMenu);
-//// deptMenu.setMethodParent(powerMenu.getParentId());
-//// menuList.add(deptMenu);
-//// }
-//// if (StringUtils.isNotBlank(powerMenu.getMethod())) {
-//// menus.add(powerMenu.getMenuUrl());
-//// }
-//// }
-//// }
-//// userVo.setMenuList(menuList);
-//// userVo.setMenus(menus);
-////
-//// //设置科室
-////// StringBuilder powerDepts = new StringBuilder();
-////// List powerDeptList = power_deptService.selectByPrimaryKeys(user.getDeptId());
-////// for(int j=0;j 0) {
@@ -630,7 +850,7 @@ public class FontController {
map.put(element.getName().trim(), element.getTextTrim());
}
} else {
- map.put(element.getName().trim(), path+ element.getName().trim() + ".");
+ map.put(element.getName().trim(), path + element.getName().trim() + ".");
parseXml2Map(element.asXML(), map);
}
}
@@ -643,13 +863,14 @@ public class FontController {
/**
* 解析result中xml中的name节点值
+ *
* @param result
* @param name
* @return
*/
private String analysis(String result, String name) {
String nameValue = "";
- Map map = new HashMap<>();
+ Map map = new HashMap<>();
Map valueMap = parseXml2Map(result, map);
nameValue = valueMap.get("Name");
return nameValue;
@@ -717,7 +938,8 @@ public class FontController {
return document.asXML();
}
-// private String setToken1(Power_UserVo userVo){
+
+ // private String setToken1(Power_UserVo userVo){
// String date = String.valueOf(DateUtils.getDate());
// String token = Base64.encode(MD5.KL(date));
// List list = null;
@@ -751,18 +973,18 @@ public class FontController {
// CacheManager.putCache(date,new Cache(date,userVo,TOKEN_EXPIRE_TIME));
// return token;
// }
- private String setToken(Power_UserVo userVo){
+ private String setToken(Power_UserVo userVo) {
String date = String.valueOf(DateUtils.getDate());
String token = Base64.encode(MD5.KL(date));
List list = null;
List menuList = new ArrayList<>();
Set menus = new TreeSet<>();
if (userVo.getRoleId().equals(0) || userVo.getRoleId().equals(-100)) {
- list = powerMenuService.queryAllPowerMenu(null,userVo.getRoleId());
+ list = powerMenuService.queryAllPowerMenu(null, userVo.getRoleId());
} else {
- list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(),null);
+ list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(), null);
}
- if(null != list && !list.isEmpty()){
+ if (null != list && !list.isEmpty()) {
for (Power_Menu powerMenu : list) {
User_Dept_Menu deptMenu = new User_Dept_Menu();
String menuUrl = powerMenu.getMenuUrl();
@@ -782,47 +1004,48 @@ public class FontController {
//设置科室
StringBuilder powerDepts = new StringBuilder();
List powerDeptList = power_deptService.selectByPrimaryKeys(userVo.getDeptId());
- for(int j = 0;j < powerDeptList.size();j++){
- if(j menuList = new ArrayList<>();
Set menus = new TreeSet<>();
if (userVo.getRoleId().equals(0) || userVo.getRoleId().equals(-100)) {
- list = powerMenuService.queryAllPowerMenu(null,userVo.getRoleId());
+ list = powerMenuService.queryAllPowerMenu(null, userVo.getRoleId());
} else {
- list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(),null);
+ list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(), null);
}
- if(null != list && !list.isEmpty()){
+ if (null != list && !list.isEmpty()) {
for (Power_Menu powerMenu : list) {
User_Dept_Menu deptMenu = new User_Dept_Menu();
String menuUrl = powerMenu.getMenuUrl();
@@ -856,49 +1079,50 @@ public class FontController {
//设置科室
StringBuilder powerDepts = new StringBuilder();
List powerDeptList = power_deptService.selectByPrimaryKeys(userVo.getDeptId());
- for(int j = 0;j < powerDeptList.size();j++){
- if(j powerUsers = userService.checkUserName(userName);
- if(CollectionUtils.isEmpty(powerUsers)){
+ if (CollectionUtils.isEmpty(powerUsers)) {
return Msg.fail("用户名不正确");
}
String date = String.valueOf(DateUtils.getDate());
String token = Base64.encode(MD5.KL(date));
Power_UserVo userVo = new Power_UserVo();
- BeanUtils.copyProperties(powerUsers.get(0),userVo);
+ BeanUtils.copyProperties(powerUsers.get(0), userVo);
List list = null;
List menuList = new ArrayList<>();
Set menus = new TreeSet<>();
if (userVo.getRoleId().equals(0) || userVo.getRoleId().equals(-100)) {
- list = powerMenuService.queryAllPowerMenu(null,userVo.getRoleId());
+ list = powerMenuService.queryAllPowerMenu(null, userVo.getRoleId());
} else {
- list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(),null);
+ list = powerMenuService.selectUserAndRoleMenuListPower(userVo.getUserId(), null);
}
- if(null != list && !list.isEmpty()){
+ if (null != list && !list.isEmpty()) {
for (Power_Menu powerMenu : list) {
User_Dept_Menu deptMenu = new User_Dept_Menu();
String menuUrl = powerMenu.getMenuUrl();
@@ -917,7 +1141,7 @@ public class FontController {
//设置科室
StringBuilder powerDepts = new StringBuilder();
- if(StringUtils.isNotBlank(userVo.getDeptId())) {
+ if (StringUtils.isNotBlank(userVo.getDeptId())) {
List powerDeptList = power_deptService.selectByPrimaryKeys(userVo.getDeptId());
for (int j = 0; j < powerDeptList.size(); j++) {
if (j < powerDeptList.size() - 1) {
@@ -930,12 +1154,13 @@ public class FontController {
}
//移除缓存
CacheManager.removeCacheByObject(userVo);
- CacheManager.putCache(date,new Cache(date,userVo,TOKEN_EXPIRE_TIME));
- return Msg.success().add("token",token);
+ CacheManager.putCache(date, new Cache(date, userVo, TOKEN_EXPIRE_TIME));
+ return Msg.success().add("token", token);
}
/**
* 2.11
+ *
* @MethodName getUnReadCount
* @Description: 根据用户获取未读通知数量
* @Param 无
@@ -949,17 +1174,17 @@ public class FontController {
*/
@RequestMapping("notice/getUnReadCount")
@ResponseBody
- public Msg getUnReadCount(Integer userId) throws Exception{
- if(null == userId){
+ public Msg getUnReadCount(Integer userId) throws Exception {
+ if (null == userId) {
return Msg.fail("用户id不能为空");
}
Power_UserVo userVo = userMapper.selectByPrimaryKey(userId);
- if(null == userVo){
+ if (null == userVo) {
return Msg.fail("用户id不存在");
}
int unReadCount = noticeService.getUnReadCount(userId);
CacheManager.addExcCount("noExc");
- return Msg.success().add("unReadCount",unReadCount);
+ return Msg.success().add("unReadCount", unReadCount);
}
/**
@@ -976,16 +1201,16 @@ public class FontController {
*/
@RequestMapping("checkUserName")
@ResponseBody
- public Msg checkUserName(String userName) throws Exception{
- if(StringUtils.isBlank(userName)){
+ public Msg checkUserName(String userName) throws Exception {
+ if (StringUtils.isBlank(userName)) {
return Msg.fail("工号不能为空!");
}
//查询用户
List user = userMapper.checkUserName(userName);
- if(null == user || user.isEmpty()){
+ if (null == user || user.isEmpty()) {
return Msg.fail("该工号不存在!");
}
- return Msg.success().add("user",user);
+ return Msg.success().add("user", user);
}
/**
@@ -1003,21 +1228,200 @@ public class FontController {
*/
@RequestMapping("sendEmrRecordApproveNotice")
@ResponseBody
- public void sendEmrRecordApproveNotice(String applyType,Integer count){
+ public void sendEmrRecordApproveNotice(String applyType, Integer count) {
try {
String title = "待审批通知";
- String content = "您有"+count+"份"+applyType+"待审批!";
+ String content = "您有" + count + "份" + applyType + "待审批!";
//查询有借阅审批权限的id集合
String menuUrl = "/approve/updateApprove";
List users = userMapper.selectUserIdsWithApprove(menuUrl);
- for(Power_User user : users){
- if(null != user) {
+ for (Power_User user : users) {
+ if (null != user) {
WsPool.sendMessageToAll("emr_record_" + user.getUserId(), title + STR_SPLIT + content + STR_SPLIT + "emr_record");
}
}
+ } catch (Exception e) {
+ ExceptionPrintUtil.printException(e);
+ e.printStackTrace();
+ }
+ }
+ /**
+ * @description: 厦门中山医院获取二维码
+ * @author linjj
+ * @date: 2023/5/24 11:08
+ */
+ @RequestMapping("getBase64")
+ @ResponseBody
+ public GetQRCodeBySysResponse getBase64() {
+ GetQRCodeBySysRequest request = new GetQRCodeBySysRequest();
+ request.setSys("JSScan");
+ GetQRCodeBySysResponse response = xmzsyyqrCodeAPIService.getQRCodeBySys(request, xmzzyySoapAPISettings());
+ return response;
+ }
+
+ /**
+ * @description: 厦门中山医院获取二维码接口连接
+ * @author linjj
+ * @date: 2023/5/24 14:07
+ */
+ private SoapAPISettings xmzzyySoapAPISettings() {
+ SoapAPISettings soapAPISettings = new SoapAPISettings();
+ soapAPISettings.setAction(operationName);
+ soapAPISettings.setUri(wsdlUrl);
+ return soapAPISettings;
+ }
+ /**
+ * @description: 厦门中山医院监听用户扫码状态
+ * @author linjj
+ * @date: 2023/5/24 13:43
+ */
+ @RequestMapping("getQueryQRCode")
+ @ResponseBody
+ public GetQueryQRCodeResponse getQueryQRCode(String qrCode){
+ GetQueryQRCodeRequest request = new GetQueryQRCodeRequest();
+ request.setQrCode(qrCode);
+ GetQueryQRCodeResponse queryQRCode = xmzsyyqrCodeAPIService.getQueryQRCode(request, queryQRCodeUrlAndName());
+ return queryQRCode;
+ }
+ /**
+ * @description: 厦门中山医院获取用户扫码状态接口连接
+ * @author linjj
+ * @date: 2023/5/24 14:07
+ */
+ private SoapAPISettings queryQRCodeUrlAndName() {
+ SoapAPISettings soapAPISettings = new SoapAPISettings();
+ soapAPISettings.setAction(queryQRCodeUrlName);
+ soapAPISettings.setUri(queryQRCodeUrl);
+ return soapAPISettings;
+ }
+
+
+ /**
+ * @description: 厦门中山医院扫码登录认证接口
+ * @params: idCard
+ * @author linjj
+ * @date: 2023/5/24 15:45
+ */
+ @RequestMapping(value = "XMZSYYlogin",method = RequestMethod.POST)
+ public String XMZSYYlogin(Power_User powerUser, HttpServletResponse response, HttpServletRequest request, Model model){
+ try {
+ Power_UserVo user = powerUserService.findPowerUserByIdCard(powerUser);
+ if (user != null) {
+ loginByPowerUser(user);
+ }else {
+ //在账号不存在时同步用户信息
+ powerUserService.insertUserName(powerUser);
+ //新增用户重新登录
+ Power_UserVo userNew = powerUserService.findPowerUserByIdCard(powerUser);
+ loginByPowerUser(userNew);
+ }
}catch (Exception e){
ExceptionPrintUtil.printException(e);
e.printStackTrace();
+ CacheManager.addExcCount("exc");
}
+ return "loginDir/login";
+ }
+
+
+
+ @RequestMapping(value = "zsxmHospitalLogin",method = RequestMethod.POST)
+ public String zsxmHospitalLogin(Power_User powerUser) {
+ GetLoginInfoRequest getLoginInfoRequest = new GetLoginInfoRequest();
+ getLoginInfoRequest.setSys("JSScan");
+ getLoginInfoRequest.setAccountType("EmployeeNumber");
+ getLoginInfoRequest.setAccount(powerUser.getUserName());
+ getLoginInfoRequest.setPassword(powerUser.getUserPwd());
+ GetLoginInfoResponse loginInfo = xmzsyyqrCodeAPIService.getLoginInfo(getLoginInfoRequest, getLoginUserInfo());
+ if (StringUtils.isNotBlank(loginInfo.getData()) && loginInfo.getData().equals("0")) {
+ try {
+ Power_UserVo user = powerUserService.findPowerUserByIdCard(powerUser);
+ if (user != null) {
+ loginByPowerUser(user);
+ }else {
+ //在账号不存在时同步用户信息
+ powerUserService.insertUserName(powerUser);
+ //新增用户重新登录
+ Power_UserVo userNew = powerUserService.findPowerUserByIdCard(powerUser);
+ loginByPowerUser(userNew);
+ }
+ } catch (Exception e) {
+ ExceptionPrintUtil.printException(e);
+ e.printStackTrace();
+ CacheManager.addExcCount("exc");
+ }
+ }
+ return "loginDir/login";
+ }
+
+ private String loginByPowerUser(Power_UserVo user){
+ //设置token缓存
+ String date = String.valueOf(DateUtils.getDate());
+ String token = Base64.encode(MD5.KL(date));
+ ActionScopeUtils.setSessionAttribute("token", token, Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME)) / 1000);
+
+ //设置用户登录次数缓存
+ SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
+ CacheManager.addloginUserCount(fmt.format(new Date()), user.getUserName());
+ CacheManager.addExcCount("noExc");
+ List list = null;
+ List menuList = new ArrayList<>();
+ Set menus = new LinkedHashSet<>();
+ if (user.getRoleId().equals(0) || user.getRoleId().equals(-100)) {
+ list = powerMenuService.queryAllPowerMenu(null, user.getRoleId());
+ } else {
+ list = powerMenuService.selectUserAndRoleMenuListPower(user.getUserId(), null);
+ }
+ if (null != list && !list.isEmpty()) {
+ for (Power_Menu powerMenu : list) {
+ User_Dept_Menu deptMenu = new User_Dept_Menu();
+ String menuUrl = powerMenu.getMenuUrl();
+ if (StringUtils.isNotBlank(menuUrl)) {
+ BeanUtils.copyProperties(powerMenu, deptMenu);
+ deptMenu.setMethodParent(powerMenu.getParentId());
+ menuList.add(deptMenu);
+ }
+ if (StringUtils.isNotBlank(powerMenu.getMethod())) {
+ menus.add(powerMenu.getMenuUrl());
+ }
+ }
+ }
+ user.setMenuList(menuList);
+ user.setMenus(menus);
+
+ //设置科室
+ StringBuilder powerDepts = new StringBuilder();
+ List powerDeptList = power_deptService.selectByPrimaryKeys(user.getDeptId());
+ for (int j = 0; j < powerDeptList.size(); j++) {
+ if (j < powerDeptList.size() - 1) {
+ powerDepts.append(powerDeptList.get(j).getDeptName()).append(",");
+ } else {
+ powerDepts.append(powerDeptList.get(j).getDeptName());
+ }
+ }
+ user.setRemark(powerDepts.toString());
+ //设置进缓存
+ CacheManager.putCache(date, new Cache(date, user, TOKEN_EXPIRE_TIME));
+ ActionScopeUtils.setSessionAttribute("CURRENT_USER", user, Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME)) / 1000);
+ //添加进操作日志
+ Power_Log log = new Power_Log();
+ log.setCreater(user.getUserName());
+ log.setLogTitle("登录");
+ log.setLogContent("登录成功");
+ log.setRemark("通过扫码登录进入");
+ logService.insert(log);
+ return "redirect:gatewayPage";
+ }
+
+ /**
+ * @description: 厦门中山医院获取用户扫码状态接口连接
+ * @author linjj
+ * @date: 2023/5/24 14:07
+ */
+ private SoapAPISettings getLoginUserInfo() {
+ SoapAPISettings soapAPISettings = new SoapAPISettings();
+ soapAPISettings.setAction(getLoginUserInfoName);
+ soapAPISettings.setUri(getLoginUserInfoUrl);
+ return soapAPISettings;
}
}
\ No newline at end of file
diff --git a/power-admin/src/main/java/com/manage/controller/LoginController.java b/power-admin/src/main/java/com/manage/controller/LoginController.java
index ab0ca51..d8a52d9 100644
--- a/power-admin/src/main/java/com/manage/controller/LoginController.java
+++ b/power-admin/src/main/java/com/manage/controller/LoginController.java
@@ -2,6 +2,7 @@ package com.manage.controller;
import com.alibaba.fastjson.JSON;
import com.manage.dao.Power_Login_SetMapper;
+import com.manage.dao.Power_Hospital_FlagMapper;
import com.manage.encrypt.Base64;
import com.manage.encrypt.MD5;
import com.manage.entity.*;
@@ -39,12 +40,18 @@ public class LoginController {
private Power_DeptService power_deptService;
@Autowired
private Power_Login_SetMapper powerLoginSetMapper;
+ @Autowired
+ private Power_Hospital_FlagMapper powerHospitalFlagMapper;
@RequestMapping(value = "login",method = RequestMethod.GET)
public String toLogin(Model model){
Power_Login_Set loginSet = powerLoginSetMapper.selectByPrimaryKey(1);
model.addAttribute("loginSet",loginSet);
CacheManager.addExcCount("noExc");
+ List hospitalFlag = powerHospitalFlagMapper.getHospitalFlag();
+ if (hospitalFlag.size()!=0){
+ return "loginDir/xmzslogin";
+ }
return "loginDir/login";
}
@@ -68,15 +75,6 @@ public class LoginController {
//设置token缓存
String date = String.valueOf(DateUtils.getDate());
String token = Base64.encode(MD5.KL(date));
-
-
- //查询归属医院
- /* long start5 = System.currentTimeMillis();
- Power_User_Dict powerUserDict = powerUserDictMapper.selectDictIdByUserId(user.getUserId());
- long end5 = System.currentTimeMillis();
- System.out.println("查询医院时间="+(end5-start5)/1000.0+"s");
- user.setDictId(powerUserDict.getDictId());*/
- //科室id科室名
ActionScopeUtils.setSessionAttribute("token",token,Integer.valueOf(String.valueOf(TOKEN_EXPIRE_TIME))/1000);
//设置用户登录次数缓存
diff --git a/power-admin/src/main/java/com/manage/controller/UserController.java b/power-admin/src/main/java/com/manage/controller/UserController.java
index 691cf76..71cd5c0 100644
--- a/power-admin/src/main/java/com/manage/controller/UserController.java
+++ b/power-admin/src/main/java/com/manage/controller/UserController.java
@@ -2,6 +2,7 @@ package com.manage.controller;
import com.manage.annotation.OptionalLog;
import com.manage.annotation.RequiresPermissions;
+import com.manage.dao.Power_Hospital_FlagMapper;
import com.manage.dao.Power_User_DictMapper;
import com.manage.encrypt.Base64;
import com.manage.encrypt.MD5;
@@ -49,6 +50,8 @@ public class UserController {
private Power_DeptService deptService;
@Autowired
private Power_User_DictMapper userDictMapper;
+ @Autowired
+ private Power_Hospital_FlagMapper powerHospitalFlagMapper;
@ResponseBody
@RequestMapping("/pageList")
public PageHelper list(Power_UserVo powerUser, HttpServletRequest request){
@@ -219,6 +222,10 @@ public class UserController {
CacheManager.addExcCount("exc");
e.printStackTrace();
}
+ List hospitalFlag = powerHospitalFlagMapper.getHospitalFlag();
+ if (hospitalFlag.size()!=0){
+ return "userDir/XMZSYYupdatePassword";
+ }
return "/userDir/updatePassword";
}
diff --git a/power-admin/src/main/resources/config/config.properties b/power-admin/src/main/resources/config/config.properties
index 4d32999..f2b7e59 100644
--- a/power-admin/src/main/resources/config/config.properties
+++ b/power-admin/src/main/resources/config/config.properties
@@ -1,7 +1,7 @@
# 拦截菜单配置文件 ljx 2019-4-27
#interceptRequest 未登录之前放行。默认为none
#ajaxRequest ajax请求没有对应模块,需要放行。 默认为none
-releaseRequest = /login,/logout,/services,/font,/refuse,/swagger-ui.html,/webjars,/swagger-resources,/v2
+releaseRequest = /login,/logout,/services,/font,/refuse,/swagger-ui.html,/webjars,/swagger-resources,/v2,/qualityModel
ajaxRequest = none
#session过期时间
@@ -9,7 +9,7 @@ TOKEN_EXPIRE_TIME = 3600000
##################################################服务器ip##########################################################
#通用服务器IP与通用服务器端口
-SERVER_IP = 192.168.1.3
+SERVER_IP = localhost
SERVER_PORT = 8081
#power权限系统ip
@@ -68,4 +68,16 @@ log.days = 90
#定义是否为长期登录用户次数
login.times = 3
-synchronizationSwitch = 1
\ No newline at end of file
+synchronizationSwitch = 1
+#厦门中山医院获取二维码接口地址
+wsdlUrl = http://101.132.67.155:8087/PKIQRCode/services/v1?wsdl
+#厦门中山医院获取二维码接口名称标识
+operationName = SOF_GetQRCodeBySys
+#厦门中山医院获取用户扫码状态接口地址
+queryQRCodeUrl= http://101.132.67.155:8087/PKIQRCode/services/v1?wsdl
+#厦门中山医院获取用户扫码状态接口标识
+queryQRCodeUrlName= SOF_QueryQRCode
+#厦门中山医院获取用户扫码状态接口标识
+getLoginUserInfoName=SOF_LoginWithAccountInfo
+#厦门中山医院获取用户扫码状态接口地址
+getLoginUserInfoUrl=http://101.132.67.155:8087/pkis/services/v1?wsdl
diff --git a/power-admin/src/main/resources/config/jdbc.properties b/power-admin/src/main/resources/config/jdbc.properties
index a51355d..0b8e380 100644
--- a/power-admin/src/main/resources/config/jdbc.properties
+++ b/power-admin/src/main/resources/config/jdbc.properties
@@ -1,26 +1,25 @@
jdbc.driver=com.mysql.jdbc.Driver
-jdbc.url=jdbc\:mysql\://192.168.1.3\:3306/qfpower?useUnicode\=true&characterEncoding\=utf-8
+jdbc.url=jdbc\:mysql\://localhost\:3306/qf_power?useUnicode\=true&characterEncoding\=utf-8
jdbc.username=root
-jdbc.password=docus702
+jdbc.password=root
#hibernate config
hibernate.dialect = org.hibernate.dialect.MySQLDialect
hibernate.show_sql = true
hibernate.format_sql = true
hibernate.hbm2ddl.auto =update
-#hibernate.current_session_context_class=org.springframework.orm.hibernate5.SpringSessionContext
+#hibernate.current_session_context_class=org.springframework.orm.hibernate5.SpringSessionContext
hibernate.current_session_context_class=thread
-
+
hibernate.jdbc.batch_size=50
hibernate.enable_lazy_load_no_trans=true
-#ִ:Ҽ Run As ---->Maven build ---->Goals:mybatis-generator:generate
-#Ŀ¼
+
targetProject=src/main/java
-#modelPackage,sqlMapperPackage,daoMapperPackage ͨһ??
+#modelPackage,sqlMapperPackage,daoMapperPackage ͨ��һ��??
modelPackage=com.manage.entity
daoMapperPackage=com.manage.dao
-#Ŀ¼
+
targetProject2=src/main/resources
sqlMapperPackage=mapper
diff --git a/power-admin/src/main/webapp/WEB-INF/jspf/webSocket.jspf b/power-admin/src/main/webapp/WEB-INF/jspf/webSocket.jspf
index 122fc1f..e49b611 100644
--- a/power-admin/src/main/webapp/WEB-INF/jspf/webSocket.jspf
+++ b/power-admin/src/main/webapp/WEB-INF/jspf/webSocket.jspf
@@ -71,17 +71,16 @@
}
function narn (type,title,text,noticeId) {
- debugger
naranja()[type]({
title: title,
text: text,
timeout: 1000*60,
- buttons: [{
- text: '查看详情',
- click: function (e) {
- noticeManage1(noticeId);
- }
- }]
+ buttons: [{
+ text: '查看详情',
+ click: function (e) {
+ noticeManage1(noticeId);
+ }
+ }]
})
}
diff --git a/power-admin/src/main/webapp/WEB-INF/views/gatewayDir/gatewayIndex.jsp b/power-admin/src/main/webapp/WEB-INF/views/gatewayDir/gatewayIndex.jsp
index 34a6974..0784387 100644
--- a/power-admin/src/main/webapp/WEB-INF/views/gatewayDir/gatewayIndex.jsp
+++ b/power-admin/src/main/webapp/WEB-INF/views/gatewayDir/gatewayIndex.jsp
@@ -13,143 +13,86 @@
var path = "${path}";
-<%--hhhhhhhhhhhhhhhh--%>
@@ -157,401 +100,231 @@
-
- <%--
-

-
--%>
+
-