package weaver.interfaces.sskj.crob; import com.engine.integration.util.StringUtils; import org.apache.commons.collections.CollectionUtils; import weaver.conn.RecordSet; import weaver.general.Util; import weaver.interfaces.schedule.BaseCronJob; import java.util.ArrayList; import java.util.List; /** * @Author liang.cheng * @Date 2023/11/28 3:53 PM * @Description: 刷新人员安全级别 * @Version 1.0 */ public class RefreshHrmSecLevelCrob extends BaseCronJob { @Override public void execute() { List releationList = new ArrayList<>(); RecordSet rs = new RecordSet(); rs.executeQuery("select zwlb,aqjb from uf_aqjbdygxb"); while (rs.next()) { releationList.add(ReleationPO.builder() .jobGroups(Util.getIntValue(rs.getString("zwlb"))) .secLevel(Util.getIntValue(rs.getString("aqjb"))) .build()); } releationList.forEach(releationPo -> { List jobTitles = new ArrayList<>(); selectJobTitlesByJobGroup(jobTitles,releationPo.getJobGroups()); if (CollectionUtils.isNotEmpty(jobTitles)) { rs.executeUpdate("update hrmresource a set a.seclevel = ? where " + " a.jobtitle in ("+StringUtils.join(jobTitles, ",")+")",releationPo.getSecLevel()); } }); } private List selectJobTitlesByJobGroup(List jobTitles,Integer jobGroup){ RecordSet rs = new RecordSet(); rs.executeQuery("select a.id from hrmjobtitles a join hrmjobactivities b on a.jobactivityid = b.id\n" + " join hrmjobgroups c on b.jobgroupid = c.id where c.id = ?",jobGroup); while (rs.next()) { jobTitles.add(Util.getIntValue(rs.getString("id"))); } return jobTitles; } }