通知接收人改成可多选,增加角色无下载功能的页面,请求路径/role/pageUINotDown

nanfang_branch
zengwh 5 years ago
parent 9162d17b75
commit a655ee2cd8

@ -48,8 +48,8 @@
<bropen-api.version>3.5.0</bropen-api.version>
<spring.version>5.0.2.RELEASE</spring.version>
<mybatis.version>3.2.8</mybatis.version>
<mybatis.spring.version>1.2.2</mybatis.spring.version>
<mybatis.version>3.4.6</mybatis.version>
<mybatis.spring.version>1.3.2</mybatis.spring.version>
<mybatis.paginator.version>1.2.15</mybatis.paginator.version>
<mysql.version>5.1.32</mysql.version>
<slf4j.version>1.6.4</slf4j.version>

@ -83,6 +83,18 @@ public class RoleController {
CacheManager.addExcCount("noExc");
return "roleDir/role";
}
/**
* @Date 2019-4-25
* @Author ly
* @Description
* */
@OptionalLog(module = "查看",methods = "角色管理页面")
@RequiresPermissions(value="/role/pageUINotDown")
@RequestMapping("/pageUINotDown")
public String pageUINotDown(){
CacheManager.addExcCount("noExc");
return "roleDir/roleNotDown";
}
/**
* @Date 2019-08-02
@ -214,6 +226,23 @@ public class RoleController {
e.printStackTrace();
}
}
/**
* @Date 2019-4-25
* @Author ly
* @Description Excel
* */
@OptionalLog(module = "导出excel",methods = "角色管理")
@RequiresPermissions(value="/role/export")
@RequestMapping("/exportNotDown")
public void exportNotDown(Power_RoleVo powerRole, HttpServletResponse response, HttpServletRequest request){
try {
powerRoleService.exportNotDown(powerRole,response,request);
CacheManager.addExcCount("noExc");
}catch (Exception e){
CacheManager.addExcCount("exc");
e.printStackTrace();
}
}
/**
* @Date 2019-4-30
* @Author ly
@ -294,6 +323,68 @@ public class RoleController {
}
}
}
/**
* @Date 2019-10-11
* @Author zengwh
* @Description excel
* */
@OptionalLog(module = "导入excel",methods = "角色管理")
@RequiresPermissions(value="/role/importExcel")
@RequestMapping(value="/importExcelNotDown",method = {RequestMethod.POST})
@ResponseBody
public ResponseEntity<String> importExcelNotDown(HttpServletRequest request){
OutputStream os = null;
HttpHeaders responseHeaders = new HttpHeaders();
responseHeaders.setContentType(new MediaType("text","html",Charset.forName("UTF-8")));
try {
//读取文件
MultipartResolver resolver = new CommonsMultipartResolver(request.getSession().getServletContext());
MultipartHttpServletRequest multipartRequest = resolver.resolveMultipart(request);
MultipartFile multipartFile = multipartRequest.getFile("upfile");
//属性名
String[] fieldNames = {"roleName","remark","effective"};
//判断集中类中的方法名
String[] judgeMethods = {"judgeRoleName","judgeRemark","convertEffective"};
//导入excel的操作
Power_Role role = new Power_Role();
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
Power_UserVo user = (Power_UserVo)request.getSession().getAttribute("CURRENT_USER");
role.setCreater(user.getUserName());
role.setUpdater(user.getUserName());
role.setCreateDate(fmt.format(new Date()));
role.setUpdateDate(fmt.format(new Date()));
//实例化
ImportExcelUtil.newInstance("power_RoleMapper",role, Power_Role.class);
//导入excel的操作
ImportExcelEntity excelEntity = ImportExcelUtil.fileImport(multipartFile,fieldNames, judgeMethods);
CacheManager.addExcCount("noExc");
if(excelEntity.getSuccessCount() == 0 && excelEntity.getWrongCount() == 0){
//无数据
return new ResponseEntity<String>("无数据!", responseHeaders, HttpStatus.OK);
}
if(excelEntity.getWrongCount() == 0){
//成功
return new ResponseEntity<String>(null, responseHeaders, HttpStatus.OK);
}else{
//有出错数据
String msgStr = excelEntity.getWorkBookKey()+"@已成功导入"+excelEntity.getSuccessCount()+"条,失败"+excelEntity.getWrongCount()+"条,随后将导出错误记录!";
return new ResponseEntity<String>(msgStr, responseHeaders, HttpStatus.OK);
}
}catch (Exception e){
CacheManager.addExcCount("exc");
//抛异常
return new ResponseEntity<String>(e.getMessage(), responseHeaders, HttpStatus.OK);
}finally {
if(os != null){
try {
os.close();
}catch (Exception e){
e.printStackTrace();
}
}
}
}
}

