Browse Source

角色同步

dev_kxc
ljf 1 year ago
parent
commit
bdefb1d78e
  1. 38
      jwtech-admin/src/main/java/com/kms/config/WaterPortal.java
  2. 1
      jwtech-admin/src/main/java/com/kms/config/WaterRequestUtil.java
  3. 24
      jwtech-admin/src/main/java/com/kms/config/scheduled/WaterScheduled.java
  4. 24
      jwtech-admin/src/main/java/com/kms/config/singleDomain/SingleRole.java
  5. 1
      jwtech-framework/src/main/java/com/jianwei/common/core/domain/entity/SysDept.java
  6. 9
      jwtech-framework/src/main/java/com/jianwei/common/core/domain/entity/SysRole.java

38
jwtech-admin/src/main/java/com/kms/config/WaterPortal.java

@ -35,6 +35,7 @@ public class WaterPortal {
static String loginUrl = ul + "/uaa/social/sso";
static String getUserUrl = ul + "/usrc/open-api/user/page";
static String orgUrl = ul + "/usrc/open-api/org/orgPage";
static String roleUrl = ul + "/usrc/open-api/role/page";
public static void main(String[] args) throws Exception {
@ -46,17 +47,17 @@ public class WaterPortal {
String signature = timestamp + paasToken + nonce + timestamp;
signature = SHACoder.encodeSHA256Hex(signature).toUpperCase();
HttpResponse httpGet = HttpRequest.get(loginUrl)
.header("x-tsp-target",paasId)
.header("x-tsp-uid-type","id")
.header("x-tsp-uid","20231207000003")
.header("x-tsp-paasid",paasId)
.header("x-tsp-signature",signature)
.header("x-tsp-timestamp",timestamp)
.header("x-tsp-serviceid","DGSP_1606192265703567361")
.header("x-tsp-nonce", nonce)
.header("x-tsp-appsecret","92c8749c5a424758ba550f3cc79cf882")
.execute();
// HttpResponse httpGet = HttpRequest.get(loginUrl)
// .header("x-tsp-target",paasId)
// .header("x-tsp-uid-type","id")
// .header("x-tsp-uid","20231207000003")
// .header("x-tsp-paasid",paasId)
// .header("x-tsp-signature",signature)
// .header("x-tsp-timestamp",timestamp)
// .header("x-tsp-serviceid","DGSP_1606192265703567361")
// .header("x-tsp-nonce", nonce)
// .header("x-tsp-appsecret","92c8749c5a424758ba550f3cc79cf882")
// .execute();
//获取用户
// HashMap<String, Object> hashMap = new HashMap<>();
@ -89,6 +90,21 @@ public class WaterPortal {
// .body(JSONObject.toJSONString(hashMap))
// .execute();
//获取角色
HashMap<String, Object> hashMap = new HashMap<>();
hashMap.put("page",1);
hashMap.put("size",100);
hashMap.put("systemCode","sgc-jg");
HttpResponse httpGet = HttpRequest.post(roleUrl)
.header("x-tsp-paasid","1732703111547482114")
.header("x-tsp-signature",signature)
.header("x-tsp-timestamp",timestamp)
.header("x-tsp-serviceid","DGSP_1731517609955848193")
.header("x-tsp-nonce", nonce)
.header("x-tsp-appsecret","e49e175c07fd4bbe90b3c928772fa58f")
.body(JSONObject.toJSONString(hashMap))
.execute();
String body = httpGet.body();
JSONObject jsonObject = JSONObject.parseObject(body);
String records = jsonObject.getJSONObject("data").getString("records");

1
jwtech-admin/src/main/java/com/kms/config/WaterRequestUtil.java

@ -125,7 +125,6 @@ public class WaterRequestUtil {
*/
public WaterResult authUser(String authorization){
log.info("--------请求统一门户用户验证,请求地址为:"+userUrl);
System.out.println("--------请求统一门户用户验证,请求地址为:"+userUrl);
HttpRequest get = createGet(userUrl,authUserServiceId,authUserAppsecret);
HttpResponse response = get.header("Authorization", authorization)
.execute();

24
jwtech-admin/src/main/java/com/kms/config/scheduled/WaterScheduled.java

@ -3,11 +3,14 @@ package com.kms.config.scheduled;
import com.alibaba.fastjson.JSONObject;
import com.jianwei.common.constant.UserConstants;
import com.jianwei.common.core.domain.entity.SysDept;
import com.jianwei.common.core.domain.entity.SysRole;
import com.jianwei.common.utils.password.MD5Util;
import com.kms.common.utils.BaseEntityUtils;
import com.kms.config.WaterRequestUtil;
import com.kms.config.WaterResult;
import com.kms.config.singleDomain.SingleOrg;
import com.kms.system.service.SysDeptService;
import com.kms.system.service.SysRoleService;
import com.kms.system.service.SysUserService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -31,6 +34,8 @@ public class WaterScheduled {
SysUserService userService;
@Autowired
SysDeptService deptService;
@Autowired
SysRoleService roleService;
// @Scheduled
@ -50,7 +55,15 @@ public class WaterScheduled {
String records = JSONObject.parseObject(data).getString("records");
List<SingleOrg> singleOrgs = JSONObject.parseArray(records, SingleOrg.class);
for (SingleOrg singleOrg : singleOrgs) {
SysDept byId = deptService.getById(singleOrg.getId());
if(byId!=null){
String md = MD5Util.MD5Encode(singleOrg.toString(), "utf-8");
if(byId.getMd5()!=null&&md.equals(byId.getMd5())){
continue;
}
}
SysDept dept = new SysDept();
dept.setMd5(MD5Util.MD5Encode(singleOrg.toString(), "utf-8"));
BeanUtils.copyProperties(singleOrg,dept);
dept.setXzqhId(singleOrg.getArea());
dept.setXzqhName(singleOrg.getAreaText());
@ -76,7 +89,6 @@ public class WaterScheduled {
{
log.error("新增部门'" + dept.getDeptName() + "'失败,部门名称已存在");
}
// dept.setParentId("100");
deptService.saveOrUpdate(dept);
}
}
@ -84,9 +96,19 @@ public class WaterScheduled {
public void roeScheduled(){
WaterResult rolePage = waterRequestUtil.getRolePage();
String data = rolePage.getData();
String records = JSONObject.parseObject(data).getString("records");
List<SysRole> roles = JSONObject.parseArray(records, SysRole.class);
for (SysRole role : roles) {
SysRole byId = roleService.getById(role.getId());
if(byId!=null){
continue;
}
}
}
}

24
jwtech-admin/src/main/java/com/kms/config/singleDomain/SingleRole.java

@ -0,0 +1,24 @@
package com.kms.config.singleDomain;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class SingleRole {
private String id;
private String area;
private String systemList;
private String code;
private String level;
private String dataConfig;
private String type;
private String category;
private String posts;
private String users;
private String name;
private String businesses;
}

1
jwtech-framework/src/main/java/com/jianwei/common/core/domain/entity/SysDept.java

@ -71,6 +71,7 @@ public class SysDept extends BaseEntity
private String singleSeq;
private String singleCode;
private String singleType;
private String md5;
/** 子部门 */
@TableField(exist = false)

9
jwtech-framework/src/main/java/com/jianwei/common/core/domain/entity/SysRole.java

@ -6,6 +6,7 @@ import javax.validation.constraints.Size;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.jianwei.common.mybaitsplus.NoQuery;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
@ -18,6 +19,7 @@ import com.jianwei.common.core.domain.BaseEntity;
* @author jianwei
*/
@TableName("sys_role")
@Data
public class SysRole extends BaseEntity
{
private static final long serialVersionUID = 1L;
@ -59,6 +61,13 @@ public class SysRole extends BaseEntity
@TableField(exist = false)
private String[] deptIds;
private String area;
private String code;
private String level;
private String dataConfig;
private String type;
private String category;
public SysRole()
{

Loading…
Cancel
Save