Compare commits

...

9 Commits
0.9.6 ... 0.9.9

Author SHA1 Message Date
曾文豪
6766694272 publish 0.9.9 2023-04-06 10:29:37 +08:00
曾文豪
2f22b64c0e publish 0.9.8 2023-04-06 09:57:37 +08:00
曾文豪
4e6b108e7e publish 0.9.8 2023-04-06 09:54:01 +08:00
曾文豪
24629f06b4 publish 0.9.7 2023-04-06 00:05:49 +08:00
曾文豪
47c9251389 publish 0.9.7 2023-04-06 00:01:26 +08:00
曾文豪
dda5f64910 publish 0.9.7 2023-04-05 23:42:58 +08:00
曾文豪
704030729a publish 0.9.7 2023-04-05 23:38:21 +08:00
曾文豪
c708809a19 perf:登录导入进度 2023-04-05 23:36:51 +08:00
曾文豪
2bbec9b79a perf:登录调整 2023-04-05 23:06:09 +08:00
27 changed files with 218 additions and 111 deletions

BIN
.DS_Store vendored Normal file

Binary file not shown.

20
pom.xml
View File

@@ -6,7 +6,7 @@
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<name>springboot-parent</name> <name>springboot-parent</name>
<description>杭州铁晟科技有限公司基础依赖</description> <description>杭州铁晟科技有限公司基础依赖</description>
@@ -57,55 +57,55 @@
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-database</artifactId> <artifactId>springboot-database</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-login</artifactId> <artifactId>springboot-login</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-web</artifactId> <artifactId>springboot-web</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-util</artifactId> <artifactId>springboot-util</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-platform</artifactId> <artifactId>springboot-platform</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-message</artifactId> <artifactId>springboot-message</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-encrypt</artifactId> <artifactId>springboot-encrypt</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-annotation</artifactId> <artifactId>springboot-annotation</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-poi</artifactId> <artifactId>springboot-poi</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</dependency> </dependency>
<dependency> <dependency>

BIN
springboot-ademo/.DS_Store vendored Normal file

Binary file not shown.

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-ademo</artifactId> <artifactId>springboot-ademo</artifactId>

View File

@@ -27,30 +27,28 @@ public class DemoWebConfigurer implements TieshengWebConfigurer {
} }
@Override @Override
public LoginConfigurer loginConfigurer() { public TokenBean login(CorePlatformUnique platformUnique) {
return new LoginConfigurer() { TokenBean tokenBean = null;
@Override if (!StrUtil.isEmpty(platformUnique.getUserId())) {
public TokenBean doLogin(CorePlatformUnique platformUnique, String to) { tokenBean = new TokenBean(platformUnique.getUserId(), "", globalConfig.getService());
} else {
// 获取用户信息判断是否可登录
// 默认跳转到mobile }
to = StrUtil.emptyToDefault(to, "mobile");
TokenBean tokenBean = null; return tokenBean;
if (!StrUtil.isEmpty(platformUnique.getUserId())) {
tokenBean = new TokenBean(platformUnique.getUserId(), to, globalConfig.getService());
} else {
// 获取用户信息判断是否可登录
}
return tokenBean;
}
@Override
public void redirect(TokenBean bean, String to, String extra, HttpServletResponse response) {
if (Objects.equals(bean.getEnvironmentType(), "mobile")) {
globalConfig.redirect("mobile", "/?token=" + bean.toToken(), response);
}
}
};
} }
@Override
public void redirect(TokenBean bean, String to, String extra, HttpServletResponse response) {
// 默认跳转到mobile
to = StrUtil.emptyToDefault(to, "mobile");
bean.setEnvironmentType(to);
if (Objects.equals(bean.getEnvironmentType(), "mobile")) {
globalConfig.redirect("mobile", "/?token=" + bean.toToken(), response);
}
}
} }

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-annotation</artifactId> <artifactId>springboot-annotation</artifactId>

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-database</artifactId> <artifactId>springboot-database</artifactId>

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-encrypt</artifactId> <artifactId>springboot-encrypt</artifactId>

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-login</artifactId> <artifactId>springboot-login</artifactId>

View File