@ -52,7 +52,7 @@
var webSocketUrl = $("#webSocketUrl").val();
var ws = new WebSocket("ws://"+webSocketUrl);
ws.onopen = function(){
ws.send(userId);
ws.send("power_"+userId);
console.log("连接...")
}
@ -71,6 +71,7 @@
}
function narn (type,title,text,noticeId) {
debugger
naranja()[type]({
title: title,
text: text,

@ -10,6 +10,9 @@
<link rel="stylesheet" href="${path}/static/css/comm.css">
<link rel="stylesheet" href="${path}/static/zTree_v3-master/css/zTreeStyle/zTreeStyle.css">
<link rel="stylesheet" href="${path}/static/treegrid/jquery.treegrid.min.css">
<link href="${path}/static/css/bootstrap-select.min.css" rel="stylesheet" />
<script src="${path}/static/js/bootstrap-select.min.js" ></script>
<script src="${path}/static/zTree_v3-master/js/jquery.ztree.core.js"></script>
<script src="${path}/static/zTree_v3-master/js/jquery.ztree.exhide.js"></script>
<script src="${path}/static/bootstrap-3.3.7/TreeGrid.js"></script>
@ -110,6 +113,39 @@
.operBtns{
margin-left:10px;
}
/*多选下拉框*/
.dropdown-menu {
position: absolute;
top: 103%;
left: 0;
z-index: 1000;
display: none;
float: left;
list-style: none;
text-shadow: none;
max-height: 400px;
/*设置最大高度为400 overflow: scroll;*/
/* 设置可滚动 padding: 5 px;*/
margin: 0px;
-webkit-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
-moz-box-shadow: 0 1px 8px rgba(0, 0, 0, 0.1);
box-shadow: 0 1px 8px rgba(120, 234, 61, 0.55);
font-size: 14px;
font-family: "Segoe UI", Helvetica, Arial, sans-serif;
border: 1px solid #ddd;
}
/**
*多选下拉框
*/
.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){
width: 168px!important;
}
.bootstrap-select>.dropdown-toggle.bs-placeholder{
height: 30px!important;
}
.bootstrap-select>.dropdown-toggle.bs-placeholder{
font-size: 12px!important;
}
</style>
</head>
<body>
@ -278,7 +314,7 @@
</div>
<div class="formDiv">
<label class="control-label left">接收人:</label>
<select class="form-control input input-sm" name="noticeReceive" id="noticeReceive" style="width:140px">
<select class="selectpicker form-control input input-sm" multiple name="noticeReceive" id="noticeReceive" data-live-search="true" data-actions-box="true">
</select>
</div>
<div class="formDiv">

@ -0,0 +1,210 @@
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ include file="/WEB-INF/jspf/common.jspf" %>
<%@ include file="/WEB-INF/jspf/confirmJsp.jspf" %>
<html>
<head>
<title>角色管理</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- 引入 Bootstrap -->
<link rel="stylesheet" href="${path}/static/css/comm.css">
<link rel="stylesheet" href="${path}/static/zTree_v3-master/css/zTreeStyle/zTreeStyle.css">
<style type="text/css">
/*页头*/
.panel-heading{
padding: 0 16px;
}
hr{
margin:0;
}
.form-group{
margin-left:15px;
}
/*模态框表单*/
.formDiv{
width:100%;
height:30px;
margin-top:10px;
}
.control-label{
width:30%;
text-align: right;
padding-top:2px;
}
.input{
width:50%;
float:left;
}
/*按钮组*/
.btns{
text-align: right;
margin-bottom: 5px;
}
/*模态框*/
.modal-header{
text-align: center;
}
.modal-title{
font-weight: bold;
}
.modelBtns{
text-align: center;
}
.modelBtn{
width: 74px;
margin-left: 38px;
margin-bottom: 16px;
}
.tableDiv{
margin-left:14px;
}
.shortInput{
width:80px;
}
.warningLabel{
margin-left:102px;
}
.warningDiv{
margin-left: 134px;
margin-top: -20px;
}
.operBtns{
margin-left:5px;
}
</style>
</head>
<body>
<div style="width: 100%">
<input type="hidden" id="checks">
<input type="hidden" id="userNames">
<div class="row">
<div class="col-md-12">
<div class="panel-heading"><h4>基本管理/角色管理</h4></div>
<hr>
<form class="form-inline" style="margin-top: 5px;margin-bottom: 0px;" role="form">
<div class="">
<div class="form-group">
<label>角色名:</label>
<input type="text" class="form-control input-sm" id="role_name" maxlength="16"/>
</div>
<div class="form-group">
<label for="effective">是否有效</label>
<div class=" form-group form-inline">
<select class=" form-control input-sm" id="effective">
<option value="">全部</option>
<option value="1">是</option>
<option value="0">否</option>
</select>
</div>
</div>
<div class="form-group">
<label for="creater">创建人</label>
<input type="text" class="form-control input-sm" id="creater" maxlength="16"/>
</div>
<div class="form-group">
<button type="button" style="margin-left:20px" id="queryBtn" class="btn btn-info btn-sm">查询</button>
</div>
</div>
</form>
</div>
</div>
<div class="btns">
<pm:myPermissions permissions="/role/add">
<button type="button" onclick="add()" class="btn btn-warning btn-sm">增加</button>
</pm:myPermissions>
<pm:myPermissions permissions="/r ole/importExcel">
<button type="button" class="btn btn-success btn-sm" onclick="importBtn()">导入Excel</button>
</pm:myPermissions>
<pm:myPermissions permissions="/role/export">
<button type="button" class="btn btn-primary btn-sm" onclick="exportExcel()">导出Excel</button>
</pm:myPermissions>
</div>
<div class="tableDiv">
<table id="bootstrapTable" class="table text-nowrap table-bordered"></table>
</div>
</div>
<!-- 模态框Modal -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="false">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel">角色信息</h4>
</div>
<div class="modal-body" style="height:auto">
<form id="updateaddform">
<div class="formDiv">
<label class="control-label left">角色名:</label>
<input type="hidden" id="re_roleId" name="roleId">
<input type="text" class="form-control input input-sm" id="re_roleName" name="roleName" maxlength="15">
</div>
<div class="formDiv">
<label for="re_effective" class="control-label left">有效否:</label>
<select class="form-control input input-sm shortInput" id="re_effective" name="effective">
<option value="1">是</option>
<option value="0">否</option>
</select>
</div>
<div class="formDiv">
<label for="re_remark" class="control-label left">备注:</label>
<textarea id="re_remark" class="form-control input input-sm" name="remark" maxlength="50"></textarea>
</div>
</form>
</div>
<div class="modelBtns">
<button type="button" class="btn btn-primary btn-sm modelBtn" id="btn_submit">提交</button>
<button type="button" class="btn btn-default btn-sm modelBtn" onclick="clearForm()">清空</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div>
<!-- 模态框Modal1 导入-->
<div class="modal fade" id="myModal1" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" data-backdrop="static" data-keyboard="false">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title" id="myModalLabel1">导入信息</h4>
</div>
<div class="modal-body" style="height:240px">
<form method="POST" enctype="multipart/form-data"
id="form1">
<div class="formDiv">
<label class="control-label left">下载模板:</label>
<input class="btn btn-primary btn-sm" onclick="window.open('${path }/static/template/角色列表导入模板无下载.xls');" type="button" value="下载模板">
</div>
<div class="formDiv">
<label for="re_effective" class="control-label left">选择文件:</label>
<input id="upfile" type="file" name="upfile" calss="layui-btn">
</div>
<div class="modelBtns">
<input class="btn btn-primary btn-sm" type="button" value="批量导入Excel数据"
onclick="importExcel('/role/importExcelNotDown','角色')">
</div>
<div class="formDiv">
<label class="warningLabel">友情提醒:</label>
<div class="warningDiv">
<span style="color: red"></br>1、角色名不能为空,不能重复,内容最多16个字。</span></br>
<span style="color: red">2、备注可为空,内容最多50个字。</span></br>
<span style="color: red">3、是否有效不能为空,内容最多9个字。</span></br>
<span style="color: red">4、值包含逗号必须单元格设置为文本类型。</span></br>
</div>
</div>
</form>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div>
<script>
$(function () {
$(".modal-dialog").draggable();//为模态对话框添加拖拽
})
</script>
<script src="${path}/static/zTree_v3-master/js/jquery.ztree.core.js"></script>
<script src="${path}/static/zTree_v3-master/js/jquery.ztree.excheck.js"></script>
<script src="${path}/static/js/roleNotDown.js?t=2"></script>
<%@ include file="/WEB-INF/jspf/importExcelJsp.jspf" %>
</body>
</html>

File diff suppressed because one or more lines are too long

@ -183,6 +183,10 @@ function delNoticeType(){
//增加通知按钮
function addNotice(){
$("#noticeReceive").empty();
//移除禁止修改
$("#parentId").removeAttr("disabled");
$("#noticeReceive").removeAttr("disabled");
$("#noticeReceive").selectpicker("refresh");
$("#noticeId1").val("");
$("#form2")[0].reset();
$("#readFlag").val("");
@ -199,7 +203,7 @@ $("#parentId").change(function(){
dataType:'json',
success:function(data){
if(data.code == 100){
var html = '<option value="all">该通知类型所有人</option>';
var html = '';
if(data.extend != ''){
var userName = $("#userName").val();
for (var i = 0; i < data.extend.userList.length; i++) {
@ -209,6 +213,7 @@ $("#parentId").change(function(){
}
}
$("#noticeReceive").append(html);
$("#noticeReceive").selectpicker('refresh');
}
}
})
@ -219,16 +224,25 @@ $("#notice_submit").click(function(){
var noticeTitle = $("#noticeTitle").val();
var parentId = $("#parentId").val();
var noticeContent = $("#noticeContent").val();
var noticeReceive = $("#noticeReceive").val();
if(noticeTitle == ''){
toastr.warning("通知主题不能为空!");
$("#noticeTitle").focus();
}else{
if(parentId == ''){
toastr.warning("通知类型不能为空!");
$("#parentId").focus();
}else{
if(noticeContent == ''){
toastr.warning("通知内容不能为空!");
$("#noticeContent").focus();
}else{
updateNotice();
if(noticeReceive == ''){
toastr.warning("接收人不能为空!");
$("#noticeReceive").focus();
}else{
updateNotice();
}
}
}
}
@ -600,6 +614,9 @@ function editFlag(noticeId){
}
//编辑通知
function edit(noticeId){
//禁止修改
$("#parentId").prop("disabled","disabled");
$("#noticeReceive").prop("disabled","disabled");
$.ajax({
type:'get',
url:path+'/notice/selectNoticeByNoticeId',
@ -620,16 +637,26 @@ function edit(noticeId){
async:false,
success:function(data){
if(data.code == 100){
var html = '<option value="all">该通知类型所有人</option>';
var html = '';
if(data.extend != ''){
var userName = $("#userName").val();
for (var i = 0; i < data.extend.userList.length; i++) {
if (userName != data.extend.userList[i].userName) {
html += '<option value="' + data.extend.userList[i].userId + '">' + data.extend.userList[i].userName + '</option>';
//定义是否匹配选中
var flag = false;
if(notice.noticeReceive == data.extend.userList[i].userId){
flag = true;
}
if(flag){
html += '<option selected value="' + data.extend.userList[i].userId + '">' + data.extend.userList[i].userName + '</option>';
}else{
html += '<option value="' + data.extend.userList[i].userId + '">' + data.extend.userList[i].userName + '</option>';
}
}
}
}
$("#noticeReceive").append(html);
$("#noticeReceive").selectpicker('refresh');
}
}
})

@ -0,0 +1,293 @@
/**
* Created by ly on 2019/4/25.
*/
var pageNumber = 1;
var form = '';
$(function(){
$('#myModal').modal('hide');
//先销毁表格
$('#bootstrapTable').bootstrapTable({
//表格高度
height: getHeight(),
method : 'get',
url : path+ "/role/pageList",//请求路径
striped : true, //是否显示行间隔色
pageNumber : 1, //初始化加载第一页
pagination : true,//是否分页
sidePagination : 'server',//server:服务器端分页|client前端分页
pageSize : 10,//单页记录数
pageList : [ 5, 10, 20, 30 ],//可选择单页记录数
cache: false,
paginationPreText : '上一页',
paginationNextText : '下一页',
queryParams : function(params) {//上传服务器的参数
var temp = {//如果是在服务器端实现分页limit、offset这两个参数是必须的
limit : params.limit, // 每页显示数量
offset : params.offset, // SQL语句起始索引
page : (params.offset / params.limit) + 1, //当前页码
roleId:$("#role_id").val(),
roleName:$("#role_name").val(),
effective : $("#effective option:selected").val(),
creater:$("#creater").val(),
};
return temp;
},
columns : [{
checkbox:true
},
{
title:'序号',
field:'no',
formatter: function (value, row, index) {
//获取每页显示的数量
var pageSize = $('#bootstrapTable').bootstrapTable('getOptions').pageSize;
//获取当前是第几页
if(pageNumber == 1){
pageNumber = $('#bootstrapTable').bootstrapTable('getOptions').pageNumber;
}
//返回序号注意index是从0开始的所以要加上1
return pageSize * (pageNumber - 1) + index + 1;
}
},
{
title:'角色名',
field:'roleName',
},
{
title:'备注',
field:'remark',
formatter:function (value,row,index) {
if(value ==null){
return "";
}else{
return value;
}
}
},
{
title:'是否有效',
field:'effective',
formatter: function (value, row, index) {
if(value ==1){
return '是'
}else if(value ==0){
return '否'
}
}
},
{
title:'创建时间',
field:'createDate',
},
{
title:'创建人',
field:'creater',
},
{
title:'操作',
field:'roleId', formatter: function(value,row,index){
var editanddrop = '';
if(row.isUpdate == 1){
editanddrop += '<button type="button" onclick="edit('+row.roleId+')" class="btn btn-info operBtns btn-sm" >编辑</button>';
}
if(row.isDelete == 1){
editanddrop += '<button type="button" onclick="drop('+row.roleId+')" class="btn btn-danger operBtns btn-sm">删除</button>';
}
return editanddrop;
}
}
],
onLoadSuccess: function(){ //加载成功时执行
$(".page-list").show();
$("th").css({'text-align':'center','vertical-align':'middle'})
$("td").css({'text-align':'center','vertical-align':'middle'})
},
//监听分页点击事件
onPageChange: function(num, type) {
pageNumber = num;
},
//选中单个复选框
onCheck:function(row){
var checks = $("#checks").val();
$("#checks").val(checks+=row.roleId + ",");
},
//取消单个复选框
onUncheck:function(row){
var checks = $("#checks").val();
checks = checks.replace(row.roleId + ",","");
$("#checks").val(checks);
},
//全选
onCheckAll:function(rows){
$("#checks").val("");
var checks = '';
for(var i=0;i<rows.length;i++)
{
checks += rows[i].roleId + ","
}
$("#checks").val(checks);
},
//全不选
onUncheckAll: function (rows) {
$("#checks").val("");
}
});
});
//验证角色名不能重复
$("#re_roleName").blur(function(){
var roleName = $("#re_roleName").val();
var roleId = $("#re_roleId").val();
if(roleId == '' && roleName != ''){
$.ajax({
type:'get',
url:path+'/role/checkRoleName',
data:{roleName:roleName},
dataType:'json',
success:function(data){
if(data.code == 200){
toastr.warning(data.msg);
$("#re_roleName").val("");
$("#re_roleName").focus();
}
}
})
}
})
//编辑框回显
function edit(id){
$("#myModalLabel").text("编辑");
$.ajax({
type: "post",
url:path+ "/role/selectRole",
data:{
roleId:id
},
dataType:"json",
success: function(data){
$("#re_roleId").val(data.roleId);
$("#re_roleName").val(data.roleName);
$("#re_effective").find("option[value='"+data.effective+"']").attr("selected",true);
$("#re_remark").val(data.remark);
}
});
$('#myModal').modal('show')
}
//删除
function drop(id) {
Common.confirm({
title: "提示",
message: "确定是否删除这条记录",
operate: function (reselt) {
if (reselt) {
$.ajax({
type: "post",
url: path + "/role/delete",
data: {
roleId: id
},
async: false,
success: function (data) {
if ("success" == data.msg) {
toastr.success("删除成功!");
$("#checks").val("");
backToPage();
}
},
error: function () {
window.confirm("删除失败");
}
})
}
}
})
}
//新增框
function add() {
initable();
$("#myModalLabel").text('增加');
$('#myModal').modal('show')
}
//提交更改
$('#btn_submit').click(function () {
//获取档案管理系统的权限复选框是否选中
var roleName = $("#re_roleName").val();
if(roleName != ''){
var roleId = $("#re_roleId").val();
var url = '';
if(roleId == ''){
url = path+"/role/add";
}else{
url = path+"/role/update";
}
$.ajax({
type: "post",
url:url,
data:$("#updateaddform").serialize(),
dataType:"json",
success: function(data){
if("success"==data.msg){
toastr.success('保存成功!');
$('#myModal').modal('hide');
backToPage();
}else{
toastr.warning(data.msg);
}
}
})
}else{
toastr.warning("角色名不能为空!");
}
})
//初始化模态框
function initable(){
$("#updateaddform")[0].reset();
$("#re_roleId").val("");
}
//搜索
$('#queryBtn').click(function () {
$("#checks").val("");
refresh();
})
//获取table的高度
function getHeight() {
return $(window).height() * 0.8;
}
//刷新表格
function refresh() {
$('#bootstrapTable').bootstrapTable('refresh',{
url : path+'/role/pageList'
})
}
//清空
function clearForm(){
$("#updateaddform")[0].reset();
}
//导出excel功能
function exportExcel(){
var checks = $("#checks").val();
if(checks != '') {
checks = checks.substring(0, checks.length - 1);
var url = path+"/role/exportNotDown?roleName="+$("#role_name").val()+"&effective="+$("#effective").val()+"&creater="+$("#creater").val()+"&checks="+checks;
window.location.href = url;
}else{
Common.confirm({
title: "提示",
message: "没有选中,您确定要按搜索栏条件导出?",
operate: function (reselt) {
if (reselt) {
var url = path + "/role/exportNotDown?roleName=" + $("#role_name").val() + "&effective=" + $("#effective").val() + "&creater=" + $("#creater").val() + "&checks=" + checks;
window.open(url);
}
}
})
}
}
//监听关闭模态框刷新事件
$('#myModal1').on('hide.bs.modal', function () {
window.location.reload();
});

@ -8,16 +8,11 @@
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>power-dao</artifactId>
<properties>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- Mybatis -->
<dependency>

@ -42,4 +42,6 @@ public interface Power_NoticeMapper {
* id
* */
int getUnReadCount(@Param("userId")Integer userId);
void simpleInsert(List<Power_Notice> list);
}

File diff suppressed because it is too large Load Diff

@ -711,15 +711,6 @@ on FIND_IN_SET(dict.deptIds,power_user.dept_id)
AND power_user.role_id != #{roleId}
</if>
</select>
<!--根据系统标识查询科室id-->
<select id="selectDeptIdBySysFlag" resultType="com.manage.vo.Power_Sys_DictVo">
SELECT
dept_id
FROM
power_sys_dict
WHERE
sys_flag = #{sysFlag}
</select>
<!--验证医院名称是否重复-->
<select id="checkHospitalName" resultType="com.manage.vo.Power_Sys_DictVo">
SELECT
@ -780,30 +771,6 @@ on FIND_IN_SET(dict.deptIds,power_user.dept_id)
AND dept_id IN (${deptIds})
</if>
</select>
<!--用于系统管理员全查权限系统标识-->
<select id="selectSysFlagByAdmin" resultMap="BaseResultMap">
SELECT
sys_flag,
sys_name
FROM
power_sys_dict
WHERE
sys_flag IS NOT NULL
GROUP BY
sys_flag,
sys_name
</select>
<!--通过通知类别id查询对应系统的系统类别-->
<select id="selectSysTypeByNoticeId" resultMap="BaseResultMap">
SELECT
power_sys_dict.sys_type,
power_sys_dict.parent_id
FROM
power_notice
LEFT JOIN power_sys_dict ON power_notice.notice_type_flag = power_sys_dict.sys_flag
WHERE
notice_id = ${noticeId}
</select>
<!--通过系统标识和系统名称查询集合-->
<select id="selectAllBySysFlagAndSysName" resultMap="BaseResultMap">
SELECT
@ -815,15 +782,6 @@ on FIND_IN_SET(dict.deptIds,power_user.dept_id)
AND
sys_name = #{sysName}
</select>
<!--通过系统标识查询医院id集合-->
<select id="selectHospitalIdBySysFlag" resultMap="BaseResultMap">
SELECT
parent_id
FROM
power_sys_dict
WHERE
sys_flag = #{sysFlag}
</select>
<!--通过用户id查询系统标识集合-->
<select id="selectSysFlagsByUserId" resultMap="BaseResultMap">
SELECT

@ -46,6 +46,13 @@ public interface Power_RoleService {
* */
void export(Power_RoleVo powerRole,HttpServletResponse response,HttpServletRequest request)throws Exception;
/**
* @Date 2019-4-25
* @Author ly
* @Description Excel
* */
void exportNotDown(Power_RoleVo powerRole,HttpServletResponse response,HttpServletRequest request)throws Exception;
/**
* @Date 2019-4-30
* @Author ly

@ -134,15 +134,30 @@ public class Power_NoticeServiceImpl{
powerNotice.setEffective(1);
if(null == powerNotice.getNoticeId()){
//添加
if(StringUtils.isBlank(powerNotice.getNoticeTypeFlag())){
powerNotice.setNoticeSend(user.getUserId().toString());
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
powerNotice.setNoticeDate(fmt.format(new Date()));
powerNotice.setReadFlag(0);
String noticeReceive = powerNotice.getNoticeReceive();
if(StringUtils.isNotBlank(noticeReceive)){
List<Power_Notice> simpleInsert = new ArrayList<>();
String[] noticeReceives = noticeReceive.split(",");
for(String noticeReceiveStr : noticeReceives) {
//判断是否包含所有,
if (StringUtils.isBlank(powerNotice.getNoticeTypeFlag())) {
powerNotice.setNoticeSend(user.getUserId().toString());
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
powerNotice.setNoticeDate(fmt.format(new Date()));
powerNotice.setReadFlag(0);
powerNotice.setNoticeReceive(noticeReceiveStr);
}
//添加进记录
Power_Notice vo = new Power_Notice();
BeanUtils.copyProperties(powerNotice,vo);
simpleInsert.add(vo);
}
noticeMapper.simpleInsert(simpleInsert);
simpleInsert.forEach(vos ->{
//发送通知
sendRecive(vos,user,vos.getNoticeTitle(),vos.getNoticeContent());
});
}
noticeMapper.insert(powerNotice);
//发送通知
sendRecive(powerNotice,user,powerNotice.getNoticeTitle(),powerNotice.getNoticeContent());
}else{
//修改
noticeMapper.updateByPrimaryKeySelective(powerNotice);
@ -165,7 +180,7 @@ public class Power_NoticeServiceImpl{
//all 该系统全部,不包括自己
//系统标识是power则该医院全部否则该系统全部
//查询该用户医院id
Integer hospitalId = null;
/*Integer hospitalId = null;
if(null != user.getUserId() && user.getRoleId() != 0){
hospitalId = userMapper.selectHospitalIdByUserId(user.getUserId());
}
@ -202,7 +217,7 @@ public class Power_NoticeServiceImpl{
}
}
}
}
}*/
}
}
}

@ -143,6 +143,30 @@ public class Power_RoleServiceImpl implements Power_RoleService {
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,roleList,fileName,response);
}
@Override
public void exportNotDown(Power_RoleVo powerRole,HttpServletResponse response,HttpServletRequest request) throws Exception {
Power_User powerUser1 =(Power_User) request.getSession().getAttribute("CURRENT_USER");
List<Power_RoleVo> roleList = powerRoleMapper.findSomeByMore(powerRole, powerUser1.getRoleId(),powerUser1.getUserId());
if(null != roleList && !roleList.isEmpty()){
for (int i = 0; i < roleList.size(); i++) {
if(roleList.get(i).getEffective() != null){
if(roleList.get(i).getEffective() == 1){
roleList.get(i).setEffectiveCn("是");
}else{
roleList.get(i).setEffectiveCn("否");
}
}
}
}
String tableThNames = "角色名称,备注,是否有效,创建时间,创建人";
String fieldCns = "roleName,remark,effectiveCn,createDate,creater";
//文件名
String fileName = "角色列表(" + new SimpleDateFormat("yyyy_MM_dd HH_mm_ss").format(new Date()) + ").xls";
//ExportExcelUtil
com.manage.util.ExportExcelUtil exportExcelUtil = new com.manage.util.ExportExcelUtil();
//导出excel的操作
exportExcelUtil.expordExcel(tableThNames,fieldCns,roleList,fileName,response);
}
@Override
public List<Power_RoleVo> selectList() {

Loading…
Cancel
Save