Commit c38f8a1c authored by 赵啸非's avatar 赵啸非

短信界面修改

parent 2e7ef9aa
......@@ -285,41 +285,36 @@ CREATE TABLE `mortals_xhx_uploadfile` (
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '上传文件' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for mortals_xhx_user
-- 用户信息业务表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_xhx_user`;
CREATE TABLE `mortals_xhx_user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '用户ID,主键,自增长',
`loginName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '登录名',
`loginPwd` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '登录密码,使用md5双次加密',
`loginPwd1` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最近一次使用密码,使用md5双次加密',
`loginPwd2` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最近二次使用密码,使用md5双次加密',
`loginPwd3` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最近三次使用密码,使用md5双次加密',
`loginLimitAddress` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '登录限制地址,多个IP地址用逗号分隔,可以使用IP段匹配,如:172.17.*非空:则只能该值内的IP可以登录',
`realName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户名',
`mobile` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户手机号',
`phone` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户联系电话',
`email` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户邮箱',
`qq` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT 'QQ号码',
`userType` tinyint(2) NULL DEFAULT NULL COMMENT '用户类型,0:系统用户 1:普通用户 2:工作人员,默认2',
`siteId` bigint(20) NULL DEFAULT 0 COMMENT '站点id',
`status` tinyint(2) NULL DEFAULT 1 COMMENT '用户状态,0:停用,1:正常,2:冻结,3:销户,4:离职,默认1',
`customerId` bigint(20) NULL DEFAULT NULL COMMENT '客户ID',
`createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间',
`createUserId` bigint(20) NULL DEFAULT NULL COMMENT '创建用户',
`createUserName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '创建用户名称',
`lastLoginTime` datetime(0) NULL DEFAULT NULL COMMENT '最后一次登录时间',
`lastLoginAddress` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最后一次登录地址',
`lastModPwdTime` datetime(0) NULL DEFAULT NULL COMMENT '最后修改密码时间',
`lastModPwdAddr` varchar(21) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '最后修改密码地址',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE INDEX `idx_loginName`(`loginName`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = ujis COLLATE = ujis_japanese_ci COMMENT = '用户信息' ROW_FORMAT = Dynamic;
CREATE TABLE mortals_xhx_user(
`id` bigint(20) AUTO_INCREMENT COMMENT '用户ID,主键,自增长',
`loginName` varchar(50) COMMENT '登录名',
`loginPwd` varchar(128) COMMENT '登录密码,使用md5双次加密',
`loginLimitAddress` varchar(200) COMMENT '登录限制地址,多个IP地址用逗号分隔,可以使用IP段匹配,如:172.17.*非空:则只能该值内的IP可以登录',
`realName` varchar(64) COMMENT '用户名',
`mobile` varchar(21) COMMENT '用户手机号',
`phone` varchar(21) COMMENT '用户联系电话',
`email` varchar(50) COMMENT '用户邮箱',
`qq` varchar(20) COMMENT 'QQ号码',
`userType` tinyint(2) COMMENT '用户类型(0.系统用户,1.普通用户,2.工作人员)',
`siteIds` varchar(512) COMMENT '所属站点id,多个逗号分隔',
`areaCodes` varchar(512) COMMENT '所属区域code,多个逗号分隔',
`status` tinyint(2) COMMENT '用户状态(0.停用,1.正常,2.冻结,3.销户,4.离职)',
`createTime` datetime COMMENT '创建时间',
`createUserId` bigint(20) COMMENT '创建用户',
`createUserName` varchar(50) COMMENT '创建用户名称',
`lastLoginTime` datetime COMMENT '最后一次登录时间',
`lastLoginAddress` varchar(21) COMMENT '最后一次登录地址',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息业务';
-- ----------------------------
-- Records of mortals_xhx_user
-- ----------------------------
INSERT INTO `mortals_xhx_user` VALUES (1, 'admin', '43442676c74ae59f219c2d87fd6bad52', NULL, NULL, NULL, NULL, '系统管理员', '13808095770', NULL, NULL, NULL, 1, 7, 1, 5, NULL, NULL, NULL, '2020-10-26 15:08:30', '127.0.0.1', NULL, NULL);
INSERT INTO `mortals_xhx_user`(`id`, `loginName`, `loginPwd`, `loginLimitAddress`, `realName`, `mobile`, `phone`, `email`, `qq`, `userType`, `siteIds`, `areaCodes`, `status`, `createTime`, `createUserId`, `createUserName`, `lastLoginTime`, `lastLoginAddress`) VALUES (1, 'admin', '43442676c74ae59f219c2d87fd6bad52', NULL, '系统管理员', '13808095770', NULL, NULL, NULL, 0, '', '', 1, '2022-06-02 09:12:26', 1, 'admin', '2022-06-02 09:12:26', '127.0.0.1');
-- ----------------------------
-- Table structure for mortals_xhx_valid_code
......
......@@ -67,6 +67,7 @@ export default {
},
created() {
this.pageInfo.list='/sitestat/list'
this.$get("/sitestat/siteTree", {}).then(({ data }) => {
this.areaData = data.siteTree;
});
......
......@@ -150,7 +150,7 @@ public class SiteServiceImpl extends AbstractCRUDServiceImpl<SiteDao, SiteEntity
@Override
public boolean checkSiteExistUser(Long siteId) {
List<UserEntity> userEntities = userService.find(new UserQuery().siteId(siteId));
List<UserEntity> userEntities = userService.find(new UserQuery().siteIds(siteId.toString()));
return userEntities.size() > 0 ? true : false;
}
......
......@@ -12,9 +12,6 @@ import java.util.Map;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import cn.hutool.core.util.ServiceLoaderUtil;
import cn.hutool.http.HttpUtil;
import cn.hutool.system.HostInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -65,7 +62,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
private Thread thread = null;
/** 日志打印时间,key:任务ID,value:最后一次打印日志时间 */
private Map<Long, Long> printLogTime = new HashMap<Long, Long>();
private Map<Long, Long> printLogTime = new HashMap<>();
@Autowired(required=false)
private TaskService taskService;
......@@ -156,7 +153,6 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
@Override
public void start() throws AppException {
final String localIp = SystemUtil.getLocalHostIp();
log.info("任务执行线程启动...-->" + localIp);
thread = new Thread(() -> {
......@@ -220,17 +216,17 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
}
if (interimExcuteStatus != TaskInterimExcuteStatus.UNUSE.getValue() // 启用立即执行
|| ((strategy == TaskExcuteStrategy.DAY.getValue() // 按天
|| (strategy == TaskExcuteStrategy.WEEK.getValue()
&& week == excuteDate)
// 按周
|| (strategy == TaskExcuteStrategy.MONTH.getValue()
&& (day == excuteDate
|| (excuteDate > maxDay && day == maxDay))))// 按月
&& (excuteTime == currTime
&& !lastExcuteTimeStr.equals(currDateTimeStr)) // 执行间隔最少为一天
|| (strategy == TaskExcuteStrategy.WEEK.getValue()
&& week == excuteDate)
// 按周
|| (strategy == TaskExcuteStrategy.MONTH.getValue()
&& (day == excuteDate
|| (excuteDate > maxDay && day == maxDay))))// 按月
&& (excuteTime == currTime
&& !lastExcuteTimeStr.equals(currDateTimeStr)) // 执行间隔最少为一天
) || (strategy == TaskExcuteStrategy.INTERVAL.getValue() // 按间隔时间
&& (lastExcuteTime == null || lastExcuteTime.getTime()
+ excuteDate * 1000 <= currDateTime.getTime()))) {
+ excuteDate * 1000 <= currDateTime.getTime()))) {
final boolean printLog = checkPrintLog(task);
Object excuteBean = GlobalSysInfo.getBeanByName(task.getExcuteService());
if (excuteBean == null || !(excuteBean instanceof ITaskExcuteService)) {
......@@ -265,7 +261,7 @@ public class TaskServiceImpl extends AbstractCRUDServiceImpl<TaskDao, TaskEntity
log.error("执行任务失败-->" + excuteTask, e);
}
if (strategy == TaskExcuteStrategy.INTERVAL.getValue()) {
// 按间隔时间,更新执行时间,避免一直重复执行
// 按间隔时间,更新执行时间,避免一直重复执行
excuteTask.setLastExcuteTime(currDateTime);
}
} finally {
......
package com.mortals.xhx.base.system.user.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 用户信息业务视图对象
*
* @author zxfei
* @date 2022-07-05
*/
@Data
public class UserVo extends BaseEntityLong {
/**
* 站点名称
*/
private String siteName;
/**
* 唯一标识
*/
private String token;
/**
* 菜单栏
*/
private String menuUrl;
/**
* 登录时间
*/
private Long loginTime;
/**
* 过期时间
*/
private Long expireTime;
}
\ No newline at end of file
......@@ -219,7 +219,6 @@ public class UserServiceImpl extends AbstractCRUDServiceImpl<UserDao, UserEntity
entity.initAttrValue();
entity.setLoginName(loginName);
entity.setRealName(userName);
entity.setCustomerId(customerId);
entity.setLoginPwd(password);
entity.setMobile(mobile);
entity.setUserType(UserType.CUSTOMER.getValue());
......@@ -265,10 +264,7 @@ public class UserServiceImpl extends AbstractCRUDServiceImpl<UserDao, UserEntity
}
try {
sysUser.setLoginPwd(SecurityUtil.md5DoubleEncoding(newPwd));
sysUser.setLoginPwd3(sysUser.getLoginPwd2());
sysUser.setLoginPwd2(sysUser.getLoginPwd1());
sysUser.setLoginPwd1(sysUser.getLoginPwd());
sysUser.setLastModPwdTime(new Date());
} catch (Exception e) {
throw new AppException("密码转换异常!", e);
}
......
......@@ -68,8 +68,6 @@ public class UserController extends BaseCRUDJsonBodyMappingController<UserServic
@Override
protected int editAfter(Long id, Map<String, Object> model, UserEntity entity, Context context) throws AppException {
entity.setLoginPwd(null);
entity.setLoginPwd1(null);
entity.setLoginPwd2(null);
return super.editAfter(id, model, entity, context);
}
......
......@@ -87,8 +87,6 @@ public class NettyUDPServerHandler extends SimpleChannelInboundHandler<DatagramP
serverInfo.setDeviceRegisterApi(deviceRegisterApi);
serverInfo.setDeviceInitApi(deviceInitApi);
serverInfo.setDeviceUpdateApi(deviceUpdateApi);
serverInfo.setHomeUrl(RandomUtil.randomString(500));
resp.setData(serverInfo);
} else {
resp.setCode(YesNoEnum.NO.getValue());
......@@ -97,12 +95,9 @@ public class NettyUDPServerHandler extends SimpleChannelInboundHandler<DatagramP
InetSocketAddress remoteAddress = new InetSocketAddress(packet.sender().getHostName(), CLIENT_PORT);
String sa = EncryptUtil.myEnscrt(JSON.toJSONString(resp), 9, DES_STR, ENCRYPT_STR);
log.info("enStr:{}",sa);
log.info("deEncrypt:{}", EncryptUtil.myReEnscrt(sa, 9, DES_STR, ENCRYPT_STR));
// log.info("enStr:{}",sa);
// log.info("deEncrypt:{}", EncryptUtil.myReEnscrt(sa, 9, DES_STR, ENCRYPT_STR));
//
DatagramPacket sendpacket = new DatagramPacket(Unpooled.copiedBuffer(sa, CharsetUtil.UTF_8), remoteAddress);
//ctx.writeAndFlush(new DatagramPacket(Unpooled.copiedBuffer(JSON.toJSONString(resp), CharsetUtil.UTF_8), packet.sender()));
ctx.writeAndFlush(sendpacket);
......@@ -119,4 +114,12 @@ public class NettyUDPServerHandler extends SimpleChannelInboundHandler<DatagramP
ctx.close();
cause.printStackTrace();
}
public static void main(String[] args) {
String domain="http://192.168.0.98:11801";
URL url = URLUtil.url(domain);
System.out.println(url.getHost());
System.out.println(url.getPort());
}
}
......@@ -58,11 +58,7 @@ public class DeviceModuleUseTaskImpl implements ITaskExcuteService {
@Override
public void excuteTask(ITask task) throws AppException {
log.debug("设备统计,开始执行");
doDeviceModuleUse();
//doDeviceUpOrDown();
//doDeviceLogDel();
log.debug("设备统计,结束执行");
}
......
......@@ -3,16 +3,14 @@ package com.mortals.xhx.daemon.task;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.TypeReference;
import com.mortals.framework.ap.GlobalSysInfo;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.framework.util.DateUtils;
import com.mortals.xhx.base.framework.ws.message.SendToAllRequest;
import com.mortals.xhx.base.framework.ws.util.WebSocketUtil;
import com.mortals.xhx.busiz.rsp.SiteInfo;
import com.mortals.xhx.common.code.*;
import com.mortals.xhx.common.key.ParamKey;
import com.mortals.xhx.common.code.DeviceStatusEnum;
import com.mortals.xhx.common.code.LogTypeEnum;
import com.mortals.xhx.common.code.SendStatusEnum;
import com.mortals.xhx.common.code.YesNoEnum;
import com.mortals.xhx.common.pdu.site.SitePdu;
import com.mortals.xhx.feign.site.ISiteFeign;
import com.mortals.xhx.module.alarm.model.AlarmSmsSendEntity;
......@@ -20,9 +18,7 @@ import com.mortals.xhx.module.alarm.model.AlarmSmsSendQuery;
import com.mortals.xhx.module.alarm.service.AlarmSmsSendService;
import com.mortals.xhx.module.device.model.*;
import com.mortals.xhx.module.device.service.*;
import com.mortals.xhx.module.platform.model.PlatformEntity;
import com.mortals.xhx.module.platform.service.PlatformService;
import com.mortals.xhx.module.product.model.ProductEntity;
import com.mortals.xhx.module.product.service.ProductService;
import lombok.extern.apachecommons.CommonsLog;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -30,7 +26,6 @@ import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
......@@ -46,21 +41,13 @@ import static java.util.stream.Collectors.counting;
* @date: 2022/3/9 15:19
*/
@CommonsLog
@Service("DeviceStatTask")
public class DeviceStatTaskImpl implements ITaskExcuteService {
@Service("DeviceTotalStatTask")
public class DeviceTotalStatTaskImpl implements ITaskExcuteService {
@Autowired
private DeviceService deviceService;
@Autowired
private DeviceLogService deviceLogService;
@Autowired
private DeviceModuleUseService deviceModuleUseService;
@Autowired
private ProductService productService;
@Autowired
private PlatformService platformService;
@Autowired
private DeviceStatService deviceStatService;
@Autowired
......@@ -73,9 +60,7 @@ public class DeviceStatTaskImpl implements ITaskExcuteService {
@Override
public void excuteTask(ITask task) throws AppException {
log.debug("设备统计,开始执行");
doDeviceStat();
log.debug("设备统计,结束执行");
}
......@@ -83,7 +68,6 @@ public class DeviceStatTaskImpl implements ITaskExcuteService {
* 统计设备
*/
private void doDeviceStat() {
//查询当天统计,如果有 则更新统计结果,否则新增
DeviceStatEntity deviceStatEntity = deviceStatService.selectOne(new DeviceStatQuery()
.year(DateUtil.year(new Date()))
......
......@@ -64,8 +64,7 @@ data|Object|数据对象|-
"code":1,
"data":{
"ip":"192.168.0.98",
"port":11091,
"deviceRegisterApi":"/m/api/register",
"port":11091,,
"deviceRegisterApi":"/m/api/register",
"deviceInitApi":"/m/api/deviceInit",
"deviceUpdateApi":"/m/api/deviceUpdate"
......
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