第三方接口

master
linjj 2 years ago
parent dccf9de0b1
commit 77bd1cd5a8

@ -226,6 +226,13 @@
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.github.anish7kumar</groupId>
<artifactId>XML_JSON</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 资源文件拷贝插件 -->

@ -16,8 +16,14 @@
<properties>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<shiro.version>1.2.5</shiro.version>
</properties>
<dependencies>
<dependency>
<groupId>com.docus</groupId>
<artifactId>docus-soap-api-client</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.manage</groupId>
<artifactId>power-dao</artifactId>
@ -30,6 +36,18 @@
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.50</version>
</dependency>
<dependency>
<groupId>com.manage</groupId>
<artifactId>power-foundaton</artifactId>
@ -56,6 +74,11 @@
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.3.5</version>
</dependency>
<!-- 连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
@ -107,6 +130,11 @@
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring</artifactId>
<version>${shiro.version}</version>
</dependency>
<!--commoms-->
<dependency>
<groupId>org.apache.commons</groupId>
@ -122,17 +150,45 @@
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.2</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>4.4.5</version>
</dependency>
<!--日志处理-->
<!-- Web项目需添加 -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-web</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>1.7.2</version>
</dependency>
<!--用于与slf4j保持桥接-->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
</dependency>
<dependency>
<groupId>com.github.anish7kumar</groupId>
<artifactId>XML_JSON</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
<build>
<finalName>power</finalName>
@ -155,7 +211,7 @@
<version>2.2</version>
<configuration>
<path>/power</path>
<port>8080</port>
<port>8081</port>
<uriEncoding>UTF-8</uriEncoding>
</configuration>
</plugin>

@ -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)

@ -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<PowerHospitalVo> 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);
//设置用户登录次数缓存

@ -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<Power_UserVo> list(Power_UserVo powerUser, HttpServletRequest request){
@ -219,6 +222,10 @@ public class UserController {
CacheManager.addExcCount("exc");
e.printStackTrace();
}
List<PowerHospitalVo> hospitalFlag = powerHospitalFlagMapper.getHospitalFlag();
if (hospitalFlag.size()!=0){
return "userDir/XMZSYYupdatePassword";
}
return "/userDir/updatePassword";
}

@ -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
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

@ -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 ͨ<EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD>??
modelPackage=com.manage.entity
daoMapperPackage=com.manage.dao
#输出目录
targetProject2=src/main/resources
sqlMapperPackage=mapper

@ -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);
}
}]
})
}
</script>

