EventTemplate控制器编写
This commit is contained in:
@@ -0,0 +1,127 @@
|
||||
package com.njcn.system.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.common.pojo.annotation.OperateInfo;
|
||||
import com.njcn.common.pojo.enums.common.LogEnum;
|
||||
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||
import com.njcn.common.pojo.response.HttpResult;
|
||||
import com.njcn.common.utils.HttpResultUtil;
|
||||
import com.njcn.common.utils.LogUtil;
|
||||
import com.njcn.system.pojo.param.DictDataParam;
|
||||
import com.njcn.system.pojo.param.EventTemplateParam;
|
||||
import com.njcn.system.pojo.vo.DictDataVO;
|
||||
import com.njcn.system.pojo.vo.EventTemplateTree;
|
||||
import com.njcn.system.pojo.vo.EventTemplateVO;
|
||||
import com.njcn.system.service.IEventTemplateService;
|
||||
import com.njcn.web.controller.BaseController;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiImplicitParam;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* pqs
|
||||
*
|
||||
* @author hany
|
||||
* @date 2022/9/7
|
||||
*/
|
||||
@Slf4j
|
||||
@Api(tags = "事件模板")
|
||||
@RestController
|
||||
@RequestMapping("/EventTemplate")
|
||||
@RequiredArgsConstructor
|
||||
@Validated
|
||||
public class EventTemplateController extends BaseController{
|
||||
|
||||
private final IEventTemplateService iEventTemplateService;
|
||||
|
||||
/**
|
||||
* 获取字典树
|
||||
* @author hany
|
||||
* @date 2022/09/09
|
||||
*/
|
||||
@ApiOperation("获取字典树")
|
||||
@OperateInfo(info = LogEnum.BUSINESS_MEDIUM)
|
||||
@GetMapping("/getEventTemplateTree")
|
||||
public HttpResult<List<EventTemplateTree>> getEventTemplateTree(){
|
||||
String methodDescribe = getMethodDescribe("getEventTemplateTree");
|
||||
List<EventTemplateTree> tree = iEventTemplateService.getEventTemplateTree();
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, tree, methodDescribe);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询字典类型数据
|
||||
* @author hany
|
||||
* @date 2022/09/09
|
||||
*/
|
||||
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
|
||||
@PostMapping("/list")
|
||||
@ApiOperation("查询字典数据")
|
||||
@ApiImplicitParam(name = "queryParam", value = "查询参数", required = true)
|
||||
public HttpResult<Page<EventTemplateVO>> list(@RequestBody @Validated EventTemplateParam.EventTemplateQueryParam queryParam) {
|
||||
String methodDescribe = getMethodDescribe("list");
|
||||
LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe, queryParam);
|
||||
Page<EventTemplateVO> result = iEventTemplateService.listEventTemplateData(queryParam);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增模板
|
||||
* @author hany
|
||||
* @date 2022/09/09
|
||||
*/
|
||||
@PostMapping("/add")
|
||||
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
|
||||
@ApiOperation("新增模板")
|
||||
@ApiImplicitParam(name = "dictDataParam", value = "模板数据", required = true)
|
||||
public HttpResult<Boolean> add(@RequestBody EventTemplateParam eventTemplateParam){
|
||||
String methodDescribe = getMethodDescribe("add");
|
||||
LogUtil.njcnDebug(log, "{},模板数据为:{}", methodDescribe, eventTemplateParam);
|
||||
boolean result = iEventTemplateService.add(eventTemplateParam);
|
||||
if (result) {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
} else {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改
|
||||
* @author hany
|
||||
* @date 2022/09/08
|
||||
*/
|
||||
@PostMapping("/update")
|
||||
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
|
||||
@ApiOperation("修改字典")
|
||||
@ApiImplicitParam(name = "dictDataUpdateParam", value = "字典表数据", required = true)
|
||||
public HttpResult<Boolean> update(@RequestBody EventTemplateParam.EventTemplateUpdateParam eventTemplateUpdateParam){
|
||||
String methodDescribe = getMethodDescribe("update");
|
||||
LogUtil.njcnDebug(log, "{},字典表数据数据为:{}", methodDescribe, eventTemplateUpdateParam);
|
||||
boolean result = iEventTemplateService.update(eventTemplateUpdateParam);
|
||||
if (result) {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
} else {
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.FAIL, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
* @author hany
|
||||
* @date 2022/09/08
|
||||
*/
|
||||
@DeleteMapping("/delete")
|
||||
@OperateInfo(info = LogEnum.SYSTEM_COMMON)
|
||||
@ApiOperation("删除字典")
|
||||
@ApiImplicitParam(name = "id", value = "字典表索引", required = true)
|
||||
public HttpResult<Boolean> delete(@RequestParam("id") String id){
|
||||
String methodDescribe = getMethodDescribe("delete");
|
||||
iEventTemplateService.delete(id);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.njcn.system.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.system.pojo.po.EventDict;
|
||||
import com.njcn.system.pojo.vo.DictDataVO;
|
||||
import com.njcn.system.pojo.vo.EventTemplateVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* @author hany
|
||||
* @createTime 2022/09/08
|
||||
*/
|
||||
public interface EventTemplateMapper extends BaseMapper<EventDict> {
|
||||
|
||||
/**
|
||||
* 分页查询字典数据
|
||||
* @param page 分页数据
|
||||
* @param queryWrapper 查询条件
|
||||
* @return 字典数据
|
||||
*/
|
||||
Page<EventTemplateVO> page(@Param("page")Page<EventTemplateVO> page, @Param("ew")QueryWrapper<EventTemplateVO> queryWrapper);
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.system.mapper.EventTemplateMapper">
|
||||
|
||||
<!--获取字典分页列表-->
|
||||
<select id="page" resultType="EventTemplateVO">
|
||||
SELECT eventreport_dict.*
|
||||
FROM eventreport_dict eventreport_dict
|
||||
WHERE ${ew.sqlSegment}
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,45 @@
|
||||
package com.njcn.system.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njcn.system.pojo.param.DictDataParam;
|
||||
import com.njcn.system.pojo.param.EventTemplateParam;
|
||||
import com.njcn.system.pojo.vo.EventTemplateTree;
|
||||
import com.njcn.system.pojo.vo.EventTemplateVO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author: hany
|
||||
* @date: 2022/09/08
|
||||
* @Description: <描述>
|
||||
*/
|
||||
public interface IEventTemplateService {
|
||||
|
||||
/**
|
||||
* 获取字典树
|
||||
*/
|
||||
List<EventTemplateTree> getEventTemplateTree();
|
||||
|
||||
/**
|
||||
* 根据前台传递参数,分页查询字典数据
|
||||
* @param queryParam 查询参数
|
||||
* @return 字典列表
|
||||
*/
|
||||
Page<EventTemplateVO> listEventTemplateData(EventTemplateParam.EventTemplateQueryParam queryParam);
|
||||
|
||||
/**
|
||||
* 新增
|
||||
*/
|
||||
boolean add(EventTemplateParam eventDataParam);
|
||||
|
||||
/**
|
||||
* 修改
|
||||
* @param eventDataUpdateParam
|
||||
*/
|
||||
boolean update(EventTemplateParam.EventTemplateUpdateParam eventDataUpdateParam);
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*/
|
||||
boolean delete(String id);
|
||||
}
|
||||
@@ -0,0 +1,137 @@
|
||||
package com.njcn.system.service.impl;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njcn.common.pojo.enums.common.DataStateEnum;
|
||||
import com.njcn.common.pojo.exception.BusinessException;
|
||||
import com.njcn.db.constant.DbConstant;
|
||||
import com.njcn.system.enums.EventResponseEnum;
|
||||
import com.njcn.system.mapper.EventTemplateMapper;
|
||||
import com.njcn.system.pojo.param.EventTemplateParam;
|
||||
import com.njcn.system.pojo.po.EventDict;
|
||||
import com.njcn.system.pojo.vo.EventTemplateTree;
|
||||
import com.njcn.system.pojo.vo.EventTemplateVO;
|
||||
import com.njcn.system.service.IEventTemplateService;
|
||||
import com.njcn.web.factory.PageFactory;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author: hany
|
||||
* @date: 2022/09/07
|
||||
* @Description: <描述>
|
||||
*/
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class EventTemplateServiceImpl extends ServiceImpl<EventTemplateMapper, EventDict> implements IEventTemplateService {
|
||||
|
||||
/**
|
||||
* 获取字典树
|
||||
* @author hany
|
||||
* @date 2022/09/09
|
||||
*/
|
||||
@Override
|
||||
public List<EventTemplateTree> getEventTemplateTree() {
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询字典类型数据
|
||||
* @author hany
|
||||
* @date 2022/09/13
|
||||
*/
|
||||
@Override
|
||||
public Page<EventTemplateVO> listEventTemplateData(EventTemplateParam.EventTemplateQueryParam queryParam) {
|
||||
QueryWrapper<EventTemplateVO> queryWrapper = new QueryWrapper<>();
|
||||
if (ObjectUtil.isNotNull(queryParam)) {
|
||||
//查询参数不为空,进行条件填充
|
||||
if (StrUtil.isNotBlank(queryParam.getSearchValue())) {
|
||||
//字典类型表,仅提供名称、编码模糊查询
|
||||
queryWrapper
|
||||
.and(param -> param.like("eventreport_dict.name", queryParam.getSearchValue())
|
||||
.or().like("eventreport_dict.pid", queryParam.getSearchValue()));
|
||||
}
|
||||
//排序
|
||||
if (ObjectUtil.isAllNotEmpty(queryParam.getSortBy(), queryParam.getOrderBy())) {
|
||||
queryWrapper.orderBy(true, queryParam.getOrderBy().equals(DbConstant.ASC), StrUtil.toUnderlineCase(queryParam.getSortBy()));
|
||||
} else {
|
||||
//没有排序参数,默认根据sort字段排序,没有排序字段的,根据updateTime更新时间排序
|
||||
queryWrapper.orderBy(true, true, "eventreport_dict.sort");
|
||||
}
|
||||
}
|
||||
queryWrapper.ne("eventreport_dict.state", DataStateEnum.DELETED.getCode());
|
||||
//初始化分页数据
|
||||
return this.baseMapper.page(new Page<>(PageFactory.getPageNum(queryParam), PageFactory.getPageSize(queryParam)), queryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增
|
||||
* @author hany
|
||||
* @date 2022/09/08
|
||||
*/
|
||||
@Override
|
||||
public boolean add(EventTemplateParam eventTemplateParam) {
|
||||
checkName(eventTemplateParam,true);
|
||||
EventDict eventDict = new EventDict();
|
||||
BeanUtils.copyProperties(eventTemplateParam,eventDict);
|
||||
eventDict.setState(DataStateEnum.ENABLE.getCode());
|
||||
return this.save(eventDict);
|
||||
}
|
||||
/**
|
||||
* 修改
|
||||
*/
|
||||
@Override
|
||||
public boolean update(EventTemplateParam.EventTemplateUpdateParam eventTemplateUpdateParam) {
|
||||
checkName(eventTemplateUpdateParam,false);
|
||||
EventDict eventDict = new EventDict();
|
||||
BeanUtils.copyProperties(eventTemplateUpdateParam,eventDict);
|
||||
return this.updateById(eventDict);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*/
|
||||
@Override
|
||||
public boolean delete(String id) {
|
||||
LambdaQueryWrapper<EventDict> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(EventDict::getPid,id).eq(EventDict::getState,DataStateEnum.ENABLE.getCode());
|
||||
int resCount = this.count(lambdaQueryWrapper);
|
||||
if(resCount>0){
|
||||
throw new BusinessException(EventResponseEnum.CHILDREN_EXIT);
|
||||
}
|
||||
|
||||
UpdateWrapper<EventDict> updateWrapper = new UpdateWrapper<>();
|
||||
updateWrapper.lambda().eq(EventDict::getState,DataStateEnum.ENABLE.getCode()).set(EventDict::getState,DataStateEnum.DELETED.getCode()).eq(EventDict::getId,id);
|
||||
return this.update(updateWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 名称重复校验
|
||||
*/
|
||||
private void checkName(EventTemplateParam eventTemplateParam,boolean flag){
|
||||
LambdaQueryWrapper<EventDict> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.eq(EventDict::getName,eventTemplateParam.getName())
|
||||
.eq(EventDict::getState, DataStateEnum.ENABLE.getCode());
|
||||
//修改
|
||||
if(!flag){
|
||||
if(eventTemplateParam instanceof EventTemplateParam.EventTemplateUpdateParam ){
|
||||
lambdaQueryWrapper.ne(EventDict::getId,((EventTemplateParam.EventTemplateUpdateParam)eventTemplateParam).getId());
|
||||
}
|
||||
}
|
||||
int res = this.count(lambdaQueryWrapper);
|
||||
//大于等于1个则表示重复
|
||||
if (res >= 1) {
|
||||
throw new BusinessException(EventResponseEnum.DIC_NAME_REPEAT);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user