@@ -58,8 +58,8 @@ public class LoginController {
*/ */
@GetMapping("/unique/redirect") @GetMapping("/unique/redirect")
public void uniqueIndex(UniqueIndexDTO dto, HttpServletResponse response) { public void uniqueIndex(UniqueIndexDTO dto, HttpServletResponse response) {
TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo("unique_index_web", TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo("web_unique_redirect",
dto.getNo(), "web", dto.getTo(), dto.getInfo())); dto.getNo(), dto.getPlatform(), dto.getInfo()));
tieshengLoginConfigurer.onLoginRedirect(tokenBean, dto.getTo(), dto.getExtra(), response); tieshengLoginConfigurer.onLoginRedirect(tokenBean, dto.getTo(), dto.getExtra(), response);
} }
@@ -72,8 +72,8 @@ public class LoginController {
*/ */
@PostMapping("/unique/index") @PostMapping("/unique/index")
public ApiResp<String> uniqueIndex(@RequestBody UniqueIndexDTO dto) { public ApiResp<String> uniqueIndex(@RequestBody UniqueIndexDTO dto) {
TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo("unique_index_web", TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo("web_unique_index",
dto.getNo(), "web", dto.getTo(), dto.getInfo())); dto.getNo(), dto.getPlatform(), dto.getInfo()));
if (tokenBean == null) { if (tokenBean == null) {
throw new ApiException("登录失败"); throw new ApiException("登录失败");
} }
@@ -120,8 +120,7 @@ public class LoginController {
String ddUserId = platformDingConfig.getUserIdByCode(service, dto.getCode()); String ddUserId = platformDingConfig.getUserIdByCode(service, dto.getCode());
DingUserInfo dingUserInfo = platformDingConfig.topapiV2UserGet(service, ddUserId); DingUserInfo dingUserInfo = platformDingConfig.topapiV2UserGet(service, ddUserId);
TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo(dingUserInfo.getAppId(), TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo(dingUserInfo.getAppId(),
dingUserInfo.getUserid(), "ding", dto.getTo(), dingUserInfo.getUserid(), "ding", JSON.toJSONString(dingUserInfo)));
JSON.toJSONString(dingUserInfo)));
tieshengLoginConfigurer.onLoginRedirect(tokenBean, dto.getTo(), dto.getExtra(), response); tieshengLoginConfigurer.onLoginRedirect(tokenBean, dto.getTo(), dto.getExtra(), response);
} }
@@ -167,7 +166,7 @@ public class LoginController {
public void wxmpOauth2(@PathVariable String service, CodeExtraDTO dto, HttpServletResponse response) { public void wxmpOauth2(@PathVariable String service, CodeExtraDTO dto, HttpServletResponse response) {
WxUserInfo wxUserInfo = platformWxmpConfig.getOAuth2AccessToken(service, dto.getCode()); WxUserInfo wxUserInfo = platformWxmpConfig.getOAuth2AccessToken(service, dto.getCode());
TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo(wxUserInfo.getAppId(), TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo(wxUserInfo.getAppId(),
wxUserInfo.getOpenid(), "wxmp", dto.getTo(), JSON.toJSONString(wxUserInfo))); wxUserInfo.getOpenid(), "wxmp", JSON.toJSONString(wxUserInfo)));
tieshengLoginConfigurer.onLoginRedirect(tokenBean, dto.getTo(), dto.getExtra(), response); tieshengLoginConfigurer.onLoginRedirect(tokenBean, dto.getTo(), dto.getExtra(), response);
} }
@@ -198,7 +197,7 @@ public class LoginController {
String openid = platformWxminiConfig.jscode2session(service, code); String openid = platformWxminiConfig.jscode2session(service, code);
WxConfigBean configBean = platformWxminiConfig.getConfigBean(service); WxConfigBean configBean = platformWxminiConfig.getConfigBean(service);
TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo(configBean.getAppId(), TokenBean tokenBean = tieshengLoginConfigurer.doLogin(new DoLoginInfo(configBean.getAppId(),
openid, "wxmini", "mini", "{}")); openid, "wxmini", "{}"));
WxminiLoginVo loginVo = new WxminiLoginVo(); WxminiLoginVo loginVo = new WxminiLoginVo();
loginVo.setOpenid(openid); loginVo.setOpenid(openid);

View File

@@ -5,15 +5,13 @@ public class DoLoginInfo {
private String appId; private String appId;
private String unique; private String unique;
private String platform; private String platform;
private String to;
private String info; private String info;
private String extra; private String extra;
public DoLoginInfo(String appId, String unique, String platform, String to, String info) { public DoLoginInfo(String appId, String unique, String platform, String info) {
this.appId = appId; this.appId = appId;
this.unique = unique; this.unique = unique;
this.platform = platform; this.platform = platform;
this.to = to;
this.info = info; this.info = info;
} }
@@ -45,14 +43,6 @@ public class DoLoginInfo {
this.platform = platform; this.platform = platform;
} }
public String getTo() {
return to;
}
public void setTo(String to) {
this.to = to;
}
public String getInfo() { public String getInfo() {
return info; return info;
} }