@ -13,143 +13,86 @@
var path = "${path}";
</script>
<style type="text/css">
.logo{
height: 59px!important;
}
.navbar-custom-menu{
padding-right:17px;
}
/**
* 内容背景颜色
*/
.content-wrapper{
background-color: #fff!important;
}
/**
* 上图标div
*/
.header{
*右侧
*/
.rightDiv{
width: 100%;
height: 120px;
margin-top: 0!important;
}
.headerLeft{
width:70px;
height:100%;
}
.iconContext{
width:104px;
height:100%;
margin-left: 35px;
height: 83%;
}
/**
* 字内容div背景颜色
*右侧上部分
*/
.content-header{
background-color: #ecf0f5!important;
padding: 0!important;
}
/**
* echartDiv
*/
.echartsSection{
background-color: #ecf0f5!important;
margin-top: 10px;
width:100%;
height: 566px;
.rightTopDiv{
width: 100%;
height: 40%;
min-height: 190px;
}
/**
* 上组图div
*/
.topEchartsDiv{
padding:0!important;
width:100%;
height:50%;
.rightTopSpanDiv{
padding-top: 10%;
width: 100%;
height:50px;
text-align: center;
}
/**
* 下组图div
*/
.bottomEchartsDiv{
padding:0!important;
width:100%;
height:50%;
.rightTopSpanDiv span{
font-size: 36px;
font-weight: bold;
}
/**
* 系统操作div
*/
.systemOperDiv{
width:33%;
height: 100%;
.hidden-xs{
max-width: 200px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
/**
* 在线用户统计div
*/
.alineDiv{
margin-left: 1%;
width:66%;
height: 100%;
.home-sidebar-menu>li{
padding: 18px 0;
}
/**
* 在线用户里内容div
*/
.topEchartsRightDiv{
width:48%;
height: 88%;
.skin-blue .sidebar-menu>li:hover,.skin-blue .sidebar-menu>li.active{
background: #1e282c;
}
/**
* 在线用户里内容右div
*/
.topEchartsRightDiv2{
margin-left:15px;
.skin-blue .sidebar-menu>li:hover>.aClass,.skin-blue .sidebar-menu>li.active>.aClass{
color: white;
}
/**
* 下组图内容div
*/
.bottomEchartsContentDiv{
width:31%;
height: 88%;
.aClass{
display: grid;
justify-content: center;
align-items: center;
font-size: 16px;
font-weight: 700;
text-align: center;
color: #b8c7ce;
cursor: pointer;
}
/**
* 下组图内容div非左div
*/
.bottomEchartsContentNotLeftDiv{
margin-left: 25px;
.aClass i{
display: flex;
justify-content: center;
margin: 0 auto;
font-size: 54px;
}
/**
* echart头标题div
*/
.echartsHeader{
background-color: #3C8DBC;
width: 100%;
height:12%;
text-align: center;
font-size: 18px;
color: #fff;
padding-top:3px;
.aClass span{
margin-top: 5px;
}
hr{
margin: 0!important;
.sidebar-mini.sidebar-collapse .aClass{
font-size: 12px;
}
#alineLineDivMain canvas{
heigth:120%;
.sidebar-mini.sidebar-collapse .aClass>i{
font-size: 25px;
}
#alineBarDivMain canvas{
heigth:120%;
.home-menu:hover .dropdown-menu {display: block;}
.sidebar-mini.sidebar-collapse .img {
width: 25px;
}
/*#serverListenGaugeDiv1 canvas{*/
/*width:120%!important;*/
/*height:120%!important;*/
/*}*/
.hidden-xs{
max-width: 200px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
.home-menu:hover .dropdown-menu {display: block;}
.sidebar-mini.sidebar-collapse .titleDiv{
font-size: 12px;
}
</style>
</head>
<body class="hold-transition skin-blue sidebar-mini">
<%--<a href="http://192.168.1.3:8080/emr_record/login?token=IxEQVDobAlREQlRFQk5HTE5BRFQ3JyBURkRFTQ==&userName=1137">hhhhhhhhhhhhhhhh</a>--%>
<input type="hidden" id="userId" value="${CURRENT_USER.userId}">
<input type="hidden" id="webSocketUrl" value="${WEBSOCKET_URLHEAD}">
<input type="hidden" id="strSplit" value="${STR_SPLIT}">
@ -157,401 +100,231 @@
<div class="wrapper">
<header class="main-header">
<!--logo-->
<div class=" logo">
<%--<div class="pull-left image" style="align-content: baseline;">
<img src="${path}/static/bootstrap-3.3.7/dist/img/credit/paypal.png"
style=":height:70%;width: 70%;margin-top:0.25rem;"
class="user-image" alt="User Image">
</div>--%>
<div class="logo">
<div class="pull-left info" style="width: 100%">
<p>嘉时软件</p>
</div>
</div>
<nav class="navbar navbar-static-top">
<a href="#" class="sidebar-toggle" data-toggle="push-menu" role="button">
<a href="javascript:void(0)" class="sidebar-toggle" data-toggle="push-menu" role="button">
<span class="sr-only">Toggle navigation</span>
</a>
<div class="navbar-custom-menu">
<ul class="nav navbar-nav">
<li class="user user-menu">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" onclick="noticeManage()">
<a href="javascript:void(0)" class="dropdown-toggle" data-toggle="dropdown" onclick="noticeManage()">
<span class="label label-warning" id="noticeCount">0</span>
<i class="fa fa-envelope-o" style="font-size: 25px;"></i>
<i class="fa fa-envelope-o" style="font-size: 21px;"></i>
</a>
</li>
<li class="user user-menu">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<a href="javascript:void(0)" class="dropdown-toggle" data-toggle="dropdown">
<img src="${path}/static/bootstrap-3.3.7/dist/img/user2-160x160.jpg" class="user-image" alt="User Image">
<c:choose>
<c:when test="${CURRENT_USER.powerDepts == '' || CURRENT_USER.powerDepts == null || CURRENT_USER.powerDepts == 'null'}">
<c:choose>
<c:when test="${CURRENT_USER.name != null && CURRENT_USER.name != '' && CURRENT_USER.name != 'null'}">
<p class="hidden-xs" title="${CURRENT_USER.name}">${CURRENT_USER.name}</p>
<div class="hidden-xs" title="${CURRENT_USER.name}">${CURRENT_USER.name}</div>
</c:when>
<c:otherwise>
<p class="hidden-xs" title="${CURRENT_USER.userName}">${CURRENT_USER.userName}</p>
<div class="hidden-xs" title="${CURRENT_USER.userName}">${CURRENT_USER.userName}</div>
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<c:choose>
<c:when test="${CURRENT_USER.name != null && CURRENT_USER.name != '' && CURRENT_USER.name != 'null'}">
<p class="hidden-xs" title="${CURRENT_USER.name}(${CURRENT_USER.powerDepts})">${CURRENT_USER.name}(${CURRENT_USER.powerDepts})</p>
<div class="hidden-xs" title="${CURRENT_USER.name}(${CURRENT_USER.powerDepts})">${CURRENT_USER.name}(${CURRENT_USER.powerDepts})</div>
</c:when>
<c:otherwise>
<p class="hidden-xs" title="${CURRENT_USER.userName}(${CURRENT_USER.powerDepts})">${CURRENT_USER.userName}(${CURRENT_USER.powerDepts})</p>
<div class="hidden-xs" title="${CURRENT_USER.userName}(${CURRENT_USER.powerDepts})">${CURRENT_USER.userName}(${CURRENT_USER.powerDepts})</div>
</c:otherwise>
</c:choose>
</c:otherwise>
</c:choose>
</a>
</li>
<li>
<div class="margin">
<div class="btn-group">
<button type="button" class="btn btn-default">操作</button>
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown"
aria-expanded="false" style="height:34px">
<span class="caret"></span>
<span class="sr-only">Toggle Dropdown</span>
</button>
<ul class="dropdown-menu" role="menu">
<%--<li><a href="#">帮助</a></li>
<li><a href="#">联系我们</a></li>
<li><a href="${path}/gatewayPage">返回首页</a></li>
<li class="divider"></li>--%>
<li><a href="${path}/logout?token=${token}">退出登录</a></li>
</ul>
</div>
</div>
<li class="home-menu">
<a href="${path}/gatewayPage" title="点击返回首页"><i class="fa fa-home" style="font-size: 21px"></i></a>
<ul class="dropdown-menu" role="menu">
<li><a href="${path}/logout?token=${token}">退出登录</a></li>
</ul>
</li>
</ul>
</div>
</nav>
</header>
<aside class="main-sidebar">
<div onclick="mainManage()" style="cursor:pointer">
<!-- Unnamed (形状) -->
<div id="u86" class="ax_default icon">
<img id="u86_img" class="img " src="${path}/static/images/门户页面/u86.png"/>
</div>
<!-- Unnamed (矩形) -->
<div id="u158" class="ax_default _三级标题">
<div id="u158_div" class=""></div>
<!-- Unnamed () -->
<div id="u159" class="text" style="visibility: visible;">
<p><span>主页</span></p>
<section class="sidebar">
<ul class="sidebar-menu home-sidebar-menu" data-widget="tree">
<li class="active" title="主页">
<div class="aClass" onclick="menuClick(this,'home')">
<i class="fa fa-home"></i>
<span>主页</span>
</div>
</div>
</div>
<!-- Unnamed (组合) -->
<div onclick="noticeManage()" style="cursor:pointer">
<!-- Unnamed (形状) -->
<div id="u161" class="ax_default icon">
<img id="u161_img" class="img " src="${path}/static/images/门户页面/u161.png"/>
<!-- Unnamed () -->
<div id="u162" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</li>
<li title="通知信息">
<div class="aClass notice-menu" onclick="menuClick(this,'notice')">
<i class="fa fa-file"></i>
<span>通知信息</span>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u163" class="ax_default _三级标题">
<div id="u163_div" class=""></div>
<!-- Unnamed () -->
<div id="u164" class="text" style="visibility: visible;">
<p><span>通知信息</span></p>
</li>
<li title="个人资料">
<div class="aClass" onclick="menuClick(this,'help')">
<i class="fa fa-info"></i>
<span>个人资料</span>
</div>
</div>
</div>
<div onclick="helpDocumentManage()" style="cursor:pointer">
<!-- Unnamed (形状) -->
<div id="u152" class="ax_default icon">
<img id="u152_img" class="img " src="${path}/static/images/门户页面/u152.png"/>
<!-- Unnamed () -->
<div id="u153" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</li>
<li title="修改密码">
<div class="aClass" onclick="menuClick(this,'pwd')">
<i class="fa fa-key"></i>
<span>修改密码</span>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u165" class="ax_default _三级标题">
<div id="u165_div" class=""></div>
<!-- Unnamed () -->
<div id="u166" class="text" style="visibility: visible;">
<p><span>帮助文档</span></p>
</div>
</div>
</div>
<div onclick="updatePassword()" style="cursor:pointer">
<!-- Unnamed (形状)/user/toUpdatePassword -->
<div id="u154" class="ax_default icon">
<img id="u154_img" class="img " src="${path}/static/images/门户页面/u154.png"/>
<!-- Unnamed () -->
<div id="u155" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u167" class="ax_default _三级标题">
<div id="u167_div" class=""></div>
<!-- Unnamed () -->
<div id="u168" class="text" style="visibility: visible;">
<p><span>修改密码</span></p>
</li>
<li title="联系我们">
<div class="aClass" onclick="menuClick(this,'contact')">
<i class="fa fa-phone"></i>
<span>联系我们</span>
</div>
</div>
</div>
<div onclick="callMeManage()" style="cursor:pointer">
<!-- Unnamed (形状) -->
<div id="u156" class="ax_default icon">
<img id="u156_img" class="img " src="${path}/static/images/门户页面/u156.png"/>
<!-- Unnamed () -->
<div id="u157" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u169" class=" _三级标题">
<div id="u169_div" class=""></div>
<!-- Unnamed () -->
<div id="u170" class="text" style="visibility: visible;">
<p><span>联系我们</span></p>
</div>
</div>
</div>
</li>
</ul>
</section>
</aside>
<div id="iframeDiv" style="display: none">
<iframe class="row-fluid" style="margin-left:230px;height:100%;width:85%;"
<div id="iframeDiv" class="content-wrapper" style="display: none">
<iframe class="row-fluid" style="height:calc(100% - 102px);width:100%;"
id="iframe" name="iframe" scrolling="no" frameborder="0"></iframe>
</div>
<div class="content-wrapper" id="sectionDiv">
<section class="content-header">
<div class="header">
<div class="headerLeft left">
<a href="#">
<div id="u191" class="ax_default box_1">
<div id="u191_div" class=""></div>
<!-- Unnamed () -->
<div id="u192" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
<div id="u187" class="ax_default icon">
<img id="u187_img" class="img " src="${path}/static/images/门户页面/u187.png"/>
<!-- Unnamed () -->
<div id="u188" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
</a>
<div class="rightDiv">
<div class="rightTopDiv">
<div class="rightTopSpanDiv">
<span>嘉时软件 病案数码影像信息管理系统</span>
</div>
<c:if test="${power == 1}">
<div class="iconContext left">
<a href="${path}/index">
<!-- Unnamed (矩形) -->
<div id="u128" class="ax_default sticky_2">
<div id="u128_div" class=""></div>
<!-- Unnamed () -->
<div id="u129" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
<!-- Unnamed (形状) -->
<div id="u130" class="ax_default icon">
<img id="u130_img" class="img " src="${path}/static/images/门户页面/u130.png"/>
<!-- Unnamed () -->
<div id="u131" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u132" class="ax_default _二级标题">
<div id="u132_div" class=""></div>
<!-- Unnamed () -->
<div id="u133" class="text" style="visibility: visible;">
<p><span>权限系统</span></p>
</div>
</div>
</a>
</div>
</c:if>
<c:if test="${emr_medical_record == 1}">
<div class="iconContext left">
<a href="${EMRMEDICALRECORD_URLHEAD}/login?token=${token}&userName=${CURRENT_USER.userName}">
<!-- Unnamed (矩形) -->
<div id="u134" class="ax_default sticky_2">
<div id="u134_div" class=""></div>
<!-- Unnamed () -->
<div id="u135" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
<!-- Unnamed (形状) -->
<div id="u136" class="ax_default icon">
<img id="u136_img" class="img " src="${path}/static/images/门户页面/u136.png"/>
<!-- Unnamed () -->
<div id="u137" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u138" class="ax_default _二级标题">
<div id="u138_div" class=""></div>
<!-- Unnamed () -->
<div id="u139" class="text" style="visibility: visible;text-align: center">
<p><span>病案归档系统</span></p>
</div>
</div>
</a>
</div>
</c:if>
<c:if test="${emr_record == 1}">
<div class="iconContext left">
<a href="${EMRRECORD_URLHEAD}/login?token=${token}&userName=${CURRENT_USER.userName}">
<!-- Unnamed (矩形) -->
<div id="u140" class="ax_default sticky_3">
<div id="u140_div" class=""></div>
<!-- Unnamed () -->
<div id="u141" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
<section class="content-header">
<div class="header">
<c:if test="${power == 1}">
<div class="iconContext left">
<a href="${path}/index">
<div class="backgroupImgDiv blue rightDefaultImg_bg">
<div class="rightImgDiv">
<img class="rightImg" src="${path}/static/images/门户页面/u130.png"/>
</div>
<div class="rightTitleDiv">
<div class="rightTitle">
<span>权限系统</span>
</div>
</div>
</div>
</div>
<!-- Unnamed (形状) -->
<div id="u142" class="ax_default icon">
<img id="u142_img" class="img " src="${path}/static/images/门户页面/u138.png"/>
<!-- Unnamed () -->
<div id="u143" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</a>
</div>
</c:if>
<c:if test="${emr_medical_record == 1}">
<div class="iconContext left">
<a href="${EMRMEDICALRECORD_URLHEAD}/login?token=${token}&userName=${CURRENT_USER.userName}">
<div class="backgroupImgDiv green rightDefaultImg_bg">
<div class="rightImgDiv">
<img class="rightImg" src="${path}/static/images/门户页面/u136.png"/>
</div>
<div class="rightTitleDiv">
<div class="rightTitle" style="margin-top: 5px;">
<span>病案归档系统</span>
</div>
</div>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u144" class="ax_default _二级标题">
<div id="u144_div" class=""></div>
<!-- Unnamed () -->
<div id="u145" class="text" style="visibility: visible;text-align: center">
<p><span>病案数码影像信息管理系统</span></p>
</a>
</div>
</c:if>
<c:if test="${emr_record == 1}">
<div class="iconContext left">
<a href="${EMRRECORD_URLHEAD}/login?token=${token}&userName=${CURRENT_USER.userName}">
<div class="backgroupImgDiv orange rightDefaultImg_bg">
<div class="rightImgDiv">
<img class="rightImg" src="${path}/static/images/门户页面/u138.png"/>
</div>
<div class="rightTitleDiv">
<div class="rightTitle">
<span>病案数码影像信息管理系统</span>
</div>
</div>
</div>
</div>
</a>
</div>
</c:if>
<%--<c:if test="${emr_apply_copy == 1}">
<div class="iconContext left">
<a href="${EMRAPPLYCOPY_URLHEAD}/auth/login?token=${token}&userName=${CURRENT_USER.userName}">
<!-- Unnamed (矩形) -->
<div id="u146" class="ax_default sticky_3">
<div id="u146_div" class=""></div>
<!-- Unnamed () -->
<div id="u147" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</a>
</div>
</c:if>
<%--<c:if test="${emr_apply_copy == 1}">
<div class="iconContext left">
<a href="${EMRAPPLYCOPY_URLHEAD}/auth/login?token=${token}&userName=${CURRENT_USER.userName}">
<!-- Unnamed (矩形) -->
<div id="u146" class="ax_default sticky_3">
<div id="u146_div" class=""></div>
<!-- Unnamed () -->
<div id="u147" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
</div>
<!-- Unnamed (形状) -->
<div id="u148" class="ax_default icon">
<img id="u148_img" class="img " src="${path}/static/images/门户页面/u149.png"/>
<!-- Unnamed () -->
<div id="u149" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
<!-- Unnamed (形状) -->
<div id="u148" class="ax_default icon">
<img id="u148_img" class="img " src="${path}/static/images/门户页面/u149.png"/>
<!-- Unnamed () -->
<div id="u149" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u150" class="ax_default _二级标题">
<div id="u150_div" class=""></div>
<!-- Unnamed () -->
<div id="u151" class="text" style="visibility: visible;text-align: center">
<p><span>病案复印预约</span></p>
<!-- Unnamed (矩形) -->
<div id="u150" class="ax_default _二级标题">
<div id="u150_div" class=""></div>
<!-- Unnamed () -->
<div id="u151" class="text" style="visibility: visible;text-align: center">
<p><span>病案复印预约</span></p>
</div>
</div>
</div>
</a>
</div>
</c:if>
<c:if test="${emr_files == 1}">
<div class="iconContext left">
<a href="${EMRFILES_URLHEAD}/login?token=${token}&userName=${CURRENT_USER.userName}">
<!-- Unnamed (矩形) -->
<div id="u1461" class="ax_default sticky_3">
<div id="u1461_div" class=""></div>
<!-- Unnamed () -->
<div id="u1471" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</a>
</div>
</c:if>
<c:if test="${emr_files == 1}">
<div class="iconContext left">
<a href="${EMRFILES_URLHEAD}/login?token=${token}&userName=${CURRENT_USER.userName}">
<!-- Unnamed (矩形) -->
<div id="u1461" class="ax_default sticky_3">
<div id="u1461_div" class=""></div>
<!-- Unnamed () -->
<div id="u1471" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
</div>
<!-- Unnamed (形状) -->
<div id="u1481" class="ax_default icon">
<img id="u1481_img" class="img " src="${path}/static/images/门户页面/u148.png"/>
<!-- Unnamed () -->
<div id="u1491" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
<!-- Unnamed (形状) -->
<div id="u1481" class="ax_default icon">
<img id="u1481_img" class="img " src="${path}/static/images/门户页面/u148.png"/>
<!-- Unnamed () -->
<div id="u1491" class="text" style="display: none; visibility: hidden">
<p><span></span></p>
</div>
</div>
</div>
<!-- Unnamed (矩形) -->
<div id="u1501" class="ax_default _二级标题">
<div id="u1501_div" class=""></div>
<!-- Unnamed () -->
<div id="u1511" class="text" style="visibility: visible;text-align: center">
<p><span>病案签收</span></p>
<!-- Unnamed (矩形) -->
<div id="u1501" class="ax_default _二级标题">
<div id="u1501_div" class=""></div>
<!-- Unnamed () -->
<div id="u1511" class="text" style="visibility: visible;text-align: center">
<p><span>病案签收</span></p>
</div>
</div>
</div>
</a>
</div>
</c:if>--%>
</div>
</section>
<%--<section class="content-bottom echartsSection">
<!--上echarts-->
<div class="topEchartsDiv" style="background-color: #fff">
<!--系统操作div-->
<div class="systemOperDiv left">
<div class="echartsHeader">
<span>权限系统操作</span>
</div>
<div id="systemOperDivMain" style="width:100%;height:100%;"></div>
</div>
<!--统计用户在线div-->
<div class="alineDiv left" style="background-color: #fff">
<div class="echartsHeader">
<span>在线人数统计</span>
</div>
<div class="topEchartsRightDiv left">
<div style="width:100%;height: 11%;"><span style="font-size: 16px">本月客户阶段统计(客户总量:<span id="maxCountList"></span>)</span><hr style="color: grey"></div>
<div id="alineLineDivMain" style="width:100%;height:89%;"></div>
</div>
<div class="topEchartsRightDiv topEchartsRightDiv2 left">
<div style="width:100%;height: 11%;text-align: right"><span style="font-size: 16px;padding-right: 35px">总拜访量:<span id="loginCount"></span></span></div>
<div id="alineBarDivMain" style="width:100%;height:89%;"></div>
</div>
</div>
</div>
<div class="bottomEchartsDiv">
<div class="echartsHeader">
<span>服务器监控</span>
</div>
<div class="bottomEchartsContentDiv left">
<div id="serverListenGaugeDiv1" style="width:100%;height:100%;"></div>
</div>
<div class="bottomEchartsContentDiv left bottomEchartsContentNotLeftDiv">
<div id="serverListenGaugeDiv2" style="width:100%;height:100%;"></div>
</div>
<div class="bottomEchartsContentDiv left bottomEchartsContentNotLeftDiv">
<div id="serverListenGaugeDiv3" style="width:100%;height:100%;"></div>
</a>
</div>
</c:if>--%>
</div>
</div>
</section>--%>
</section>
</div>
</div>
<!-- 底部版权-->
<footer class="main-footer">
<div class="pull-right hidden-xs">
<b>Version</b> 20200211
<b>Version</b> 20201113
</div>
<strong>Copyright &copy; 2019-2090 厦门嘉时软件.</strong> All rights
reserved.
</footer>
</div>
<script type="text/javascript" src="${path}/static/js/getewayIndex.js?time=2019-12-15"></script>
<script type="text/javascript" src="${path}/static/js/getewayIndex.js?t=2020-10-30"></script>
<%@ include file="/WEB-INF/jspf/webSocket.jspf" %>
<%--<script src="${path}/static/js/gatewayIndexEcharts.js"></script>--%>
</body>

@ -30,6 +30,9 @@
.row-fluid{
overflow-y: hidden;
}
.g{
background-color: #f6f6f6;
}
</style>
<body class="hold-transition skin-blue sidebar-mini" scroll="no">
<input type="hidden" id="userId" value="${CURRENT_USER.userId}">
@ -71,7 +74,6 @@
<p class="hidden-xs" title="${CURRENT_USER.userName}">${CURRENT_USER.userName}</p>
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<c:choose>
@ -82,7 +84,6 @@
<p class="hidden-xs" title="${CURRENT_USER.userName}(${CURRENT_USER.powerDepts})">${CURRENT_USER.userName}(${CURRENT_USER.powerDepts})</p>
</c:otherwise>
</c:choose>
</c:otherwise>
</c:choose>
</a>
@ -112,7 +113,7 @@
</nav>
</header>
<aside class="main-sidebar">
<aside class="main-sidebar" style="background-color: #2a5ec5">
<section class="sidebar">
<!-- 查询菜单列表 -->
<!--<form action="#" method="get" class="sidebar-form">

@ -21,66 +21,142 @@
}
}
%>
<html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>嘉时软件</title>
<!--导入CSS -->
<link rel="stylesheet" href="${path}/static/css/login.css">
<script>
var path = "${path}";
</script>
</head>
<body style="background:url('${path}/static/img/login/bg.png')">
<!--头部-->
<div class="login_head">
<!--头部文字-->
<div class="head_left left">
<div class="head_left_span">
<span>${loginSet.context}</span></div>
</div>
<!--右边logon-->
<div class="head_right left">
<c:if test="${loginSet.logoPath != ''}">
<img src="${path}/${loginSet.logoPath}" width="${loginSet.logoWidth}px" height="${loginSet.logoHeight}px">
</c:if>
</div>
<style>
*{
margin: 0;
padding: 0;
box-sizing: border-box;
}
.login{
width: 100%;
height: 100vh;
display: flex;
}
.login .left{
width: 57vw;
height: 100%;
}
.login .left img{
width: 100%;
height: 100%;
}
.login .right{
margin: 0 auto;
margin-top: 30px;
}
.logo{
margin-top: 74px;
margin-bottom: 123px;
display: flex;
align-items: center;
}
.title{
text-align: center;
font-size: 40px;
font-weight: 500;
margin-top: 34px;
}
.shuru{
width: 500px;
height: 50px;
background: #EFF0F4;
border-radius: 6px;
border: 1px solid #EFF0F4;
outline: none;
padding-left: 20px;
font-size: 16px;
}
.shuru:focus{
border-color: #09f !important;
}
.item{
margin-bottom: 20px;
}
.item1{
margin-bottom: 30px;
}
.item-name{
font-size: 22px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #555555;
margin: 10px 0;
}
.btn{
width: 500px;
height: 64px;
background: linear-gradient(90deg, #00AFFF 0%, #007CFF 100%);
border-radius: 6px;
text-align: center;
line-height: 53px;
cursor: pointer;
font-size: 22px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #FFFFFF;
margin-top: 108px;
}
.boxCss{
margin-top: 60px;
}
.bottom{
width: 500px;
text-align: center;
font-size: 14px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #919191;
margin-top: 120px;
}
</style>
<body>
<div class="login">
<div class="left">
<img src="./static/img/login/login_bg.png" alt="">
</div>
<!--中间-->
<div class="login_content">
<div class="content_left left">
<c:if test="${loginSet.pic1Path != ''}">
<div class="image1" style="background:url('${path}/${loginSet.pic1Path}') no-repeat">
</div>
</c:if>
<div class="right">
<c:if test="${loginSet.logoPath != ''}">
<img src="${path}/${loginSet.logoPath}" width="${loginSet.logoWidth}px" height="${loginSet.logoHeight}px">
</c:if>
<div class="title">
账号登录
</div>
<div class="content_login left">
<form method="post" action="${path}/login">
<div class="login_div" style="background:url('${path}/static/img/login/登录框.png') no-repeat">
<div class="login_title">
<h3 style="text-align: center">账号登录</h3>
</div>
<div class="inputDiv">
<input type="text" id="userName" name="userName" class="form-control uname left" placeholder="用户名" required value="<%=userName%>"/>
</div>
<div class="inputDiv">
<input type="password" id="userPwd" name="userPwd" class="form-control pword m-b" placeholder="密码" required value="<%=password%>" autocomplete="new-password"/>
</div>
<div class="inputDiv">
<label><input type="checkbox" name="rememberMe" id="rememberMe" value="yes" style="vertical-align:middle; margin-top:0;" <%=checked%>>记住密码</label>
</div>
<%--<a href="#" id="forgetPwd" style="float: right;">忘记密码了?</a>--%>
<div class="inputDiv">
<button class="btn btn-success btn-block">登录</button>
<p class="text-danger">${msg}</p>
</div>
<div class="boxCss">
<form action="">
<div class="item item1">
<div class="item-name">用户名</div>
<input type="text" placeholder="请输入" class="shuru" id="userName" name="userName" >
</div>
<div class="item">
<div class="item-name">用户密码</div>
<input type="password" placeholder="请输入" class="shuru" id="userPwd" name="userPwd">
</div>
<div >
<input type="checkbox" name="" id="">
<span>记住密码</span>
</div>
</form>
</div>
<div class="btn" onclick="login()">立即登录</div>
<div class="bottom">
<div class="top">技术支持:厦门嘉时软件科技有限公司 </div>
<div class="bot">Copyright © 2019-2090 厦门嘉时软件. All rights reserved.</div>
</div>
</div>
<!--尾部-->
<div class="login_foot">
<div class="span_div"><span>${loginSet.footContext}</span></div>
</div>
<script type="text/javascript" src="${path}/static/js/login.js"></script>
</div>
<script type="text/javascript" src="${path}/static/js/login.js?time=2022-01-13"></script>
</body>
</html>

@ -0,0 +1,233 @@
<%@ page import="java.net.URLDecoder" %>
<%@ page import="com.manage.encrypt.Base64" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ include file="/WEB-INF/jspf/common.jspf" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
String password = "";
String userName = "";
String checked = "";
Cookie[] cookies = request.getCookies(); //取出cookie对象组
for (int i = 0; cookies != null && i < cookies.length; i++) {
Cookie cookie = cookies[i]; // 取出其中的一个对象含有name ,value
if (cookie != null && "name".equals(cookie.getName())) { //获取第一个cookie对象的name
userName = URLDecoder.decode(cookie.getValue(), "UTF-8");//进行解码
checked = "checked";
}
if (cookie != null && "password".equals(cookie.getName())) {
password = cookie.getValue();
password = Base64.decodeBase64(password);
}
}
%>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>嘉时软件</title>
</head>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
.login {
width: 100%;
height: 100vh;
display: flex;
}
.login .left {
width: 57vw;
height: 100%;
}
.qRCodeDiv{
width: 70%;
height: 240px;
margin-left: 80px;
margin-top: 11%;
}
.qRCodeDivBut{
width: 70%;
height: 240px;
margin-top: 11%;
}
.login .left img {
width: 100%;
height: 100%;
}
.login .right {
display: flex;
flex-direction: column;
align-items: center;
width: 671px;
position: relative;
margin: 0 auto;
margin-top: 30px;
}
.logo {
margin-top: 74px;
margin-bottom: 123px;
display: flex;
align-items: center;
}
.title {
text-align: center;
font-size: 40px;
font-weight: 500;
margin-top: 34px;
}
.shuru {
width: 500px;
height: 50px;
background: #EFF0F4;
border-radius: 6px;
border: 1px solid #EFF0F4;
outline: none;
padding-left: 20px;
font-size: 16px;
}
.shuru:focus {
border-color: #09f !important;
}
.item {
margin-bottom: 20px;
}
.item1 {
margin-bottom: 30px;
}
.item-name {
font-size: 22px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #555555;
margin: 10px 0;
}
.btn {
width: 500px;
height: 64px;
background: linear-gradient(90deg, #00AFFF 0%, #007CFF 100%);
border-radius: 6px;
text-align: center;
line-height: 53px;
cursor: pointer;
font-size: 22px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #FFFFFF;
margin-top: 108px;
}
.UserPassbtn {
width: 260px;
height: 60px;
background: linear-gradient(90deg, #00AFFF 0%, #007CFF 100%);
border-radius: 6px;
text-align: center;
line-height: 53px;
cursor: pointer;
font-size: 22px;
font-family: Source Han Sans CN;
font-weight: 400;
color: #FFFFFF;
margin-top: 10px;
}
.boxCss {
margin-top: 60px;
}
.bottom {
width: 500px;
text-align: center;
font-size: 14px;
font-family: Source Han Sans CN;
font-weight: 400;
position: absolute;
bottom: 0;
color: #919191;
}
</style>
<body>
<div class="login">
<div class="left">
<img src="./static/img/login/login_bg.png" alt="">
</div>
<div class="right">
<c:if test="${loginSet.logoPath != ''}">
<img src="${path}/${loginSet.logoPath}" width="${loginSet.logoWidth}px" height="${loginSet.logoHeight}px">
</c:if>
<div id="switchHandoff">
<div class="title">
账号登录
</div>
<div class="boxCss">
<form action="">
<div class="item item1">
<div class="item-name">用户名</div>
<input type="text" placeholder="请输入" class="shuru" id="userName" name="userName">
</div>
<div class="item">
<div class="item-name">用户密码</div>
<input type="password" placeholder="请输入" class="shuru" id="userPwd" name="userPwd">
</div>
<div style="display: flex;justify-content: space-between">
<div>
<input type="checkbox" name="" id="">
<span>记住密码</span>
</div>
<div>
<input value="扫码登录" type="button" name="" id="scanCode" onclick="handoffLogin()">
</div>
</div>
</form>
</div>
<div class="btn" onclick="login()">立即登录</div>
</div>
<div id="switchHandoff2" style="display:none;flex-direction: column;align-items: center ">
<div class="title">
扫码登录
</div>
<%-- <div class="qRCodeDiv" >--%>
<%-- <img id="QRcordImg" height="300px" width="300px" class="QRcordImg">--%>
<%-- </div>--%>
<img id="QRcordImg" height="300px" width="300px" class="QRcordImg">
<div class="boxCss">
<form action="">
<div class="UserPassbtn" onclick="handoffLogin2()">账号密码登录</div>
</form>
</div>
</div>
<div class="bottom">
<div class="top">技术支持:厦门嘉时软件科技有限公司</div>
<div class="bot">Copyright © 2019-2090 厦门嘉时软件. All rights reserved.</div>
</div>
</div>
</div>
<script type="text/javascript" src="${path}/static/js/zsxmHospitalLogin.js?time=2022-01-13"></script>
</body>
</html>

@ -0,0 +1,40 @@
<%--
Created by IntelliJ IDEA.
User: ljx
Date: 2019/5/13
Time: 17:02
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>修改密码</title>
<%@ include file="/WEB-INF/jspf/common.jspf" %>
</head>
<style>
img{
width: 300px;
height: 300px;
position: absolute;
top: 50%;
left: 50%;
margin-top: -122px;
margin-left: -109px;
}
</style>
<body>
<fieldset>
<legend style="text-align: center;font-weight: bold;font-size: 25px">修改密码</legend>
</fieldset>
<div class="flexbox">
<img src="../static/img/login/厦门中山医院修改密码.png" >
</div>
</body>
<script src="${path}/static/js/updatePassword.js?t=1"></script>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

@ -12,36 +12,30 @@ $(function(){
})
var flag = $("#flag").val();
if(flag != ''){
noticeManage();
menuClick($(".notice-menu").get(0),'notice');
}
})
//跳转到主页
function mainManage(){
$("#iframeDiv").hide();
$("#sectionDiv").show();
}
//跳转到通知
function noticeManage(){
$("#iframeDiv").show();
$("#sectionDiv").hide();
$("#iframe").prop("src",path+"/notice/pageUI");
}
//跳转到帮助文档
function helpDocumentManage(){
$("#iframeDiv").show();
$("#sectionDiv").hide();
$("#iframe").prop("src",path+"/main");
}
//跳转到修改密码
function updatePassword(){
$("#iframeDiv").show();
$("#sectionDiv").hide();
$("#iframe").prop("src",path+"/user/toUpdatePassword");
}
//跳转到联系我们
function callMeManage(){
$("#iframeDiv").show();
$("#sectionDiv").hide();
$("#iframe").prop("src",path+"/main");
function menuClick(el,type){
$(".home-sidebar-menu li").removeClass('active');
$(el).parent().addClass("active");
switch (type){
case 'notice':
$("#iframe").prop("src",path+"/notice/pageUI");
break;
case 'pwd':
$("#iframe").prop("src",path+"/user/toUpdatePassword");
break;
case 'help':
$("#iframe").prop("src",path+"/user/updatePersonal");
break;
case 'contact':
$("#iframe").prop("src",path+"/main");
}
if(type==='home'){
$("#iframeDiv").hide();
$("#sectionDiv").show();
}else {
$("#iframeDiv").show();
$("#sectionDiv").hide();
}
}

@ -1,7 +1,7 @@
/**
* Created by ljx on 2019/4/25.
*/
$(function(){
$(function () {
//cookie数据保存格式是key=value;key=value;形式loginInfo为保存在cookie中的key值具体看controller代码
/*if(str != ""){
var userName = str.split("#")[0];
@ -12,7 +12,7 @@ $(function(){
//并且选中复选框
$("#rememberMe").attr("checked", true);
}*/
//获取cookie
/*function getCookie(cname) {
var name = cname + "=";
@ -25,40 +25,100 @@ $(function(){
return "";
}*/
$("#forgetPwd").on("click",function(){
$("#forgetPwd").on("click", function () {
alert("请联系管理员进行修改密码!");
});
});
function login() {
var userName = $("#userName").val();
var userPwd = $("#userPwd").val();
var rememberMeChecked = $("input[type='checkbox']").is(':checked');
var rememberMe = '';
if (rememberMeChecked) {
rememberMe = 'yes';
}
if (userName == '') {
toastr.warning("用户名不能为空!");
} else {
if (userPwd == '') {
toastr.warning("密码不能为空!");
} else {
$.ajax({
type: "POST",
url: path + "/login",
data: {userName: userName, userPwd: userPwd, rememberMe: rememberMe},
success: function (data) {
window.location.href = 'gatewayPage';
},
})
}
}
}
$('body').keydown(function () {
if(event.keyCode == '13'){
var userName = $("#userName").val();
var userPwd = $("#userPwd").val();
var rememberMeChecked = $("input[type='checkbox']").is(':checked');
var rememberMe = '';
if(rememberMeChecked){
rememberMe = 'yes';
if (event.keyCode == '13') {
login();
}
})
var interval = "";
var qrCode = "";
function handoffLogin() {
$.ajax({
type: "POST",
url: path + '/font/getBase64',
success: function (data) {
var qrCodeImg = data.data.qrCodeImg;
$("#QRcordImg").prop("src", "data:image/jpeg;base64," + qrCodeImg);
qrCode = data.data.qrCode;
//轮询监听用户扫码
interval = setInterval(scanCodeLogin, 1000, qrCode);
}
if(userName == ''){
toastr.warning("用户名不能为空!");
}else{
if(userPwd == ''){
toastr.warning("密码不能为空!");
}else{
})
$("#switchHandoff").css("display", "none");
$("#switchHandoff2").css("display", "flex");
}
function handoffLogin2() {
$("#switchHandoff").css("display", "block");
$("#switchHandoff2").css("display", "none");
clearInterval(interval);
}
function scanCodeLogin() {
$.ajax({
type: "POST",
data: {qrCode: qrCode},
url: path + '/font/getQueryQRCode',
success: function (body) {
if (body.data.qrCodeStatus == "LoginQrCodeExpire" || body.data.qrCodeStatus == "LoginQrCodeInvalid") {
handoffLogin()
return "";
}
var userIdCardNum = body.data.userIdCardNum;
if (userIdCardNum != "") {
clearInterval(interval);
$.ajax({
type : "POST",
url : path+"/login",
data: {userName:userName, userPwd:userPwd,rememberMe:rememberMe},
success : function(data) {
//window.location.href = 'gatewayPage';
type: "POST",
url: path + "/font/XMZSYYlogin",
data: {idCard:userIdCardNum},
success: function (data) {
window.location.href = 'gatewayPage';
},
})
}
}
}
})
})
}

@ -0,0 +1,256 @@
/*
* A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
* Digest Algorithm, as defined in RFC 1321.
* Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.
* Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
* Distributed under the BSD License
* See http://pajhome.org.uk/crypt/md5 for more info.
*/
/*
* Configurable variables. You may need to tweak these to be compatible with
* the server-side, but the defaults work in most cases.
*/
var hexcase = 0; /* hex output format. 0 - lowercase; 1 - uppercase */
var b64pad = ""; /* base-64 pad character. "=" for strict RFC compliance */
var chrsz = 8; /* bits per input character. 8 - ASCII; 16 - Unicode */
/*
* These are the functions you'll usually want to call
* They take string arguments and return either hex or base-64 encoded strings
*/
function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
function b64_md5(s){ return binl2b64(core_md5(str2binl(s), s.length * chrsz));}
function str_md5(s){ return binl2str(core_md5(str2binl(s), s.length * chrsz));}
function hex_hmac_md5(key, data) { return binl2hex(core_hmac_md5(key, data)); }
function b64_hmac_md5(key, data) { return binl2b64(core_hmac_md5(key, data)); }
function str_hmac_md5(key, data) { return binl2str(core_hmac_md5(key, data)); }
/*
* Perform a simple self-test to see if the VM is working
*/
function md5_vm_test()
{
return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72";
}
/*
* Calculate the MD5 of an array of little-endian words, and a bit length
*/
function core_md5(x, len)
{
/* append padding */
x[len >> 5] |= 0x80 << ((len) % 32);
x[(((len + 64) >>> 9) << 4) + 14] = len;
var a = 1732584193;
var b = -271733879;
var c = -1732584194;
var d = 271733878;
for(var i = 0; i < x.length; i += 16)
{
var olda = a;
var oldb = b;
var oldc = c;
var oldd = d;
a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);
d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);
c = md5_ff(c, d, a, b, x[i+ 2], 17, 606105819);
b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);
a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);
d = md5_ff(d, a, b, c, x[i+ 5], 12, 1200080426);
c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);
b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);
a = md5_ff(a, b, c, d, x[i+ 8], 7 , 1770035416);
d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);
c = md5_ff(c, d, a, b, x[i+10], 17, -42063);
b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);
a = md5_ff(a, b, c, d, x[i+12], 7 , 1804603682);
d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);
c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);
b = md5_ff(b, c, d, a, x[i+15], 22, 1236535329);
a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);
d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
c = md5_gg(c, d, a, b, x[i+11], 14, 643717713);
b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);
a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);
d = md5_gg(d, a, b, c, x[i+10], 9 , 38016083);
c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);
b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);
a = md5_gg(a, b, c, d, x[i+ 9], 5 , 568446438);
d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);
c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);
b = md5_gg(b, c, d, a, x[i+ 8], 20, 1163531501);
a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);
d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);
c = md5_gg(c, d, a, b, x[i+ 7], 14, 1735328473);
b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);
a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);
d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);
c = md5_hh(c, d, a, b, x[i+11], 16, 1839030562);
b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);
a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
d = md5_hh(d, a, b, c, x[i+ 4], 11, 1272893353);
c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);
b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);
a = md5_hh(a, b, c, d, x[i+13], 4 , 681279174);
d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);
c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);
b = md5_hh(b, c, d, a, x[i+ 6], 23, 76029189);
a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);
d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);
c = md5_hh(c, d, a, b, x[i+15], 16, 530742520);
b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);
a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);
d = md5_ii(d, a, b, c, x[i+ 7], 10, 1126891415);
c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);
b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);
a = md5_ii(a, b, c, d, x[i+12], 6 , 1700485571);
d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);
c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);
b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);
a = md5_ii(a, b, c, d, x[i+ 8], 6 , 1873313359);
d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);
c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);
b = md5_ii(b, c, d, a, x[i+13], 21, 1309151649);
a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);
d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);
c = md5_ii(c, d, a, b, x[i+ 2], 15, 718787259);
b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);
a = safe_add(a, olda);
b = safe_add(b, oldb);
c = safe_add(c, oldc);
d = safe_add(d, oldd);
}
return Array(a, b, c, d);
}
/*
* These functions implement the four basic operations the algorithm uses.
*/
function md5_cmn(q, a, b, x, s, t)
{
return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);
}
function md5_ff(a, b, c, d, x, s, t)
{
return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
}
function md5_gg(a, b, c, d, x, s, t)
{
return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
}
function md5_hh(a, b, c, d, x, s, t)
{
return md5_cmn(b ^ c ^ d, a, b, x, s, t);
}
function md5_ii(a, b, c, d, x, s, t)
{
return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);
}
/*
* Calculate the HMAC-MD5, of a key and some data
*/
function core_hmac_md5(key, data)
{
var bkey = str2binl(key);
if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);
var ipad = Array(16), opad = Array(16);
for(var i = 0; i < 16; i++)
{
ipad[i] = bkey[i] ^ 0x36363636;
opad[i] = bkey[i] ^ 0x5C5C5C5C;
}
var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz);
return core_md5(opad.concat(hash), 512 + 128);
}
/*
* Add integers, wrapping at 2^32. This uses 16-bit operations internally
* to work around bugs in some JS interpreters.
*/
function safe_add(x, y)
{
var lsw = (x & 0xFFFF) + (y & 0xFFFF);
var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
return (msw << 16) | (lsw & 0xFFFF);
}
/*
* Bitwise rotate a 32-bit number to the left.
*/
function bit_rol(num, cnt)
{
return (num << cnt) | (num >>> (32 - cnt));
}
/*
* Convert a string to an array of little-endian words
* If chrsz is ASCII, characters >255 have their hi-byte silently ignored.
*/
function str2binl(str)
{
var bin = Array();
var mask = (1 << chrsz) - 1;
for(var i = 0; i < str.length * chrsz; i += chrsz)
bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
return bin;
}
/*
* Convert an array of little-endian words to a string
*/
function binl2str(bin)
{
var str = "";
var mask = (1 << chrsz) - 1;
for(var i = 0; i < bin.length * 32; i += chrsz)
str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask);
return str;
}
/*
* Convert an array of little-endian words to a hex string.
*/
function binl2hex(binarray)
{
var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
var str = "";
for(var i = 0; i < binarray.length * 4; i++)
{
str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
hex_tab.charAt((binarray[i>>2] >> ((i%4)*8 )) & 0xF);
}
return str;
}
/*
* Convert an array of little-endian words to a base-64 string
*/
function binl2b64(binarray)
{
var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var str = "";
for(var i = 0; i < binarray.length * 4; i += 3)
{
var triplet = (((binarray[i >> 2] >> 8 * ( i %4)) & 0xFF) << 16)
| (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 )
| ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF);
for(var j = 0; j < 4; j++)
{
if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;
else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);
}
}
return str;
}

