|
|
@@ -0,0 +1,463 @@
|
|
|
+package com.lc.ibps.platform.plan.job;
|
|
|
+
|
|
|
+import cn.hutool.json.JSONArray;
|
|
|
+import cn.hutool.json.JSONObject;
|
|
|
+import cn.hutool.json.JSONUtil;
|
|
|
+import com.lc.ibps.base.core.util.AppUtil;
|
|
|
+import com.lc.ibps.base.core.util.Collections;
|
|
|
+import com.lc.ibps.base.framework.id.UniqueIdUtil;
|
|
|
+import com.lc.ibps.base.framework.table.ICommonDao;
|
|
|
+import com.lc.ibps.components.quartz.BaseJob2;
|
|
|
+import com.lc.ibps.platform.enumeration.FileEnumeration;
|
|
|
+import org.apache.commons.lang3.RandomStringUtils;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.quartz.JobExecutionContext;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.*;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+public class InitInspectionJob extends BaseJob2 {
|
|
|
+
|
|
|
+ private static final Logger logger = LoggerFactory.getLogger(InitInspectionJob.class);
|
|
|
+ private ICommonDao<?> commonDao = AppUtil.getBean(ICommonDao.class);
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void executeJob(JobExecutionContext context) throws Exception {
|
|
|
+ //1.获取所有的部门
|
|
|
+ List<Map<String, Object>> deptList = selectThreeAndFour();
|
|
|
+ if(Collections.isEmpty(deptList)) return;
|
|
|
+
|
|
|
+ String diDian = deptList.get(0).get("PATH_").toString().split("\\.")[1];
|
|
|
+
|
|
|
+ String neiId = UniqueIdUtil.getId(); //内部文件
|
|
|
+ String neiPrefix = joinWithDot(FileEnumeration.NEI_BU_WEN_JIAN.parentId,neiId);//内部文件的子集需要拼接的id前缀
|
|
|
+ String waiId = UniqueIdUtil.getId();
|
|
|
+ String waiPrefix = joinWithDot(FileEnumeration.WAI_BU_WEN_JIAN.parentId,waiId);//wai部文件的子集需要拼接的id前缀
|
|
|
+
|
|
|
+ List<Map<String, Object>> list = encapsulateData(neiId,FileEnumeration.NEI_BU_WEN_JIAN.parentId,waiId,FileEnumeration.WAI_BU_WEN_JIAN.parentId,diDian,deptList);
|
|
|
+
|
|
|
+ List<Map<String, Object>> assemblyData = assemblyData(deptList, neiId,FileEnumeration.NEI_BU_WEN_JIAN.parentId, waiId, FileEnumeration.WAI_BU_WEN_JIAN.parentId,diDian);
|
|
|
+
|
|
|
+ executeAdd(list,assemblyData);
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<Map<String,Object>> encapsulateData(String neiId,String neiFu,String waiId ,String waiFu,String diDian,List<Map<String, Object>> deptList) {
|
|
|
+ List<Map<String, Object>> list = new ArrayList<>();
|
|
|
+ String zhiLiangShouCe = UniqueIdUtil.getId(); //质量手册id
|
|
|
+ String chengXuWenJian = UniqueIdUtil.getId();//程序文件
|
|
|
+ String anQuanShouCe = UniqueIdUtil.getId();//安全手册
|
|
|
+ String lingChuang = UniqueIdUtil.getId();//临床样品采集手册
|
|
|
+ String xinXiXiTong = UniqueIdUtil.getId();//信息系统文件
|
|
|
+ String keShiZhiDu = UniqueIdUtil.getId();//科室制度文件
|
|
|
+ String jiLuBiaoDan = UniqueIdUtil.getId();//记录表单
|
|
|
+
|
|
|
+ String guoJiaBiaoZhun = UniqueIdUtil.getId();//国家标准
|
|
|
+ String weiShengHangYe = UniqueIdUtil.getId();//卫生行业标准
|
|
|
+ String jiShuBiaoZhun = UniqueIdUtil.getId();//技术标准
|
|
|
+ String anQuanGuanLiWenJian = UniqueIdUtil.getId();//安全管理文件
|
|
|
+ String renKeGuiFanJiZhiNan = UniqueIdUtil.getId();//认可规范及指南
|
|
|
+ String faLufaGUi = UniqueIdUtil.getId();//法律法规
|
|
|
+ String qiTa = UniqueIdUtil.getId();//其他
|
|
|
+ //内部文件
|
|
|
+ list.add(build("ID_",neiId,"CATEGORY_KEY_",FileEnumeration.NEI_BU_WEN_JIAN.categoryKey,"name_",FileEnumeration.NEI_BU_WEN_JIAN.name,"type_key_", RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.NEI_BU_WEN_JIAN.struType,"PARENT_ID_",FileEnumeration.NEI_BU_WEN_JIAN.parentId,"DEPTH_",FileEnumeration.NEI_BU_WEN_JIAN.depth,
|
|
|
+ "PATH_",joinWithDot(neiFu,neiId),"IS_LEAF_",FileEnumeration.NEI_BU_WEN_JIAN.isLeaf,"OWNER_ID_",FileEnumeration.NEI_BU_WEN_JIAN.ownerId,"TENANT_ID_",FileEnumeration.NEI_BU_WEN_JIAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.NEI_BU_WEN_JIAN.authorityName));
|
|
|
+ //质量手册
|
|
|
+ list.add(build("ID_",zhiLiangShouCe,"CATEGORY_KEY_",FileEnumeration.ZHI_LIANG_SHOU_CE.categoryKey,"name_",FileEnumeration.ZHI_LIANG_SHOU_CE.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.ZHI_LIANG_SHOU_CE.struType,"PARENT_ID_",neiId,"DEPTH_",FileEnumeration.ZHI_LIANG_SHOU_CE.depth,"PATH_",joinWithDot(neiFu,neiId,zhiLiangShouCe),
|
|
|
+ "IS_LEAF_",FileEnumeration.ZHI_LIANG_SHOU_CE.isLeaf,"OWNER_ID_",FileEnumeration.ZHI_LIANG_SHOU_CE.ownerId,"TENANT_ID_",FileEnumeration.ZHI_LIANG_SHOU_CE.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.ZHI_LIANG_SHOU_CE.authorityName));
|
|
|
+ //程序文件
|
|
|
+ list.add(build("ID_",chengXuWenJian,"CATEGORY_KEY_",FileEnumeration.CHENG_XU_WEN_JIAN.categoryKey,"name_",FileEnumeration.CHENG_XU_WEN_JIAN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.CHENG_XU_WEN_JIAN.struType,"PARENT_ID_",neiId,"DEPTH_",FileEnumeration.CHENG_XU_WEN_JIAN.depth,"PATH_",joinWithDot(neiFu,neiId,chengXuWenJian),
|
|
|
+ "IS_LEAF_",FileEnumeration.CHENG_XU_WEN_JIAN.isLeaf,"OWNER_ID_",FileEnumeration.CHENG_XU_WEN_JIAN.ownerId,"TENANT_ID_",FileEnumeration.CHENG_XU_WEN_JIAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.CHENG_XU_WEN_JIAN.authorityName));
|
|
|
+ //安全手册
|
|
|
+ list.add(build("ID_",anQuanShouCe,"CATEGORY_KEY_",FileEnumeration.AN_QUAN_SHOU_CE.categoryKey,"name_",FileEnumeration.AN_QUAN_SHOU_CE.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.AN_QUAN_SHOU_CE.struType,"PARENT_ID_",neiId,"DEPTH_",FileEnumeration.AN_QUAN_SHOU_CE.depth,"PATH_",joinWithDot(neiFu,neiId,anQuanShouCe),
|
|
|
+ "IS_LEAF_",FileEnumeration.AN_QUAN_SHOU_CE.isLeaf,"OWNER_ID_",FileEnumeration.AN_QUAN_SHOU_CE.ownerId,"TENANT_ID_",FileEnumeration.AN_QUAN_SHOU_CE.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.AN_QUAN_SHOU_CE.authorityName));
|
|
|
+ //临床样品采集手册
|
|
|
+ list.add(build("ID_",lingChuang,"CATEGORY_KEY_",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.categoryKey,"name_",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.struType,"PARENT_ID_",neiId,"DEPTH_",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.depth,
|
|
|
+ "PATH_",joinWithDot(neiFu,neiId,lingChuang),"IS_LEAF_",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.isLeaf,"OWNER_ID_",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.tenantId,"AUTHORITY_NAME",FileEnumeration.LING_CHUANG_YANG_PING_CAI_JI_SHOU_CE.authorityName));
|
|
|
+ //信息系统文件
|
|
|
+ list.add(build("ID_",xinXiXiTong,"CATEGORY_KEY_",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.categoryKey,"name_",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.struType,"PARENT_ID_",neiId,"DEPTH_",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.depth,"PATH_",joinWithDot(neiFu,neiId,xinXiXiTong),
|
|
|
+ "IS_LEAF_",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.isLeaf,"OWNER_ID_",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.ownerId,"TENANT_ID_",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.XIN_XI_XI_TONG_WEN_JIAN.authorityName));
|
|
|
+ //科室制度文件
|
|
|
+ list.add(build("ID_",keShiZhiDu,"CATEGORY_KEY_",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.categoryKey,"name_",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.struType,"PARENT_ID_",neiId,"DEPTH_",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.depth,"PATH_",joinWithDot(neiFu,neiId,keShiZhiDu),
|
|
|
+ "IS_LEAF_",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.isLeaf,"OWNER_ID_",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.ownerId,"TENANT_ID_",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.KE_SHI_ZHI_DU_WEN_JIAN.authorityName));
|
|
|
+ //记录表单//项目类sop //管理类sop//设备类sop//受限类
|
|
|
+ list.add(build("ID_",jiLuBiaoDan,"CATEGORY_KEY_",FileEnumeration.JI_LU_BIAO_DAN.categoryKey,"name_",FileEnumeration.JI_LU_BIAO_DAN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.JI_LU_BIAO_DAN.struType,"PARENT_ID_",neiId,"DEPTH_",FileEnumeration.JI_LU_BIAO_DAN.depth,"PATH_",joinWithDot(neiFu,neiId,jiLuBiaoDan),
|
|
|
+ "IS_LEAF_",FileEnumeration.JI_LU_BIAO_DAN.isLeaf,"OWNER_ID_",FileEnumeration.JI_LU_BIAO_DAN.ownerId,"TENANT_ID_",FileEnumeration.JI_LU_BIAO_DAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.JI_LU_BIAO_DAN.authorityName));
|
|
|
+
|
|
|
+ //外部文件
|
|
|
+ list.add(build("ID_",waiId,"CATEGORY_KEY_",FileEnumeration.WAI_BU_WEN_JIAN.categoryKey,"name_",FileEnumeration.WAI_BU_WEN_JIAN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.WAI_BU_WEN_JIAN.struType,"PARENT_ID_",FileEnumeration.WAI_BU_WEN_JIAN.parentId,"DEPTH_",FileEnumeration.WAI_BU_WEN_JIAN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId),"IS_LEAF_",FileEnumeration.WAI_BU_WEN_JIAN.isLeaf,"OWNER_ID_",FileEnumeration.WAI_BU_WEN_JIAN.ownerId,"TENANT_ID_",FileEnumeration.WAI_BU_WEN_JIAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.WAI_BU_WEN_JIAN.authorityName));
|
|
|
+ //国家标准
|
|
|
+ list.add(build("ID_",guoJiaBiaoZhun,"CATEGORY_KEY_",FileEnumeration.GUO_JIA_BIAO_ZHUN.categoryKey,"name_",FileEnumeration.GUO_JIA_BIAO_ZHUN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.GUO_JIA_BIAO_ZHUN.struType,"PARENT_ID_",waiId,"DEPTH_",FileEnumeration.GUO_JIA_BIAO_ZHUN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,guoJiaBiaoZhun),"IS_LEAF_",FileEnumeration.GUO_JIA_BIAO_ZHUN.isLeaf,"OWNER_ID_",FileEnumeration.GUO_JIA_BIAO_ZHUN.ownerId,"TENANT_ID_",FileEnumeration.GUO_JIA_BIAO_ZHUN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.GUO_JIA_BIAO_ZHUN.authorityName));
|
|
|
+ //卫生行业标准
|
|
|
+ list.add(build("ID_",weiShengHangYe,"CATEGORY_KEY_",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.categoryKey,"name_",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.struType,"PARENT_ID_",waiId,"DEPTH_",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,weiShengHangYe),"IS_LEAF_",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.isLeaf,"OWNER_ID_",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.ownerId,"TENANT_ID_",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.WEI_SHENG_HANG_YE_BIAO_ZHUN.authorityName));
|
|
|
+ //技术标准
|
|
|
+ list.add(build("ID_",jiShuBiaoZhun,"CATEGORY_KEY_",FileEnumeration.JI_SHU_BIAO_ZHUN.categoryKey,"name_",FileEnumeration.JI_SHU_BIAO_ZHUN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.JI_SHU_BIAO_ZHUN.struType,"PARENT_ID_",waiId,"DEPTH_",FileEnumeration.JI_SHU_BIAO_ZHUN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,jiShuBiaoZhun),"IS_LEAF_",FileEnumeration.JI_SHU_BIAO_ZHUN.isLeaf,"OWNER_ID_",FileEnumeration.GUO_JIA_BIAO_ZHUN.ownerId,"TENANT_ID_",FileEnumeration.JI_SHU_BIAO_ZHUN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.JI_SHU_BIAO_ZHUN.authorityName));
|
|
|
+ //安全管理文件
|
|
|
+ list.add(build("ID_",anQuanGuanLiWenJian,"CATEGORY_KEY_",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.categoryKey,"name_",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.struType,"PARENT_ID_",waiId,"DEPTH_",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,anQuanGuanLiWenJian),"IS_LEAF_",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.isLeaf,"OWNER_ID_",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.ownerId,"TENANT_ID_",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.AN_QUAN_GUAN_LI_WEN_JIAN.authorityName));
|
|
|
+ //认可规范及指南
|
|
|
+ list.add(build("ID_",renKeGuiFanJiZhiNan,"CATEGORY_KEY_",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.categoryKey,"name_",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.struType,"PARENT_ID_",waiId,"DEPTH_",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,renKeGuiFanJiZhiNan),"IS_LEAF_",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.isLeaf,"OWNER_ID_",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.ownerId,"TENANT_ID_",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.REN_KE_GUI_FAN_JI_ZHINAN.authorityName));
|
|
|
+ //法律法规
|
|
|
+ list.add(build("ID_",faLufaGUi,"CATEGORY_KEY_",FileEnumeration.FA_LU_FA_GUI.categoryKey,"name_",FileEnumeration.FA_LU_FA_GUI.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.FA_LU_FA_GUI.struType,"PARENT_ID_",waiId,"DEPTH_",FileEnumeration.FA_LU_FA_GUI.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,faLufaGUi),"IS_LEAF_",FileEnumeration.FA_LU_FA_GUI.isLeaf,"OWNER_ID_",FileEnumeration.FA_LU_FA_GUI.ownerId,"TENANT_ID_",FileEnumeration.FA_LU_FA_GUI.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.FA_LU_FA_GUI.authorityName));
|
|
|
+ //其他 //设备使用说明 //试剂使用说明书 //法律法规 //行业标准 //参考文献 //书籍 //其他 //受限类
|
|
|
+ list.add(build("ID_",qiTa,"CATEGORY_KEY_",FileEnumeration.QITA.categoryKey,"name_",FileEnumeration.QITA.name,"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+ "stru_type_",FileEnumeration.QITA.struType,"PARENT_ID_",waiId,"DEPTH_",FileEnumeration.QITA.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,qiTa),"IS_LEAF_",FileEnumeration.QITA.isLeaf,"OWNER_ID_",FileEnumeration.QITA.ownerId,"TENANT_ID_",FileEnumeration.QITA.tenantId,
|
|
|
+ "AUTHORITY_NAME",FileEnumeration.QITA.authorityName));
|
|
|
+ List<Map<String, Object>> oneAndTwo = disposeOneAndTwo(list,diDian,deptList);
|
|
|
+ return oneAndTwo;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public List<Map<String, Object>> assemblyData(List<Map<String, Object>> deptList,String neiId,String neiFu ,String waiId,String waiFu,String diDian) throws Exception{
|
|
|
+ List<Map<String, Object>> list = new ArrayList<>();
|
|
|
+ if(Collections.isNotEmpty(deptList)){
|
|
|
+ JSONObject neiAuthNameForu = new JSONObject(JSONUtil.parseObj("{\"shenHeZouXiang\":\"jspgz\",\"buMen\":[[]],\"shenCha\":\"需要\",\"diDian\":\"\",\"chaYue\":\"部门查阅\"}"));
|
|
|
+ JSONObject waiAuthNameFour = new JSONObject(JSONUtil.parseObj("{\"shenHeZouXiang\":\"shspgz\",\"fenLei\":\"通用\",\"buMen\":\"\",\"shenCha\":\"需要\",\"diDian\":\"\",\"chaYue\":\"公用查阅\"}"));
|
|
|
+
|
|
|
+ for(Map<String, Object> item : deptList ){
|
|
|
+ String onlyNeiFourId = UniqueIdUtil.getId(); //所有内部4级架构
|
|
|
+ String xiangMuId = UniqueIdUtil.getId();//项目类sop
|
|
|
+ String guanLiId = UniqueIdUtil.getId();//管理类sop
|
|
|
+ String sheBeiId = UniqueIdUtil.getId();//设备类sop
|
|
|
+ String neiXianId = UniqueIdUtil.getId();//受限类
|
|
|
+
|
|
|
+ neiAuthNameForu.set("diDian",diDian);
|
|
|
+ JSONArray buMenForu = stream(item.get("PATH_").toString());
|
|
|
+ neiAuthNameForu.set("buMen",buMenForu);//内部文件替换部门权限
|
|
|
+
|
|
|
+ String onlyWaiFourId = UniqueIdUtil.getId(); //所有外部4级架构
|
|
|
+ String sheBeiShuoMingId = UniqueIdUtil.getId();//设备使用说明
|
|
|
+ String shiJiShuoMingId = UniqueIdUtil.getId();//试剂使用说明书
|
|
|
+ String faLuFaGuiId = UniqueIdUtil.getId();//法律法规
|
|
|
+ String hangYeId = UniqueIdUtil.getId();//行业标准
|
|
|
+ String canKaoId = UniqueIdUtil.getId();//参考文献
|
|
|
+ String shuJiId = UniqueIdUtil.getId();//书籍
|
|
|
+ String qiTaId = UniqueIdUtil.getId();//其他
|
|
|
+ String waiXianId = UniqueIdUtil.getId();//受限类
|
|
|
+
|
|
|
+ waiAuthNameFour.set("diDian",diDian);
|
|
|
+
|
|
|
+ list.add(build("ID_",onlyNeiFourId,"CATEGORY_KEY_","FILE_TYPE","name_",item.get("NAME_").toString(),"type_key_",item.get("PARTY_ALIAS_").toString(),
|
|
|
+ "stru_type_","1","PARENT_ID_",neiId,"DEPTH_","2","PATH_",joinWithDot(neiFu,neiId,onlyNeiFourId,onlyNeiFourId),
|
|
|
+ "IS_LEAF_","Y","OWNER_ID_","0","TENANT_ID_","-999","AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+ //内部文件的所有子集
|
|
|
+ //项目类sop
|
|
|
+ list.add(build("ID_",xiangMuId,"CATEGORY_KEY_",FileEnumeration.N_XIANG_MU_LEI_SOP.categoryKey,"name_",FileEnumeration.N_XIANG_MU_LEI_SOP.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_XIANG_MU_LEI_SOP.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_XIANG_MU_LEI_SOP.depth,
|
|
|
+ "PATH_",joinWithDot(neiFu,neiId,onlyNeiFourId,onlyNeiFourId,xiangMuId),"IS_LEAF_",FileEnumeration.N_XIANG_MU_LEI_SOP.isLeaf,"OWNER_ID_",FileEnumeration.N_XIANG_MU_LEI_SOP.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.N_XIANG_MU_LEI_SOP.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+ //管理类sop
|
|
|
+ list.add(build("ID_",guanLiId,"CATEGORY_KEY_",FileEnumeration.N_GUAN_LI_LEI_SOP.categoryKey,"name_",FileEnumeration.N_GUAN_LI_LEI_SOP.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_GUAN_LI_LEI_SOP.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_GUAN_LI_LEI_SOP.depth,
|
|
|
+ "PATH_",joinWithDot(neiFu,neiId,onlyNeiFourId,onlyNeiFourId,guanLiId),"IS_LEAF_",FileEnumeration.N_GUAN_LI_LEI_SOP.isLeaf,"OWNER_ID_",FileEnumeration.N_GUAN_LI_LEI_SOP.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.N_GUAN_LI_LEI_SOP.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+ // 设备类sop
|
|
|
+ list.add(build("ID_",sheBeiId,"CATEGORY_KEY_",FileEnumeration.N_SHE_BEI_LEI_SOP.categoryKey,"name_",FileEnumeration.N_SHE_BEI_LEI_SOP.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_SHE_BEI_LEI_SOP.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_SHE_BEI_LEI_SOP.depth,
|
|
|
+ "PATH_",joinWithDot(neiFu,neiId,onlyNeiFourId,onlyNeiFourId,sheBeiId),"IS_LEAF_",FileEnumeration.N_SHE_BEI_LEI_SOP.isLeaf,"OWNER_ID_",FileEnumeration.N_SHE_BEI_LEI_SOP.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.N_SHE_BEI_LEI_SOP.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+ // 受限类
|
|
|
+ list.add(build("ID_",neiXianId,"CATEGORY_KEY_",FileEnumeration.N_SHOU_XIAN_LEI.categoryKey,"name_",FileEnumeration.N_SHOU_XIAN_LEI.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_SHOU_XIAN_LEI.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_SHOU_XIAN_LEI.depth,
|
|
|
+ "PATH_",joinWithDot(neiFu,neiId,onlyNeiFourId,onlyNeiFourId,neiXianId),"IS_LEAF_",FileEnumeration.N_SHOU_XIAN_LEI.isLeaf,"OWNER_ID_",FileEnumeration.N_SHOU_XIAN_LEI.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.N_SHOU_XIAN_LEI.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ list.add(build("ID_",onlyWaiFourId,"CATEGORY_KEY_","FILE_TYPE","name_",item.get("NAME_").toString(),"type_key_",item.get("PARTY_ALIAS_").toString(),
|
|
|
+ "stru_type_","1","PARENT_ID_",waiId,"DEPTH_","2","PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId),
|
|
|
+ "IS_LEAF_","Y","OWNER_ID_","0","TENANT_ID_","-999","AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ //设备使用说明
|
|
|
+ list.add(build("ID_",sheBeiShuoMingId,"CATEGORY_KEY_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.categoryKey,"name_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,sheBeiShuoMingId),"IS_LEAF_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.isLeaf,"OWNER_ID_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ // 试剂使用说明书
|
|
|
+ list.add(build("ID_",shiJiShuoMingId,"CATEGORY_KEY_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.categoryKey,"name_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,shiJiShuoMingId),"IS_LEAF_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.isLeaf,"OWNER_ID_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ // 法律法规
|
|
|
+ list.add(build("ID_",faLuFaGuiId,"CATEGORY_KEY_",FileEnumeration.W_FA_LU_FAG_UI.categoryKey,"name_",FileEnumeration.W_FA_LU_FAG_UI.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_FA_LU_FAG_UI.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_FA_LU_FAG_UI.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,faLuFaGuiId),"IS_LEAF_",FileEnumeration.W_FA_LU_FAG_UI.isLeaf,"OWNER_ID_",FileEnumeration.W_FA_LU_FAG_UI.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_FA_LU_FAG_UI.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ // 行业标准
|
|
|
+ list.add(build("ID_",hangYeId,"CATEGORY_KEY_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.categoryKey,"name_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,hangYeId),"IS_LEAF_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.isLeaf,"OWNER_ID_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ // 参考文献
|
|
|
+ list.add(build("ID_",canKaoId,"CATEGORY_KEY_",FileEnumeration.W_CAN_KAO_WEN_XIAN.categoryKey,"name_",FileEnumeration.W_CAN_KAO_WEN_XIAN.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_CAN_KAO_WEN_XIAN.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_CAN_KAO_WEN_XIAN.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,canKaoId),"IS_LEAF_",FileEnumeration.W_CAN_KAO_WEN_XIAN.isLeaf,"OWNER_ID_",FileEnumeration.W_CAN_KAO_WEN_XIAN.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_CAN_KAO_WEN_XIAN.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ // 书籍
|
|
|
+ list.add(build("ID_",shuJiId,"CATEGORY_KEY_",FileEnumeration.W_SHU_JI.categoryKey,"name_",FileEnumeration.W_SHU_JI.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHU_JI.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHU_JI.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,shuJiId),"IS_LEAF_",FileEnumeration.W_SHU_JI.isLeaf,"OWNER_ID_",FileEnumeration.W_SHU_JI.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_SHU_JI.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ // 其他
|
|
|
+ list.add(build("ID_",qiTaId,"CATEGORY_KEY_",FileEnumeration.W_QI_TA.categoryKey,"name_",FileEnumeration.W_QI_TA.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_QI_TA.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_QI_TA.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,qiTaId),"IS_LEAF_",FileEnumeration.W_QI_TA.isLeaf,"OWNER_ID_",FileEnumeration.W_QI_TA.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_QI_TA.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+ // 受限类
|
|
|
+ list.add(build("ID_",waiXianId,"CATEGORY_KEY_",FileEnumeration.W_SHOU_XIAN_LIE.categoryKey,"name_",FileEnumeration.W_SHOU_XIAN_LIE.name,
|
|
|
+ "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHOU_XIAN_LIE.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHOU_XIAN_LIE.depth,
|
|
|
+ "PATH_",joinWithDot(waiFu,waiId,onlyWaiFourId,onlyWaiFourId,waiXianId),"IS_LEAF_",FileEnumeration.W_SHOU_XIAN_LIE.isLeaf,"OWNER_ID_",FileEnumeration.W_SHOU_XIAN_LIE.ownerId,
|
|
|
+ "TENANT_ID_",FileEnumeration.W_SHOU_XIAN_LIE.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+
|
|
|
+ }
|
|
|
+// for (Map<String, Object> item : deptList ) {
|
|
|
+//
|
|
|
+// String onlyNeiId = UniqueIdUtil.getId(); //所有内部3级架构
|
|
|
+// neiAuthName.set("diDian",diDian);//内部文件替换地点
|
|
|
+// JSONArray buMen = stream(item.get("PATH_").toString());
|
|
|
+// neiAuthName.set("buMen",buMen);//内部文件替换部门权限
|
|
|
+//
|
|
|
+//
|
|
|
+// String onlyWaiId = UniqueIdUtil.getId(); //所有外部3级架构
|
|
|
+// waiAuthName.set("diDian",diDian); //外部文件只要替换地点即可,权限是放开的
|
|
|
+//
|
|
|
+// //3级和4级的差异只有parentId 和 权限部门不一致
|
|
|
+// if("3".equals(item.get("DEPTH_").toString())){
|
|
|
+//
|
|
|
+// list.add(build("ID_",onlyNeiId,"CATEGORY_KEY_","FILE_TYPE","name_",item.get("NAME_").toString(),"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+// "stru_type_","1","PARENT_ID_",neiId,"DEPTH_","2","PATH_",joinWithDot(neiId,neiFu,onlyNeiId),
|
|
|
+// "IS_LEAF_","Y","OWNER_ID_","0","TENANT_ID_","-999","AUTHORITY_NAME",neiAuthName.toString()));
|
|
|
+//
|
|
|
+// list.add(build("ID_",onlyWaiId,"CATEGORY_KEY_","FILE_TYPE","name_",item.get("NAME_").toString(),"type_key_",RandomStringUtils.randomAlphabetic(6),
|
|
|
+// "stru_type_","1","PARENT_ID_",waiId,"DEPTH_","2","PATH_",joinWithDot(waiId,waiFu,onlyWaiId),
|
|
|
+// "IS_LEAF_","Y","OWNER_ID_","0","TENANT_ID_","-999","AUTHORITY_NAME",waiAuthName.toString()));
|
|
|
+//
|
|
|
+// //创建4级,外键是来自于3级,所以只能一步到位
|
|
|
+// List<Map<String, Object>> mapList = findDept(deptList,"4",item.get("ID_").toString());
|
|
|
+// for (Map<String, Object> map: mapList) {
|
|
|
+//
|
|
|
+// String onlyNeiFourId = UniqueIdUtil.getId(); //所有内部4级架构
|
|
|
+// String xiangMuId = UniqueIdUtil.getId();//项目类sop
|
|
|
+// String guanLiId = UniqueIdUtil.getId();//管理类sop
|
|
|
+// String sheBeiId = UniqueIdUtil.getId();//设备类sop
|
|
|
+// String neiXianId = UniqueIdUtil.getId();//受限类
|
|
|
+//
|
|
|
+// neiAuthNameForu.set("diDian",diDian);
|
|
|
+// JSONArray buMenForu = stream(map.get("PATH_").toString());
|
|
|
+// neiAuthNameForu.set("buMen",buMenForu);//内部文件替换部门权限
|
|
|
+//
|
|
|
+// String onlyWaiFourId = UniqueIdUtil.getId(); //所有外部4级架构
|
|
|
+// String sheBeiShuoMingId = UniqueIdUtil.getId();//设备使用说明
|
|
|
+// String shiJiShuoMingId = UniqueIdUtil.getId();//试剂使用说明书
|
|
|
+// String faLuFaGuiId = UniqueIdUtil.getId();//法律法规
|
|
|
+// String hangYeId = UniqueIdUtil.getId();//行业标准
|
|
|
+// String canKaoId = UniqueIdUtil.getId();//参考文献
|
|
|
+// String shuJiId = UniqueIdUtil.getId();//书籍
|
|
|
+// String qiTaId = UniqueIdUtil.getId();//其他
|
|
|
+// String waiXianId = UniqueIdUtil.getId();//受限类
|
|
|
+//
|
|
|
+// waiAuthNameFour.set("diDian",diDian);
|
|
|
+//
|
|
|
+// list.add(build("ID_",onlyNeiFourId,"CATEGORY_KEY_","FILE_TYPE","name_",map.get("NAME_").toString(),"type_key_",item.get("PARTY_ALIAS_").toString(),
|
|
|
+// "stru_type_","1","PARENT_ID_",onlyNeiId,"DEPTH_","2","PATH_",joinWithDot(neiFu,neiId,onlyNeiId,onlyNeiFourId),
|
|
|
+// "IS_LEAF_","Y","OWNER_ID_","0","TENANT_ID_","-999","AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+// //内部文件的所有子集
|
|
|
+// //项目类sop
|
|
|
+// list.add(build("ID_",xiangMuId,"CATEGORY_KEY_",FileEnumeration.N_XIANG_MU_LEI_SOP.categoryKey,"name_",FileEnumeration.N_XIANG_MU_LEI_SOP.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_XIANG_MU_LEI_SOP.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_XIANG_MU_LEI_SOP.depth,
|
|
|
+// "PATH_",joinWithDot(neiFu,neiId,onlyNeiId,onlyNeiFourId,xiangMuId),"IS_LEAF_",FileEnumeration.N_XIANG_MU_LEI_SOP.isLeaf,"OWNER_ID_",FileEnumeration.N_XIANG_MU_LEI_SOP.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.N_XIANG_MU_LEI_SOP.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+// //管理类sop
|
|
|
+// list.add(build("ID_",guanLiId,"CATEGORY_KEY_",FileEnumeration.N_GUAN_LI_LEI_SOP.categoryKey,"name_",FileEnumeration.N_GUAN_LI_LEI_SOP.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_GUAN_LI_LEI_SOP.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_GUAN_LI_LEI_SOP.depth,
|
|
|
+// "PATH_",joinWithDot(neiFu,neiId,onlyNeiId,onlyNeiFourId,guanLiId),"IS_LEAF_",FileEnumeration.N_GUAN_LI_LEI_SOP.isLeaf,"OWNER_ID_",FileEnumeration.N_GUAN_LI_LEI_SOP.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.N_GUAN_LI_LEI_SOP.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+// // 设备类sop
|
|
|
+// list.add(build("ID_",sheBeiId,"CATEGORY_KEY_",FileEnumeration.N_SHE_BEI_LEI_SOP.categoryKey,"name_",FileEnumeration.N_SHE_BEI_LEI_SOP.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_SHE_BEI_LEI_SOP.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_SHE_BEI_LEI_SOP.depth,
|
|
|
+// "PATH_",joinWithDot(neiFu,neiId,onlyNeiId,onlyNeiFourId,sheBeiId),"IS_LEAF_",FileEnumeration.N_SHE_BEI_LEI_SOP.isLeaf,"OWNER_ID_",FileEnumeration.N_SHE_BEI_LEI_SOP.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.N_SHE_BEI_LEI_SOP.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+// // 受限类
|
|
|
+// list.add(build("ID_",neiXianId,"CATEGORY_KEY_",FileEnumeration.N_SHOU_XIAN_LEI.categoryKey,"name_",FileEnumeration.N_SHOU_XIAN_LEI.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.N_SHOU_XIAN_LEI.struType,"PARENT_ID_",onlyNeiFourId,"DEPTH_",FileEnumeration.N_SHOU_XIAN_LEI.depth,
|
|
|
+// "PATH_",joinWithDot(neiFu,neiId,onlyNeiId,onlyNeiFourId,neiXianId),"IS_LEAF_",FileEnumeration.N_SHOU_XIAN_LEI.isLeaf,"OWNER_ID_",FileEnumeration.N_SHOU_XIAN_LEI.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.N_SHOU_XIAN_LEI.tenantId,"AUTHORITY_NAME",neiAuthNameForu.toString()));
|
|
|
+//
|
|
|
+//
|
|
|
+//
|
|
|
+// list.add(build("ID_",onlyWaiFourId,"CATEGORY_KEY_","FILE_TYPE","name_",map.get("NAME_").toString(),"type_key_",item.get("PARTY_ALIAS_").toString(),
|
|
|
+// "stru_type_","1","PARENT_ID_",onlyWaiId,"DEPTH_","2","PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId),
|
|
|
+// "IS_LEAF_","Y","OWNER_ID_","0","TENANT_ID_","-999","AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// //设备使用说明
|
|
|
+// list.add(build("ID_",sheBeiShuoMingId,"CATEGORY_KEY_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.categoryKey,"name_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,sheBeiShuoMingId),"IS_LEAF_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.isLeaf,"OWNER_ID_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_SHE_BEI_SHI_YONG_SHUO_MING_SHU.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// // 试剂使用说明书
|
|
|
+// list.add(build("ID_",shiJiShuoMingId,"CATEGORY_KEY_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.categoryKey,"name_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,shiJiShuoMingId),"IS_LEAF_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.isLeaf,"OWNER_ID_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_SHI_JI_SHI_YONG_SHUO_MING_SHU.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// // 法律法规
|
|
|
+// list.add(build("ID_",faLuFaGuiId,"CATEGORY_KEY_",FileEnumeration.W_FA_LU_FAG_UI.categoryKey,"name_",FileEnumeration.W_FA_LU_FAG_UI.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_FA_LU_FAG_UI.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_FA_LU_FAG_UI.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,faLuFaGuiId),"IS_LEAF_",FileEnumeration.W_FA_LU_FAG_UI.isLeaf,"OWNER_ID_",FileEnumeration.W_FA_LU_FAG_UI.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_FA_LU_FAG_UI.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// // 行业标准
|
|
|
+// list.add(build("ID_",hangYeId,"CATEGORY_KEY_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.categoryKey,"name_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,hangYeId),"IS_LEAF_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.isLeaf,"OWNER_ID_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_HANG_YE_BIAO_ZHUN.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// // 参考文献
|
|
|
+// list.add(build("ID_",canKaoId,"CATEGORY_KEY_",FileEnumeration.W_CAN_KAO_WEN_XIAN.categoryKey,"name_",FileEnumeration.W_CAN_KAO_WEN_XIAN.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_CAN_KAO_WEN_XIAN.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_CAN_KAO_WEN_XIAN.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,canKaoId),"IS_LEAF_",FileEnumeration.W_CAN_KAO_WEN_XIAN.isLeaf,"OWNER_ID_",FileEnumeration.W_CAN_KAO_WEN_XIAN.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_CAN_KAO_WEN_XIAN.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// // 书籍
|
|
|
+// list.add(build("ID_",shuJiId,"CATEGORY_KEY_",FileEnumeration.W_SHU_JI.categoryKey,"name_",FileEnumeration.W_SHU_JI.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHU_JI.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHU_JI.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,shuJiId),"IS_LEAF_",FileEnumeration.W_SHU_JI.isLeaf,"OWNER_ID_",FileEnumeration.W_SHU_JI.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_SHU_JI.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// // 其他
|
|
|
+// list.add(build("ID_",qiTaId,"CATEGORY_KEY_",FileEnumeration.W_QI_TA.categoryKey,"name_",FileEnumeration.W_QI_TA.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_QI_TA.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_QI_TA.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,qiTaId),"IS_LEAF_",FileEnumeration.W_QI_TA.isLeaf,"OWNER_ID_",FileEnumeration.W_QI_TA.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_QI_TA.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// // 受限类
|
|
|
+// list.add(build("ID_",waiXianId,"CATEGORY_KEY_",FileEnumeration.W_SHOU_XIAN_LIE.categoryKey,"name_",FileEnumeration.W_SHOU_XIAN_LIE.name,
|
|
|
+// "type_key_",RandomStringUtils.randomAlphabetic(6),"stru_type_",FileEnumeration.W_SHOU_XIAN_LIE.struType,"PARENT_ID_",onlyWaiFourId,"DEPTH_",FileEnumeration.W_SHOU_XIAN_LIE.depth,
|
|
|
+// "PATH_",joinWithDot(waiFu,waiId,onlyWaiId,onlyWaiFourId,waiXianId),"IS_LEAF_",FileEnumeration.W_SHOU_XIAN_LIE.isLeaf,"OWNER_ID_",FileEnumeration.W_SHOU_XIAN_LIE.ownerId,
|
|
|
+// "TENANT_ID_",FileEnumeration.W_SHOU_XIAN_LIE.tenantId,"AUTHORITY_NAME",waiAuthNameFour.toString()));
|
|
|
+// }
|
|
|
+//
|
|
|
+// }
|
|
|
+// }
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<Map<String, Object>> disposeOneAndTwo(List<Map<String, Object>> list,String diDian,List<Map<String, Object>> deptList){
|
|
|
+ if(Collections.isNotEmpty(list) && StringUtils.isNotEmpty(diDian)){
|
|
|
+ for (Map<String, Object> item : list ) {
|
|
|
+ String authorityName = item.get("AUTHORITY_NAME").toString();
|
|
|
+ JSONObject jsonObject = JSONUtil.parseObj(authorityName);
|
|
|
+ jsonObject.set("diDian", diDian);
|
|
|
+ //3级的结构也需要拼接部门才行,否则可能更上级权限的人看不到
|
|
|
+ String deptPath = findDeptName(deptList, "3", item.get("name_").toString());
|
|
|
+ jsonObject.set("buMen",stream(deptPath));
|
|
|
+ item.put("AUTHORITY_NAME",jsonObject.toString());
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<Map<String, Object>> findDept(List<Map<String, Object>> deptList,String depth,String deptId){
|
|
|
+ return deptList.stream()
|
|
|
+ .filter(dept -> depth.equals(dept.get("DEPTH_").toString())) // 使用equals比较字符串
|
|
|
+ .filter(dept -> dept.get("PATH_").toString().contains(deptId))
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
+ public String findDeptName(List<Map<String, Object>> deptList,String depth,String deptName){
|
|
|
+ String str = "";
|
|
|
+ List<Map<String, Object>> list = deptList.stream()
|
|
|
+ .filter(dept -> depth.equals(dept.get("DEPTH_").toString())) // 使用equals比较字符串
|
|
|
+ .filter(dept -> deptName.equals(dept.get("NAME_").toString()))
|
|
|
+ .collect(Collectors.toList());
|
|
|
+ if (list.size()>0){
|
|
|
+ str = list.get(0).get("PATH_").toString();
|
|
|
+ }
|
|
|
+ return str;
|
|
|
+ }
|
|
|
+
|
|
|
+ public Map<String,Object> build(Object... keyValues){
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
+ for (int i = 0; i < keyValues.length; i += 2) {
|
|
|
+ map.put((String) keyValues[i], keyValues[i + 1]);
|
|
|
+ }
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+
|
|
|
+ public List<Map<String,Object>> selectThreeAndFour(){
|
|
|
+ List<Map<String, Object>> list = new ArrayList<>();
|
|
|
+ String sql = " SELECT ID_,PARTY_ALIAS_,NAME_,DEPTH_,PATH_ FROM ibps_party_entity WHERE PATH_ LIKE CONCAT( (SELECT org_ FROM t_ipcc WHERE id_ = '1'), '%') and DEPTH_ = '4' ORDER BY DEPTH_, SN_ ASC ";
|
|
|
+ List<Map<String,Object>> query =(List<Map<String,Object>>) commonDao.query(sql);
|
|
|
+ if(Collections.isNotEmpty(query)){
|
|
|
+ list = query;
|
|
|
+ }
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+
|
|
|
+ public String joinWithDot(String... strings) {
|
|
|
+ return String.join(".", strings) + ".";
|
|
|
+ }
|
|
|
+
|
|
|
+ public JSONArray stream(String deptIds){
|
|
|
+ JSONArray resultArray = new JSONArray();
|
|
|
+ JSONArray innerArray = new JSONArray();
|
|
|
+
|
|
|
+ String[] parts = deptIds.split("\\.");
|
|
|
+ for (String part : parts) {
|
|
|
+ innerArray.add(part);
|
|
|
+ }
|
|
|
+
|
|
|
+ resultArray.add(innerArray);
|
|
|
+ return resultArray;
|
|
|
+ }
|
|
|
+
|
|
|
+ private void executeAdd(List<Map<String, Object>> list,List<Map<String, Object>> assemblyData) throws Exception {
|
|
|
+ List<Map<String, Object>> lists = new ArrayList<>();
|
|
|
+ lists.addAll(list);
|
|
|
+ lists.addAll(assemblyData);
|
|
|
+
|
|
|
+ for (Map<String, Object> val : lists) {
|
|
|
+ // Map<String, Object> val = this.transformUpperCase(val1);
|
|
|
+ val.put("CREATE_BY_", "1");
|
|
|
+ val.put("CREATE_TIME_", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
|
|
|
+ val.put("UPDATE_TIME_", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
|
|
|
+ commonDao.execute(this.buildInsertSql(val, "ibps_cat_type"));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+}
|