Commit e58a9dda by 罗绍泽

Merge remote-tracking branch 'origin/develop' into develop

# Conflicts:
#	WebContent/WEB-INF/conf/gaowj/bl/business-apps.xml
parents f45e4933 1742061b
......@@ -30,25 +30,41 @@
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="1" />
<property name="minIdle" value="1" />
<property name="maxActive" value="20" />
<property name="maxActive" value="500" />
<!-- 配置获取连接等待超时的时间 -->
<property name="maxWait" value="60000" />
<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000" />
<!-- 超过时间限制是否回收,对于建立时间超过removeAbandonedTimeout的连接强制关闭 -->
<property name="removeAbandoned" value="true" />
<!-- 超过时间限制多长,单位秒 -->
<property name="removeAbandonedTimeout" value="60" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒:1分钟 -->
<property name="minEvictableIdleTimeMillis" value="60000" />
<!-- 配置一个连接在池中最长生存的时间,单位是毫秒:5分钟 -->
<property name="maxEvictableIdleTimeMillis" value="300000" />
<!-- 用来检测连接是否有效的sql,要求是一个查询语句 -->
<property name="validationQuery" value="SELECT 'x'" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<!-- 申请连接的时候检测 -->
<property name="testWhileIdle" value="true" />
<!-- 申请连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
<property name="testOnBorrow" value="false" />
<!-- 归还连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
<property name="testOnReturn" value="false" />
<!-- 连接池中的minIdle数量以内的连接,空闲时间超过minEvictableIdleTimeMillis,则会执行keepAlive操作 -->
<property name="keepAlive" value="true" />
<!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
<property name="poolPreparedStatements" value="true" />
<property name="maxPoolPreparedStatementPerConnectionSize" value="20" />
<!-- 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭 -->
<property name="poolPreparedStatements" value="false" />
<!-- 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true -->
<property name="maxPoolPreparedStatementPerConnectionSize" value="0" />
<!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 -->
<property name="filters" value="stat" />
......@@ -65,25 +81,41 @@
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="1" />
<property name="minIdle" value="1" />
<property name="maxActive" value="20" />
<property name="maxActive" value="500" />
<!-- 配置获取连接等待超时的时间 -->
<property name="maxWait" value="60000" />
<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- 超过时间限制是否回收,对于建立时间超过removeAbandonedTimeout的连接强制关闭 -->
<property name="removeAbandoned" value="true" />
<!-- 超过时间限制多长,单位秒 -->
<property name="removeAbandonedTimeout" value="60" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒:1分钟 -->
<property name="minEvictableIdleTimeMillis" value="60000" />
<!-- 配置一个连接在池中最长生存的时间,单位是毫秒:5分钟 -->
<property name="maxEvictableIdleTimeMillis" value="300000" />
<!-- 用来检测连接是否有效的sql,要求是一个查询语句 -->
<property name="validationQuery" value="SELECT 'x'" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<!-- 申请连接的时候检测 -->
<property name="testWhileIdle" value="true" />
<!-- 申请连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
<property name="testOnBorrow" value="false" />
<!-- 归还连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
<property name="testOnReturn" value="false" />
<!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
<property name="poolPreparedStatements" value="true" />
<property name="maxPoolPreparedStatementPerConnectionSize" value="20" />
<!-- 连接池中的minIdle数量以内的连接,空闲时间超过minEvictableIdleTimeMillis,则会执行keepAlive操作 -->
<property name="keepAlive" value="true" />
<!-- 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭 -->
<property name="poolPreparedStatements" value="false" />
<!-- 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true -->
<property name="maxPoolPreparedStatementPerConnectionSize" value="0" />
<!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 -->
<property name="filters" value="stat" />
......@@ -100,25 +132,41 @@
<!-- 配置初始化大小、最小、最大 -->
<property name="initialSize" value="1" />
<property name="minIdle" value="1" />
<property name="maxActive" value="20" />
<property name="maxActive" value="500" />
<!-- 配置获取连接等待超时的时间 -->
<property name="maxWait" value="60000" />
<!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<property name="timeBetweenEvictionRunsMillis" value="60000" />
<!-- 超过时间限制是否回收,对于建立时间超过removeAbandonedTimeout的连接强制关闭 -->
<property name="removeAbandoned" value="true" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000" />
<!-- 超过时间限制多长,单位秒 -->
<property name="removeAbandonedTimeout" value="60" />
<!-- 配置一个连接在池中最小生存的时间,单位是毫秒:1分钟 -->
<property name="minEvictableIdleTimeMillis" value="60000" />
<!-- 配置一个连接在池中最长生存的时间,单位是毫秒:5分钟 -->
<property name="maxEvictableIdleTimeMillis" value="300000" />
<!-- 用来检测连接是否有效的sql,要求是一个查询语句 -->
<property name="validationQuery" value="SELECT 'x'" />
<property name="testWhileIdle" value="true" />
<property name="testOnBorrow" value="false" />
<property name="testOnReturn" value="false" />
<!-- 申请连接的时候检测 -->
<property name="testWhileIdle" value="true" />
<!-- 申请连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
<property name="testOnBorrow" value="false" />
<!-- 归还连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
<property name="testOnReturn" value="false" />
<!-- 连接池中的minIdle数量以内的连接,空闲时间超过minEvictableIdleTimeMillis,则会执行keepAlive操作 -->
<property name="keepAlive" value="true" />
<!-- 打开PSCache,并且指定每个连接上PSCache的大小 -->
<property name="poolPreparedStatements" value="true" />
<property name="maxPoolPreparedStatementPerConnectionSize" value="20" />
<!-- 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭 -->
<property name="poolPreparedStatements" value="false" />
<!-- 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true -->
<property name="maxPoolPreparedStatementPerConnectionSize" value="0" />
<!-- 配置监控统计拦截的filters,去掉后监控界面sql无法统计 -->
<property name="filters" value="stat" />
......
......@@ -22,6 +22,7 @@
<value>classpath:com/jw/app/business/userchoice/userchoiceDAO.xml</value>
<value>classpath:com/jw/app/business/calendar/calendarDAO.xml</value>
<value>classpath:com/jw/app/business/portal/role/appsRoleDAO.xml</value>
<value>classpath:com/jw/app/business/vote/voteDAO.xml</value>
</list>
</property>
</bean>
......@@ -80,6 +81,10 @@
<property name="mapperInterface" value="com.jw.app.business.portal.role.appsRoleDAO"/>
<property name="sqlSessionFactory" ref="sqlSessionFactory-apps"/>
</bean>
<bean id="voteDAO" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.jw.app.business.vote.voteDAO"/>
<property name="sqlSessionFactory" ref="sqlSessionFactory-apps"/>
</bean>
<!-- BusinessInterFace -->
<bean id="PortletBusiness"
class="com.jw.app.business.portlet.PortletBusinessImpl">
......@@ -126,6 +131,11 @@
class="com.jw.app.business.calendar.CalendarBusinessImpl">
<property name="calendarDAO" ref="calendarDAO"/>
</bean>
<bean id="VoteBusiness"
class="com.jw.app.business.vote.VoteBusinessImpl">
<property name="voteDAO" ref="voteDAO"/>
</bean>
<!-- DAO -->
<bean id="portletDAO" class="org.mybatis.spring.mapper.MapperFactoryBean">
......
......@@ -33,7 +33,7 @@ function init_index_nav(){
text.attr('href',data[i].REMARK);
//如果是当前页的页面时则添加一个样式
var hrefArray=location.href;
if(text[0].href==hrefArray){
if(text[0].href==hrefArray||hrefArray==text[0].href+'Detail'){
text.addClass('layout_center_navClick');
}
container.append(text);
......@@ -68,4 +68,76 @@ function IEVersion() {
}else{
return -1;//不是ie浏览器
}
}
/**
* 文件下载
* @returns {Boolean}
*/
function fileDownloadURL(uploadnew,uploadpath,uploadold,uuid,downloadURL){
if(downloadURL == '' || downloadURL == null || downloadURL == 'undefined'){
fileDownload(uploadnew,uploadpath,uploadold,uuid);
}else{
var form=$("<form>");//定义一个form表单
form.attr("style","display:none");
form.attr("target","");
form.attr("method","post");
form.attr("action",downloadURL);
var input1=$("<input>");
input1.attr("type","hidden");
input1.attr("name","uploadnew");
input1.attr("value",uploadnew);
var input2=$("<input>");
input2.attr("type","hidden");
input2.attr("name","uploadpath");
input2.attr("value",uploadpath);
var input3=$("<input>");
input3.attr("type","hidden");
input3.attr("name","uploadold");
input3.attr("value",uploadold);
var input4=$("<input>");
input4.attr("type","hidden");
input4.attr("name","uuid");
input4.attr("value",uuid);
$("#disk_upload").append(form);
form.append(input1);
form.append(input2);
form.append(input3);
form.append(input4);
form.submit();//表单提交
}
}
/**
* 文件下载
* @returns {Boolean}
*/
function fileDownload(uploadnew,uploadpath,uploadold,uuid){
var form=$("<form>");//定义一个form表单
form.attr("style","display:none");
form.attr("target","");
form.attr("method","post");
form.attr("action","uploadFileAct_download");
var input1=$("<input>");
input1.attr("type","hidden");
input1.attr("name","uploadnew");
input1.attr("value",uploadnew);
var input2=$("<input>");
input2.attr("type","hidden");
input2.attr("name","uploadpath");
input2.attr("value",uploadpath);
var input3=$("<input>");
input3.attr("type","hidden");
input3.attr("name","uploadold");
input3.attr("value",uploadold);
var input4=$("<input>");
input4.attr("type","hidden");
input4.attr("name","uuid");
input4.attr("value",uuid);
$("#disk_upload").append(form);
form.append(input1);
form.append(input2);
form.append(input3);
form.append(input4);
form.submit();//表单提交
}
\ No newline at end of file
......@@ -3,7 +3,7 @@
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="/WEB-INF/tld/functions.tld" %>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%@ page language="java" import="java.util.Map,java.util.Date,java.text.SimpleDateFormat" pageEncoding="utf-8"%>
<%@ page language="java" import="java.util.Map" pageEncoding="utf-8"%>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<%
String localPath = request.getContextPath();
......@@ -20,9 +20,9 @@
String emdepart = (String)sessionUser.get("EMDEPART");//用户单位ID
String emdepartname = (String)sessionUser.get("EMDEPARTNAME");//用户单位名称
String emname = (String)sessionUser.get("EMNAME");//用户姓名
Date beforetime = (Date)sessionUser.get("BEFORETIME");//上次登录时间
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String beforetime_s = formatter.format(beforetime);
String beforetime = (String)sessionUser.get("BEFORETIME");//上次登录时间
String beforetime_s = beforetime;
String loginip = (String)sessionUser.get("LOGINIP");//登录IP
//
%>
......
......@@ -996,6 +996,7 @@ a{
text-align: center;
padding-top:22px;
cursor: pointer;
padding-bottom: 25px;
}
.disk_content_header>div:first-child span{
margin:0 15px 0 5px;
......@@ -1162,6 +1163,35 @@ a{
font-size:16px;
margin-right:-1px;
}
.disk_move_search{
margin: 10px 5px 3px;
}
.disk_move_search>input{
outline:none;
border:1px solid #f2f2f2;
border-radius: 4px;
height: 30px;
line-height: 28px;
padding-left:6px;
color:#bbb;
width:70%;
}
.disk_move_search>span{
border:1px solid #f2f2f2;
height: 30px;
line-height: 28px;
color:#333;
display: inline-block;
width:25%;
margin-left:5%;
vertical-align: bottom;
text-align:center;
cursor: pointer;
border-radius: 4px;
}
.disk_move_search>span:hover{
background: #f3f3f3;
}
.disk_move_btn{
height:40px;
line-height:40px;
......@@ -1386,7 +1416,7 @@ a{
color:#333;
border-top: 1px solid #f3f0f0;
}
.disk_rubbishBtn,.disk_shareCodeBtn{
.disk_rubbishBtn,.disk_shareCodeBtn,.disk_enjoyBtn{
display: none;
}
.disk_createShare{
......@@ -1661,9 +1691,250 @@ a{
text-decoration: underline;
color:#3b8cff;
}
/***************成功的提示样式**********/
.layout_success_message{
position: fixed;
top:233px;
right:0;
width: 500px;
display:none;
}
.layout_success_message>button+span{
font-weight: bold;
font-size: 18px;
margin-right:5px;
line-height:21px;
}
/**********************办事大厅的样式************/
.office_bg{
background: url(../../custom/images/office_bg.png);
height:355px;
background-size: cover;
}
.office_bg_content{
font-size:0px;
margin:50px 0 0;
text-align: center;
padding:0 5%;
}
.office_bg_content>div{
padding:0 25px;
}
.office_bg_content>div>div{
background: rgba(0,0,0,0.5);
height:215px;
max-width: 248px;
margin: auto;
border-radius:15px;
cursor: pointer;
}
.office_bg_content>div>div:hover{
background:#2474a9;
}
.office_bg_content img{
margin:25px 0 30px;
}
.office_bg_content_click{
background:#2474a9 !important;
}
.office_bg_content>div>div>div{
font-size:20px;
color:white;
}
.office_module{
padding: 0 5%;
margin:auto;
margin-top:-42px;
}
.office_module_title{
background:white;
height:42px;
border-top:3px solid #2474a9;
border-bottom:1px solid #ccc;
line-height: 38px;
color:#333;
padding:0;
}
.office_module_title>img{
margin:0 3px 0 10px;
vertical-align: sub;
}
.office_module_title>img+span{
font-weight:bold;
}
.office_module_title>a{
float:right;
margin-right:30px;
color:#06B8D6;
}
.office_module_title>a:hover{
text-decoration: underline !important;
}
.office_module_title>div{
float: right;
margin-right:30px;
width: 214px;
height:26px;
border:1px solid #ccc;
border-radius: 13px;
line-height:24px;
margin-top:6px;
}
.office_module_title>div>input{
height:24px;
line-height:24px;
border:0;
width:178px;
outline:none;
margin-left:10px;
}
.office_module_title>div>img{
padding:5px;
vertical-align: bottom;
cursor:pointer;
}
.office_apply{
padding:0;
height:302px;
}
.office_apply_content{
padding:30px 15px 0;
box-shadow:0px 1px 3px #ccc;
font-size:0px;
}
.office_apply_content>div{
display:inline-block;
width:11.11%;
padding:0 15px;
margin-bottom:30px;
}
.office_apply_content>div>div{
padding: 15% 10px;
width:100%;
color:white;
font-size:14px;
border-radius:5px;
text-align: center;
display: table;
max-width:106px;
margin:auto;
cursor: pointer;
}
.office_apply_content>div>div>div{
height:60px;
display: table-cell;
vertical-align: middle;
line-height: 20px;
}
.office_examine{
padding:0;
}
.office_examine_tilte{
margin-left:17px;
cursor: pointer;
}
.office_examine_tilte:hover{
color:#06B8D6;
text-decoration: underline;
}
/*******************修改办事大厅的table的样式*************/
.office_table .table{
border-bottom:0px;
font-size: 14px;
}
.office_examine .table>tbody>tr>td,.office_table .table>tbody>tr>th,.office_table .table>tfoot>tr>td,.office_table .table>tfoot>tr>th,.office_table .table>thead>tr>td,.office_table .table>thead>tr>th{
border-top:0px;
}
.office_table .fixed-table-container tbody td{
border-left:0px;
}
.office_table .fixed-table-container{
border:0px;
}
.office_table thead{
display:none !important;
}
.office_table .fixed-table-body{
height: 360px;
box-shadow: inset 0px -1px 1px #ccc;
}
/**************办事大厅的详情**************************/
.officeDetail_bg{
background: url(../../custom/images/officeDetail_bg.png);
height:150px;
background-size: cover;
}
.officeDetail_content{
padding:0 5%;
}
.officeDetail_content_title{
height:65px;
border-bottom:1px solid #bbb;
text-align: center;
padding:0 20px;
}
.officeDetail_content_title>span{
font-size: 24px;
color:#333;
line-height:65px;
}
.officeDetail_content_title>span+div{
float:left;
color:#08B9D5;
margin-top:30px;
cursor: pointer;
}
.officeDetail_content_title>span+div>img{
margin-right:5px;
vertical-align: sub;
}
.officeDetail_content_title>span+div+div{
float:right;
margin-top:30px;
color:#999;
}
.officeDetail_content_title>span+div+div>span:first-child{
color:red;
margin-right:3px;
vertical-align: sub;
}
.officeDetail_content_div{
padding:0;
}
.officeDetail_flow{
background: #f3f3f3;
height:10px;
position: relative;
}
.officeDetail_flow_toggole{
width:54px;
height:25px;
line-height:25px;
color:#bbb;
float:right;
border-radius:3px 3px 0 0;
background: #f3f3f3;
text-align: center;
right:5%;
margin-top: -25px;
cursor: pointer;
font-size:12px;
position: absolute;
z-index: 2;
}
.officeDetail_flow_toggole:hover{
background: #e5e5e5 !important;
}
.officeDetail_flow_toggole>img{
margin-right:5px;
margin-top: -2px;
}
.officeDetail_flow_content{
height:0;
overflow: auto;
line-height: 14px;
padding:0;
}
......
......@@ -7,6 +7,10 @@
<jsp:include page="header.jsp"></jsp:include>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/portlet/js/jwAppPortletModule.js" charset="utf-8"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/storepersonal/js/storePersonalModule.js" charset="utf-8"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/store/js/storeModule.js" charset="utf-8"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/storeshare/js/storeShareModule.js" charset="utf-8"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/user/js/jwAppUserModule.js" charset="utf-8"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/storepartook/js/storePartookModule.js" charset="utf-8"></script>
<script src="${ctx}/jfcas04/js/disk.js"></script>
</head>
<body>
......@@ -16,13 +20,13 @@
<!-- 内容部分 -->
<div class="disk_container container-fluid">
<div class="row disk_search">
<div class="col-md-3">
<div class="col-md-3" onclick="location.href='disk'"><img src="${ctx}/custom/images/disk_home.png" wdith="14" height="14" /><span>|</span></div>
<div class="col-md-3" id="disk_backFolder_prev" onclick="disk_backFolder_prev(this)"><img src="${ctx}/custom/images/disk_last.png" wdith="14" height="14" /><span>|</span></div>
<div class="col-md-3" id="disk_backFolder_next" onclick="disk_backFolder_next(this)"><img src="${ctx}/custom/images/disk_next.png" wdith="14" height="14" /><span>|</span></div>
<div id="disk_rubbish" class="col-md-3" onclick="disk_rubbish()"><img src="${ctx}/custom/images/disk_circle.png" wdith="14" height="14" /></div>
<div class="col-md-2">
<div class="col-md-6" onclick="location.href='disk'"><img src="${ctx}/custom/images/disk_home.png" wdith="14" height="14" /><span>|</span></div>
<%-- <div class="col-md-3" id="disk_backFolder_prev" onclick="disk_backFolder_prev(this)"><img src="${ctx}/custom/images/disk_last.png" wdith="14" height="14" /><span>|</span></div>
<div class="col-md-3" id="disk_backFolder_next" onclick="disk_backFolder_next(this)"><img src="${ctx}/custom/images/disk_next.png" wdith="14" height="14" /><span>|</span></div> --%>
<div id="disk_rubbish" class="col-md-6" onclick="disk_rubbish()"><img src="${ctx}/custom/images/disk_circle.png" wdith="14" height="14" /></div>
</div>
<div class="col-md-6">
<div class="col-md-7">
<div class="disk_search_center">
<a href="disk"><span class="glyphicon glyphicon-folder-close"></span><span>我的网盘</span><span class="glyphicon glyphicon-triangle-right"></span></a>
<!-- <a onclick="disk_backFolder(this)"><span class="glyphicon glyphicon-folder-close"></span><span>我的网盘</span><span class="glyphicon glyphicon-triangle-right"></span></a> -->
......@@ -50,6 +54,7 @@
<a class="disk_rubbishBtn disk_document_default" href="javascript:disk_reductionFolder()"><img src="/jfV5portal/custom/images/disk_return.png" width="16" height="16"><span>还原文件</span></a>
<a class="disk_rubbishBtn disk_document_default" href="javascript:disk_thoroughDeleteFolder()"><img src="/jfV5portal/custom/images/disk_thoroughDelete.png" width="16" height="16"><span>彻底删除</span></a>
<a class="disk_shareCodeBtn disk_document_default" href="javascript:disk_cancelShareCode()"><img src="/jfV5portal/custom/images/disk_cancelShare.png" width="14" height="14"><span>取消分享</span></a>
<a class="disk_enjoyBtn disk_document_default" href="javascript:disk_cancelEnjoy()"><img src="/jfV5portal/custom/images/disk_cancelShare.png" width="14" height="14"><span>取消共享</span></a>
</div>
<div class="col-md-1"><span onclick="disk_content_toggle(this)" class="disk_content_toggleBtn glyphicon glyphicon-th-large" title="切换到列表模式"></span></div>
</div>
......@@ -163,6 +168,7 @@
<li onclick="disk_downFolder(this)" class="disk_menu_clickBtn">下载</li>
<li onclick="disk_moveFolder(this)" class="disk_menu_clickBtn">移动到</li>
<li onclick="disk_enjoyFolder(this)" class="disk_menu_clickBtn">共享</li>
<li onclick="disk_cancelEnjoy(this)" class="disk_menu_clickBtn" style="display:none;">取消共享</li>
</ul>
</div>
......@@ -225,6 +231,14 @@
</div>
</div>--%>
<div id="disk_upload" style="display:none;"></div>
<!-- 操作之后的提示 -->
<div class="alert alert-success alert-dismissible layout_success_message" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
<span>Success!</span><span>成功提示!</span>
</div>
<!-- 尾部 -->
<jsp:include page="/footer.jsp"></jsp:include>
</body>
......
......@@ -13,8 +13,6 @@
<link rel="stylesheet" type="text/css" href="${ctx}/lib/plug/fancyBox-2.1.5/source/jquery.fancybox.css" media="screen">
<!-- ztree的css -->
<link rel="stylesheet" href="${ctx}/lib/plug/zTree/css/zTreeStyle/zTreeStyle.css" type="text/css">
<!-- jquery ui的css -->
<!-- <link rel="stylesheet" href="lib/plug/jqueryUi/jquery-ui-1.12.1.custom/jquery-ui.css" type="text/css"> -->
<link rel="stylesheet" href="${ctx}/lib/plug/jqueryUi/jquery-ui-1.10.4/themes/base/jquery-ui.css">
<!-- xcConfirm的css -->
<link rel="stylesheet" href="${ctx}/lib/plug/xcConfirm/css/xcConfirm.css">
......@@ -23,12 +21,9 @@
<!-- fullcalendar(日历)的css -->
<link href='${ctx}/lib/plug/fullcalendar/fullcalendar.min.css' rel='stylesheet' />
<link href='${ctx}/lib/plug/fullcalendar/fullcalendar.print.min.css' rel='stylesheet' media='print' />
<!-- easyui的css -->
<%-- <link rel="stylesheet" href="${ctx}/lib/plug/jquery-easyui-1.5.3/themes/default/easyui.css" type="text/css"></link> --%>
<link rel="stylesheet" href="${ctx}/lib/plug/jquery-easyui-1.5.3/themes/icon.css" type="text/css"></link>
<script type="text/javascript" src="${ctx}/lib/js/jquery-1.11.1.min.js"></script>
<!-- <script src="lib/js/jquery-1.11.1.min.js"></script> -->
<!-- fancyBox的js -->
<script type="text/javascript" src="${ctx}/lib/plug/fancyBox-2.1.5/source/jquery.fancybox.js"></script>
......@@ -62,9 +57,6 @@
<script type="text/javascript" src="${ctx}/lib/plug/jqueryColour/spectrum.js"></script>
<!-- mydate97的js -->
<script src='${ctx}/lib/plug/My97DatePicker/WdatePicker.js'></script>
<!-- easyui的js -->
<%-- <script type="text/javascript" src="${ctx}/lib/plug/jquery-easyui-1.5.3/jquery.easyui.min.js"></script>
<script type="text/javascript" src="${ctx}/lib/plug/jquery-easyui-1.5.3/locale/easyui-lang-zh_CN.js"></script> --%>
<!-- 调用api时的js -->
<script type="text/javascript" src="${ctx}/jwapp/common/js/lang_json.js"></script>
<!-- bootstrap的js -->
......
$(function(){
//去掉尾部的一个div
$('.index_footer').next().remove();
//初始化容器的最小高度
init_officeDetail_container_minHeight();
})
//初始化容器的最小高度
function init_officeDetail_container_minHeight(){
var height = $(window).height() - $('.indedx_header').outerHeight(true) - $('.indedx_header_logo').outerHeight(true) - $('.index_center').outerHeight(true) - $('.officeDetail_bg').outerHeight(true) - $('.index_footer').outerHeight(true) - 10;
if(height>0){
$('.officeDetail_content').css('min-height',height);
}
}
//切换流程图的显示
function officeDetail_changeFlow(handler){
var really_height = $('.officeDetail_content').css('min-height');
if(!$('.officeDetail_content').data('minHeight')){
$('.officeDetail_content').data('minHeight',really_height);
}
else{
really_height = $('.officeDetail_content').data('minHeight');
}
really_height = really_height.replace(/px/,'');
var title_height = $('.officeDetail_content_title').outerHeight(true);
var min_height = document.body.clientHeight - $('.indedx_header').outerHeight(true) - $('.indedx_header_logo').outerHeight(true) - $('.index_center').outerHeight(true) - $('.officeDetail_bg').outerHeight(true) - $('.index_footer').outerHeight(true) - title_height ;
if($(handler).data('change')!='1'){
$(handler).data('change','1');
//去掉申请内容
$('.officeDetail_content').css('overflow','hidden');
$('.officeDetail_content').animate({'height':title_height,'min-height':'0'});
//显示流程图的内容
$('.officeDetail_flow').css('height','auto');
//从高度为10开始执行动画
$('.officeDetail_flow_content').height(10).animate({'height':min_height});
//改变点击按钮位置
$('.officeDetail_flow_toggole').css({'margin-top':'0','background':'white','border-radius':'0 0 3px 3px '});
$('.officeDetail_flow_toggole').find('img').attr('src','custom/images/officeDetail_down.png');
$('.officeDetail_flow_toggole').find('span').text('收起');
}
else{
$(handler).data('change','0');
//显示申请的内容
$('.officeDetail_content').animate({'min-height':really_height},function(){
$(this).css('height','auto');
});
//去掉流程图的内容
$('.officeDetail_flow').animate({'height':'10'});
$('.officeDetail_flow_content').animate({'height':'0'});
//改变点击按钮位置
$('.officeDetail_flow_toggole').css({'margin-top':'-25px','background':'#f3f3f3','border-radius':'3px 3px 0 0 '});
$('.officeDetail_flow_toggole').find('img').attr('src','custom/images/officeDetail_up.png');
$('.officeDetail_flow_toggole').find('span').text('展开');
}
}
\ No newline at end of file
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<html>
<head>
<title>办事大厅</title>
<jsp:include page="header.jsp"></jsp:include>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/portlet/js/jwAppPortletModule.js" charset="utf-8"></script>
<script src="${ctx}/jfcas04/js/office.js"></script>
</head>
<body>
<!-- 头部 -->
<jsp:include page="/nav4.jsp"></jsp:include>
<!-- 内容部分 -->
<div class="container-fluid">
<!--背景图-->
<div class="row office_bg">
<div class="office_bg_content col-md-12">
<div class="col-md-3">
<div class="office_bg_content_click">
<img src="${ctx}/custom/images/office_apply.png" width="100" height="100"/>
<div>我要申请</div>
</div>
</div>
<div class="col-md-3">
<div class="">
<img src="${ctx}/custom/images/office_examine.png" width="100" height="100"/>
<div>我要审批</div>
</div>
</div>
<div class="col-md-3">
<div class="">
<img src="${ctx}/custom/images/office_progress.png" width="100" height="100"/>
<div>进度查询</div>
</div>
</div>
<div class="col-md-3">
<div class="">
<img src="${ctx}/custom/images/office_history.png" width="100" height="100"/>
<div>历史查询</div>
</div>
</div>
</div>
</div>
<!-- 申请模块 -->
<div class="office_module row">
<div class="office_module_title col-md-12">
<img src="${ctx}/custom/images/office_title.png" height="16" width="16" />
<span>我要申请</span>
</div>
<div class="office_apply col-md-12">
<div class="office_apply_content">
<!-- <div><div><div>报工申请</div></div></div>
<div><div><div>报工申请报工申请</div></div></div>
<div><div><div>报工申请</div></div></div>
<div><div><div>报工申请报工申请</div></div></div>
<div><div><div>报工申请</div></div></div>
<div><div><div>报工申请报工申请</div></div></div>
<div><div><div>报工申请</div></div></div>
<div><div><div>报工申请报工申请</div></div></div>
<div><div><div>报工申请</div></div></div>
<div><div><div>报工申请报工申请</div></div></div>
<div><div><div>报工申请</div></div></div>
<div><div><div>报工申请报工申请</div></div></div> -->
</div>
</div>
</div>
<!-- 审批模块 -->
<div class="office_module row" style="display:none">
<div class="office_module_title col-md-12">
<img src="${ctx}/custom/images/office_title.png" height="16" width="16" />
<span>我要审批</span>
<a href="#">只显示待审批申请</a>
</div>
<div class="col-md-12 office_examine office_table">
<table id="office_examine"></table>
</div>
</div>
<!-- 进度查询模块 -->
<div class="office_module row" style="display:none">
<div class="office_module_title col-md-12">
<img src="${ctx}/custom/images/office_title.png" height="16" width="16" />
<span>进度查询</span>
<div>
<input type="text" /><img src="${ctx}/custom/images/office_search.png" width="24" height="24" />
</div>
</div>
<div class="col-md-12 office_examine office_table">
<table id="office_progress"></table>
</div>
</div>
<!-- 历史查询模块 -->
<div class="office_module row" style="display:none">
<div class="office_module_title col-md-12">
<img src="${ctx}/custom/images/office_title.png" height="16" width="16" />
<span>历史查询</span>
<div>
<input type="text" /><img src="${ctx}/custom/images/office_search.png" width="24" height="24" />
</div>
</div>
<div class="col-md-12 office_examine office_table">
<table id="office_history"></table>
</div>
</div>
<!--主容器结尾-->
</div>
<!-- 尾部 -->
<jsp:include page="/footer.jsp"></jsp:include>
</body>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<html>
<head>
<title>办事大厅的详情信息</title>
<jsp:include page="header.jsp"></jsp:include>
<script type="text/javascript" src="${pageContext.request.contextPath}/jwapp/pages/portlet/js/jwAppPortletModule.js" charset="utf-8"></script>
<script src="${ctx}/jfcas04/js/officeDetail.js"></script>
</head>
<body>
<!-- 头部 -->
<jsp:include page="/nav4.jsp"></jsp:include>
<!-- 内容部分 -->
<div class="container-fluid">
<!-- 背景图 -->
<div class="row officeDetail_bg"></div>
<!-- 详情 -->
<div class="row officeDetail_content">
<div class="officeDetail_content_title col-md-12">
<span>请假申请</span>
<div onclick="location.href='office'"><img src="${ctx}/custom/images/officeDetail_back.png" width="16" height="16" /><span>返回</span></div>
<div><span>*</span><span>必填</span></div>
</div>
<div class="officeDetail_content_div col-md-12">
<div>申请内容</div>
<div>申请内容</div>
<div>申请内容</div>
<div>申请内容</div>
<div>申请内容</div>
<div>申请内容</div>
<div>申请内容</div>
<div>申请内容</div>
<!-- <div style="height:500px;background:red;">申请内容</div> -->
</div>
</div>
<!-- 流程图 -->
<div class="row officeDetail_flow">
<div class="officeDetail_flow_toggole" onClick="officeDetail_changeFlow(this)"><img src="${ctx}/custom/images/officeDetail_up.png" width="7" height="4" /><span>展开</span></div>
<div class="col-md-12 officeDetail_flow_content" >
<div>流程图</div>
<div>流程图</div>
<div>流程图</div>
<div>流程图</div>
<div>流程图</div>
<div>流程图</div>
<div>流程图</div>
<div>流程图</div>
<!-- <div style="height:500px;background:red;">流程图</div> -->
</div>
</div>
<!--主容器结尾-->
</div>
<!-- 尾部 -->
<jsp:include page="/footer.jsp"></jsp:include>
</body>
</html>
//此乃本模块与后台交互的方法接口部分
var voteModule = function(format) {
this.module = "";
this.action = "";
this.format = format;
};
//定义数据交互
voteModule.prototype = BusinessObject;
//插入附件数据
voteModule.prototype.insertVote = function(){};
//修改附件数据
voteModule.prototype.updateVote = function(){};
//删除附件数据
voteModule.prototype.deleteVote = function(){};
//附件数据_分页
voteModule.prototype.list = function(){};
//附件所有数据
voteModule.prototype.listAll = function(){};
//创建一个数据操作对象,然后再后续使用
voteModule.voteActAction = new voteModule("json").delegate("voteAct");
//创建一个数据获取对象,然后再后续使用
voteModule.voteDataAction = new voteModule("json").delegate("voteData");
//说明: 1、所有方法里统一传递josn格式的参数,用于后台交互,如data.listTables(param) ,如没有参数则传'{}',如data.listTables({})
// 2、前后台数据获取传输协议 如:json[{'0':{pageCount':'2','pageNo':'1','pageSize':'20','rowSet':'[{0},{1}....]'}}]
// 3、前后台增删改的返回状态 如:json[{'0':{'rowSet':{'NAME':'-1','VALUE':'保存失败'}}}]
/**
* 序号:1
* 功能:定义分页(EasyUI)
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:宁波金网
* 备注:无需更改
**/
var ls_width = $(window).width();
var ls_height = $(window).height();
var local_page=1;
var rows=20;
var listPageSize = [10,20,50,100,500,1000];
var queryData = eval("({'page':'"+local_page+"','rows':'"+rows+"'})");
var tab_n = 0;
//重置分页参数
function resetQueryData(){
queryData = "";
queryData = eval("({'page':'"+local_page+"','rows':'"+rows+"'})");
}
//定义附件关联模块ID(1:一般业务,2:测试信息,3:审批业务,999:其它数据 )
var ls_module_id='2';
//定义当前模块业务类型(YBYW:一般业务,SPGL:审批业务)
var ls_ywlx = 'YBYW';
/****/
/**
* 序号:2
* 功能:构建下拉框内容
* 参数:
* 说明:方便新增、修改页面里的下拉选项加载数据
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
/****/
/**
* 序号:3
* 功能:构建主页面列表
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
//定义grid列表
var ls_title="投票管理功能&nbsp;&nbsp;<font color='#993300'></font>";
var is_column = [ [
{field : 'CONTENT',title : '主题内容',width : 150,align : 'center'},
{field : 'START_TIME',title : '开始时间',width : 150,align : 'center'},
{field : 'END_TIME',title : '结束时间',width : 150,align : 'center'},
{field : 'CREATE_ID',title : '创建人',width : 80,align : 'center'},
{field : 'CREATE_TIME',title : '创建时间',width : 150,align : 'center'},
{field : 'UPDATE_ID',title : '修改人',width : 80,align : 'center'},
{field : 'UPDATE_TIME',title : '修改时间',width : 150,align : 'center'},
] ];
//列表加载完成回调
function dataOnLoadSuccess(){
}
//设置颜色和每行高度
function rowstyler(index,row){
}
//展示列表
datagrid("list",ls_title,gaowj.WEB_APP_NAME + "/voteData_list",queryData,is_column,60,80);
/****/
/**
* 序号:4
* 功能:设置主页面操作列菜单
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
//操用列显示更多(一般情况下无需更改)
function formatMenu(value, data,index) {
var returnData="";
return returnData
+ "<span class=\"icon-ext-moremenu\" style=\"padding-left:20px;*width:20px;\"></span>"
+ "<span data-p1="+index+" class=\"easyui-tooltip\" style=\"color:blue;cursor:pointer;\">更多</span>";
}
//上浮横向菜单集里的具体菜单项(需更改)
function getOptionMenu(data,index){
var returnData= "<span class=\"icon-edit\" style=\"padding-left:20px;*width:20px;\"></span> <a href=\"javascript:void(0);\" onclick=\"editRow('"
+ index + "')\">编辑</a> | <span class=\"icon-clear\" style=\"padding-left:20px;*width:20px;\"></span><a href=\"javascript:void(0);\" onclick=\"deleteRow('"
+ index + "')\">删除</a> | <span class=\"icon-ext-file\" style=\"padding-left:20px;*width:20px;\"></span><a href=\"javascript:void(0);\" onclick=\"uploadcommonRow('"
+ index + "')\">附件</a>";
return returnData;
}
//返回菜单集的菜单个数(需更改)
function getOptionMenuCount(){
var is_menu_count = 3;
return is_menu_count;
}
/****/
/**
* 序号:5
* 功能:新增修改弹出
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
//加载增加子页面
function addRow(){
var is_row={OPETYPE:'insert'};
openEditRow("voteView_voteTabDetail",is_row,"新增",true,0.65,0.95,0,0);
}
//加载增加子页面成功后的回调
function addUrlOnloadCallback(is_row){
}
//保存
function insertData(is_entity){
// is_entity.FIELD_CREATE_TIME = strToDateObj(is_entity.FIELD_CREATE_TIME);
// is_entity.FIELD_RECEIVE_DATE = strToDateObj(is_entity.FIELD_RECEIVE_DATE);
var v_result = voteModule.voteActAction.insertVote(is_entity);
$('#list').datagrid('reload');
return v_result;
}
//加载修改子页面
function editRow(index) {
$('#list').datagrid('selectRow',index);
var is_row = $('#list').datagrid('getSelections');
$('#list').datagrid('clearSelections');
is_row[0].OPETYPE = 'update';
openEditRow("voteView_voteTabDetail",is_row[0],"编辑",true,0.65,0.95,0,0);
}
//加载修改子页面成功后的回调
function updateUrlOnloadCallback(is_row){
}
//保存
function updateData(is_entity){
// is_entity.FIELD_CREATE_TIME = strToDateObj(is_entity.FIELD_CREATE_TIME);
// is_entity.FIELD_RECEIVE_DATE = strToDateObj(is_entity.FIELD_RECEIVE_DATE);
v_result = voteModule.mvoteActAction.updateVote(is_entity);
$('#list').datagrid('reload');
return v_result;
}
/****/
/**
* 序号:6
* 功能:单个删除
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
function deleteRow(index){
$('#list').datagrid('selectRow',index);
var is_row = $('#list').datagrid('getSelections');
$('#list').datagrid('clearSelections');
var code = is_row[0].UUID;
$.messager.confirm('提示', '确定删除?', function(r) {
if (r) {
var v_query = {};
v_query.FIELD_CODE = code;
var v_result = voteModule.voteActAction.deleteVote(v_query);
$.messager.alert('提示',v_result.VALUE);
$('#list').datagrid('reload');
}
});
}
/****/
/**
* 序号:7
* 功能:批量删除
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
function deleteBatchRow(){
var code="";
var rows = $('#list').datagrid('getSelections');
for(var i=0; i<rows.length; i++){
code = code + rows[i].UUID+",";
}
if(rows == null || rows == ""){
$.messager.alert('提示',"请选择需删除的记录!",'info');
return;
}
if(code.length>0){
code = code.substring(0,code.length - 1);
}
$.messager.confirm('提示', '确定删除?', function(r) {
if (r) {
var v_query = {};
v_query.FIELD_CODE = code;
var v_result = voteModule.voteActAction.deleteVote(v_query);
$.messager.alert('提示',v_result.VALUE);
$('#list').datagrid('reload');
}
});
}
/****/
/**
* 序号:8
* 功能:刷新
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
function refreshRow(){
$('#list').datagrid('load',{});
$("#voteTab_searchForm")[0].reset();
}
/****/
/**
* 序号:9
* 功能:查询
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
function searchRow(){
var v_query = $("#voteTab_searchForm").getFormVal();
$('#list').datagrid('load',v_query);
}
/****/
/**
* 序号:10
* 功能:高级查询弹出
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
//加载高级查询子页面
function advsearchRow(){
var is_row={OPETYPE:'ww'};
openAdvsearchRow("voteView_voteAdvsearch",is_row,"高级查询",true,0.65,0.95,0,0);
}
//加载高级查询子页面成功后的回调
function addAdvsearchCallback(is_row){
}
//高级查询
function advsearchData(is_entity){
// is_entity.FIELD_START_TIME = strToDateObj(is_entity.FIELD_START_TIME);
// is_entity.FIELD_END_TIME = strToDateObj(is_entity.FIELD_END_TIME);
// is_entity.FIELD_START_SCHOOLTIME = strToDateObj(is_entity.FIELD_START_SCHOOLTIME);
// is_entity.FIELD_END_SCHOOLTIME = strToDateObj(is_entity.FIELD_END_SCHOOLTIME);
$('#list').datagrid('load',is_entity);
}
/****/
/**
* 序号:11
* 功能:处理接口附件
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
function uploadcommonRow(index){
$('#list').datagrid('selectRow',index);
var is_row = $('#list').datagrid('getSelections');
$('#list').datagrid('clearSelections');
var code = is_row[0].UUID;
var is_row={MAINDATA_ID:code,MODULE_ID:ls_module_id};
var editUrl = "uploadFileCommonView_uploadfileCommonTab?FIELD_MODULE_ID="+ls_module_id+"&FIELD_MAINDATA_ID="+code;
openViewIframRow("uploadcommon",editUrl,is_row,"毕业证附件",true,0.65,0.95,0,0);
}
/****/
/**
* 序号:12
* 功能:批量处理接口附件
* 参数:
* 说明:
* 作者:朱天成
* 时间:2018-08-07
* 单位:杰夫兄弟智慧科技有限公司
* 备注:需更改
**/
function uploadcommonBatchRow(){
var code="";
var rows = $('#list').datagrid('getSelections');
for(var i=0; i<rows.length; i++){
code = code + rows[i].UUID+",";
}
if(rows == null || rows == ""){
$.messager.alert('提示',"请选择记录!",'info');
return;
}
if(code.length>0){
code = code.substring(0,code.length - 1);
}
var is_row={MAINDATA_ID:code,MODULE_ID:ls_module_id};
var editUrl = "uploadFileCommonView_uploadfileCommonTab?FIELD_MODULE_ID="+ls_module_id+"&FIELD_MAINDATA_ID="+code;
openViewIframRow("uploadcommon",editUrl,is_row,"批量毕业证附件",true,0.65,0.95,0,0);
}
/****/
\ No newline at end of file
<%@page contentType="text/html; charset=UTF-8"%>
<form id="inputForm" method="post" style="width: 100%;">
<input type="hidden" name="FIELD_OPETYPE" id="OPETYPE" value="${is_row.OPETYPE}"/>
<input type="hidden" name="FIELD_UUID" id="UUID" value="${is_row.UUID}"/>
<table align="center" border="0" cellpadding="0" cellspacing="0" class="tableStyle" style="margin: 10px 15px; width: 95%; line-height: 30px;">
<tr>
<td style="width: 15%;" class="tableStyleLable">
<span>会议内容:</span>
</td>
<td style="width: 85%">
<input class="easyui-textbox" id="adv_CONTENT" name="FIELD_CONTENT" style="width:365px" />
</td>
</tr>
<tr>
<td style="width: 20%;" class="tableStyleLable">
<span>
投票开始时间从:
</span>
</td>
<td style="width: 80%">
<input class="easyui-datetimebox" id="adv_START_START_TIME" name="FIELD_START_START_TIME"/>
<span>到</span>
<input id="adv_END_START_TIME" name="FIELD_END_START_TIME" type="text" class="easyui-datetimebox">
</td>
</tr>
<tr>
<td style="width: 20%;" class="tableStyleLable">
<span>
投票结束时间从:
</span>
</td>
<td style="width: 80%">
<input class="easyui-datetimebox" id="adv_START_END_TIME" name="FIELD_START_END_TIME"/>
<span>到</span>
<input id="adv_END_END_TIME" name="FIELD_END_END_TIME" type="text" class="easyui-datetimebox">
</td>
</tr>
</table>
</form>
\ No newline at end of file
<%@page contentType="text/html; charset=UTF-8"%>
<%@ include file="/gaowj/header-simple-1.0.jsp"%>
<div id="voteTab">
<link rel="stylesheet" type="text/css" href="${ctx}/jwapp/common/css/content_body.css" charset="utf-8"></link>
<link rel="stylesheet" type="text/css" href="${ctx}/jwapp/common/css/content_table.css" charset="utf-8"></link>
<link rel="stylesheet" type="text/css" href="${ctx}/jwapp/common/css/content_input.css" charset="utf-8"></link>
</div>
<table id="list" style="width: 100%; height: 100%;"></table>
<div id="tb">
<form id="voteTab_searchForm" style="float:left">
主题名称: <input class="easyui-textbox" id="FIELD_CONTENT" name="FIELD_CONTENT" style="width:200px"/>&nbsp;&nbsp;
</form>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search',plain:true" onclick="javascript:searchRow()">主题查询</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-ext-advsearch',plain:true" onclick="javascript:advsearchRow()">高级查询</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-reload',plain:true" onclick="javascript:refreshRow()">刷新</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-add',plain:true" onclick="javascript:addRow()">新增主题</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-clear',plain:true" onclick="javascript:deleteBatchRow()">删除主题</a>
<a href="#" class="easyui-linkbutton" data-options="iconCls:'icon-ext-file',plain:true" onclick="javascript:uploadcommonBatchRow()">附件上传</a>
</div>
<div id="detail" style="overflow:auto;"></div>
<div id="advsearch" style="overflow:auto;"></div>
<div id="uploadcommon" style="overflow:auto;"></div>
<script type="text/javascript" src="${ctx}/jwapp/pages/standard/js/jwStandardModule.js" charset="utf-8"></script>
<script type="text/javascript" src="${ctx}/jwapp/pages/vote/js/voteModule.js" charset="utf-8"></script>
<script type="text/javascript" src="${ctx}/jwapp/pages/vote/js/voteTab.js" charset="utf-8"></script>
<%@page contentType="text/html; charset=UTF-8"%>
<form id="inputForm" method="post" style="width: 100%;">
<input type="hidden" name="FIELD_OPETYPE" id="OPETYPE" value="${is_row.OPETYPE}"/>
<input type="hidden" name="FIELD_UUID" id="UUID" value="${is_row.UUID}"/>
<table align="center" border="0" cellpadding="0" cellspacing="0" class="tableStyle" style="margin: 10px 15px; width: 95%; line-height: 30px;">
<tr>
<td style="width: 15%;" class="tableStyleLable">
<span>主题内容:</span>
</td>
<td style="width: 85%">
<input class="easyui-textbox" id="CONTENT" name="FIELD_CONTENT" style="width:400px" required=true value="${is_row.CONTENT}"/>
</td>
</tr>
<tr>
<td class="tableStyleLable">
<span>投票开始时间:</span>
</td>
<td>
<input class="easyui-datetimebox" id="START_TIME" name="FIELD_START_TIME" style="width:400px" value="${is_row.START_TIME}"/>
</td>
</tr>
<tr>
<td class="tableStyleLable">
<span>投票结束时间:</span>
</td>
<td>
<input class="easyui-datetimebox" id="END_TIME" name="FIELD_END_TIME" style="width:400px" value="${is_row.END_TIME}"/>
</td>
</tr>
</table>
</form>
\ No newline at end of file
......@@ -26,7 +26,7 @@
/* .xcConfirm .popBox .txtBox{margin: 40px 100px; height: 100px; overflow: hidden;} */
.xcConfirm .popBox .txtBox{
margin: 30px 100px;
height: 57px;
height: 61px;
overflow: hidden;
margin-top: 40px;
}
......
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="/struts-tags" prefix="s" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<div class="indedx_header">
<div onclick="location.href='interim'">
......@@ -9,10 +10,10 @@
<a href="javascript:void(0)" class="index_header_showMessage">
<img src="${ctx}/custom/images/index4_loginmessage.png" width="12" height="12" />登录信息
<ul>
<li><span>登录账号</span><span>test001</span></li>
<li><span>姓名</span><span>小周</span></li>
<li><span>登录时间</span><span>2018.02.22 12:24:38</span></li>
<li><span>上次时间</span><span>2017.02.22 12:24:38</span></li>
<li><span>登录账号</span><span><s:property value="#session.userInfo['EMID']"/></span></li>
<li><span>姓名</span><span><s:property value="#session.userInfo['EMNAME']"/></span></li>
<li><span>登录IP</span><span><s:property value="#session.userInfo['LOGINIP']"/></span></li>
<li><span>上次时间</span><span><s:property value="#session.userInfo['BEFORETIME']"/></span></li>
</ul>
</a><span>|</span>
<a href="#">
......
......@@ -75,11 +75,21 @@
method="share">
<result name="share">/jfcas04/share.jsp</result>
</action>
<!-- 分享 -->
<!-- 分享详情 -->
<action name="shareDetail" class="com.jw.app.portlet.action.viewAction"
method="shareDetail">
<result name="shareDetail">/jfcas04/shareDetail.jsp</result>
</action>
<!-- 办事大厅 -->
<action name="office" class="com.jw.app.portlet.action.viewAction"
method="office">
<result name="office">/jfcas04/office.jsp</result>
</action>
<!-- 办事大厅的详情页 -->
<action name="officeDetail" class="com.jw.app.portlet.action.viewAction"
method="officeDetail">
<result name="officeDetail">/jfcas04/officeDetail.jsp</result>
</action>
<action name="userchoiceData_*" class="com.jw.app.userchoice.action.dataAction" method="{1}">
<result name="json" type="json">
......@@ -106,6 +116,23 @@
method="{1}">
<result name="{1}">/jwapp/pages/calendar/{1}.jsp</result>
</action>
<!-- 投票主题 -->
<action name="voteAct_*" class="com.jw.app.vote.action.actAction"
method="{1}">
<result name="json" type="json">
<param name="root">jsonObject</param>
</result>
</action>
<action name="voteData_*" class="com.jw.app.vote.action.dataAction"
method="{1}">
<result name="json" type="json">
<param name="root">jsonObject</param>
</result>
</action>
<action name="voteView_*" class="com.jw.app.vote.action.viewAction"
method="{1}">
<result name="{1}">/jwapp/pages/vote/{1}.jsp</result>
</action>
</package>
<package name="src_jwapp_store" extends="gaowj">
<action name="storeAct_*" class="com.jw.app.store.action.actAction"
......
package com.jw.app.business;
import java.util.List;
import java.util.Map;
import org.springframework.stereotype.Service;
import com.gaowj.business.exception.BusinessException;
import com.gaowj.business.util.Page;
@Service
public interface VoteBusiness {
/**
* 插入
* @param entity
* @throws BusinessException
*/
void insert_vote(Map<String,Object> entity) throws BusinessException ;
/**
* 更新
* @param entity
* @throws BusinessException
*/
void update_vote(Map<String,Object> entity) throws BusinessException ;
/**
* 删除记录
* @param entity
* @throws BusinessException
*/
void delete_vote(List<String> list)throws BusinessException;
/**
* 分页获取记录
* @param entity
* @throws BusinessException
*/
Page<Map<String, Object>> list_vote(int pageNo, int pageSize, Map<String, Object> query)throws BusinessException ;
/**
* 获取所有记录
* @param entity
* @throws BusinessException
*/
List<Map<String,Object>> list_vote(Map<String, Object> query) throws BusinessException ;
/**
* 获取所有记录数
* @param entity
* @throws BusinessException
*/
int listCount_vote(Map<String, Object> query) throws BusinessException ;
}
package com.jw.app.business.vote;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.apache.commons.lang.StringUtils;
import org.apache.ibatis.session.RowBounds;
import com.jw.app.business.VoteBusiness;
import com.gaowj.business.exception.BusinessException;
import com.gaowj.business.util.Page;
import com.gaowj.business.util.SessionUtil;
import com.gaowj.standard.utils.CacheKit;
public class VoteBusinessImpl implements VoteBusiness {
private voteDAO voteDAO;
public voteDAO getvoteDAO() {
return voteDAO;
}
public void setvoteDAO(voteDAO voteDAO) {
this.voteDAO = voteDAO;
}
@Override
public void insert_vote(Map<String, Object> entity) throws BusinessException {
if(entity.get("UUID")==null){
entity.put("UUID", java.util.UUID.randomUUID().toString());
}
if(entity.get("CREATE_ID")==null){
entity.put("CREATE_ID", SessionUtil.getCode() );
}
if(entity.get("CREATE_TIME")==null){
entity.put("CREATE_TIME", new Date());
}
if(entity.get("UPDATE_ID")==null){
entity.put("UPDATE_ID", SessionUtil.getEmname());
}
if(entity.get("UPDATE_TIME")==null){
entity.put("UPDATE_TIME", new Date());
}
// if(entity.get("SAVEDAYS")==null){
// String ls_savedays = PropUtil.getValue("set_savedays", "quartz_service", "14");
// entity.put("SAVEDAYS", Integer.parseInt(ls_savedays));
// }
//动态传值插入
List<String> infoListKey = new ArrayList<String>();
List<Object> infoList = new ArrayList<Object>();
if(entity.keySet()!=null){
Set<String> key = entity.keySet();
// 将map集合中的key和value 取出来分别放到list集合里
for (String str : key) {
infoList.add(entity.get(str));
infoListKey.add(str);
}
entity.put("infoListKey", infoListKey);
entity.put("infoList", infoList);
// 插入
voteDAO.insert_vote(entity);
}
}
@Override
public void update_vote(Map<String, Object> entity) throws BusinessException {
//动态传值修改
List<Map<String, Object>> updateList = new ArrayList<Map<String, Object>>();
if(entity.keySet()!=null){
Set<String> key = entity.keySet();
// 将map集合中的key和value 取出来分别放到list集合里
for (String str : key) {
Map<String, Object> updateMap = new HashMap<String, Object>();
if (StringUtils.equalsIgnoreCase("UUID",str)) continue;
updateMap.put("key", str);
updateMap.put("value", entity.get(str));
updateList.add(updateMap);
}
entity.put("info", updateList);
//
voteDAO.update_vote(entity);
}
}
@Override
public void delete_vote(List<String> list) throws BusinessException {
voteDAO.delete_vote(list);
}
@Override
public Page<Map<String, Object>> list_vote(int pageNo, int pageSize,Map<String, Object> query) throws BusinessException {
//计算起始记录
int pageStart = (pageNo - 1) * pageSize;
//获取列表
List<Map<String, Object>> items = voteDAO.list_vote(new RowBounds(pageStart, pageSize), query);
//获取列表个数
int count = listCount_vote(query);
//创建分页对象
Page<Map<String, Object>> page = new Page<Map<String, Object>>();
page.setStart(pageStart);
page.setLimit(pageSize);
page.setCount(count);
page.setItems(items);
return page;
}
@Override
public List<Map<String, Object>> list_vote(Map<String, Object> query) throws BusinessException {
List<Map<String, Object>> list_data = CacheKit.get("ehcache10", "vote"+query);
if(list_data==null || list_data.size()==0){
list_data=voteDAO.list_vote(query);
CacheKit.put("ehcache10", "vote"+query, list_data);
}
return list_data;
}
@Override
public int listCount_vote(Map<String, Object> query) throws BusinessException {
return voteDAO.listCount_vote(query);
}
}
package com.jw.app.business.vote;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.session.RowBounds;
import com.gaowj.business.exception.BusinessException;
public interface voteDAO {
void insert_vote(Map<String,Object> entity) throws BusinessException ;
void update_vote(Map<String,Object> entity) throws BusinessException ;
void delete_vote(List<String> list) throws BusinessException;
List<Map<String,Object>> list_vote(RowBounds rowbounds, Map<String, Object> query) throws BusinessException ;
List<Map<String,Object>> list_vote(Map<String,Object> query) throws BusinessException ;
int listCount_vote(Map<String, Object> query) throws BusinessException ;
}
<?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.jw.app.business.vote.voteDAO">
<insert id="insert_vote" parameterType="map">
insert into VOTE_MANAGER(
<trim prefix="" suffixOverrides=",">
<foreach collection="infoListKey" item="key">
${key},
</foreach>
</trim>
<![CDATA[ ) values( ]]>
<trim prefix="" suffixOverrides=",">
<foreach collection="infoList" item="value">
#{value},
</foreach>
</trim>
<![CDATA[ ) ]]>
</insert>
<update id="update_vote" parameterType="map">
<![CDATA[
update VOTE_MANAGER set
]]>
<trim prefix="" suffixOverrides=",">
<foreach collection="info" item="info">
${info.key} = #{info.value} ,
</foreach>
</trim>
<where>
<if test="UUID != null and UUID != ''">
and UUID = #{UUID}
</if>
</where>
</update>
<delete id="delete_vote" parameterType="list">
<![CDATA[
delete from VOTE_MANAGER where UUID IN
]]>
<foreach collection="list" item="UUID" open="(" separator=","
close=")">
#{UUID}
</foreach>
</delete>
<select id="list_vote" parameterType="map" resultType="upperCaseKeyMap">
<![CDATA[
select f.*
from VOTE_MANAGER f where 1=1
]]>
<if test="UUID != null and UUID != ''">
and f.UUID = #{UUID}
</if>
<if test="CONTENT != null and CONTENT != ''">
and f.CONTENT like concat('%',#{CONTENT},'%')
</if>
<if test="START_TIME != null and START_TIME != ''">
and f.START_TIME = #{START_TIME}
</if>
<if test="END_TIME != null and END_TIME != ''">
and f.END_TIME = #{END_TIME}
</if>
<if test="CREATE_ID != null and CREATE_ID != ''">
and f.CREATE_ID like concat('%',#{CREATE_ID},'%')
</if>
<if test="START_TIME != null and START_TIME != ''">
and f.CREATE_TIME &gt;= #{START_TIME}
</if>
<if test="END_TIME != null and END_TIME != ''">
and f.CREATE_TIME &lt;= #{END_TIME}
</if>
<if test="UPDATE_ID != null and UPDATE_ID != ''">
and f.UPDATE_ID = #{UPDATE_ID}
</if>
<if test="UPDATE_TIME != null and UPDATE_TIME != ''">
and f.UPDATE_TIME = #{UPDATE_TIME}
</if>
order by f.CREATE_TIME DESC
</select>
<select id="listCount_vote" parameterType="map" resultType="int">
<![CDATA[
select count(*) c from VOTE_MANAGER f where 1=1
]]>
<if test="UUID != null and UUID != ''">
and f.UUID = #{UUID}
</if>
<if test="CONTENT != null and CONTENT != ''">
and f.CONTENT like concat('%',#{CONTENT},'%')
</if>
<if test="START_TIME != null and START_TIME != ''">
and f.START_TIME = #{START_TIME}
</if>
<if test="END_TIME != null and END_TIME != ''">
and f.END_TIME = #{END_TIME}
</if>
<if test="CREATE_ID != null and CREATE_ID != ''">
and f.CREATE_ID like concat('%',#{CREATE_ID},'%')
</if>
<if test="START_TIME != null and START_TIME != ''">
and f.CREATE_TIME &gt;= #{START_TIME}
</if>
<if test="END_TIME != null and END_TIME != ''">
and f.CREATE_TIME &lt;= #{END_TIME}
</if>
<if test="UPDATE_ID != null and UPDATE_ID != ''">
and f.UPDATE_ID = #{UPDATE_ID}
</if>
<if test="UPDATE_TIME != null and UPDATE_TIME != ''">
and f.UPDATE_TIME = #{UPDATE_TIME}
</if>
</select>
</mapper>
\ No newline at end of file
......@@ -53,4 +53,12 @@ public class viewAction extends BasicAction {
return "shareDetail";
}
public String office() throws BusinessException {
return "office";
}
public String officeDetail() throws BusinessException {
return "officeDetail";
}
}
......@@ -6,6 +6,7 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.sql.Blob;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
......@@ -447,20 +448,28 @@ public class actAction extends BasicAction {
String uuid = request.getParameter("uuid");
String uploadnew=request.getParameter("uploadnew");
String uploadpath=request.getParameter("uploadpath");
String downloadFilenameEncode1 = PropUtil.getValue("downloadFilenameEncode1", "quartz_service", "gbk");
String downloadFilenameEncode2 = PropUtil.getValue("downloadFilenameEncode2", "quartz_service", "iso8859-1");
super.setEncoding1(downloadFilenameEncode1);
super.setEncoding2(downloadFilenameEncode2);
// String downloadFilenameEncode1 = PropUtil.getValue("downloadFilenameEncode1", "quartz_service", "gbk");
// String downloadFilenameEncode2 = PropUtil.getValue("downloadFilenameEncode2", "quartz_service", "iso8859-1");
// super.setEncoding1(downloadFilenameEncode1);
// super.setEncoding2(downloadFilenameEncode2);
response.setCharacterEncoding("utf-8");
if(new File(uploadpath+File.separator+uploadnew).exists()==false){
db2fileStore(uuid,uploadpath,uploadnew,false);
ret_download = super.download();
}else{
ret_download = super.download();
}
String filename1 = RequestUtils.getString(request, "uploadold");
try {
filename1 = new String(filename1.getBytes("ISO-8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 操作日志
SystemOpeBusiness sysbusiness = BusinessManager.getBusiness(SystemOpeBusiness.class);
sysbusiness.insert_logBusiness("download", "用户["+SessionUtil.getEmname()+"]下载网盘公司文件:"+ uploadpath+File.separator+uploadnew,
"下载文件",uploadpath+File.separator+uploadnew, request.getParameter("uploadold"),"store");
"下载文件",uploadpath+File.separator+uploadnew,filename1,"store");
//
return ret_download;
}
......
......@@ -6,6 +6,7 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.sql.Blob;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
......@@ -72,27 +73,27 @@ public class actAction extends BasicAction {
//去除不要更新的字段
entity.remove("OPETYPE");
//处理目录/文件重名的问题,处理是直接在文件和目录后加数字
Map<String,Object> v_congfu_query = new HashMap<String,Object>();
v_congfu_query.put("FATHER_ID", entity.get("FATHER_ID"));
v_congfu_query.put("CREATOR_ID", entity.get("CREATOR_ID"));
String isfile_1 = (String) entity.get("ISFILE");
if(StringUtils.equals(isfile_1, "1")){
String fname = (String) entity.get("FILE_NAME");
fname = fname.substring(0,fname.lastIndexOf("."));
v_congfu_query.put("FILE_NAME",fname);
}else{
v_congfu_query.put("FILE_NAME", entity.get("FILE_NAME"));
}
int ret_count = business.listCount_storePersonal(v_congfu_query);
if(ret_count>0){
String fname = (String) entity.get("FILE_NAME");
if(StringUtils.equals(isfile_1, "1")){
fname = fname.substring(0,fname.lastIndexOf("."))+"("+ret_count+")."+fname.substring(fname.lastIndexOf(".")+1);
}else{
fname = fname + "("+ret_count+")";
}
entity.put("FILE_NAME",fname);
}
// Map<String,Object> v_congfu_query = new HashMap<String,Object>();
// v_congfu_query.put("FATHER_ID", entity.get("FATHER_ID"));
// v_congfu_query.put("CREATOR_ID", entity.get("CREATOR_ID"));
// String isfile_1 = (String) entity.get("ISFILE");
// if(StringUtils.equals(isfile_1, "1")){
// String fname = (String) entity.get("FILE_NAME");
// fname = fname.substring(0,fname.lastIndexOf("."));
// v_congfu_query.put("FILE_NAME",fname);
// }else{
// v_congfu_query.put("FILE_NAME", entity.get("FILE_NAME"));
// }
// int ret_count = business.listCount_storePersonal(v_congfu_query);
// if(ret_count>0){
// String fname = (String) entity.get("FILE_NAME");
// if(StringUtils.equals(isfile_1, "1")){
// fname = fname.substring(0,fname.lastIndexOf("."))+"("+ret_count+")."+fname.substring(fname.lastIndexOf(".")+1);
// }else{
// fname = fname + "("+ret_count+")";
// }
// entity.put("FILE_NAME",fname);
// }
//处理超限问题
StoreUserBusiness business_storeuser = BusinessManager.getBusiness(StoreUserBusiness.class);
Map<String,Object> storeuserQuery = new HashMap<String,Object>();
......@@ -227,7 +228,7 @@ public class actAction extends BasicAction {
}
}
//
jsonObject.putAll(Status.getStatusSuccessMessage("保存成功"));
jsonObject.putAll(Status.getStatusSuccessMessage("保存成功,"+entity.get("FILE_NAME")));
}
} catch (Exception e) {
jsonObject.putAll(Status.getStatusErrorMessage("保存失败"));
......@@ -246,33 +247,33 @@ public class actAction extends BasicAction {
StorePersonalBusiness business = BusinessManager.getBusiness(StorePersonalBusiness.class);
Map<String, Object> entity = RequestUtils.getUpdateFieldMap(request,RequestUtils.UPDATEDATAFIELDPREFIX);
String father_path = request.getParameter("FATHER_PATH");
String old_file_name = request.getParameter("OLD_FILE_NAME");
// String old_file_name = request.getParameter("OLD_FILE_NAME");
try {
String is_fname = (String) entity.get("FILE_NAME");
if(!StringUtils.equals(is_fname, old_file_name)){
//处理目录/文件重名的问题,处理是直接在文件和目录后加数字
Map<String,Object> v_congfu_query = new HashMap<String,Object>();
v_congfu_query.put("FATHER_ID", entity.get("FATHER_ID"));
v_congfu_query.put("CREATOR_ID", entity.get("CREATOR_ID"));
String isfile_1 = (String) entity.get("ISFILE");
if(StringUtils.equals(isfile_1, "1")){
String fname = (String) entity.get("FILE_NAME");
fname = fname.substring(0,fname.lastIndexOf("."));
v_congfu_query.put("FILE_NAME",fname);
}else{
v_congfu_query.put("FILE_NAME", entity.get("FILE_NAME"));
}
int ret_count = business.listCount_storePersonal(v_congfu_query);
if(ret_count>0){
String fname = (String) entity.get("FILE_NAME");
if(StringUtils.equals(isfile_1, "1")){
fname = fname.substring(0,fname.lastIndexOf("."))+"("+ret_count+")."+fname.substring(fname.lastIndexOf(".")+1);
}else{
fname = fname + "("+ret_count+")";
}
entity.put("FILE_NAME",fname);
}
}
// String is_fname = (String) entity.get("FILE_NAME");
// if(!StringUtils.equals(is_fname, old_file_name)){
// //处理目录/文件重名的问题,处理是直接在文件和目录后加数字
// Map<String,Object> v_congfu_query = new HashMap<String,Object>();
// v_congfu_query.put("FATHER_ID", entity.get("FATHER_ID"));
// v_congfu_query.put("CREATOR_ID", entity.get("CREATOR_ID"));
// String isfile_1 = (String) entity.get("ISFILE");
// if(StringUtils.equals(isfile_1, "1")){
// String fname = (String) entity.get("FILE_NAME");
// fname = fname.substring(0,fname.lastIndexOf("."));
// v_congfu_query.put("FILE_NAME",fname);
// }else{
// v_congfu_query.put("FILE_NAME", entity.get("FILE_NAME"));
// }
// int ret_count = business.listCount_storePersonal(v_congfu_query);
// if(ret_count>0){
// String fname = (String) entity.get("FILE_NAME");
// if(StringUtils.equals(isfile_1, "1")){
// fname = fname.substring(0,fname.lastIndexOf("."))+"("+ret_count+")."+fname.substring(fname.lastIndexOf(".")+1);
// }else{
// fname = fname + "("+ret_count+")";
// }
// entity.put("FILE_NAME",fname);
// }
// }
//去除不要更新的字段
entity.remove("OPETYPE");
boolean is_save2db = Boolean.parseBoolean(PropUtil.getValue("uploadfile_savetodb", "quartz_service", "true"));
......@@ -372,7 +373,7 @@ public class actAction extends BasicAction {
}
}
//
jsonObject.putAll(Status.getStatusSuccessMessage("修改成功"));
jsonObject.putAll(Status.getStatusSuccessMessage("修改成功,"+entity.get("FILE_NAME")));
} catch (Exception e) {
jsonObject.putAll(Status.getStatusErrorMessage("修改失败"));
e.printStackTrace();
......@@ -634,20 +635,29 @@ public class actAction extends BasicAction {
String uuid = request.getParameter("uuid");
String uploadnew=request.getParameter("uploadnew");
String uploadpath=request.getParameter("uploadpath");
String downloadFilenameEncode1 = PropUtil.getValue("downloadFilenameEncode1", "quartz_service", "gbk");
String downloadFilenameEncode2 = PropUtil.getValue("downloadFilenameEncode2", "quartz_service", "iso8859-1");
super.setEncoding1(downloadFilenameEncode1);
super.setEncoding2(downloadFilenameEncode2);
// String downloadFilenameEncode1 = PropUtil.getValue("downloadFilenameEncode1", "quartz_service", "gbk");
// String downloadFilenameEncode2 = PropUtil.getValue("downloadFilenameEncode2", "quartz_service", "iso8859-1");
// super.setEncoding1(downloadFilenameEncode1);
// super.setEncoding2(downloadFilenameEncode2);
response.setCharacterEncoding("utf-8");
if(new File(uploadpath+File.separator+uploadnew).exists()==false){
db2fileStore(uuid,uploadpath,uploadnew,false);
ret_download = super.download();
}else{
ret_download = super.download();
}
String filename1 = RequestUtils.getString(request, "uploadold");
try {
filename1 = new String(filename1.getBytes("ISO-8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 操作日志
SystemOpeBusiness sysbusiness = BusinessManager.getBusiness(SystemOpeBusiness.class);
sysbusiness.insert_logBusiness("download", "用户["+SessionUtil.getEmname()+"]下载网盘公司文件:"+ uploadpath+File.separator+uploadnew,
"下载文件",uploadpath+File.separator+uploadnew, request.getParameter("uploadold"),"storePersonal");
"下载文件",uploadpath+File.separator+uploadnew,filename1,"storePersonal");
//
return ret_download;
}
......
package com.jw.app.vote.action;
import java.util.List;
import java.util.Map;
import net.sf.json.JSONObject;
import com.jw.app.business.VoteBusiness;
import com.gaowj.business.SystemOpeBusiness;
import com.gaowj.business.action.BasicAction;
import com.gaowj.business.comp.BusinessManager;
import com.gaowj.business.exception.BusinessException;
import com.gaowj.business.util.QueryParamUtil;
import com.gaowj.business.util.RequestUtils;
import com.gaowj.business.util.Status;
import com.gaowj.standard.utils.CacheKit;
public class actAction extends BasicAction {
/**
*
*/
private static final long serialVersionUID = -2591076090760872233L;
private JSONObject jsonObject = new JSONObject();
public JSONObject getJsonObject() {
return jsonObject;
}
public void setJsonObject(JSONObject jsonObject) {
this.jsonObject = jsonObject;
}
/**
* 插入
* @param entity
* @throws BusinessException
*/
public String insertVote() throws BusinessException {
VoteBusiness business = BusinessManager.getBusiness(VoteBusiness.class);
Map<String, Object> entity = RequestUtils.getUpdateFieldMap(request,RequestUtils.UPDATEDATAFIELDPREFIX);
jsonObject = new JSONObject();
try {
entity = QueryParamUtil.StringToDate(entity);
//去除不要更新的字段
entity.remove("OPETYPE");
//新增
business.insert_vote(entity);
// 操作日志
//sysbusiness.insert_logBusiness(具体方法,操作内容,操作描述,操作记录ID,操作记录中文描述,分类)
SystemOpeBusiness sysbusiness = BusinessManager.getBusiness(SystemOpeBusiness.class);
sysbusiness.insert_logBusiness("insertVote", "" + entity,
"增加学生测试数据", (String) entity.get("UUID"), (String) entity.get("NAME"), "votedemo1");
//
//更新缓存
CacheKit.update("ehcache11", "com_jw_app_vote_dataAction_listAll", business.list_vote(null));
//
jsonObject.putAll(Status.getStatusSuccessMessage("保存成功"));
} catch (Exception e) {
jsonObject.putAll(Status.getStatusErrorMessage("保存失败"));
e.printStackTrace();
}
return "json";
}
/**
* 更新
* @param entity
* @throws BusinessException
*/
public String updateVote() throws BusinessException {
VoteBusiness business = BusinessManager.getBusiness(VoteBusiness.class);
Map<String, Object> entity = RequestUtils.getUpdateFieldMap(request,RequestUtils.UPDATEDATAFIELDPREFIX);
try {
//去除不要更新的字段
entity.remove("OPETYPE");
//修改
entity = QueryParamUtil.StringToDate(entity);
business.update_vote(entity);
// 操作日志
SystemOpeBusiness sysbusiness = BusinessManager.getBusiness(SystemOpeBusiness.class);
sysbusiness.insert_logBusiness("updateVote", "" + entity,
"修改测试数据",(String) entity.get("UUID"), (String) entity.get("NAME"),"votedemo1");
//
jsonObject.putAll(Status.getStatusSuccessMessage("修改成功"));
} catch (Exception e) {
jsonObject.putAll(Status.getStatusErrorMessage("修改失败"));
e.printStackTrace();
}
return "json";
}
/**
* 在软删除基础上删除记录
* @param entity
* @throws BusinessException
*/
public String deleteVote() throws BusinessException {
VoteBusiness business = BusinessManager.getBusiness(VoteBusiness.class);
Map<String, Object> entity = RequestUtils.getUpdateFieldMap(request,RequestUtils.UPDATEDATAFIELDPREFIX);
String deletekey = (String) entity.get("CODE");
List<String> ListKey = QueryParamUtil.StringToList(deletekey);
try {
business.delete_vote(ListKey);
// 操作日志
SystemOpeBusiness sysbusiness = BusinessManager.getBusiness(SystemOpeBusiness.class);
sysbusiness.insert_logBusiness("deleteVote", "" + ListKey,
"删除测试数据", deletekey, "多个流水号","votedemo1");
//
jsonObject.putAll(Status.getStatusSuccessMessage("删除成功"));
} catch (Exception e) {
jsonObject.putAll(Status.getStatusErrorMessage("删除失败"));
e.printStackTrace();
}
return "json";
}
}
package com.jw.app.vote.action;
import java.sql.SQLException;
import java.text.ParseException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.json.JSONObject;
import com.jw.app.business.VoteBusiness;
import com.gaowj.business.action.BasicAction;
import com.gaowj.business.comp.BusinessManager;
import com.gaowj.business.exception.BusinessException;
import com.gaowj.business.util.Page;
import com.gaowj.business.util.PropUtil;
import com.gaowj.business.util.QueryParamUtil;
import com.gaowj.business.util.RequestUtils;
import com.gaowj.business.util.SessionUtil;
import com.gaowj.business.util.TestMd5;
import com.gaowj.standard.utils.CacheKit;
public class dataAction extends BasicAction{
/**
*
*/
private static final long serialVersionUID = 1829141492939513911L;
private JSONObject jsonObject = new JSONObject();
private int rows = 20;// 每页显示的记录数
private int page = 1;// 当前第几页
public JSONObject getJsonObject() {
return jsonObject;
}
public void setJsonObject(JSONObject jsonObject) {
this.jsonObject = jsonObject;
}
public int getRows() {
return rows;
}
public void setRows(int rows) {
this.rows = rows;
}
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
/**
* 分页获取记录
* @param entity
* @throws BusinessException
*/
public String list() throws BusinessException {
VoteBusiness business = BusinessManager.getBusiness(VoteBusiness.class);
Map<String, Object> query = RequestUtils.getUpdateFieldMap(request,RequestUtils.UPDATEDATAFIELDPREFIX);
try {
query = QueryParamUtil.StringToDate(query);
Page<Map<String, Object>> pageRows = business.list_vote(pageNo,pageSize, query);
setPageCount((pageRows.getCount() - 1) / pageSize + 1);
Map<String, Object> data = new HashMap<String, Object>();
data.put("rowSet", QueryParamUtil.DateTimeToString(pageRows.getItems()));
data.put("pageNo", pageNo);
data.put("pageSize", pageSize);
data.put("pageCount", pageCount);
data.put("rows", data.get("rowSet"));
data.put("total", pageRows.getCount());
jsonObject = new JSONObject();
jsonObject.putAll(data);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "json";
}
/**
* 获取所有记录
* @param entity
* @throws BusinessException
*/
public String listAll() throws BusinessException {
VoteBusiness business = BusinessManager.getBusiness(VoteBusiness.class);
try {
//表示获取前台表单提交的所有"FIELD_"开始的键值数据,例如FIELD_NAME,FIELD_CODE....
Map<String, Object> query = RequestUtils.getUpdateFieldMap(request,RequestUtils.UPDATEDATAFIELDPREFIX);
//把前端传进来的字符型时间数据例 如DATE_2018-09-09转换成DATE型的时间数据。
//主要和前端is_entity.FIELD_CREATE_TIME = strToDateObj(is_entity.FIELD_CREATE_TIME)配对使用。
//前端提交前strToDateObj方法会把时间处理成DATE_2018-09-09再提交
query = QueryParamUtil.StringToDate(query);
//session工具
String code = SessionUtil.getCode();//当前用户ID
String emid = SessionUtil.getEmid();//当前用户帐号
String emname = SessionUtil.getEmname();//当前用户名称
String emdepart = SessionUtil.getEmdepart();//当前用户部门id
String emdepartname = SessionUtil.getEmdepartname();//当前用户部门名称
String emsex = SessionUtil.getEmsex();//当前用户性别
String loginip = SessionUtil.getLoginip();//当前用户登录IP
String clientip = SessionUtil.getClientIp();//获取客户端IP
String quanxian = SessionUtil.getQuanxian();//获取当前用户使用模块清单
String sessionid = SessionUtil.getSessionid();//获取当前用户sessionID
String currenttimme = SessionUtil.getCurrenttime();//当前用户本次登录时间
String beforetime = SessionUtil.getBeforetime();//当前用户上次登录时间
//配置文件工具
//表示获取src目录下quartz_service.properties文件中主键是login_main_url的值
String tt = PropUtil.getValue("login_main_url", "quartz_service", "");
//缓存使用
//查看src下ehcache.xml缓存配置文件。(ehcache1-ehcache10表示有10个缓存对象,分别只能缓存1-10分钟,最后有个ehcache11可以持久缓存)
List<Map<String, Object>> listData = null;
TestMd5 md5 = new TestMd5();
String queryMD5 = "";
try {
queryMD5 = md5.MD5(query.toString());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
listData = CacheKit.get("ehcache11", "com_jw_app_vote_dataAction_listAll_"+queryMD5);
if(listData == null){
listData = business.list_vote(query);
CacheKit.put("ehcache11", "com_jw_app_vote_dataAction_listAll_"+queryMD5,listData);
}
int listDataCount = listData.size();
Map<String, Object> data = new HashMap<String, Object>();
data.put("rowSet", QueryParamUtil.DateToString(listData));
data.put("pageNo", 1);
data.put("pageSize", listDataCount);
data.put("pageCount", listDataCount);
data.put("rows", data.get("rowSet"));
data.put("total", listDataCount);
jsonObject = new JSONObject();
jsonObject.putAll(data);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "json";
}
}
package com.jw.app.vote.action;
import java.util.Map;
import com.gaowj.business.action.BasicAction;
import com.gaowj.business.exception.BusinessException;
import com.gaowj.business.util.RequestUtils;
public class viewAction extends BasicAction {
/**
*
*/
private static final long serialVersionUID = -6259964352154128000L;
public String voteTab() throws BusinessException{
return "voteTab";
}
public String voteTabDetail() throws BusinessException{
Map<String,Object> query = RequestUtils.getUpdateFieldMapUtf8(request, RequestUtils.UPDATEDATAFIELDPREFIX);
request.setAttribute("is_row", query);
return "voteTabDetail";
}
public String voteAdvsearch() throws BusinessException{
Map<String,Object> query = RequestUtils.getUpdateFieldMapUtf8(request, RequestUtils.UPDATEDATAFIELDPREFIX);
request.setAttribute("is_row", query);
return "voteAdvsearch";
}
}
package com.gaowj.system.login;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.jasig.cas.client.authentication.AttributePrincipal;
......@@ -36,29 +38,36 @@ public class CasAction extends BasicAction {
Map<String,Object> query = new HashMap<String,Object>();
query.put("EMID", username);
Map<String,Object> userInfoI = systemOpeBusiness.listLoginUserInfo(query).get(0);
Map<String,Object> sessionUser = new HashMap<String,Object>();
String u_all_m = systemOpeBusiness.getUserAllModule(userInfoI.get("CODE").toString());
sessionUser.put("CODE",userInfoI.get("CODE"));
sessionUser.put("EMID",userInfoI.get("EMID"));
sessionUser.put("EMSEX",userInfoI.get("EMSEX"));
sessionUser.put("EMDEPARTNAME",userInfoI.get("EMDEPARTNAME"));
sessionUser.put("EMDEPART",userInfoI.get("EMDEPART"));
sessionUser.put("EMNAME",userInfoI.get("EMNAME"));
sessionUser.put("BEFORETIME",userInfoI.get("BEFORETIME"));
sessionUser.put("SESSIONID", request.getSession().getId());
sessionUser.put("CURRENTTIME", jt.now_datetime());
sessionUser.put("LOGINIP", request.getRemoteAddr());
sessionUser.put("SERVERIP", request.getLocalAddr());
sessionUser.put("QUANXIAN",u_all_m);
request.getSession().setAttribute("userInfo", sessionUser);
//增加登陆日志
Map<String,Object> log = new HashMap<String,Object>();
log.put("CODE", sessionUser.get("CODE"));log.put("EMNAME", sessionUser.get("EMNAME"));log.put("EMIP", sessionUser.get("LOGINIP"));
log.put("OPENAME", "登陆");log.put("OPETIME", jt.String3date((String)sessionUser.get("CURRENTTIME")));log.put("TYPE", userInfoI.get("TYPE"));
log.put("OPETYPE", "B/S登陆");
systemOpeBusiness.insert_log(log);
Map<String,Object> userInfoI = null;
List<Map<String,Object>> listUser = systemOpeBusiness.listLoginUserInfo(query);
if(listUser.size()>0){
userInfoI = systemOpeBusiness.listLoginUserInfo(query).get(0);
Map<String,Object> sessionUser = new HashMap<String,Object>();
String u_all_m = systemOpeBusiness.getUserAllModule(userInfoI.get("CODE").toString());
sessionUser.put("CODE",userInfoI.get("CODE"));
sessionUser.put("EMID",userInfoI.get("EMID"));
sessionUser.put("EMSEX",userInfoI.get("EMSEX"));
sessionUser.put("EMDEPARTNAME",userInfoI.get("EMDEPARTNAME"));
sessionUser.put("EMDEPART",userInfoI.get("EMDEPART"));
sessionUser.put("EMNAME",userInfoI.get("EMNAME"));
sessionUser.put("BEFORETIME",userInfoI.get("BEFORETIME"));
sessionUser.put("BEFORETIME", jt.date3string((Date)userInfoI.get("BEFORETIME")));
sessionUser.put("SESSIONID", request.getSession().getId());
sessionUser.put("CURRENTTIME", jt.now_datetime());
sessionUser.put("LOGINIP", request.getRemoteAddr());
sessionUser.put("SERVERIP", request.getLocalAddr());
sessionUser.put("QUANXIAN",u_all_m);
sessionUser.put("SESSIONUSER", request.getSession());
request.getSession().setAttribute("userInfo", sessionUser);
//增加登陆日志
Map<String,Object> log = new HashMap<String,Object>();
log.put("CODE", sessionUser.get("CODE"));log.put("EMNAME", sessionUser.get("EMNAME"));log.put("EMIP", sessionUser.get("LOGINIP"));
log.put("OPENAME", "登陆");log.put("OPETIME", jt.String3date((String)sessionUser.get("CURRENTTIME")));log.put("TYPE", userInfoI.get("TYPE"));
log.put("OPETYPE", "B/S登陆");
systemOpeBusiness.insert_log(log);
}
}
String strRedirecturl = request.getParameter("redirectUrl");
String toUrl = "";
......
......@@ -4,8 +4,13 @@ package com.gaowj.system.login;
//import java.util.Map;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import com.gaowj.business.SystemOpeBusiness;
import com.gaowj.business.action.BasicAction;
import com.gaowj.business.comp.BusinessManager;
import com.gaowj.business.exception.BusinessException;
//import com.gaowj.business.listener.myHttpSessionAttributeListener;
import com.gaowj.business.util.SessionUtil;
......@@ -19,10 +24,14 @@ public class LogoutAction extends BasicAction {
private static final long serialVersionUID = -6074460857486096013L;
public String execute() throws BusinessException {
// request.getSession().removeAttribute("userInfo");
// List<Map<String,Object>> user = myHttpSessionAttributeListener.getSessionUser(request);
// System.out.println("在线用户");
// System.out.println(user);
//增加登陆日志
SystemOpeBusiness systemOpeBusiness = BusinessManager.getBusiness(SystemOpeBusiness.class);
Map<String,Object> log = new HashMap<String,Object>();
log.put("CODE", SessionUtil.getEmid());log.put("EMNAME",SessionUtil.getEmname());log.put("EMIP",SessionUtil.getClientIp());
log.put("OPENAME", "退出");log.put("OPETIME", new Date());log.put("TYPE",SessionUtil.getSessionUser().get("TYPE"));
log.put("OPETYPE", "B/S退出");
systemOpeBusiness.insert_log(log);
SessionUtil.removeSession(request);
request.getSession().invalidate();
try {
......
......@@ -6,6 +6,7 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
......@@ -345,20 +346,30 @@ public class actAction extends BasicAction {
String uuid = request.getParameter("uuid");
String uploadnew=request.getParameter("uploadnew");
String uploadpath=request.getParameter("uploadpath");
String downloadFilenameEncode1 = PropUtil.getValue("downloadFilenameEncode1", "quartz_service", "gbk");
String downloadFilenameEncode2 = PropUtil.getValue("downloadFilenameEncode2", "quartz_service", "iso8859-1");
super.setEncoding1(downloadFilenameEncode1);
super.setEncoding2(downloadFilenameEncode2);
// String downloadFilenameEncode1 = PropUtil.getValue("downloadFilenameEncode1", "quartz_service", "gbk");
// String downloadFilenameEncode2 = PropUtil.getValue("downloadFilenameEncode2", "quartz_service", "iso8859-1");
// super.setEncoding1(downloadFilenameEncode1);
// super.setEncoding2(downloadFilenameEncode2);
response.setCharacterEncoding("utf-8");
if(new File(uploadpath+"/"+uploadnew).exists()==false){
db2file(uuid,uploadpath,uploadnew,false);
ret_download = super.download();
}else{
ret_download = super.download();
}
String filename1 = RequestUtils.getString(request, "uploadold");
try {
filename1 = new String(filename1.getBytes("ISO-8859-1"),"UTF-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 操作日志
SystemOpeBusiness sysbusiness = BusinessManager.getBusiness(SystemOpeBusiness.class);
sysbusiness.insert_logBusiness("uploadFile", "用户["+SessionUtil.getEmname()+"]下载文件:"+ uploadpath+"/"+uploadnew,
"下载文件",uploadpath+"/"+uploadnew, request.getParameter("uploadold"),"uploadfile");
"下载文件",uploadpath+"/"+uploadnew,filename1,"uploadfile");
//
return ret_download;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment