表单功能接口优化

文件微服接口优化
自动填充单元测试
yun-zuoyi
yunhao.wang 6 years ago
parent b8a7bde452
commit 733d41578c

@ -24,6 +24,20 @@ public interface ISysToolService {
SysTool insertSysTool(SysTool tool);
/**
*
* @param tool
*/
@ApiOperation(value = "保存硬件信息")
SysTool saveSysTool(SysTool tool);
/**
*
* @param tool
*/
@ApiOperation(value = "保存硬件信息")
SysTool insertTestSysTool(SysTool tool,Boolean autoFill);
/**
*
* @param tool
*/

@ -4,17 +4,22 @@ import cn.estsh.i3plus.core.api.iservice.base.ISystemInitService;
import cn.estsh.i3plus.core.api.iservice.base.ISystemLoginService;
import cn.estsh.i3plus.core.api.iservice.busi.*;
import cn.estsh.i3plus.platform.common.tool.ServletRequestTool;
import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.tool.TimeTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseConstWords;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysDictionary;
import cn.estsh.i3plus.pojo.platform.bean.SysFile;
import cn.estsh.i3plus.pojo.platform.bean.SysLogUserLogin;
import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.fastdfs.FastDFSClient;
import cn.estsh.impp.framework.boot.util.ImppRedis;
import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
@ -24,10 +29,7 @@ import org.apache.shiro.authc.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
@ -63,6 +65,15 @@ public class WhiteController extends CoreBaseController {
@Autowired
private ISystemInitService systemInitService;
@Autowired
private ISysFileService sysFileService;
@Autowired
private ISysDictionaryService dictionaryService;
@Autowired
private FastDFSClient dfsClient;
@Resource(name="redisRes")
private ImppRedis redisRes;
@ -215,4 +226,61 @@ public class WhiteController extends CoreBaseController {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@PostMapping(value = "/sys-file/insert")
@ApiOperation(value = "新增文件资源", notes = "新增文件资源")
public ResultBean insertSysFile(@RequestBody SysFile sysFile){
try {
// 条件验证
ValidatorBean.beginValid(sysFile)
.notNull("dfsFileName", sysFile.getDfsFileName())
.notNull("dfsGroupName", sysFile.getDfsGroupName())
.notNull("fileSoftType", sysFile.getFileSoftType())
.notNull("fileOriginalName", sysFile.getFileOriginalName());
// 文件类型验证
SysDictionary dictionary = dictionaryService.getSysDictionaryByParentCodeAndCode(BaseConstWords.DICTIONARY_FILE_TYPE,
StringTool.getStringFileSuffix(sysFile.getFileOriginalName(), false));
if(dictionary == null){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_FORMAT.getCode())
.setErrorDetail("文件格式不支持")
.setErrorSolution("请到字典管理中添加文件类型")
.build();
}
// 初始化数据
sysFile.setFileTypeId(dictionary.getId());
sysFile.setFileTypeName(dictionary.getName());
sysFile = sysFileService.insertSysFile(sysFile);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysFile);
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
/**
*
* @param fileCode
* @return
*/
@GetMapping("/sys-file/get-file-code/{code}")
@ApiOperation(value = "根据文件代码查询文件信息")
public ResultBean getSysFileByFileCode(@PathVariable("code") String fileCode) {
try {
// 条件验证
ValidatorBean.checkNotNull(fileCode, "文件代码不能为空");
SysFile sysFile = sysFileService.getSysFileByFileCode(fileCode);
return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysFile);
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -12,6 +12,7 @@ import cn.estsh.i3plus.pojo.platform.repository.SysToolRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysToolTypeRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
@ -46,18 +47,35 @@ public class SysToolService implements ISysToolService {
@ApiOperation(value = "新增硬件信息")
public SysTool insertSysTool(SysTool tool) {
// 查询硬件类型名称
//todo 压测关闭校验提高处理速度
// LOGGER.info("硬件类型 TOOL_TYPE :{}", tool);
// SysToolType toolType = toolTypeRDao.getById(tool.getToolTypeId());
// ValidatorBean.checkNotNull(toolType);
//
// tool.setToolTypeNameRdd(toolType.getName());
//
// LOGGER.info("硬件 TOOL tool:{}",tool);
LOGGER.info("硬件类型 TOOL_TYPE :{}", tool);
SysToolType toolType = toolTypeRDao.getById(tool.getToolTypeId());
ValidatorBean.checkNotNull(toolType);
tool.setToolTypeNameRdd(toolType.getName());
LOGGER.info("硬件 TOOL tool:{}",tool);
return toolRDao.insert(tool);
}
@Override
public SysTool saveSysTool(SysTool tool) {
return toolRDao.save(tool);
}
@Override
public SysTool insertTestSysTool(SysTool tool, Boolean autoFill) {
SysTool temp;
if(autoFill == null){
temp = toolRDao.insert(tool);
} else if (autoFill) {
temp = toolRDao.insert(tool, autoFill);
} else {
temp = toolRDao.insert(tool, autoFill);
}
return temp;
}
@Override
@ApiOperation(value = "删除硬件信息",notes = "根据 ID 删除硬件信息")
public int deleteSysToolById(Long id) {
LOGGER.info("硬件 TOOL id:{}",id);

@ -0,0 +1,54 @@
package test.cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysToolService;
import cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase;
import cn.estsh.i3plus.pojo.platform.bean.SysTool;
import cn.estsh.i3plus.pojo.platform.repository.SysToolRepository;
import com.alibaba.fastjson.JSON;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.annotation.Transient;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-04-04 16:53
* @Modify:
**/
public class TestAutoFillData extends TestBase {
@Autowired
private ISysToolService sysToolService;
@Autowired
private SysToolRepository sysToolRepository;
@Test
@Transient
public void testAutoFillDataInsert(){
SysTool sysTool = new SysTool();
// 自动注入默认值
System.out.println(JSON.toJSONString(sysTool));
sysTool = sysToolService.insertTestSysTool(sysTool, true);
System.out.println(JSON.toJSONString(sysTool));
// 不注入默认值
sysTool = new SysTool();
System.out.println(JSON.toJSONString(sysTool));
sysTool = sysToolService.insertTestSysTool(sysTool, false);
System.out.println(JSON.toJSONString(sysTool));
// 默认insert不显示设置
sysTool = new SysTool();
System.out.println(JSON.toJSONString(sysTool));
sysTool = sysToolService.insertTestSysTool(sysTool,null);
System.out.println(JSON.toJSONString(sysTool));
}
public void testAutoFilDataSave(){
SysTool sysTool = new SysTool();
sysToolService.saveSysTool(sysTool);
}
}

@ -3,23 +3,14 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.platform.common.tool.EncryptTool;
import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.*;
import com.alibaba.fastjson.JSON;
import io.swagger.models.auth.In;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.WorkbookFactory;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.jdom2.Document;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
@ -27,7 +18,7 @@ import java.util.List;
/**
*
*/
public class TestExcelPermission extends TestBase {
public class TestExcelPermission extends cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase {
//public class TestExcelPermission {
public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelPermission.class);

Loading…
Cancel
Save