Skip to content

Commit a67952e

Browse files
author
gaoyanguo
committed
xiu
1 parent 3e0de04 commit a67952e

File tree

225 files changed

+10303
-50
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

225 files changed

+10303
-50
lines changed

pom.xml

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,12 @@
1111
<groupId>com.monkeyzi</groupId>
1212
<artifactId>code-gen</artifactId>
1313
<version>0.0.1</version>
14+
<packaging>jar</packaging>
1415
<name>code-gen</name>
1516
<description>动态数据源的代码生成器</description>
1617

1718
<properties>
19+
<skipTests>true</skipTests>
1820
<java.version>1.8</java.version>
1921
<druid-starter>1.1.21</druid-starter>
2022
<hutool.version>5.0.5</hutool.version>
@@ -23,6 +25,11 @@
2325
<mysql-connector-java.version>8.0.15</mysql-connector-java.version>
2426
<oracle.driver.version>12.1.0.1-atlassian-hosted</oracle.driver.version>
2527
<velocity.version>1.7</velocity.version>
28+
<shiro-redis.version>3.2.10</shiro-redis.version>
29+
<shiro-spring.version>1.4.2</shiro-spring.version>
30+
<thymeleaf-extras-shiro.version>2.0.0</thymeleaf-extras-shiro.version>
31+
<apache.commons.io.version>2.6</apache.commons.io.version>
32+
<apache.commons-configuration.version>1.10</apache.commons-configuration.version>
2633
</properties>
2734

2835
<dependencies>
@@ -110,6 +117,38 @@
110117
<artifactId>ojdbc6</artifactId>
111118
<version>${oracle.driver.version}</version>
112119
</dependency>
120+
<!--apache common-->
121+
<dependency>
122+
<groupId>commons-configuration</groupId>
123+
<artifactId>commons-configuration</artifactId>
124+
<version>${apache.commons-configuration.version}</version>
125+
</dependency>
126+
<dependency>
127+
<groupId>commons-io</groupId>
128+
<artifactId>commons-io</artifactId>
129+
<version>${apache.commons.io.version}</version>
130+
</dependency>
131+
<!--thymeleaf-->
132+
<dependency>
133+
<groupId>org.springframework.boot</groupId>
134+
<artifactId>spring-boot-starter-thymeleaf</artifactId>
135+
</dependency>
136+
<!-- shiro -->
137+
<dependency>
138+
<groupId>org.apache.shiro</groupId>
139+
<artifactId>shiro-spring</artifactId>
140+
<version>${shiro-spring.version}</version>
141+
</dependency>
142+
<dependency>
143+
<groupId>com.github.manondidi</groupId>
144+
<artifactId>shiro-redis</artifactId>
145+
<version>${shiro-redis.version}</version>
146+
</dependency>
147+
<dependency>
148+
<groupId>com.github.theborakompanioni</groupId>
149+
<artifactId>thymeleaf-extras-shiro</artifactId>
150+
<version>${thymeleaf-extras-shiro.version}</version>
151+
</dependency>
113152
</dependencies>
114153

