fetch:机构人员bug

This commit is contained in:
root
2021-07-06 17:30:30 +08:00
parent 51bd89fc13
commit 1ea0d09cb0
13 changed files with 193 additions and 39 deletions
@@ -63,6 +63,11 @@ public class TsUserController extends BaseController<TsUser> {
return Result.success(resources);
}
@ApiOperation("导入人员数据")
@GetMapping("/import")
public ResponseMessage<Object> importUser() throws Exception {
tsUserService.parseUser();
return Result.success();
}
}
@@ -0,0 +1,21 @@
package com.adc.da.slrs.sarUser.entity;
import lombok.Data;
@Data
public class SyncUser {
private String userid;
private String name;
private String gender;
private String givenName;
private String mail;
private String mobile;
private String title;
private String employeeNumber;
private String orgNumber;
private String orgName;
public static TsUser toUser(SyncUser syncUser){
return new TsUser(syncUser.getUserid(),syncUser.getName(),syncUser.getGender(),syncUser.getMobile(),syncUser.getMail(),syncUser.getOrgName(),syncUser.getOrgNumber(),syncUser.getTitle());
}
}
@@ -4,6 +4,7 @@ import com.adc.da.base.entity.BaseEntity;
import java.math.BigDecimal;
import com.adc.da.slrs.sarPosition.entity.TsPosition;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.sql.Timestamp;
@@ -42,7 +43,7 @@ public class TsUser extends BaseEntity {
@ApiModelProperty(value = "主键Id")
@NotNull(message = "userId不能为空",groups = {disable.class})
@TableId(value = "USID")
@TableId(value = "USID",type = IdType.UUID)
private String userId;
@ApiModelProperty(value = "帐户")
@@ -141,5 +142,17 @@ public class TsUser extends BaseEntity {
@TableField(exist = false)
private List<TsPosition> positions;
public TsUser() {
}
public TsUser(String account, String uname, String sex, String phone, String email, String institutionName, String institutionId, String positionName) {
this.account = account;
this.uname = uname;
this.sex = sex;
this.phone = phone;
this.email = email;
this.institutionName = institutionName;
this.institutionId = institutionId;
this.positionName = positionName;
}
}
@@ -64,4 +64,9 @@ public interface ITsUserService extends IService<TsUser> {
public List<SarMenu> getMenusByUserId(String userId);
List<String> getResourceId(TsResource tsResource);
/**
* 导入人员数据
*/
void parseUser() throws Exception;
}
@@ -5,16 +5,24 @@ import com.adc.da.http.Result;
import com.adc.da.login.util.UserUtils;
import com.adc.da.slrs.sarMenu.entity.SarMenu;
import com.adc.da.slrs.sarMenu.service.ISarMenuService;
import com.adc.da.slrs.sarPosition.dao.TsPositionDao;
import com.adc.da.slrs.sarPosition.entity.TsPosition;
import com.adc.da.slrs.sarPosition.service.ITsPositionService;
import com.adc.da.slrs.sarResource.entity.TsResource;
import com.adc.da.slrs.sarResource.service.ITsResourceService;
import com.adc.da.slrs.sarRole.service.ITsRoleService;
import com.adc.da.slrs.sarUser.entity.SyncUser;
import com.adc.da.slrs.sarUser.entity.TsUser;
import com.adc.da.slrs.sarUser.dao.TsUserDao;
import com.adc.da.slrs.sarUser.entity.UserPositionVO;
import com.adc.da.slrs.sarUser.service.ITsUserService;
import com.adc.da.sync.service.SyncUserService;
import com.adc.da.sys.entity.UserEO;
import com.adc.da.utils.util.ListUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
@@ -45,8 +53,10 @@ public class TsUserServiceImpl extends ServiceImpl<TsUserDao, TsUser> implements
private ISarMenuService sarMenuService;
@Autowired
private ITsResourceService tsResourceService;
// @Autowired
// private ISarUserPersonalMenuService sarUserPersonalMenuService;
@Autowired
private SyncUserService syncUserService;
@Autowired
private TsPositionDao tsPositionDao;
/**
* 通过机构ID查询人员
@@ -184,4 +194,33 @@ public class TsUserServiceImpl extends ServiceImpl<TsUserDao, TsUser> implements
return tsRoleService.getResourceIdsByRoleIds(roleIds);
}
/**
* 导入人员数据
*/
@Override
public void parseUser() throws Exception {
List<String> jsons=syncUserService.syncFotonUser();
for(String json:jsons){
JSONObject jsonObject= JSON.parseObject(json);
JSONArray jsonArray=jsonObject.getJSONArray("results");
List<SyncUser> syncUsers=jsonArray.toJavaList(SyncUser.class);
for(SyncUser syncUser:syncUsers){
QueryWrapper<TsPosition> positionQueryWrapper=new QueryWrapper<>();
positionQueryWrapper.eq("name",syncUser.getTitle());
TsPosition tsPosition=tsPositionDao.selectOne(positionQueryWrapper);
if(tsPosition==null){
tsPosition=new TsPosition();
tsPosition.setName(syncUser.getTitle());
tsPosition.setType("1");
tsPositionDao.insert(tsPosition);
}
TsUser tsUser=SyncUser.toUser(syncUser);
tsUser.setPositionId(tsPosition.getId());
tsUserDao.insert(tsUser);
}
}
System.out.println(jsons.size());
}
}