Commit 1ac4cb18 authored by 赵啸非's avatar 赵啸非

添加用户同步接口

parent f1f693b5
package com.mortals.xhx.daemon.task;
import com.alibaba.fastjson.JSON;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.xhx.base.system.user.model.UserEntity;
import com.mortals.xhx.base.system.user.service.UserService;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.user.UserPdu;
import com.mortals.xhx.common.utils.BeanUtil;
import com.mortals.xhx.feign.user.IUserFeign;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.beanutils.BeanUtilsBean;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.List;
/**
* 同步用户
*/
@Slf4j
@Service("SyncUserTask")
public class SyncUserTaskImpl implements ITaskExcuteService {
@Autowired
private IUserFeign userFeign;
@Autowired
private UserService userService;
@Override
public void excuteTask(ITask task) throws AppException {
UserPdu userPdu = new UserPdu();
userPdu.setPage(1);
userPdu.setSize(-1);
Rest<RespData<List<UserPdu>>> list = userFeign.list(userPdu);
//更新本地用户信息,并且更新用户树
list.getData().getData().forEach(user -> {
//查询用户是否存在,
UserEntity userEntity = userService.get(user.getId());
if (ObjectUtils.isEmpty(userEntity)) {
//新增
UserEntity entity = new UserEntity();
entity.initAttrValue();
BeanUtils.copyProperties(user, entity, BeanUtil.getNullPropertyNames(user));
userService.save(entity);
}
});
// log.info("syncUserResp:{}", JSON.toJSONString(list));
// return;
// UserPdu userPdu = new UserPdu();
// userPdu.setPage(1);
// userPdu.setSize(-1);
// String resp = userFeign.findAllUser(userPdu);
// log.info("resp:{}",resp);
// JSONObject jsonObject = JSONObject.parseObject(resp);
// if (jsonObject.getInteger("code") == 1) {
// List<UserPdu> userList = jsonObject.getJSONObject("data").getObject("data", new TypeReference<List<UserPdu>>() {
// });
//
// log.info("userList:{}", JSON.toJSONString(userList));
//
// }
}
@Override
public void stopTask(ITask task) throws AppException {
}
}
package com.mortals.xhx.common.pdu;
import com.mortals.framework.model.PageInfo;
import lombok.Data;
/**
* @author: zxfei
* @date: 2022/7/13 14:17
* @description:
**/
@Data
public class RespData<T> {
private T data;
private T entity;
private PageInfo pageInfo;
public static void main(String[] args) {
String resp="";
//JSON.parseObject()
}
}
package com.mortals.xhx.feign.user; package com.mortals.xhx.feign.user;
import com.mortals.xhx.common.pdu.RespData;
import com.mortals.xhx.common.pdu.user.UserPdu;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.mortals.framework.common.Rest; import com.mortals.framework.common.Rest;
import com.mortals.xhx.common.pdu.user.UserPdu;
import com.mortals.xhx.feign.IFeign; import com.mortals.xhx.feign.IFeign;
import feign.hystrix.FallbackFactory; import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -10,6 +11,8 @@ import org.springframework.cloud.openfeign.FeignClient; ...@@ -10,6 +11,8 @@ import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List;
/** /**
* 用户信息业务 Feign接口 * 用户信息业务 Feign接口
* @author zxfei * @author zxfei
...@@ -26,7 +29,7 @@ public interface IUserFeign extends IFeign { ...@@ -26,7 +29,7 @@ public interface IUserFeign extends IFeign {
* @return * @return
*/ */
@PostMapping(value = "/user/list") @PostMapping(value = "/user/list")
String list(@RequestBody UserPdu userPdu); Rest<RespData<List<UserPdu>>> list(@RequestBody UserPdu userPdu);
/** /**
...@@ -36,7 +39,7 @@ public interface IUserFeign extends IFeign { ...@@ -36,7 +39,7 @@ public interface IUserFeign extends IFeign {
* @return * @return
*/ */
@GetMapping(value = "/user/info") @GetMapping(value = "/user/info")
String info(@RequestParam(value = "id") Long id); Rest<UserPdu> info(@RequestParam(value = "id") Long id);
/** /**
* 删除用户信息业务 * 删除用户信息业务
...@@ -45,7 +48,7 @@ public interface IUserFeign extends IFeign { ...@@ -45,7 +48,7 @@ public interface IUserFeign extends IFeign {
* @return * @return
*/ */
@GetMapping(value = "/user/delete") @GetMapping(value = "/user/delete")
String delete(Long[] ids,@RequestHeader("Authorization") String authorization); Rest<Void> delete(Long[] ids,@RequestHeader("Authorization") String authorization);
/** /**
...@@ -55,17 +58,13 @@ public interface IUserFeign extends IFeign { ...@@ -55,17 +58,13 @@ public interface IUserFeign extends IFeign {
* @return * @return
*/ */
@PostMapping(value = "/user/save") @PostMapping(value = "/user/save")
String save(@RequestBody UserPdu userPdu,@RequestHeader("Authorization") String authorization); Rest<RespData<UserPdu>> save(@RequestBody UserPdu userPdu,@RequestHeader("Authorization") String authorization);
@PostMapping(value = "/login/login")
String portalLogin(@RequestBody UserPdu userPdu);
/**
* 查询用户列表
*
* @param userPdu
* @return
*/
@PostMapping("/api/user/findAllUser")
String findAllUser(@RequestBody UserPdu userPdu);
} }
...@@ -77,28 +76,28 @@ class UserFeignFallbackFactory implements FallbackFactory<IUserFeign> { ...@@ -77,28 +76,28 @@ class UserFeignFallbackFactory implements FallbackFactory<IUserFeign> {
public IUserFeign create(Throwable t) { public IUserFeign create(Throwable t) {
return new IUserFeign() { return new IUserFeign() {
@Override @Override
public String list(UserPdu userPdu) { public Rest<RespData<List<UserPdu>>> list(UserPdu userPdu) {
return JSON.toJSONString(Rest.fail("暂时无法获取用户信息业务列表,请稍后再试!")); return Rest.fail("暂时无法获取用户信息业务列表,请稍后再试!");
} }
@Override @Override
public String info(Long id) { public Rest<UserPdu> info(Long id) {
return JSON.toJSONString(Rest.fail("暂时无法获取用户信息业务详细,请稍后再试!")); return Rest.fail("暂时无法获取用户信息业务详细,请稍后再试!");
} }
@Override @Override
public String delete(Long[] ids, String authorization) { public Rest<Void> delete(Long[] ids, String authorization) {
return JSON.toJSONString(Rest.fail("暂时无法删除用户信息业务,请稍后再试!")); return Rest.fail("暂时无法删除用户信息业务,请稍后再试!");
} }
@Override @Override
public String save(UserPdu userPdu, String authorization) { public Rest<RespData<UserPdu>> save(UserPdu userPdu, String authorization) {
return JSON.toJSONString(Rest.fail("暂时无法保存用户信息业务,请稍后再试!")); return Rest.fail("暂时无法保存用户信息业务,请稍后再试!");
} }
@Override @Override
public String findAllUser(UserPdu userPdu) { public String portalLogin(UserPdu userPdu) {
return JSON.toJSONString(Rest.fail("暂时无法获取用户信息业务列表,请稍后再试!")); return JSON.toJSONString(Rest.fail("登录失败!"));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment