You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
3.1 KiB
Plaintext
61 lines
3.1 KiB
Plaintext
<%@ page import="weaver.conn.RecordSet" %>
|
|
<%@ page import="com.engine.organization.entity.staff.po.StaffPO" %>
|
|
<%@ page import="java.util.List" %>
|
|
<%@ page import="java.util.ArrayList" %>
|
|
<%@ page import="com.engine.organization.entity.job.po.JobPO" %>
|
|
<%@ page import="com.engine.organization.util.db.MapperProxyFactory" %>
|
|
<%@ page import="com.engine.organization.mapper.job.JobMapper" %>
|
|
<%@ page import="com.engine.organization.entity.staff.bo.StaffBO" %>
|
|
<%@ page import="com.engine.organization.mapper.staff.StaffMapper" %>
|
|
<%@ page contentType="text/html; charset=UTF-8" %>
|
|
<%
|
|
|
|
RecordSet rs = new RecordSet();
|
|
List<StaffPO> staffPOList = new ArrayList<>();
|
|
String sql = "select * from jcl_org_staff where permanent_num = 0 and is_used = 0 and delete_type = 0";
|
|
rs.executeQuery(sql);
|
|
while (rs.next()) {
|
|
StaffPO staffPO = new StaffPO();
|
|
staffPO.setId(-1 == rs.getInt("id") ? 0L : (long) rs.getInt("id"));
|
|
staffPO.setPlanId(-1 == rs.getInt("plan_id") ? 0L : (long) rs.getInt("plan_id"));
|
|
staffPO.setCompId(-1 == rs.getInt("comp_id") ? 0 : rs.getInt("comp_id"));
|
|
staffPO.setEcCompany(-1 == rs.getInt("ec_company") ? 0 : rs.getInt("ec_company"));
|
|
staffPO.setDeptId(-1 == rs.getInt("dept_id") ? 0 : rs.getInt("dept_id"));
|
|
staffPO.setEcDepartment(-1 == rs.getInt("ec_department") ? 0 : rs.getInt("ec_department"));
|
|
staffPO.setJobId(-1 == rs.getInt("job_id") ? 0L : (long) rs.getInt("job_id"));
|
|
staffPO.setStaffNum(-1 == rs.getInt("staff_num") ? 0 : rs.getInt("staff_num"));
|
|
staffPO.setControlPolicy(-1 == rs.getInt("control_policy") ? 0 : rs.getInt("control_policy"));
|
|
staffPO.setPermanentNum(-1 == rs.getInt("permanent_num") ? 0 : rs.getInt("permanent_num"));
|
|
staffPO.setFreezeNum(-1 == rs.getInt("freeze_num") ? 0 : rs.getInt("freeze_num"));
|
|
staffPO.setDescription(rs.getString("description"));
|
|
staffPO.setCreator((long) rs.getInt("creator")); staffPO.setCreator((long) rs.getInt("creator"));
|
|
staffPOList.add(staffPO);
|
|
}
|
|
|
|
for (StaffPO staffPO : staffPOList) {
|
|
sql = "select count(1) as num from hrmresource where STATUS < 4";
|
|
if (null != staffPO.getEcCompany() && 0 != staffPO.getEcCompany()) {
|
|
sql += " and subcompanyid1 = " + staffPO.getEcCompany();
|
|
}
|
|
if (null != staffPO.getEcDepartment() && 0 != staffPO.getEcDepartment()) {
|
|
sql += " and departmentid = " + staffPO.getEcDepartment();
|
|
}
|
|
if (null != staffPO.getJobId() && 0 != staffPO.getJobId()) {
|
|
JobPO jobById = MapperProxyFactory.getProxy(JobMapper.class).getJobById(staffPO.getJobId());
|
|
if (null == jobById) {
|
|
continue;
|
|
}
|
|
Integer ecJobTitle = jobById.getEcJobTitle();
|
|
sql += " and jobtitle = " + ecJobTitle;
|
|
}
|
|
rs.executeQuery(sql);
|
|
if (rs.next()) {
|
|
staffPO.setPermanentNum(-1 == rs.getInt("num") ? 0 : rs.getInt("num"));
|
|
StaffBO.buildStaffDesc(staffPO);
|
|
MapperProxyFactory.getProxy(StaffMapper.class).updateStaff(staffPO);
|
|
}
|
|
}
|
|
|
|
|
|
out.println("在编数初始化完成");
|
|
%> |