Browse Source

commit code

master
刘力 3 years ago
parent
commit
321d8cfd9a
  1. 20
      archives/src/main/java/com/storeroom/modules/dictionary/controller/MyTestController.java
  2. 67
      archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesType.java
  3. 43
      common/src/main/java/com/storeroom/utils/ListUtils.java
  4. 2
      common/src/main/java/com/storeroom/utils/NanoIdUtils.java
  5. 6
      system/pom.xml
  6. 71
      system/src/main/java/com/storeroom/modules/system/controller/TestController.java
  7. 26
      system/src/main/java/com/storeroom/modules/system/domain/vo/CreateTableVo.java

20
archives/src/main/java/com/storeroom/modules/dictionary/controller/MyTestController.java

@ -0,0 +1,20 @@
package com.storeroom.modules.dictionary.controller;
import com.storeroom.annotaion.rest.AnonymousGetMapping;
import com.storeroom.utils.ApiResponse;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/api/test")
public class MyTestController {
@AnonymousGetMapping(value = "/ok")
public ApiResponse<Object> Ok(){
return ApiResponse.success("请求成功");
}
}

67
archives/src/main/java/com/storeroom/modules/dictionary/domain/ArchivesType.java

@ -0,0 +1,67 @@
package com.storeroom.modules.dictionary.domain;
import com.storeroom.base.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import javax.persistence.*;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Objects;
@Entity
@Getter
@Setter
@Table(name = "archives_type")
public class ArchivesType extends BaseEntity implements Serializable {
@Id
@Column(name = "id")
@NotNull(groups = Update.class)
@GeneratedValue(strategy = GenerationType.IDENTITY)
@ApiModelProperty(value = "id", hidden = true)
private String id;
@Column(name = "cn_name")
@ApiModelProperty(value = "门类名称")
private String cnName;
@Column(name = "en_name")
@ApiModelProperty(value = "表名")
private String enName;
@Column(name = "pid")
@ApiModelProperty(value = "父类id")
private String pid;
@Column(name = "is_type")
@ApiModelProperty(value = "门类级别")
private long isType;
@Column(name = "is_type_metic")
@ApiModelProperty(value = "是否为模板档案")
private long isTypeMetic;
@Column(name = "category_seq")
@ApiModelProperty(value = "排序")
private long categorySeq;
@Column(name = "remark")
@ApiModelProperty(value = "备注")
private String remark;
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
ArchivesType that = (ArchivesType) o;
return isType == that.isType && isTypeMetic == that.isTypeMetic && categorySeq == that.categorySeq && Objects.equals(id, that.id) && Objects.equals(cnName, that.cnName) && Objects.equals(enName, that.enName) && Objects.equals(pid, that.pid) && Objects.equals(remark, that.remark);
}
@Override
public int hashCode() {
return Objects.hash(id, cnName, enName, pid, isType, isTypeMetic, categorySeq, remark);
}
}

43
common/src/main/java/com/storeroom/utils/ListUtils.java

@ -0,0 +1,43 @@
package com.storeroom.utils;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* List 工具类
*/
public class ListUtils {
public static List<Map<String, Object>> converListMap(List<Object> list) {
List<Map<String, Object>> maps = new ArrayList<Map<String, Object>>();
for (Object obj : list) {
Class c = obj.getClass();
Field[] f = c.getDeclaredFields();
Map<String, Object> map = new HashMap<String, Object>();
for (Field fie : f) {
try {
fie.setAccessible(true);
map.put(fie.getName(),fie.get(obj));
} catch (Exception e) {
e.printStackTrace();
}
}
//获取父类的私有属性
for(Field fie : c.getSuperclass().getDeclaredFields()){
try {
fie.setAccessible(true);//取消语言访问检查
map.put(fie.getName(), fie.get(obj));//获取私有变量值
} catch (Exception e) {
e.printStackTrace();
}
}
maps.add(map);
}
return maps;
}
}

2
common/src/main/java/com/storeroom/utils/NanoIdUtils.java