115154
<build>
@@ -120,5 +159,16 @@
120159
</plugin>
121160
</plugins>
122161
</build>
123-
162+
<!-- 使用aliyun镜像 -->
163+
<repositories>
164+
<repository>
165+
<id>aliyun</id>
166+
<name>aliyun</name>
167+
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
168+
</repository>
169+
<repository>
170+
<id>jitpack.io</id>
171+
<url>https://jitpack.io</url>
172+
</repository>
173+
</repositories>
124174
</project>
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package com.monkeyzi.code.base;
2+
3+
import com.github.pagehelper.PageInfo;
4+
import com.monkeyzi.code.constant.CommonConstants;
5+
import lombok.extern.slf4j.Slf4j;
6+
7+
import java.util.HashMap;
8+
import java.util.Map;
9+
10+
@Slf4j
11+
public class BaseController {
12+
13+
protected Map<String, Object> getDataTable(PageInfo pageInfo) {
14+
return getDataTable(pageInfo, CommonConstants.DATA_MAP_INITIAL_CAPACITY);
15+
}
16+
17+
protected Map<String, Object> getDataTable(PageInfo pageInfo, int dataMapInitialCapacity) {
18+
Map<String, Object> data = new HashMap<>(dataMapInitialCapacity);
19+
data.put("rows", pageInfo.getList());
20+
data.put("total", pageInfo.getTotal());
21+
return data;
22+
}
23+
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package com.monkeyzi.code.base;
2+
3+
public enum RespCodeEnum {
4+
5+
SUCCESS(0),
6+
ERROR(1);
7+
8+
private Integer code;
9+
RespCodeEnum(Integer code){
10+
this.code = code;
11+
}
12+
13+
public Integer getCode() {
14+
return code;
15+
}
16+
}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
package com.monkeyzi.code.base;
2+
3+
import lombok.AllArgsConstructor;
4+
import lombok.Data;
5+
import lombok.NoArgsConstructor;
6+
7+
import java.io.Serializable;
8+
9+
@Data
10+
@AllArgsConstructor
11+
@NoArgsConstructor
12+
public class Result<T> implements Serializable {
13+
private T data;
14+
private Integer code;
15+
private String msg;
16+
17+
18+
19+
public boolean isSuccess(){
20+
return this.code.equals(RespCodeEnum.SUCCESS.getCode());
21+
}
22+
/**
23+
* 返回成功的方法
24+
*/
25+
public static <T> Result<T> successd(T data, Integer code, String msg) {
26+
return new Result<>(data,code,msg);
27+
}
28+
29+
public static <T> Result<T> ok(String msg) {
30+
return successd(null, RespCodeEnum.SUCCESS.getCode(), msg);
31+
}
32+
33+
public static <T> Result<T> ok(T data, String msg) {
34+
return successd(data, RespCodeEnum.SUCCESS.getCode(), msg);
35+
}
36+
37+
public static <T> Result<T> ok(T data) {
38+
return successd(data, RespCodeEnum.SUCCESS.getCode(), "");
39+
}
40+
41+
/**
42+
* 返回失败的
43+
* @param data
44+
* @param code
45+
* @param msg
46+
* @param <T>
47+
* @return
48+
*/
49+
public static <T> Result<T> failed(T data, Integer code, String msg) {
50+
return new Result<>(data, code, msg);
51+
}
52+
53+
public static <T> Result<T> fail(String msg) {
54+
return failed(null, RespCodeEnum.ERROR.getCode(), msg);
55+
}
56+
57+
public static <T> Result<T> fail(T data, String msg) {
58+
return failed(data, RespCodeEnum.ERROR.getCode(), msg);
59+
}
60+
61+
public static <T> Result<T> fail(T data) {
62+
return failed(data, RespCodeEnum.ERROR.getCode(), "");
63+
}
64+
65+
public static <T> Result<T> fail(Integer code,String msg) {
66+
return failed(null, code, msg);
67+
}
68+
69+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.monkeyzi.code.constant;
2+
3+
public interface CommonConstants {
4+
/**
5+
* 默认排序字段
6+
*/
7+
String ORDER_BY_FIELD="CREATE_TIME";
8+
/**
9+
* 排序顺序
10+
*/
11+
String ORDER_BY="desc";
12+
/**
13+
* map初始容量
14+
*/
15+
int DATA_MAP_INITIAL_CAPACITY = 4;
16+
17+
// 前端页面路径前缀
18+
String VIEW_PREFIX = "npms/views/";
19+
}

src/main/java/com/monkeyzi/code/constant/DataSourceConstants.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
package com.monkeyzi.code.constant;
22

33
/**
4-
* @author lengleng
5-
* @date 2019-04-01
6-
* <p>
74
* 数据源相关常量
85
*/
96
public interface DataSourceConstants {
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
package com.monkeyzi.code.controller;
2+
3+
import cn.hutool.core.io.IoUtil;
4+
import com.monkeyzi.code.dto.GenConfigDto;
5+
import com.monkeyzi.code.service.CodeGenService;
6+
import lombok.SneakyThrows;
7+
import lombok.extern.slf4j.Slf4j;
8+
import org.springframework.beans.factory.annotation.Autowired;
9+
import org.springframework.http.HttpHeaders;
10+
import org.springframework.web.bind.annotation.PostMapping;
11+
import org.springframework.web.bind.annotation.RequestBody;
12+
import org.springframework.web.bind.annotation.RequestMapping;
13+
import org.springframework.web.bind.annotation.RestController;
14+
15+
import javax.servlet.http.HttpServletResponse;
16+
17+
@Slf4j
18+
@RestController
19+
@RequestMapping(value = "/gen")
20+
public class CodeGenController {
21+
22+
@Autowired
23+
private CodeGenService codeGenService;
24+
25+
26+
@PostMapping("/code")
27+
@SneakyThrows
28+
public void generatorCode(@RequestBody GenConfigDto genConfig, HttpServletResponse response) {
29+
byte[] data = codeGenService.generatorCode(genConfig);
30+
response.reset();
31+
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, String.format("attachment; filename=%s.zip", genConfig.getTableName()));
32+
response.addHeader(HttpHeaders.CONTENT_LENGTH, String.valueOf(data.length));
33+
response.setContentType("application/octet-stream; charset=UTF-8");
34+
IoUtil.write(response.getOutputStream(), Boolean.TRUE, data);
35+
}
36+
37+
}
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
package com.monkeyzi.code.controller;
2+
3+
import com.github.pagehelper.PageInfo;
4+
import com.monkeyzi.code.base.BaseController;
5+
import com.monkeyzi.code.base.Result;
6+
import com.monkeyzi.code.dto.PageRequest;
7+
import com.monkeyzi.code.entity.SysDatasourceConf;
8+
import com.monkeyzi.code.service.DataSourceConfService;
9+
import lombok.extern.slf4j.Slf4j;
10+
import org.springframework.beans.factory.annotation.Autowired;
11+
import org.springframework.web.bind.annotation.*;
12+
13+
import java.util.HashMap;
14+
import java.util.List;
15+
import java.util.Map;
16+
import java.util.stream.Collectors;
17+
18+
/**
19+
* 数据源管理controller
20+
*/
21+
@Slf4j
22+
@RestController
23+
@RequestMapping(value = "/ds")
24+
public class DatasourceConfigController extends BaseController {
25+
26+
@Autowired
27+
private DataSourceConfService dataSourceConfService;
28+
29+
@GetMapping("/page")
30+
public Result getSysDatasourceConfPage(PageRequest page, SysDatasourceConf sysDatasourceConf) {
31+
PageInfo pageInfo=dataSourceConfService.pageQuery(page,sysDatasourceConf);
32+
Map<String,Object> results=super.getDataTable(pageInfo);
33+
return Result.ok(results);
34+
}
35+
36+
37+
/**
38+
* 查询全部数据源
39+
*
40+
* @return
41+
*/
42+
@GetMapping("/list")
43+
public List list() {
44+
List<Map<String,Object>> list=dataSourceConfService.list().stream()
45+
.map(a->{
46+
Map<String,Object> os=new HashMap<>();
47+
os.put("id",a.getId());
48+
os.put("name",a.getName());
49+
return os;
50+
}).collect(Collectors.toList());
51+
return list;
52+
}
53+
54+
55+
56+
/**
57+
* 通过id查询数据源表
58+
*
59+
* @param id id
60+
*/
61+
@GetMapping("/{id}")
62+
public Result getById(@PathVariable("id") Integer id) {
63+
SysDatasourceConf conf=this.dataSourceConfService.getById(id);
64+
return Result.ok(conf);
65+
}
66+
67+
68+
/**
69+
* 新增数据源表
70+
*
71+
* @param sysDatasourceConf 数据源表
72+
*/
73+
@PostMapping(value = "save")
74+
public Result save(@RequestBody SysDatasourceConf sysDatasourceConf) {
75+
this.dataSourceConfService.saveDataSource(sysDatasourceConf);
76+
return Result.ok("数据源新增成功!");
77+
}
78+
79+
/**
80+
* 修改数据源
81+
* @param sysDatasourceConf
82+
* @return
83+
*/
84+
@PostMapping(value = "update")
85+
public Result updateById(@RequestBody SysDatasourceConf sysDatasourceConf) {
86+
this.dataSourceConfService.updateDataSource(sysDatasourceConf);
87+
return Result.ok("ok!");
88+
}
89+
90+
/**
91+
* 删除数据源
92+
* @param id
93+
* @return
94+
*/
95+
@PostMapping("remove/{id}")
96+
public Result removeById(@PathVariable Integer id) {
97+
this.dataSourceConfService.removeById(id);
98+
return Result.ok("ok");
99+
}
100+
101+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package com.monkeyzi.code.controller;
2+
3+
import com.monkeyzi.code.base.BaseController;
4+
import com.monkeyzi.code.utils.NpmsUtils;
5+
import lombok.extern.slf4j.Slf4j;
6+
import org.apache.shiro.session.ExpiredSessionException;
7+
import org.springframework.stereotype.Controller;
8+
import org.springframework.web.bind.annotation.GetMapping;
9+
import org.springframework.web.bind.annotation.ResponseBody;
10+
import org.springframework.web.servlet.ModelAndView;
11+
12+
import javax.servlet.http.HttpServletRequest;
13+
14+
@Slf4j
15+
@Controller
16+
public class LoginController extends BaseController {
17+
18+
@GetMapping("login")
19+
@ResponseBody
20+
public Object login(HttpServletRequest request) {
21+
if (NpmsUtils.isAjaxRequest(request)) {
22+
throw new ExpiredSessionException();
23+
} else {
24+
ModelAndView mav = new ModelAndView();
25+
mav.setViewName(NpmsUtils.view("login"));
26+
return mav;
27+
}
28+
}
29+
}

0 commit comments

Comments
 (0)