Prechádzať zdrojové kódy

[task-1475] 基础数据维护

szjbdgzl 2 rokov pred
rodič
commit
293cdb5eb7

+ 42 - 16
ibps-provider-root/modules/provider-platform/src/main/java/com/lc/ibps/platform/plan/job/BasicDataInitializationJob.java

@@ -21,10 +21,24 @@ public class BasicDataInitializationJob extends BaseJob2 {
     @Override
     public void executeJob(JobExecutionContext context) throws Exception {
         //'Y' means just create one records.
+        // {"t_dyzzb", "", "N", "岗位职责配置列表"},
         String[][] tables = {
                 {"t_yjyaylpzb", "t_yjyaylpzzb", "Y", "应急预案演练配置表"},
                 {"t_gzxybmxzxqkjcjlpzb", "t_gzxybmxzxqkjcjlpzzb", "Y", "公正性与保密性检查项配置表"},
-                {"t_ryjdpzb", "t_ryjdpzzb", "N", "人员监督配置表"}};
+                {"t_jyrykhpzb", "t_jyrykhpzzb", "N", "人员考核内容配置"},
+                {"t_ryjdpzb", "t_ryjdpzzb", "N", "人员监督配置表"},
+                {"t_mraqjcjlpzb", "t_mraqjcjlpzzb", "N", "每日安全检查记录配置表"},
+                {"t_myaqjcjlpzb", "t_myaqjcjlpzzb", "Y", "每月安全检查记录配置表"},
+                {"t_fhxdgzjlb", "t_fhxdgzxmpz,t_fhxdgzxmpzyw", "N", "防护消毒工作项目配置"},
+                {"t_sbysqkpzb", "t_sbysqkpzzx", "Y", "设备验收情况配置表"},
+                {"t_xzbgshzb", "t_xzbgsh", "Y", "校准报告审核配置项"},
+                {"t_fwxypspzb", "t_fwxypspzzb", "Y", "服务协议评审配置"},
+                {"t_mjgyskhnrpzb", "t_mjgyskhnrpzzb", "Y", "供应商评价、考核内容配置"},
+                {"t_hcxnyzjlb", "t_hcxnyzjlhcyqpzbzb", "Y", "耗材性能验证记录耗材要求配置表"},
+                {"t_snzkskbgpzb", "t_snzkskbgpzzb,t_snzkskbgpzzbskyy", "Y", "室内质控失控报告配置表"},
+                {"t_sjzphdjhylpzzb", "t_nlyztgz,t_sjzpzzfhsjbdf,t_ly", "Y", "室间质评活动计划一览配置表"},
+                {"t_yplxb", "t_yplxpzzb", "Y", "样品类型及保存期配置表"},
+                {"t_txyxpzb", "t_txyxpzzb", "Y", "体系运行记录配置内容"}};
 
         //get admin position id.
         String sql1 = "SELECT positions_ FROM ibps_party_employee WHERE id_=1";
@@ -32,7 +46,6 @@ public class BasicDataInitializationJob extends BaseJob2 {
         if (p == null) return;
         String posAdmin = (String) p.get("positions_");
 
-
         for (String[] table : tables) {
             String sql2 = "SELECT * FROM ibps_party_entity WHERE party_type_='position' AND depth_ IN (3,4) " +
                     "   AND path_ NOT LIKE '%%%s%%'" +
@@ -70,25 +83,38 @@ public class BasicDataInitializationJob extends BaseJob2 {
                 commonDao.execute(this.buildInsertSql(pVal, table[0]));
 
                 //insert to child table.
-                String sql4 = String.format("SELECT c.* FROM %s p , %s c WHERE c.parent_id_ = p.id_ AND p.bian_zhi_ren_=1 " +
-                        "AND p.bian_zhi_bu_men_='%s' AND c.parent_id_='%s'", table[0], table[1], posAdmin, pId);
-
-                List<Map<String, Object>> cList =
-                        (List<Map<String, Object>>) commonDao.query(sql4);
-
-                if (Collections.isEmpty(cList)) continue;
-
-                for (Map<String, Object> cVal1 : cList) {
-                    Map<String, Object> cVal = this.transformUpperCase(cVal1);
-                    cVal.put("ID_", UniqueIdUtil.getId());
-                    cVal.put("PARENT_ID_", newPID);
-                    commonDao.execute(this.buildInsertSql(cVal, table[1]));
+                String[] sublist = table[1].split(",");
+                if (sublist.length>1){
+                    for (String sub : sublist){
+                        executeSub(table[0],sub,posAdmin,pId,newPID,deptId,didian);
+                    }
+                }else {
+                    executeSub(table[0],table[1],posAdmin,pId,newPID,deptId,didian);
                 }
+
                 logger.error(String.format("Done: %s: table:%s dept:%s",table[3],table[0],deptName));
             }
-
         }
     }
 
+    private void executeSub(String parentTbl,String subTbl,String posAdmin,String pId,String newPID,String deptId,String didian) throws Exception {
+        String sql4 = String.format("SELECT c.* FROM %s p , %s c WHERE c.parent_id_ = p.id_ AND p.bian_zhi_ren_=1 " +
+                "AND p.bian_zhi_bu_men_='%s' AND c.parent_id_='%s'", parentTbl, subTbl, posAdmin, pId);
+        List<Map<String, Object>> cList = (List<Map<String, Object>>) commonDao.query(sql4);
+        if (Collections.isNotEmpty(cList)) {
+            for (Map<String, Object> cVal1 : cList) {
+                Map<String, Object> cVal = this.transformUpperCase(cVal1);
+                cVal.put("ID_", UniqueIdUtil.getId());
+                cVal.put("PARENT_ID_", newPID);
+                if (cVal.containsKey("DI_DIAN_")) {
+                    cVal.put("DI_DIAN_", didian);
+                }
+                if (cVal.containsKey("BIAN_ZHI_BU_MEN_")) {
+                    cVal.put("BIAN_ZHI_BU_MEN_", deptId);
+                }
+                commonDao.execute(this.buildInsertSql(cVal, subTbl));
+            }
+        }
+    }
 
 }