JobTitlesOperation.jsp
7.27 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
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.general.Util,weaver.conn.*" %>
<%@page import="weaver.hrm.common.DbFunctionUtil"%>
<%@ include file="/systeminfo/init_wev8.jsp" %>
<jsp:useBean id="JobTitlesComInfo" class="weaver.hrm.job.JobTitlesComInfo" scope="page" />
<jsp:useBean id="SysMaintenanceLog" class="weaver.systeminfo.SysMaintenanceLog" scope="page" />
<jsp:useBean id="RecordSet" class="weaver.conn.RecordSet" scope="page" />
<jsp:useBean id="HrmServiceManager" class="weaver.interfaces.hrm.HrmServiceManager" scope="page" />
<%!
/**
* 判断同一个部门下是否有 相同简称的岗位
*@param jobtitlemark 岗位简称
*@param id 记录的编号, 新建是应传入 0
*@author Charoes Huang
*@Date June 3,2004
*/
private boolean isDuplicatedJobtitle(String jobtitlename,String jobactivityid,int id){
boolean isDuplicated = false;
RecordSet rs = new RecordSet();
String sqlStr ="Select Count(*) From HrmJobTitles WHERE id<>"+id +" and jobactivityid="+jobactivityid +" and LTRIM(RTRIM(jobtitlename))='"+jobtitlename.trim()+"'";
rs.executeSql(sqlStr);
if(rs.next()){
if(rs.getInt(1) > 0){
isDuplicated = true;
}
}
return isDuplicated;
}
%>
<%
String isBrowser = Util.fromScreen(request.getParameter("isBrowser"),user.getLanguage());
String operation = Util.fromScreen(request.getParameter("operation"),user.getLanguage());
String jobtitlemark = Util.fromScreen(request.getParameter("jobtitlemark"),user.getLanguage());
String jobtitlename = Util.fromScreen(request.getParameter("jobtitlename"),user.getLanguage());
String jobactivityid = Util.fromScreen(request.getParameter("jobactivityid"),user.getLanguage());
String jobresponsibility = Util.fromScreen(request.getParameter("jobresponsibility"),user.getLanguage());
String jobcompetency = Util.fromScreen(request.getParameter("jobcompetency"),user.getLanguage());
String jobtitleremark = Util.fromScreen(request.getParameter("jobtitleremark"),user.getLanguage());
String jobdoc = Util.fromScreen(request.getParameter("jobdoc"),user.getLanguage());
String[] strObj = {jobtitlemark,jobtitlename,jobactivityid,
Util.null2String(request.getParameter("jobresponsibility")),
Util.null2String(request.getParameter("jobcompetency")),
Util.null2String(request.getParameter("jobtitleremark"))} ;
if(operation.equals("add")){
if(!HrmUserVarify.checkUserRight("HrmJobTitlesAdd:Add", user)){
response.sendRedirect("/notice/noright.jsp");
return;
}
char separator = Util.getSeparator() ;
/*
检查是否存在同一个部门下相同简称的岗位
*/
if(isDuplicatedJobtitle(jobtitlename,jobactivityid,0)){
request.getSession().setAttribute("JobTitle.error",strObj);
String url ="HrmJobTitlesAdd.jsp?message=1";
response.sendRedirect(url);
return;
}
String depid = "";
String para = jobtitlemark + separator + jobtitlename + separator +
depid + separator + jobactivityid + separator +
jobresponsibility+ separator + jobcompetency + separator +
jobtitleremark;
RecordSet.executeProc("HrmJobTitles_Insert",para);
int id=0;
if(RecordSet.next()){
id = RecordSet.getInt(1);
RecordSet.execute("update HrmJobTitles set "+DbFunctionUtil.getInsertUpdateSetSql(RecordSet.getDBType(),user.getUID())+" where id="+id) ;
if(!jobdoc.equals(""))
RecordSet.executeSql("update HrmJobTitles set jobdoc="+jobdoc+" where id="+id);
}
SysMaintenanceLog.resetParameter();
SysMaintenanceLog.setRelatedId(id);
SysMaintenanceLog.setRelatedName(jobtitlename);
SysMaintenanceLog.setOperateType("1");
SysMaintenanceLog.setOperateDesc("HrmJobTitles_Insert,"+para);
SysMaintenanceLog.setOperateItem("26");
SysMaintenanceLog.setOperateUserid(user.getUID());
SysMaintenanceLog.setClientAddress(request.getRemoteAddr());
SysMaintenanceLog.setSysLogInfo();
HrmServiceManager.SynInstantJobtitle(""+id,"1");
JobTitlesComInfo.removeJobTitlesCache();
response.sendRedirect("HrmJobTitlesAdd.jsp?isclose=1&isBrowser="+isBrowser+"&id="+id);
}else if(operation.equals("edit")){
if(!HrmUserVarify.checkUserRight("HrmJobTitlesEdit:Edit", user)){
response.sendRedirect("/notice/noright.jsp");
return;
}
char separator = Util.getSeparator() ;
int id = Util.getIntValue(request.getParameter("id"));
/*
检查是否存在同一个部门下相同简称的岗位
*/
if(isDuplicatedJobtitle(jobtitlename,jobactivityid,id)){
String url ="/hrm/jobtitles/HrmJobTitlesEdit.jsp?fromHrmDialogTab=1&id="+id+"&message=1";
response.sendRedirect(url);
return;
}
String depid = "";
String para = ""+id + separator +jobtitlemark + separator + jobtitlename + separator +
depid + separator + jobactivityid + separator +
jobresponsibility+ separator + jobcompetency + separator +
jobtitleremark;
RecordSet.executeProc("HrmJobTitles_Update",para);
if(!jobdoc.equals("")){
RecordSet.executeSql("update HrmJobTitles set jobdoc="+jobdoc+" where id="+id);
}else{
RecordSet.executeSql("update HrmJobTitles set jobdoc=null where id="+id);
}
RecordSet.execute("update HrmJobTitles set "+DbFunctionUtil.getUpdateSetSql(RecordSet.getDBType(),user.getUID())+" where id="+id) ;
SysMaintenanceLog.resetParameter();
SysMaintenanceLog.setRelatedId(id);
SysMaintenanceLog.setRelatedName(jobtitlename);
SysMaintenanceLog.setOperateType("2");
SysMaintenanceLog.setOperateDesc("HrmJobTitles_Update,"+para);
SysMaintenanceLog.setOperateItem("26");
SysMaintenanceLog.setOperateUserid(user.getUID());
SysMaintenanceLog.setClientAddress(request.getRemoteAddr());
SysMaintenanceLog.setSysLogInfo();
HrmServiceManager.SynInstantJobtitle(""+id,"2");
JobTitlesComInfo.removeJobTitlesCache();
response.sendRedirect("/hrm/jobtitles/HrmJobTitlesEdit.jsp?fromHrmDialogTab=1&isBrowser="+isBrowser+"&isclose=1&id="+id);
}else if(operation.equals("delete")){
if(!HrmUserVarify.checkUserRight("HrmJobTitlesEdit:Delete", user)){
response.sendRedirect("/notice/noright.jsp");
return;
}
int id = Util.getIntValue(request.getParameter("id"));
String para = ""+id;
RecordSet.executeSql("select jobtitlename from HrmJobTitles where id = "+id);
if(RecordSet.next()){
jobtitlename = Util.null2String(RecordSet.getString("jobtitlename"));
}
String sql = "select count(id) from HrmResource where jobtitle = "+id;
RecordSet.executeSql(sql);
RecordSet.next();
if(RecordSet.getInt(1)>0){
response.sendRedirect("HrmJobTitlesEdit.jsp?id="+id+"&msgid=20");
}else{
RecordSet.executeProc("HrmJobTitles_Delete",para);
}
SysMaintenanceLog.resetParameter();
SysMaintenanceLog.setRelatedId(id);
SysMaintenanceLog.setRelatedName(jobtitlename);
SysMaintenanceLog.setOperateType("3");
SysMaintenanceLog.setOperateDesc("HrmJobTitles_Delete,"+para);
SysMaintenanceLog.setOperateItem("26");
SysMaintenanceLog.setOperateUserid(user.getUID());
SysMaintenanceLog.setClientAddress(request.getRemoteAddr());
SysMaintenanceLog.setSysLogInfo();
HrmServiceManager.SynInstantJobtitle(""+id,"3");
JobTitlesComInfo.removeJobTitlesCache();
out.write("<script>window.close();opener.parent.location.reload();</script>");
//response.sendRedirect("HrmJobTitles.jsp");
}
%>
<input type="button" name="Submit2" value="<%=SystemEnv.getHtmlLabelName(236,user.getLanguage())%>" onClick="javascript:history.go(-1)">