testkq.jsp
9.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
<%@ page language="java" contentType="text/html; charset=UTF-8" %> <%@ include file="/systeminfo/init_wev8.jsp" %>
<jsp:useBean id="ResourceComInfo" class="weaver.hrm.resource.ResourceComInfo" scope="page"/>
<%@ taglib uri="/browserTag" prefix="brow"%>
<%@ taglib uri="/WEB-INF/weaver.tld" prefix="wea"%>
<%@ page import="com.engine.kq.biz.*" %>
<%@ page import="weaver.common.DateUtil" %>
<%@ page import="com.alibaba.fastjson.JSON" %>
<%@ page import="com.engine.kq.entity.WorkTimeEntity" %>
<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.workflow.field.BrowserComInfo" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="com.alibaba.fastjson.serializer.SerializerFeature" %>
<%@ page import="weaver.file.Prop" %>
<%@ page import="java.net.InetAddress" %>
<%
if(user.getUID()!=1){
return;
}
InetAddress ia = InetAddress.getLocalHost();
String hostaddr = ia.getHostAddress();
out.print(hostaddr);
Map<String,Object> msg = new HashMap<>();
String sql = "";
RecordSet rs = new RecordSet();
String today = DateUtil.getCurrentDate();
String cmd = Util.null2String(request.getParameter("cmd"));
String resourceid = Util.null2String(request.getParameter("resourceid"));
String kqdate = Util.null2String(request.getParameter("kqdate"),today);
String kqdateto = Util.null2String(request.getParameter("kqdateto"),today);
boolean writeKqLog = Util.null2String(Prop.getInstance().getPropValue("Others", "writeKqLog")).equals("1");
if(cmd.equals("reflashReport")){
KQFormatData kqFormatData = new KQFormatData();
if(resourceid.length()>0 && kqdate.length()>0 && kqdateto.length()>0) {
Calendar cal = DateUtil.getCalendar();
if (DateUtil.timeInterval(kqdateto, kqdate) > 0) {
out.println("格式化开始时间小于结束时间fromdate==" + kqdate + "todate==" + kqdateto);
return;
}
boolean isEnd = false;
for (String date = kqdate; !isEnd; ) {
if (date.equals(kqdateto)) isEnd = true;
kqFormatData.formatKqDate(resourceid, date);
cal.setTime(DateUtil.parseToDate(date));
date = DateUtil.getDate(cal.getTime(), 1);
}
msg.put("msg","刷新报表数据成功!");
}
}else if(cmd.equals("formatReportLogInfo")){
KQFormatData kqFormatData = new KQFormatData();
kqFormatData.setWriteLog(true);
kqFormatData.formatKqDate(resourceid, kqdate);
msg.put("logInfo",kqFormatData.getLogInfo());
}else if(cmd.equals("reflashComInfo")){
new KQReportFieldComInfo().removeCache();
new KQGroupComInfo().removeCache();
new KQGroupMemberComInfo().removeCache();
new KQShiftScheduleComInfo().removeCache();
new KQFixedSchedulceComInfo().removeCache();
new KQOneStopUp().refreshCominfo();
msg.put("msg","刷新缓存数据成功!");
}else if(cmd.equals("getSerialInfo")){
KQWorkTime kqWorkTime = new KQWorkTime();
WorkTimeEntity workTime = kqWorkTime.getWorkTime(resourceid,kqdate);
msg.put("workTime",workTime);
}else if(cmd.equals("getKQFormatPool")){
sql = "select count(*) from kq_format_pool where status = 0 ";
rs.executeQuery(sql);
if(rs.next()){
msg.put("kq_format_pool",rs.getInt(1));
}
msg.put("kqformatIds",KQFormatJob.kqformatIds.size());
}else if(cmd.equals("writeKqLog")){
Prop.setPropValue("Others", "writeKqLog",Util.null2String(request.getParameter("writeKqLog")));
writeKqLog=Util.null2String(request.getParameter("writeKqLog")).equals("1");
}
%>
<html>
<head>
<LINK href="/css/Weaver_wev8.css" type=text/css rel=STYLESHEET>
<LINK href="/js/hrm/jquery.jsonview.css" type=text/css rel=STYLESHEET>
<script src="/js/hrm/jquery.jsonview.js"></script>
<script>
function btnSubmit() {
if(frm.resourceid.value==""){
alert("请选择人员!");
return;
}
if (confirm("确认刷新报表数据吗")) {
frm.cmd.value="reflashReport";
frm.submit();
}
}
function btnFormatReportLogInfo() {
if(frm.resourceid.value==""){
alert("请选择人员!");
return;
}
if(frm.resourceid.value.indexOf(",")!=-1){
alert("人员必须为单选!");
return;
}
if(frm.kqdate.value==""){
alert("请选择日期!");
return;
}
if(frm.kqdateto.value!=""){
if(frm.kqdate.value!=frm.kqdateto.value){
alert("暂不支持跨日期调试");
return;
}
}
if (confirm("确认开始调试格式化考勤数据吗")) {
frm.cmd.value="formatReportLogInfo";
frm.submit();
}
}
function btnRemoveComInfo() {
if (confirm("确认刷新缓存数据吗")) {
frm.cmd.value="reflashComInfo";
frm.submit();
}
}
function btnGetSerialInfo() {
if(frm.resourceid.value==""){
alert("请选择人员!");
return;
}
if(frm.resourceid.value.indexOf(",")!=-1){
alert("人员必须为单选!");
return;
}
frm.cmd.value="getSerialInfo";
frm.submit();
}
function btnGetKQFormatPool() {
frm.cmd.value="getKQFormatPool";
frm.submit();
}
function btnWriteKqLog() {
if (confirm("开启日志将增加日志内容,请谨慎开启,确认开启考勤格式化日志吗?")) {
frm.cmd.value="writeKqLog";
if(frm.writeKqLog.value=="1"){
frm.writeKqLog.value="0";
}else{
frm.writeKqLog.value="1";
}
frm.submit();
}
}
jQuery(document).ready(function(){
$("#json").JSONView($("#json").html(), { expand: true, nl2br: true, recursive_collapser: true });
});
</script>
</head>
<BODY>
<form name="frm" action="testkq.jsp" method="post">
<input type="hidden" name="cmd" value="">
<input type="hidden" name="writeKqLog" value="<%=writeKqLog?"1":"0"%>">
<table style="width: 100%">
<tr>
<td style="text-align: center;font-size: 25px;font-weight:bold;height: 80px">新版考勤功能调试</td>
</tr>
</table>
<div style="margin: auto">
<table style="margin: auto">
<tr style="height: 30px">
<td>人员</td>
<td>
<brow:browser viewType="0" name="resourceid" browserValue='<%=resourceid %>'
browserOnClick=""
browserUrl="<%=new BrowserComInfo().getBrowserurl("17") %>"
hasInput="true" isSingle="false" hasBrowser = "true" isMustInput='1' linkUrl="javascript:openhrm($id$)"
completeUrl="/data.jsp?type=17" width="265px"
browserSpanValue='<%=Util.toScreen(ResourceComInfo.getResourcename(resourceid),user.getLanguage())%>'></brow:browser>
</td>
</tr>
<tr style="height: 30px">
<td>日期范围</td>
<td>
<BUTTON type="button" class=Calendar id=btnkqdate onclick="getDate(kqdatespan,kqdate)"></BUTTON>
<SPAN id=kqdatespan ><%=kqdate%></SPAN> -
<BUTTON type="button" class=Calendar id=btnkqdateto onclick="getDate(kqdatetospan,kqdateto)"></BUTTON>
<SPAN id=kqdatetospan ><%=kqdateto%></SPAN>
<input class=inputstyle type="hidden" name=kqdate value="<%=kqdate%>">
<input class=inputstyle type="hidden" name=kqdateto value="<%=kqdateto%>">
</td>
</tr>
<tr>
<td colspan="2" style="text-align: center;height: 50px;">
<input type="button" value="刷新报表数据" onclick="btnSubmit();"/>
<input type="button" value="查看格式化考勤日志" onclick="btnFormatReportLogInfo();"/>
<input type="button" value="获取班次数据" onclick="btnGetSerialInfo();"/>
<input type="button" value="获取线程数据" onclick="btnGetKQFormatPool();"/>
<input type="button" value="刷新缓存数据" onclick="btnRemoveComInfo();"/>
<input type="button" value="<%=writeKqLog?"关闭":"开启"%>格式化日志" onclick="btnWriteKqLog();"/>
</td>
</tr>
</table>
<div id="json" style="padding-left: 100px"><%=JSONObject.toJSONString(msg, SerializerFeature.DisableCircularReferenceDetect) %></div>
</div>
</form>
</BODY>
<script language="javascript" defer="defer" src="/js/datetime_wev8.js"></script>
<script language="javascript" defer="defer" src="/js/JSDateTime/WdatePicker_wev8.js"></script>
</html>