Commit 7e71f5a5 authored by yanzg's avatar yanzg

接口文档的支持

parent 1c8c8da5
...@@ -8,7 +8,6 @@ import com.yanzuoguang.util.helper.DateHelper; ...@@ -8,7 +8,6 @@ import com.yanzuoguang.util.helper.DateHelper;
import com.yanzuoguang.util.helper.StringHelper; import com.yanzuoguang.util.helper.StringHelper;
import com.yanzuoguang.util.vo.*; import com.yanzuoguang.util.vo.*;
import java.lang.reflect.Array;
import java.util.*; import java.util.*;
/** /**
...@@ -338,15 +337,12 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao { ...@@ -338,15 +337,12 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
} }
/** /**
* 加载数据 * 获取请求对象爱
* *
* @param model 加载数据的请求参数 * @param model 来源对象
* @param resultClass 需要加载的数据的类型 * @return
* @param <T> 返回数据的类型
* @return 需要返回的数据
*/ */
@Override protected Object getLoadFrom(Object model) {
public <T extends Object> T load(Object model, Class<T> resultClass) {
// 获取来源主键 // 获取来源主键
Object from = model; Object from = model;
String key = this.getInputKey(from); String key = this.getInputKey(from);
...@@ -357,6 +353,22 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao { ...@@ -357,6 +353,22 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
this.setKeyString(from, key); this.setKeyString(from, key);
} }
return from;
}
/**
* 加载数据
*
* @param model 加载数据的请求参数
* @param resultClass 需要加载的数据的类型
* @param <T> 返回数据的类型
* @return 需要返回的数据
*/
@Override
public <T extends Object> T load(Object model, Class<T> resultClass) {
// 获取来源主键
String key = this.getInputKey(model);
Object from = this.getLoadFrom(model);
// 通过传入数据进行加载 // 通过传入数据进行加载
T to = this.queryFirst(resultClass, DaoConst.LOAD, from); T to = this.queryFirst(resultClass, DaoConst.LOAD, from);
if (to == null) { if (to == null) {
...@@ -586,15 +598,58 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao { ...@@ -586,15 +598,58 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
return this.updateSql(sqlName + "_GroupAdd", model); return this.updateSql(sqlName + "_GroupAdd", model);
} }
/***
* 查询数据是否存在,当存在时修改,否则增加
* @param cls 需要创建的实体的类型
* @param requests 前台参数,不能包含主键以及其他不需要修改的字段
* @return 保存成功,返回保存的ID,保存失败,返回空值
*/
public <T extends Object> List<String> saveByLoadArray(Class<T> cls, Object... requests) {
return this.saveByLoadList(cls, Arrays.asList(requests));
}
/***
* 查询数据是否存在,当存在时修改,否则增加
* @param cls 需要创建的实体的类型
* @param requests 前台参数,不能包含主键以及其他不需要修改的字段
* @return 保存成功,返回保存的ID,保存失败,返回空值
*/
public <T extends Object> List<String> saveByLoadList(Class<T> cls, List<Object> requests) {
List<String> ret = new ArrayList<>();
if (requests != null) {
for (Object model : requests) {
ret.add(this.saveByLoad(cls, model));
}
}
return ret;
}
/*** /***
* 查询数据是否存在,当存在时修改,否则增加 * 查询数据是否存在,当存在时修改,否则增加
* @param cls 需要创建的实体的类型 * @param cls 需要创建的实体的类型
* @param sqlName 执行的SQL语句
* @param request 前台参数,不能包含主键以及其他不需要修改的字段 * @param request 前台参数,不能包含主键以及其他不需要修改的字段
* @return 保存成功,返回保存的ID,保存失败,返回空值 * @return 保存成功,返回保存的ID,保存失败,返回空值
*/ */
public <T extends Object> String saveWith(Class<T> cls, String sqlName, Object request) { public <T extends Object> String saveByLoad(Class<T> cls, Object request) {
T from = this.queryFirst(cls, sqlName, request); String key = this.getInputKey(request);
T from = null;
if (!StringHelper.isEmpty(key)) {
from = this.load(request, cls);
}
return saveFromCreate(cls, from, request);
}
/**
* 根据from来创建对象,对象存在时修改,对象不存在时创建
*
* @param cls 自动创建的对象类型
* @param from 需要修改的对象,当该对象不存在时创建数据
* @param request 需要创建的对象
* @param <T> 创建的数据类型
* @return 创建成功的编号
*/
protected <T extends Object> String saveFromCreate(Class<T> cls, T from, Object request) {
if (from == null) { if (from == null) {
try { try {
from = cls.newInstance(); from = cls.newInstance();
...@@ -609,6 +664,18 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao { ...@@ -609,6 +664,18 @@ public abstract class BaseDaoImpl extends BaseDaoSql implements BaseDao {
} }
} }
/***
* 查询数据是否存在,当存在时修改,否则增加
* @param cls 需要创建的实体的类型
* @param sqlName 执行的SQL语句
* @param request 前台参数,不能包含主键以及其他不需要修改的字段
* @return 保存成功,返回保存的ID,保存失败,返回空值
*/
public <T extends Object> String saveWith(Class<T> cls, String sqlName, Object request) {
T from = this.queryFirst(cls, sqlName, request);
return saveFromCreate(cls, from, request);
}
/** /**
* 创建成功后的处理 * 创建成功后的处理
* *
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment