@ -93,7 +93,7 @@ public class DingTalkUtil {
}
/ *
功 能 : 获 取 钉 钉 的 SsoToken
功 能 : 获 取 钉 钉 的 SsoToken ( 暂 时 没 用 上 )
作 者 : 黄 海
时 间 : 2023 - 06 - 06
* /
@ -288,60 +288,6 @@ public class DingTalkUtil {
//System.out.println(rsp.getBody());
}
public static void writeDtDeptId ( int orgId , String value ) {
String sql = "update t_base_organization set dingtalk_dept_id=? where org_id=?" ;
Db . update ( sql , value , orgId ) ;
}
public static long getDtDeptId ( int org_id ) {
String sql = "select dingtalk_dept_id from t_base_organization where org_id=?" ;
Record r = Db . findFirst ( sql , org_id ) ;
if ( r . get ( "dingtalk_dept_id" ) = = null ) return 1 ;
return r . get ( "dingtalk_dept_id" ) ;
}
public static Record getOrgByOrgName ( String org_name ) {
String sql = "select org_id,org_name,sort_id from t_base_organization where org_name = ?" ;
return Db . findFirst ( sql , org_name ) ;
}
public static List < Record > getOrgList ( int orgId ) {
// 学校及学校下的部门
String sql = "select org_id,org_name,parent_id,sort_id,dingtalk_dept_id from t_base_organization where bureau_id=? and org_id<>bureau_id order by org_id" ;
List < Record > list = Db . find ( sql , orgId ) ;
return list ;
}
public static void importYptOrg ( String accessToken , int orgId ) throws ApiException {
//1、读取云平台数据, 创建学校
/ *
需 要 先 手 动 执 行 , 对 表 增 加 一 列 , 记 录 钉 钉 的 部 门 ID 号 :
ALTER TABLE ` dsideal_db ` . ` t_base_organization `
ADD COLUMN ` dingtalk_dept_id ` bigint NULL COMMENT ' 钉 钉 中 的 部 门 ID ' AFTER ` zydz ` ,
ADD INDEX ( ` dingtalk_dept_id ` ) ;
* /
//单位需要清空一下这个属性,有枣没枣都打一下子
writeDtDeptId ( orgId , null ) ;
// 学校及学校下的部门
List < Record > list = getOrgList ( orgId ) ;
for ( int i = 0 ; i < list . size ( ) ; i + + ) {
orgId = list . get ( i ) . getInt ( "org_id" ) ;
int parentId = list . get ( i ) . getInt ( "parent_id" ) ;
if ( parentId = = - 1 ) parentId = orgId ;
String dept_name = list . get ( i ) . getStr ( "org_name" ) ;
long dingtalk_dept_id = getDtDeptId ( parentId ) ;
long sortId = list . get ( i ) . getLong ( "sort_id" ) ;
//创建
long dt_dept_id = DingTalkUtil . createDept ( accessToken , dept_name , dingtalk_dept_id , sortId ) ;
//回写
writeDtDeptId ( orgId , String . valueOf ( dt_dept_id ) ) ;
}
}
public static JSONObject getDeptInfo ( String access_token , long deptId ) {
JSONObject jo ;
try {
@ -455,6 +401,15 @@ public class DingTalkUtil {
}
}
/**-----------------------------------------------------下面是数据库操作---------------------------------------------*/
public static List < Record > getOrgList ( int orgId ) {
// 学校及学校下的部门
String sql = "select org_id,org_name,parent_id,sort_id,dingtalk_dept_id from t_base_organization where bureau_id=? and org_id<>bureau_id order by org_id" ;
List < Record > list = Db . find ( sql , orgId ) ;
return list ;
}
public static List < Record > getPersonList ( int bureau_id ) {
String sql = "select t1.person_id,t1.person_name,t2.dingtalk_dept_id from t_base_person as t1 " +
@ -463,4 +418,21 @@ public class DingTalkUtil {
return Db . find ( sql , bureau_id ) ;
}
public static void writeDtDeptId ( int orgId , String value ) {
String sql = "update t_base_organization set dingtalk_dept_id=? where org_id=?" ;
Db . update ( sql , value , orgId ) ;
}
public static long getDtDeptId ( int org_id ) {
String sql = "select dingtalk_dept_id from t_base_organization where org_id=?" ;
Record r = Db . findFirst ( sql , org_id ) ;
if ( r . get ( "dingtalk_dept_id" ) = = null ) return 1 ;
return r . get ( "dingtalk_dept_id" ) ;
}
public static Record getOrgByOrgName ( String org_name ) {
String sql = "select org_id,org_name,sort_id from t_base_organization where org_name = ?" ;
return Db . findFirst ( sql , org_name ) ;
}
}