@ -0,0 +1,124 @@
/**
* Created by ljx on 2019/4/25.
*/
$(function () {
//cookie数据保存格式是key=value;key=value;形式loginInfo为保存在cookie中的key值具体看controller代码
/*if(str != ""){
var userName = str.split("#")[0];
var userPwd = str.split("#")[1];
//自动填充用户名和密码
$("#userName").val(userName);
$("#userPwd").val(userPwd);
//并且选中复选框
$("#rememberMe").attr("checked", true);
}*/
//获取cookie
/*function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
}*/
$("#forgetPwd").on("click", function () {
alert("请联系管理员进行修改密码!");
});
});
function login() {
var userName = $("#userName").val();
var userPwd = $("#userPwd").val();
var rememberMeChecked = $("input[type='checkbox']").is(':checked');
var rememberMe = '';
if (rememberMeChecked) {
rememberMe = 'yes';
}
if (userName == '') {
toastr.warning("用户名不能为空!");
} else {
if (userPwd == '') {
toastr.warning("密码不能为空!");
} else {
$.ajax({
type: "POST",
url: path + '/font/zsxmHospitalLogin',
data: {userName: userName, userPwd: userPwd, rememberMe: rememberMe},
success: function (data) {
window.location.href = 'gatewayPage';
},
})
}
}
}
$('body').keydown(function () {
if (event.keyCode == '13') {
login();
}
})
var interval = "";
var qrCode = "";
function handoffLogin() {
$.ajax({
type: "POST",
url: path + '/font/getBase64',
success: function (data) {
var qrCodeImg = data.data.qrCodeImg;
$("#QRcordImg").prop("src", "data:image/jpeg;base64," + qrCodeImg);
qrCode = data.data.qrCode;
//轮询监听用户扫码
interval = setInterval(scanCodeLogin, 1000, qrCode);
}
})
$("#switchHandoff").css("display", "none");
$("#switchHandoff2").css("display", "flex");
}
function handoffLogin2() {
$("#switchHandoff").css("display", "block");
$("#switchHandoff2").css("display", "none");
clearInterval(interval);
}
function scanCodeLogin() {
$.ajax({
type: "POST",
data: {qrCode: qrCode},
url: path + '/font/getQueryQRCode',
success: function (body) {
if (body.data.qrCodeStatus == "LoginQrCodeExpire" || body.data.qrCodeStatus == "LoginQrCodeInvalid") {
handoffLogin()
return "";
}
var userJobNum = body.data.userJobNum;
if (userJobNum != "") {
clearInterval(interval);
$.ajax({
type: "POST",
url: path + "/font/XMZSYYlogin",
data: {userName:userJobNum},
success: function (data) {
window.location.href = 'gatewayPage';
},
})
}
}
})
}

