|
|
@@ -34,10 +34,50 @@ public class BasicDataInitializationJob extends BaseJob2 {
|
|
|
//文件类型数据
|
|
|
executeWenJianStep(posAdmin,didianAdmin);
|
|
|
|
|
|
+ //岗位职责配置列表
|
|
|
+ excutePositionStep(posAdmin);
|
|
|
+
|
|
|
//其他的基础数据
|
|
|
executeBaseTablesStep(posAdmin);
|
|
|
}
|
|
|
|
|
|
+ private void excutePositionStep(String posAdmin) throws Exception {
|
|
|
+ String sql1 = "SELECT * FROM ibps_party_entity WHERE party_type_='position' AND depth_ IN (3,4) " +
|
|
|
+ " AND path_ NOT LIKE '%%%s%%' AND id_ NOT IN (SELECT bian_zhi_bu_men_ FROM t_dyzzb ) ORDER BY depth_ ";
|
|
|
+ sql1 = String.format(sql1, posAdmin);
|
|
|
+ List<Map<String, Object>> l = (List<Map<String, Object>>) commonDao.query(sql1);
|
|
|
+ if (Collections.isEmpty(l)) return;
|
|
|
+ for (Map<String, Object> val1 : l) {
|
|
|
+ Map<String, Object> val = this.transformUpperCase(val1);
|
|
|
+ String deptName = (String) val.get("NAME_");
|
|
|
+ String id = (String) val.get("ID_");
|
|
|
+ String didian = ((String) val.get("PATH_")).split("\\.")[1];
|
|
|
+ List<Map<String, Object>> list = extractPositionBase(posAdmin, deptName);
|
|
|
+ if (!Collections.isEmpty(list)){
|
|
|
+ for (Map<String, Object> val2 : list) {
|
|
|
+ Map<String, Object> val3 = this.transformUpperCase(val2);
|
|
|
+ val3.put("ID_", UniqueIdUtil.getId());
|
|
|
+ val3.put("DI_DIAN_", didian);
|
|
|
+ val3.put("BIAN_ZHI_BU_MEN_", id);
|
|
|
+ val3.put("CREATE_TIME_", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
|
|
|
+ commonDao.execute(this.buildInsertSql(val3, "t_dyzzb"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<Map<String, Object>> extractPositionBase(String posAdmin, String deptName) {
|
|
|
+ String sql2 = "SELECT * FROM t_dyzzb WHERE bian_zhi_bu_men_='%s' AND '%s' LIKE CONCAT('%%',lei_xing_,'%%') AND lei_xing_ <>'' ORDER BY ji_bie_";
|
|
|
+ sql2 = String.format(sql2, posAdmin, deptName);
|
|
|
+ List<Map<String, Object>> list = (List<Map<String, Object>>) commonDao.query(sql2);
|
|
|
+ if (Collections.isEmpty(list)) {
|
|
|
+ sql2 = "SELECT * FROM t_dyzzb WHERE bian_zhi_bu_men_='%s' AND lei_xing_ ='' ORDER BY ji_bie_";
|
|
|
+ sql2 = String.format(sql2, posAdmin);
|
|
|
+ list = (List<Map<String, Object>>) commonDao.query(sql2);
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+
|
|
|
private void executeBaseTablesStep(String posAdmin) throws Exception {
|
|
|
//'Y' means just create one records. 注:所有字段均用大写
|
|
|
// {"t_dyzzb", "", "N", "岗位职责配置列表"},
|