ReportOperation.jsp
7.67 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
<%@ page language="java" contentType="text/html; charset=GBK" %>
<%@ page import="java.security.*,weaver.general.Util" %>
<%@ page import="java.util.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="weaver.general.SessionOper" %>
<%@ include file="/systeminfo/init.jsp" %>
<%@ include file="/hrm/performance/common.jsp" %>
<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rsf" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rsk" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rse" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="rsd" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="check" class="weaver.hrm.performance.targetcheck.CheckInfo" scope="page" />
<jsp:useBean id="delalert" class="weaver.hrm.performance.DelAlertInfo" scope="page" />
<jsp:useBean id="report" class="weaver.hrm.performance.targetreport.ReportInfo" scope="page" />
<jsp:useBean id="DepartmentComInfo" class="weaver.hrm.company.DepartmentComInfo" scope="page"/>
<jsp:useBean id="SubCompanyComInfo" class="weaver.hrm.company.SubCompanyComInfo" scope="page" />
<jsp:useBean id="ResourceComInfo" class="weaver.hrm.resource.ResourceComInfo" scope="page" />
<jsp:useBean id="cOperation" class="weaver.hrm.performance.targetcheck.CheckOperation" scope="page"/>
<%
String operationType=Util.null2String(request.getParameter("operationType"));
//报告生成
if (operationType.equals("check")){
String groupId="";
String[] status=request.getParameterValues("status");
String[] pers=request.getParameterValues("percent_n");
String[] pointSelf=request.getParameterValues("pointSelf");
String[] planIds=request.getParameterValues("planIds");
String planDate=Util.null2String(request.getParameter("planDate"));
String type=Util.null2String(request.getParameter("type"));
String rName=Util.fromScreen(request.getParameter("rName"),user.getLanguage());
String pName=Util.fromScreen(request.getParameter("pName"),user.getLanguage());
String objId=""+SessionOper.getAttribute(session,"hrm.objId");
String type_d=""+SessionOper.getAttribute(session,"hrm.type_d");//报告所有者类型
String logs=Util.null2String(request.getParameter("reportLog"));
String docids=Util.null2String(request.getParameter("docid"));
String id="";
String postId=ResourceComInfo.getJobTitle(objId);//得到岗位id
if (type.equals("3")||check.getCheckType(type_d,objId,type,postId,user,"0","0")||check.getCheckType(type_d,objId,type,postId,user,"0","1")||check.getCheckType(type_d,objId,type,postId,user,"1","0")||check.getCheckType(type_d,objId,type,postId,user,"2","0"))
{
rse.execute("select * from HrmPerformanceReportLog where cycle='"+type+"' and reportDate='"+planDate+"' and reportType='"+type_d+"' and objId="+objId);
if (rse.next())
{
groupId=rse.getString("id");
rs.execute("update HrmPerformanceReportLog set reportLog='"+logs+"' where id="+groupId);
}
else
{
groupId=report.getMaxID("reportlogid");
rs.execute("insert into HrmPerformanceReportLog (id,reportName,reportLog,reportType,reportDate,cycle,objId) values("+groupId+",'"+pName+"','"+logs+"','"+type_d+"','"+planDate+"','"+type+"',"+objId+")");
//删除提醒信息
if (type_d.equals("3"))
delalert.delAlert(Util.getIntValue(objId),type,planDate,2,"3");
}
if (planIds!=null)
{
for (int i=0;i<planIds.length;i++)
{
String planId=planIds[i];
id=report.getMaxID("reportid");
rs.execute("delete from HrmPerformanceReport where planId="+planId);
rs.execute("insert into HrmPerformanceReport(id,reportGroupId,planId,objId,cycle,allShare,reportDate,reportType,status,percent_n,pointSelf,reportTypep) values("+id+","+groupId+","+planId+","+objId+",'"+type+"','1','"+planDate+"','"+type_d+"','"+status[i]+"','"+Util.null2o(pers[i])+"','"+pointSelf[i]+"','0')" );
}
}
if (!docids.equals(""))
{
rse.execute("select * from HrmPerformanceReport where cycle='"+type+"' and reportDate='"+planDate+"' and reportType='"+type_d+"' and objId="+objId+" and reportTypep='1' ");
//out.print("select * from HrmPerformanceReport where cycle='"+type+"' and reportDate='"+planDate+"' and reportType='"+type_d+"' and objId="+objId+" and reportTypep='1' ");
if (rse.next())
{
String gId=rse.getString("id");
rs.execute("update HrmPerformanceReport set docId='"+docids+"' where id="+gId);
}
else
{
id=report.getMaxID("reportid");
rs.execute("insert into HrmPerformanceReport (id,reportGroupId,objId,cycle,allShare,reportDate,reportType,reportTypep,docId) values("+id+","+groupId+","+objId+",'"+type+"','1','"+planDate+"','"+type_d+"','1','"+docids+"')");
//out.print("insert into HrmPerformanceReport (id,reportGroupId,objId,cycle,allShare,reportDate,reportType,reportTypep) values("+id+","+groupId+","+objId+",'"+type+"','1','"+planDate+"','"+type_d+"','1')");
}
}
//自动生成考核流程
//根据考核方案生成多个考核流程
//int flowId=0;
//String requestName="";
int requestId=0;
if (!type.equals("3")) //周报告不用考核
{
try{
check.getCheck(type_d,objId,type,postId,user,rName,"0","0",planDate);
check.getCheck(type_d,objId,type,postId,user,rName,"0","1",planDate);
check.getCheck(type_d,objId,type,postId,user,rName,"1","0",planDate);
if (type_d.equals("3"))
check.getCheck(type_d,objId,type,postId,user,rName,"2","0",planDate);
}catch(Exception e){
rs.execute("delete from HrmPerformanceReportLog where cycle='"+type+"' and reportDate='"+planDate+"' and reportType='"+type_d+"' and objId="+objId);
rs.execute("delete from HrmPerformanceReport where cycle='"+type+"' and reportDate='"+planDate+"' and reportType='"+type_d+"' and objId="+objId);
out.println("<div style='color:red;font-size:12px'>"+SystemEnv.getHtmlLabelName(16333,user.getLanguage())+"!</div>");
return;
}
}
out.print("<script>history.back(-1);</script>");
}
else
{
out.print("<script>alert('"+SystemEnv.getHtmlLabelName(18268,user.getLanguage())+"');history.back(-1);</script>");
}
}
//下游打分
if (operationType.equals("checkDown")){
String[] planIds=request.getParameterValues("planIdDown");
String[] points=request.getParameterValues("pointDown");
for (int i=0;i<planIds.length;i++)
{
rs.execute("select * from HrmPerformanceBeforePoint where planId="+planIds[i]);
if (!rs.next())
{
rse.execute("insert into HrmPerformanceBeforePoint(planid,point1) values("+planIds[i]+",'"+points[i]+"')");
}
else
{float point=Util.getFloatValue(rs.getString("point1"),0);
point=point/2+Util.getFloatValue(points[i])/2;
rse.execute("update HrmPerformanceBeforePoint set point1='"+point+"' where planId="+planIds[i]);
}
rse.executeSql("select t1.objid,t1.cycle,t1.plantype,t1.plandate,t2.type_c,t2.item from workplan t1, gradegroup t2 where t1.id=" + planIds[i] + " and t1.objid=t2.objid and t1.cycle=t2.cycle and t1.plantype =t2.checktype and t1.plandate=t2.checkdate and t1.type_n='6'");
if(rse.next()) {
//计算当前考核类型的得分
String cycle=rse.getString("cycle");
String checkType=rse.getString("plantype");
String type_c=rse.getString("type_c");
int objId=rse.getInt("objId");
String checkDate=rse.getString("plandate");
String item=rse.getString("item");
cOperation.getPoint(cycle,checkType,checkDate,""+objId,type_c,item);
}
}
out.print("<script>history.back(-1);</script>");
}
%>