@ -18,7 +18,7 @@ public final class NanoIdUtils {
public static final char[] DEFAULT_ALPHABET = "0123456789ABCDEF".toCharArray();
public static final int DEFAULT_SIZE = 21;
public static final int DEFAULT_SIZE = 22;
public static String randomNanoId() {
return NanoId.randomNanoId(DEFAULT_NUMBER_GENERATOR, DEFAULT_ALPHABET, DEFAULT_SIZE);

6
system/pom.xml

@ -79,6 +79,12 @@
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
</dependency>
<dependency>
<groupId>com.storeroom</groupId>
<artifactId>archives</artifactId>
<version>1.0</version>
</dependency>
</dependencies>

71
system/src/main/java/com/storeroom/modules/system/controller/TestController.java

@ -2,15 +2,28 @@ package com.storeroom.modules.system.controller;
import com.storeroom.annotaion.rest.AnonymousGetMapping;
import com.storeroom.annotaion.rest.AnonymousPostMapping;
import com.storeroom.exception.BaseException;
import com.storeroom.exception.constant.ResponseStatus;
import com.storeroom.modules.system.domain.vo.CreateTableVo;
import com.storeroom.utils.ApiResponse;
import com.storeroom.utils.NanoIdUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Api(tags = "测试接口")
@RestController
@RequestMapping("/api/test")
@ -18,10 +31,60 @@ import org.springframework.web.bind.annotation.RestController;
public class TestController {
private final JdbcTemplate jdbcTemplate;
@ApiOperation("测试接口")
@AnonymousGetMapping(value = "/miss")
public ApiResponse<Object> me() {
//return ApiResponse.error(ResponseStatus.SUCCESS.getCode(),ResponseStatus.SUCCESS.getMessage());
throw new BaseException("返回异常信息");
@AnonymousPostMapping(value = "/miss")
public ApiResponse<Object> me(@RequestBody CreateTableVo createTableVo) {
String tableName = createTableVo.getTableName();
StringBuilder stringBuilder = new StringBuilder("create table " + tableName + "(id varchar(100) primary key,");
List<Map<String, Object>> maps = new ArrayList<Map<String, Object>>();
for (Object obj : createTableVo.getList()) {
Class c = obj.getClass();
Field[] f = c.getDeclaredFields();
Map<String, Object> map = new HashMap<String, Object>();
for (Field fie : f) {
try {
fie.setAccessible(true);
map.put(fie.getName(), fie.get(obj));
} catch (Exception e) {
e.printStackTrace();
}
}
//获取父类的私有属性
for (Field fie : c.getSuperclass().getDeclaredFields()) {
try {
fie.setAccessible(true);//取消语言访问检查
map.put(fie.getName(), fie.get(obj));//获取私有变量值
} catch (Exception e) {
e.printStackTrace();
}
}
maps.add(map);
}
List<Map<String, Object>> list = maps;
for (int i = 0; i < list.size(); i++) {
stringBuilder.append(list.get(i).get("fieldName"));
stringBuilder.append(" ");
stringBuilder.append(list.get(i).get("fieldType"));
stringBuilder.append("(");
stringBuilder.append(list.get(i).get("fieldExtent"));
stringBuilder.append(")");
if (list.size() - 1 != i) {
stringBuilder.append(",");
}
if (list.size() - 1 == i) {
stringBuilder.append(")");
}
}
System.out.println("sql语句:" + stringBuilder);
jdbcTemplate.execute(stringBuilder.toString());
return ApiResponse.success("");
}
}

26
system/src/main/java/com/storeroom/modules/system/domain/vo/CreateTableVo.java

@ -0,0 +1,26 @@
package com.storeroom.modules.system.domain.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class CreateTableVo implements Serializable {
public CreateTableVo(){
}
private String tableName;
private List<Vo> list;
@Data
static class Vo{
//字段名称
private String fieldName;
//字段类型
private String fieldType;
//数据长度
private Integer fieldExtent;
}
}
Loading…
Cancel
Save