View File

@@ -7,6 +7,7 @@ public class UniqueIndexDTO extends LoginToInfo {
private String no; private String no;
private String extra; private String extra;
private String info; private String info;
private String platform = "web";
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// setter\getter // setter\getter
@@ -38,4 +39,12 @@ public class UniqueIndexDTO extends LoginToInfo {
public void setInfo(String info) { public void setInfo(String info) {
this.info = info; this.info = info;
} }
public String getPlatform() {
return platform;
}
public void setPlatform(String platform) {
this.platform = platform;
}
} }

View File

@@ -23,7 +23,7 @@ public interface TieshengLoginConfigurer {
/** /**
* 授权登录回调 * 授权登录回调
* *
* @param tokenBean * @param bean
*/ */
void onLoginRedirect(TokenBean bean, String to, String extra, HttpServletResponse response); void onLoginRedirect(TokenBean bean, String to, String extra, HttpServletResponse response);

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-message</artifactId> <artifactId>springboot-message</artifactId>

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-platform</artifactId> <artifactId>springboot-platform</artifactId>

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-poi</artifactId> <artifactId>springboot-poi</artifactId>

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-util</artifactId> <artifactId>springboot-util</artifactId>

View File

@@ -6,7 +6,7 @@
<parent> <parent>
<groupId>com.tiesheng.springboot-parent</groupId> <groupId>com.tiesheng.springboot-parent</groupId>
<artifactId>springboot-parent</artifactId> <artifactId>springboot-parent</artifactId>
<version>0.9.6</version> <version>0.9.9</version>
</parent> </parent>
<artifactId>springboot-web</artifactId> <artifactId>springboot-web</artifactId>

View File

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.tiesheng.core.pojos.DaoBase; import com.tiesheng.core.pojos.DaoBase;
import java.util.Date; import java.util.Date;
/** /**
@@ -36,6 +37,12 @@ public class CoreLogProcess extends DaoBase {
@TableField(value = "fail_num") @TableField(value = "fail_num")
private Integer failNum; private Integer failNum;
/**
* 失败的文件
*/
@TableField(value = "fail_file")
private String failFile;
/** /**
* 类型import-导入sync-同步) * 类型import-导入sync-同步)
*/ */
@@ -120,6 +127,14 @@ public class CoreLogProcess extends DaoBase {
this.failNum = failNum; this.failNum = failNum;
} }
public String getFailFile() {
return failFile;
}
public void setFailFile(String failFile) {
this.failFile = failFile;
}
/** /**
* 获取类型import-导入sync-同步) * 获取类型import-导入sync-同步)
* *

View File

@@ -17,6 +17,8 @@ public class ProcessDetailVo {
private Integer status; private Integer status;
private String failFile;
public Integer getStatus() { public Integer getStatus() {
return status; return status;
} }
@@ -64,4 +66,12 @@ public class ProcessDetailVo {
public void setType(String type) { public void setType(String type) {
this.type = type; this.type = type;
} }
public String getFailFile() {
return failFile;
}
public void setFailFile(String failFile) {
this.failFile = failFile;
}
} }

View File

@@ -1,6 +1,8 @@
package com.tiesheng.core.service; package com.tiesheng.core.service;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.thread.ThreadUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.servlet.ServletUtil; import cn.hutool.extra.servlet.ServletUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
@@ -15,6 +17,8 @@ import com.tiesheng.core.pojos.dao.CoreLogOperation;
import com.tiesheng.core.pojos.dao.CoreLogProcess; import com.tiesheng.core.pojos.dao.CoreLogProcess;
import com.tiesheng.core.pojos.dao.CorePlatformUnique; import com.tiesheng.core.pojos.dao.CorePlatformUnique;
import com.tiesheng.core.pojos.vo.ProcessDetailVo; import com.tiesheng.core.pojos.vo.ProcessDetailVo;
import com.tiesheng.core.util.ProcessImportConsumer;
import com.tiesheng.core.util.ProcessSyncConsumer;
import com.tiesheng.login.config.token.TsTokenConfig; import com.tiesheng.login.config.token.TsTokenConfig;
import com.tiesheng.login.config.token.bean.TokenBean; import com.tiesheng.login.config.token.bean.TokenBean;
import com.tiesheng.util.ServletKit; import com.tiesheng.util.ServletKit;
@@ -24,6 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.List;
/** /**
* @author hao * @author hao
@@ -53,37 +58,80 @@ public class CoreLogService extends TsServiceBase<CoreLogOperationMapper, CoreLo
public CoreLogProcessMapper getCoreLogProcessMapper() { public CoreLogProcessMapper getCoreLogProcessMapper() {
return coreLogProcessMapper; return coreLogProcessMapper;
} }
///////////////////////////////////////////////////////////////////////////
// 操作日志
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
// 导入日志
///////////////////////////////////////////////////////////////////////////
/** /**
* 添加空的过程 返回id 用于更新 * 添加导入过程
* *
* @param title 标题 * @param title 标题
* @param type 类型 import-导入sync-同步 * @param list 要导入的数据
* @param total 总数
*/ */
public CoreLogProcess addProcess(String title, String type, Integer total) { public <T> CoreLogProcess addProcess(String title, List<T> list, ProcessImportConsumer consumer) {
if (CollUtil.isEmpty(list)) {
throw new ApiException("文件中不存在数据");
}
CoreLogProcess coreLogProcess = new CoreLogProcess(); CoreLogProcess coreLogProcess = new CoreLogProcess();
coreLogProcess.setTitle(title); coreLogProcess.setTitle(title);
coreLogProcess.setTotal(total); coreLogProcess.setTotal(list.size());
coreLogProcess.setType(type); coreLogProcess.setType("import");
coreLogProcess.setSuccessNum(0);
coreLogProcess.setFailNum(0);
coreLogProcessMapper.insert(coreLogProcess); coreLogProcessMapper.insert(coreLogProcess);
ThreadUtil.execute(() -> {
CollUtil.split(list, 100).forEach((it) -> {
int accept = consumer.accept(it);
coreLogProcess.setSuccessNum(coreLogProcess.getSuccessNum() + accept);
coreLogProcess.setFailNum(coreLogProcess.getFailNum() + 100 - accept);
if (coreLogProcess.getFailNum() + coreLogProcess.getSuccessNum() == list.size()) {
coreLogProcess.setFailFile(consumer.getFailFile());
coreLogProcess.setStatus(1);
}
coreLogProcessMapper.updateById(coreLogProcess);
});
});
return coreLogProcess; return coreLogProcess;
} }
/** /**
* 更新过程 * 添加同步过程
* *
* @param coreLogProcess 过程对象 * @param title
* @param consumer
* @return
*/ */
public void upProcess(CoreLogProcess coreLogProcess) { public CoreLogProcess addProcess(String title, ProcessSyncConsumer consumer) {
if (coreLogProcess == null || coreLogProcess.getId().isEmpty()) { CoreLogProcess coreLogProcess = new CoreLogProcess();
throw new ApiException("更新过程id不能为空"); coreLogProcess.setTitle(title);
} coreLogProcess.setTotal(0);
coreLogProcessMapper.updateById(coreLogProcess); coreLogProcess.setType("sync");
coreLogProcess.setSuccessNum(0);
coreLogProcess.setFailNum(0);
coreLogProcessMapper.insert(coreLogProcess);
ThreadUtil.execute(() -> {
int pageSize = 1000;
int pageNum = 1, lastCount = pageSize;
while (lastCount == pageSize) {
lastCount = consumer.accept(pageNum, pageSize);
coreLogProcess.setSuccessNum(coreLogProcess.getSuccessNum() + lastCount);
if (lastCount != pageSize) {
coreLogProcess.setStatus(1);
}
coreLogProcessMapper.updateById(coreLogProcess);
pageNum++;
}
});
return coreLogProcess;
} }
/** /**
@@ -96,6 +144,10 @@ public class CoreLogService extends TsServiceBase<CoreLogOperationMapper, CoreLo
return BeanUtil.copyProperties(coreLogProcess, ProcessDetailVo.class); return BeanUtil.copyProperties(coreLogProcess, ProcessDetailVo.class);
} }
///////////////////////////////////////////////////////////////////////////
// 操作日志
///////////////////////////////////////////////////////////////////////////
/** /**
* 添加操作日志 * 添加操作日志

View File

@@ -29,13 +29,13 @@ public class CorePlatformUniqueService extends TsServiceBase<CorePlatformUniqueM
if (platformUnique == null) { if (platformUnique == null) {
platformUnique = new CorePlatformUnique(); platformUnique = new CorePlatformUnique();
platformUnique.setAppId(loginInfo.getAppId()); platformUnique.setAppId(loginInfo.getAppId());
platformUnique.setPlatform(loginInfo.getPlatform());
platformUnique.setUniqueId(loginInfo.getUnique()); platformUnique.setUniqueId(loginInfo.getUnique());
} }
platformUnique.setPlatform(loginInfo.getPlatform());
platformUnique.setInfo(loginInfo.getInfo()); platformUnique.setInfo(loginInfo.getInfo());
saveOrUpdate(platformUnique); saveOrUpdate(platformUnique);
TokenBean tokenBean = tieshengWebConfigurer.loginConfigurer().doLogin(platformUnique, loginInfo.getTo()); TokenBean tokenBean = tieshengWebConfigurer.login(platformUnique);
if (tokenBean != null) { if (tokenBean != null) {
// 添加登录日志 // 添加登录日志
coreLogService.addLoginLog(platformUnique, tokenBean); coreLogService.addLoginLog(platformUnique, tokenBean);
@@ -45,7 +45,7 @@ public class CorePlatformUniqueService extends TsServiceBase<CorePlatformUniqueM
@Override @Override
public void onLoginRedirect(TokenBean bean, String to, String extra, HttpServletResponse response) { public void onLoginRedirect(TokenBean bean, String to, String extra, HttpServletResponse response) {
tieshengWebConfigurer.loginConfigurer().redirect(bean, to, extra, response); tieshengWebConfigurer.redirect(bean, to, extra, response);
} }

View File

@@ -54,36 +54,22 @@ public interface TieshengWebConfigurer {
return uploadPath; return uploadPath;
} }
/** /**
* 配置登录 * 登录逻辑
* *
* @param platformUnique
* @return * @return
*/ */
LoginConfigurer loginConfigurer(); TokenBean login(CorePlatformUnique platformUnique);
/**
interface LoginConfigurer { * 登录重定向
*
/** * @param bean
* 登录逻辑 * @param extra
* * @param response
* @param platformUnique */
* @return void redirect(TokenBean bean, String to, String extra, HttpServletResponse response);
*/
TokenBean doLogin(CorePlatformUnique platformUnique, String to);
/**
* 登录重定向
*
* @param bean
* @param extra
* @param response
*/
void redirect(TokenBean bean, String to, String extra, HttpServletResponse response);
}
} }

