surveyResultData.jsp
4.93 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
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page import="weaver.general.*,java.util.*,weaver.voting.*"%>
<%@ page import="weaver.hrm.*,weaver.conn.*,org.json.*,java.math.*"%>
<jsp:useBean id="voters" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="VotingManager" class="weaver.voting.VotingManager" scope="page" />
<%
User user_login_d = HrmUserVarify.getUser (request , response) ;
if(user_login_d == null) return ;
//结果集
List<List<Map<String,String>>> rsallitems=new ArrayList<List<Map<String,String>>>();
//结果子集
List<Map<String,String>> rsitems;
//分部id集合
String subcompanyids= Util.null2String(request.getParameter("subcompanyids"));
//subcompanyids="-1,-2";
//统计方式
String statisform= Util.null2String(request.getParameter("statics"));
//默认汇总
if("".equals(statisform)){
statisform="0";
}
//调查id
String vtid = Util.null2String(request.getParameter("votingid"));
//分部id集合
List<String> subcomids=new ArrayList<String>();
//分部名称集合
List<String> subcomnames=new ArrayList<String>();
//统计所有
if("".equals(subcompanyids)){
rsitems=VotingSearchResult.votingAllRs(vtid);
rsallitems.add(rsitems);
subcomids.add("-1");
subcomnames.add("");
//汇总统计
}else if(!"".equals(subcompanyids) && "0".equals(statisform)){
String allsubids=VotingSearchResult.getChildIdsAll(subcompanyids);
rsitems=VotingSearchResult.votingAllRsWithSubCompanyStatis(vtid,allsubids);
rsallitems.add(rsitems);
subcomids.add(subcompanyids);
subcomnames.add("");
//按分部统计
}else if(!"".equals(subcompanyids) && "1".equals(statisform)){
String[] subids=subcompanyids.split(",");
String allsubids;
for(String subid:subids){
allsubids=VotingSearchResult.getChildIdsAll(subid);
rsitems=VotingSearchResult.votingAllRsWithSubCompanyStatis(vtid,allsubids);
rsallitems.add(rsitems);
subcomids.add(subid);
sql="select subcompanyname from HrmSubCompany where id='"+subid+"'";
if(Util.getIntValue(subid,0)<0){
sql="select subcompanyname from HrmSubCompanyVirtual where id='"+subid+"'";
}
voters.execute(sql);
if(voters.next()){
subcomnames.add(voters.getString("subcompanyname"));
}else{
subcomnames.add("");
}
}
}
Map<String,List<Map<String,String>>> optionvoters=new HashMap<String,List<Map<String,String>>>();
List<Map<String,String>> voteitems;
Map<String,String> voteitem;
String opitem;
String resourceid;
String lastname;
String subcomid;
String useranony;
sql="select optionid,a.resourceid,lastname,subcompanyid1,c.useranony from VotingResource a inner join HrmResource b on a.resourceid=b.id left join VotingRemark c on a.votingid=c.votingid and a.resourceid=c.resourceid where a.votingid='"+vtid+"' ";
if(!subcompanyids.equals("")){
String[] firstsubs=Util.TokenizerString2(subcompanyids,",");
if(Util.getIntValue(firstsubs[0],0)<0){
sql="select optionid,a.resourceid,lastname,subcompanyid1,c.useranony from VotingResource a inner join (select t2.lastname,t1.subcompanyid as subcompanyid1 ,t2.id from HrmResourceVirtual t1,HrmResource t2 where t1.resourceid=t2.id and t1.subcompanyid in ("+subcompanyids+")) b on a.resourceid=b.id left join VotingRemark c on a.votingid=c.votingid and a.resourceid=c.resourceid where a.votingid='"+vtid+"' ";
}
}
voters.execute(sql);
while(voters.next()){
opitem=voters.getString("optionid");
resourceid=voters.getString("resourceid");
lastname=voters.getString("lastname");
subcomid=voters.getString("subcompanyid1");
useranony=Util.null2String(voters.getString("useranony"));
voteitem=new HashMap<String,String>();
voteitem.put("rid",resourceid);
voteitem.put("name",lastname);
voteitem.put("subcomid",subcomid);
voteitem.put("useranony",useranony);
if(!optionvoters.containsKey(opitem)){
voteitems=new ArrayList<Map<String,String>>();
optionvoters.put(opitem,voteitems);
}
voteitems=optionvoters.get(opitem);
voteitems.add(voteitem);
}
JSONArray votersobj=new JSONArray(rsallitems);
String votersitems=votersobj.toString();
JSONArray subcomidsobj=new JSONArray(subcomids);
String subcomidsitems=subcomidsobj.toString();
JSONArray subnamesobj=new JSONArray(subcomnames);
String subnamesitems=subnamesobj.toString();
JSONObject optionvotersobj=new JSONObject(optionvoters);
String optionvoteritems=optionvotersobj.toString();
//获取没有投票的人员信息
List novotingperson = new ArrayList();
Set undoUserSet=VotingManager.getUndoUserSet(vtid);
novotingperson.clear();
novotingperson.addAll(undoUserSet);
//获取已投票的人员信息
List votingperson = new ArrayList();
Set doUserSet=VotingManager.getDoUserSet(vtid);
votingperson.addAll(doUserSet);
%>