| | |
| | | @Component |
| | | public class FeDataDSService extends AbstractBaseService { |
| | | |
| | | @Autowired |
| | | public BaseDao baseDao; |
| | | @Autowired |
| | | private UserService userService; |
| | | @Autowired |
| | | private CodeService codeService; |
| | | @Autowired |
| | | private SystemOrgLevelsService systemOrgLevelsService; |
| | | @Autowired |
| | | public BaseDao baseDao; |
| | | @Autowired |
| | | private UserService userService; |
| | | @Autowired |
| | | private CodeService codeService; |
| | | @Autowired |
| | | private SystemOrgLevelsService systemOrgLevelsService; |
| | | |
| | | @Autowired |
| | | public FunctionSynchrService functionSynchrService; |
| | | @Autowired |
| | | FileManagerService fileManagerService; |
| | | @Autowired |
| | | public FunctionSynchrService functionSynchrService; |
| | | @Autowired |
| | | FileManagerService fileManagerService; |
| | | |
| | | //ä¸´æ¶æä»¶è·¯å¾ |
| | | private static String TSPath = Global.getSystemConfig("new.filePackage",""); |
| | | private static String testString = "^(\\d{0,4}`)|(\\d{0,3}\\^\\d{0,4}`)"; |
| | | private static String startWith = "FE#ENC#"; |
| | | private int[] intPosition = new int[64]; |
| | | //æä»¬äº§åçåè½æé |
| | | private String[] functionCode = {"001-004-000-000","001-004-000-001","001-004-000-002","001-004-000-003","001-004-000-004", |
| | | "001-006-006-000","001-006-002-000","001-006-000-000","001-006-001-000", |
| | | "001-006-001-001","001-006-000-001", "001-006-002-001" ,"001-006-002-002","001-006-004-000", |
| | | "001-006-003-000","001-006-002-003","001-006-003-001","001-006-003-002","001-006-003-003", |
| | | "001-006-004-001","001-006-003-004","001-006-003-005","001-006-003-006","001-006-006-001", |
| | | "001-006-008-000","001-006-008-001","001-006-008-002", "001-006-008-003","001-006-008-004", |
| | | "001-006-008-005","001-006-008-006", "001-006-000-003", "001-006-011-000","001-006-011-001", |
| | | "001-008-001-001","001-008-001-000","001-008-001-003"}; |
| | | //ä¸´æ¶æä»¶è·¯å¾ |
| | | private static String TSPath = Global.getSystemConfig("new.filePackage", ""); |
| | | private static String testString = "^(\\d{0,4}`)|(\\d{0,3}\\^\\d{0,4}`)"; |
| | | private static String startWith = "FE#ENC#"; |
| | | private int[] intPosition = new int[64]; |
| | | //æä»¬äº§åçåè½æé |
| | | private String[] functionCode = {"001-004-000-000", "001-004-000-001", "001-004-000-002", "001-004-000-003", "001-004-000-004", |
| | | "001-006-006-000", "001-006-002-000", "001-006-000-000", "001-006-001-000", |
| | | "001-006-001-001", "001-006-000-001", "001-006-002-001", "001-006-002-002", "001-006-004-000", |
| | | "001-006-003-000", "001-006-002-003", "001-006-003-001", "001-006-003-002", "001-006-003-003", |
| | | "001-006-004-001", "001-006-003-004", "001-006-003-005", "001-006-003-006", "001-006-006-001", |
| | | "001-006-008-000", "001-006-008-001", "001-006-008-002", "001-006-008-003", "001-006-008-004", |
| | | "001-006-008-005", "001-006-008-006", "001-006-000-003", "001-006-011-000", "001-006-011-001", |
| | | "001-008-001-001", "001-008-001-000", "001-008-001-003"}; |
| | | |
| | | private Integer sort = 0; |
| | | //å
¬å¸åé¨é¨map key 为å
¬å¸æé¨é¨å
¨ç§° |
| | | Map<String, FieldSetEntity> institutionMap = Maps.newHashMap(); |
| | | public Connection getJDBC() throws SQLException, ClassNotFoundException { |
| | | //è·åjdbcè¿æ¥ |
| | | private Integer sort = 0; |
| | | //å
¬å¸åé¨é¨map key 为å
¬å¸æé¨é¨å
¨ç§° |
| | | Map<String, FieldSetEntity> institutionMap = Maps.newHashMap(); |
| | | |
| | | public Connection getJDBC() throws SQLException, ClassNotFoundException { |
| | | //è·åjdbcè¿æ¥ |
| | | // String diver = "oracle.jdbc.driver.OracleDriver"; |
| | | // String url = "jdbc:oracle:thin:@10.0.0.21:1521:orcl"; |
| | | // return DataManipulationUtils.getConnection(diver, url, "FE_BASE5", "fe123"); |
| | | //è·åjdbcè¿æ¥ |
| | | String diver = Global.getSystemConfig("data.synchronism.function.jdbc.diver", ""); |
| | | String url = Global.getSystemConfig("data.synchronism.function.jdbc.url", ""); |
| | | String name = Global.getSystemConfig("data.synchronism.function.jdbc.name", ""); |
| | | String password = Global.getSystemConfig("data.synchronism.function.jdbc.password", ""); |
| | | return DataManipulationUtils.getConnection(diver, url, name, password); |
| | | } |
| | | //è·åjdbcè¿æ¥ |
| | | String diver = Global.getSystemConfig("data.synchronism.function.jdbc.diver", ""); |
| | | String url = Global.getSystemConfig("data.synchronism.function.jdbc.url", ""); |
| | | String name = Global.getSystemConfig("data.synchronism.function.jdbc.name", ""); |
| | | String password = Global.getSystemConfig("data.synchronism.function.jdbc.password", ""); |
| | | return DataManipulationUtils.getConnection(diver, url, name, password); |
| | | } |
| | | |
| | | |
| | | public String FEDataMigration(){ |
| | | String clientUUID = ""; |
| | | try { |
| | | //adminåå§å客æ·åè§è² |
| | | clientUUID = this.initializeClients(); |
| | | //忥å
¬å¸é¨é¨ |
| | | this.syncDepartmentCompany(); |
| | | //å°è£
å
¬å¸é¨é¨map |
| | | this.packInstitutionMap(); |
| | | //忥å²ä½ç级åå²ä½ |
| | | this.synchronousPost(); |
| | | //忥è§è² |
| | | this.synchronousRole(); |
| | | //åæ¥ç®¡çå |
| | | this.syncManager(clientUUID); |
| | | //åæ¥äººå |
| | | this.addEmployees(clientUUID); |
| | | } catch (SQLException e) { |
| | | e.printStackTrace(); |
| | | } catch (ClassNotFoundException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return clientUUID; |
| | | } |
| | | public String FEDataMigration() { |
| | | String clientUUID = ""; |
| | | try { |
| | | //adminåå§å客æ·åè§è² |
| | | clientUUID = this.initializeClients(); |
| | | //忥å
¬å¸é¨é¨ |
| | | this.syncDepartmentCompany(); |
| | | //å°è£
å
¬å¸é¨é¨map |
| | | this.packInstitutionMap(); |
| | | //忥å²ä½ç级åå²ä½ |
| | | this.synchronousPost(); |
| | | // //忥è§è² |
| | | // this.synchronousRole(); |
| | | //åæ¥ç®¡çå |
| | | // this.syncManager(clientUUID); |
| | | //åæ¥äººå |
| | | this.addEmployees(clientUUID); |
| | | } catch (SQLException e) { |
| | | logger.error("FEDataMigration", e); |
| | | e.printStackTrace(); |
| | | } catch (ClassNotFoundException e) { |
| | | logger.error("FEDataMigration", e); |
| | | e.printStackTrace(); |
| | | } |
| | | return clientUUID; |
| | | } |
| | | |
| | | /** |
| | | * åå§å客æ·å客æ·è§è²(ä¿®æ¹å®¢æ·ä¸ºFEç客æ·åç§°) |
| | | * @return |
| | | * @throws SQLException |
| | | * @throws ClassNotFoundException |
| | | */ |
| | | public String initializeClients() throws SQLException, ClassNotFoundException { |
| | | FieldSetEntity grouoFs = null; |
| | | Connection conn = this.getJDBC(); |
| | | try { |
| | | grouoFs = BaseDaoServiceImpl.getFieldSet(conn, "fe_base5.SYS_GROUP", "SG10=1", new Object[]{}); |
| | | } catch (Exception e) { |
| | | DataManipulationUtils.close(null, null, conn); |
| | | throw e; |
| | | } |
| | | //æ¥è¯¢åå®¢æ· æ¹ä¸ºè¥¿å® |
| | | FieldSetEntity tableFs = baseDao.getFieldSetEntityByFilter("product_sys_clients", " client_code = ? ", new String[]{"001"},false); |
| | | if (tableFs==null) { |
| | | /** |
| | | * åå§å客æ·å客æ·è§è²(ä¿®æ¹å®¢æ·ä¸ºFEç客æ·åç§°) |
| | | * |
| | | * @return |
| | | * @throws SQLException |
| | | * @throws ClassNotFoundException |
| | | */ |
| | | public String initializeClients() throws SQLException, ClassNotFoundException { |
| | | FieldSetEntity grouoFs = null; |
| | | Connection conn = this.getJDBC(); |
| | | try { |
| | | grouoFs = BaseDaoServiceImpl.getFieldSet(conn, "fe_base5.SYS_GROUP", "SG10=1", new Object[]{}); |
| | | } catch (Exception e) { |
| | | DataManipulationUtils.close(null, null, conn); |
| | | throw e; |
| | | } |
| | | //æ¥è¯¢åå®¢æ· æ¹ä¸ºè¥¿å® |
| | | FieldSetEntity tableFs = baseDao.getFieldSetEntityByFilter("product_sys_clients", " client_code = ? ", new String[]{"001"}, false); |
| | | if (tableFs == null) { |
| | | throw new BaseException("500", "客æ·è¡¨æ²¡æ001çæ°æ®"); |
| | | } |
| | | //å客æ·åç§° |
| | | String clientName = tableFs.getString("client_name"); |
| | | tableFs.setValue("client_name", grouoFs.getString("sg01")); |
| | | String clientUUID = tableFs.getUUID(); |
| | | //æ¥è¯¢å客æ·çè§è² æ¹ä¸ºè¥¿å® |
| | | FieldSetEntity roleFs = baseDao.getFieldSetEntityByFilter("product_sys_role", " role_name = ? ", new String[]{clientName}, false); |
| | | roleFs.setValue("role_name", grouoFs.getString("sg01")); |
| | | //ä¿®æ¹è§è² |
| | | baseDao.update(roleFs); |
| | | //ä¿®æ¹å®¢æ· |
| | | //å客æ·åç§° |
| | | String clientName = tableFs.getString("client_name"); |
| | | tableFs.setValue("client_name", grouoFs.getString("sg01")); |
| | | String clientUUID = tableFs.getUUID(); |
| | | //æ¥è¯¢å客æ·çè§è² æ¹ä¸ºè¥¿å® |
| | | FieldSetEntity roleFs = baseDao.getFieldSetEntityByFilter("product_sys_role", " role_name = ? ", new String[]{clientName}, false); |
| | | roleFs.setValue("role_name", grouoFs.getString("sg01")); |
| | | //ä¿®æ¹è§è² |
| | | baseDao.update(roleFs); |
| | | //ä¿®æ¹å®¢æ· |
| | | // tableFs.setCodeFieldUpdateFlat("client_code", true); |
| | | baseDao.update(tableFs); |
| | | return clientUUID; |
| | | } |
| | | baseDao.update(tableFs); |
| | | return clientUUID; |
| | | } |
| | | |
| | | /** |
| | | * 忥åä½ç®¡çå |
| | | */ |
| | | public void syncManager(String clientUUID) throws SQLException, ClassNotFoundException { |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity managerData; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append(" SELECT A.*,REPLACE(REPLACE(REPLACE(A.SU03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), ") |
| | | .append(" '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/'),'/','>') ASU03 FROM ") |
| | | .append(" FE_BASE5.SYS_USERS A WHERE A.SU31 = 2 "); |
| | | //äººåæ°æ® |
| | | managerData = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | this.syncManager(managerData, clientUUID); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | /** |
| | | * 忥åä½ç®¡çå |
| | | */ |
| | | public void syncManager(String clientUUID) throws SQLException, ClassNotFoundException { |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity managerData; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append(" SELECT A.*,REPLACE(REPLACE(REPLACE(A.SU03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), ") |
| | | .append(" '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/'),'/','>') ASU03 FROM ") |
| | | .append(" FE_BASE5.SYS_USERS A WHERE A.SU31 = 2 "); |
| | | //äººåæ°æ® |
| | | managerData = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | this.syncManager(managerData, clientUUID); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * åæ¥ç®¡çå |
| | | * @param managerData 管çåç¨æ·æ°æ® |
| | | */ |
| | | public void syncManager(DataTableEntity managerData,String clientUUID){ |
| | | if(!BaseUtil.dataTableIsEmpty(managerData)) { |
| | | for (int i = 0; i < managerData.getRows(); i++) { |
| | | FieldSetEntity userFs = new FieldSetEntity(); |
| | | FieldSetEntity fse = managerData.getFieldSetEntity(i); |
| | | userFs.setTableName("product_sys_users"); |
| | | String su01 = fse.getString("su01"); |
| | | userFs.setValue("user_name", su01); |
| | | userFs.setValue("user_account",su01); |
| | | userFs.setValue("gender", 1); |
| | | userFs.setValue("user_pwd", userService.createPassWord(su01, "123")); |
| | | userFs.setValue("is_manager", 1); |
| | | userFs.setValue("created_by", SpringMVCContextHolder.getCurrentUser().getUser_id()); |
| | | userFs.setValue("created_utc_datetime", new Date()); |
| | | userFs.setValue("status", 1); |
| | | /** |
| | | * åæ¥ç®¡çå |
| | | * |
| | | * @param managerData 管çåç¨æ·æ°æ® |
| | | */ |
| | | public void syncManager(DataTableEntity managerData, String clientUUID) { |
| | | if (!BaseUtil.dataTableIsEmpty(managerData)) { |
| | | for (int i = 0; i < managerData.getRows(); i++) { |
| | | FieldSetEntity userFs = new FieldSetEntity(); |
| | | FieldSetEntity fse = managerData.getFieldSetEntity(i); |
| | | userFs.setTableName("product_sys_users"); |
| | | String su01 = fse.getString("su01"); |
| | | userFs.setValue("user_name", su01); |
| | | userFs.setValue("user_account", su01); |
| | | userFs.setValue("gender", 1); |
| | | userFs.setValue("user_pwd", userService.createPassWord(su01, "123")); |
| | | userFs.setValue("is_manager", 1); |
| | | userFs.setValue("created_by", SpringMVCContextHolder.getCurrentUser().getUser_id()); |
| | | userFs.setValue("created_utc_datetime", new Date()); |
| | | userFs.setValue("status", 1); |
| | | |
| | | //æ°å¢ç®¡çå |
| | | String usersUUID = baseDao.add(userFs); |
| | | FieldSetEntity users = baseDao.getFieldSetEntity("product_sys_users", usersUUID, false); |
| | | FieldSetEntity managerFs = new FieldSetEntity(); |
| | | managerFs.setTableName("product_sys_org_manager"); |
| | | managerFs.setValue("user_id", users.getString("user_id")); |
| | | //ä¼ä¸ç®¡çå |
| | | managerFs.setValue("manager_type", "2"); |
| | | managerFs.setValue("role_uuids", "eabb00f3-2118-4165-967b-a7d88f472f67-notchange"); |
| | | managerFs.setValue("is_used", 1); |
| | | managerFs.setValue("clients_uuid", clientUUID); |
| | | managerFs.setValue("created_by", SpringMVCContextHolder.getCurrentUser().getUser_id()); |
| | | managerFs.setValue("created_utc_datetime", new Date()); |
| | | //éæ°ç»è£
åçç»ç»å
¨ç§° |
| | | String uuid = this.getSuperiorCompanyUuid(fse.getString("asu03")); |
| | | managerFs.setValue("org_level_uuid", uuid); |
| | | baseDao.add(managerFs); |
| | | } |
| | | //æ°å¢ç®¡çå |
| | | String usersUUID = baseDao.add(userFs); |
| | | FieldSetEntity users = baseDao.getFieldSetEntity("product_sys_users", usersUUID, false); |
| | | FieldSetEntity managerFs = new FieldSetEntity(); |
| | | managerFs.setTableName("product_sys_org_manager"); |
| | | managerFs.setValue("user_id", users.getString("user_id")); |
| | | //ä¼ä¸ç®¡çå |
| | | managerFs.setValue("manager_type", "2"); |
| | | managerFs.setValue("role_uuids", "eabb00f3-2118-4165-967b-a7d88f472f67-notchange"); |
| | | managerFs.setValue("is_used", 1); |
| | | managerFs.setValue("clients_uuid", clientUUID); |
| | | managerFs.setValue("created_by", SpringMVCContextHolder.getCurrentUser().getUser_id()); |
| | | managerFs.setValue("created_utc_datetime", new Date()); |
| | | //éæ°ç»è£
åçç»ç»å
¨ç§° |
| | | String uuid = this.getSuperiorCompanyUuid(fse.getString("asu03")); |
| | | managerFs.setValue("org_level_uuid", uuid); |
| | | baseDao.add(managerFs); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 忥å
¬å¸é¨é¨ |
| | | */ |
| | | public void syncDepartmentCompany() throws SQLException, ClassNotFoundException { |
| | | /** |
| | | * 忥å
¬å¸é¨é¨ |
| | | */ |
| | | public void syncDepartmentCompany() throws SQLException, ClassNotFoundException { |
| | | |
| | | //忥ç»ç»æºææ°æ®åæ¾éå |
| | | DataTableEntity groupLeadersFs; |
| | | Connection conn = this.getJDBC(); |
| | | try { |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append("SELECT A.*,REPLACE(REPLACE(A.SG03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/') ASG03 FROM ( ") |
| | | .append( "SELECT * FROM FE_BASE5.SYS_GROUP WHERE length(SG10) > 3 or SG10 = '001' ORDER BY SG10) A ORDER BY SG10"); |
| | | //è·åéè¦åæ¥çç»ç»æºæ |
| | | groupLeadersFs = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | |
| | | //å建顶级å
¬å¸ |
| | | //è·åFE顶级å
¬å¸ |
| | | FieldSetEntity topCompanies = groupLeadersFs.getFieldSetEntity(0); |
| | | //è·å产å001顶级å
¬å¸ |
| | | FieldSetEntity field = baseDao.getFieldSetEntityByFilter("product_sys_org_levels", " org_level_code = 001 ", null,false); |
| | | //æ´æ°å
¬å¸åç§°ï¼å
¬å¸çç¼ç ï¼å
¬å¸æåº |
| | | field.setValue("org_level_name", topCompanies.getString("sg01")); |
| | | field.setValue("org_level_shortcode", topCompanies.getString("sg10")); |
| | | field.setValue("sequence", topCompanies.getString("sg00")); |
| | | //忥ç»ç»æºææ°æ®åæ¾éå |
| | | DataTableEntity groupLeadersFs; |
| | | Connection conn = this.getJDBC(); |
| | | try { |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append("SELECT A.*,REPLACE(REPLACE(A.SG03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/') ASG03 FROM ( ") |
| | | .append("SELECT * FROM FE_BASE5.SYS_GROUP WHERE length(SG10) > 3 or SG10 = '001' ORDER BY SG10) A ORDER BY SG10"); |
| | | //è·åéè¦åæ¥çç»ç»æºæ |
| | | groupLeadersFs = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | |
| | | //å建顶级å
¬å¸ |
| | | //è·åFE顶级å
¬å¸ |
| | | FieldSetEntity topCompanies = groupLeadersFs.getFieldSetEntity(0); |
| | | //è·å产å001顶级å
¬å¸ |
| | | FieldSetEntity field = baseDao.getFieldSetEntityByFilter("product_sys_org_levels", " org_level_code = 001 ", null, false); |
| | | //æ´æ°å
¬å¸åç§°ï¼å
¬å¸çç¼ç ï¼å
¬å¸æåº |
| | | field.setValue("org_level_name", topCompanies.getString("sg01")); |
| | | field.setValue("org_level_shortcode", topCompanies.getString("sg10")); |
| | | field.setValue("sequence", topCompanies.getString("sg00")); |
| | | // field.setCodeFieldUpdateFlat("org_level_code", true); |
| | | |
| | | //äºç©è°ç¨ï¼ä¿åå
¬å¸ä¿¡æ¯ |
| | | ISystemOrgLevelsService service=(ISystemOrgLevelsService) getProxyInstance(systemOrgLevelsService); |
| | | service.updateCompany(field); |
| | | |
| | | |
| | | //äºç©è°ç¨ï¼ä¿åå
¬å¸ä¿¡æ¯ |
| | | ISystemOrgLevelsService service = (ISystemOrgLevelsService) getProxyInstance(systemOrgLevelsService); |
| | | service.updateCompany(field); |
| | | |
| | | // FieldSetEntity topField = this.addCompany(topCompanies,null, null); |
| | | institutionMap.put(field.getString("org_level_all"),field); |
| | | |
| | | //éåfeæ¶ææ°æ® åå
¥ç»ç»æ¶æä¿¡æ¯è¡¨ |
| | | for (int i = 1; i < groupLeadersFs.getRows(); i++) { |
| | | |
| | | FieldSetEntity levelFs = groupLeadersFs.getFieldSetEntity(i); |
| | | //è·åFE表ç»ç»æºæå
¨ç§° |
| | | String asg03 = levelFs.getString("asg03"); |
| | | //æªå为ä¸çº§å
¬å¸ç¸åçå
¨ç§° |
| | | String level_all = asg03.substring(0,asg03.lastIndexOf("/")); |
| | | //æ¿æ¢ä¸ºä¸æ ·çç¬¦å·æ¹ä¾¿å¯¹æ¯ |
| | | level_all = level_all.replace("/", ">"); |
| | | //è·åä¸çº§å
¬å¸æé¨é¨ |
| | | FieldSetEntity fieldSet = institutionMap.get(level_all); |
| | | //ä¸çº§å
¬å¸uuid |
| | | String org_level_uuid = this.getSuperiorCompanyUuid(level_all); |
| | | if(fieldSet == null){ |
| | | throw new BaseException("ä¸çº§ä¸ºç©º","æ æ³è·åä¸çº§code"); |
| | | } |
| | | if(org_level_uuid == null){ |
| | | throw new BaseException("ä¸çº§å
¬å¸ä¸ºç©º","ä¸çº§å
¬å¸uuid"); |
| | | } |
| | | //ä¸çº§å
¬å¸code |
| | | String org_level_code = fieldSet.getString("org_level_code"); |
| | | FieldSetEntity fse; |
| | | institutionMap.put(field.getString("org_level_all"), field); |
| | | |
| | | //éåfeæ¶ææ°æ® åå
¥ç»ç»æ¶æä¿¡æ¯è¡¨ |
| | | for (int i = 1; i < groupLeadersFs.getRows(); i++) { |
| | | |
| | | FieldSetEntity levelFs = groupLeadersFs.getFieldSetEntity(i); |
| | | //è·åFE表ç»ç»æºæå
¨ç§° |
| | | String asg03 = levelFs.getString("asg03"); |
| | | String levelAll = asg03.replaceAll("/", ">"); |
| | | levelFs = baseDao.getFieldSetByFilter("product_sys_org_levels", "org_level_all=?", new Object[]{levelAll}, false); |
| | | if (levelFs != null && !StringUtils.isEmpty(levelFs.getUUID())) { |
| | | institutionMap.put(levelFs.getString("org_level_all"), levelFs); |
| | | continue; |
| | | } |
| | | //æªå为ä¸çº§å
¬å¸ç¸åçå
¨ç§° |
| | | String level_all = asg03.substring(0, asg03.lastIndexOf("/")); |
| | | //æ¿æ¢ä¸ºä¸æ ·çç¬¦å·æ¹ä¾¿å¯¹æ¯ |
| | | level_all = level_all.replace("/", ">"); |
| | | //è·åä¸çº§å
¬å¸æé¨é¨ |
| | | FieldSetEntity fieldSet = institutionMap.get(level_all); |
| | | //ä¸çº§å
¬å¸uuid |
| | | String org_level_uuid = this.getSuperiorCompanyUuid(level_all); |
| | | if (fieldSet == null) { |
| | | throw new BaseException("ä¸çº§ä¸ºç©º", "æ æ³è·åä¸çº§code"); |
| | | } |
| | | if (org_level_uuid == null) { |
| | | throw new BaseException("ä¸çº§å
¬å¸ä¸ºç©º", "ä¸çº§å
¬å¸uuid"); |
| | | } |
| | | //ä¸çº§å
¬å¸code |
| | | String org_level_code = fieldSet.getString("org_level_code"); |
| | | FieldSetEntity fse; |
| | | // levelFs.setCodeFieldUpdateFlat("org_level_code", true); |
| | | //è¿å
¥æ°å¢å
¬å¸æ¹æ³ |
| | | if(levelFs.getInteger("sg14") == 1){ |
| | | fse = this.addCompany(levelFs,org_level_code,org_level_uuid); |
| | | //è¿å
¥æ°å¢é¨é¨æ¹æ³ |
| | | }else { |
| | | fse = this.addDepartment(levelFs, org_level_code, org_level_uuid); |
| | | } |
| | | institutionMap.put(fse.getString("org_level_all"), fse); |
| | | } |
| | | //è¿å
¥æ°å¢å
¬å¸æ¹æ³ |
| | | if (levelFs.getInteger("sg14") == 1) { |
| | | fse = this.addCompany(levelFs, org_level_code, org_level_uuid); |
| | | //è¿å
¥æ°å¢é¨é¨æ¹æ³ |
| | | } else { |
| | | fse = this.addDepartment(levelFs, org_level_code, org_level_uuid); |
| | | } |
| | | institutionMap.put(fse.getString("org_level_all"), fse); |
| | | } |
| | | |
| | | // //å建西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±ä¸é¨é¨ï¼åå
¬å®¤ï¼ |
| | | // FieldSetEntity fse = new FieldSetEntity(); |
| | |
| | | // FieldSetEntity fieldSet = institutionMap.get("西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±"); |
| | | // FieldSetEntity fs = this.addDepartment(fse,fieldSet.getString("org_level_code"), fieldSet.getUUID()); |
| | | // institutionMap.put(fs.getString("org_level_all"), fs); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 忥å²ä½åå²ä½ç级 |
| | | */ |
| | | public void synchronousPost() throws SQLException, ClassNotFoundException { |
| | | /** |
| | | * 忥å²ä½åå²ä½ç级 |
| | | */ |
| | | public void synchronousPost() throws SQLException, ClassNotFoundException { |
| | | |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity groupLeadersFs; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append(" SELECT SR00,SR01,SR02,SR10, SR15, ") |
| | | .append(" REPLACE(REPLACE(REPLACE(SR03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), ") |
| | | .append(" '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/'),'/','>') ASR03 FROM fe_base5.SYS_ROLE "); |
| | | //1为å
¬å¸ |
| | | groupLeadersFs = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | } catch (Exception e) { |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity groupLeadersFs; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append(" SELECT SR00,SR01,SR02,SR10, SR15, ") |
| | | .append(" REPLACE(REPLACE(REPLACE(SR03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), ") |
| | | .append(" '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/'),'/','>') ASR03 FROM fe_base5.SYS_ROLE "); |
| | | //1为å
¬å¸ |
| | | groupLeadersFs = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | } catch (Exception e) { |
| | | |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | //忥å²ä½ç级 |
| | | this.postGrades(groupLeadersFs); |
| | | this.addPost(groupLeadersFs); |
| | | } |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | //忥å²ä½ç级 |
| | | this.postGrades(groupLeadersFs); |
| | | this.addPost(groupLeadersFs); |
| | | } |
| | | |
| | | /** |
| | | * 忥è§è² |
| | | */ |
| | | public void synchronousRole()throws SQLException, ClassNotFoundException{ |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity roleData; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append(" select * from fe_base5.SYS_POPEDOM_TEMPLET a left join fe_base5.SYS_POPEDOM_TEMP_SUB b on a.SPT00=b.STS01 "); |
| | | //äººåæ°æ® |
| | | roleData = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | /** |
| | | * 忥è§è² |
| | | */ |
| | | public void synchronousRole() throws SQLException, ClassNotFoundException { |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity roleData; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | sql.append(" select * from fe_base5.SYS_POPEDOM_TEMPLET a left join fe_base5.SYS_POPEDOM_TEMP_SUB b on a.SPT00=b.STS01 "); |
| | | //äººåæ°æ® |
| | | roleData = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | this.synchronousRole(roleData); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | this.synchronousRole(roleData); |
| | | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * åå§ååºæ¬æé |
| | | */ |
| | | public void packageButton(String role_uuid){ |
| | | StringBuffer sql = new StringBuffer(); |
| | | String tricodeIn = BaseUtil.buildQuestionMarkFilter("tricode", this.functionCode, true); |
| | | sql.append(" SELECT function_uuid,group_concat(uuid SEPARATOR ',') button_uuid FROM product_sys_function_buttons WHERE function_uuid IN ( ") |
| | | .append(" SELECT uuid FROM product_sys_functions WHERE ") |
| | | .append(tricodeIn).append(" ) GROUP BY function_uuid "); |
| | | DataTableEntity dataTableEntity = baseDao.listTable(sql.toString(),new String[]{}); |
| | | for (int i = 0; i < dataTableEntity.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = new FieldSetEntity(); |
| | | fieldSetEntity.setTableName("product_sys_function_permission"); |
| | | fieldSetEntity.setValue("function_uuid", dataTableEntity.getString(i,"function_uuid")); |
| | | fieldSetEntity.setValue("button_uuid", dataTableEntity.getString(i,"button_uuid")); |
| | | fieldSetEntity.setValue("role_uuid", role_uuid); |
| | | baseDao.add(fieldSetEntity); |
| | | } |
| | | } |
| | | /** |
| | | * åå§ååºæ¬æé |
| | | */ |
| | | public void packageButton(String role_uuid) { |
| | | StringBuffer sql = new StringBuffer(); |
| | | String tricodeIn = BaseUtil.buildQuestionMarkFilter("tricode", this.functionCode, true); |
| | | sql.append(" SELECT function_uuid,group_concat(uuid SEPARATOR ',') button_uuid FROM product_sys_function_buttons WHERE function_uuid IN ( ") |
| | | .append(" SELECT uuid FROM product_sys_functions WHERE ") |
| | | .append(tricodeIn).append(" ) GROUP BY function_uuid "); |
| | | DataTableEntity dataTableEntity = baseDao.listTable(sql.toString(), new String[]{}); |
| | | for (int i = 0; i < dataTableEntity.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = new FieldSetEntity(); |
| | | fieldSetEntity.setTableName("product_sys_function_permission"); |
| | | fieldSetEntity.setValue("function_uuid", dataTableEntity.getString(i, "function_uuid")); |
| | | fieldSetEntity.setValue("button_uuid", dataTableEntity.getString(i, "button_uuid")); |
| | | fieldSetEntity.setValue("role_uuid", role_uuid); |
| | | baseDao.add(fieldSetEntity); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * åæ¥äººå |
| | | */ |
| | | public void addEmployees(String clientUUID) throws SQLException, ClassNotFoundException { |
| | | /** |
| | | * åæ¥äººå |
| | | */ |
| | | public void addEmployees(String clientUUID) throws SQLException, ClassNotFoundException { |
| | | |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity personnelData; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | Connection conn = this.getJDBC(); |
| | | DataTableEntity personnelData; |
| | | try { |
| | | //è·åå²ä½ ä¿®æ¹/ 为> æ¹ä¾¿éé
æä»¬æ°æ®è¡¨ |
| | | StringBuffer sql = new StringBuffer(); |
| | | // sql.append(" SELECT A.*,REPLACE(REPLACE(REPLACE(A.SU03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), ") |
| | | // .append(" '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/'),'/','>') ASU03 FROM ") |
| | | // .append(" FE_BASE5.SYS_USERS A WHERE A.SU39 is not null and A.SU35 is not null AND A.SU03 IS NOT NULL "); |
| | | sql.append(" SELECT A.*,REPLACE(REPLACE(REPLACE(A.SU03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), ") |
| | | .append(" '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/'),'/','>') ASU03 FROM ") |
| | | .append(" FE_BASE5.SYS_USERS A WHERE SU39 IS NOT NULL"); |
| | | //äººåæ°æ® |
| | | personnelData = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | this.addEmployees(personnelData,clientUUID); |
| | | } |
| | | sql.append(" SELECT A.*,REPLACE(REPLACE(REPLACE(A.SU03, '/西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±', ''), ") |
| | | .append(" '西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/å±å±ååä½/','西å®å¸ä½æ¿ä¿éåæ¿äº§ç®¡çå±/'),'/','>') ASU03 FROM ") |
| | | .append(" FE_BASE5.SYS_USERS A WHERE SU39 IS NOT NULL"); |
| | | //äººåæ°æ® |
| | | personnelData = BaseDaoServiceImpl.getDataTable(conn, sql.toString(), new Object[]{}); |
| | | } catch (Exception e) { |
| | | throw e; |
| | | } |
| | | DataManipulationUtils.close(null, null, conn); |
| | | this.addEmployees(personnelData, clientUUID); |
| | | } |
| | | |
| | | /** |
| | | * éå½è·åä¸çº§å
¬å¸uuid |
| | | * @param level_all ä¸çº§å
¬å¸å
¨ç§° |
| | | * @return ä¿ååè¿åä¿ååç fse |
| | | */ |
| | | public String getSuperiorCompanyUuid(String level_all){ |
| | | FieldSetEntity fieldSet = institutionMap.get(level_all); |
| | | if(fieldSet == null){ |
| | | return null; |
| | | } |
| | | //ä¸çº§ä¸ºå
¬å¸ |
| | | if("0".equals(fieldSet.getString("org_level_type"))){ |
| | | return fieldSet.getUUID(); |
| | | }else { |
| | | Integer index = level_all.lastIndexOf(">"); |
| | | if(index == -1){ |
| | | return null; |
| | | } |
| | | level_all = level_all.substring(0,index); |
| | | return this.getSuperiorCompanyUuid(level_all); |
| | | } |
| | | } |
| | | /** |
| | | * éå½è·åä¸çº§å
¬å¸uuid |
| | | * |
| | | * @param level_all ä¸çº§å
¬å¸å
¨ç§° |
| | | * @return ä¿ååè¿åä¿ååç fse |
| | | */ |
| | | public String getSuperiorCompanyUuid(String level_all) { |
| | | FieldSetEntity fieldSet = institutionMap.get(level_all); |
| | | if (fieldSet == null) { |
| | | return null; |
| | | } |
| | | //ä¸çº§ä¸ºå
¬å¸ |
| | | if ("0".equals(fieldSet.getString("org_level_type"))) { |
| | | return fieldSet.getUUID(); |
| | | } else { |
| | | Integer index = level_all.lastIndexOf(">"); |
| | | if (index == -1) { |
| | | return null; |
| | | } |
| | | level_all = level_all.substring(0, index); |
| | | return this.getSuperiorCompanyUuid(level_all); |
| | | } |
| | | } |
| | | |
| | | |
| | | /** |
| | | * ä¿åå
¬å¸ |
| | | * @param fse å
¬å¸fes |
| | | * @param code_parent å
¬å¸ä¸çº§code |
| | | * @return ä¿ååè¿åä¿ååç fse |
| | | */ |
| | | public FieldSetEntity addCompany(FieldSetEntity fse, String code_parent, String org_level_uuid){ |
| | | FieldSetEntity levelsFs = new FieldSetEntity(); |
| | | levelsFs.setTableName("product_sys_org_levels"); |
| | | //é¨é¨åç§°,, |
| | | levelsFs.setValue("org_level_name", fse.getString("sg01")); |
| | | /** |
| | | * ä¿åå
¬å¸ |
| | | * |
| | | * @param fse å
¬å¸fes |
| | | * @param code_parent å
¬å¸ä¸çº§code |
| | | * @return ä¿ååè¿åä¿ååç fse |
| | | */ |
| | | public FieldSetEntity addCompany(FieldSetEntity fse, String code_parent, String org_level_uuid) { |
| | | FieldSetEntity levelsFs = new FieldSetEntity(); |
| | | levelsFs.setTableName("product_sys_org_levels"); |
| | | //é¨é¨åç§°,, |
| | | levelsFs.setValue("org_level_name", fse.getString("sg01")); |
| | | |
| | | //å
¬å¸æ®µç¼ç |
| | | levelsFs.setValue("org_level_shortcode", fse.getString("sg10")); |
| | | //å
¬å¸æåº |
| | | levelsFs.setValue("sequence", ++sort); |
| | | //æ¾å
¥ä¸çº§code çæcode |
| | | levelsFs.setValue("org_level_code_parent", code_parent); |
| | | //ä¸çº§å
¬å¸uuid |
| | | levelsFs.setValue("org_level_uuid", org_level_uuid); |
| | | ISystemOrgLevelsService service=(ISystemOrgLevelsService) getProxyInstance(systemOrgLevelsService); |
| | | //å
¬å¸æ®µç¼ç |
| | | levelsFs.setValue("org_level_shortcode", fse.getString("sg10")); |
| | | //å
¬å¸æåº |
| | | levelsFs.setValue("sequence", ++sort); |
| | | //æ¾å
¥ä¸çº§code çæcode |
| | | levelsFs.setValue("org_level_code_parent", code_parent); |
| | | //ä¸çº§å
¬å¸uuid |
| | | levelsFs.setValue("org_level_uuid", org_level_uuid); |
| | | ISystemOrgLevelsService service = (ISystemOrgLevelsService) getProxyInstance(systemOrgLevelsService); |
| | | // levelsFs.setCodeFieldUpdateFlat("org_level_code", true); |
| | | service.addCompany(levelsFs); |
| | | return levelsFs; |
| | | } |
| | | service.addCompany(levelsFs); |
| | | return levelsFs; |
| | | } |
| | | |
| | | /** |
| | | * ä¿åé¨é¨ |
| | | * @param fse å
¬å¸fes |
| | | * @param code_parent å
¬å¸ä¸çº§code |
| | | * @return ä¿ååè¿åä¿ååç fse |
| | | */ |
| | | public FieldSetEntity addDepartment(FieldSetEntity fse, String code_parent, String org_level_uuid){ |
| | | FieldSetEntity levelsFs = new FieldSetEntity(); |
| | | levelsFs.setTableName("product_sys_org_levels"); |
| | | //é¨é¨åç§°,, |
| | | levelsFs.setValue("org_level_name", fse.getString("sg01")); |
| | | //é¨é¨ç¼ç |
| | | levelsFs.setValue("org_level_shortcode", fse.getString("sg10")); |
| | | //å
¬å¸æåº |
| | | levelsFs.setValue("sequence", fse.getString("sg00")); |
| | | //æ¾å
¥ä¸çº§code çæcode |
| | | levelsFs.setValue("org_level_code_parent", code_parent); |
| | | //ä¸çº§å
¬å¸uuid |
| | | levelsFs.setValue("org_level_uuid", org_level_uuid); |
| | | ISystemOrgLevelsService service=(ISystemOrgLevelsService) getProxyInstance(systemOrgLevelsService); |
| | | /** |
| | | * ä¿åé¨é¨ |
| | | * |
| | | * @param fse å
¬å¸fes |
| | | * @param code_parent å
¬å¸ä¸çº§code |
| | | * @return ä¿ååè¿åä¿ååç fse |
| | | */ |
| | | public FieldSetEntity addDepartment(FieldSetEntity fse, String code_parent, String org_level_uuid) { |
| | | FieldSetEntity levelsFs = new FieldSetEntity(); |
| | | levelsFs.setTableName("product_sys_org_levels"); |
| | | //é¨é¨åç§°,, |
| | | levelsFs.setValue("org_level_name", fse.getString("sg01")); |
| | | //é¨é¨ç¼ç |
| | | levelsFs.setValue("org_level_shortcode", fse.getString("sg10")); |
| | | //å
¬å¸æåº |
| | | levelsFs.setValue("sequence", fse.getString("sg00")); |
| | | //æ¾å
¥ä¸çº§code çæcode |
| | | levelsFs.setValue("org_level_code_parent", code_parent); |
| | | //ä¸çº§å
¬å¸uuid |
| | | levelsFs.setValue("org_level_uuid", org_level_uuid); |
| | | ISystemOrgLevelsService service = (ISystemOrgLevelsService) getProxyInstance(systemOrgLevelsService); |
| | | // levelsFs.setCodeFieldUpdateFlat("org_level_code", true); |
| | | service.addDepartment(levelsFs); |
| | | return levelsFs; |
| | | } |
| | | /** |
| | | * å°è£
å
¬å¸é¨é¨å
¨ç§° Map |
| | | */ |
| | | public void packInstitutionMap()throws BaseException { |
| | | DataTableEntity dataTableEntity = baseDao.listTable("SELECT * FROM product_sys_org_levels WHERE org_level_code like ? ", new String[]{"%001%"}); |
| | | if(!BaseUtil.dataTableIsEmpty(dataTableEntity)) { |
| | | for (int i = 0; i < dataTableEntity.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = dataTableEntity.getFieldSetEntity(i); |
| | | String org_level_all = fieldSetEntity.getString("org_level_all"); |
| | | institutionMap.put(org_level_all, fieldSetEntity); |
| | | } |
| | | }else { |
| | | throw new BaseException("æªæ¥è¯¢å°åä½é¨é¨æ°æ®", "æªæ¥è¯¢å°åä½é¨é¨æ°æ®"); |
| | | } |
| | | } |
| | | service.addDepartment(levelsFs); |
| | | return levelsFs; |
| | | } |
| | | |
| | | /** |
| | | * 忥è§è² |
| | | */ |
| | | public void synchronousRole(DataTableEntity data){ |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity rolesFs = data.getFieldSetEntity(i); |
| | | String sts02s = rolesFs.getString("sts02"); |
| | | FieldSetEntity levelsField = baseDao.getFieldSetEntityByFilter("product_sys_org_levels", " org_level_shortcode = ? ", new String[]{sts02s}, false); |
| | | //æäºè§è²å
³èçå使é¨é¨å·²ç»è¢«å 餿,使¯è§è²è¿ä¿çä»çç¼ç ç´æ¥è·³è¿ |
| | | if(levelsField == null){ |
| | | continue; |
| | | } |
| | | FieldSetEntity lxRoleFs = new FieldSetEntity(); |
| | | lxRoleFs.setTableName("product_sys_role"); |
| | | lxRoleFs.setValue("org_level_uuid",levelsField.getUUID()); |
| | | lxRoleFs.setValue("role_name", rolesFs.getString("spt01")); |
| | | lxRoleFs.setValue("role_description", rolesFs.getString("spt02")); |
| | | lxRoleFs.setValue("is_used", 1); |
| | | lxRoleFs.setValue("sequence", rolesFs.getInteger("spt00")); |
| | | this.userAndTime(lxRoleFs); |
| | | String role_uuid = baseDao.add(lxRoleFs); |
| | | /** |
| | | * å°è£
å
¬å¸é¨é¨å
¨ç§° Map |
| | | */ |
| | | public void packInstitutionMap() throws BaseException { |
| | | DataTableEntity dataTableEntity = baseDao.listTable("SELECT * FROM product_sys_org_levels WHERE org_level_code like ? ", new String[]{"%001%"}); |
| | | if (!BaseUtil.dataTableIsEmpty(dataTableEntity)) { |
| | | for (int i = 0; i < dataTableEntity.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = dataTableEntity.getFieldSetEntity(i); |
| | | String org_level_all = fieldSetEntity.getString("org_level_all"); |
| | | institutionMap.put(org_level_all, fieldSetEntity); |
| | | } |
| | | } else { |
| | | throw new BaseException("æªæ¥è¯¢å°åä½é¨é¨æ°æ®", "æªæ¥è¯¢å°åä½é¨é¨æ°æ®"); |
| | | } |
| | | } |
| | | |
| | | //该è§è²åå§åæé |
| | | this.packageButton(role_uuid); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * æ·»å ç¨æ·ååå·¥ |
| | | */ |
| | | public void addEmployees(DataTableEntity data,String clientUUID){ |
| | | //fe 人åid å¯¹åº userid |
| | | JSONObject idUserMap = new JSONObject(); |
| | | //è·å客æ·uuid |
| | | FieldSetEntity fieldSetEntity = baseDao.getFieldSetEntityByFilter("product_sys_org_levels", " org_level_code = ? ", new String[]{"001"}, false); |
| | | String client_uuid = fieldSetEntity.getString("client_uuid"); |
| | | |
| | | Map<String, FieldSetEntity> staffsMap = Maps.newHashMap(); |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity userFs = data.getFieldSetEntity(i); |
| | | FieldSetEntity usersFs = new FieldSetEntity(); |
| | | //å建 user æ°æ® |
| | | usersFs.setTableName("product_sys_users"); |
| | | //ç¨æ·å |
| | | usersFs.setValue("user_name", userFs.getString("su02")); |
| | | //æè¿° |
| | | usersFs.setValue("user_account", userFs.getString("su01")); |
| | | //é®ç®± |
| | | usersFs.setValue("user_primary_email", userFs.getString("su11")); |
| | | //æ§å«è½¬æ¢ |
| | | String su16 = userFs.getString("su16"); |
| | | String sex = null; |
| | | if (su16 != null) { |
| | | sex = su16.equals("ç·") ? "0" : "1"; |
| | | } |
| | | usersFs.setValue("gender", sex); |
| | | //ç¨æ·çµè¯ |
| | | usersFs.setValue("user_mobile_number", userFs.getString("su10")); |
| | | //å
线çµè¯ |
| | | usersFs.setValue("inside_phone", userFs.getString("su13")); |
| | | //å°å |
| | | usersFs.setValue("contact_address", userFs.getString("su18")); |
| | | //åå§åç¨æ·å¯ç |
| | | usersFs.setValue("user_pwd", userService.createPassWord(userFs.getString("su01"), "123")); |
| | | //æ¯å¦æ¯ç®¡çå 0:å¦ 1:æ¯ |
| | | usersFs.setValue("is_manager", 0); |
| | | //åå
¬çµè¯ |
| | | usersFs.setValue("office_phone", userFs.getString("su09")); |
| | | this.userAndTime(usersFs); |
| | | //ç¶æ 0ï¼ç¦ç¨ 1ï¼æ£å¸¸ |
| | | usersFs.setValue("status", userFs.getString("su08")); |
| | | //ç¾å |
| | | String su23 = userFs.getString("su23"); |
| | | if (!BaseUtil.strIsNull(su23)) { |
| | | usersFs.setValue("user_signature", this.signatureAndThumbnail(su23, clientUUID,"user_signature")); |
| | | } |
| | | //头å |
| | | String su28 = userFs.getString("su28"); |
| | | if (!BaseUtil.strIsNull(su28)) { |
| | | usersFs.setValue("thumbnail_img", this.signatureAndThumbnail(su28, clientUUID,"thumbnail_img")); |
| | | } |
| | | |
| | | String usersUUID = baseDao.add(usersFs); |
| | | FieldSetEntity users = baseDao.getFieldSetEntity("product_sys_users", usersUUID, false); |
| | | //feç¨æ·id å
³èç³»ç»è¡¨"product_sys_usersï¼user_id |
| | | idUserMap.put(userFs.getString("su00"), users.getString("user_id")); |
| | | |
| | | if (BaseUtil.strIsNull(userFs.getString("su03")) || BaseUtil.strIsNull(userFs.getString("su35")) || BaseUtil.strIsNull(userFs.getString("su39"))) { |
| | | /** |
| | | * 忥è§è² |
| | | */ |
| | | public void synchronousRole(DataTableEntity data) { |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity rolesFs = data.getFieldSetEntity(i); |
| | | String sts02s = rolesFs.getString("sts02"); |
| | | FieldSetEntity levelsField = baseDao.getFieldSetEntityByFilter("product_sys_org_levels", " org_level_shortcode = ? ", new String[]{sts02s}, false); |
| | | //æäºè§è²å
³èçå使é¨é¨å·²ç»è¢«å 餿,使¯è§è²è¿ä¿çä»çç¼ç ç´æ¥è·³è¿ |
| | | if (levelsField == null) { |
| | | continue; |
| | | } |
| | | |
| | | FieldSetEntity staffsFs = new FieldSetEntity(); |
| | | //å工表 |
| | | staffsFs.setTableName("product_sys_staffs"); |
| | | //ç¨æ·è¡¨id |
| | | staffsFs.setValue("user_id", users.getString("user_id")); |
| | | //æ¾ç¤ºåç§° |
| | | staffsFs.setValue("show_name", userFs.getString("su02")); |
| | | //åå·¥å |
| | | staffsFs.setValue("given_name", userFs.getString("su02")); |
| | | //åå·¥å§ |
| | | staffsFs.setValue("family_name", userFs.getString("su02")); |
| | | //é®ç®± |
| | | staffsFs.setValue("email_address", userFs.getString("su11")); |
| | | //ç§»å¨çµè¯ |
| | | staffsFs.setValue("mobile_phone", userFs.getString("su10")); |
| | | //åå
¬çµè¯ |
| | | staffsFs.setValue("office_telephone", userFs.getString("su09")); |
| | | FieldSetEntity lxRoleFs = new FieldSetEntity(); |
| | | lxRoleFs.setTableName("product_sys_role"); |
| | | lxRoleFs.setValue("org_level_uuid", levelsField.getUUID()); |
| | | lxRoleFs.setValue("role_name", rolesFs.getString("spt01")); |
| | | lxRoleFs.setValue("role_description", rolesFs.getString("spt02")); |
| | | lxRoleFs.setValue("is_used", 1); |
| | | lxRoleFs.setValue("sequence", rolesFs.getInteger("spt00")); |
| | | this.userAndTime(lxRoleFs); |
| | | String role_uuid = baseDao.add(lxRoleFs); |
| | | |
| | | //åå·¥æ§å« |
| | | staffsFs.setValue("sex", sex); |
| | | //åå·¥é®ç®± |
| | | String su11 = userFs.getString("su11"); |
| | | //é®ç®±ä¸ºç©ºå
è¦1 |
| | | if(BaseUtil.strIsNull(su11)){ |
| | | su11 = "1"; |
| | | } |
| | | staffsFs.setValue("staff_email", su11); |
| | | //ç¶æï¼0åå¤å
¥è 1è¯ç¨ 2åå¤è½¬æ£ 3å¨è 4åè 5åå¤ç¦»è 6离è 7éä¼ |
| | | staffsFs.setValue("staff_status", 3); |
| | | //该è§è²åå§åæé |
| | | this.packageButton(role_uuid); |
| | | } |
| | | } |
| | | |
| | | staffsFs.setValue("client_uuid", client_uuid); |
| | | //éæ°ç»è£
åçç»ç»å
¨ç§° |
| | | FieldSetEntity fieldSet = institutionMap.get(userFs.getString("asu03")); |
| | | String uuid = this.getSuperiorCompanyUuid(userFs.getString("asu03")); |
| | | //å
¬å¸uuid |
| | | staffsFs.setValue("org_level_uuid", uuid); |
| | | //é¨é¨uuid |
| | | staffsFs.setValue("dept_uuid", fieldSet.getUUID()); |
| | | |
| | | if (null == userFs.getString("su34")) { |
| | | //å²ä½uuid |
| | | staffsFs.setValue("job_post_uuid", 1); |
| | | //å²ä½ç级uuid |
| | | staffsFs.setValue("job_post_grade_uuid",1); |
| | | } else { |
| | | //éè¿å²ä½idæ¥è¯¢å²ä½ |
| | | String su34 = userFs.getString("su34"); |
| | | FieldSetEntity fsePosts = baseDao.getFieldSetEntityByFilter("product_sys_job_posts", " sequence = ? ", new Integer[]{Integer.parseInt(su34)}, false); |
| | | if(fsePosts != null) { |
| | | staffsFs.setValue("job_post_uuid", fsePosts.getUUID()); |
| | | staffsFs.setValue("job_post_grade_uuid", fsePosts.getString("job_post_grades_uuid")); |
| | | }else { |
| | | throw new BaseException("æªæ¥è¯¢å°å²ä½","æªæ¥è¯¢å°å²ä½"); |
| | | } |
| | | } |
| | | //su35å
³èæéid, å
³èå¤ä¸ªéå·åé |
| | | String su35 = userFs.getString("su35"); |
| | | String[] su35s = null; |
| | | if(!BaseUtil.strIsNull(su35)){ |
| | | su35s = su35.split(","); |
| | | for (int j = 0; j < su35s.length; j++) { |
| | | FieldSetEntity fse = baseDao.getFieldSetEntityByFilter("product_sys_role", " sequence = ? ", new Integer[]{Integer.parseInt(su35s[j])}, false); |
| | | su35s[j] = fse.getUUID(); |
| | | } |
| | | } |
| | | //ç´å±é¢å¯¼ |
| | | String su40 = userFs.getString("su40"); |
| | | //为空就æ¾ç©º |
| | | if(BaseUtil.strIsNull(su40)){ |
| | | su40 = ""; |
| | | }else { |
| | | //å¤ä¸ªç´å±é¢å¯¼ å°±å第ä¸ä¸ª |
| | | if(su40.contains(",")){ |
| | | su40 = su40.substring(0,su40.indexOf(",")); |
| | | } |
| | | } |
| | | staffsFs.setValue("direct_leader_code",su40); |
| | | if(su35s != null) { |
| | | staffsFs.setValue("role_uuids", StringUtils.join(su35s, ",")); |
| | | } |
| | | //åå·¥ä¸ä¸çº§ç¼ç |
| | | staffsFs.setValue("leader_tricode", codeService.createFixCode(CmnConst.PRODUCT_SYS_STAFFS, CmnConst.LEADER_TRICODE, "")); |
| | | //åå·¥ç¼ç å工忬id å为ç¼ç |
| | | staffsFs.setValue("tricode",codeService.createFixCode(CmnConst.PRODUCT_SYS_STAFFS, CmnConst.TRICODE, fieldSet.getString("org_level_code"))); |
| | | String su00 = userFs.getString("su00"); |
| | | staffsFs.setValue("sequence", su00); |
| | | staffsFs.setValue("remark", su00); |
| | | this.userAndTime(staffsFs); |
| | | baseDao.add(staffsFs); |
| | | staffsMap.put(su00, staffsFs); |
| | | } |
| | | //sqlä¿®æ¹ç´å±é¢å¯¼ |
| | | baseDao.executeUpdate(" UPDATE product_sys_staffs a INNER JOIN product_sys_staffs b ON a.remark = b.direct_leader_code SET b.direct_leader_code = a.tricode "); |
| | | //循ç¯åæ¥ç´å±é¢å¯¼, è¥æä¸¤ä¸ªç´å±é¢å¯¼ åªå第ä¸ä¸ª |
| | | /** |
| | | * æ·»å ç¨æ·ååå·¥ |
| | | */ |
| | | public void addEmployees(DataTableEntity data, String clientUUID) { |
| | | //fe 人åid å¯¹åº userid |
| | | JSONObject idUserMap = new JSONObject(); |
| | | //è·å客æ·uuid |
| | | FieldSetEntity fieldSetEntity = baseDao.getFieldSetEntityByFilter("product_sys_org_levels", " org_level_code = ? ", new String[]{"001"}, false); |
| | | String client_uuid = fieldSetEntity.getString("client_uuid"); |
| | | |
| | | Map<String, FieldSetEntity> staffsMap = Maps.newHashMap(); |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity userFs = data.getFieldSetEntity(i); |
| | | FieldSetEntity usersFs = new FieldSetEntity(); |
| | | //å建 user æ°æ® |
| | | usersFs.setTableName("product_sys_users"); |
| | | //ç¨æ·å |
| | | usersFs.setValue("user_name", userFs.getString("su02")); |
| | | //æè¿° |
| | | usersFs.setValue("user_account", userFs.getString("su01")); |
| | | FieldSetEntity fieldSetByFilter = baseDao.getFieldSetByFilter("product_sys_users", "user_account=?", new Object[]{userFs.getString("su01")}, false); |
| | | if (!FieldSetEntity.isEmpty(fieldSetByFilter)) { |
| | | fieldSetByFilter.setValue("status", userFs.getString("su08")); |
| | | //ç¾å |
| | | String su23 = userFs.getString("su23"); |
| | | if (!BaseUtil.strIsNull(su23)) { |
| | | usersFs.setValue("user_signature", this.signatureAndThumbnail(su23, clientUUID, "user_signature")); |
| | | } |
| | | //头å |
| | | String su28 = userFs.getString("su28"); |
| | | if (!BaseUtil.strIsNull(su28)) { |
| | | usersFs.setValue("thumbnail_img", this.signatureAndThumbnail(su28, clientUUID, "thumbnail_img")); |
| | | } |
| | | baseDao.executeUpdate("update product_sys_staffs set staff_status=? where user_id=?", new Object[]{userFs.getString("su08"), fieldSetByFilter.getString("user_id")}); |
| | | baseDao.saveFieldSetEntity(fieldSetByFilter); |
| | | continue; |
| | | } |
| | | //é®ç®± |
| | | usersFs.setValue("user_primary_email", userFs.getString("su11")); |
| | | //æ§å«è½¬æ¢ |
| | | String su16 = userFs.getString("su16"); |
| | | String sex = null; |
| | | if (su16 != null) { |
| | | sex = su16.equals("ç·") ? "0" : "1"; |
| | | } |
| | | usersFs.setValue("gender", sex); |
| | | //ç¨æ·çµè¯ |
| | | usersFs.setValue("user_mobile_number", userFs.getString("su10")); |
| | | //å
线çµè¯ |
| | | usersFs.setValue("inside_phone", userFs.getString("su13")); |
| | | //å°å |
| | | usersFs.setValue("contact_address", userFs.getString("su18")); |
| | | //åå§åç¨æ·å¯ç |
| | | usersFs.setValue("user_pwd", userService.createPassWord(userFs.getString("su01"), "123")); |
| | | //æ¯å¦æ¯ç®¡çå 0:å¦ 1:æ¯ |
| | | usersFs.setValue("is_manager", 0); |
| | | //åå
¬çµè¯ |
| | | usersFs.setValue("office_phone", userFs.getString("su09")); |
| | | this.userAndTime(usersFs); |
| | | //ç¶æ 0ï¼ç¦ç¨ 1ï¼æ£å¸¸ |
| | | usersFs.setValue("status", userFs.getString("su08")); |
| | | //ç¾å |
| | | String su23 = userFs.getString("su23"); |
| | | if (!BaseUtil.strIsNull(su23)) { |
| | | usersFs.setValue("user_signature", this.signatureAndThumbnail(su23, clientUUID, "user_signature")); |
| | | } |
| | | //头å |
| | | String su28 = userFs.getString("su28"); |
| | | if (!BaseUtil.strIsNull(su28)) { |
| | | usersFs.setValue("thumbnail_img", this.signatureAndThumbnail(su28, clientUUID, "thumbnail_img")); |
| | | } |
| | | |
| | | String usersUUID = baseDao.add(usersFs); |
| | | FieldSetEntity users = baseDao.getFieldSetEntity("product_sys_users", usersUUID, false); |
| | | //feç¨æ·id å
³èç³»ç»è¡¨"product_sys_usersï¼user_id |
| | | idUserMap.put(userFs.getString("su00"), users.getString("user_id")); |
| | | |
| | | if (BaseUtil.strIsNull(userFs.getString("su03")) || BaseUtil.strIsNull(userFs.getString("su35")) || BaseUtil.strIsNull(userFs.getString("su39"))) { |
| | | continue; |
| | | } |
| | | |
| | | FieldSetEntity staffsFs = new FieldSetEntity(); |
| | | //å工表 |
| | | staffsFs.setTableName("product_sys_staffs"); |
| | | //ç¨æ·è¡¨id |
| | | staffsFs.setValue("user_id", users.getString("user_id")); |
| | | //æ¾ç¤ºåç§° |
| | | staffsFs.setValue("show_name", userFs.getString("su02")); |
| | | //åå·¥å |
| | | staffsFs.setValue("given_name", userFs.getString("su02")); |
| | | //åå·¥å§ |
| | | staffsFs.setValue("family_name", userFs.getString("su02")); |
| | | //é®ç®± |
| | | staffsFs.setValue("email_address", userFs.getString("su11")); |
| | | //ç§»å¨çµè¯ |
| | | staffsFs.setValue("mobile_phone", userFs.getString("su10")); |
| | | //åå
¬çµè¯ |
| | | staffsFs.setValue("office_telephone", userFs.getString("su09")); |
| | | |
| | | //åå·¥æ§å« |
| | | staffsFs.setValue("sex", sex); |
| | | //åå·¥é®ç®± |
| | | String su11 = userFs.getString("su11"); |
| | | //é®ç®±ä¸ºç©ºå
è¦1 |
| | | if (BaseUtil.strIsNull(su11)) { |
| | | su11 = "1"; |
| | | } |
| | | staffsFs.setValue("staff_email", su11); |
| | | //ç¶æï¼0åå¤å
¥è 1è¯ç¨ 2åå¤è½¬æ£ 3å¨è 4åè 5åå¤ç¦»è 6离è 7éä¼ |
| | | staffsFs.setValue("staff_status", 3); |
| | | |
| | | staffsFs.setValue("client_uuid", client_uuid); |
| | | //éæ°ç»è£
åçç»ç»å
¨ç§° |
| | | FieldSetEntity fieldSet = institutionMap.get(userFs.getString("asu03")); |
| | | String uuid = this.getSuperiorCompanyUuid(userFs.getString("asu03")); |
| | | //å
¬å¸uuid |
| | | staffsFs.setValue("org_level_uuid", uuid); |
| | | //é¨é¨uuid |
| | | staffsFs.setValue("dept_uuid", fieldSet.getUUID()); |
| | | |
| | | if (null == userFs.getString("su34")) { |
| | | //å²ä½uuid |
| | | staffsFs.setValue("job_post_uuid", 1); |
| | | //å²ä½ç级uuid |
| | | staffsFs.setValue("job_post_grade_uuid", 1); |
| | | } else { |
| | | //éè¿å²ä½idæ¥è¯¢å²ä½ |
| | | String su34 = userFs.getString("su34"); |
| | | FieldSetEntity fsePosts = baseDao.getFieldSetEntityByFilter("product_sys_job_posts", " sequence = ? ", new Integer[]{Integer.parseInt(su34)}, false); |
| | | if (fsePosts != null) { |
| | | staffsFs.setValue("job_post_uuid", fsePosts.getUUID()); |
| | | staffsFs.setValue("job_post_grade_uuid", fsePosts.getString("job_post_grades_uuid")); |
| | | } else { |
| | | throw new BaseException("æªæ¥è¯¢å°å²ä½", "æªæ¥è¯¢å°å²ä½"); |
| | | } |
| | | } |
| | | //su35å
³èæéid, å
³èå¤ä¸ªéå·åé |
| | | String su35 = userFs.getString("su35"); |
| | | String[] su35s = null; |
| | | if (!BaseUtil.strIsNull(su35)) { |
| | | su35s = su35.split(","); |
| | | for (int j = 0; j < su35s.length; j++) { |
| | | FieldSetEntity fse = baseDao.getFieldSetEntityByFilter("product_sys_role", " sequence = ? ", new Integer[]{Integer.parseInt(su35s[j])}, false); |
| | | su35s[j] = fse.getUUID(); |
| | | } |
| | | } |
| | | //ç´å±é¢å¯¼ |
| | | String su40 = userFs.getString("su40"); |
| | | //为空就æ¾ç©º |
| | | if (BaseUtil.strIsNull(su40)) { |
| | | su40 = ""; |
| | | } else { |
| | | //å¤ä¸ªç´å±é¢å¯¼ å°±å第ä¸ä¸ª |
| | | if (su40.contains(",")) { |
| | | su40 = su40.substring(0, su40.indexOf(",")); |
| | | } |
| | | } |
| | | staffsFs.setValue("direct_leader_code", su40); |
| | | if (su35s != null) { |
| | | staffsFs.setValue("role_uuids", StringUtils.join(su35s, ",")); |
| | | } |
| | | //åå·¥ä¸ä¸çº§ç¼ç |
| | | staffsFs.setValue("leader_tricode", codeService.createFixCode(CmnConst.PRODUCT_SYS_STAFFS, CmnConst.LEADER_TRICODE, "")); |
| | | //åå·¥ç¼ç å工忬id å为ç¼ç |
| | | staffsFs.setValue("tricode", codeService.createFixCode(CmnConst.PRODUCT_SYS_STAFFS, CmnConst.TRICODE, fieldSet.getString("org_level_code"))); |
| | | String su00 = userFs.getString("su00"); |
| | | staffsFs.setValue("sequence", su00); |
| | | staffsFs.setValue("remark", su00); |
| | | this.userAndTime(staffsFs); |
| | | baseDao.add(staffsFs); |
| | | staffsMap.put(su00, staffsFs); |
| | | } |
| | | //sqlä¿®æ¹ç´å±é¢å¯¼ |
| | | baseDao.executeUpdate(" UPDATE product_sys_staffs a INNER JOIN product_sys_staffs b ON a.remark = b.direct_leader_code SET b.direct_leader_code = a.tricode "); |
| | | //循ç¯åæ¥ç´å±é¢å¯¼, è¥æä¸¤ä¸ªç´å±é¢å¯¼ åªå第ä¸ä¸ª |
| | | // for(String su00 : staffsMap.keySet()){ |
| | | // FieldSetEntity staffsFs = staffsMap.get(su00); |
| | | // //è·åç´å±é¢å¯¼ |
| | |
| | | // } |
| | | // } |
| | | // } |
| | | } |
| | | } |
| | | |
| | | public String signatureAndThumbnail(String su,String clientUUID, String field){ |
| | | try { |
| | | String[] path = su.split("="); |
| | | String filePath = path[1]; |
| | | String fileName = StringUtils.isEmpty(filePath) ? "" : filePath.substring(filePath.lastIndexOf("/") + 1); |
| | | String newPath = this.TSPath + File.separator + fileName; |
| | | File isField = new File(newPath); |
| | | //å¦æå·²ç»æè¯¥æä»¶ æ¹åæä»¶ç®å½ |
| | | Integer fileNum = 0; |
| | | while (isField.exists()) { |
| | | fileNum++; |
| | | newPath = this.TSPath + fileNum + File.separator + fileName; |
| | | isField = new File(newPath); |
| | | } |
| | | //å¤å¶å°ä¸´æ¶ç®å½ä¸ |
| | | if (this.copyFile(filePath, newPath)) { |
| | | RequestParameterEntity rpe = new RequestParameterEntity(); |
| | | Map<String, File> fileMap = Maps.newHashMap(); |
| | | //éè¿è·¯å¾è·åFile |
| | | File file = new File(newPath); |
| | | //æä»¶å æä»¶file |
| | | fileMap.put(fileName, file); |
| | | FieldSetEntity fieldSet = new FieldSetEntity(); |
| | | FieldMetaEntity f = new FieldMetaEntity(); |
| | | f.setTableName(new String[]{"product_sys_users"}); |
| | | fieldSet.setMeta(f); |
| | | fieldSet.setValue(field, fileName); |
| | | fieldSet.setValue("~field_name~", field); |
| | | //æ¾å
¥å®¢æ·uuid |
| | | fieldSet.setValue("client_uuid", clientUUID); |
| | | rpe.setFiles(fileMap); |
| | | rpe.setFormData(fieldSet); |
| | | try { |
| | | FieldSetEntity fileFse = fileManagerService.uploadFile(rpe); |
| | | return fileFse.getString(field); |
| | | } catch (Exception e) { |
| | | e.getStackTrace(); |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | } |
| | | } |
| | | }catch (Exception e){ |
| | | e.getStackTrace(); |
| | | } |
| | | return null; |
| | | } |
| | | public String signatureAndThumbnail(String su, String clientUUID, String field) { |
| | | try { |
| | | String[] path = su.split("="); |
| | | String filePath = path[1]; |
| | | String fileName = StringUtils.isEmpty(filePath) ? "" : filePath.substring(filePath.lastIndexOf("/") + 1); |
| | | String newPath = this.TSPath + File.separator + fileName; |
| | | File isField = new File(newPath); |
| | | //å¦æå·²ç»æè¯¥æä»¶ æ¹åæä»¶ç®å½ |
| | | Integer fileNum = 0; |
| | | while (isField.exists()) { |
| | | fileNum++; |
| | | newPath = this.TSPath + fileNum + File.separator + fileName; |
| | | isField = new File(newPath); |
| | | } |
| | | //å¤å¶å°ä¸´æ¶ç®å½ä¸ |
| | | if (this.copyFile(filePath, newPath)) { |
| | | RequestParameterEntity rpe = new RequestParameterEntity(); |
| | | Map<String, File> fileMap = Maps.newHashMap(); |
| | | //éè¿è·¯å¾è·åFile |
| | | File file = new File(newPath); |
| | | //æä»¶å æä»¶file |
| | | fileMap.put(fileName, file); |
| | | FieldSetEntity fieldSet = new FieldSetEntity(); |
| | | FieldMetaEntity f = new FieldMetaEntity(); |
| | | f.setTableName(new String[]{"product_sys_users"}); |
| | | fieldSet.setMeta(f); |
| | | fieldSet.setValue(field, fileName); |
| | | fieldSet.setValue("~field_name~", field); |
| | | //æ¾å
¥å®¢æ·uuid |
| | | fieldSet.setValue("client_uuid", clientUUID); |
| | | rpe.setFiles(fileMap); |
| | | rpe.setFormData(fieldSet); |
| | | try { |
| | | FieldSetEntity fileFse = fileManagerService.uploadFile(rpe); |
| | | return fileFse.getString(field); |
| | | } catch (Exception e) { |
| | | e.getStackTrace(); |
| | | SpringMVCContextHolder.getSystemLogger().error(e); |
| | | } |
| | | } |
| | | } catch (Exception e) { |
| | | e.getStackTrace(); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | * æ·»å å²ä½ |
| | | */ |
| | | public void addPost(DataTableEntity data){ |
| | | DataTableEntity dataTableEntity = new DataTableEntity(); |
| | | dataTableEntity.getMeta().setTableName(new String[]{"product_sys_job_posts"}); |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = data.getFieldSetEntity(i); |
| | | FieldSetEntity field = new FieldSetEntity(); |
| | | field.setTableName("product_sys_job_posts"); |
| | | field.setValue("is_used", 1); |
| | | field.setValue("job_post_name", fieldSetEntity.getString("sr01")); |
| | | field.setValue("job_post_description", fieldSetEntity.getString("sr02")); |
| | | //éè¿å
¨ç§°è·ååä½åé¨é¨uuid |
| | | String org_level_all = fieldSetEntity.getString("asr03"); |
| | | FieldSetEntity fieldSetEntity1 = institutionMap.get(org_level_all); |
| | | //å
¬å¸uuid |
| | | String org_level_uuid = this.getSuperiorCompanyUuid(org_level_all); |
| | | field.setValue("org_level_uuid",org_level_uuid); |
| | | //æºæç±»å 0 å
¬å¸ 1é¨é¨ |
| | | String orgLevelType = fieldSetEntity1.getString("org_level_type"); |
| | | //æ¥è¯¢å²ä½ç级 |
| | | String sr15 = fieldSetEntity.getString("sr15"); |
| | | FieldSetEntity fieldSet = baseDao.getFieldSetEntityByFilter("product_sys_job_post_grades", " org_level_uuid = ? and job_grade_class = ? ", new String[]{org_level_uuid,sr15},false); |
| | | //å²ä½ç级 |
| | | String postGradesUuid = fieldSet.getUUID(); |
| | | field.setValue("job_post_grades_uuid", postGradesUuid); |
| | | //æåºææ¶åå²ä½id æ¹ä¾¿äººåæ¥è¯¢å°å²ä½id |
| | | Integer sequence = fieldSetEntity.getInteger("sr00"); |
| | | field.setValue("sequence",sequence); |
| | | this.userAndTime(field); |
| | | String org_uuid = fieldSetEntity1.getUUID(); |
| | | String code = fieldSetEntity1.getString("org_level_code"); |
| | | //0为å
¬å¸ è¥ä¸ºå
¬å¸å°±å建å¤ä¸ªç¸åå²ä½æ¥å
³èå
¬å¸ä¸ææé¨é¨ |
| | | if("0".equals(orgLevelType)){ |
| | | DataTableEntity dataTable = baseDao.listTable("product_sys_org_levels", " org_level_type = 1 and org_level_uuid = ? ", new String[]{org_uuid}); |
| | | if(!BaseUtil.dataTableIsEmpty(dataTable)) { |
| | | for (int j = 0; j < dataTable.getRows(); j++) { |
| | | field.setValue("dept_uuid",dataTable.getString(j, "uuid")); |
| | | field.remove("uuid"); |
| | | //éè¿æ°å¢æ¹æ³æ·»å å²ä½ |
| | | String uuid = baseDao.add(field); |
| | | //æ·»å å²ä½ä¸å²ä½ç级å
³ç³»æ å°æ°æ®è¡¨ |
| | | FieldSetEntity postsAndClass = new FieldSetEntity(); |
| | | postsAndClass.setTableName("product_sys_job_posts_grades_mapping"); |
| | | //å²ä½ç级uuid |
| | | postsAndClass.setValue("job_grade_uuid", postGradesUuid); |
| | | //å²ä½uuid |
| | | postsAndClass.setValue("job_post_uuid", uuid); |
| | | this.userAndTime(postsAndClass); |
| | | baseDao.add(postsAndClass); |
| | | } |
| | | }else { |
| | | //åä½ä¸è¥æ²¡æé¨é¨ å建ä¸ä¸ªèæé¨é¨ |
| | | FieldSetEntity departmentFse = new FieldSetEntity(); |
| | | departmentFse.setTableName("product_sys_org_levels"); |
| | | //é¨é¨åç§° |
| | | departmentFse.setValue("sg01", fieldSetEntity1.getString("org_level_name") + "ä¸é¨é¨"); |
| | | //é¨é¨ç¼ç |
| | | departmentFse.setValue("sg10", fieldSetEntity1.getString("org_level_shortcode") + "01"); |
| | | //æåº |
| | | departmentFse.setValue("sg00", fieldSetEntity1.getString("sequence") + "01"); |
| | | //ä¿ååçé¨é¨ |
| | | FieldSetEntity newDeptFse = this.addDepartment(departmentFse,code,org_uuid); |
| | | //æ¾å
¥é¨é¨uuid |
| | | field.setValue("dept_uuid",newDeptFse.getUUID()); |
| | | //éè¿æ°å¢æ¹æ³æ·»å å²ä½ |
| | | String uuid = baseDao.add(field); |
| | | //æ·»å å²ä½ä¸å²ä½ç级å
³ç³»æ å°æ°æ®è¡¨ |
| | | FieldSetEntity postsAndClass = new FieldSetEntity(); |
| | | postsAndClass.setTableName("product_sys_job_posts_grades_mapping"); |
| | | //å²ä½ç级uuid |
| | | postsAndClass.setValue("job_grade_uuid", postGradesUuid); |
| | | //å²ä½uuid |
| | | postsAndClass.setValue("job_post_uuid", uuid); |
| | | this.userAndTime(postsAndClass); |
| | | baseDao.add(postsAndClass); |
| | | } |
| | | //1为é¨é¨ |
| | | }else{ |
| | | field.setValue("dept_uuid",org_uuid); |
| | | //éè¿æ°å¢æ¹æ³æ·»å å²ä½ |
| | | String uuid = baseDao.add(field); |
| | | //æ·»å å²ä½ä¸å²ä½ç级å
³ç³»æ å°æ°æ®è¡¨ |
| | | FieldSetEntity postsAndClass = new FieldSetEntity(); |
| | | postsAndClass.setTableName("product_sys_job_posts_grades_mapping"); |
| | | //å²ä½ç级uuid |
| | | postsAndClass.setValue("job_grade_uuid", postGradesUuid); |
| | | //å²ä½uuid |
| | | postsAndClass.setValue("job_post_uuid", uuid); |
| | | this.userAndTime(postsAndClass); |
| | | baseDao.add(postsAndClass); |
| | | } |
| | | } |
| | | } |
| | | /** |
| | | * æ·»å å²ä½ |
| | | */ |
| | | public void addPost(DataTableEntity data) { |
| | | DataTableEntity dataTableEntity = new DataTableEntity(); |
| | | dataTableEntity.getMeta().setTableName(new String[]{"product_sys_job_posts"}); |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = data.getFieldSetEntity(i); |
| | | FieldSetEntity field = new FieldSetEntity(); |
| | | field.setTableName("product_sys_job_posts"); |
| | | field.setValue("is_used", 1); |
| | | field.setValue("job_post_name", fieldSetEntity.getString("sr01")); |
| | | field.setValue("job_post_description", fieldSetEntity.getString("sr02")); |
| | | //éè¿å
¨ç§°è·ååä½åé¨é¨uuid |
| | | String org_level_all = fieldSetEntity.getString("asr03"); |
| | | FieldSetEntity fieldSetEntity1 = institutionMap.get(org_level_all); |
| | | //å
¬å¸uuid |
| | | String org_level_uuid = this.getSuperiorCompanyUuid(org_level_all); |
| | | field.setValue("org_level_uuid", org_level_uuid); |
| | | //å¤æç³»ç»ä¸æ¯å¦æè¯¥è§è² |
| | | |
| | | /** |
| | | * æ·»å å建人åå建æ¶é´ |
| | | * @param fieldSetEntity |
| | | */ |
| | | public void userAndTime(FieldSetEntity fieldSetEntity){ |
| | | fieldSetEntity.setValue("created_by",SpringMVCContextHolder.getCurrentUserId()); |
| | | fieldSetEntity.setValue("created_utc_datetime",new Date()); |
| | | } |
| | | /** |
| | | * æ·»å å²ä½ç级 |
| | | */ |
| | | public void postGrades(DataTableEntity data){ |
| | | //å
¬å¸uuid å²ä½å±çº§é |
| | | Map<String,String> postHierarchyMap = Maps.newHashMap(); |
| | | //éè¿å
¬å¸uuidæ¥ååå²ä½ç级 |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = data.getFieldSetEntity(i); |
| | | FieldSetEntity field = new FieldSetEntity(); |
| | | field.setTableName("product_sys_job_post_grades"); |
| | | //å²ä½å±çº§ è¶å°ç级è¶å¤§ |
| | | String sr15 = fieldSetEntity.getString("sr15"); |
| | | //转æ¢åé¨é¨æå
¬å¸å
¨ç§° |
| | | String dcName = fieldSetEntity.getString("asr03"); |
| | | //è·åå
¬å¸çuuid |
| | | String companyUuid = this.getSuperiorCompanyUuid(dcName); |
| | | String value = postHierarchyMap.get(companyUuid); |
| | | if(!BaseUtil.strIsNull(value)){ |
| | | if(value.contains(sr15)) { |
| | | continue; |
| | | }else { |
| | | postHierarchyMap.put(companyUuid, value+","+sr15); |
| | | } |
| | | }else { |
| | | postHierarchyMap.put(companyUuid, sr15); |
| | | } |
| | | FieldSetEntity levelsSet = baseDao.getFieldSetEntity("product_sys_org_levels",companyUuid,false); |
| | | //å
¬å¸åç§° |
| | | String levelName = levelsSet.getString("org_level_name"); |
| | | //ä¸çº§å
¬å¸uuid |
| | | field.setValue("org_level_uuid",companyUuid); |
| | | //å²ä½ç级 |
| | | field.setValue("job_grade_class", sr15); |
| | | field.setValue("is_used", 1); |
| | | //åç§° |
| | | field.setValue("job_grade_name",sr15+"级å²ä½"); |
| | | //级å«çç¼ç |
| | | field.setValue("job_grade_shortcode", sr15); |
| | | //说æ |
| | | field.setValue("remark", levelName+"ä¸ç"+sr15+"级å²ä½"); |
| | | field.setValue("sequence", sr15); |
| | | this.userAndTime(field); |
| | | baseDao.add(field); |
| | | } |
| | | } |
| | | /** å¤å¶å个æä»¶ |
| | | * @param oldPath String åæä»¶è·¯å¾ å¦ï¼c:/fqf.txt |
| | | * @param newPath String å¤å¶åè·¯å¾ å¦ï¼f:/fqf.txt |
| | | * @return boolean |
| | | */ |
| | | public Boolean copyFile(String oldPath, String newPath) { |
| | | Boolean status = false; |
| | | try { |
| | | BufferedInputStream in = FileUtil.getInputStream(oldPath); |
| | | BufferedOutputStream out = FileUtil.getOutputStream(newPath); |
| | | IoUtil.copy(in, out, IoUtil.DEFAULT_BUFFER_SIZE); |
| | | status = true; |
| | | out.close(); |
| | | in.close(); |
| | | }catch (Exception e){ |
| | | e.getStackTrace(); |
| | | }finally { |
| | | return status; |
| | | } |
| | | } |
| | | |
| | | /** å é¤å个æä»¶ |
| | | * @param fileName 被å 餿件çæä»¶å |
| | | * @return å个æä»¶å 餿åè¿åtrue,å¦åè¿åfalse |
| | | */ |
| | | public Boolean deleteFile(String fileName){ |
| | | File file = new File(fileName); |
| | | if(file.isFile()){ |
| | | file.delete(); |
| | | System.out.println("å é¤å个æä»¶"+fileName+"æåï¼"); |
| | | return true; |
| | | }else{ |
| | | System.out.println("å é¤å个æä»¶"+fileName+"失败ï¼"); |
| | | return false; |
| | | } |
| | | } |
| | | //æºæç±»å 0 å
¬å¸ 1é¨é¨ |
| | | String orgLevelType = fieldSetEntity1.getString("org_level_type"); |
| | | //æ¥è¯¢å²ä½ç级 |
| | | String sr15 = fieldSetEntity.getString("sr15"); |
| | | FieldSetEntity fieldSet = baseDao.getFieldSetEntityByFilter("product_sys_job_post_grades", " org_level_uuid = ? and job_grade_class = ? ", new String[]{org_level_uuid, sr15}, false); |
| | | //å²ä½ç级 |
| | | String postGradesUuid = fieldSet.getUUID(); |
| | | field.setValue("job_post_grades_uuid", postGradesUuid); |
| | | //æåºææ¶åå²ä½id æ¹ä¾¿äººåæ¥è¯¢å°å²ä½id |
| | | Integer sequence = fieldSetEntity.getInteger("sr00"); |
| | | field.setValue("sequence", sequence); |
| | | this.userAndTime(field); |
| | | String org_uuid = fieldSetEntity1.getUUID(); |
| | | String code = fieldSetEntity1.getString("org_level_code"); |
| | | //0为å
¬å¸ è¥ä¸ºå
¬å¸å°±å建å¤ä¸ªç¸åå²ä½æ¥å
³èå
¬å¸ä¸ææé¨é¨ |
| | | if ("0".equals(orgLevelType)) { |
| | | DataTableEntity dataTable = baseDao.listTable("product_sys_org_levels", " org_level_type = 1 and org_level_uuid = ? ", new String[]{org_uuid}); |
| | | if (!BaseUtil.dataTableIsEmpty(dataTable)) { |
| | | for (int j = 0; j < dataTable.getRows(); j++) { |
| | | field.setValue("dept_uuid", dataTable.getString(j, "uuid")); |
| | | field.remove("uuid"); |
| | | FieldSetEntity fieldSetByFilter = baseDao.getFieldSetByFilter("product_sys_job_posts", " job_post_name = ? and org_level_uuid = ? and dept_uuid=?", new String[]{fieldSetEntity.getString("sr01"), org_level_uuid, field.getString("dept_uuid")}, false); |
| | | if (fieldSetByFilter != null && !StringUtils.isEmpty(fieldSetByFilter.getUUID())) { |
| | | continue; |
| | | } |
| | | //éè¿æ°å¢æ¹æ³æ·»å å²ä½ |
| | | String uuid = baseDao.add(field); |
| | | //æ·»å å²ä½ä¸å²ä½ç级å
³ç³»æ å°æ°æ®è¡¨ |
| | | FieldSetEntity postsAndClass = new FieldSetEntity(); |
| | | postsAndClass.setTableName("product_sys_job_posts_grades_mapping"); |
| | | //å²ä½ç级uuid |
| | | postsAndClass.setValue("job_grade_uuid", postGradesUuid); |
| | | //å²ä½uuid |
| | | postsAndClass.setValue("job_post_uuid", uuid); |
| | | this.userAndTime(postsAndClass); |
| | | baseDao.add(postsAndClass); |
| | | } |
| | | } else { |
| | | //åä½ä¸è¥æ²¡æé¨é¨ å建ä¸ä¸ªèæé¨é¨ |
| | | String orgLevelName = fieldSetEntity1.getString("org_level_name") + "ä¸é¨é¨"; |
| | | FieldSetEntity newDeptFse = baseDao.getFieldSetByFilter("product_sys_org_levels", "org_level_name = ? and org_level_type = 1 and org_level_uuid = ?", new String[]{orgLevelName, org_uuid}, false); |
| | | if (FieldSetEntity.isEmpty(newDeptFse)) { |
| | | FieldSetEntity departmentFse = new FieldSetEntity(); |
| | | departmentFse.setTableName("product_sys_org_levels"); |
| | | //é¨é¨åç§° |
| | | departmentFse.setValue("sg01", fieldSetEntity1.getString("org_level_name") + "ä¸é¨é¨"); |
| | | //é¨é¨ç¼ç |
| | | departmentFse.setValue("sg10", fieldSetEntity1.getString("org_level_shortcode") + "01"); |
| | | //æåº |
| | | departmentFse.setValue("sg00", fieldSetEntity1.getString("sequence") + "01"); |
| | | //ä¿ååçé¨é¨ |
| | | newDeptFse = this.addDepartment(departmentFse, code, org_uuid); |
| | | } |
| | | //æ¾å
¥é¨é¨uuid |
| | | field.setValue("dept_uuid", newDeptFse.getUUID()); |
| | | FieldSetEntity fieldSetByFilter = baseDao.getFieldSetByFilter("product_sys_job_posts", " job_post_name = ? and org_level_uuid = ? and dept_uuid=?", new String[]{fieldSetEntity.getString("sr01"), org_level_uuid, field.getString("dept_uuid")}, false); |
| | | if (fieldSetByFilter != null && !StringUtils.isEmpty(fieldSetByFilter.getUUID())) { |
| | | continue; |
| | | } |
| | | //éè¿æ°å¢æ¹æ³æ·»å å²ä½ |
| | | String uuid = baseDao.add(field); |
| | | //æ·»å å²ä½ä¸å²ä½ç级å
³ç³»æ å°æ°æ®è¡¨ |
| | | FieldSetEntity postsAndClass = new FieldSetEntity(); |
| | | postsAndClass.setTableName("product_sys_job_posts_grades_mapping"); |
| | | //å²ä½ç级uuid |
| | | postsAndClass.setValue("job_grade_uuid", postGradesUuid); |
| | | //å²ä½uuid |
| | | postsAndClass.setValue("job_post_uuid", uuid); |
| | | this.userAndTime(postsAndClass); |
| | | baseDao.add(postsAndClass); |
| | | } |
| | | //1为é¨é¨ |
| | | } else { |
| | | field.setValue("dept_uuid", org_uuid); |
| | | FieldSetEntity fieldSetByFilter = baseDao.getFieldSetByFilter("product_sys_job_posts", " job_post_name = ? and org_level_uuid = ? and dept_uuid=?", new String[]{fieldSetEntity.getString("sr01"), org_level_uuid, field.getString("dept_uuid")}, false); |
| | | if (fieldSetByFilter != null && !StringUtils.isEmpty(fieldSetByFilter.getUUID())) { |
| | | continue; |
| | | } |
| | | //éè¿æ°å¢æ¹æ³æ·»å å²ä½ |
| | | String uuid = baseDao.add(field); |
| | | //æ·»å å²ä½ä¸å²ä½ç级å
³ç³»æ å°æ°æ®è¡¨ |
| | | FieldSetEntity postsAndClass = new FieldSetEntity(); |
| | | postsAndClass.setTableName("product_sys_job_posts_grades_mapping"); |
| | | //å²ä½ç级uuid |
| | | postsAndClass.setValue("job_grade_uuid", postGradesUuid); |
| | | //å²ä½uuid |
| | | postsAndClass.setValue("job_post_uuid", uuid); |
| | | this.userAndTime(postsAndClass); |
| | | baseDao.add(postsAndClass); |
| | | } |
| | | } |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | /** |
| | | * æ·»å å建人åå建æ¶é´ |
| | | * |
| | | * @param fieldSetEntity |
| | | */ |
| | | public void userAndTime(FieldSetEntity fieldSetEntity) { |
| | | fieldSetEntity.setValue("created_by", SpringMVCContextHolder.getCurrentUserId()); |
| | | fieldSetEntity.setValue("created_utc_datetime", new Date()); |
| | | } |
| | | |
| | | /** |
| | | * æ·»å å²ä½ç级 |
| | | */ |
| | | public void postGrades(DataTableEntity data) { |
| | | //å
¬å¸uuid å²ä½å±çº§é |
| | | Map<String, String> postHierarchyMap = Maps.newHashMap(); |
| | | //éè¿å
¬å¸uuidæ¥ååå²ä½ç级 |
| | | for (int i = 0; i < data.getRows(); i++) { |
| | | FieldSetEntity fieldSetEntity = data.getFieldSetEntity(i); |
| | | FieldSetEntity field = new FieldSetEntity(); |
| | | field.setTableName("product_sys_job_post_grades"); |
| | | //å²ä½å±çº§ è¶å°ç级è¶å¤§ |
| | | String sr15 = fieldSetEntity.getString("sr15"); |
| | | //转æ¢åé¨é¨æå
¬å¸å
¨ç§° |
| | | String dcName = fieldSetEntity.getString("asr03"); |
| | | //è·åå
¬å¸çuuid |
| | | String companyUuid = this.getSuperiorCompanyUuid(dcName); |
| | | String value = postHierarchyMap.get(companyUuid); |
| | | if (!BaseUtil.strIsNull(value)) { |
| | | if (value.contains(sr15)) { |
| | | continue; |
| | | } else { |
| | | postHierarchyMap.put(companyUuid, value + "," + sr15); |
| | | } |
| | | } else { |
| | | postHierarchyMap.put(companyUuid, sr15); |
| | | } |
| | | FieldSetEntity levelsSet = baseDao.getFieldSetEntity("product_sys_org_levels", companyUuid, false); |
| | | //å
¬å¸åç§° |
| | | String levelName = levelsSet.getString("org_level_name"); |
| | | //ä¸çº§å
¬å¸uuid |
| | | field.setValue("org_level_uuid", companyUuid); |
| | | //å²ä½ç级 |
| | | field.setValue("job_grade_class", sr15); |
| | | field.setValue("is_used", 1); |
| | | //åç§° |
| | | field.setValue("job_grade_name", sr15 + "级å²ä½"); |
| | | //级å«çç¼ç |
| | | field.setValue("job_grade_shortcode", sr15); |
| | | //说æ |
| | | field.setValue("remark", levelName + "ä¸ç" + sr15 + "级å²ä½"); |
| | | field.setValue("sequence", sr15); |
| | | this.userAndTime(field); |
| | | baseDao.add(field); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * å¤å¶å个æä»¶ |
| | | * |
| | | * @param oldPath String åæä»¶è·¯å¾ å¦ï¼c:/fqf.txt |
| | | * @param newPath String å¤å¶åè·¯å¾ å¦ï¼f:/fqf.txt |
| | | * @return boolean |
| | | */ |
| | | public Boolean copyFile(String oldPath, String newPath) { |
| | | Boolean status = false; |
| | | try { |
| | | BufferedInputStream in = FileUtil.getInputStream(oldPath); |
| | | BufferedOutputStream out = FileUtil.getOutputStream(newPath); |
| | | IoUtil.copy(in, out, IoUtil.DEFAULT_BUFFER_SIZE); |
| | | status = true; |
| | | out.close(); |
| | | in.close(); |
| | | } catch (Exception e) { |
| | | e.getStackTrace(); |
| | | } finally { |
| | | return status; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * å é¤å个æä»¶ |
| | | * |
| | | * @param fileName 被å 餿件çæä»¶å |
| | | * @return å个æä»¶å 餿åè¿åtrue, å¦åè¿åfalse |
| | | */ |
| | | public Boolean deleteFile(String fileName) { |
| | | File file = new File(fileName); |
| | | if (file.isFile()) { |
| | | file.delete(); |
| | | System.out.println("å é¤å个æä»¶" + fileName + "æåï¼"); |
| | | return true; |
| | | } else { |
| | | System.out.println("å é¤å个æä»¶" + fileName + "失败ï¼"); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | // File file = new File("D:\\filePackage\\西å®å¸ä½æ¿ä¿éåæ¿å±ç®¡çå±éæ±æ´çV1.0.docx"); |
| | | // File file2 = new File("D:\\filePackage\\西å®å¸ä½æ¿ä¿éåæ¿å±ç®¡ç.docx"); |
| | | // System.out.println(file.exists()); |
| | |
| | | // FeDataDSService feDataDSService = new FeDataDSService(); |
| | | // feDataDSService.copyFile("D:\\OA\\FEGOV\\Media\\2021\\12\\15\\20211215401901\\1`FE#ENC#DA126AF35BB8E57F55C2429BDF7DC7240DF6CC6E227B0B8E", "D:\\filePackage\\????????????????????????.doc"); |
| | | // feDataDSService.getFilesFolder("D:\\OA\\FEGOV\\Media\\2021\\12\\15\\20211215401901"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * è·åæä»¶åç§° ææ°ä¿®æ¹æ¶é´ map |
| | | * @param path |
| | | * @return |
| | | */ |
| | | public Map<String, String> getFilesFolder(String path){ |
| | | File file = new File(path); //è·åå
¶file对象 |
| | | File[] fs = file.listFiles(); |
| | | if(fs == null){ |
| | | logger.info("æªæ¾å°éä»¶ç´æ¥è¿ånull"); |
| | | return null; |
| | | } |
| | | Map<String, String> fileTimeName = Maps.newHashMap(); |
| | | for(File f:fs) |
| | | { |
| | | if(f.isFile()) |
| | | { |
| | | String fileName = f.toString().replace(path+"\\",""); |
| | | fileTimeName.put(this.set_fileInfo(f.toString()),fileName); |
| | | } |
| | | } |
| | | return fileTimeName; |
| | | } |
| | | /** |
| | | * è·åæä»¶åç§° ææ°ä¿®æ¹æ¶é´ map |
| | | * |
| | | * @param path |
| | | * @return |
| | | */ |
| | | public Map<String, String> getFilesFolder(String path) { |
| | | File file = new File(path); //è·åå
¶file对象 |
| | | File[] fs = file.listFiles(); |
| | | if (fs == null) { |
| | | logger.info("æªæ¾å°éä»¶ç´æ¥è¿ånull"); |
| | | return null; |
| | | } |
| | | Map<String, String> fileTimeName = Maps.newHashMap(); |
| | | for (File f : fs) { |
| | | if (f.isFile()) { |
| | | String fileName = f.toString().replace(path + "\\", ""); |
| | | fileTimeName.put(this.set_fileInfo(f.toString()), fileName); |
| | | } |
| | | } |
| | | return fileTimeName; |
| | | } |
| | | |
| | | /** |
| | | * è·åæä»¶æè¿ä¿®æ¹æ¶é´ |
| | | * @param file_name æä»¶å
¨è·¯å¾ |
| | | * @return |
| | | */ |
| | | public String set_fileInfo(String file_name) |
| | | { |
| | | Path path = Paths.get(file_name); |
| | | BasicFileAttributeView basicview = Files.getFileAttributeView(path, BasicFileAttributeView.class, LinkOption.NOFOLLOW_LINKS); |
| | | BasicFileAttributes attr; |
| | | String time = null; |
| | | try |
| | | { |
| | | /** |
| | | * è·åæä»¶æè¿ä¿®æ¹æ¶é´ |
| | | * |
| | | * @param file_name æä»¶å
¨è·¯å¾ |
| | | * @return |
| | | */ |
| | | public String set_fileInfo(String file_name) { |
| | | Path path = Paths.get(file_name); |
| | | BasicFileAttributeView basicview = Files.getFileAttributeView(path, BasicFileAttributeView.class, LinkOption.NOFOLLOW_LINKS); |
| | | BasicFileAttributes attr; |
| | | String time = null; |
| | | try { |
| | | |
| | | attr = basicview.readAttributes(); |
| | | //å建æ¶é´ |
| | | Date CreateTimeDate= new Date(attr.creationTime().toMillis()); |
| | | //䏿¬¡ä¿®æ¹æ¶é´ * |
| | | Date lastmodfiyTimeDate=new Date(attr.lastModifiedTime().toMillis()); |
| | | SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | time = df.format(lastmodfiyTimeDate); |
| | | } catch (Exception e) |
| | | { |
| | | e.printStackTrace(); |
| | | } |
| | | return time; |
| | | } |
| | | attr = basicview.readAttributes(); |
| | | //å建æ¶é´ |
| | | Date CreateTimeDate = new Date(attr.creationTime().toMillis()); |
| | | //䏿¬¡ä¿®æ¹æ¶é´ * |
| | | Date lastmodfiyTimeDate = new Date(attr.lastModifiedTime().toMillis()); |
| | | SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | time = df.format(lastmodfiyTimeDate); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | return time; |
| | | } |
| | | |
| | | public void clearJobList(){ |
| | | DataTableEntity dataTableEntity = baseDao.listTable("product_sys_flow_node"," default_posts is not null AND default_posts != '' ",new String[]{}); |
| | | for (int i = 0; i < dataTableEntity.getRows(); i++) { |
| | | FieldSetEntity fse = dataTableEntity.getFieldSetEntity(i); |
| | | String default_posts = fse.getString("default_posts"); |
| | | if(!BaseUtil.strIsNull(default_posts)){ |
| | | String[] postUuids = default_posts.split(","); |
| | | Set<String> postSet = Sets.newHashSet(); |
| | | public void clearJobList() { |
| | | DataTableEntity dataTableEntity = baseDao.listTable("product_sys_flow_node", " default_posts is not null AND default_posts != '' ", new String[]{}); |
| | | for (int i = 0; i < dataTableEntity.getRows(); i++) { |
| | | FieldSetEntity fse = dataTableEntity.getFieldSetEntity(i); |
| | | String default_posts = fse.getString("default_posts"); |
| | | if (!BaseUtil.strIsNull(default_posts)) { |
| | | String[] postUuids = default_posts.split(","); |
| | | Set<String> postSet = Sets.newHashSet(); |
| | | // Set<String> postSet = Arrays.stream(postUuids).collect(Collectors.toSet()); |
| | | for (int j = 0; j < postUuids.length; j++) { |
| | | DataTableEntity staffsData = baseDao.listTable("product_sys_staffs"," job_post_uuid = ? ",new String[]{postUuids[j]}); |
| | | //æäººå°±ä¿çå²ä½uuid |
| | | if(!BaseUtil.dataTableIsEmpty(staffsData)){ |
| | | postSet.add(postUuids[j]); |
| | | } |
| | | } |
| | | if(postSet.size() > 0){ |
| | | fse.setValue("default_posts", StringUtils.join(postSet, ",")); |
| | | }else { |
| | | fse.setValue("default_posts", null); |
| | | } |
| | | baseDao.update(fse); |
| | | } |
| | | } |
| | | //æ¸
空å¤ä½çå²ä½æ°æ® |
| | | baseDao.executeUpdate("DELETE FROM product_sys_job_posts WHERE uuid not in (SELECT job_post_uuid FROM product_sys_staffs);"); |
| | | //å²ä½å
³è |
| | | baseDao.executeUpdate("DELETE FROM product_sys_job_posts_grades_mapping WHERE job_post_uuid not in (SELECT job_post_uuid FROM product_sys_staffs);"); |
| | | } |
| | | for (int j = 0; j < postUuids.length; j++) { |
| | | DataTableEntity staffsData = baseDao.listTable("product_sys_staffs", " job_post_uuid = ? ", new String[]{postUuids[j]}); |
| | | //æäººå°±ä¿çå²ä½uuid |
| | | if (!BaseUtil.dataTableIsEmpty(staffsData)) { |
| | | postSet.add(postUuids[j]); |
| | | } |
| | | } |
| | | if (postSet.size() > 0) { |
| | | fse.setValue("default_posts", StringUtils.join(postSet, ",")); |
| | | } else { |
| | | fse.setValue("default_posts", null); |
| | | } |
| | | baseDao.update(fse); |
| | | } |
| | | } |
| | | //æ¸
空å¤ä½çå²ä½æ°æ® |
| | | baseDao.executeUpdate("DELETE FROM product_sys_job_posts WHERE uuid not in (SELECT job_post_uuid FROM product_sys_staffs);"); |
| | | //å²ä½å
³è |
| | | baseDao.executeUpdate("DELETE FROM product_sys_job_posts_grades_mapping WHERE job_post_uuid not in (SELECT job_post_uuid FROM product_sys_staffs);"); |
| | | } |
| | | |
| | | } |