View File

@@ -0,0 +1,25 @@
package com.tiesheng.core.util;
import java.util.List;
public interface ProcessImportConsumer {
/**
* 处理数据
*
* @param list
* @param <T>
* @return 返回成功的数量
*/
<T> int accept(List<T> list);
/**
* 获取失败的文件路径
*
* @return
*/
String getFailFile();
}

View File

@@ -0,0 +1,16 @@
package com.tiesheng.core.util;
public interface ProcessSyncConsumer {
/**
* 分页数据
*
* @param pageNum
* @param pageSize
* @return 返回成功的数量
*/
int accept(Integer pageNum, Integer pageSize);
}

View File

@@ -61,6 +61,12 @@ CREATE TABLE `core_log_process`
ALTER TABLE core_log_process ALTER TABLE core_log_process
ADD status int(6) default 0 COMMENT '状态0-未完成1-已完成)'; ADD status int(6) default 0 COMMENT '状态0-未完成1-已完成)';
ALTER TABLE core_log_process
ADD fail_file varchar(500) null default null COMMENT '失败的文件';
-- ----------------------------
-- Table structure for core_log_operation
-- ----------------------------
CREATE TABLE `core_log_operation` CREATE TABLE `core_log_operation`
( (

View File

@@ -14,10 +14,11 @@
<result column="fail_num" jdbcType="INTEGER" property="failNum" /> <result column="fail_num" jdbcType="INTEGER" property="failNum" />
<result column="type" jdbcType="VARCHAR" property="type" /> <result column="type" jdbcType="VARCHAR" property="type" />
<result column="status" jdbcType="INTEGER" property="status" /> <result column="status" jdbcType="INTEGER" property="status" />
<result column="fail_file" jdbcType="VARCHAR" property="failFile" />
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
<!--@mbg.generated--> <!--@mbg.generated-->
id, create_time, update_time, is_deleted, title, total, success_num, fail_num, `type`, id, create_time, update_time, is_deleted, title, total, success_num, fail_num, `type`,
`status` `status`, fail_file
</sql> </sql>
</mapper> </mapper>