Commit 623f812d authored by ZWT's avatar ZWT

feat(零碳): 长庆演示系统新增功能

1.修改第三方日累计数据推送表表结构,增加日累计储能放电量字段,同时修改代码对应实体及mapper文件,修改相关接口增加储能日累计放电量接收逻辑;
2.修改首页井场收益分析模块接口,修改获取储能累计放电量逻辑;
3.设计并创建井口日用电趋势表,生成对应实体类及mapper文件;
4.统计分析模块,新增本月累计节电经济效益查询接口,添加线上接口文档并完成接口冒烟测试;
5.统计分析模块,新增本月累计减碳量查询接口,添加线上接口文档并完成接口冒烟测试;
6.统计分析模块,新增光伏发电趋势查询接口,添加线上接口文档并完成接口冒烟测试;
7.统计分析模块,新增月度总览查询接口,添加线上接口文档并完成接口冒烟测试;

BREAKING CHANGE: 无

Closes 无

[skip ci]
parent 51b5591c
package pps.core.system.cache;
import xstartup.annotation.XText;
import xstartup.base.XContext;
import xstartup.cache.XCacheLife;
import xstartup.cache.XCacheObject;
import xstartup.cache.XListCache;
import java.util.List;
public class FineReportThirdTokenCache implements XCacheObject, XCacheLife {
@XText("是否全选")
private String cacheCode;
@XText("字典路径")
private String cacheKey;
/**
* 检查缓存是否存在指定的code
*
* @param context
* @param loginName
* @param dicKey
* @return
*/
public static boolean exist(XContext context, String loginName, String dicKey) {
return FineReportThirdTokenCache.Tool.get(FineReportThirdTokenCache.Tool.class).exist(context, loginName, dicKey, FineReportThirdTokenCache.class);
}
/**
* 从缓存中读取
*
* @param context
* @param loginName
* @return
*/
public static List<FineReportThirdTokenCache> list(XContext context, String loginName) {
return FineReportThirdTokenCache.Tool.get(FineReportThirdTokenCache.Tool.class).list(context, loginName, FineReportThirdTokenCache.class);
}
/**
* 设置缓存
*
* @param context
* @param loginName
* @param caches
*/
public static void set(XContext context, String loginName, List<FineReportThirdTokenCache> caches) {
FineReportThirdTokenCache.Tool.get(FineReportThirdTokenCache.Tool.class).set(context, loginName, caches);
}
public String getCacheCode() {
return cacheCode;
}
public void setCacheCode(String cacheCode) {
this.cacheCode = cacheCode;
}
@Override
public String getCacheKey() {
return this.cacheKey;
}
public void setCacheKey(String cacheKey) {
this.cacheKey = cacheKey;
}
@Override
public Integer getDuration() {
//过期时间(秒)
return 60 * 60;
}
static class Tool extends XListCache<FineReportThirdTokenCache> {
@Override
protected List<FineReportThirdTokenCache> restore(XContext context, String listKey) {
return null;
}
}
}
package pps.core.system.cache;
import xstartup.base.XContext;
import xstartup.cache.XCacheLife;
import xstartup.cache.XCacheObject;
import xstartup.cache.XSingleCache;
import java.util.Date;
public class LoginSmsCodeCache implements XCacheObject, XCacheLife {
private String codeKey;
private String code;
private Integer validity;
private Date currentDate;
/**
* 检查缓存是否存在指定的code
*
* @param context
* @param code
* @return
*/
public static LoginSmsCodeCache exist(XContext context, String code) {
LoginSmsCodeCache isExist = LoginSmsCodeCache.Tool.get(LoginSmsCodeCache.Tool.class).find(context, code, LoginSmsCodeCache.class);
return isExist;
}
public static void delete(XContext context, String loginName) {
LoginSmsCodeCache.Tool.get(LoginSmsCodeCache.Tool.class).delete(context, loginName, LoginSmsCodeCache.class);
}
/**
* 设置缓存
*
* @param context
* @param cache
*/
public static void set(XContext context, LoginSmsCodeCache cache) {
LoginSmsCodeCache.Tool.get(LoginSmsCodeCache.Tool.class).set(context, cache);
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getCodeKey() {
return codeKey;
}
public void setCodeKey(String codeKey) {
this.codeKey = codeKey;
}
public Integer getValidity() {
return validity;
}
public void setValidity(Integer validity) {
this.validity = validity;
}
public Date getCurrentDate() {
return currentDate;
}
public void setCurrentDate(Date currentDate) {
this.currentDate = currentDate;
}
@Override
public Integer getDuration() {
return validity * 60;
}
@Override
public String getCacheKey() {
return this.codeKey;
}
static class Tool extends XSingleCache<LoginSmsCodeCache> {
@Override
protected LoginSmsCodeCache restore(XContext context, String cacheKey) {
return null;
}
}
}
...@@ -10,9 +10,7 @@ import org.apache.commons.lang3.StringUtils; ...@@ -10,9 +10,7 @@ import org.apache.commons.lang3.StringUtils;
import pps.core.common.session.PpsUserSession; import pps.core.common.session.PpsUserSession;
import pps.core.common.utils.PatternUtil; import pps.core.common.utils.PatternUtil;
import pps.core.common.utils.VerificationCode; import pps.core.common.utils.VerificationCode;
import pps.core.system.cache.LoginSmsCodeCache;
import pps.core.system.cache.LoginVerCodeCache; import pps.core.system.cache.LoginVerCodeCache;
import pps.core.system.config.LoginConfig;
import pps.core.system.entity.SysUserEnt; import pps.core.system.entity.SysUserEnt;
import pps.core.system.entity.SysUserForgetLogEnt; import pps.core.system.entity.SysUserForgetLogEnt;
import pps.core.system.entity.SysUserLoginLogEnt; import pps.core.system.entity.SysUserLoginLogEnt;
...@@ -139,7 +137,6 @@ public class LoginService { ...@@ -139,7 +137,6 @@ public class LoginService {
@XText("修改密码") @XText("修改密码")
@XApiPost(anonymous = true) @XApiPost(anonymous = true)
public XServiceResult modifyPwd(XContext context, ModifyPwdInput input) { public XServiceResult modifyPwd(XContext context, ModifyPwdInput input) {
checkSmsCode(context, input.getLoginName() + "-pwd", input.getSmsCode());
XSingleResult<SysUserEnt> sysUserResult = checkAccount(context, input.getLoginName(), null); XSingleResult<SysUserEnt> sysUserResult = checkAccount(context, input.getLoginName(), null);
SysUserEnt sysUserEnt = sysUserResult.getResult(); SysUserEnt sysUserEnt = sysUserResult.getResult();
sysUserEnt.setPassword(input.getPassword()); sysUserEnt.setPassword(input.getPassword());
...@@ -210,14 +207,6 @@ public class LoginService { ...@@ -210,14 +207,6 @@ public class LoginService {
/*------------------------------- private -------------------------------*/ /*------------------------------- private -------------------------------*/
private boolean checkIsSendSmsCode(XContext context) {
Integer sendSmsCodeSwitch = new LoginConfig().sendSmsCodeSwitch.findValue(context);
if (sendSmsCodeSwitch != null && sendSmsCodeSwitch == 1) {
return true;
}
return false;
}
private XSingleResult<SysUserEnt> checkAccount(XContext context, String loginName, String password) { private XSingleResult<SysUserEnt> checkAccount(XContext context, String loginName, String password) {
SysUserMapper mapper = context.getBean(SysUserMapper.class); SysUserMapper mapper = context.getBean(SysUserMapper.class);
QueryWrapper<SysUserEnt> queryWrapper = new QueryWrapper<>(); QueryWrapper<SysUserEnt> queryWrapper = new QueryWrapper<>();
...@@ -239,24 +228,6 @@ public class LoginService { ...@@ -239,24 +228,6 @@ public class LoginService {
return XSingleResult.success(sysUserEnt); return XSingleResult.success(sysUserEnt);
} }
private void checkSmsCode(XContext context, String userKey, String smsCode) {
if (!checkIsSendSmsCode(context)) {
return;
}
if (StringUtils.isBlank(smsCode)) {
throw new XServiceException(context, LoginError.NotValidateSmsCode);
}
LoginSmsCodeCache smsCodeCache = LoginSmsCodeCache.exist(context, userKey);
if (smsCodeCache != null) {
String code = smsCodeCache.getCode();
if (code.equals(smsCode)) {
LoginSmsCodeCache.delete(context, userKey);
return;
}
}
throw new XServiceException(context, LoginError.NotValidateSmsCode);
}
private void checkCode(XContext context, String code, String codeIden) { private void checkCode(XContext context, String code, String codeIden) {
if (code == null) { if (code == null) {
throw new XServiceException(context, LoginError.NotExistCode); throw new XServiceException(context, LoginError.NotExistCode);
......
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