parent
03c6316022
commit
739d3ca217
33 changed files with 72 additions and 1345 deletions
@ -1,180 +0,0 @@ |
||||
package org.springblade.modules.desk.controller; |
||||
|
||||
import io.swagger.annotations.Api; |
||||
import io.swagger.annotations.ApiOperation; |
||||
import lombok.AllArgsConstructor; |
||||
import org.springblade.core.tool.api.R; |
||||
import org.springblade.core.tool.support.Kv; |
||||
import org.springframework.web.bind.annotation.GetMapping; |
||||
import org.springframework.web.bind.annotation.RequestMapping; |
||||
import org.springframework.web.bind.annotation.RestController; |
||||
import springfox.documentation.annotations.ApiIgnore; |
||||
|
||||
import java.util.ArrayList; |
||||
import java.util.HashMap; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* 首页 |
||||
* |
||||
* @author zhuangqian |
||||
*/ |
||||
@ApiIgnore |
||||
@RestController |
||||
@RequestMapping("/blade-desk/dashboard") |
||||
@AllArgsConstructor |
||||
@Api(value = "首页", tags = "首页") |
||||
public class DashBoardController { |
||||
|
||||
/** |
||||
* 活跃用户 |
||||
* |
||||
* @return |
||||
*/ |
||||
@GetMapping("/activities") |
||||
@ApiOperation(value = "活跃用户", notes = "活跃用户") |
||||
public R activities() { |
||||
|
||||
List<Map<String, Object>> list = new ArrayList<>(); |
||||
Map<String, Object> map1 = new HashMap<>(16); |
||||
map1.put("id", "trend-1"); |
||||
map1.put("updatedAt", "2019-01-01"); |
||||
map1.put("user", Kv.init().set("name", "曲丽丽").set("avatar", "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png")); |
||||
map1.put("group", Kv.init().set("name", "高逼格设计天团").set("link", "http://github.com/")); |
||||
map1.put("project", Kv.init().set("name", "六月迭代").set("link", "http://github.com/")); |
||||
map1.put("template", "在 @{group} 新建项目 @{project}"); |
||||
list.add(map1); |
||||
|
||||
Map<String, Object> map2 = new HashMap<>(16); |
||||
map2.put("id", "trend-2"); |
||||
map2.put("updatedAt", "2019-01-01"); |
||||
map2.put("user", Kv.init().set("name", "付小小").set("avatar", "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png")); |
||||
map2.put("group", Kv.init().set("name", "高逼格设计天团").set("link", "http://github.com/")); |
||||
map2.put("project", Kv.init().set("name", "七月月迭代").set("link", "http://github.com/")); |
||||
map2.put("template", "在 @{group} 新建项目 @{project}"); |
||||
list.add(map2); |
||||
|
||||
return R.data(list); |
||||
} |
||||
|
||||
/** |
||||
* 获取消息 |
||||
* |
||||
* @return |
||||
*/ |
||||
@GetMapping("/notices") |
||||
@ApiOperation(value = "消息", notes = "消息") |
||||
public R notices() { |
||||
List<Map<String, String>> list = new ArrayList<>(); |
||||
Map<String, String> map1 = new HashMap<>(16); |
||||
map1.put("logo", "https://spring.io/img/homepage/icon-spring-framework.svg"); |
||||
map1.put("title", "SpringBoot"); |
||||
map1.put("description", "现在的web项目几乎都会用到spring框架,而要使用spring难免需要配置大量的xml配置文件,而 springboot的出现解 决了这一问题,一个项目甚至不用部署到服务器上直接开跑,真像springboot所说:“just run”。"); |
||||
map1.put("member", "Chill"); |
||||
map1.put("href", "http://spring.io/projects/spring-boot"); |
||||
list.add(map1); |
||||
|
||||
Map<String, String> map2 = new HashMap<>(16); |
||||
map2.put("logo", "https://spring.io/img/homepage/icon-spring-cloud.svg"); |
||||
map2.put("title", "SpringCloud"); |
||||
map2.put("description", "SpringCloud是基于SpringBoot的一整套实现微服务的框架。他提供了微服务开发所需的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等组件。"); |
||||
map2.put("member", "Chill"); |
||||
map2.put("href", "http://spring.io/projects/spring-cloud"); |
||||
list.add(map2); |
||||
|
||||
Map<String, String> map3 = new HashMap<>(16); |
||||
map3.put("logo", "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1546359961068&di=05ff9406e6675ca9a58a525a7e7950b9&imgtype=jpg&src=http%3A%2F%2Fimg0.imgtn.bdimg.com%2Fit%2Fu%3D575314515%2C4268715674%26fm%3D214%26gp%3D0.jpg"); |
||||
map3.put("title", "Mybatis"); |
||||
map3.put("description", "MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。"); |
||||
map3.put("member", "Chill"); |
||||
map3.put("href", "http://www.mybatis.org/mybatis-3/getting-started.html"); |
||||
list.add(map3); |
||||
|
||||
Map<String, String> map4 = new HashMap<>(16); |
||||
map4.put("logo", "https://gw.alipayobjects.com/zos/rmsportal/kZzEzemZyKLKFsojXItE.png"); |
||||
map4.put("title", "React"); |
||||
map4.put("description", "React 起源于 Facebook 的内部项目,因为该公司对市场上所有 JavaScript MVC 框架,都不满意,就决定自己写一套,用来架设Instagram 的网站。做出来以后,发现这套东西很好用,就在2013年5月开源了。"); |
||||
map4.put("member", "Chill"); |
||||
map4.put("href", "https://reactjs.org/"); |
||||
list.add(map4); |
||||
|
||||
Map<String, String> map5 = new HashMap<>(16); |
||||
map5.put("logo", "https://gw.alipayobjects.com/zos/rmsportal/dURIMkkrRFpPgTuzkwnB.png"); |
||||
map5.put("title", "Ant Design"); |
||||
map5.put("description", "蚂蚁金服体验技术部经过大量的项目实践和总结,沉淀出设计语言 Ant Design,这可不单纯只是设计原则、控件规范和视觉尺寸,还配套有前端代码实现方案。也就是说采用Ant Design后,UI设计和前端界面研发可同步完成,效率大大提升。"); |
||||
map5.put("member", "Chill"); |
||||
map5.put("href", "https://ant.design/docs/spec/introduce-cn"); |
||||
list.add(map5); |
||||
|
||||
Map<String, String> map6 = new HashMap<>(16); |
||||
map6.put("logo", "https://gw.alipayobjects.com/zos/rmsportal/sfjbOqnsXXJgNCjCzDBL.png"); |
||||
map6.put("title", "Ant Design Pro"); |
||||
map6.put("description", "Ant Design Pro 是一个企业级开箱即用的中后台前端/设计解决方案。符合阿里追求的'敏捷的前端+强大的中台'的思想。"); |
||||
map6.put("member", "Chill"); |
||||
map6.put("href", "https://pro.ant.design"); |
||||
list.add(map6); |
||||
|
||||
return R.data(list); |
||||
} |
||||
|
||||
/** |
||||
* 获取我的消息 |
||||
* |
||||
* @return |
||||
*/ |
||||
@GetMapping("/my-notices") |
||||
@ApiOperation(value = "消息", notes = "消息") |
||||
public R myNotices() { |
||||
List<Map<String, String>> list = new ArrayList<>(); |
||||
Map<String, String> map1 = new HashMap<>(16); |
||||
map1.put("id", "000000001"); |
||||
map1.put("avatar", "https://gw.alipayobjects.com/zos/rmsportal/ThXAXghbEsBCCSDihZxY.png"); |
||||
map1.put("title", "你收到了 14 份新周报"); |
||||
map1.put("datetime", "2018-08-09"); |
||||
map1.put("type", "notification"); |
||||
list.add(map1); |
||||
|
||||
Map<String, String> map2 = new HashMap<>(16); |
||||
map2.put("id", "000000002"); |
||||
map2.put("avatar", "https://gw.alipayobjects.com/zos/rmsportal/OKJXDXrmkNshAMvwtvhu.png"); |
||||
map2.put("title", "你推荐的 曲妮妮 已通过第三轮面试"); |
||||
map2.put("datetime", "2018-08-08"); |
||||
map2.put("type", "notification"); |
||||
list.add(map2); |
||||
|
||||
|
||||
Map<String, String> map3 = new HashMap<>(16); |
||||
map3.put("id", "000000003"); |
||||
map3.put("avatar", "https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg"); |
||||
map3.put("title", "曲丽丽 评论了你"); |
||||
map3.put("description", "描述信息描述信息描述信息"); |
||||
map3.put("datetime", "2018-08-07"); |
||||
map3.put("type", "message"); |
||||
map3.put("clickClose", "true"); |
||||
list.add(map3); |
||||
|
||||
|
||||
Map<String, String> map4 = new HashMap<>(16); |
||||
map4.put("id", "000000004"); |
||||
map4.put("avatar", "https://gw.alipayobjects.com/zos/rmsportal/fcHMVNCjPOsbUGdEduuv.jpeg"); |
||||
map4.put("title", "朱偏右 回复了你"); |
||||
map4.put("description", "这种模板用于提醒谁与你发生了互动,左侧放『谁』的头像"); |
||||
map4.put("type", "message"); |
||||
map4.put("datetime", "2018-08-07"); |
||||
map4.put("clickClose", "true"); |
||||
list.add(map4); |
||||
|
||||
|
||||
Map<String, String> map5 = new HashMap<>(16); |
||||
map5.put("id", "000000005"); |
||||
map5.put("title", "任务名称"); |
||||
map5.put("description", "任务需要在 2018-01-12 20:00 前启动"); |
||||
map5.put("extra", "未开始"); |
||||
map5.put("status", "todo"); |
||||
map5.put("type", "event"); |
||||
list.add(map5); |
||||
|
||||
return R.data(list); |
||||
} |
||||
} |
||||
@ -1,119 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.desk.controller; |
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
||||
import com.github.xiaoymin.knife4j.annotations.ApiSort; |
||||
import io.swagger.annotations.*; |
||||
import lombok.AllArgsConstructor; |
||||
import org.springblade.common.cache.CacheNames; |
||||
import org.springblade.core.boot.ctrl.BladeController; |
||||
import org.springblade.core.mp.support.Condition; |
||||
import org.springblade.core.mp.support.Query; |
||||
import org.springblade.core.tool.api.R; |
||||
import org.springblade.core.tool.utils.Func; |
||||
import org.springblade.modules.desk.entity.Notice; |
||||
import org.springblade.modules.desk.service.INoticeService; |
||||
import org.springblade.modules.desk.vo.NoticeVO; |
||||
import org.springblade.modules.desk.wrapper.NoticeWrapper; |
||||
import org.springframework.web.bind.annotation.*; |
||||
import springfox.documentation.annotations.ApiIgnore; |
||||
|
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* 控制器 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@RestController |
||||
@RequestMapping("/blade-desk/notice") |
||||
@AllArgsConstructor |
||||
@ApiSort(2) |
||||
@Api(value = "用户博客", tags = "博客接口") |
||||
public class NoticeController extends BladeController implements CacheNames { |
||||
|
||||
private INoticeService noticeService; |
||||
|
||||
/** |
||||
* 详情 |
||||
*/ |
||||
@GetMapping("/detail") |
||||
@ApiOperationSupport(order = 1) |
||||
@ApiOperation(value = "详情", notes = "传入notice") |
||||
public R<NoticeVO> detail(Notice notice) { |
||||
Notice detail = noticeService.getOne(Condition.getQueryWrapper(notice)); |
||||
return R.data(NoticeWrapper.build().entityVO(detail)); |
||||
} |
||||
|
||||
/** |
||||
* 分页 |
||||
*/ |
||||
@GetMapping("/list") |
||||
@ApiImplicitParams({ |
||||
@ApiImplicitParam(name = "category", value = "公告类型", paramType = "query", dataType = "integer"), |
||||
@ApiImplicitParam(name = "title", value = "公告标题", paramType = "query", dataType = "string") |
||||
}) |
||||
@ApiOperationSupport(order = 2) |
||||
@ApiOperation(value = "分页", notes = "传入notice") |
||||
public R<IPage<NoticeVO>> list(@ApiIgnore @RequestParam Map<String, Object> notice, Query query) { |
||||
IPage<Notice> pages = noticeService.page(Condition.getPage(query), Condition.getQueryWrapper(notice, Notice.class)); |
||||
return R.data(NoticeWrapper.build().pageVO(pages)); |
||||
} |
||||
|
||||
/** |
||||
* 新增 |
||||
*/ |
||||
@PostMapping("/save") |
||||
@ApiOperationSupport(order = 3) |
||||
@ApiOperation(value = "新增", notes = "传入notice") |
||||
public R save(@RequestBody Notice notice) { |
||||
return R.status(noticeService.save(notice)); |
||||
} |
||||
|
||||
/** |
||||
* 修改 |
||||
*/ |
||||
@PostMapping("/update") |
||||
@ApiOperationSupport(order = 4) |
||||
@ApiOperation(value = "修改", notes = "传入notice") |
||||
public R update(@RequestBody Notice notice) { |
||||
return R.status(noticeService.updateById(notice)); |
||||
} |
||||
|
||||
/** |
||||
* 新增或修改 |
||||
*/ |
||||
@PostMapping("/submit") |
||||
@ApiOperationSupport(order = 5) |
||||
@ApiOperation(value = "新增或修改", notes = "传入notice") |
||||
public R submit(@RequestBody Notice notice) { |
||||
return R.status(noticeService.saveOrUpdate(notice)); |
||||
} |
||||
|
||||
/** |
||||
* 删除 |
||||
*/ |
||||
@PostMapping("/remove") |
||||
@ApiOperationSupport(order = 6) |
||||
@ApiOperation(value = "逻辑删除", notes = "传入notice") |
||||
public R remove(@ApiParam(value = "主键集合") @RequestParam String ids) { |
||||
boolean temp = noticeService.deleteLogic(Func.toLongList(ids)); |
||||
return R.status(temp); |
||||
} |
||||
|
||||
} |
||||
@ -1,75 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.desk.entity; |
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType; |
||||
import com.baomidou.mybatisplus.annotation.TableId; |
||||
import com.baomidou.mybatisplus.annotation.TableName; |
||||
import io.swagger.annotations.ApiModelProperty; |
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
||||
import lombok.Data; |
||||
import lombok.EqualsAndHashCode; |
||||
import org.springblade.core.mp.base.BaseEntity; |
||||
|
||||
import java.util.Date; |
||||
|
||||
/** |
||||
* 实体类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@Data |
||||
@EqualsAndHashCode(callSuper = true) |
||||
@TableName("blade_notice") |
||||
public class Notice extends BaseEntity { |
||||
|
||||
private static final long serialVersionUID = 1L; |
||||
|
||||
/** |
||||
* 主键id |
||||
*/ |
||||
@ApiModelProperty(value = "主键") |
||||
@TableId(value = "id", type = IdType.ASSIGN_ID) |
||||
@JsonSerialize(using = ToStringSerializer.class) |
||||
private Long id; |
||||
|
||||
/** |
||||
* 标题 |
||||
*/ |
||||
@ApiModelProperty(value = "标题") |
||||
private String title; |
||||
|
||||
/** |
||||
* 通知类型 |
||||
*/ |
||||
@ApiModelProperty(value = "通知类型") |
||||
private Integer category; |
||||
|
||||
/** |
||||
* 发布日期 |
||||
*/ |
||||
@ApiModelProperty(value = "发布日期") |
||||
private Date releaseTime; |
||||
|
||||
/** |
||||
* 内容 |
||||
*/ |
||||
@ApiModelProperty(value = "内容") |
||||
private String content; |
||||
|
||||
|
||||
} |
||||
@ -1,46 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.desk.mapper; |
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
import org.springblade.modules.desk.entity.Notice; |
||||
|
||||
import java.util.List; |
||||
|
||||
/** |
||||
* Mapper 接口 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
public interface NoticeMapper extends BaseMapper<Notice> { |
||||
|
||||
/** |
||||
* 前N条数据 |
||||
* @param number |
||||
* @return |
||||
*/ |
||||
List<Notice> topList(Integer number); |
||||
|
||||
/** |
||||
* 自定义分页 |
||||
* @param page |
||||
* @param notice |
||||
* @return |
||||
*/ |
||||
List<Notice> selectNoticePage(IPage page, Notice notice); |
||||
|
||||
} |
||||
@ -1,39 +0,0 @@ |
||||
<?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="org.springblade.modules.desk.mapper.NoticeMapper"> |
||||
|
||||
<!-- 通用查询映射结果 --> |
||||
<resultMap id="noticeResultMap" type="org.springblade.modules.desk.entity.Notice"> |
||||
<result column="id" property="id"/> |
||||
<result column="create_user" property="createUser"/> |
||||
<result column="create_time" property="createTime"/> |
||||
<result column="update_user" property="updateUser"/> |
||||
<result column="update_time" property="updateTime"/> |
||||
<result column="status" property="status"/> |
||||
<result column="is_deleted" property="isDeleted"/> |
||||
<result column="release_time" property="releaseTime"/> |
||||
<result column="title" property="title"/> |
||||
<result column="content" property="content"/> |
||||
</resultMap> |
||||
|
||||
<!-- 通用查询结果列 --> |
||||
<sql id="baseColumnList"> |
||||
select id, |
||||
create_user AS createUser, |
||||
create_time AS createTime, |
||||
update_user AS updateUser, |
||||
update_time AS updateTime, |
||||
status, |
||||
is_deleted AS isDeleted, |
||||
title, content |
||||
</sql> |
||||
|
||||
<select id="topList" resultMap="noticeResultMap"> |
||||
select * from blade_notice limit #{number} |
||||
</select> |
||||
|
||||
<select id="selectNoticePage" resultMap="noticeResultMap"> |
||||
select * from blade_notice where title like concat('%', #{notice.title}, '%') and is_deleted = 0 |
||||
</select> |
||||
|
||||
</mapper> |
||||
@ -1,37 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.desk.service; |
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
import org.springblade.core.mp.base.BaseService; |
||||
import org.springblade.modules.desk.entity.Notice; |
||||
|
||||
/** |
||||
* 服务类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
public interface INoticeService extends BaseService<Notice> { |
||||
|
||||
/** |
||||
* 自定义分页 |
||||
* @param page |
||||
* @param notice |
||||
* @return |
||||
*/ |
||||
IPage<Notice> selectNoticePage(IPage<Notice> page, Notice notice); |
||||
|
||||
} |
||||
@ -1,38 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.desk.service.impl; |
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
import org.springblade.core.mp.base.BaseServiceImpl; |
||||
import org.springblade.modules.desk.entity.Notice; |
||||
import org.springblade.modules.desk.mapper.NoticeMapper; |
||||
import org.springblade.modules.desk.service.INoticeService; |
||||
import org.springframework.stereotype.Service; |
||||
|
||||
/** |
||||
* 服务实现类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@Service |
||||
public class NoticeServiceImpl extends BaseServiceImpl<NoticeMapper, Notice> implements INoticeService { |
||||
|
||||
@Override |
||||
public IPage<Notice> selectNoticePage(IPage<Notice> page, Notice notice) { |
||||
return page.setRecords(baseMapper.selectNoticePage(page, notice)); |
||||
} |
||||
|
||||
} |
||||
@ -1,20 +0,0 @@ |
||||
package org.springblade.modules.desk.vo; |
||||
|
||||
import io.swagger.annotations.ApiModelProperty; |
||||
import lombok.Data; |
||||
import lombok.EqualsAndHashCode; |
||||
import org.springblade.modules.desk.entity.Notice; |
||||
|
||||
/** |
||||
* 通知公告视图类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@Data |
||||
@EqualsAndHashCode(callSuper = true) |
||||
public class NoticeVO extends Notice { |
||||
|
||||
@ApiModelProperty(value = "通知类型名") |
||||
private String categoryName; |
||||
|
||||
} |
||||
@ -1,50 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.desk.wrapper; |
||||
|
||||
import org.springblade.core.mp.support.BaseEntityWrapper; |
||||
import org.springblade.core.tool.utils.BeanUtil; |
||||
import org.springblade.core.tool.utils.SpringUtil; |
||||
import org.springblade.modules.desk.entity.Notice; |
||||
import org.springblade.modules.desk.vo.NoticeVO; |
||||
import org.springblade.modules.system.service.IDictService; |
||||
|
||||
/** |
||||
* Notice包装类,返回视图层所需的字段 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
public class NoticeWrapper extends BaseEntityWrapper<Notice, NoticeVO> { |
||||
|
||||
private static IDictService dictService; |
||||
|
||||
static { |
||||
dictService = SpringUtil.getBean(IDictService.class); |
||||
} |
||||
|
||||
public static NoticeWrapper build() { |
||||
return new NoticeWrapper(); |
||||
} |
||||
|
||||
@Override |
||||
public NoticeVO entityVO(Notice notice) { |
||||
NoticeVO noticeVO = BeanUtil.copy(notice, NoticeVO.class); |
||||
String categoryName = dictService.getValue("notice", noticeVO.getCategory()); |
||||
noticeVO.setCategoryName(categoryName); |
||||
return noticeVO; |
||||
} |
||||
|
||||
} |
||||
@ -1,154 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.controller; |
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
||||
import io.swagger.annotations.*; |
||||
import lombok.AllArgsConstructor; |
||||
import org.springblade.core.boot.ctrl.BladeController; |
||||
import org.springblade.core.launch.constant.AppConstant; |
||||
import org.springblade.core.mp.support.Condition; |
||||
import org.springblade.core.mp.support.Query; |
||||
import org.springblade.core.secure.annotation.PreAuth; |
||||
import org.springblade.core.tool.api.R; |
||||
import org.springblade.core.tool.constant.RoleConstant; |
||||
import org.springblade.core.tool.utils.Func; |
||||
import org.springblade.develop.support.BladeCodeGenerator; |
||||
import org.springblade.modules.develop.entity.Code; |
||||
import org.springblade.modules.develop.entity.Datasource; |
||||
import org.springblade.modules.develop.service.ICodeService; |
||||
import org.springblade.modules.develop.service.IDatasourceService; |
||||
import org.springframework.web.bind.annotation.*; |
||||
import springfox.documentation.annotations.ApiIgnore; |
||||
|
||||
import javax.validation.Valid; |
||||
import java.util.Collection; |
||||
import java.util.Map; |
||||
|
||||
/** |
||||
* 控制器 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@ApiIgnore |
||||
@RestController |
||||
@AllArgsConstructor |
||||
@RequestMapping(AppConstant.APPLICATION_DEVELOP_NAME + "/code") |
||||
@Api(value = "代码生成", tags = "代码生成") |
||||
@PreAuth(RoleConstant.HAS_ROLE_ADMIN) |
||||
public class CodeController extends BladeController { |
||||
|
||||
private ICodeService codeService; |
||||
private IDatasourceService datasourceService; |
||||
|
||||
/** |
||||
* 详情 |
||||
*/ |
||||
@GetMapping("/detail") |
||||
@ApiOperationSupport(order = 1) |
||||
@ApiOperation(value = "详情", notes = "传入code") |
||||
public R<Code> detail(Code code) { |
||||
Code detail = codeService.getOne(Condition.getQueryWrapper(code)); |
||||
return R.data(detail); |
||||
} |
||||
|
||||
/** |
||||
* 分页 |
||||
*/ |
||||
@GetMapping("/list") |
||||
@ApiImplicitParams({ |
||||
@ApiImplicitParam(name = "codeName", value = "模块名", paramType = "query", dataType = "string"), |
||||
@ApiImplicitParam(name = "tableName", value = "表名", paramType = "query", dataType = "string"), |
||||
@ApiImplicitParam(name = "modelName", value = "实体名", paramType = "query", dataType = "string") |
||||
}) |
||||
@ApiOperationSupport(order = 2) |
||||
@ApiOperation(value = "分页", notes = "传入code") |
||||
public R<IPage<Code>> list(@ApiIgnore @RequestParam Map<String, Object> code, Query query) { |
||||
IPage<Code> pages = codeService.page(Condition.getPage(query), Condition.getQueryWrapper(code, Code.class)); |
||||
return R.data(pages); |
||||
} |
||||
|
||||
/** |
||||
* 新增或修改 |
||||
*/ |
||||
@PostMapping("/submit") |
||||
@ApiOperationSupport(order = 3) |
||||
@ApiOperation(value = "新增或修改", notes = "传入code") |
||||
public R submit(@Valid @RequestBody Code code) { |
||||
return R.status(codeService.submit(code)); |
||||
} |
||||
|
||||
|
||||
/** |
||||
* 删除 |
||||
*/ |
||||
@PostMapping("/remove") |
||||
@ApiOperationSupport(order = 4) |
||||
@ApiOperation(value = "删除", notes = "传入ids") |
||||
public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { |
||||
return R.status(codeService.removeByIds(Func.toLongList(ids))); |
||||
} |
||||
|
||||
/** |
||||
* 复制 |
||||
*/ |
||||
@PostMapping("/copy") |
||||
@ApiOperationSupport(order = 5) |
||||
@ApiOperation(value = "复制", notes = "传入id") |
||||
public R copy(@ApiParam(value = "主键", required = true) @RequestParam Long id) { |
||||
Code code = codeService.getById(id); |
||||
code.setId(null); |
||||
code.setCodeName(code.getCodeName() + "-copy"); |
||||
return R.status(codeService.save(code)); |
||||
} |
||||
|
||||
/** |
||||
* 代码生成 |
||||
*/ |
||||
@PostMapping("/gen-code") |
||||
@ApiOperationSupport(order = 6) |
||||
@ApiOperation(value = "代码生成", notes = "传入ids") |
||||
public R genCode(@ApiParam(value = "主键集合", required = true) @RequestParam String ids, @RequestParam(defaultValue = "sword") String system) { |
||||
Collection<Code> codes = codeService.listByIds(Func.toLongList(ids)); |
||||
codes.forEach(code -> { |
||||
BladeCodeGenerator generator = new BladeCodeGenerator(); |
||||
// 设置数据源
|
||||
Datasource datasource = datasourceService.getById(code.getDatasourceId()); |
||||
generator.setDriverName(datasource.getDriverClass()); |
||||
generator.setUrl(datasource.getUrl()); |
||||
generator.setUsername(datasource.getUsername()); |
||||
generator.setPassword(datasource.getPassword()); |
||||
// 设置基础配置
|
||||
generator.setSystemName(system); |
||||
generator.setServiceName(code.getServiceName()); |
||||
generator.setPackageName(code.getPackageName()); |
||||
generator.setPackageDir(code.getApiPath()); |
||||
generator.setPackageWebDir(code.getWebPath()); |
||||
generator.setTablePrefix(Func.toStrArray(code.getTablePrefix())); |
||||
generator.setIncludeTables(Func.toStrArray(code.getTableName())); |
||||
// 设置是否继承基础业务字段
|
||||
generator.setHasSuperEntity(code.getBaseMode() == 2); |
||||
// 控制器添加服务名前缀
|
||||
generator.setHasServiceName(Boolean.TRUE); |
||||
// 设置是否开启包装器模式
|
||||
generator.setHasWrapper(code.getWrapMode() == 2); |
||||
generator.run(); |
||||
}); |
||||
return R.success("代码生成成功"); |
||||
} |
||||
|
||||
} |
||||
@ -1,126 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.controller; |
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
import io.swagger.annotations.Api; |
||||
import io.swagger.annotations.ApiOperation; |
||||
|
||||
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
||||
import io.swagger.annotations.ApiParam; |
||||
import lombok.AllArgsConstructor; |
||||
import org.springblade.core.boot.ctrl.BladeController; |
||||
import org.springblade.core.launch.constant.AppConstant; |
||||
import org.springblade.core.mp.support.Condition; |
||||
import org.springblade.core.mp.support.Query; |
||||
import org.springblade.core.tool.api.R; |
||||
import org.springblade.core.tool.utils.Func; |
||||
import org.springblade.modules.develop.entity.Datasource; |
||||
import org.springblade.modules.develop.service.IDatasourceService; |
||||
import org.springframework.web.bind.annotation.*; |
||||
|
||||
import javax.validation.Valid; |
||||
import java.util.List; |
||||
|
||||
/** |
||||
* 数据源配置表 控制器 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@RestController |
||||
@AllArgsConstructor |
||||
@RequestMapping(AppConstant.APPLICATION_DEVELOP_NAME + "/datasource") |
||||
@Api(value = "数据源配置表", tags = "数据源配置表接口") |
||||
public class DatasourceController extends BladeController { |
||||
|
||||
private IDatasourceService datasourceService; |
||||
|
||||
/** |
||||
* 详情 |
||||
*/ |
||||
@GetMapping("/detail") |
||||
@ApiOperationSupport(order = 1) |
||||
@ApiOperation(value = "详情", notes = "传入datasource") |
||||
public R<Datasource> detail(Datasource datasource) { |
||||
Datasource detail = datasourceService.getOne(Condition.getQueryWrapper(datasource)); |
||||
return R.data(detail); |
||||
} |
||||
|
||||
/** |
||||
* 分页 数据源配置表 |
||||
*/ |
||||
@GetMapping("/list") |
||||
@ApiOperationSupport(order = 2) |
||||
@ApiOperation(value = "分页", notes = "传入datasource") |
||||
public R<IPage<Datasource>> list(Datasource datasource, Query query) { |
||||
IPage<Datasource> pages = datasourceService.page(Condition.getPage(query), Condition.getQueryWrapper(datasource)); |
||||
return R.data(pages); |
||||
} |
||||
|
||||
/** |
||||
* 新增 数据源配置表 |
||||
*/ |
||||
@PostMapping("/save") |
||||
@ApiOperationSupport(order = 4) |
||||
@ApiOperation(value = "新增", notes = "传入datasource") |
||||
public R save(@Valid @RequestBody Datasource datasource) { |
||||
return R.status(datasourceService.save(datasource)); |
||||
} |
||||
|
||||
/** |
||||
* 修改 数据源配置表 |
||||
*/ |
||||
@PostMapping("/update") |
||||
@ApiOperationSupport(order = 5) |
||||
@ApiOperation(value = "修改", notes = "传入datasource") |
||||
public R update(@Valid @RequestBody Datasource datasource) { |
||||
return R.status(datasourceService.updateById(datasource)); |
||||
} |
||||
|
||||
/** |
||||
* 新增或修改 数据源配置表 |
||||
*/ |
||||
@PostMapping("/submit") |
||||
@ApiOperationSupport(order = 6) |
||||
@ApiOperation(value = "新增或修改", notes = "传入datasource") |
||||
public R submit(@Valid @RequestBody Datasource datasource) { |
||||
datasource.setUrl(datasource.getUrl().replace("&", "&")); |
||||
return R.status(datasourceService.saveOrUpdate(datasource)); |
||||
} |
||||
|
||||
|
||||
/** |
||||
* 删除 数据源配置表 |
||||
*/ |
||||
@PostMapping("/remove") |
||||
@ApiOperationSupport(order = 7) |
||||
@ApiOperation(value = "逻辑删除", notes = "传入ids") |
||||
public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { |
||||
return R.status(datasourceService.deleteLogic(Func.toLongList(ids))); |
||||
} |
||||
|
||||
/** |
||||
* 数据源列表 |
||||
*/ |
||||
@GetMapping("/select") |
||||
@ApiOperationSupport(order = 8) |
||||
@ApiOperation(value = "下拉数据源", notes = "查询列表") |
||||
public R<List<Datasource>> select() { |
||||
List<Datasource> list = datasourceService.list(); |
||||
return R.data(list); |
||||
} |
||||
|
||||
} |
||||
@ -1,125 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.entity; |
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType; |
||||
import com.baomidou.mybatisplus.annotation.TableId; |
||||
import com.baomidou.mybatisplus.annotation.TableLogic; |
||||
import com.baomidou.mybatisplus.annotation.TableName; |
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
||||
import io.swagger.annotations.ApiModel; |
||||
import io.swagger.annotations.ApiModelProperty; |
||||
import lombok.Data; |
||||
|
||||
import java.io.Serializable; |
||||
|
||||
/** |
||||
* 实体类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@Data |
||||
@TableName("blade_code") |
||||
@ApiModel(value = "Code对象", description = "Code对象") |
||||
public class Code implements Serializable { |
||||
|
||||
private static final long serialVersionUID = 1L; |
||||
|
||||
/** |
||||
* 主键 |
||||
*/ |
||||
@ApiModelProperty(value = "主键") |
||||
@TableId(value = "id", type = IdType.ASSIGN_ID) |
||||
@JsonSerialize(using = ToStringSerializer.class) |
||||
private Long id; |
||||
|
||||
/** |
||||
* 数据源主键 |
||||
*/ |
||||
@ApiModelProperty(value = "数据源主键") |
||||
@JsonSerialize(using = ToStringSerializer.class) |
||||
private Long datasourceId; |
||||
|
||||
/** |
||||
* 模块名称 |
||||
*/ |
||||
@ApiModelProperty(value = "服务名称") |
||||
private String serviceName; |
||||
|
||||
/** |
||||
* 模块名称 |
||||
*/ |
||||
@ApiModelProperty(value = "模块名称") |
||||
private String codeName; |
||||
|
||||
/** |
||||
* 表名 |
||||
*/ |
||||
@ApiModelProperty(value = "表名") |
||||
private String tableName; |
||||
|
||||
/** |
||||
* 实体名 |
||||
*/ |
||||
@ApiModelProperty(value = "表前缀") |
||||
private String tablePrefix; |
||||
|
||||
/** |
||||
* 主键名 |
||||
*/ |
||||
@ApiModelProperty(value = "主键名") |
||||
private String pkName; |
||||
|
||||
/** |
||||
* 基础业务模式 |
||||
*/ |
||||
@ApiModelProperty(value = "基础业务模式") |
||||
private Integer baseMode; |
||||
|
||||
/** |
||||
* 包装器模式 |
||||
*/ |
||||
@ApiModelProperty(value = "包装器模式") |
||||
private Integer wrapMode; |
||||
|
||||
/** |
||||
* 后端包名 |
||||
*/ |
||||
@ApiModelProperty(value = "后端包名") |
||||
private String packageName; |
||||
|
||||
/** |
||||
* 后端路径 |
||||
*/ |
||||
@ApiModelProperty(value = "后端路径") |
||||
private String apiPath; |
||||
|
||||
/** |
||||
* 前端路径 |
||||
*/ |
||||
@ApiModelProperty(value = "前端路径") |
||||
private String webPath; |
||||
|
||||
/** |
||||
* 是否已删除 |
||||
*/ |
||||
@TableLogic |
||||
@ApiModelProperty(value = "是否已删除") |
||||
private Integer isDeleted; |
||||
|
||||
|
||||
} |
||||
@ -1,82 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.entity; |
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType; |
||||
import com.baomidou.mybatisplus.annotation.TableId; |
||||
import com.baomidou.mybatisplus.annotation.TableName; |
||||
import io.swagger.annotations.ApiModel; |
||||
import io.swagger.annotations.ApiModelProperty; |
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
||||
import lombok.Data; |
||||
import lombok.EqualsAndHashCode; |
||||
import org.springblade.core.mp.base.BaseEntity; |
||||
|
||||
/** |
||||
* 数据源配置表实体类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@Data |
||||
@TableName("blade_datasource") |
||||
@EqualsAndHashCode(callSuper = true) |
||||
@ApiModel(value = "Datasource对象", description = "数据源配置表") |
||||
public class Datasource extends BaseEntity { |
||||
|
||||
private static final long serialVersionUID = 1L; |
||||
|
||||
/** |
||||
* 主键 |
||||
*/ |
||||
@ApiModelProperty(value = "主键") |
||||
@TableId(value = "id", type = IdType.ASSIGN_ID) |
||||
@JsonSerialize(using = ToStringSerializer.class) |
||||
private Long id; |
||||
|
||||
/** |
||||
* 名称 |
||||
*/ |
||||
@ApiModelProperty(value = "名称") |
||||
private String name; |
||||
/** |
||||
* 驱动类 |
||||
*/ |
||||
@ApiModelProperty(value = "驱动类") |
||||
private String driverClass; |
||||
/** |
||||
* 连接地址 |
||||
*/ |
||||
@ApiModelProperty(value = "连接地址") |
||||
private String url; |
||||
/** |
||||
* 用户名 |
||||
*/ |
||||
@ApiModelProperty(value = "用户名") |
||||
private String username; |
||||
/** |
||||
* 密码 |
||||
*/ |
||||
@ApiModelProperty(value = "密码") |
||||
private String password; |
||||
/** |
||||
* 备注 |
||||
*/ |
||||
@ApiModelProperty(value = "备注") |
||||
private String remark; |
||||
|
||||
|
||||
} |
||||
@ -1,28 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.mapper; |
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
import org.springblade.modules.develop.entity.Code; |
||||
|
||||
/** |
||||
* Mapper 接口 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
public interface CodeMapper extends BaseMapper<Code> { |
||||
|
||||
} |
||||
@ -1,22 +0,0 @@ |
||||
<?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="org.springblade.modules.develop.mapper.CodeMapper"> |
||||
|
||||
<!-- 通用查询映射结果 --> |
||||
<resultMap id="codeResultMap" type="org.springblade.modules.develop.entity.Code"> |
||||
<id column="id" property="id"/> |
||||
<result column="datasource_id" property="datasourceId"/> |
||||
<result column="service_name" property="serviceName"/> |
||||
<result column="code_name" property="codeName"/> |
||||
<result column="table_name" property="tableName"/> |
||||
<result column="pk_name" property="pkName"/> |
||||
<result column="base_mode" property="baseMode"/> |
||||
<result column="wrap_mode" property="wrapMode"/> |
||||
<result column="table_prefix" property="tablePrefix"/> |
||||
<result column="package_name" property="packageName"/> |
||||
<result column="api_path" property="apiPath"/> |
||||
<result column="web_path" property="webPath"/> |
||||
<result column="is_deleted" property="isDeleted"/> |
||||
</resultMap> |
||||
|
||||
</mapper> |
||||
@ -1,28 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.mapper; |
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
import org.springblade.modules.develop.entity.Datasource; |
||||
|
||||
/** |
||||
* 数据源配置表 Mapper 接口 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
public interface DatasourceMapper extends BaseMapper<Datasource> { |
||||
|
||||
} |
||||
@ -1,22 +0,0 @@ |
||||
<?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="org.springblade.modules.develop.mapper.DatasourceMapper"> |
||||
|
||||
<!-- 通用查询映射结果 --> |
||||
<resultMap id="datasourceResultMap" type="org.springblade.modules.develop.entity.Datasource"> |
||||
<result column="id" property="id"/> |
||||
<result column="create_user" property="createUser"/> |
||||
<result column="create_dept" property="createDept"/> |
||||
<result column="create_time" property="createTime"/> |
||||
<result column="update_user" property="updateUser"/> |
||||
<result column="update_time" property="updateTime"/> |
||||
<result column="status" property="status"/> |
||||
<result column="is_deleted" property="isDeleted"/> |
||||
<result column="driver_class" property="driverClass"/> |
||||
<result column="url" property="url"/> |
||||
<result column="username" property="username"/> |
||||
<result column="password" property="password"/> |
||||
<result column="remark" property="remark"/> |
||||
</resultMap> |
||||
|
||||
</mapper> |
||||
@ -1,37 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.service; |
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService; |
||||
import org.springblade.modules.develop.entity.Code; |
||||
|
||||
/** |
||||
* 服务类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
public interface ICodeService extends IService<Code> { |
||||
|
||||
/** |
||||
* 提交 |
||||
* |
||||
* @param code |
||||
* @return |
||||
*/ |
||||
boolean submit(Code code); |
||||
|
||||
} |
||||
@ -1,28 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.service; |
||||
|
||||
import org.springblade.core.mp.base.BaseService; |
||||
import org.springblade.modules.develop.entity.Datasource; |
||||
|
||||
/** |
||||
* 数据源配置表 服务类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
public interface IDatasourceService extends BaseService<Datasource> { |
||||
|
||||
} |
||||
@ -1,39 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.service.impl; |
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
||||
import org.springblade.core.tool.constant.BladeConstant; |
||||
import org.springblade.modules.develop.entity.Code; |
||||
import org.springblade.modules.develop.mapper.CodeMapper; |
||||
import org.springblade.modules.develop.service.ICodeService; |
||||
import org.springframework.stereotype.Service; |
||||
|
||||
/** |
||||
* 服务实现类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@Service |
||||
public class CodeServiceImpl extends ServiceImpl<CodeMapper, Code> implements ICodeService { |
||||
|
||||
@Override |
||||
public boolean submit(Code code) { |
||||
code.setIsDeleted(BladeConstant.DB_NOT_DELETED); |
||||
return saveOrUpdate(code); |
||||
} |
||||
|
||||
} |
||||
@ -1,32 +0,0 @@ |
||||
/** |
||||
* Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). |
||||
* <p> |
||||
* Licensed under the Apache License, Version 2.0 (the "License"); |
||||
* you may not use this file except in compliance with the License. |
||||
* You may obtain a copy of the License at |
||||
* <p> |
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
* <p> |
||||
* Unless required by applicable law or agreed to in writing, software |
||||
* distributed under the License is distributed on an "AS IS" BASIS, |
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||
* See the License for the specific language governing permissions and |
||||
* limitations under the License. |
||||
*/ |
||||
package org.springblade.modules.develop.service.impl; |
||||
|
||||
import org.springblade.core.mp.base.BaseServiceImpl; |
||||
import org.springblade.modules.develop.entity.Datasource; |
||||
import org.springblade.modules.develop.mapper.DatasourceMapper; |
||||
import org.springblade.modules.develop.service.IDatasourceService; |
||||
import org.springframework.stereotype.Service; |
||||
|
||||
/** |
||||
* 数据源配置表 服务实现类 |
||||
* |
||||
* @author Chill |
||||
*/ |
||||
@Service |
||||
public class DatasourceServiceImpl extends BaseServiceImpl<DatasourceMapper, Datasource> implements IDatasourceService { |
||||
|
||||
} |
||||
@ -1,4 +1,4 @@ |
||||
package org.springblade.modules.desk.controller; |
||||
package org.springblade.modules.monitor.controller; |
||||
|
||||
import lombok.AllArgsConstructor; |
||||
import org.apache.ibatis.annotations.Param; |
||||
@ -1,4 +1,4 @@ |
||||
package org.springblade.modules.desk.controller; |
||||
package org.springblade.modules.monitor.controller; |
||||
|
||||
import lombok.AllArgsConstructor; |
||||
import org.springblade.core.tool.api.R; |
||||
@ -1,4 +1,4 @@ |
||||
package org.springblade.modules.desk.mapper; |
||||
package org.springblade.modules.monitor.mapper; |
||||
|
||||
import org.apache.ibatis.annotations.MapKey; |
||||
import org.apache.ibatis.annotations.Param; |
||||
@ -1,6 +1,6 @@ |
||||
<?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 = "org.springblade.modules.desk.mapper.MonitorMapper"> |
||||
<mapper namespace = "org.springblade.modules.monitor.mapper.MonitorMapper"> |
||||
|
||||
<select id = "resolveTips" resultType = "map"> |
||||
select id, class_code as classCode, point_code as pointCode, tips, short_num as shortNum |
||||
Loading…
Reference in new issue