diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/AdminApplication.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/AdminApplication.java index 32ef059..410a70c 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/AdminApplication.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/AdminApplication.java @@ -16,6 +16,7 @@ import org.springframework.scheduling.annotation.EnableScheduling; @MapperScan({"com.ailanyin.mapper"}) @EnableScheduling public class AdminApplication { + public static void main(String[] args) { SpringApplication.run(AdminApplication.class, args); } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxCarLocationLogController.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxCarLocationLogController.java index ce92b3c..5a954cd 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxCarLocationLogController.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxCarLocationLogController.java @@ -51,4 +51,18 @@ public class HxCarLocationLogController{ public AjaxResult getBigPicData() { return AjaxResult.success(hxCarLocationLogService.getBigPicData()); } + + @GetMapping("/getAllReadInfo") + @ApiOperation(value = "获取所有读卡器") + //@PreAuthorize("hasAuthority('business:hxCarLocationLog:list')") + public AjaxResult getAllReadInfo() { + return AjaxResult.success(hxCarLocationLogService.getAllReadInfo()); + } + + @GetMapping("/getLogByReadId") + @ApiOperation(value = "获取读卡器的日志") + //@PreAuthorize("hasAuthority('business:hxCarLocationLog:list')") + public AjaxResult getLogByReadId(@RequestParam(value = "readId") Long readId) { + return AjaxResult.success(hxCarLocationLogService.getLogByReadId(readId)); + } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxCarLogConfigController.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxCarLogConfigController.java new file mode 100644 index 0000000..89c777e --- /dev/null +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxCarLogConfigController.java @@ -0,0 +1,70 @@ +package com.ailanyin.admin.controller; + +import com.ailanyin.model.HxCarLogConfig; +import com.ailanyin.admin.service.HxCarLogConfigService; +import com.ailanyin.common.result.AjaxResult; +import com.ailanyin.common.result.CommonPage; +import com.github.pagehelper.PageHelper; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** +* @author ailanyin +* @version 1.0 +* @since 2022-02-15 04:15:39 +*/ +@RestController +@RequestMapping("/business/hxCarLogConfig") +@Api(tags = "车辆定位配置管理") +public class HxCarLogConfigController{ + + @Autowired + private HxCarLogConfigService hxCarLogConfigService; + + @PostMapping + @ApiOperation(value = "新增('business:hxCarLogConfig:add')") + //@PreAuthorize("hasAuthority('business:hxCarLogConfig:add')") + public AjaxResult insertHxCarLogConfig(@RequestBody HxCarLogConfig hxCarLogConfig) { + hxCarLogConfigService.insertHxCarLogConfig(hxCarLogConfig); + return AjaxResult.success(); + } + + @PutMapping + @ApiOperation(value = "修改('business:hxCarLogConfig:edit')") + //@PreAuthorize("hasAuthority('business:hxCarLogConfig:edit')") + public AjaxResult updateHxCarLogConfig(@RequestBody HxCarLogConfig hxCarLogConfig) { + hxCarLogConfigService.updateHxCarLogConfig(hxCarLogConfig); + return AjaxResult.success(); + } + + @DeleteMapping("/{ids}") + @ApiOperation(value = "批量删除('business:hxCarLogConfig:remove')") + //@PreAuthorize("hasAuthority('business:hxCarLogConfig:remove')") + public AjaxResult deleteByIds(@PathVariable Long[] ids) { + hxCarLogConfigService.deleteByIds(ids); + return AjaxResult.success(); + } + + @GetMapping("/list") + @ApiOperation(value = "获取列表('business:hxCarLogConfig:list')") + //@PreAuthorize("hasAuthority('business:hxCarLogConfig:list')") + public CommonPage list(HxCarLogConfig hxCarLogConfig, + @RequestParam(value = "pageSize", defaultValue = "5") Integer pageSize, + @RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum) { + PageHelper.startPage(pageNum, pageSize); + List list = hxCarLogConfigService.getListByParam(hxCarLogConfig); + return CommonPage.restPage(list); + } + + @GetMapping(value = {"/{id}"}) + @ApiOperation(value = "根据id获取详情('business:hxCarLogConfig:query')") + //@PreAuthorize("hasAuthority('business:hxCarLogConfig:query')") + public AjaxResult getInfo(@PathVariable(value = "id", required = false) Long id) { + return AjaxResult.success(hxCarLogConfigService.getInfo(id)); + } +} diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxSecurityManagementController.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxSecurityManagementController.java index 1a06d6f..2adc20d 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxSecurityManagementController.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxSecurityManagementController.java @@ -63,20 +63,13 @@ public class HxSecurityManagementController { return AjaxResult.success(hxVideoService.getVideoByType(type)); } - @GetMapping("/hiddenDanger/1") - @ApiOperation(value = "安全隐患内容列表图 type=1车间/=2总厂") + @GetMapping("/hiddenDanger") + @ApiOperation(value = "安全隐患整改情况 type=1车间/=2总厂") //@PreAuthorize("hasAuthority('system:user:import')") public AjaxResult hiddenDanger(@RequestParam(value = "type") String type) { return AjaxResult.success(hxHiddenDangerService.getHiddenDangerBigPic(type)); } - @GetMapping("/hiddenDanger/2") - @ApiOperation(value = "安全隐患整改情况图") - //@PreAuthorize("hasAuthority('system:user:import')") - public AjaxResult hiddenDanger() { - return AjaxResult.success(hxHiddenDangerService.getWorkshopHiddenDangerBigPic()); - } - @GetMapping("/dangerousMap") @ApiOperation(value = "中间危险点地图") //@PreAuthorize("hasAuthority('system:user:import')") diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxStorehouseController.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxStorehouseController.java index 02223a8..5e0012e 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxStorehouseController.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxStorehouseController.java @@ -52,6 +52,13 @@ public class HxStorehouseController { return AjaxResult.success(); } + + @PostMapping("/insert") + public AjaxResult insert(@RequestBody HxStorehouse hxStorehouse) { + hxStorehouseService.insert(hxStorehouse); + return AjaxResult.success(); + } + @GetMapping("/importTemplate") @ApiOperation(value = "导出模板") //@PreAuthorize("hasAuthority('system:user:import')") diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxTableConfigController.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxTableConfigController.java new file mode 100644 index 0000000..42fdcae --- /dev/null +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/HxTableConfigController.java @@ -0,0 +1,43 @@ +package com.ailanyin.admin.controller; + +import com.ailanyin.model.HxTableConfig; +import com.ailanyin.admin.service.HxTableConfigService; +import com.ailanyin.common.result.AjaxResult; +import com.ailanyin.common.result.CommonPage; +import com.github.pagehelper.PageHelper; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** +* @author ailanyin +* @version 1.0 +* @since 2022-03-08 09:18:14 +*/ +@RestController +@RequestMapping("/business/hxTableConfig") +@Api(tags = "表结构管理") +public class HxTableConfigController{ + + @Autowired + private HxTableConfigService hxTableConfigService; + + + @PutMapping + @ApiOperation(value = "修改") + public AjaxResult updateHxTableConfig(@RequestBody HxTableConfig hxTableConfig) { + hxTableConfigService.updateByTableName(hxTableConfig); + return AjaxResult.success(); + } + + + @GetMapping + @ApiOperation(value = "根据表名获取") + public AjaxResult getInfo(@RequestParam(value = "tableName") String tableName) { + return AjaxResult.success("查询成功",hxTableConfigService.selectByTableName(tableName)); + } +} diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/SysLoginController.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/SysLoginController.java index da99033..6f0b0c3 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/SysLoginController.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/controller/SysLoginController.java @@ -8,6 +8,7 @@ import com.ailanyin.admin.service.SysUserService; import com.ailanyin.admin.vo.LoginBodyVo; import com.ailanyin.common.result.AjaxResult; import com.ailanyin.common.utils.ExcelUtil; +import com.ailanyin.common.utils.IpUtil; import com.ailanyin.mapper.SysLogMapper; import com.ailanyin.model.SysMenu; import com.ailanyin.model.SysUser; @@ -25,6 +26,8 @@ import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.io.IOException; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; import java.util.Set; @@ -55,8 +58,6 @@ public class SysLoginController { private String tokenHeader; @Value("${jwt.tokenHead}") private String tokenHead; - @Value("${hx.ip}") - private String ip; @Value("${server.port}") private String port; @@ -117,7 +118,11 @@ public class SysLoginController { @GetMapping("/getSocketUrl") @ApiOperation(value = "获取Socket地址") public AjaxResult getSocketUrl() { - return AjaxResult.success("ws://" + ip + ":" + port + "/ws/asset"); + try { + return AjaxResult.success("ws://" + IpUtil.getLocalIp() + ":" + port + "/ws/asset"); + } catch (UnknownHostException e) { + return AjaxResult.error(); + } } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/entity/Test.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/entity/Test.java index 5e7f6be..a88e86a 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/entity/Test.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/entity/Test.java @@ -1,19 +1,29 @@ package com.ailanyin.admin.entity; +import cn.hutool.core.img.ImgUtil; import cn.hutool.core.io.FileUtil; import cn.hutool.core.util.RandomUtil; import cn.hutool.core.util.RuntimeUtil; +import com.ailanyin.admin.controller.SysUserController; import com.ailanyin.admin.socket.SocketServerListenHandler; import com.ailanyin.common.utils.*; +import com.ailanyin.model.HxCarLocationLog; +import com.ailanyin.security.service.WebSocketService; +import com.alibaba.fastjson.JSON; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.util.Base64Utils; +import sun.misc.BASE64Decoder; +import sun.misc.BASE64Encoder; import java.io.*; +import java.lang.annotation.Annotation; +import java.lang.reflect.Method; +import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; import java.net.UnknownHostException; import java.text.DecimalFormat; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; +import java.util.*; /** * @author ailanyin @@ -22,18 +32,25 @@ import java.util.List; */ public class Test { - public static void main(String[] args) throws UnknownHostException, IOException { + public static void main(String[] args) throws Exception, IOException { + System.out.println(checkAnswer("107,108,109,","108,109,107,")); - for (int i = 1; i < 255; i++) { - Integer result = Integer.parseInt("A5",16) + - Integer.parseInt("FF",16) + - Integer.parseInt("04",16) + - Integer.parseInt("31",16) + - Integer.parseInt("00",16) + - Integer.parseInt(Integer.toHexString(i),16); - String s2 = ConvertUtil.binaryAdd(ConvertUtil.binaryReverse(Integer.toBinaryString(result)), "1"); - System.out.println(i +" ==== A5 FF 04 31 00 "+Integer.toHexString(i).toUpperCase()+" "+Integer.toHexString(Integer.parseInt(s2.substring(s2.length() - 8),2)).toUpperCase()); - } // A5 FF 04 31 00 FD 2A } + private static boolean checkAnswer(String right, String answer) { + if (answer != null && answer.length() > 0) { + if (answer.length() != right.length()) { + return false; + } + } else { + return false; + } + String[] rgt = right.split(","); + for (String one : rgt) { + if (!answer.contains(one)) { + return false; + } + } + return true; + } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/runner/StartReaderRunner.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/runner/StartReaderRunner.java index 1194bf0..c69ea67 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/runner/StartReaderRunner.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/runner/StartReaderRunner.java @@ -8,10 +8,19 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; +import org.springframework.context.ApplicationContext; import org.springframework.core.annotation.Order; +import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.stereotype.Component; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.lang.annotation.Annotation; +import java.lang.reflect.Method; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; /** * 项目启动后连接 socket 读卡器 @@ -25,6 +34,8 @@ import javax.annotation.Resource; @Order(value = 2) public class StartReaderRunner implements ApplicationRunner { + @Autowired + private ApplicationContext applicationContext; @Autowired private RedisService redisService; @Resource diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxCarLocationLogService.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxCarLocationLogService.java index 6aa7f6e..612e4fc 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxCarLocationLogService.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxCarLocationLogService.java @@ -1,6 +1,8 @@ package com.ailanyin.admin.service; import com.ailanyin.model.HxCarLocationLog; +import com.ailanyin.model.HxReaderInfo; + import java.util.List; /** @@ -53,4 +55,8 @@ public interface HxCarLocationLogService{ * @return list */ List getBigPicData(); + + List getAllReadInfo(); + + List getLogByReadId(Long readId); } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxCarLogConfigService.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxCarLogConfigService.java new file mode 100644 index 0000000..a8b67c3 --- /dev/null +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxCarLogConfigService.java @@ -0,0 +1,49 @@ +package com.ailanyin.admin.service; + +import com.ailanyin.model.HxCarLogConfig; +import java.util.List; + +/** +* @author ailanyin +* @version 1.0 +* @since 2022-02-15 04:15:39 +*/ +public interface HxCarLogConfigService{ + + /** + * 条件查询列表 + * + * @param hxCarLogConfig hxCarLogConfig + * @return list + */ + List getListByParam(HxCarLogConfig hxCarLogConfig); + + /** + * 新增 + * + * @param hxCarLogConfig hxCarLogConfig + */ + void insertHxCarLogConfig(HxCarLogConfig hxCarLogConfig); + + /** + * 修改 + * + * @param hxCarLogConfig hxCarLogConfig + */ + void updateHxCarLogConfig(HxCarLogConfig hxCarLogConfig); + + /** + * 批量删除 + * + * @param ids ids + */ + void deleteByIds(Long[] ids); + + /** + * 主键查询 + * + * @param id id + * @return hxCarLogConfig + */ + HxCarLogConfig getInfo(Long id); +} diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxHiddenDangerService.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxHiddenDangerService.java index 34bbb45..4466fbf 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxHiddenDangerService.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxHiddenDangerService.java @@ -35,12 +35,5 @@ public interface HxHiddenDangerService { */ Map getHiddenDangerBigPic(String type); - /** - * 安全隐患整改情况图 - * - * @return list - */ - List getWorkshopHiddenDangerBigPic(); - } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxStorehouseService.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxStorehouseService.java index 6365892..b0c45d5 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxStorehouseService.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxStorehouseService.java @@ -14,4 +14,6 @@ public interface HxStorehouseService { void importData(List list); + void insert(HxStorehouse hxStorehouse); + } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxTableConfigService.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxTableConfigService.java new file mode 100644 index 0000000..740a6fe --- /dev/null +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/HxTableConfigService.java @@ -0,0 +1,27 @@ +package com.ailanyin.admin.service; + +import com.ailanyin.model.HxTableConfig; +import java.util.List; + +/** +* @author ailanyin +* @version 1.0 +* @since 2022-03-08 09:18:14 +*/ +public interface HxTableConfigService{ + + /** + * 查询 + * + * @param tableName tableName + * @return String + */ + String selectByTableName(String tableName); + + /** + * 修改 + * + * @param hxTableConfig hxTableConfig + */ + void updateByTableName(HxTableConfig hxTableConfig); +} diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCarLocationLogServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCarLocationLogServiceImpl.java index 78a3b58..ef646a9 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCarLocationLogServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCarLocationLogServiceImpl.java @@ -1,8 +1,14 @@ package com.ailanyin.admin.service.impl; +import com.ailanyin.common.utils.DateUtil; +import com.ailanyin.common.utils.EmptyUtil; import com.ailanyin.mapper.HxCarLocationLogMapper; +import com.ailanyin.mapper.HxCarLogConfigMapper; +import com.ailanyin.mapper.HxReaderInfoMapper; import com.ailanyin.model.HxCarLocationLog; import com.ailanyin.admin.service.HxCarLocationLogService; +import com.ailanyin.model.HxCarLogConfig; +import com.ailanyin.model.HxReaderInfo; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -20,6 +26,10 @@ public class HxCarLocationLogServiceImpl implements HxCarLocationLogService { @Resource private HxCarLocationLogMapper hxCarLocationLogMapper; + @Resource + private HxReaderInfoMapper hxReaderInfoMapper; + @Resource + private HxCarLogConfigMapper hxCarLogConfigMapper; @Override public List getListByParam(HxCarLocationLog hxCarLocationLog) { @@ -55,4 +65,19 @@ public class HxCarLocationLogServiceImpl implements HxCarLocationLogService { return hxCarLocationLogMapper.getBigPicData(); } + @Override + public List getAllReadInfo() { + return hxReaderInfoMapper.getAllReadInfo(); + } + + @Override + public List getLogByReadId(Long readId) { + HxCarLogConfig config = hxCarLogConfigMapper.selectOne(); + Date selectTime = null; + if (EmptyUtil.isNotEmpty(config.getMaxDay())) { + selectTime = DateUtil.getDateBefore(new Date(),config.getMaxDay()); + } + return hxCarLocationLogMapper.selectByParam(readId,config.getMaxTotal(),selectTime); + } + } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCarLogConfigServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCarLogConfigServiceImpl.java new file mode 100644 index 0000000..d588f9c --- /dev/null +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCarLogConfigServiceImpl.java @@ -0,0 +1,53 @@ +package com.ailanyin.admin.service.impl; + +import com.ailanyin.mapper.HxCarLogConfigMapper; +import com.ailanyin.model.HxCarLogConfig; +import com.ailanyin.admin.service.HxCarLogConfigService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** +* @author ailanyin +* @version 1.0 +* @since 2022-02-15 04:15:39 +*/ +@Service +public class HxCarLogConfigServiceImpl implements HxCarLogConfigService { + + @Resource + private HxCarLogConfigMapper hxCarLogConfigMapper; + + @Override + public List getListByParam(HxCarLogConfig hxCarLogConfig) { + return hxCarLogConfigMapper.selectList(hxCarLogConfig); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void insertHxCarLogConfig(HxCarLogConfig hxCarLogConfig) { + hxCarLogConfig.setCreateTime(new Date()); + hxCarLogConfigMapper.insertSelective(hxCarLogConfig); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateHxCarLogConfig(HxCarLogConfig hxCarLogConfig) { + hxCarLogConfigMapper.updateByPrimaryKeySelective(hxCarLogConfig); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteByIds(Long[] ids) { + hxCarLogConfigMapper.deleteByIds(ids); + } + + @Override + public HxCarLogConfig getInfo(Long id) { + return hxCarLogConfigMapper.selectByPrimaryKey(id); + } + +} diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCivilIncomeServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCivilIncomeServiceImpl.java index db58a03..b8c352b 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCivilIncomeServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxCivilIncomeServiceImpl.java @@ -60,8 +60,8 @@ public class HxCivilIncomeServiceImpl implements HxCivilIncomeService { //type=1总厂情况/2=合同及产品/3本月情况 if (TYPE_1.equals(type)) { HxGeneralPlantConditions conditions = new HxGeneralPlantConditions(); - returnMap.put("list",hxGeneralPlantConditionsMapper.selectList(conditions)); - returnMap.put("total",hxGeneralPlantConditionsMapper.selectTotal(DateUtil.getNowYear() + "-%")); + returnMap.put("list", hxGeneralPlantConditionsMapper.selectList(conditions)); + returnMap.put("total", hxGeneralPlantConditionsMapper.selectTotal(DateUtil.getNowYear() + "-%")); } if (TYPE_2.equals(type)) { @@ -76,18 +76,19 @@ public class HxCivilIncomeServiceImpl implements HxCivilIncomeService { list.add(map); } ); - returnMap.put("list",list); - returnMap.put("monthList",monthList); + returnMap.put("list", list); + returnMap.put("monthList", monthList); Map totalAndAmount = hxCivilContractMapper.selectTotalAndAmountByYear(year); totalAndAmount.putIfAbsent("amount", 0); - returnMap.put("totalAndAmount",totalAndAmount); - returnMap.put("categoryTotal",hxCivilContractMapper.selectCategoryTotalByYear(year)); + returnMap.put("totalAndAmount", totalAndAmount); + returnMap.put("categoryTotal", hxCivilContractMapper.selectCategoryTotalByYear(year)); } if (TYPE_3.equals(type)) { HxCivilIncome hxCivilIncome = new HxCivilIncome(); hxCivilIncome.setMonth(DateUtil.getDate("yyyy-MM")); - returnMap.put("list",selectHxCivilIncomeList(hxCivilIncome)); + List list = selectHxCivilIncomeList(hxCivilIncome); + returnMap.put("list", EmptyUtil.isNotEmpty(list) ? list : selectHxCivilIncomeList(new HxCivilIncome())); } return returnMap; } @@ -111,7 +112,7 @@ public class HxCivilIncomeServiceImpl implements HxCivilIncomeService { String category = map.get("category").toString(); String planQuantity = map.get("planQuantity").toString(); String realQuantity = map.get("realQuantity").toString(); - map.put("quantityRate",Float.valueOf(realQuantity) * 100/Float.valueOf(planQuantity)); + map.put("quantityRate", Float.valueOf(realQuantity) * 100 / Float.valueOf(planQuantity)); categoryList.remove(category); } @@ -120,9 +121,9 @@ public class HxCivilIncomeServiceImpl implements HxCivilIncomeService { // "realQuantity": 86, // "planQuantity": 91, // "category": "其他" - map.put("category",catetory); - map.put("realQuantity",0); - map.put("planQuantity",0); + map.put("category", catetory); + map.put("realQuantity", 0); + map.put("planQuantity", 0); mapList.add(map); } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousPointServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousPointServiceImpl.java index 38e3433..471a45f 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousPointServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousPointServiceImpl.java @@ -3,6 +3,7 @@ package com.ailanyin.admin.service.impl; import com.ailanyin.admin.service.HxDangerousPointService; import com.ailanyin.common.service.RedisService; import com.ailanyin.common.utils.EmptyUtil; +import com.ailanyin.common.utils.IpUtil; import com.ailanyin.mapper.HxDangerousPointMapper; import com.ailanyin.mapper.HxDangerousSourceMapper; import com.ailanyin.mapper.HxDictMapper; @@ -15,6 +16,8 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.io.IOException; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.*; /** @@ -32,8 +35,6 @@ public class HxDangerousPointServiceImpl implements HxDangerousPointService { private String pointLevelParentId; @Value("${hxDict.sourceLevelParentId}") private String sourceLevelParentId; - @Value("${hx.ip}") - private String ip; @Value("${redis.database}") private String database; @@ -133,8 +134,12 @@ public class HxDangerousPointServiceImpl implements HxDangerousPointService { e.printStackTrace(); } - String url = "http://" + ip + "/stream/live/dangerousPoint" + hxDangerousPoint.getId()+".flv"; - redisService.set(database + ":rtmp:dangerousPoint" + hxDangerousPoint.getId(), url); + try { + String url = "http://" + IpUtil.getLocalIp() + "/stream/live/dangerousPoint" + hxDangerousPoint.getId()+".flv"; + redisService.set(database + ":rtmp:dangerousPoint" + hxDangerousPoint.getId(), url); + } catch (UnknownHostException e) { + e.printStackTrace(); + } } } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousWorkServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousWorkServiceImpl.java index a7cf8a6..862ef9a 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousWorkServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxDangerousWorkServiceImpl.java @@ -5,6 +5,7 @@ import com.ailanyin.common.utils.DateUtil; import com.ailanyin.common.utils.EmptyUtil; import com.ailanyin.mapper.HxDangerousWorkMapper; import com.ailanyin.model.HxDangerousWork; +import org.apache.commons.lang3.time.DateFormatUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -63,19 +64,20 @@ public class HxDangerousWorkServiceImpl implements HxDangerousWorkService { */ @Override public List getDangerousWorkBigPic(String type) { - return hxDangerousWorkMapper.selectByTime(handleDate(type)); + List list = hxDangerousWorkMapper.selectByTime(handleDate(type)); + return EmptyUtil.isNotEmpty(list) ? list : hxDangerousWorkMapper.selectLimit10(type); } private Map handleDate(String type) { - Map map = new HashMap(2); + Map map = new HashMap(2); if (WEEK.equals(type)) { - map.put("start", DateUtil.getBeginDayOfWeek()); - map.put("end", DateUtil.getEndDayOfWeek()); + map.put("start", DateFormatUtils.format(DateUtil.getBeginDayOfWeek(), "yyyyMMdd")); + map.put("end", DateFormatUtils.format(DateUtil.getEndDayOfWeek(), "yyyyMMdd")); } if (MONTH.equals(type)) { - map.put("start", DateUtil.getBeginDayOfMonth()); - map.put("end", DateUtil.getEndDayOfMonth()); + map.put("start", DateFormatUtils.format(DateUtil.getBeginDayOfMonth(), "yyyyMMdd")); + map.put("end", DateFormatUtils.format(DateUtil.getEndDayOfMonth(), "yyyyMMdd")); } return map; diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxHiddenDangerServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxHiddenDangerServiceImpl.java index aedb784..1e6bea1 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxHiddenDangerServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxHiddenDangerServiceImpl.java @@ -23,8 +23,6 @@ import java.util.*; @Transactional(rollbackFor = Exception.class) public class HxHiddenDangerServiceImpl implements HxHiddenDangerService { - @Value("${hxDict.alreadyUpdate}") - private String alreadyUpdate; @Resource private HxHiddenDangerMapper hxHiddenDangerMapper; @@ -51,7 +49,7 @@ public class HxHiddenDangerServiceImpl implements HxHiddenDangerService { @Override public void importData(List list) { list.forEach(hxHiddenDanger -> { - if (EmptyUtil.isNotEmpty(hxHiddenDanger.getWorkshopName())) { + if (EmptyUtil.isNotEmpty(hxHiddenDanger.getExistProblem())) { hxHiddenDanger.setCreateTime(new Date()); hxHiddenDangerMapper.insertSelective(hxHiddenDanger); } @@ -70,66 +68,34 @@ public class HxHiddenDangerServiceImpl implements HxHiddenDangerService { if (WORKSHOP.equals(type)) { String year = String.valueOf(DateUtil.getNowYear()); HxHiddenDanger hxHiddenDanger = new HxHiddenDanger(); - hxHiddenDanger.setMonth(year); + hxHiddenDanger.setCheckDate(year); map.put("list",hxHiddenDangerMapper.selectHxHiddenDangerList(hxHiddenDanger)); - List allWorkshop = hxHiddenDangerMapper.getAllWorkshopByYear(year + "-%"); - List mapList = new ArrayList<>(); - allWorkshop.forEach( - workshop -> { - Map rateMap = hxHiddenDangerMapper.selectByWorkShopAndYear(workshop,year + "-%"); - rateMap.put("name",workshop); - mapList.add(rateMap); - } - ); - map.put("allWorkshop",allWorkshop); - map.put("mapList",mapList); + // 责任单位 = 车间 + map.put("mapList",hxHiddenDangerMapper.selectByYearGroupUnit(year)); } if (GENERAL_FACTORY.equals(type)) { Integer nowYear = DateUtil.getNowYear(); - List allCategoryAndCount = hxHiddenDangerMapper.getAllCategoryAndCount(nowYear); - Long measuresCount = hxHiddenDangerMapper.getCountByMeasures(alreadyUpdate,nowYear); - Long total = hxHiddenDangerMapper.getCountByMeasures(null,nowYear); - List monthList = hxHiddenDangerMapper.getAllMonthByYear(nowYear + "-%"); + // 获取柱状图 所有月份 -> 个数 + List> monthCountList = hxHiddenDangerMapper.selectCountGroupByMonth(); + // 获取饼图 + // 获取所有分类 + List categoryList = hxHiddenDangerMapper.getAllCategoryByYear(nowYear); List mapList = new ArrayList<>(); - monthList.forEach(month -> { - Map rateMap = hxHiddenDangerMapper.getAllByMonth(month); - rateMap.put("name",month); - mapList.add(rateMap); + categoryList.forEach(category -> { + Integer count = hxHiddenDangerMapper.selectCountByCategoryAndYear(category,nowYear); + Map categoryCountMap = new HashMap(); + categoryCountMap.put("category",category); + categoryCountMap.put("count",count); + mapList.add(categoryCountMap); }); - map.put("category",allCategoryAndCount); - map.put("mapList",mapList); - map.put("monthList",monthList); - map.put("total",total); - map.put("updateCate",BigDecimalUtil.calculateCompletionRate( - measuresCount.toString(), - total.toString() - )); + map.put("category",categoryList); + map.put("mapList",mapList); + map.put("monthList",monthCountList); + map.put("total",hxHiddenDangerMapper.selectCountByCategoryAndYear(null,nowYear)); } return map; } - /** - * 安全隐患整改情况图 - * - * @return list - */ - @Override - public List getWorkshopHiddenDangerBigPic() { - List list = new ArrayList<>(); - //获取所有车间 - List workshopList = hxHiddenDangerMapper.getAllWorkshopList(); - workshopList.forEach(workshop -> { - Map map = new HashMap(3); - Map countMap = hxHiddenDangerMapper.selectWorkShopDangerCount(workshop,alreadyUpdate); - map.put("workShopName",workshop); - map.put("count",countMap.get("TOTALCOUNT")); - map.put("updateCount",countMap.get("UPDATECOUNT")); - - list.add(map); - }); - return list; - } - } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxMilitaryGeneralFactoryServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxMilitaryGeneralFactoryServiceImpl.java index a90bb31..40814cf 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxMilitaryGeneralFactoryServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxMilitaryGeneralFactoryServiceImpl.java @@ -63,23 +63,24 @@ public class HxMilitaryGeneralFactoryServiceImpl implements HxMilitaryGeneralFac Map returnMap = new HashMap(3); //type=1总厂情况/2=合同/3本月情况 if (TYPE_1.equals(type)) { - returnMap.put("list",hxMilitaryGeneralFactoryMapper.selectListGroupByMonth(null)); - returnMap.put("total",hxMilitaryGeneralFactoryMapper.selectTotal(DateUtil.getNowYear() + "-%")); - returnMap.put("modelTotal",hxMilitaryGeneralFactoryMapper.selectModelTotal(DateUtil.getNowYear() + "-%")); + returnMap.put("list", hxMilitaryGeneralFactoryMapper.selectListGroupByMonth(null)); + returnMap.put("total", hxMilitaryGeneralFactoryMapper.selectTotal(DateUtil.getNowYear() + "-%")); + returnMap.put("modelTotal", hxMilitaryGeneralFactoryMapper.selectModelTotal(DateUtil.getNowYear() + "-%")); } if (TYPE_2.equals(type)) { String year = DateUtil.getNowYear() + "-%"; HxMilitaryContract hxMilitaryContract = new HxMilitaryContract(); hxMilitaryContract.setContractDate(year); - returnMap.put("list",hxMilitaryContractMapper.selectList(hxMilitaryContract)); - returnMap.put("totalAndAmount",hxMilitaryContractMapper.selectTotalAndAmountByYear(year)); + returnMap.put("list", hxMilitaryContractMapper.selectList(hxMilitaryContract)); + returnMap.put("totalAndAmount", hxMilitaryContractMapper.selectTotalAndAmountByYear(year)); } if (TYPE_3.equals(type)) { HxMilitaryIncome hxMilitaryIncome = new HxMilitaryIncome(); hxMilitaryIncome.setMonth(DateUtil.getDate("yyyy-MM")); - returnMap.put("list",hxMilitaryIncomeService.selectList(hxMilitaryIncome)); + List list = hxMilitaryIncomeService.selectList(hxMilitaryIncome); + returnMap.put("list", EmptyUtil.isNotEmpty(list) ? list : hxMilitaryIncomeService.selectList(new HxMilitaryIncome())); } return returnMap; } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxStorehouseServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxStorehouseServiceImpl.java index ff485f7..baa5e4f 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxStorehouseServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxStorehouseServiceImpl.java @@ -1,6 +1,8 @@ package com.ailanyin.admin.service.impl; import com.ailanyin.admin.service.HxStorehouseService; +import com.ailanyin.common.exception.Asserts; +import com.ailanyin.common.utils.Base64Util; import com.ailanyin.common.utils.EmptyUtil; import com.ailanyin.mapper.HxStorehouseMapper; import com.ailanyin.model.HxStorehouse; @@ -39,7 +41,59 @@ public class HxStorehouseServiceImpl implements HxStorehouseService { }); } + @Override + public void insert(HxStorehouse hxStorehouse) { + if (EmptyUtil.isEmpty(hxStorehouse) + || !checkAuth(hxStorehouse.getAuth())) { + Asserts.fail("鉴权失败"); + } + if (EmptyUtil.isNotEmpty(hxStorehouse.getNumberNo())) { + if (checkIsExist(hxStorehouse)) { + hxStorehouseMapper.updateSelective(hxStorehouse); + } else { + hxStorehouseMapper.insertSelective(hxStorehouse); + } + } + } + private boolean checkIsExist(HxStorehouse hxStorehouse) { return hxStorehouseMapper.checkIsExist(hxStorehouse) > 0; } + + /** + * 取当前时间得unix时间戳(秒级) + * 计算时间戳每一位相加得和取最后一位拼接在时间戳后面 + * + * 如 1646204542 + * 相加(1+6+4+6+2+0+4+5+4+2 = 34 ) + * 34取最后一位 4 + * 拼接时间戳就是16462045424 + * base64加密16462045424 + * 最后得到MTY0NjIwNDU0MjQ= + * @param authStr base64加密字符串 + * @return 鉴权成功 or 失败 + */ + private boolean checkAuth(String authStr) { + if (EmptyUtil.isEmpty(authStr)) { + return false; + } + + // base64解码 + try { + String auth = new String(Base64Util.decrypt(authStr)); + if (auth.length() != 11) { + return false; + } + + Integer result = 0; + String[] unixArray = auth.substring(0, auth.length() - 1).split(""); + for (String unix : unixArray) { + result = result + Integer.parseInt(unix); + } + + return result.toString().substring(result.toString().length() - 1).equals(auth.substring(auth.length() - 1)); + } catch (Exception e) { + return false; + } + } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxTableConfigServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxTableConfigServiceImpl.java new file mode 100644 index 0000000..f76f2a9 --- /dev/null +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxTableConfigServiceImpl.java @@ -0,0 +1,33 @@ +package com.ailanyin.admin.service.impl; + +import com.ailanyin.mapper.HxTableConfigMapper; +import com.ailanyin.model.HxTableConfig; +import com.ailanyin.admin.service.HxTableConfigService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * @author ailanyin + * @version 1.0 + * @since 2022-03-08 09:18:14 + */ +@Service +public class HxTableConfigServiceImpl implements HxTableConfigService { + + @Resource + private HxTableConfigMapper hxTableConfigMapper; + + @Override + public String selectByTableName(String tableName) { + return hxTableConfigMapper.selectByTableName(tableName); + } + + @Override + public void updateByTableName(HxTableConfig hxTableConfig) { + hxTableConfigMapper.updateByTableName(hxTableConfig); + } +} diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoServiceImpl.java index 63e7149..cf44202 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoServiceImpl.java @@ -8,6 +8,7 @@ import com.ailanyin.admin.service.HxWorkHomeInfoService; import com.ailanyin.common.service.RedisService; import com.ailanyin.common.utils.EmptyUtil; import com.ailanyin.common.utils.FileUtil; +import com.ailanyin.common.utils.IpUtil; import com.ailanyin.mapper.HxVideoMapper; import com.ailanyin.mapper.HxVideoSystemMapper; import com.ailanyin.model.HxDangerousPoint; @@ -23,6 +24,8 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.io.File; import java.io.IOException; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; @@ -39,8 +42,6 @@ public class HxVideoServiceImpl implements HxVideoService { private HxVideoMapper hxVideoMapper; @Value("${upload.path}") private String path; - @Value("${hx.ip}") - private String ip; @Value("${redis.database}") private String database; @@ -205,7 +206,11 @@ public class HxVideoServiceImpl implements HxVideoService { } - String url = "http://" + ip + "/stream/live/" + fileName + ".flv"; - redisService.set(database + ":rtmp:" + fileName, url); + try { + String url = "http://" + IpUtil.getLocalIp() + "/stream/live/" + fileName + ".flv"; + redisService.set(database + ":rtmp:" + fileName, url); + } catch (UnknownHostException e) { + e.printStackTrace(); + } } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoSystemServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoSystemServiceImpl.java index 38141fe..0372eb7 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoSystemServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxVideoSystemServiceImpl.java @@ -3,6 +3,7 @@ package com.ailanyin.admin.service.impl; import com.ailanyin.admin.service.HxVideoSystemService; import com.ailanyin.common.service.RedisService; import com.ailanyin.common.utils.EmptyUtil; +import com.ailanyin.common.utils.IpUtil; import com.ailanyin.mapper.HxVideoSystemMapper; import com.ailanyin.model.HxVideoSystem; import org.springframework.beans.factory.annotation.Autowired; @@ -12,6 +13,8 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.io.IOException; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.List; /** @@ -25,8 +28,6 @@ public class HxVideoSystemServiceImpl implements HxVideoSystemService { @Resource private HxVideoSystemMapper hxVideoSystemMapper; - @Value("${hx.ip}") - private String ip; @Value("${redis.database}") private String database; @@ -65,9 +66,12 @@ public class HxVideoSystemServiceImpl implements HxVideoSystemService { } catch (IOException e) { e.printStackTrace(); } - - String url = "http://" + ip + "/stream/live/video" + hxVideoSystem.getId()+".flv"; - redisService.set(database + ":rtmp:video" + hxVideoSystem.getId(), url); + try { + String url = "http://" + IpUtil.getLocalIp() + "/stream/live/video" + hxVideoSystem.getId()+".flv"; + redisService.set(database + ":rtmp:video" + hxVideoSystem.getId(), url); + } catch (UnknownHostException e) { + e.printStackTrace(); + } } } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxWorkHomeInfoServiceImpl.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxWorkHomeInfoServiceImpl.java index 93f6ae1..84b3670 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxWorkHomeInfoServiceImpl.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/service/impl/HxWorkHomeInfoServiceImpl.java @@ -4,6 +4,7 @@ import com.ailanyin.admin.service.HxWorkHomeInfoService; import com.ailanyin.common.service.RedisService; import com.ailanyin.common.utils.BigDecimalUtil; import com.ailanyin.common.utils.EmptyUtil; +import com.ailanyin.common.utils.IpUtil; import com.ailanyin.mapper.HxWorkHomeInfoMapper; import com.ailanyin.model.HxWorkHomeInfo; import com.ailanyin.model.HxWorkHomeInfo; @@ -13,6 +14,8 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.io.IOException; +import java.net.InetAddress; +import java.net.UnknownHostException; import java.util.List; /** @@ -25,8 +28,6 @@ import java.util.List; public class HxWorkHomeInfoServiceImpl implements HxWorkHomeInfoService { @Resource private HxWorkHomeInfoMapper hxWorkHomeInfoMapper; - @Value("${hx.ip}") - private String ip; @Value("${redis.database}") private String database; @@ -72,8 +73,12 @@ public class HxWorkHomeInfoServiceImpl implements HxWorkHomeInfoService { e.printStackTrace(); } - String url = "http://" + ip + "/stream/live/hxWorkHomeInfo" + hxWorkHomeInfo.getId()+".flv"; - redisService.set(database + ":rtmp:hxWorkHomeInfo" + hxWorkHomeInfo.getId(), url); + try { + String url = "http://" + IpUtil.getLocalIp() + "/stream/live/hxWorkHomeInfo" + hxWorkHomeInfo.getId()+".flv"; + redisService.set(database + ":rtmp:hxWorkHomeInfo" + hxWorkHomeInfo.getId(), url); + } catch (UnknownHostException e) { + e.printStackTrace(); + } } } diff --git a/ailanyin-admin/src/main/java/com/ailanyin/admin/socket/SocketServerClientHandler.java b/ailanyin-admin/src/main/java/com/ailanyin/admin/socket/SocketServerClientHandler.java index 137f04d..8c4645d 100644 --- a/ailanyin-admin/src/main/java/com/ailanyin/admin/socket/SocketServerClientHandler.java +++ b/ailanyin-admin/src/main/java/com/ailanyin/admin/socket/SocketServerClientHandler.java @@ -82,10 +82,11 @@ public class SocketServerClientHandler extends Thread { } private boolean checkIsNeedUpload(long cardNumber) { - if (redisService.hasKey(database + ":business:uploadInterval:" + cardNumber)) { + /*if (redisService.hasKey(database + ":business:uploadInterval:" + cardNumber)) { return false; } redisService.set(database + ":business:uploadInterval:" + cardNumber, cardNumber, Integer.valueOf(redisService.get(database + ":business:config:uploadInterval").toString())); +*/ return true; } @@ -132,11 +133,18 @@ public class SocketServerClientHandler extends Thread { if (distance >= 100) { return; } + //多次进入或出去公房则不记录 + if (checkIsManyLog(hxReaderInfo, distance, hxCarLocation.getLocationCardNum(), hxReaderInfo.getId())) { + return; + } log.setDistance(distance); + log.setStatus(hxReaderInfo.getRecordDistance() < distance ? "0":"1"); //低电压 log.setLowVoltage(String.valueOf(Integer.parseInt(split[8], 16))); //读卡器id log.setReadId(hxReaderInfo.getId()); + //读卡器名称 + log.setReadName(hxReaderInfo.getReaderName()); //与正北夹角 log.setNorthAngle(hxReaderInfo.getNorthAngle()); //汽车横坐标 @@ -162,6 +170,25 @@ public class SocketServerClientHandler extends Thread { } } + private boolean checkIsManyLog(HxReaderInfo hxReaderInfo, Integer distance, String cardNum, Long readerInfoId) { + + Integer lastDistance = hxCarLocationLogMapper.selectLastLogDistanceByCardNumAndReadId(cardNum, readerInfoId); + + if (lastDistance == null) { + return false; + } + + if (lastDistance > hxReaderInfo.getRecordDistance() && distance > hxReaderInfo.getRecordDistance()) { + return true; + } + + if (lastDistance < hxReaderInfo.getRecordDistance() && distance < hxReaderInfo.getRecordDistance()) { + return true; + } + + return false; + } + private String calculationAbscissa(HxReaderInfo hxReaderInfo, Integer distance) { HxCarLocationMap hxCarLocationMap = getHxCarLocationMap(); return String.valueOf(100 * (Float.valueOf(calculationSin(distance, hxReaderInfo.getNorthAngle())) * hxCarLocationMap.getScale() @@ -183,12 +210,12 @@ public class SocketServerClientHandler extends Thread { } private HxCarLocationMap getHxCarLocationMap() { - if (redisService.hasKey(database +":business:carLocationMap")) { - return (HxCarLocationMap) redisService.get(database +":business:carLocationMap"); + if (redisService.hasKey(database + ":business:carLocationMap")) { + return (HxCarLocationMap) redisService.get(database + ":business:carLocationMap"); } HxCarLocationMap map = hxCarLocationMapMapper.selectList(new HxCarLocationMap()).get(0); - redisService.set(database +":business:carLocationMap",map); + redisService.set(database + ":business:carLocationMap", map); return map; } } diff --git a/ailanyin-admin/src/main/resources/application-prod.yml b/ailanyin-admin/src/main/resources/application-prod.yml index 01f3a4b..4c30715 100644 --- a/ailanyin-admin/src/main/resources/application-prod.yml +++ b/ailanyin-admin/src/main/resources/application-prod.yml @@ -5,6 +5,7 @@ spring: url: jdbc:dm://localhost:5236/AITEST?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 username: SYSDBA password: root12345 + #password: shangqie0428 driver-class-name: dm.jdbc.driver.DmDriver validation-query: SELECT 1 @@ -26,4 +27,5 @@ ailanyin: database-url: jdbc:dm://localhost:5236/AITEST?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8 database-username: SYSDBA database-password: root12345 + #database-password: shangqie0428 diff --git a/ailanyin-admin/src/main/resources/sql/hx_car_location_log_1.sql b/ailanyin-admin/src/main/resources/sql/hx_car_location_log_1.sql new file mode 100644 index 0000000..4112ba5 --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/hx_car_location_log_1.sql @@ -0,0 +1,40 @@ +drop table "ROOT"."hx_car_location_log"; + +CREATE TABLE "ROOT"."hx_car_location_log" +( +"id" BIGINT IDENTITY(1, 1) NOT NULL, +"card_number" VARCHAR(255), +"distance" INT, +"low_voltage" INT, +"read_id" BIGINT, +"read_name" VARCHAR(255), +"north_angle" INT, +"car_abscissa" VARCHAR(255), +"car_ordinate" VARCHAR(255), +"car_id" VARCHAR(255), +"driver_name" VARCHAR(255), +"driver_phone" VARCHAR(255), +"status" VARCHAR(255), +"create_time" TIMESTAMP(0), + +NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ; + +COMMENT ON TABLE "ROOT"."hx_car_location_log" IS '汽车位置记录日志'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."car_abscissa" IS '汽车横坐标'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."car_id" IS '车牌号'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."car_ordinate" IS '汽车纵坐标'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."card_number" IS '卡片编号'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."create_time" IS '录入时间'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."distance" IS '距离'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."driver_name" IS '驾驶人姓名'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."driver_phone" IS '驾驶人手机号'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."id" IS 'ID'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."low_voltage" IS '低电压(1->是,0->否)'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."north_angle" IS '与正北夹角'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."read_id" IS '阅读器Id'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."read_name" IS '读卡器名称'; +COMMENT ON COLUMN "ROOT"."hx_car_location_log"."status" IS '进or出(1->进,0->出)'; + + +CREATE UNIQUE INDEX "INDEX173691208784900" ON "ROOT"."hx_car_location_log"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ; + diff --git a/ailanyin-admin/src/main/resources/sql/hx_car_log_config_0.sql b/ailanyin-admin/src/main/resources/sql/hx_car_log_config_0.sql new file mode 100644 index 0000000..15f76c2 --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/hx_car_log_config_0.sql @@ -0,0 +1,14 @@ +CREATE TABLE "ROOT"."hx_car_log_config" +( +"id" BIGINT IDENTITY(1, 1) NOT NULL, +"max_total" INT, +"max_day" INT, +"create_time" TIMESTAMP(0), +NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ; + +COMMENT ON COLUMN "ROOT"."hx_car_log_config"."max_day" IS '最大天数'; +COMMENT ON COLUMN "ROOT"."hx_car_log_config"."max_total" IS '最大条数'; + + +CREATE UNIQUE INDEX "INDEX26167740331500" ON "ROOT"."hx_car_log_config"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ; + diff --git a/ailanyin-admin/src/main/resources/sql/hx_dangerous_work_0.sql b/ailanyin-admin/src/main/resources/sql/hx_dangerous_work_0.sql new file mode 100644 index 0000000..f7e3bcf --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/hx_dangerous_work_0.sql @@ -0,0 +1,30 @@ +drop table "ROOT"."hx_dangerous_work"; + + +CREATE TABLE "ROOT"."hx_dangerous_work" +( +"id" BIGINT IDENTITY(1, 1) NOT NULL, +"start_date" VARCHAR(255), +"end_date" VARCHAR(255), +"dept_name" VARCHAR(255), +"work_address" VARCHAR(255), +"worker_total" VARCHAR(255), +"work_content" VARCHAR(255), +"remark" VARCHAR(255), +"create_time" TIMESTAMP(0), +NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ; + +COMMENT ON COLUMN "ROOT"."hx_dangerous_work"."dept_name" IS '部门名称'; +COMMENT ON COLUMN "ROOT"."hx_dangerous_work"."end_date" IS '结束日期'; +COMMENT ON COLUMN "ROOT"."hx_dangerous_work"."remark" IS '备注'; +COMMENT ON COLUMN "ROOT"."hx_dangerous_work"."start_date" IS '开始日期'; +COMMENT ON COLUMN "ROOT"."hx_dangerous_work"."work_address" IS '作业地点'; +COMMENT ON COLUMN "ROOT"."hx_dangerous_work"."work_content" IS '作业内容'; +COMMENT ON COLUMN "ROOT"."hx_dangerous_work"."worker_total" IS '作业人数'; + + + +CREATE INDEX "select_time_index" ON "ROOT"."hx_dangerous_work"("start_date" ASC,"end_date" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ; +CREATE UNIQUE INDEX "INDEX18622088418500" ON "ROOT"."hx_dangerous_work"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ; + + diff --git a/ailanyin-admin/src/main/resources/sql/hx_hidden_danger_0.sql b/ailanyin-admin/src/main/resources/sql/hx_hidden_danger_0.sql new file mode 100644 index 0000000..4a30bff --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/hx_hidden_danger_0.sql @@ -0,0 +1,31 @@ +drop table "ROOT"."hx_hidden_danger"; + + +CREATE TABLE "ROOT"."hx_hidden_danger" +( +"id" BIGINT IDENTITY(1, 1) NOT NULL, +"check_date" VARCHAR(255), +"address" VARCHAR(255), +"exist_problem" VARCHAR(255), +"category" VARCHAR(255), +"update_suggest" VARCHAR(255), +"temp_update_method" VARCHAR(255), +"responsible_unit" VARCHAR(255), +"responsible_person" VARCHAR(255), +"suggest_complete_time" VARCHAR(255), +"create_time" TIMESTAMP(0), +NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ; + +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."address" IS '所在位置'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."category" IS '类别'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."check_date" IS '检查日期'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."exist_problem" IS '存在问题'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."responsible_person" IS '责任人'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."responsible_unit" IS '责任单位'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."suggest_complete_time" IS '建议完成日期'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."temp_update_method" IS '临时整改建议'; +COMMENT ON COLUMN "ROOT"."hx_hidden_danger"."update_suggest" IS '整改建议'; + + +CREATE UNIQUE INDEX "INDEX915279446700" ON "ROOT"."hx_hidden_danger"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ; + diff --git a/ailanyin-admin/src/main/resources/sql/hx_month_dynamic_0.sql b/ailanyin-admin/src/main/resources/sql/hx_month_dynamic_0.sql new file mode 100644 index 0000000..eeb2f89 --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/hx_month_dynamic_0.sql @@ -0,0 +1,25 @@ +CREATE TABLE "ROOT"."hx_month_dynamic" +( +"id" BIGINT IDENTITY(1, 1) NOT NULL, +"month" VARCHAR(255), +"income" VARCHAR(255), +"expenditure" VARCHAR(255), +"new_contract" VARCHAR(255), +"safety_problem" VARCHAR(255), +"quality_problem" VARCHAR(255), +"create_time" TIMESTAMP(0), +NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ; + +COMMENT ON TABLE "ROOT"."hx_month_dynamic" IS '本月动态'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."create_time" IS '录入时间'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."expenditure" IS '本月支出'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."id" IS 'ID'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."income" IS '本月收入'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."month" IS '月份'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."new_contract" IS '本月新签合同数'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."quality_problem" IS '本月质量问题'; +COMMENT ON COLUMN "ROOT"."hx_month_dynamic"."safety_problem" IS '本月安全问题数'; + + +CREATE UNIQUE INDEX "INDEX4638228020500" ON "ROOT"."hx_month_dynamic"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ; + diff --git a/ailanyin-admin/src/main/resources/sql/hx_reader_info_1.sql b/ailanyin-admin/src/main/resources/sql/hx_reader_info_1.sql new file mode 100644 index 0000000..1eda383 --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/hx_reader_info_1.sql @@ -0,0 +1,31 @@ +drop table "ROOT"."hx_reader_info"; +CREATE TABLE "ROOT"."hx_reader_info" +( +"id" BIGINT NOT NULL, +"reader_name" VARCHAR(255), +"abscissa" INT, +"ordinate" INT, +"north_angle" INT, +"reader_ip" VARCHAR(255), +"reader_port" INT, +"record_distance" INT, +"create_time" TIMESTAMP(0), +NOT CLUSTER PRIMARY KEY("id")) STORAGE(ON "AITEST", CLUSTERBTR) ; + +COMMENT ON TABLE "ROOT"."hx_reader_info" IS '读卡器'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."abscissa" IS '横坐标'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."create_time" IS '录入时间'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."id" IS 'ID'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."north_angle" IS '与正北夹角'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."ordinate" IS '纵坐标'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."reader_ip" IS '读卡器静态ip'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."reader_name" IS '读卡器名称'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."reader_port" IS '读卡器端口'; +COMMENT ON COLUMN "ROOT"."hx_reader_info"."record_distance" IS '进出工房设置距离'; + + +CREATE UNIQUE INDEX "INDEX6215806402700" ON "ROOT"."hx_reader_info"("id" ASC) STORAGE(ON "AITEST", CLUSTERBTR) ; + + + + diff --git a/ailanyin-admin/src/main/resources/sql/hx_table_config_0.sql b/ailanyin-admin/src/main/resources/sql/hx_table_config_0.sql new file mode 100644 index 0000000..0173b72 --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/hx_table_config_0.sql @@ -0,0 +1,8 @@ +CREATE TABLE "ROOT"."hx_table_config" +( + "table_name" VARCHAR(255) NULL, + "key_info" TEXT NULL +); + +INSERT INTO "ROOT"."hx_table_config"("table_name","key_info") VALUES('hx_hidden_danger','{"checkDate":true,"suggestCompleteTime":true,"category":true,"responsibleUnit":true,"address":true,"existProblem":true,"updateSuggest":true,"tempUpdateMethod":true,"responsiblePerson":true}'); + diff --git a/ailanyin-admin/src/main/resources/sql/sys_menu_0.sql.bak b/ailanyin-admin/src/main/resources/sql/sys_menu_0.sql similarity index 99% rename from ailanyin-admin/src/main/resources/sql/sys_menu_0.sql.bak rename to ailanyin-admin/src/main/resources/sql/sys_menu_0.sql index 03137d8..9f7ea1d 100644 --- a/ailanyin-admin/src/main/resources/sql/sys_menu_0.sql.bak +++ b/ailanyin-admin/src/main/resources/sql/sys_menu_0.sql @@ -91,4 +91,4 @@ INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","pat INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2058,'日志删除',2043,2,'',null,null,1,0,'F','0','0','business:hxCarLocationLog:remove','#','admin','2022-01-17 15:31:31','',null,''); INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2060,'地图信息修改',2045,2,'',null,null,1,0,'F','0','0','business:hxCarLocationMap:edit','#','admin','2022-01-17 15:33:59','',null,''); -SET IDENTITY_INSERT "ROOT"."sys_menu" OFF; \ No newline at end of file +SET IDENTITY_INSERT "ROOT"."sys_menu" OFF; diff --git a/ailanyin-admin/src/main/resources/sql/sys_menu_1.sql b/ailanyin-admin/src/main/resources/sql/sys_menu_1.sql new file mode 100644 index 0000000..109a315 --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/sys_menu_1.sql @@ -0,0 +1,94 @@ +delete from "ROOT"."sys_menu"; + +SET IDENTITY_INSERT "ROOT"."sys_menu" ON; +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1,'系统管理',0,12,'system',null,'',1,0,'M','0','0','','system','admin','2021-10-12 11:26:30','admin','2021-11-19 20:16:30','系统管理目录'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2,'系统监控',0,13,'monitor',null,'',1,0,'M','0','0','','monitor','admin','2021-10-12 11:26:30','admin','2021-11-19 20:16:34','系统监控目录'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(100,'用户管理',1,1,'user','system/user/index','',1,0,'C','0','0','system:user:list','user','admin','2021-10-12 11:26:30','admin','2021-10-12 13:31:12','用户管理菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(101,'角色管理',1,2,'role','system/role/index','',1,0,'C','0','0','system:role:list','peoples','admin','2021-10-12 11:26:30','',null,'角色管理菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(102,'菜单管理',1,3,'menu','system/menu/index','',1,0,'C','0','0','system:menu:list','tree-table','admin','2021-10-12 11:26:30','',null,'菜单管理菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(103,'部门管理',1,4,'dept','system/dept/index','',1,0,'C','0','0','system:dept:list','tree','admin','2021-10-12 11:26:30','',null,'部门管理菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(104,'岗位管理',1,5,'post','system/post/index','',1,0,'C','0','0','system:post:list','post','admin','2021-10-12 11:26:30','',null,'岗位管理菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(105,'字典管理',1,6,'dict','system/dict/index','',1,0,'C','0','0','system:dict:list','dict','admin','2021-10-12 11:26:30','',null,'字典管理菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(106,'参数设置',1,7,'config','system/config/index','',1,0,'C','0','0','system:config:list','edit','admin','2021-10-12 11:26:30','','2021-10-15 17:20:32','参数设置菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(112,'服务监控',2,2,'server','monitor/server/index','',1,1,'C','0','0','monitor:server:list','server','admin','2021-10-12 11:26:30','','2021-11-03 09:16:24','服务监控菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(113,'缓存监控',2,3,'cache','monitor/cache/index','',1,1,'C','0','0','monitor:cache:list','redis','admin','2021-10-12 11:26:30','','2021-11-03 09:16:20','缓存监控菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(500,'操作日志',1,9,'operlog','monitor/operlog/index','',1,1,'C','0','0','system:log:list','form','admin','2021-10-12 11:26:30','','2021-10-29 17:26:50','操作日志菜单'); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1001,'用户查询',100,1,'','','',1,0,'F','0','0','system:user:query','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1002,'用户新增',100,2,'','','',1,0,'F','0','0','system:user:add','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1003,'用户修改',100,3,'','','',1,0,'F','0','0','system:user:edit','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1004,'用户删除',100,4,'','','',1,0,'F','0','0','system:user:remove','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1005,'用户导出',100,5,'','','',1,0,'F','0','0','system:user:export','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1006,'用户导入',100,6,'','','',1,0,'F','0','0','system:user:import','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1007,'重置密码',100,7,'','','',1,0,'F','0','0','system:user:resetPwd','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1008,'角色查询',101,1,'','','',1,0,'F','0','0','system:role:query','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1009,'角色新增',101,2,'','','',1,0,'F','0','0','system:role:add','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1010,'角色修改',101,3,'','','',1,0,'F','0','0','system:role:edit','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1011,'角色删除',101,4,'','','',1,0,'F','0','0','system:role:remove','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1012,'权限重置',101,5,'','','',1,0,'F','0','0','system:role:refresh','#','admin','2021-10-12 11:26:30','','2021-10-26 14:53:55',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1013,'菜单查询',102,1,'','','',1,0,'F','0','0','system:menu:query','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1014,'菜单新增',102,2,'','','',1,0,'F','0','0','system:menu:add','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1015,'菜单修改',102,3,'','','',1,0,'F','0','0','system:menu:edit','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1016,'菜单删除',102,4,'','','',1,0,'F','0','0','system:menu:remove','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1017,'部门查询',103,1,'','','',1,0,'F','0','0','system:dept:query','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1018,'部门新增',103,2,'','','',1,0,'F','0','0','system:dept:add','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1019,'部门修改',103,3,'','','',1,0,'F','0','0','system:dept:edit','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1020,'部门删除',103,4,'','','',1,0,'F','0','0','system:dept:remove','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1021,'岗位查询',104,1,'','','',1,0,'F','0','0','system:post:query','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1022,'岗位新增',104,2,'','','',1,0,'F','0','0','system:post:add','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1023,'岗位修改',104,3,'','','',1,0,'F','0','0','system:post:edit','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1024,'岗位删除',104,4,'','','',1,0,'F','0','0','system:post:remove','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1025,'岗位导出',104,5,'','','',1,0,'F','0','0','system:post:export','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1026,'字典查询',105,1,'#','','',1,0,'F','0','0','system:dict:query','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1027,'字典新增',105,2,'#','','',1,0,'F','0','0','system:dict:add','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1028,'字典修改',105,3,'#','','',1,0,'F','0','0','system:dict:edit','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1029,'字典删除',105,4,'#','','',1,0,'F','0','0','system:dict:remove','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1030,'字典导出',105,5,'#','','',1,0,'F','0','0','system:dict:export','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1031,'参数查询',106,1,'#','','',1,0,'F','0','0','system:config:query','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1032,'参数新增',106,2,'#','','',1,0,'F','0','0','system:config:add','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1033,'参数修改',106,3,'#','','',1,0,'F','0','0','system:config:edit','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1034,'参数删除',106,4,'#','','',1,0,'F','0','0','system:config:remove','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1035,'参数导出',106,5,'#','','',1,0,'F','0','0','system:config:export','#','admin','2021-10-12 11:26:30','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1040,'操作查询',500,1,'#','','',1,0,'F','0','0','system:log:query','#','admin','2021-10-12 11:26:30','','2021-10-29 13:27:44',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1041,'操作删除',500,2,'#','','',1,0,'F','0','0','system:log:remove','#','admin','2021-10-12 11:26:30','','2021-10-29 13:27:49',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(1042,'日志导出',500,3,'#','','',1,0,'F','0','0','system:log:export','#','admin','2021-10-12 11:26:30','','2021-11-02 10:55:10',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2002,'黑名单管理',1,10,'blacklist','system/blacklist/index',null,1,1,'C','0','0','','user','','2021-11-01 16:08:18','','2021-11-01 17:30:08',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2003,'黑名单查询',2002,1,'',null,null,1,0,'F','0','0','system:blacklist:query','#','','2021-11-02 10:52:47','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2004,'黑名单删除',2002,2,'',null,null,1,0,'F','0','0','system:blacklist:remove','#','','2021-11-02 10:53:51','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2005,'黑名单导出',2002,3,'',null,null,1,0,'F','0','0','system:blacklist:export','#','','2021-11-02 10:54:21','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2006,'异常监控',2,1,'exception','monitor/exception/index',null,1,1,'C','0','0','','bug','','2021-11-02 21:51:00','','2021-11-03 09:16:54',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2007,'回收站',100,10,'',null,null,1,0,'F','0','0','system:user:recovery','#','','2021-11-03 17:00:17','','2021-11-03 17:00:38',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2008,'驾驶舱总览',2014,1,'/bigScreen/drivingCabin','',null,0,0,'C','0','0','','druid','admin','2021-11-19 20:01:17','admin','2021-12-03 16:52:27',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2009,'科研生产',2014,2,'/bigScreen/scientific',null,null,0,0,'C','0','0','','nested','admin','2021-11-19 20:17:35','admin','2021-12-03 17:10:50',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2010,'经营管理',2014,3,'/bigScreen/management',null,null,0,0,'C','0','0','','monitor','admin','2021-11-19 20:18:17','admin','2021-12-03 17:13:37',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2011,'质量管理',2014,4,'/bigScreen/qualityManage',null,null,0,0,'C','0','0','','validCode','admin','2021-11-19 20:20:38','admin','2021-12-03 17:19:18',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2012,'安全管理',2014,5,'/bigScreen/securityManage',null,null,0,0,'C','0','0','','international','admin','2021-11-19 20:21:35','admin','2021-12-03 17:25:18',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2013,'信息化管理',2014,6,'/bigScreen/information',null,null,0,0,'C','0','0','','redis','admin','2021-11-19 20:33:02','admin','2021-12-03 17:25:27',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2014,'科研生产驾驶舱',0,1,'bigScreen',null,null,1,0,'M','0','0','','guide','admin','2021-11-19 21:03:46','admin','2021-12-03 17:02:53',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2015,'用户字典',2014,7,'bigScreen','bigScreen/userDictionary/index',null,1,0,'C','0','0','','clipboard','admin','2021-12-06 09:08:53','admin','2021-12-06 09:11:45',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2023,'数据管理',0,2,'chartList',null,null,1,0,'M','0','0','','list','admin','2021-12-16 09:23:15','admin','2021-12-22 16:15:41',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2024,'驾驶舱总览',2023,1,'page1','chartList/page1/index',null,1,0,'C','0','0','','chart','admin','2021-12-16 09:24:06','admin','2021-12-16 11:11:50',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2032,'质量管理',2023,4,'page4','chartList/page4/index',null,1,0,'C','0','0','','chart','admin','2021-12-16 11:09:15','admin','2021-12-16 16:07:35',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2035,'科研生产',2023,2,'page2',null,null,1,0,'M','0','0','','list','admin','2021-12-16 11:18:30','admin','2021-12-22 16:14:58',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2036,'作业动态',2035,1,'one','chartList/page2/one/index',null,1,0,'C','0','0','','chart','admin','2021-12-16 11:18:54','admin','2021-12-16 11:21:30',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2037,'生产管理',2035,2,'two','chartList/page2/two/index',null,1,0,'C','0','0','','chart','admin','2021-12-16 11:19:56','admin','2021-12-16 11:21:43',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2038,'项目管理',2035,3,'three','chartList/page2/three/index',null,1,0,'C','0','0','','chart','admin','2021-12-16 11:20:15','admin','2021-12-16 11:21:55',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2039,'安全管理',2023,5,'page5','chartList/page5/index',null,1,0,'C','0','0',null,'chart','admin','2021-12-16 16:11:23','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2040,'经营管理',2023,3,'page3','chartList/page3/index',null,1,0,'C','0','0','','chart','admin','2021-12-16 17:06:38','admin','2021-12-17 14:41:53',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2041,'信息化管理',2023,6,'page6','chartList/page6/index',null,1,0,'C','0','0','','chart','admin','2021-12-16 17:07:38','admin','2021-12-17 10:00:59',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2042,'车辆管理',0,3,'vehicleMent',null,null,1,0,'M','0','0','','example','admin','2022-01-15 09:48:02','admin','2022-01-15 09:50:29',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2043,'日志管理',2042,5,'journal','vehicleMent/journal',null,1,0,'C','0','0','business:hxCarLocationLog:list','chart','admin','2022-01-15 09:54:27','admin','2022-01-17 15:36:16',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2044,'车辆列表',2042,4,'add','vehicleMent/add',null,1,0,'C','0','0','business:hxCarLocation:list','chart','admin','2022-01-15 09:56:08','admin','2022-01-17 15:34:50',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2045,'地图管理',2042,2,'map','vehicleMent/map',null,1,0,'C','0','0','business:hxCarLocationMap:list','chart','admin','2022-01-15 09:57:01','admin','2022-01-17 15:36:36',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2046,'读卡器管理',2042,3,'reader','vehicleMent/reader',null,1,0,'C','0','0','business:hxReaderInfo:list','chart','admin','2022-01-15 10:08:48','admin','2022-01-17 15:36:26',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2048,'车辆总览(大图)',2042,1,'overview','vehicleMent/overview',null,1,0,'C','0','0','','chart','admin','2022-01-15 16:30:06','admin','2022-02-18 09:11:42',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2049,'车辆新增',2044,1,'',null,null,1,0,'F','0','0','business:hxCarLocation:add','#','admin','2022-01-17 15:25:15','admin','2022-01-17 15:25:50',''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2050,'车辆修改',2044,2,'',null,null,1,0,'F','0','0','business:hxCarLocation:edit','#','admin','2022-01-17 15:26:27','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2052,'删除车辆',2044,4,'',null,null,1,0,'F','0','0','business:hxCarLocation:remove','#','admin','2022-01-17 15:27:24','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2053,'读卡器新增',2046,1,'',null,null,1,0,'F','0','0','business:hxReaderInfo:add','#','admin','2022-01-17 15:29:03','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2054,'读卡器修改',2046,2,'',null,null,1,0,'F','0','0','business:hxReaderInfo:edit','#','admin','2022-01-17 15:29:25','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2056,'读卡器删除',2046,4,'',null,null,1,0,'F','0','0','business:hxReaderInfo:remove','#','admin','2022-01-17 15:30:11','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2058,'日志删除',2043,2,'',null,null,1,0,'F','0','0','business:hxCarLocationLog:remove','#','admin','2022-01-17 15:31:31','',null,''); +INSERT INTO "ROOT"."sys_menu"("menu_id","menu_name","parent_id","order_num","path","component","query","is_frame","is_cache","menu_type","visible","status","perms","icon","create_by","create_time","update_by","update_time","remark") VALUES(2060,'地图信息修改',2045,2,'',null,null,1,0,'F','0','0','business:hxCarLocationMap:edit','#','admin','2022-01-17 15:33:59','',null,''); + +SET IDENTITY_INSERT "ROOT"."sys_menu" OFF; + diff --git a/ailanyin-admin/src/main/resources/sql/sys_role_menu_0.sql.bak b/ailanyin-admin/src/main/resources/sql/sys_role_menu_0.sql similarity index 100% rename from ailanyin-admin/src/main/resources/sql/sys_role_menu_0.sql.bak rename to ailanyin-admin/src/main/resources/sql/sys_role_menu_0.sql diff --git a/ailanyin-admin/src/main/resources/sql/sys_role_menu_1.sql b/ailanyin-admin/src/main/resources/sql/sys_role_menu_1.sql new file mode 100644 index 0000000..ef47200 --- /dev/null +++ b/ailanyin-admin/src/main/resources/sql/sys_role_menu_1.sql @@ -0,0 +1,145 @@ +delete from "ROOT"."sys_role_menu"; + +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,100); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,101); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,102); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,103); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,104); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,105); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,106); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,112); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,113); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,500); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1001); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1002); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1003); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1004); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1005); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1006); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1007); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1008); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1009); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1010); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1011); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1012); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1013); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1014); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1015); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1016); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1017); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1018); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1019); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1020); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1021); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1022); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1023); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1024); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1025); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1026); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1027); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1028); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1029); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1030); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1031); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1032); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1033); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1034); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1035); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1040); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1041); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,1042); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2002); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2003); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2004); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2005); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2006); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2007); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2008); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2009); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2010); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2011); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2012); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2013); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2014); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2015); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2023); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2024); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2032); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2035); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2036); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2037); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2038); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2039); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2040); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2041); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2042); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2043); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2044); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2045); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2046); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2048); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2049); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2050); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2052); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2053); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2054); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2056); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2058); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(1,2060); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,2); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,100); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,101); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,102); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,103); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,104); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,105); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,106); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,112); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,113); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,500); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1001); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1002); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1003); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1004); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1005); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1006); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1007); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1008); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1009); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1010); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1011); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1012); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1013); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1014); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1015); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1016); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1017); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1018); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1019); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1020); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1021); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1022); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1023); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1024); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1025); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1026); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1027); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1028); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1029); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1030); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1031); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1032); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1033); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1034); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1035); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1040); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1041); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,1042); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,2002); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,2003); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,2004); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,2005); +INSERT INTO "ROOT"."sys_role_menu"("role_id","menu_id") VALUES(2,2006); diff --git a/ailanyin-common/src/main/java/com/ailanyin/common/utils/Base64Util.java b/ailanyin-common/src/main/java/com/ailanyin/common/utils/Base64Util.java new file mode 100644 index 0000000..224bd86 --- /dev/null +++ b/ailanyin-common/src/main/java/com/ailanyin/common/utils/Base64Util.java @@ -0,0 +1,27 @@ +package com.ailanyin.common.utils; + +import sun.misc.BASE64Decoder; +import sun.misc.BASE64Encoder; + +/** + * @author ailanyin + * @version 1.0 + * @since 2022/3/2 0002 下午 15:31 + */ +public class Base64Util { + + /** + * BASE64解密 + * @throws Exception + */ + public static byte[] decrypt(String key) throws Exception { + return (new BASE64Decoder()).decodeBuffer(key); + } + + /** + * BASE64加密 + */ + public static String encrypt(byte[] key) throws Exception { + return (new BASE64Encoder()).encodeBuffer(key); + } +} diff --git a/ailanyin-common/src/main/java/com/ailanyin/common/utils/DateUtil.java b/ailanyin-common/src/main/java/com/ailanyin/common/utils/DateUtil.java index 9aa4055..7a04814 100644 --- a/ailanyin-common/src/main/java/com/ailanyin/common/utils/DateUtil.java +++ b/ailanyin-common/src/main/java/com/ailanyin/common/utils/DateUtil.java @@ -331,13 +331,22 @@ public class DateUtil extends org.apache.commons.lang3.time.DateUtils { return getDayEndTime(cal.getTime()); } - public static int test() { - Calendar instance = Calendar.getInstance(); - instance.set(Calendar.DAY_OF_MONTH,4); - return instance.get(Calendar.WEEK_OF_MONTH); + /** + * 得到几天前的时间 + * @param d + * @param day + * @return + */ + public static Date getDateBefore(Date d,int day){ + Calendar now =Calendar.getInstance(); + now.setTime(d); + now.set(Calendar.DATE,now.get(Calendar.DATE)-day); + return now.getTime(); } + public static void main(String[] args) { - System.out.println(test()); + Date date = getDateBefore(new Date(), 3); + System.out.println(date); } } diff --git a/ailanyin-common/src/main/java/com/ailanyin/common/utils/IpUtil.java b/ailanyin-common/src/main/java/com/ailanyin/common/utils/IpUtil.java index 6e6956b..fe856f6 100644 --- a/ailanyin-common/src/main/java/com/ailanyin/common/utils/IpUtil.java +++ b/ailanyin-common/src/main/java/com/ailanyin/common/utils/IpUtil.java @@ -5,7 +5,10 @@ import com.alibaba.fastjson.JSONObject; import javax.servlet.http.HttpServletRequest; import java.net.InetAddress; +import java.net.NetworkInterface; +import java.net.SocketException; import java.net.UnknownHostException; +import java.util.Enumeration; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -109,4 +112,76 @@ public class IpUtil { Matcher matcher = pattern.matcher(ipStr); return matcher.matches(); } + + /** + * 获取本地IP地址 + * + * @throws SocketException + */ + public static String getLocalIp() throws UnknownHostException { + try { + if (isWindowsOS()) { + return InetAddress.getLocalHost().getHostAddress(); + } else { + return getLinuxLocalIp(); + } + } catch (SocketException e) { + e.printStackTrace(); + } + + return null; + } + + /** + * 判断操作系统是否是Windows + * + * @return + */ + public static boolean isWindowsOS() { + boolean isWindowsOS = false; + String osName = System.getProperty("os.name"); + if (osName.toLowerCase().indexOf("windows") > -1) { + isWindowsOS = true; + } + return isWindowsOS; + } + + /** + * 获取本地Host名称 + */ + public static String getLocalHostName() throws UnknownHostException { + return InetAddress.getLocalHost().getHostName(); + } + + /** + * 获取Linux下的IP地址 + * + * @return IP地址 + * @throws SocketException + */ + private static String getLinuxLocalIp() throws SocketException { + String ip = ""; + try { + for (Enumeration en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements(); ) { + NetworkInterface intf = en.nextElement(); + String name = intf.getName(); + if (!name.contains("docker") && !name.contains("lo")) { + for (Enumeration enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) { + InetAddress inetAddress = enumIpAddr.nextElement(); + if (!inetAddress.isLoopbackAddress()) { + String ipaddress = inetAddress.getHostAddress().toString(); + if (!ipaddress.contains("::") && !ipaddress.contains("0:0:") && !ipaddress.contains("fe80")) { + ip = ipaddress; + } + } + } + } + } + } catch (SocketException ex) { + System.out.println("获取ip地址异常"); + ip = "127.0.0.1"; + ex.printStackTrace(); + } + return ip; + } } diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxCarLocationLogMapper.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxCarLocationLogMapper.java index 0393843..c7b7fcf 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxCarLocationLogMapper.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxCarLocationLogMapper.java @@ -1,20 +1,22 @@ package com.ailanyin.mapper; import com.ailanyin.model.HxCarLocationLog; +import com.ailanyin.model.HxReaderInfo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import java.util.Date; import java.util.List; /** -* @author ailanyin -* @version 1.0 -* @since 2022-01-15 09:50:40 -*/ + * @author ailanyin + * @version 1.0 + * @since 2022-01-15 09:50:40 + */ @Mapper -public interface HxCarLocationLogMapper{ +public interface HxCarLocationLogMapper { - /** + /** * 条件查询列表 * * @param hxCarLocationLog hxCarLocationLog @@ -58,4 +60,7 @@ public interface HxCarLocationLogMapper{ */ List getBigPicData(); + Integer selectLastLogDistanceByCardNumAndReadId(@Param("cardNum") String cardNum, @Param("readId") Long readerInfoId); + + List selectByParam(@Param("readId") Long readId, @Param("maxTotal") Integer maxTotal, @Param("selectTime") Date selectTime); } diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxCarLogConfigMapper.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxCarLogConfigMapper.java new file mode 100644 index 0000000..ab715d0 --- /dev/null +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxCarLogConfigMapper.java @@ -0,0 +1,56 @@ +package com.ailanyin.mapper; + +import com.ailanyin.model.HxCarLogConfig; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** +* @author ailanyin +* @version 1.0 +* @since 2022-02-15 04:15:39 +*/ +@Mapper +public interface HxCarLogConfigMapper{ + + /** + * 条件查询列表 + * + * @param hxCarLogConfig hxCarLogConfig + * @return list + */ + List selectList(HxCarLogConfig hxCarLogConfig); + + /** + * 新增 + * + * @param hxCarLogConfig hxCarLogConfig + */ + void insertSelective(HxCarLogConfig hxCarLogConfig); + + /** + * 修改 + * + * @param hxCarLogConfig hxCarLogConfig + */ + void updateByPrimaryKeySelective(HxCarLogConfig hxCarLogConfig); + + /** + * 批量删除 + * + * @param ids ids + */ + void deleteByIds(@Param("list") Long[] ids); + + /** + * 主键查询 + * + * @param id id + * @return hxCarLogConfig + */ + HxCarLogConfig selectByPrimaryKey(Long id); + + HxCarLogConfig selectOne(); + +} diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxDangerousWorkMapper.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxDangerousWorkMapper.java index d324a26..0b95f54 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxDangerousWorkMapper.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxDangerousWorkMapper.java @@ -35,4 +35,5 @@ public interface HxDangerousWorkMapper { */ List selectByTime(Map handleDate); + List selectLimit10(String type); } diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxHiddenDangerMapper.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxHiddenDangerMapper.java index 4f309b3..dcf9279 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxHiddenDangerMapper.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxHiddenDangerMapper.java @@ -29,43 +29,11 @@ public interface HxHiddenDangerMapper { */ void insertSelective(HxHiddenDanger hxHiddenDanger); - /** - * 获取所有的存在的类别以及数量 - * - * @param year 年份 - * @return list - */ - List getAllCategoryAndCount(Integer year); + List> selectCountGroupByMonth(); - /** - * 根据年和整改情况查询个数 - * - * @param alreadyUpdate alreadyUpdate - * @param year year - * @return count - */ - Long getCountByMeasures(@Param("alreadyUpdate") String alreadyUpdate, @Param("year") Integer year); + List getAllCategoryByYear(Integer nowYear); - /** - * 获取所有车间 - * - * @return list - */ - List getAllWorkshopList(); + Integer selectCountByCategoryAndYear(@Param("category") String category, @Param("nowYear") Integer nowYear); - /** - * 获取已整改 和 所有 - * @param workshop 车间 - * @param alreadyUpdate 已整改 - * @return map - */ - Map selectWorkShopDangerCount(@Param("workshop") String workshop, @Param("alreadyUpdate") String alreadyUpdate); - - List getAllWorkshopByYear(String year); - - Map selectByWorkShopAndYear(@Param("workshop") String workshop,@Param("year") String year); - - List getAllMonthByYear(String year); - - Map getAllByMonth(String month); + List selectByYearGroupUnit(String year); } diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxReaderInfoMapper.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxReaderInfoMapper.java index 8a2a441..c3ba38a 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxReaderInfoMapper.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxReaderInfoMapper.java @@ -58,4 +58,7 @@ public interface HxReaderInfoMapper{ * @return 个数 */ int checkIsExist(HxReaderInfo hxReaderInfo); + + List getAllReadInfo(); + } diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxTableConfigMapper.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxTableConfigMapper.java new file mode 100644 index 0000000..3623058 --- /dev/null +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/mapper/HxTableConfigMapper.java @@ -0,0 +1,33 @@ +package com.ailanyin.mapper; + +import com.ailanyin.model.HxTableConfig; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** +* @author ailanyin +* @version 1.0 +* @since 2022-03-08 09:18:14 +*/ +@Mapper +public interface HxTableConfigMapper{ + + /** + * 查询 + * + * @param tableName tableName + * @return String + */ + String selectByTableName(String tableName); + + /** + * 修改 + * + * @param hxTableConfig hxTableConfig + */ + void updateByTableName(HxTableConfig hxTableConfig); + + +} diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxCarLocationLog.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxCarLocationLog.java index 6d16889..794454b 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxCarLocationLog.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxCarLocationLog.java @@ -40,6 +40,10 @@ public class HxCarLocationLog implements Serializable { @Excel(name = "读卡器ID", width = 20) private Long readId; + @ApiModelProperty(value = "读卡器名称") + @Excel(name = "读卡器名称", width = 20) + private String readName; + @ApiModelProperty(value = "与正北夹角") @Excel(name = "与正北夹角", width = 20) private Integer northAngle; @@ -64,6 +68,10 @@ public class HxCarLocationLog implements Serializable { @Excel(name = "驾驶人手机号", width = 20) private String driverPhone; + @ApiModelProperty(value = "进or出(1->进,0->出)") + @Excel(name = "进or出(1->进,0->出)", width = 20) + private String status; + @ApiModelProperty(value = "录入时间") @Excel(name = "录入时间", format = "yyyy-MM-dd HH:mm:ss", width = 30) private Date createTime; diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxCarLogConfig.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxCarLogConfig.java new file mode 100644 index 0000000..b1b9335 --- /dev/null +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxCarLogConfig.java @@ -0,0 +1,38 @@ +package com.ailanyin.model; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** +* +* +* @author ailanyin +* @version 1.0 +* @since 2022-02-15 04:15:39 +*/ +@Data +public class HxCarLogConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "") + @Excel(name = "", width = 20) + private Long id; + + @ApiModelProperty(value = "最大条数") + @Excel(name = "最大条数", width = 20) + private Integer maxTotal; + + @ApiModelProperty(value = "最大天数") + @Excel(name = "最大天数", width = 20) + private Integer maxDay; + + @ApiModelProperty(value = "") + @Excel(name = "", format = "yyyy-MM-dd HH:mm:ss", width = 30) + private Date createTime; + +} diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxDangerousWork.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxDangerousWork.java index 6389443..5bd60cc 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxDangerousWork.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxDangerousWork.java @@ -17,14 +17,27 @@ public class HxDangerousWork implements Serializable { private Long id; - @ApiModelProperty(value = "日期") - @Excel(name = "日期", width = 20) - private String todayDate; + @ApiModelProperty(value = "开始日期") + @Excel(name = "开始日期", width = 20) + private String startDate; - @ApiModelProperty(value = "部门名称") - @Excel(name = "部门名称", width = 20) + @ApiModelProperty(value = "结束日期") + @Excel(name = "结束日期", width = 20) + private String endDate; + + @ApiModelProperty(value = "单位名称") + @Excel(name = "单位名称", width = 20) private String deptName; + @ApiModelProperty(value = "作业地点") + @Excel(name = "作业地点", width = 20) + private String workAddress; + + @ApiModelProperty(value = "作业人数") + @Excel(name = "作业人数", width = 20) + private String workerTotal; + + @ApiModelProperty(value = "作业内容") @Excel(name = "作业内容", width = 20) private String workContent; diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxHiddenDanger.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxHiddenDanger.java index a5a8247..4b17a23 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxHiddenDanger.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxHiddenDanger.java @@ -17,33 +17,41 @@ public class HxHiddenDanger implements Serializable { private Long id; - @ApiModelProperty(value = "月份") - @Excel(name = "月份", width = 20) - private String month; + @ApiModelProperty(value = "检查日期") + @Excel(name = "检查日期", width = 20) + private String checkDate; - @ApiModelProperty(value = "车间名称") - @Excel(name = "车间名称", width = 20) - private String workshopName; + @ApiModelProperty(value = "所在位置") + @Excel(name = "所在位置", width = 20) + private String address; - @ApiModelProperty(value = "隐患内容") - @Excel(name = "隐患内容", width = 20) - private String dangerContent; + @ApiModelProperty(value = "存在问题") + @Excel(name = "存在问题", width = 20) + private String existProblem; @ApiModelProperty(value = "类别") @Excel(name = "类别", width = 20) private String category; - @ApiModelProperty(value = "措施") - @Excel(name = "措施", width = 20) - private String measures; + @ApiModelProperty(value = "整改建议") + @Excel(name = "整改建议", width = 20) + private String updateSuggest; + + @ApiModelProperty(value = "临时控制措施") + @Excel(name = "临时控制措施", width = 20) + private String tempUpdateMethod; + + @ApiModelProperty(value = "责任单位") + @Excel(name = "责任单位", width = 20) + private String responsibleUnit; @ApiModelProperty(value = "责任人") @Excel(name = "责任人", width = 20) - private String personLiable; + private String responsiblePerson; - @ApiModelProperty(value = "备注") - @Excel(name = "备注", width = 20) - private String remark; + @ApiModelProperty(value = "建议完成日期") + @Excel(name = "建议完成日期", width = 20) + private String suggestCompleteTime; private Date createTime; diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxReaderInfo.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxReaderInfo.java index c01098e..445ed82 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxReaderInfo.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxReaderInfo.java @@ -47,6 +47,10 @@ public class HxReaderInfo implements Serializable { @Excel(name = "读卡器端口", width = 20) private Integer readerPort; + @ApiModelProperty(value = "记录距离") + @Excel(name = "记录距离", width = 20) + private Integer recordDistance; + @ApiModelProperty(value = "录入时间") @Excel(name = "录入时间", format = "yyyy-MM-dd HH:mm:ss", width = 30) private Date createTime; diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxStorehouse.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxStorehouse.java index 8e1fc37..ab7dae5 100644 --- a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxStorehouse.java +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxStorehouse.java @@ -37,5 +37,8 @@ public class HxStorehouse implements Serializable { @Excel(name = "产品信息", width = 20) private String productInfo; + @ApiModelProperty(value = "鉴权信息") + private String auth; + private static final long serialVersionUID = 1L; } diff --git a/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxTableConfig.java b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxTableConfig.java new file mode 100644 index 0000000..382eba3 --- /dev/null +++ b/ailanyin-model-mapper/src/main/java/com/ailanyin/model/HxTableConfig.java @@ -0,0 +1,26 @@ +package com.ailanyin.model; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** +* +* +* @author ailanyin +* @version 1.0 +* @since 2022-03-08 09:18:14 +*/ +@Data +public class HxTableConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + private String tableName; + + private String keyInfo; + +} diff --git a/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxCarLocationLogMapper.xml b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxCarLocationLogMapper.xml index f06e61a..3d84eec 100644 --- a/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxCarLocationLogMapper.xml +++ b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxCarLocationLogMapper.xml @@ -10,12 +10,14 @@ + + @@ -25,15 +27,42 @@ "distance", "low_voltage", "read_id", + "read_name", "north_angle", "car_abscissa", "car_ordinate", "car_id", "driver_name", "driver_phone", + "status", "create_time" + + + + + select + + from ROOT."hx_car_log_config" + + + and "id" = #{id,jdbcType=BIGINT} + + + and "max_total" = #{maxTotal,jdbcType=INTEGER} + + + and "max_day" = #{maxDay,jdbcType=INTEGER} + + + and "create_time" = #{createTime,jdbcType=TIMESTAMP} + + + order by "id" desc + + + + insert into ROOT."hx_car_log_config" + + + "id", + + + "max_total", + + + "max_day", + + + "create_time", + + + + + #{id,jdbcType=BIGINT}, + + + #{maxTotal,jdbcType=INTEGER}, + + + #{maxDay,jdbcType=INTEGER}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + + + + + + + + + update ROOT."hx_car_log_config" + + + "id" = #{id,jdbcType=BIGINT}, + + + "max_total" = #{maxTotal,jdbcType=INTEGER}, + + + "max_day" = #{maxDay,jdbcType=INTEGER}, + + + "create_time" = #{createTime,jdbcType=TIMESTAMP}, + + + where "id" = #{id} + + + + delete from ROOT."hx_car_log_config" where "id" in + + #{item} + + + diff --git a/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxDangerousWorkMapper.xml b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxDangerousWorkMapper.xml index ca61866..3a0773f 100644 --- a/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxDangerousWorkMapper.xml +++ b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxDangerousWorkMapper.xml @@ -3,14 +3,18 @@ - + + + + - "id", "today_date", "dept_name", "work_content", "remark", "create_time" + "id", "start_date", "end_date", "dept_name", "work_address", "worker_total", "work_content", + "remark", "create_time" - select "hx_hidden_danger"."category",COUNT("id") as numbercount - from ROOT."hx_hidden_danger" - where "month" like concat(#{year}, '-%') - group BY "hx_hidden_danger"."category" + - + select "category" as "category" + from Root."hx_hidden_danger" + where "check_date" like concat(#{nowYear}, '%') + group BY "category" + + + - - - - - - - - - - + select "responsible_unit" as "unit",count("id") as "count" + from Root."hx_hidden_danger" where "check_date" like concat(#{year}, '%') + group BY "responsible_unit" diff --git a/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxReaderInfoMapper.xml b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxReaderInfoMapper.xml index 4438bb5..ad6f344 100644 --- a/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxReaderInfoMapper.xml +++ b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxReaderInfoMapper.xml @@ -12,6 +12,7 @@ + @@ -23,6 +24,7 @@ "north_angle", "reader_ip", "reader_port", + "record_distance", "create_time" @@ -80,8 +82,11 @@ "reader_port", + + "record_distance", + - "create_time", + "create_time" @@ -106,6 +111,9 @@ #{readerPort,jdbcType=INTEGER}, + + #{recordDistance,jdbcType=INTEGER}, + #{createTime,jdbcType=TIMESTAMP}, @@ -119,6 +127,14 @@ where "id" = #{id} + + update ROOT."hx_reader_info" @@ -143,6 +159,9 @@ "reader_port" = #{readerPort,jdbcType=INTEGER}, + + "record_distance" = #{recordDistance,jdbcType=INTEGER}, + "create_time" = #{createTime,jdbcType=TIMESTAMP}, diff --git a/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxTableConfigMapper.xml b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxTableConfigMapper.xml new file mode 100644 index 0000000..c4f657a --- /dev/null +++ b/ailanyin-model-mapper/src/main/resources/com/ailanyin/mapper/HxTableConfigMapper.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + "table_name", + "key_info" + + + + + + + update ROOT."hx_table_config" set + "key_info" = #{keyInfo,jdbcType=VARCHAR} + where "table_name" = #{tableName} + + diff --git a/ailanyin-security/src/main/java/com/ailanyin/security/config/BaseSecurityConfig.java b/ailanyin-security/src/main/java/com/ailanyin/security/config/BaseSecurityConfig.java index 8b48ba9..779cfa8 100644 --- a/ailanyin-security/src/main/java/com/ailanyin/security/config/BaseSecurityConfig.java +++ b/ailanyin-security/src/main/java/com/ailanyin/security/config/BaseSecurityConfig.java @@ -83,7 +83,8 @@ public class BaseSecurityConfig extends WebSecurityConfigurerAdapter { @Override public void configure(WebSecurity webSecurity){ webSecurity.ignoring().antMatchers( - "/ws/asset" + "/ws/asset", + "/hx/storehouse/insert" ); }