@ -19,6 +19,11 @@
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
</dependency>
<dependency>
<groupId>com.github.anish7kumar</groupId>
<artifactId>XML_JSON</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
<build>

@ -0,0 +1,18 @@
package com.manage.dao;
import com.manage.vo.PowerHospitalVo;
import java.util.List;
/**
* @InterfaceName power_Hospital_FlagMapper
* @Description
* @Author linjj
* @Date 2023/5/22 16:21
* @Version 1.0
*/
public interface Power_Hospital_FlagMapper {
List<PowerHospitalVo> getHospitalFlag();
}

@ -24,6 +24,10 @@ public interface Power_UserMapper {
public Power_UserVo findPowerUserByUserNameAndUserPwd(Power_User powerUser);
public Power_UserVo findPowerUserByIdCard(Power_User powerUser);
public Power_UserVo casLoginUserName(String userName);
List<Power_UserVo> findSomeByMore(Power_UserVo powerUser);
int getTotal(Power_UserVo powerUser);

@ -37,6 +37,7 @@ public class Power_User{
private String remark;
public Integer getUserId() {
return userId;
}

@ -0,0 +1,41 @@
package com.manage.vo;
/**
* @ClassName PowerHospitalVo
* @Description
* @Author linjj
* @Date 2023/5/22 16:24
* @Version 1.0
*/
public class PowerHospitalVo {
private Integer id;
private String hospitalFlag;
private String hospitalName;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getHospitalFlag() {
return hospitalFlag;
}
public void setHospitalFlag(String hospitalFlag) {
this.hospitalFlag = hospitalFlag;
}
public String getHospitalName() {
return hospitalName;
}
public void setHospitalName(String hospitalName) {
this.hospitalName = hospitalName;
}
}

@ -7,6 +7,19 @@ import java.util.Set;
public class Power_UserVo extends Power_User {
private Integer limit;
private String name;
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
private Integer page;
private Integer offset;

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.manage.dao.Power_Hospital_FlagMapper" >
<select id="getHospitalFlag" resultType="com.manage.vo.PowerHospitalVo">
select * from power_hospital_flag
</select>
</mapper>

@ -789,7 +789,7 @@ on FIND_IN_SET(dict.deptIds,power_user.dept_id)
AND
dict_status = 1
GROUP BY
sys_flag
sys_flag,sort
UNION ALL
SELECT
sys_flag,sort
@ -815,7 +815,7 @@ on FIND_IN_SET(dict.deptIds,power_user.dept_id)
AND
dict_status = 1
GROUP BY
sys_flag
sys_flag,sort
</select>
<insert id="simpleInsertDict" parameterType="java.util.List">
INSERT INTO power_sys_dict(

@ -238,7 +238,7 @@
power_role.downLoad_record,
power_role.show_print,
user_name,
NAME,
name,
user_sex,
user_age,
user_tel,
@ -728,8 +728,68 @@
<select id="getUserInfoOne" resultType="com.manage.vo.Power_UserVo">
select * from qfUserInfo where userName=#{userName} and passWord=#{passWord}
</select>
<select id="casLoginUserName" resultType="com.manage.vo.Power_UserVo">
SELECT
user_id,
power_role.show_record,
power_role.downLoad_record,
power_role.show_print,
user_name,
NAME,
user_sex,
user_age,
user_tel,
power_user.role_id,
power_user.dept_id,
power_user.effective,
power_user.create_date,
power_user.creater,
power_user.update_date,
power_user.updater,
power_user.remark,
GROUP_CONCAT(power_dept.dept_name) powerDepts
FROM
power_user
LEFT JOIN power_role ON power_user.role_id = power_role.role_id
LEFT JOIN power_dept ON FIND_IN_SET(
power_dept.dept_id,
power_user.dept_id
)
where user_name = #{userName,jdbcType=VARCHAR}
GROUP BY user_id
</select>
<select id="findPowerUserByIdCard" resultType="com.manage.vo.Power_UserVo">
SELECT
user_id,
power_role.show_record,
power_role.downLoad_record,
power_role.show_print,
user_name,
name,
user_sex,
user_age,
user_tel,
power_user.role_id,
power_user.dept_id,
power_user.effective,
power_user.create_date,
power_user.creater,
power_user.update_date,
power_user.updater,
power_user.remark,
GROUP_CONCAT(power_dept.dept_name) powerDepts
FROM
power_user
LEFT JOIN power_role ON power_user.role_id = power_role.role_id
LEFT JOIN power_dept ON FIND_IN_SET(
power_dept.dept_id,
power_user.dept_id
)
where power_user.user_name=#{userName}
GROUP BY user_id
</select>
<update id="updateinsertUserInfo" parameterType="com.manage.entity.Power_User">
<update id="updateinsertUserInfo" parameterType="com.manage.entity.Power_User">
update qfUserInfo
<set>
passWord = #{passWord,jdbcType=VARCHAR},

@ -61,6 +61,21 @@
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>1.7.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.github.anish7kumar</groupId>
<artifactId>XML_JSON</artifactId>
<version>1.0.1</version>
</dependency>
<!--系统使用率导包开始-->
<!--<dependency> &lt;!&ndash;工具类 小数格式化 可以改为其他&ndash;&gt;
<groupId>cn.hutool</groupId>

@ -0,0 +1,167 @@
package com.manage.util;
import com.google.gson.JsonObject;
import org.apache.http.Consts;
import org.apache.http.HttpEntity;
import org.apache.http.ParseException;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import java.io.IOException;
import java.util.Map;
/**
* @ClassName HttpUtil
* @Description
* @Author linjj
* @Date 2023/4/7 13:59
* @Version 1.0
*/
public class HttpUtil {
private static final CloseableHttpClient httpclient = HttpClients.createDefault();
/**
* HttpGet
* @param url
* @return
*/
public static String sendGet(String url) {
HttpGet httpget = new HttpGet(url);
CloseableHttpResponse response = null;
try {
response = httpclient.execute(httpget);
} catch (IOException e1) {
e1.printStackTrace();
}
String result = null;
try {
HttpEntity entity = response.getEntity();
if (entity != null) {
result = EntityUtils.toString(entity);
}
} catch (ParseException | IOException e) {
e.printStackTrace();
} finally {
try {
response.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return result;
}
/**
* HttpGet
* @param url
* @param header
* @return
*/
public static String sendGet(String url, Map<String, String> header) {
HttpGet httpGet = new HttpGet(url);
//设置头部
for(Map.Entry entry:header.entrySet()){
// System.out.println(entry.getKey()+ "###########" + entry.getValue());
httpGet.setHeader(entry.getKey().toString(),entry.getValue().toString());
}
// System.out.println(jsonObject.toString());
// HttpGet httpget = new HttpGet(url);
CloseableHttpResponse response = null;
try {
response = httpclient.execute(httpGet);
} catch (IOException e1) {
e1.printStackTrace();
}
String result = null;
try {
HttpEntity entity = response.getEntity();
if (entity != null) {
result = EntityUtils.toString(entity);
}
} catch (ParseException | IOException e) {
e.printStackTrace();
} finally {
try {
response.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return result;
}
/**
* HttpPostmap
* @param url
* @param map
* @return
*/
public static String sendPost(String url, Map<String,String> map) {
// JsonObject formparams = new JsonObject();
// for (Map.Entry<String, String> entry : map.entrySet()) {
// formparams.add(entry.getKey(), entry.getValue();
// }
//json 格式
// UrlEncodedFormEntity entity = new UrlEncodedFormEntity(formparams, Consts.UTF_8);
JsonObject jsonObject = new JsonObject();
for(Map.Entry entry:map.entrySet()){
// System.out.println(entry.getKey()+ "###########" + entry.getValue());
jsonObject.addProperty(entry.getKey().toString(),entry.getValue().toString());
}
// System.out.println(jsonObject.toString());
StringEntity entity = new StringEntity(jsonObject.toString(), Consts.UTF_8);
HttpPost httppost = new HttpPost(url);
httppost.setEntity(entity);
CloseableHttpResponse response = null;
try {
response = httpclient.execute(httppost);
} catch (IOException e) {
e.printStackTrace();
}
HttpEntity entity1 = response.getEntity();
String result = null;
try {
result = EntityUtils.toString(entity1);
} catch (ParseException | IOException e) {
e.printStackTrace();
}
return result;
}
/**
* HttpPost
* @param url
* @return
*/
public static String sendPost(String url) {
HttpPost httppost = new HttpPost(url);
CloseableHttpResponse response = null;
try {
response = httpclient.execute(httppost);
} catch (IOException e) {
e.printStackTrace();
}
HttpEntity entity = response.getEntity();
String result = null;
try {
result = EntityUtils.toString(entity);
} catch (ParseException | IOException e) {
e.printStackTrace();
}
return result;
}
}

@ -1,5 +1,5 @@
/**
*
*
*/
package com.manage.util;
@ -9,25 +9,25 @@ import java.util.Map;
/**
* <p>Title:Msg </p>
* <p>Description:common return class </p>
* <p>Company: </p>
* <p>Company: </p>
* @author hu
* @date
*/
public class Msg {
//state:100-success 200-fail
//state:100-success 200-fail
private int code;
//提示信息
private String msg;
//用户要返回给浏览器的数据
private Map<String,Object> extend=new HashMap<String,Object>();
public static Msg success(){
Msg result=new Msg();
result.setCode(100);
result.setMsg("success");
return result;
}
public static Msg fail(){
Msg result=new Msg();
result.setCode(200);
@ -35,6 +35,14 @@ public class Msg {
return result;
}
public static Msg failUser(){
Msg result=new Msg();
result.setCode(200);
result.setMsg("账号或密码错误");
return result;
}
public static Msg fail(String msg){
Msg result=new Msg();
result.setCode(200);
@ -46,7 +54,7 @@ public class Msg {
this.getExtend().put(key, value);
return this;
}
public int getCode() {
return code;
@ -71,5 +79,5 @@ public class Msg {
public void setExtend(Map<String, Object> extend) {
this.extend = extend;
}
}

@ -72,6 +72,11 @@
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
</dependency>
<dependency>
<groupId>com.github.anish7kumar</groupId>
<artifactId>XML_JSON</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
<build>
<plugins>

@ -20,6 +20,8 @@ public interface Power_UserService {
int insertSelective(Power_User powerUser);
int insertUserName(Power_User powerUser);
Power_UserVo selectByPrimaryKey(Integer userId);
int updateByPrimaryKeySelective(Power_User record,HttpServletRequest request);
@ -39,6 +41,16 @@ public interface Power_UserService {
* */
public Power_UserVo findPowerUserByUserNameAndUserPwd(Power_User powerUser);
/**
* @description:
* @author linjj
* @date: 2023/5/24 15:46
*/
public Power_UserVo findPowerUserByIdCard(Power_User powerUser);
public Power_UserVo casLoginUserName(String userName);
/**
* @Date 2019-4-22
* @Author ljx

@ -755,14 +755,15 @@ public class PowerServiceImpl implements PowerService {
public List<PowerTree> getRolePowerTreeBySysFlag(String sysFlag,Power_User user) {
//根据系统标识查询科室id
List<Power_Sys_DictVo> dicts = new ArrayList<>();
if(user.getRoleId() == 0){
dicts = sysDictMapper.selectAllByAdmin();
}/*else if(user.getRoleId() == -100){
dicts = sysDictMapper.selectAllByHosRoleId(user.getUserId());
}*/else{
dicts = sysDictMapper.selectAllByHosRoleId(user.getUserId(),user.getRoleId(),null);
//dicts = sysDictMapper.selectAllByUserId(user.getUserId());
}
dicts = sysDictMapper.selectAllByAdmin();
// if(user.getRoleId() == 0){
// dicts = sysDictMapper.selectAllByAdmin();
// }/*else if(user.getRoleId() == -100){
// dicts = sysDictMapper.selectAllByHosRoleId(user.getUserId());
// }*/else{
// dicts = sysDictMapper.selectAllByHosRoleId(user.getUserId(),user.getRoleId(),null);
// //dicts = sysDictMapper.selectAllByUserId(user.getUserId());
// }
//获取用户集合
List<Power_Sys_DictVo> userList = new ArrayList<>();
List<PowerTree> treeList = new ArrayList<>();

@ -58,19 +58,19 @@ public class Power_UserServiceImpl implements Power_UserService {
}
@Override
public List<Power_User> checkUserName(String userName){
public List<Power_User> checkUserName(String userName) {
return powerUserMapper.checkUserName(userName);
}
@Override
public int insertSelective(Power_User powerUser) {
//取得当前登录账号
ServletRequestAttributes attr=(ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request =attr.getRequest();
HttpSession session= request.getSession();
Power_User powerUser1 =(Power_User) session.getAttribute("CURRENT_USER");
ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes();
HttpServletRequest request = attr.getRequest();
HttpSession session = request.getSession();
Power_User powerUser1 = (Power_User) session.getAttribute("CURRENT_USER");
if(powerUser.getUserPwd() != null && powerUser.getUserName() != null){
if (powerUser.getUserPwd() != null && powerUser.getUserName() != null) {
powerUser.setUserPwd(Base64.encode(MD5.KL(powerUser.getUserPwd())));
}
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式
@ -82,16 +82,34 @@ public class Power_UserServiceImpl implements Power_UserService {
return powerUserMapper.insertSelective(powerUser);
}
@Override
public int insertUserName(Power_User powerUser) {
if (powerUser.getUserPwd() != null && powerUser.getUserName() != null) {
powerUser.setUserPwd(Base64.encode(MD5.KL(powerUser.getUserPwd())));
}
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式
String date = df.format(new Date());// new Date()为获取当前系统时间
powerUser.setCreater("admin");
powerUser.setCreateDate(date);
powerUser.setUpdater("admin");
powerUser.setUpdateDate(date);
powerUser.setEffective(1);
powerUser.setDeptId("999");
powerUser.setRoleId(999);
return powerUserMapper.insertSelective(powerUser);
}
@Override
public Power_UserVo selectByPrimaryKey(Integer userId) {
StringBuilder power_depts = new StringBuilder();
Power_UserVo power_user = powerUserMapper.selectByPrimaryKey(userId);
power_user.setUserPwd(MD5.JM(Base64.decode(power_user.getUserPwd())));
List<Power_Dept> power_depts1 = power_deptService.selectByPrimaryKeys(power_user.getDeptId());
for(int j=0;j<power_depts1.size();j++){
if(j<power_depts1.size()-1){
for (int j = 0; j < power_depts1.size(); j++) {
if (j < power_depts1.size() - 1) {
power_depts.append(power_depts1.get(j).getDeptName()).append(",");
}else{
} else {
power_depts.append(power_depts1.get(j).getDeptName());
}
}
@ -100,10 +118,10 @@ public class Power_UserServiceImpl implements Power_UserService {
}
@Override
public int updateByPrimaryKeySelective(Power_User powerUser,HttpServletRequest request) {
public int updateByPrimaryKeySelective(Power_User powerUser, HttpServletRequest request) {
//取得当前登录账号
HttpSession session= request.getSession();
Power_User powerUser1 =(Power_User) session.getAttribute("CURRENT_USER");
HttpSession session = request.getSession();
Power_User powerUser1 = (Power_User) session.getAttribute("CURRENT_USER");
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");//设置日期格式
String date = df.format(new Date());// new Date()为获取当前系统时间
powerUser.setUpdater(powerUser1.getUserName());
@ -118,7 +136,7 @@ public class Power_UserServiceImpl implements Power_UserService {
@Override
public Power_UserVo findPowerUserByUserNameAndUserPwd(Power_User powerUser) {
if(powerUser.getUserPwd() != null && powerUser.getUserName() != null){
if (powerUser.getUserPwd() != null && powerUser.getUserName() != null) {
powerUser.setUserPwd(Base64.encode(MD5.KL(powerUser.getUserPwd())));
powerUser.setEffective(Constant.EFFECTIVE_YES);
return powerUserMapper.findPowerUserByUserNameAndUserPwd(powerUser);
@ -126,24 +144,34 @@ public class Power_UserServiceImpl implements Power_UserService {
return null;
}
public Power_UserVo findPowerUserByIdCard(Power_User powerUser) {
return powerUserMapper.findPowerUserByIdCard(powerUser);
}
public Power_UserVo casLoginUserName(String userName) {
return powerUserMapper.casLoginUserName(userName);
}
@Override
public boolean validUserRoleMenu(String url, Integer userId) {
List<User_Dept_Menu> menus = userDeptMenuMapper.validUserRoleMenu(userId,url);
if(null != menus && !menus.isEmpty()){
List<User_Dept_Menu> menus = userDeptMenuMapper.validUserRoleMenu(userId, url);
if (null != menus && !menus.isEmpty()) {
return true;
}else{
} else {
return false;
}
}
//登录的是角色0才显示所有用户信息如果是角色-100则只显示该用户所在医院的所有用户信息
//如果是其它的则只显示该登录用户自己的用户信息
@Override
public List<Power_UserVo> findSomeByMore(Power_UserVo powerUser,HttpServletRequest request) {
public List<Power_UserVo> findSomeByMore(Power_UserVo powerUser, HttpServletRequest request) {
//取得当前登录账号
HttpSession session= request.getSession();
Power_UserVo powerUser1 =(Power_UserVo) session.getAttribute("CURRENT_USER");
HttpSession session = request.getSession();
Power_UserVo powerUser1 = (Power_UserVo) session.getAttribute("CURRENT_USER");
Set<String> perms = powerUser1.getMenus();
if(powerUser1.getRoleId() != 0){
if (powerUser1.getRoleId() != 0) {
powerUser.setUserId(powerUser1.getUserId());
powerUser.setRoleId(powerUser1.getRoleId());
}
@ -171,24 +199,24 @@ public class Power_UserServiceImpl implements Power_UserService {
}
@Override
public int getTotal(Power_UserVo powerUser,HttpServletRequest request) {
public int getTotal(Power_UserVo powerUser, HttpServletRequest request) {
//取得当前登录账号
HttpSession session= request.getSession();
Power_User powerUser1 =(Power_User) session.getAttribute("CURRENT_USER");
if(powerUser1.getRoleId()==0){
HttpSession session = request.getSession();
Power_User powerUser1 = (Power_User) session.getAttribute("CURRENT_USER");
if (powerUser1.getRoleId() == 0) {
powerUser.setUserId(null);
}else if(powerUser1.getRoleId()==-100){
} else if (powerUser1.getRoleId() == -100) {
powerUser.setUserId(powerUser1.getUserId());
}else{
} else {
powerUser.setUserId(powerUser1.getUserId());
}
return powerUserMapper.getTotal(powerUser);
}
@Override
public void export(Power_UserVo powerUser,HttpServletRequest request,HttpServletResponse response) throws Exception {
List<Power_UserVo> powerUsers = this.findSomeByMore(powerUser,request);
if(null != powerUsers && !powerUsers.isEmpty()){
public void export(Power_UserVo powerUser, HttpServletRequest request, HttpServletResponse response) throws Exception {
List<Power_UserVo> powerUsers = this.findSomeByMore(powerUser, request);
if (null != powerUsers && !powerUsers.isEmpty()) {
for (Power_UserVo powerUser1 : powerUsers) {
if (null != powerUser1.getUserSex()) {
if (powerUser1.getUserSex() == 1) {
@ -211,13 +239,13 @@ public class Power_UserServiceImpl implements Power_UserService {
//ExportExcelUtil
com.manage.util.ExportExcelUtil exportExcelUtil = new com.manage.util.ExportExcelUtil();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,powerUsers,fileName,response);
exportExcelUtil.expordExcel(tableThNames, fieldCns, powerUsers, fileName, response);
}
@Override
public boolean updatePassword(String newUserPwd) {
Power_User powerUser = (Power_User) ActionScopeUtils.getSessionAttribute(Constant.CURRENT_USER);
if(StringUtils.isNotBlank(newUserPwd)){
if (StringUtils.isNotBlank(newUserPwd)) {
powerUser.setUserPwd(Base64.encode(MD5.KL(newUserPwd)));
powerUserMapper.updateByPrimaryKeySelective(powerUser);
return true;

@ -27,7 +27,7 @@ public class StartFilter implements Filter {
*/
public void startWebsocketInstantMsg() {
//WebSocketImpl.DEBUG = false;
WebServer s = new WebServer(8088);
WebServer s = new WebServer(8089);
s.start();
}
}
Loading…
Cancel
Save