From 14c749da4021ee0c3d1697547a24fa97cb8eed8d Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期一, 17 十月 2022 14:19:38 +0800 Subject: [PATCH] 日志 卡口管理 --- ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java | 11 ++ ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java | 16 ++++ ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java | 4 ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java | 94 +++++++++++++++++++++++ ycl-common/src/main/java/com/ycl/aspect/LogAspect.java | 6 + ycl-platform/src/main/java/com/ycl/vo/equipment/EquipmentBayonetVO.java | 84 +++++++++++++++++++++ ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java | 8 +- 7 files changed, 215 insertions(+), 8 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/aspect/LogAspect.java b/ycl-common/src/main/java/com/ycl/aspect/LogAspect.java index 85d7ba7..8db5b2a 100644 --- a/ycl-common/src/main/java/com/ycl/aspect/LogAspect.java +++ b/ycl-common/src/main/java/com/ycl/aspect/LogAspect.java @@ -57,7 +57,11 @@ }else { loginLog.setUserAgent("Web绔�"); } - loginLog.setOperationType(annotation.operationType()); + if (annotation.operationType().equals("")){ + loginLog.setOperationType("鍏朵粬鎿嶄綔"); + }else { + loginLog.setOperationType(annotation.operationType()); + } loginLog.setContain(annotation.contain()); umsAdminLoginLogMapper.insert(loginLog); } diff --git a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java index a428b3f..40502f4 100644 --- a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java +++ b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java @@ -49,8 +49,8 @@ .eq(StringUtils.isNotBlank(logQueryParams.getPortEquipment()), UmsAdminLoginLog::getUserAgent, logQueryParams.getPortEquipment()) .eq(logQueryParams.getId() != null, UmsAdminLoginLog::getAdminId, logQueryParams.getId()) .between(logQueryParams.getStartTime() != null && logQueryParams.getEndTime() != null, UmsAdminLoginLog::getCreateTime, logQueryParams.getStartTime(), logQueryParams.getEndTime()) - .orderBy(logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime) - .orderBy(logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime)); + .orderBy(logQueryParams.getSort()!=null&&logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime) + .orderBy(logQueryParams.getSort()!=null&&logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime)); List<UmsAdminLogVO> umsAdminLogVOList = page.getRecords().stream() .map(item -> { UmsAdminLogVO umsAdminlogVO = new UmsAdminLogVO(); @@ -114,8 +114,8 @@ .like(StringUtils.isNotBlank(logQueryParams.getContent()), UmsAdminLoginLog::getContain, logQueryParams.getContent()) .eq(StringUtils.isNotBlank(logQueryParams.getOperationType()), UmsAdminLoginLog::getOperationType, logQueryParams.getOperationType()) .between(logQueryParams.getStartTime() != null && logQueryParams.getEndTime() != null, UmsAdminLoginLog::getCreateTime, logQueryParams.getStartTime(), logQueryParams.getEndTime()) - .orderBy(logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime) - .orderBy(logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime)) + .orderBy(logQueryParams.getSort()!=null&&logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime) + .orderBy(logQueryParams.getSort()!=null&&logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime)) .getRecords() .stream() .map(item -> { diff --git a/ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java b/ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java index 47d3e45..21ba024 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java @@ -1,15 +1,29 @@ package com.ycl.controller.epuipment; +import com.alibaba.excel.EasyExcel; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ycl.annotation.LogSave; import com.ycl.api.CommonResult; import com.ycl.controller.BaseController; -import com.ycl.entity.video.VideoPoint; +import com.ycl.entity.dict.DataDictionary; +import com.ycl.entity.equipment.EquipmentBayonet; +import com.ycl.service.dict.IDataDictionaryService; import com.ycl.service.equipment.IEquipmentBayonetService; +import com.ycl.vo.equipment.EquipmentBayonetVO; +import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import lombok.SneakyThrows; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.net.URLEncoder; +import java.time.LocalDateTime; +import java.util.stream.Collectors; /** * <p> @@ -21,9 +35,87 @@ */ @RestController @RequestMapping("/equipment_bayonet") +@Api(tags = "鍗″彛绠$悊") public class EquipmentBayonetController extends BaseController { @Autowired IEquipmentBayonetService iEquipmentBayonetService; + @Autowired + IDataDictionaryService iDataDictionaryService; + + @GetMapping("/query") + @ApiOperation("鏌ヨ") + @LogSave + public CommonResult search(@RequestParam(required = false) Integer size, + @RequestParam(required = false) Integer current, + @RequestParam(required = false) String bayonetName) { + Page<EquipmentBayonet> equipmentBayonetPage = new Page<>(); + equipmentBayonetPage.setCurrent(current); + equipmentBayonetPage.setSize(size); + return CommonResult.success(iEquipmentBayonetService + .page(equipmentBayonetPage, new LambdaQueryWrapper<EquipmentBayonet>() + .like(StringUtils.isNotBlank(bayonetName), EquipmentBayonet::getBayonetName, bayonetName)) + .getRecords() + .stream() + .map(item -> { + EquipmentBayonetVO equipmentBayonetVO = new EquipmentBayonetVO(); + BeanUtils.copyProperties(item, equipmentBayonetVO); + equipmentBayonetVO.setFrontEndType(iDataDictionaryService.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getId, item.getFrontEndType())).getName()); + equipmentBayonetVO.setInOutCityType(iDataDictionaryService.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getId, item.getInOutCityType())).getName()); + return equipmentBayonetVO; + }).collect(Collectors.toList())); + } + + @PostMapping("/addition") + @ApiOperation("娣诲姞") + @LogSave(operationType = "鍗″彛绠$悊",contain = "娣诲姞鍗″彛") + public CommonResult add(@RequestBody EquipmentBayonet equipmentBayonet) { + return CommonResult.success(iEquipmentBayonetService.save(equipmentBayonet)); + } + + @PutMapping("/modification") + @ApiOperation("淇敼") + @LogSave(operationType = "鍗″彛绠$悊",contain = "淇敼鍗″彛") + public CommonResult modify(@RequestBody EquipmentBayonet equipmentBayonet) { + return CommonResult.success(iEquipmentBayonetService.updateById(equipmentBayonet)); + } + + @GetMapping("/export") + @ApiOperation("瀵煎嚭") + @SneakyThrows + @LogSave(operationType = "鍗″彛绠$悊",contain = "鍒犻櫎鍗″彛") + public void export(HttpServletResponse response, + @RequestParam(required = false) Integer size, + @RequestParam(required = false) Integer current, + @RequestParam(required = false) String bayonetName) { + Page<EquipmentBayonet> equipmentBayonetPage = new Page<>(); + equipmentBayonetPage.setCurrent(current); + equipmentBayonetPage.setSize(size); + StringBuilder fileName = new StringBuilder(); + fileName.append(LocalDateTime.now().getYear()) + .append("-") + .append(LocalDateTime.now().getMonthValue()) + .append("-") + .append(LocalDateTime.now().getDayOfMonth()) + .append("鍗″彛鏁版嵁"); + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("utf-8"); + String file = URLEncoder.encode(fileName.toString(), "UTF-8").replaceAll("\\+", "%20"); + response.setHeader("Content-disposition", "attachment;filename=" + file + ".xlsx"); + EasyExcel.write(response.getOutputStream(), EquipmentBayonetVO.class) + .sheet("鏁版嵁") + .doWrite(iEquipmentBayonetService + .page(equipmentBayonetPage, new LambdaQueryWrapper<EquipmentBayonet>() + .like(StringUtils.isNotBlank(bayonetName), EquipmentBayonet::getBayonetName, bayonetName)) + .getRecords() + .stream() + .map(item -> { + EquipmentBayonetVO equipmentBayonetVO = new EquipmentBayonetVO(); + BeanUtils.copyProperties(item, equipmentBayonetVO); + equipmentBayonetVO.setFrontEndType(iDataDictionaryService.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getId, item.getFrontEndType())).getName()); + equipmentBayonetVO.setInOutCityType(iDataDictionaryService.getOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getId, item.getInOutCityType())).getName()); + return equipmentBayonetVO; + }).collect(Collectors.toList())); + } } diff --git a/ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java b/ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java index 28ef0fd..4cf2da5 100644 --- a/ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java +++ b/ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java @@ -1,5 +1,6 @@ package com.ycl.entity.equipment; +import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; @@ -35,18 +36,21 @@ * 鍗″彛鍚嶇О */ @TableField("bayonet_name") + @ExcelProperty(index = 1, value = "鍗″彛鍚嶇О") private String bayonetName; /** * 鍗″彛缁忓害 */ @TableField("longitude") + @ExcelProperty(index = 1, value = "鍗″彛鍚嶇О") private BigDecimal longitude; /** * 鍗″彛绾害 */ @TableField("latitude") + @ExcelProperty(index = 1, value = "鍗″彛鍚嶇О") private BigDecimal latitude; /** @@ -66,4 +70,16 @@ */ @TableField("description") private String description; + + /** + * 鍓嶇绫诲瀷 + */ + @TableField("front_end_type") + private Integer frontEndType; + + /** + * 鍑哄叆鍩庣被鍨� + */ + @TableField("in_out_city_type") + private Integer inOutCityType; } \ No newline at end of file diff --git a/ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java b/ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java index fe3ad71..1354ce8 100644 --- a/ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java +++ b/ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java @@ -2,6 +2,9 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ycl.entity.equipment.EquipmentBayonet; +import com.ycl.vo.equipment.EquipmentBayonetVO; + +import java.util.List; /** * <p> @@ -12,5 +15,4 @@ * @since 2022-10-14 */ public interface IEquipmentBayonetService extends IService<EquipmentBayonet> { - } diff --git a/ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java index 82ff304..148f835 100644 --- a/ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java @@ -1,10 +1,20 @@ package com.ycl.service.equipment.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.entity.dict.DataDictionary; import com.ycl.entity.equipment.EquipmentBayonet; import com.ycl.mapper.equipment.EquipmentBayonetMapper; import com.ycl.service.equipment.IEquipmentBayonetService; +import com.ycl.vo.equipment.EquipmentBayonetVO; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; /** * <p> @@ -16,5 +26,4 @@ */ @Service public class EquipmentBayonetServiceImpl extends ServiceImpl<EquipmentBayonetMapper, EquipmentBayonet> implements IEquipmentBayonetService { - } diff --git a/ycl-platform/src/main/java/com/ycl/vo/equipment/EquipmentBayonetVO.java b/ycl-platform/src/main/java/com/ycl/vo/equipment/EquipmentBayonetVO.java new file mode 100644 index 0000000..7e9ed3e --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/vo/equipment/EquipmentBayonetVO.java @@ -0,0 +1,84 @@ +package com.ycl.vo.equipment; + +import com.alibaba.excel.annotation.ExcelIgnore; +import com.alibaba.excel.annotation.ExcelProperty; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * <p> + * 鍗″彛绠$悊 + * </p> + * + * @author zhanghua + * @since 2022-10-14 + */ +@Data +@ApiModel(value = "鍗″彛绠$悊VO") +public class EquipmentBayonetVO { + + /** + * 涓婚敭 + */ + @ExcelIgnore + private Integer id; + + /** + * 鍗″彛鍚嶇О + */ + @ApiModelProperty(value = "鍗″彛鍚嶇О") + @ExcelProperty(index = 0, value = "鍗″彛鍚嶇О") + private String bayonetName; + + /** + * 鍗″彛缁忓害 + */ + @ApiModelProperty(value = "鍗″彛缁忓害") + @ExcelProperty(index = 1, value = "鍗″彛缁忓害") + private BigDecimal longitude; + + /** + * 鍗″彛绾害 + */ + @ApiModelProperty(value = "鍗″彛绾害") + @ExcelProperty(index = 2, value = "鍗″彛绾害") + private BigDecimal latitude; + + /** + * ip鍦板潃 + */ + @ApiModelProperty(value = "ip鍦板潃") + @ExcelProperty(index = 3, value = "ip鍦板潃") + private String ipAddress; + + /** + * 绔彛鍙� + */ + @ApiModelProperty(value = "绔彛鍙�") + @ExcelProperty(index = 4, value = "绔彛鍙�") + private String port; + + /** + * 鎻忚堪 + */ + @ApiModelProperty(value = "鎻忚堪") + @ExcelProperty(index = 7, value = "鎻忚堪") + private String description; + + /** + * 鍓嶇绫诲瀷 + */ + @ApiModelProperty(value = "鍓嶇绫诲瀷") + @ExcelProperty(index = 5, value = "鍓嶇绫诲瀷") + private String frontEndType; + + /** + * 鍑哄叆鍩庣被鍨� + */ + @ApiModelProperty(value = "鍑哄叆鍩庣被鍨�") + @ExcelProperty(index = 6, value = "鍑哄叆鍩庣被鍨�") + private String inOutCityType; +} \ No newline at end of file -- Gitblit v1.8.0