提交 21e48239 authored 作者: 黄承天's avatar 黄承天

feat(user): 去除了base模块中User和Project的相关类 User和Project应由user模块维护

上级 9366cc51
package org.matrix.database.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
/**
* <p>
*
* </p>
*
* @author matrix
* @since 2022-01-15
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "Project对象", description = "项目")
@TableName(value = "kt_project")
public class Project extends BaseEntity {
@ApiModelProperty("名称")
private String name;
}
package org.matrix.database.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
/**
* <p>
*
* </p>
*
* @author matrix
* @since 2022-01-15
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "User对象", description = "用户")
@TableName(value = "kt_user")
public class User extends BaseEntity{
@ApiModelProperty("名称")
private String name;
@ApiModelProperty("账号")
private String account;
@ApiModelProperty("密码")
private String password;
}
package org.matrix.database.mapper;
import org.matrix.database.entity.Project;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author matrix
* @since 2022-01-15
*/
@Repository
public interface ProjectMapper extends BaseMapper<Project> {
}
package org.matrix.database.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.matrix.database.entity.User;
import org.springframework.stereotype.Repository;
/**
* <p>
* Mapper 接口
* </p>
*
* @author matrix
* @since 2022-01-15
*/
@Repository
public interface UserMapper extends BaseMapper<User> {
}
package org.matrix.database.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.matrix.database.entity.Project;
import org.matrix.database.mapper.ProjectMapper;
import org.matrix.database.service.IProjectService;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author matrix
* @since 2022-01-15
*/
@Service
public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> implements IProjectService {
}
...@@ -5,7 +5,7 @@ import io.swagger.annotations.Api; ...@@ -5,7 +5,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.matrix.local.entity.vo.LoginInfo; import org.matrix.local.entity.vo.LoginInfo;
import org.matrix.local.entity.vo.UserInfo; import org.matrix.local.entity.vo.UserInfo;
import org.matrix.local.service.UserService; import org.matrix.local.service.impl.UserService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
......
package org.matrix.local.entity; package org.matrix.local.entity.relation;
import com.baomidou.mybatisplus.annotation.*; import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
......
...@@ -13,6 +13,6 @@ import org.springframework.stereotype.Repository; ...@@ -13,6 +13,6 @@ import org.springframework.stereotype.Repository;
* @since 2022-01-15 * @since 2022-01-15
*/ */
@Repository @Repository
public interface KsProjectMapper extends BaseMapper<Project> { public interface ProjectMapper extends BaseMapper<Project> {
} }
...@@ -13,5 +13,5 @@ import org.springframework.stereotype.Repository; ...@@ -13,5 +13,5 @@ import org.springframework.stereotype.Repository;
* @since 2022-01-15 * @since 2022-01-15
*/ */
@Repository @Repository
public interface KsUserMapper extends BaseMapper<User> { public interface UserMapper extends BaseMapper<User> {
} }
package org.matrix.local.mapper; package org.matrix.local.mapper.relation;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.matrix.local.entity.UserProject; import org.matrix.local.entity.relation.UserProject;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
/** /**
...@@ -13,5 +13,5 @@ import org.springframework.stereotype.Repository; ...@@ -13,5 +13,5 @@ import org.springframework.stereotype.Repository;
* @since 2022-01-15 * @since 2022-01-15
*/ */
@Repository @Repository
public interface KsUserProjectMapper extends BaseMapper<UserProject> { public interface UserProjectMapper extends BaseMapper<UserProject> {
} }
package org.matrix.database.service; package org.matrix.local.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import org.matrix.database.entity.Project; import org.matrix.local.entity.Project;
/**
* <p>
* 服务类
* </p>
*
* @author matrix
* @since 2022-01-15
*/
public interface IProjectService extends IService<Project> { public interface IProjectService extends IService<Project> {
} }
package org.matrix.local.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.matrix.local.entity.Project;
import org.matrix.local.mapper.ProjectMapper;
import org.matrix.local.service.IProjectService;
import org.springframework.stereotype.Service;
/**
* 项目相关Service
*/
@Service
public class ProjectService extends ServiceImpl<ProjectMapper, Project> implements IProjectService {
}
package org.matrix.local.service; package org.matrix.local.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.SneakyThrows; import lombok.SneakyThrows;
...@@ -8,13 +8,14 @@ import org.bson.Document; ...@@ -8,13 +8,14 @@ import org.bson.Document;
import org.matrix.local.entity.Project; import org.matrix.local.entity.Project;
import org.matrix.local.entity.User; import org.matrix.local.entity.User;
import org.matrix.local.entity.config.UserConfig; import org.matrix.local.entity.config.UserConfig;
import org.matrix.local.entity.UserProject; import org.matrix.local.entity.relation.UserProject;
import org.matrix.local.entity.vo.LoginInfo; import org.matrix.local.entity.vo.LoginInfo;
import org.matrix.local.entity.vo.UserInfo; import org.matrix.local.entity.vo.UserInfo;
import org.matrix.local.enums.ConfigType; import org.matrix.local.enums.ConfigType;
import org.matrix.local.mapper.KsProjectMapper; import org.matrix.local.mapper.ProjectMapper;
import org.matrix.local.mapper.KsUserMapper; import org.matrix.local.mapper.UserMapper;
import org.matrix.local.mapper.KsUserProjectMapper; import org.matrix.local.mapper.relation.UserProjectMapper;
import org.matrix.local.service.IUserService;
import org.matrix.local.util.MD5Util; import org.matrix.local.util.MD5Util;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.mongodb.core.MongoTemplate; import org.springframework.data.mongodb.core.MongoTemplate;
...@@ -35,19 +36,19 @@ import java.util.stream.Collectors; ...@@ -35,19 +36,19 @@ import java.util.stream.Collectors;
import static java.util.Objects.nonNull; import static java.util.Objects.nonNull;
/** /**
* 用户相关接口 * 用户相关Service
*/ */
@Slf4j @Slf4j
@Service @Service
public class UserService extends ServiceImpl<KsUserMapper, User> implements IUserService { public class UserService extends ServiceImpl<UserMapper, User> implements IUserService {
public static final String COLLECTION_NAME = "user_config"; public static final String COLLECTION_NAME = "user_config";
@Autowired @Autowired
private KsUserMapper ksUserMapper; private UserMapper userMapper;
@Autowired @Autowired
private KsProjectMapper ksProjectMapper; private ProjectMapper projectMapper;
@Autowired @Autowired
private KsUserProjectMapper ksUserProjectMapper; private UserProjectMapper userProjectMapper;
@Autowired @Autowired
private MongoTemplate mongoTemplate; private MongoTemplate mongoTemplate;
...@@ -65,7 +66,7 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse ...@@ -65,7 +66,7 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse
Long userId = userConfig.getUserId(); Long userId = userConfig.getUserId();
// 首先查询该用户是否存在,不存在就抛出异常 // 首先查询该用户是否存在,不存在就抛出异常
User dbUser = ksUserMapper.selectById(userId); User dbUser = userMapper.selectById(userId);
if (Objects.isNull(dbUser)) { if (Objects.isNull(dbUser)) {
throw new RuntimeException(String.format("保存用户配置 -- 数据库里没有用户id = %d 的用户!", userId)); throw new RuntimeException(String.format("保存用户配置 -- 数据库里没有用户id = %d 的用户!", userId));
} }
...@@ -119,7 +120,7 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse ...@@ -119,7 +120,7 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse
public boolean login(LoginInfo loginInfo, String sessionId) { public boolean login(LoginInfo loginInfo, String sessionId) {
String account = loginInfo.getAccount(); String account = loginInfo.getAccount();
String password = MD5Util.encode(loginInfo.getPassword()); String password = MD5Util.encode(loginInfo.getPassword());
User user = ksUserMapper.selectOne(Wrappers.<User>lambdaQuery() User user = userMapper.selectOne(Wrappers.<User>lambdaQuery()
.eq(User::getAccount, account) .eq(User::getAccount, account)
.eq(User::getPassword, password)); .eq(User::getPassword, password));
if (nonNull(user)) { if (nonNull(user)) {
...@@ -154,7 +155,7 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse ...@@ -154,7 +155,7 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse
boolean hasLogin = sessionMap.containsKey(sessionId); boolean hasLogin = sessionMap.containsKey(sessionId);
if (hasLogin) { if (hasLogin) {
Long userId = sessionMap.get(sessionId); Long userId = sessionMap.get(sessionId);
User user = ksUserMapper.selectById(userId); User user = userMapper.selectById(userId);
if (nonNull(user)) { if (nonNull(user)) {
return userInfo(user); return userInfo(user);
} else { } else {
...@@ -178,9 +179,9 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse ...@@ -178,9 +179,9 @@ public class UserService extends ServiceImpl<KsUserMapper, User> implements IUse
//-------------------------------private-------------------------------- //-------------------------------private--------------------------------
private UserInfo userInfo(User user) { private UserInfo userInfo(User user) {
List<Project> projects = ksUserProjectMapper.selectList(Wrappers.<UserProject>lambdaQuery().eq(UserProject::getUserId, user.getId())).stream() List<Project> projects = userProjectMapper.selectList(Wrappers.<UserProject>lambdaQuery().eq(UserProject::getUserId, user.getId())).stream()
.map(UserProject::getProjectId) .map(UserProject::getProjectId)
.map(ksProjectMapper::selectById) .map(projectMapper::selectById)
.filter(Objects::nonNull) .filter(Objects::nonNull)
.collect(Collectors.toList()); .collect(Collectors.toList());
return new UserInfo( return new UserInfo(
......
...@@ -2,12 +2,11 @@ package org.matrix.remote.service; ...@@ -2,12 +2,11 @@ package org.matrix.remote.service;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.matrix.actuators.datasource.DataSourceDTO;
import org.matrix.actuators.datasource.IDataSourceService; import org.matrix.actuators.datasource.IDataSourceService;
import org.matrix.local.entity.UserProject; import org.matrix.local.entity.relation.UserProject;
import org.matrix.local.mapper.KsProjectMapper; import org.matrix.local.mapper.ProjectMapper;
import org.matrix.local.mapper.KsUserMapper; import org.matrix.local.mapper.UserMapper;
import org.matrix.local.mapper.KsUserProjectMapper; import org.matrix.local.mapper.relation.UserProjectMapper;
import org.matrix.remote.entity.ZtProject; import org.matrix.remote.entity.ZtProject;
import org.matrix.remote.entity.ZtUser; import org.matrix.remote.entity.ZtUser;
import org.matrix.remote.entity.ZtUserView; import org.matrix.remote.entity.ZtUserView;
...@@ -38,11 +37,11 @@ public class DataAllCollector { ...@@ -38,11 +37,11 @@ public class DataAllCollector {
@Autowired @Autowired
private ZtProjectMapper ztProjectMapper; private ZtProjectMapper ztProjectMapper;
@Autowired @Autowired
private KsUserMapper ksUserMapper; private UserMapper userMapper;
@Autowired @Autowired
private KsProjectMapper ksProjectMapper; private ProjectMapper projectMapper;
@Autowired @Autowired
private KsUserProjectMapper ksUserProjectMapper; private UserProjectMapper userProjectMapper;
@Autowired @Autowired
private TransHelper transHelper; private TransHelper transHelper;
@Autowired @Autowired
...@@ -111,10 +110,10 @@ public class DataAllCollector { ...@@ -111,10 +110,10 @@ public class DataAllCollector {
*/ */
private void saveUser() { private void saveUser() {
dataSourceService.switchMainDataSource(); dataSourceService.switchMainDataSource();
ksUserMapper.delete(Wrappers.lambdaQuery()); userMapper.delete(Wrappers.lambdaQuery());
ztUsers.stream() ztUsers.stream()
.map(transHelper::user) .map(transHelper::user)
.forEach(ksUserMapper::insert); .forEach(userMapper::insert);
} }
/** /**
...@@ -122,10 +121,10 @@ public class DataAllCollector { ...@@ -122,10 +121,10 @@ public class DataAllCollector {
*/ */
private void saveProject() { private void saveProject() {
dataSourceService.switchMainDataSource(); dataSourceService.switchMainDataSource();
ksProjectMapper.delete(Wrappers.lambdaQuery()); projectMapper.delete(Wrappers.lambdaQuery());
ztProjects.stream() ztProjects.stream()
.map(transHelper::project) .map(transHelper::project)
.forEach(ksProjectMapper::insert); .forEach(projectMapper::insert);
} }
/** /**
...@@ -137,8 +136,8 @@ public class DataAllCollector { ...@@ -137,8 +136,8 @@ public class DataAllCollector {
.flatMap(ztUserView -> transHelper.userProjects(ztUserView).stream()) .flatMap(ztUserView -> transHelper.userProjects(ztUserView).stream())
.collect(Collectors.toList()); .collect(Collectors.toList());
dataSourceService.switchMainDataSource(); dataSourceService.switchMainDataSource();
ksUserProjectMapper.delete(Wrappers.lambdaQuery()); userProjectMapper.delete(Wrappers.lambdaQuery());
userProjectList.forEach(ksUserProjectMapper::insert); userProjectList.forEach(userProjectMapper::insert);
} }
} }
...@@ -5,10 +5,10 @@ import lombok.extern.slf4j.Slf4j; ...@@ -5,10 +5,10 @@ import lombok.extern.slf4j.Slf4j;
import org.matrix.actuators.datasource.IDataSourceService; import org.matrix.actuators.datasource.IDataSourceService;
import org.matrix.local.entity.Project; import org.matrix.local.entity.Project;
import org.matrix.local.entity.User; import org.matrix.local.entity.User;
import org.matrix.local.entity.UserProject; import org.matrix.local.entity.relation.UserProject;
import org.matrix.local.mapper.KsProjectMapper; import org.matrix.local.mapper.ProjectMapper;
import org.matrix.local.mapper.KsUserMapper; import org.matrix.local.mapper.UserMapper;
import org.matrix.local.mapper.KsUserProjectMapper; import org.matrix.local.mapper.relation.UserProjectMapper;
import org.matrix.remote.entity.Change; import org.matrix.remote.entity.Change;
import org.matrix.remote.entity.ZtProject; import org.matrix.remote.entity.ZtProject;
import org.matrix.remote.entity.ZtUser; import org.matrix.remote.entity.ZtUser;
...@@ -40,11 +40,11 @@ public class DataTriggerCollector { ...@@ -40,11 +40,11 @@ public class DataTriggerCollector {
@Autowired @Autowired
private ZtProjectMapper ztProjectMapper; private ZtProjectMapper ztProjectMapper;
@Autowired @Autowired
private KsUserMapper ksUserMapper; private UserMapper userMapper;
@Autowired @Autowired
private KsProjectMapper ksProjectMapper; private ProjectMapper projectMapper;
@Autowired @Autowired
private KsUserProjectMapper ksUserProjectMapper; private UserProjectMapper userProjectMapper;
@Autowired @Autowired
private TransHelper transHelper; private TransHelper transHelper;
@Autowired @Autowired
...@@ -98,17 +98,17 @@ public class DataTriggerCollector { ...@@ -98,17 +98,17 @@ public class DataTriggerCollector {
case "insert": case "insert":
if (nonNull(ztUser)) { if (nonNull(ztUser)) {
User user = transHelper.user(ztUser); User user = transHelper.user(ztUser);
ksUserMapper.insert(user); userMapper.insert(user);
} }
return; return;
case "update": case "update":
if (nonNull(ztUser)) { if (nonNull(ztUser)) {
User user = transHelper.user(ztUser); User user = transHelper.user(ztUser);
ksUserMapper.updateById(user); userMapper.updateById(user);
} }
return; return;
case "delete": case "delete":
ksUserMapper.deleteById(id); userMapper.deleteById(id);
return; return;
default: default:
} }
...@@ -124,17 +124,17 @@ public class DataTriggerCollector { ...@@ -124,17 +124,17 @@ public class DataTriggerCollector {
case "insert": case "insert":
if (nonNull(ztProject)) { if (nonNull(ztProject)) {
Project project = transHelper.project(ztProject); Project project = transHelper.project(ztProject);
ksProjectMapper.insert(project); projectMapper.insert(project);
} }
return; return;
case "update": case "update":
if (nonNull(ztProject)) { if (nonNull(ztProject)) {
Project project = transHelper.project(ztProject); Project project = transHelper.project(ztProject);
ksProjectMapper.updateById(project); projectMapper.updateById(project);
} }
return; return;
case "delete": case "delete":
ksProjectMapper.deleteById(id); projectMapper.deleteById(id);
return; return;
default: default:
} }
...@@ -153,14 +153,14 @@ public class DataTriggerCollector { ...@@ -153,14 +153,14 @@ public class DataTriggerCollector {
List<UserProject> userProjects = transHelper.userProjects(ztUserView); List<UserProject> userProjects = transHelper.userProjects(ztUserView);
userProjects.stream().findAny() userProjects.stream().findAny()
.map(UserProject::getUserId) .map(UserProject::getUserId)
.ifPresent(userId -> ksUserProjectMapper.delete(Wrappers.<UserProject>lambdaQuery().eq(UserProject::getUserId, userId))); .ifPresent(userId -> userProjectMapper.delete(Wrappers.<UserProject>lambdaQuery().eq(UserProject::getUserId, userId)));
userProjects.forEach(ksUserProjectMapper::insert); userProjects.forEach(userProjectMapper::insert);
} }
return; return;
case "delete": case "delete":
if (nonNull(ztUserView)) { if (nonNull(ztUserView)) {
Long userId = ksUserMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getAccount, ztUserView.getAccount())).getId(); Long userId = userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getAccount, ztUserView.getAccount())).getId();
ksUserProjectMapper.delete(Wrappers.<UserProject>lambdaQuery().eq(UserProject::getUserId, userId)); userProjectMapper.delete(Wrappers.<UserProject>lambdaQuery().eq(UserProject::getUserId, userId));
} }
return; return;
default: default:
......
...@@ -4,8 +4,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; ...@@ -4,8 +4,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.matrix.actuators.datasource.IDataSourceService; import org.matrix.actuators.datasource.IDataSourceService;
import org.matrix.local.entity.Project; import org.matrix.local.entity.Project;
import org.matrix.local.entity.User; import org.matrix.local.entity.User;
import org.matrix.local.entity.UserProject; import org.matrix.local.entity.relation.UserProject;
import org.matrix.local.mapper.KsUserMapper; import org.matrix.local.mapper.UserMapper;
import org.matrix.remote.entity.ZtProject; import org.matrix.remote.entity.ZtProject;
import org.matrix.remote.entity.ZtUser; import org.matrix.remote.entity.ZtUser;
import org.matrix.remote.entity.ZtUserView; import org.matrix.remote.entity.ZtUserView;
...@@ -30,7 +30,7 @@ public class TransHelper { ...@@ -30,7 +30,7 @@ public class TransHelper {
@Autowired @Autowired
private ZtProjectMapper ztProjectMapper; private ZtProjectMapper ztProjectMapper;
@Autowired @Autowired
private KsUserMapper ksUserMapper; private UserMapper userMapper;
@Autowired @Autowired
private IDataSourceService dataSourceService; private IDataSourceService dataSourceService;
...@@ -44,7 +44,7 @@ public class TransHelper { ...@@ -44,7 +44,7 @@ public class TransHelper {
List<UserProject> userProjects(ZtUserView ztUserView) { List<UserProject> userProjects(ZtUserView ztUserView) {
dataSourceService.switchMainDataSource(); dataSourceService.switchMainDataSource();
User user = ksUserMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getAccount, ztUserView.getAccount())); User user = userMapper.selectOne(Wrappers.<User>lambdaQuery().eq(User::getAccount, ztUserView.getAccount()));
if (nonNull(user)) { if (nonNull(user)) {
dataSourceService.switchDataSource("zentao"); dataSourceService.switchDataSource("zentao");
Long userId = user.getId(); Long userId = user.getId();
......
...@@ -3,7 +3,7 @@ package org.matrix.ktzentao; ...@@ -3,7 +3,7 @@ package org.matrix.ktzentao;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.matrix.ZentaoApplication; import org.matrix.ZentaoApplication;
import org.matrix.local.entity.User; import org.matrix.local.entity.User;
import org.matrix.local.service.UserService; import org.matrix.local.service.impl.UserService;
import org.matrix.remote.service.DataAllCollector; import org.matrix.remote.service.DataAllCollector;
import org.matrix.remote.service.TriggerInitial; import org.matrix.remote.service.TriggerInitial;
import org.matrix.remote.task.DataCollectorTask; import org.matrix.remote.task.DataCollectorTask;
......
...@@ -2,8 +2,8 @@ package org.matrix.autotest.controller; ...@@ -2,8 +2,8 @@ package org.matrix.autotest.controller;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.matrix.database.entity.Project; import org.matrix.local.entity.Project;
import org.matrix.database.service.IProjectService; import org.matrix.local.service.IProjectService;
import org.matrix.database.vo.CommonResult; import org.matrix.database.vo.CommonResult;
import org.matrix.database.vo.CommonResultObj; import org.matrix.database.vo.CommonResultObj;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论