Merge remote-tracking branch 'remotes/origin/dev' into test

yun-zuoyi
Silliter 6 years ago
commit d3dd40bb86

@ -121,4 +121,10 @@ public interface ISysDictionaryService {
*/ */
@ApiOperation(value = "根据父节点 以及当前节点名称 获取字典信息") @ApiOperation(value = "根据父节点 以及当前节点名称 获取字典信息")
SysDictionary getSysDictionaryByParentCodeAndName(String parentCode,String name); SysDictionary getSysDictionaryByParentCodeAndName(String parentCode,String name);
/**
*
*/
@ApiOperation(value = "根据模块查询顶级字典")
List<SysDictionary> findSysDictionaryByTopBySoftType(Integer softType);
} }

@ -23,20 +23,10 @@ public interface ISysTaskPlanService {
/** /**
* *
* @param sysTaskPlan * @param sysTaskPlan
* @param sysTaskCycle
* @param sysTask
* @return * @return
*/ */
@ApiOperation(value = "新增任务计划",notes = "新增任务计划") @ApiOperation(value = "新增任务计划",notes = "新增任务计划")
SysTaskPlan insertSysTaskPlan(SysTaskPlan sysTaskPlan, SysTaskCycle sysTaskCycle, SysTask sysTask); SysTaskPlan insertSysTaskPlan(SysTaskPlan sysTaskPlan);
/**
*
* @param sysTaskPlan
* @param sysTaskCycle
*/
@ApiOperation(value = "修改任务计划",notes = "修改任务计划")
void updateSysTaskPlan(SysTaskPlan sysTaskPlan, SysTaskCycle sysTaskCycle);
/** /**
* *
@ -79,13 +69,6 @@ public interface ISysTaskPlanService {
ListPager querySysTaskPlanByPager(SysTaskPlan sysTaskPlan, Pager pager); ListPager querySysTaskPlanByPager(SysTaskPlan sysTaskPlan, Pager pager);
/** /**
*
* @param sysTaskPlan
*/
@ApiOperation(value = "立即执行任务计划",notes = "立即执行任务计划")
void executeSysTaskPlan(SysTaskPlan sysTaskPlan);
/**
* *
* @param name * @param name
* @param groupName * @param groupName
@ -107,12 +90,4 @@ public interface ISysTaskPlanService {
*/ */
@ApiOperation(value = "修改任务计划信息",notes = "修改任务计划信息不会更新quartz数据库") @ApiOperation(value = "修改任务计划信息",notes = "修改任务计划信息不会更新quartz数据库")
void updateSysTaskPlan(SysTaskPlan sysTaskPlan); void updateSysTaskPlan(SysTaskPlan sysTaskPlan);
/**
*
* @param ids
*/
@ApiOperation(value = "批量删除任务计划信息",notes = "批量删除任务计划信息")
void deleteSysTaskPlanByIds(Long[] ids);
} }

@ -81,7 +81,6 @@ public class DemoAuthController extends CoreBaseController {
try { try {
SessionUser sUser = AuthUtil.getSessionUser(); SessionUser sUser = AuthUtil.getSessionUser();
LOGGER.info("用户:{}",sUser); LOGGER.info("用户:{}",sUser);
Map<String, String> map = new HashMap<String, String>();
Enumeration headerNames = request.getHeaderNames(); Enumeration headerNames = request.getHeaderNames();
while (headerNames.hasMoreElements()) { while (headerNames.hasMoreElements()) {
String key = (String) headerNames.nextElement(); String key = (String) headerNames.nextElement();

@ -120,7 +120,7 @@ public class DemoCloudController {
@ApiOperation(value="测试arr",notes = "测试arr") @ApiOperation(value="测试arr",notes = "测试arr")
public ResultBean testFeignArr(@RequestBody String[] arr) { public ResultBean testFeignArr(@RequestBody String[] arr) {
LOGGER.info("【impp-core-arr接受数据】{}" ,arr); LOGGER.info("【impp-core-arr接受数据】{}" ,arr);
return ResultBean.success("返回" + arr).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("返回成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(arr);
} }
@PostMapping(value="/test-more-object") @PostMapping(value="/test-more-object")
@ -138,7 +138,6 @@ public class DemoCloudController {
public ResultBean testPostFeignRequestBody(@RequestParam("test") String test,@RequestBody BaseModelBean<SysRole> roleBean) { public ResultBean testPostFeignRequestBody(@RequestParam("test") String test,@RequestBody BaseModelBean<SysRole> roleBean) {
LOGGER.info("PostMapping【param】{}" ,test); LOGGER.info("PostMapping【param】{}" ,test);
Map<String, String> map = new HashMap<String, String>();
Enumeration headerNames = request.getHeaderNames(); Enumeration headerNames = request.getHeaderNames();
while (headerNames.hasMoreElements()) { while (headerNames.hasMoreElements()) {
String key = (String) headerNames.nextElement(); String key = (String) headerNames.nextElement();
@ -153,7 +152,6 @@ public class DemoCloudController {
@GetMapping(value="/test-get-request-body") @GetMapping(value="/test-get-request-body")
@ApiOperation(value="测试request-body") @ApiOperation(value="测试request-body")
public ResultBean testGetFeignRequestBody(@RequestBody BaseModelBean<SysRole> roleBean) { public ResultBean testGetFeignRequestBody(@RequestBody BaseModelBean<SysRole> roleBean) {
Map<String, String> map = new HashMap<String, String>();
Enumeration headerNames = request.getHeaderNames(); Enumeration headerNames = request.getHeaderNames();
while (headerNames.hasMoreElements()) { while (headerNames.hasMoreElements()) {
String key = (String) headerNames.nextElement(); String key = (String) headerNames.nextElement();

@ -261,9 +261,9 @@ public class DemoResourceController extends CoreBaseController {
// System.out.println("1====" + u1.hashCode()); // System.out.println("1====" + u1.hashCode());
// System.out.println("2====" + u2.hashCode()); // System.out.println("2====" + u2.hashCode());
SysUser user = userService.getSysUserById(key); // SysUser user = userService.getSysUserById(key);
// System.out.println("1==="+user); // System.out.println("1==="+user);
SysUserInfo userInfo = userInfoServicer.getSysUserInfoById(key); // SysUserInfo userInfo = userInfoServicer.getSysUserInfoById(key);
// System.out.println("2==="+userInfo); // System.out.println("2==="+userInfo);
return ResultBean.success("操作成功"); return ResultBean.success("操作成功");

@ -0,0 +1,21 @@
package cn.estsh.i3plus.core.apiservice.controller.base;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseConstWords;
import cn.estsh.impp.framework.base.controller.BaseCommonController;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2019-03-20 20:07
* @Modify:
**/
@RestController
@Api(description = "通用功能服务")
@RequestMapping(PlatformConstWords.BASE_URL +"/common")
public class CoreCommonController extends BaseCommonController {
}

@ -53,9 +53,8 @@ public class SysDictionaryController extends CoreBaseController{
try { try {
// 条件验证 // 条件验证
ValidatorBean.beginValid(sysDictionary) ValidatorBean.beginValid(sysDictionary)
.notNull("id",sysDictionary.getId())
.notNull("name",sysDictionary.getName()) .notNull("name",sysDictionary.getName())
.notNull("softType",sysDictionary.getSoftType()) .notNull("dictionarySoftType",sysDictionary.getDictionarySoftType())
.notNull("dictionaryCode",sysDictionary.getDictionaryCode()) .notNull("dictionaryCode",sysDictionary.getDictionaryCode())
.notNull("dictionaryValue",sysDictionary.getDictionaryValue()); .notNull("dictionaryValue",sysDictionary.getDictionaryValue());
@ -81,7 +80,7 @@ public class SysDictionaryController extends CoreBaseController{
// 条件验证 // 条件验证
ValidatorBean.beginValid(sysDictionary) ValidatorBean.beginValid(sysDictionary)
.notNull("name",sysDictionary.getName()) .notNull("name",sysDictionary.getName())
.notNull("softType",sysDictionary.getSoftType()) .notNull("dictionarySoftType",sysDictionary.getDictionarySoftType())
.notNull("dictionaryCode",sysDictionary.getDictionaryCode()) .notNull("dictionaryCode",sysDictionary.getDictionaryCode())
.notNull("dictionaryValue",sysDictionary.getDictionaryValue()); .notNull("dictionaryValue",sysDictionary.getDictionaryValue());
@ -221,7 +220,7 @@ public class SysDictionaryController extends CoreBaseController{
} }
} }
@GetMapping("/find/top") @GetMapping("/find-top")
@ApiOperation(value = "查询顶级字典项",notes = "查询顶级字典项") @ApiOperation(value = "查询顶级字典项",notes = "查询顶级字典项")
public ResultBean findSysDictionaryByTop() { public ResultBean findSysDictionaryByTop() {
try { try {
@ -275,19 +274,20 @@ public class SysDictionaryController extends CoreBaseController{
public ResultBean findSysDictionaryTree(){ public ResultBean findSysDictionaryTree(){
try { try {
// 根据软件类型分组 // 根据软件类型分组
Map group = sysDictionaryService.findSysDictionaryByTop().stream().collect(Collectors.groupingBy(SysDictionary::getSoftType)); Map group = sysDictionaryService.findSysDictionaryByTop().stream().collect(Collectors.groupingBy(SysDictionary::getDictionarySoftType));
List<Map<String,Object>> dictTree = new ArrayList<>(); List<Map<String,Object>> dictTree = new ArrayList<>();
Map child; Map child;
for (CommonEnumUtil.SOFT_TYPE softType :CommonEnumUtil.SOFT_TYPE.values()) { for (CommonEnumUtil.SOFT_TYPE softType :CommonEnumUtil.SOFT_TYPE.values()) {
if(group.containsKey(softType.getValue())){ if(group.containsKey(softType.getValue())){
child = new HashMap(); child = new HashMap();
child.put("id",softType.getCode()); child.put("id",softType.getValue());
child.put("name",softType.getValue()); child.put("name",softType.getCode());
child.put("childList",group.get(softType.getValue())); child.put("childList",group.get(softType.getValue()));
dictTree.add(child); dictTree.add(child);
} }
} }
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(dictTree); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(dictTree);
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
@ -295,4 +295,17 @@ public class SysDictionaryController extends CoreBaseController{
return ImppExceptionBuilder.newInstance().buildExceptionResult(e); return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
} }
} }
@GetMapping("/find-soft-type")
@ApiOperation(value = "根据模块查询顶级字典",notes = "根据模块查询顶级字典")
public ResultBean findSysDictionaryByTopBySoftType(Integer softType){
try {
List<SysDictionary> dictionaryList = sysDictionaryService.findSysDictionaryByTopBySoftType(softType);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultList(dictionaryList);
}catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
} }

@ -1,17 +1,22 @@
package cn.estsh.i3plus.core.apiservice.controller.busi; package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskService; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskService;
import cn.estsh.i3plus.icloud.wms.sdk.IWmsCommonCloud;
import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseResultBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysTask; import cn.estsh.i3plus.pojo.platform.bean.SysTask;
import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.base.service.CommonServiceImpl;
import cn.estsh.impp.framework.base.service.ICommonService;
import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.quartz.IQuartzJobService;
import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean; import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@ -40,6 +45,24 @@ public class SysTaskController extends CoreBaseController {
@Autowired @Autowired
private ISysTaskService sysTaskService; private ISysTaskService sysTaskService;
@Autowired
private CommonServiceImpl coreCommonService;
@Autowired
private IWmsCommonCloud wmsCommonCloud;
private ICommonService getCommonService(int softType){
ICommonService commonService = coreCommonService;
if(softType == CommonEnumUtil.SOFT_TYPE.CORE.getValue()){
//平台定时任务
commonService = coreCommonService;
}else if(softType == CommonEnumUtil.SOFT_TYPE.WMS.getValue()){
commonService = wmsCommonCloud;
}
return commonService;
}
@PostMapping(value = "/insert") @PostMapping(value = "/insert")
@ApiOperation(value = "添加任务", notes = "添加任务") @ApiOperation(value = "添加任务", notes = "添加任务")
public ResultBean insertSysTask(SysTask sysTask) { public ResultBean insertSysTask(SysTask sysTask) {
@ -47,16 +70,23 @@ public class SysTaskController extends CoreBaseController {
// 数据校验 // 数据校验
ValidatorBean.beginValid(sysTask) ValidatorBean.beginValid(sysTask)
.notNull("name", sysTask.getName()) .notNull("name", sysTask.getName())
.notNull("taskSoftType", sysTask.getTaskSoftType())
.notNull("taskPackage", sysTask.getTaskPackage()) .notNull("taskPackage", sysTask.getTaskPackage())
.notNull("taskClass", sysTask.getTaskClass()); .notNull("taskClass", sysTask.getTaskClass());
// 类校验 // 类校验
Class.forName(sysTask.getTaskPackage() + "." + sysTask.getTaskClass()); BaseResultBean resultBean = getCommonService(sysTask.getTaskSoftType()).isExistClass(sysTask.getTaskPackage(), sysTask.getTaskClass());
if(!resultBean.isSuccess()){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("任务类不存在")
.setErrorSolution("请重新输入")
.build();
}
sysTaskService.insertSysTask(sysTask); sysTaskService.insertSysTask(sysTask);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysTask); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysTask);
} catch (ClassNotFoundException e) {
return ResultBean.fail("任务类不存在:" + sysTask.getTaskPackage() + "." + sysTask.getTaskClass());
} catch (ImppBusiException busExcep) { } catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
} catch (Exception e) { } catch (Exception e) {
@ -71,6 +101,7 @@ public class SysTaskController extends CoreBaseController {
// 数据校验 // 数据校验
ValidatorBean.beginValid(sysTask) ValidatorBean.beginValid(sysTask)
.notNull("name", sysTask.getName()) .notNull("name", sysTask.getName())
.notNull("taskSoftType", sysTask.getTaskSoftType())
.notNull("taskPackage", sysTask.getTaskPackage()) .notNull("taskPackage", sysTask.getTaskPackage())
.notNull("taskClass", sysTask.getTaskClass()); .notNull("taskClass", sysTask.getTaskClass());

@ -2,6 +2,8 @@ package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskCycleService; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskCycleService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskService;
import cn.estsh.i3plus.icloud.wms.sdk.IWmsScheduleJobCloud;
import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.bean.ListPager;
@ -9,12 +11,15 @@ import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysRefTaskCyclePlan; import cn.estsh.i3plus.pojo.platform.bean.SysRefTaskCyclePlan;
import cn.estsh.i3plus.pojo.platform.bean.SysTask;
import cn.estsh.i3plus.pojo.platform.bean.SysTaskCycle; import cn.estsh.i3plus.pojo.platform.bean.SysTaskCycle;
import cn.estsh.i3plus.pojo.platform.bean.SysTaskPlan; import cn.estsh.i3plus.pojo.platform.bean.SysTaskPlan;
import cn.estsh.impp.framework.base.controller.CoreBaseController; import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.quartz.IQuartzJobService;
import cn.estsh.impp.framework.boot.quartz.ScheduleTool;
import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean; import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@ -46,6 +51,33 @@ public class SysTaskCycleController extends CoreBaseController{
@Autowired @Autowired
private ISysTaskPlanService sysTaskPlanService; private ISysTaskPlanService sysTaskPlanService;
@Autowired
private ISysTaskService sysTaskService;
/************ 微服定时任务 *********/
@Autowired
private ScheduleTool scheduleTool;
@Autowired
private IWmsScheduleJobCloud wmsScheduleJobCloud;
/**
*
* @param source CommonEnumUtil.SOFT_TYPE
* @return
*/
private IQuartzJobService getJobService(int source){
IQuartzJobService quartzJobService = scheduleTool;
if(source == CommonEnumUtil.SOFT_TYPE.CORE.getValue()){
//平台定时任务
quartzJobService = scheduleTool;
}else if(source == CommonEnumUtil.SOFT_TYPE.WMS.getValue()){
quartzJobService = wmsScheduleJobCloud;
}
return quartzJobService;
}
@PostMapping(value = "/insert") @PostMapping(value = "/insert")
@ApiOperation(value = "新增任务周期", notes = "任务周期") @ApiOperation(value = "新增任务周期", notes = "任务周期")
public ResultBean insertSysTaskCycle(SysTaskCycle sysTaskCycle) { public ResultBean insertSysTaskCycle(SysTaskCycle sysTaskCycle) {
@ -53,8 +85,7 @@ public class SysTaskCycleController extends CoreBaseController{
// 数据校验 // 数据校验
ValidatorBean.beginValid(sysTaskCycle) ValidatorBean.beginValid(sysTaskCycle)
.notNull("name", sysTaskCycle.getName()) .notNull("name", sysTaskCycle.getName())
.notNull("taskCycleExps", sysTaskCycle.getTaskCycleExps()) .notNull("taskCycleExps", sysTaskCycle.getTaskCycleExps());
.notNull("taskCycleStartDatetime",sysTaskCycle.getTaskCycleStartDatetime());
sysTaskCycleService.insertSysTaskCycle(sysTaskCycle); sysTaskCycleService.insertSysTaskCycle(sysTaskCycle);
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
@ -80,16 +111,20 @@ public class SysTaskCycleController extends CoreBaseController{
// 查询关联任务计划信息,并进行修改 // 查询关联任务计划信息,并进行修改
List<SysRefTaskCyclePlan> taskCyclePlans = sysTaskCycleService.findRefTaskCyclePlanByCycleId(sysTaskCycle.getId()); List<SysRefTaskCyclePlan> taskCyclePlans = sysTaskCycleService.findRefTaskCyclePlanByCycleId(sysTaskCycle.getId());
SysTaskPlan sysTaskPlan; SysTaskPlan sysTaskPlan;
SysTask sysTask;
for (SysRefTaskCyclePlan item: taskCyclePlans) { for (SysRefTaskCyclePlan item: taskCyclePlans) {
sysTaskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(item.getTaskPlanName(),item.getTaskPlanGroupName()); sysTaskPlan = sysTaskPlanService.getSysTaskPlanByNameAndGroup(item.getTaskPlanName(),item.getTaskPlanGroupName());
sysTask = sysTaskService.getSysTaskById(sysTaskPlan.getTaskId());
sysTaskPlan.setTaskCycleNameRdd(sysTaskCycle.getName()); sysTaskPlan.setTaskCycleNameRdd(sysTaskCycle.getName());
sysTaskPlan.setTaskCycleExpsRdd(sysTaskCycle.getTaskCycleExps()); sysTaskPlan.setTaskCycleExpsRdd(sysTaskCycle.getTaskCycleExps());
sysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskCycle.getTaskCycleStartDatetime()); sysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskCycle.getTaskCycleStartDatetime());
sysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskCycle.getTaskCycleEndDatetime()); sysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskCycle.getTaskCycleEndDatetime());
sysTaskPlanService.updateSysTaskPlan(sysTaskPlan,sysTaskCycle); // 更新关联模块的定时任务
getJobService(sysTaskPlan.getTaskSoftTypeRdd()).editTask(sysTask.getTaskPackage(),sysTask.getTaskClass(),sysTaskPlan.getName()
,sysTaskPlan.getGroupName(),sysTaskCycle.getTaskCycleExps(),sysTaskPlan.getTaskPlanDescription());
} }
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);

@ -3,8 +3,9 @@ package cn.estsh.i3plus.core.apiservice.controller.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskCycleService; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskCycleService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskPlanService;
import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskService; import cn.estsh.i3plus.core.api.iservice.busi.ISysTaskService;
import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.icloud.wms.sdk.IWmsScheduleJobCloud;
import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseResultBean;
import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
@ -16,6 +17,9 @@ import cn.estsh.impp.framework.base.controller.CoreBaseController;
import cn.estsh.impp.framework.boot.auth.AuthUtil; import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppBusiException;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.quartz.IQuartzJobService;
import cn.estsh.impp.framework.boot.quartz.ScheduleTool;
import cn.estsh.impp.framework.boot.util.ResultBean; import cn.estsh.impp.framework.boot.util.ResultBean;
import cn.estsh.impp.framework.boot.util.ValidatorBean; import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@ -50,6 +54,30 @@ public class SysTaskPlanController extends CoreBaseController{
@Autowired @Autowired
private ISysTaskService sysTaskService; private ISysTaskService sysTaskService;
/************ 微服定时任务 *********/
@Autowired
private ScheduleTool scheduleTool;
@Autowired
private IWmsScheduleJobCloud wmsScheduleJobCloud;
/**
*
* @param source CommonEnumUtil.SOFT_TYPE
* @return
*/
private IQuartzJobService getJobService(int source){
IQuartzJobService quartzJobService = scheduleTool;
if(source == CommonEnumUtil.SOFT_TYPE.CORE.getValue()){
//平台定时任务
quartzJobService = scheduleTool;
}else if(source == CommonEnumUtil.SOFT_TYPE.WMS.getValue()){
quartzJobService = wmsScheduleJobCloud;
}
return quartzJobService;
}
@PostMapping(value = "/insert") @PostMapping(value = "/insert")
@ApiOperation(value = "新增任务计划", notes = "任务计划") @ApiOperation(value = "新增任务计划", notes = "任务计划")
public ResultBean insertSysTaskTime(SysTaskPlan sysTaskPlan, Boolean isExecute) { public ResultBean insertSysTaskTime(SysTaskPlan sysTaskPlan, Boolean isExecute) {
@ -69,20 +97,50 @@ public class SysTaskPlanController extends CoreBaseController{
ValidatorBean.checkNotNull(sysTask,"任务不存在"); ValidatorBean.checkNotNull(sysTask,"任务不存在");
// 设置冗余信息 // 设置冗余信息
sysTaskPlan.setTaskPlanExecNum(0);
sysTaskPlan.setTaskNameRdd(sysTask.getName()); sysTaskPlan.setTaskNameRdd(sysTask.getName());
sysTaskPlan.setTaskSoftTypeRdd(sysTask.getTaskSoftType());
sysTaskPlan.setTaskCycleNameRdd(sysTaskCycle.getName()); sysTaskPlan.setTaskCycleNameRdd(sysTaskCycle.getName());
sysTaskPlan.setTaskCycleExpsRdd(sysTaskCycle.getTaskCycleExps()); sysTaskPlan.setTaskCycleExpsRdd(sysTaskCycle.getTaskCycleExps());
sysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskCycle.getTaskCycleStartDatetime()); sysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskCycle.getTaskCycleStartDatetime());
sysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskCycle.getTaskCycleEndDatetime()); sysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskCycle.getTaskCycleEndDatetime());
sysTaskPlan.setTaskPlanExecNum(0);
sysTaskPlan.setTaskPlanStatus(CommonEnumUtil.DATA_STATUS.ENABLE.getValue()); sysTaskPlan.setTaskPlanStatus(CommonEnumUtil.DATA_STATUS.ENABLE.getValue());
sysTaskPlan = sysTaskPlanService.insertSysTaskPlan(sysTaskPlan,sysTaskCycle,sysTask); // 唯一检查
BaseResultBean baseResultBean = getJobService(sysTaskPlan.getTaskSoftTypeRdd()).checkJobExists(sysTaskPlan.getName(),sysTaskPlan.getGroupName());
if(baseResultBean.isSuccess()){
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION_DATA_ERROR.getCode())
.setErrorDetail("定时任务已存在")
.build();
}
// 添加至对应模块调度器中
baseResultBean = getJobService(sysTaskPlan.getTaskSoftTypeRdd()).addTask(sysTask.getTaskPackage(),
sysTask.getTaskClass(),sysTaskPlan.getName(),sysTaskPlan.getGroupName(),sysTaskCycle.getTaskCycleExps(),
sysTaskPlan.getTaskPlanDescription());
if (!baseResultBean.isSuccess()) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION_DATA_ERROR.getCode())
.setErrorDetail("定时任务添加失败")
.build();
}
sysTaskPlan = sysTaskPlanService.insertSysTaskPlan(sysTaskPlan);
// 立即执行 // 立即执行
if(isExecute != null && isExecute){ if(isExecute != null && isExecute){
sysTaskPlanService.executeSysTaskPlan(sysTaskPlan); baseResultBean = getJobService(sysTaskPlan.getTaskSoftTypeRdd()).executeJob(sysTaskPlan.getName(),sysTaskPlan.getGroupName());
if (!baseResultBean.isSuccess()) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.BUSINESS_EXCEPTION_DATA_ERROR.getCode())
.setErrorDetail("定时任务执行失败")
.build();
}
} }
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysTaskPlan); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysTaskPlan);
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
@ -110,14 +168,20 @@ public class SysTaskPlanController extends CoreBaseController{
ValidatorBean.checkNotNull(sysTask,"任务不存在"); ValidatorBean.checkNotNull(sysTask,"任务不存在");
sysTaskPlan.setTaskNameRdd(sysTask.getName()); sysTaskPlan.setTaskNameRdd(sysTask.getName());
sysTaskPlan.setTaskSoftTypeRdd(sysTask.getTaskSoftType());
sysTaskPlan.setTaskCycleNameRdd(sysTaskCycle.getName()); sysTaskPlan.setTaskCycleNameRdd(sysTaskCycle.getName());
sysTaskPlan.setTaskCycleExpsRdd(sysTaskCycle.getTaskCycleExps()); sysTaskPlan.setTaskCycleExpsRdd(sysTaskCycle.getTaskCycleExps());
sysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskCycle.getTaskCycleStartDatetime()); sysTaskPlan.setTaskCycleStartDateTimeRdd(sysTaskCycle.getTaskCycleStartDatetime());
sysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskCycle.getTaskCycleEndDatetime()); sysTaskPlan.setTaskCycleEndDateTimeRdd(sysTaskCycle.getTaskCycleEndDatetime());
sysTaskPlanService.updateSysTaskPlan(sysTaskPlan,sysTaskCycle); sysTaskPlanService.updateSysTaskPlan(sysTaskPlan);
// 修改对应模块中的定时任务
getJobService(sysTaskPlan.getTaskSoftTypeRdd()).editTask(sysTask.getTaskPackage(),sysTask.getTaskClass(),sysTaskPlan.getName()
,sysTaskPlan.getGroupName(),sysTaskCycle.getTaskCycleExps(),sysTaskPlan.getTaskPlanDescription());
if(isExecute != null && isExecute){ if(isExecute != null && isExecute){
sysTaskPlanService.executeSysTaskPlan(sysTaskPlan); getJobService(sysTaskPlan.getTaskSoftTypeRdd()).executeJob(sysTaskPlan.getName(),sysTaskPlan.getGroupName());
} }
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysTaskPlan); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysTaskPlan);
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
@ -133,8 +197,12 @@ public class SysTaskPlanController extends CoreBaseController{
try { try {
// 数据校验 // 数据校验
ValidatorBean.checkNotNull(id, "任务计划id 不能为空"); ValidatorBean.checkNotNull(id, "任务计划id 不能为空");
SysTaskPlan sysTaskPlan = sysTaskPlanService.getSysTaskPlanById(Long.parseLong(id));
ValidatorBean.checkNotNull(sysTaskPlan, "定时任务计划不存在");
sysTaskPlanService.deleteSysTaskPlanById(Long.parseLong(id)); sysTaskPlanService.deleteSysTaskPlanById(Long.parseLong(id));
getJobService(sysTaskPlan.getTaskSoftTypeRdd()).deleteTask(sysTaskPlan.getName(),sysTaskPlan.getGroupName());
return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
@ -163,12 +231,10 @@ public class SysTaskPlanController extends CoreBaseController{
// 数据校验 // 数据校验
ValidatorBean.checkNotNull(id, "任务计划id 不能为空"); ValidatorBean.checkNotNull(id, "任务计划id 不能为空");
SysTaskPlan taskTime = sysTaskPlanService.getSysTaskPlanById(Long.parseLong(id)); SysTaskPlan sysTaskPlan = sysTaskPlanService.getSysTaskPlanById(Long.parseLong(id));
if (taskTime != null) { ValidatorBean.checkNotNull(sysTaskPlan, "定时任务计划不存在");
return ResultBean.success("操作成功").setResultObject(taskTime).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}else { return ResultBean.success("操作成功").setResultObject(sysTaskPlan).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
return ResultBean.fail("任务计划不存在").setCode(ResourceEnumUtil.MESSAGE.EMPTY.getCode());
}
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
}catch(Exception e){ }catch(Exception e){
@ -184,7 +250,17 @@ public class SysTaskPlanController extends CoreBaseController{
ValidatorBean.checkNotNull(idStr, "id 不能为空"); ValidatorBean.checkNotNull(idStr, "id 不能为空");
ValidatorBean.checkNotZero(status, "状态不能为空"); ValidatorBean.checkNotZero(status, "状态不能为空");
SysTaskPlan sysTaskPlan = sysTaskPlanService.getSysTaskPlanById(Long.parseLong(idStr));
ValidatorBean.checkNotNull(sysTaskPlan, "定时任务计划不存在");
sysTaskPlanService.updateSysTaskPlanStatus(Long.parseLong(idStr),status,AuthUtil.getSessionUser()); sysTaskPlanService.updateSysTaskPlanStatus(Long.parseLong(idStr),status,AuthUtil.getSessionUser());
// 停止或启用对应模块中的定时任务
if(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == status.intValue()){
getJobService(sysTaskPlan.getTaskSoftTypeRdd()).pauseJob(sysTaskPlan.getName(),sysTaskPlan.getGroupName());
}else if(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() == status.intValue()){
getJobService(sysTaskPlan.getTaskSoftTypeRdd()).resumeJob(sysTaskPlan.getName(),sysTaskPlan.getGroupName());
}
return new ResultBean(true); return new ResultBean(true);
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
@ -214,24 +290,14 @@ public class SysTaskPlanController extends CoreBaseController{
ValidatorBean.checkNotNull(id, "任务计划id 不能为空"); ValidatorBean.checkNotNull(id, "任务计划id 不能为空");
SysTaskPlan sysTaskPlan = sysTaskPlanService.getSysTaskPlanById(Long.parseLong(id)); SysTaskPlan sysTaskPlan = sysTaskPlanService.getSysTaskPlanById(Long.parseLong(id));
sysTaskPlanService.executeSysTaskPlan(sysTaskPlan); // 执行定时任务
BaseResultBean baseResultBean = getJobService(sysTaskPlan.getTaskSoftTypeRdd()).executeJob(sysTaskPlan.getName(),sysTaskPlan.getGroupName());
if(baseResultBean.isSuccess()){
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ }else{
return ResultBean.fail(busExcep); return ResultBean.fail("操作失败").setErrorMsg(baseResultBean.errorMsg);
}catch(Exception e){
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
} }
@DeleteMapping("/batch-delete")
@ApiOperation(value = "根据id批量删除任务计划",notes = "根据id批量删除任务计划")
public ResultBean deleteSysTaskPlanByIds(String[] idsStr) {
try {
// 数据校验
ValidatorBean.checkNotNull(idsStr, "任务计划id 不能为空");
sysTaskPlanService.deleteSysTaskPlanByIds(StringTool.getArrayLong(idsStr));
return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());
}catch(ImppBusiException busExcep){ }catch(ImppBusiException busExcep){
return ResultBean.fail(busExcep); return ResultBean.fail(busExcep);
}catch(Exception e){ }catch(Exception e){

@ -164,8 +164,7 @@ public class SysUserInfoController extends CoreBaseController{
ValidatorBean.checkIsNumber(id, "id 不能为空"); ValidatorBean.checkIsNumber(id, "id 不能为空");
SysUserInfo userInfo = sysUserInfoService.getSysUserInfoById(Long.parseLong(id)); SysUserInfo userInfo = sysUserInfoService.getSysUserInfoById(Long.parseLong(id));
ValidatorBean.beginValid(userInfo) ValidatorBean.beginValid(userInfo).notNull("id",userInfo.getId());
.notNull("id",userInfo.getId());
if(userInfo != null){ if(userInfo != null){
return ResultBean.success("操作成功").setResultObject(userInfo).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); return ResultBean.success("操作成功").setResultObject(userInfo).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode());

@ -34,7 +34,7 @@ public class TestDaoImpl implements ITestDao {
@Override @Override
public void insertBatch(int num, int waitTime) { public void insertBatch(int num, int waitTime) {
long t1 = System.currentTimeMillis(); long t1 = System.currentTimeMillis();
SysTool sysTool = new SysTool(); SysTool sysTool;
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
sb.append("insert into sys_tool (id,name,tool_type_name_rdd,tool_type_id,tool_ip,tool_port,tool_description) values "); sb.append("insert into sys_tool (id,name,tool_type_name_rdd,tool_type_id,tool_ip,tool_port,tool_description) values ");
SnowflakeIdMaker snf = new SnowflakeIdMaker(); SnowflakeIdMaker snf = new SnowflakeIdMaker();

@ -32,7 +32,7 @@ public class ReportService implements IReportService {
public void checkReportHQL(String hql) { public void checkReportHQL(String hql) {
LOGGER.info("报表 HQL 注入检查:{}",hql); LOGGER.info("报表 HQL 注入检查:{}",hql);
// HQL 非法入侵检查 // HQL 非法入侵检查
hql = HqlPack.getSafeParam(hql); HqlPack.getSafeParam(hql);
} }
@Override @Override

@ -10,7 +10,6 @@ import cn.estsh.i3plus.pojo.platform.bean.SysLocaleLanguage;
import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource; import cn.estsh.i3plus.pojo.platform.bean.SysLocaleResource;
import cn.estsh.i3plus.pojo.platform.repository.SysConfigRepository; import cn.estsh.i3plus.pojo.platform.repository.SysConfigRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository; import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysLocaleLanguageRepository;
import cn.estsh.impp.framework.boot.util.ImppRedis; import cn.estsh.impp.framework.boot.util.ImppRedis;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger; import org.slf4j.Logger;

@ -2,13 +2,11 @@ package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
import cn.estsh.i3plus.core.api.iservice.busi.ISysDictionaryService; import cn.estsh.i3plus.core.api.iservice.busi.ISysDictionaryService;
import cn.estsh.i3plus.platform.common.tool.StringTool; import cn.estsh.i3plus.platform.common.tool.StringTool;
import cn.estsh.i3plus.platform.common.util.CommonConstWords;
import cn.estsh.i3plus.pojo.base.bean.BaseConstWords; import cn.estsh.i3plus.pojo.base.bean.BaseConstWords;
import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysDictionary; import cn.estsh.i3plus.pojo.platform.bean.SysDictionary;
import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository; import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository;
import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack;
@ -40,10 +38,10 @@ public class SysDictionaryService implements ISysDictionaryService {
@Override @Override
@ApiOperation(value = "添加字典") @ApiOperation(value = "添加字典")
public void insertSysDictionary(SysDictionary sysDictionary) { public void insertSysDictionary(SysDictionary sysDictionary) {
long repeatCodeCount = sysDictionaryRDao.findByPropertyCount(new String[]{"dictionaryCode", "softType"}, long repeatCodeCount = sysDictionaryRDao.findByPropertyCount(new String[]{"dictionaryCode", "dictionarySoftType"},
new Object[]{sysDictionary.getDictionaryCode(), sysDictionary.getSoftType()}); new Object[]{sysDictionary.getDictionaryCode(), sysDictionary.getDictionarySoftType()});
long repeatValueCount = sysDictionaryRDao.findByPropertyCount(new String[]{"parentId", "dictionaryValue", "softType"}, long repeatValueCount = sysDictionaryRDao.findByPropertyCount(new String[]{"parentId", "dictionaryValue", "dictionarySoftType"},
new Object[]{sysDictionary.getParentId(), sysDictionary.getDictionaryValue(), sysDictionary.getSoftType()}); new Object[]{sysDictionary.getParentId(), sysDictionary.getDictionaryValue(), sysDictionary.getDictionarySoftType()});
if (repeatCodeCount > 0 || repeatValueCount > 0) { if (repeatCodeCount > 0 || repeatValueCount > 0) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
@ -96,6 +94,7 @@ public class SysDictionaryService implements ISysDictionaryService {
// 数据反填 // 数据反填
SysDictionary newSysDict = sysDictionaryRDao.getById(sysDictionary.getId()); SysDictionary newSysDict = sysDictionaryRDao.getById(sysDictionary.getId());
newSysDict.setName(sysDictionary.getName()); newSysDict.setName(sysDictionary.getName());
newSysDict.setDictionarySoftType(sysDictionary.getDictionarySoftType());
newSysDict.setDictionaryCode(sysDictionary.getDictionaryCode()); newSysDict.setDictionaryCode(sysDictionary.getDictionaryCode());
newSysDict.setParentId(sysDictionary.getParentId()); newSysDict.setParentId(sysDictionary.getParentId());
newSysDict.setDictionarySort(sysDictionary.getDictionarySort()); newSysDict.setDictionarySort(sysDictionary.getDictionarySort());
@ -167,7 +166,7 @@ public class SysDictionaryService implements ISysDictionaryService {
.build(); .build();
} }
LOGGER.info("字典 SYS_DICTIONARY ids:{}", ids.toString()); LOGGER.info("字典 SYS_DICTIONARY ids:{}", ids);
sysDictionaryRDao.deleteByIds(ids); sysDictionaryRDao.deleteByIds(ids);
} }
@ -220,4 +219,11 @@ public class SysDictionaryService implements ISysDictionaryService {
return sysDictionaryRDao.getByProperty(new String[]{"parentCodeRdd", "name"}, return sysDictionaryRDao.getByProperty(new String[]{"parentCodeRdd", "name"},
new Object[]{parentCode, name}); new Object[]{parentCode, name});
} }
@Override
@ApiOperation(value = "根据模块查询顶级字典")
public List<SysDictionary> findSysDictionaryByTopBySoftType(Integer softType) {
return sysDictionaryRDao.findByProperty(new String[]{"parentId", "dictionarySoftType"},
new Object[]{(long) CommonEnumUtil.PARENT.DEFAULT.getValue(), softType});
}
} }

@ -96,7 +96,7 @@ public class SysFileServiceImpl implements ISysFileService {
@Override @Override
public void deleteSysFileByIds(Long[] ids) { public void deleteSysFileByIds(Long[] ids) {
LOGGER.info("文件资源 SYS_FILE ids:{}", ids.toString()); LOGGER.info("文件资源 SYS_FILE ids:{}", ids);
sysFileRDao.deleteByIds(ids); sysFileRDao.deleteByIds(ids);
} }

@ -116,7 +116,7 @@ public class SysMessageService implements ISysMessageService {
@Override @Override
@ApiOperation(value = "批量删除消息") @ApiOperation(value = "批量删除消息")
public void deleteSysMessageByIds(Long[] ids) { public void deleteSysMessageByIds(Long[] ids) {
LOGGER.info("消息 SYS_MESSAGE ids:{}", ids.toString()); LOGGER.info("消息 SYS_MESSAGE ids:{}", ids);
sysMessageRDao.deleteByIds(ids); sysMessageRDao.deleteByIds(ids);
} }

@ -5,7 +5,9 @@ import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.common.PagerHelper; import cn.estsh.i3plus.pojo.base.common.PagerHelper;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.*; import cn.estsh.i3plus.pojo.platform.bean.SessionUser;
import cn.estsh.i3plus.pojo.platform.bean.SysRefTaskCyclePlan;
import cn.estsh.i3plus.pojo.platform.bean.SysTaskPlan;
import cn.estsh.i3plus.pojo.platform.platbean.SysLogTaskTime; import cn.estsh.i3plus.pojo.platform.platbean.SysLogTaskTime;
import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogTaskTimeRepository; import cn.estsh.i3plus.pojo.platform.platrepositorymongo.SysLogTaskTimeRepository;
import cn.estsh.i3plus.pojo.platform.repository.SysRefTaskCyclePlanRepository; import cn.estsh.i3plus.pojo.platform.repository.SysRefTaskCyclePlanRepository;
@ -15,16 +17,12 @@ import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import cn.estsh.impp.framework.boot.util.ValidatorBean; import cn.estsh.impp.framework.boot.util.ValidatorBean;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.quartz.*;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List; import java.util.List;
/** /**
@ -48,19 +46,11 @@ public class SysTaskPlanService implements ISysTaskPlanService {
@Autowired @Autowired
private SysLogTaskTimeRepository sysLogTaskTimeRDao; private SysLogTaskTimeRepository sysLogTaskTimeRDao;
@Autowired
private Scheduler scheduler;
@Override @Override
@ApiOperation(value = "新增任务计划", notes = "新增任务计划") @ApiOperation(value = "新增任务计划", notes = "新增任务计划")
public SysTaskPlan insertSysTaskPlan(SysTaskPlan sysTaskPlan, SysTaskCycle sysTaskCycle, SysTask sysTask) { public SysTaskPlan insertSysTaskPlan(SysTaskPlan sysTaskPlan) {
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
// 唯一校验 // 唯一校验
JobKey jobKey = JobKey.jobKey(sysTaskPlan.getName(), sysTaskPlan.getGroupName()); if (sysTaskPlanRDao.isExitByProperty(new String[]{"name", "groupName"}, new String[]{sysTaskPlan.getName(), sysTaskPlan.getGroupName()})) {
TriggerKey triggerKey = TriggerKey.triggerKey(sysTaskPlan.getName(), sysTaskPlan.getGroupName());
if (sysTaskPlanRDao.isExitByProperty(new String[]{"name", "groupName"}, new String[]{sysTaskPlan.getName(), sysTaskPlan.getGroupName()})
|| scheduler.checkExists(jobKey) || scheduler.checkExists(triggerKey)) {
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode()) .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_EXIT.getCode())
@ -72,70 +62,19 @@ public class SysTaskPlanService implements ISysTaskPlanService {
sysTaskPlan = sysTaskPlanRDao.insert(sysTaskPlan); sysTaskPlan = sysTaskPlanRDao.insert(sysTaskPlan);
SysRefTaskCyclePlan refTaskCyclePlan = new SysRefTaskCyclePlan(); SysRefTaskCyclePlan refTaskCyclePlan = new SysRefTaskCyclePlan();
refTaskCyclePlan.setTaskCycleId(sysTaskCycle.getId()); refTaskCyclePlan.setTaskCycleId(sysTaskPlan.getTaskCycleId());
refTaskCyclePlan.setTaskPlanId(sysTaskPlan.getId()); refTaskCyclePlan.setTaskPlanId(sysTaskPlan.getId());
refTaskCyclePlan.setTaskPlanName(sysTaskPlan.getName()); refTaskCyclePlan.setTaskPlanName(sysTaskPlan.getName());
refTaskCyclePlan.setTaskPlanGroupName(sysTaskPlan.getGroupName()); refTaskCyclePlan.setTaskPlanGroupName(sysTaskPlan.getGroupName());
// 添加表达式与触发器关系表 // 添加表达式与触发器关系表
sysRefTaskCyclePlanRDao.insert(refTaskCyclePlan); sysRefTaskCyclePlanRDao.insert(refTaskCyclePlan);
// 添加定时任务与触发器到quartz表中
CronScheduleBuilder schedBuilder = CronScheduleBuilder
.cronSchedule(sysTaskCycle.getTaskCycleExps())
.withMisfireHandlingInstructionDoNothing();
TriggerBuilder<CronTrigger> trigger = TriggerBuilder.newTrigger()
.withIdentity(triggerKey)
.withDescription(sysTaskCycle.getTaskCycleDescription())
.withSchedule(schedBuilder)
.startAt(sdf.parse(sysTaskCycle.getTaskCycleStartDatetime()));
if (sysTaskCycle.getTaskCycleEndDatetime() != null && sysTaskCycle.getTaskCycleEndDatetime().length() != 0) {
trigger = trigger.endAt(sdf.parse(sysTaskCycle.getTaskCycleEndDatetime()));
}
Class<? extends Job> clazz = (Class<? extends Job>) Class.forName(sysTask.getTaskPackage() + "." + sysTask.getTaskClass());
JobDetail jobDetail = JobBuilder.newJob(clazz).withIdentity(jobKey).withDescription(sysTaskPlan.getTaskPlanDescription()).build();
scheduler.scheduleJob(jobDetail, trigger.build());
} catch (SchedulerException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.setErrorDetail(e.getMessage())
.build();
} catch (ParseException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.setErrorDetail("表达式起止时间错误")
.setErrorSolution("请更改表达式起止时间")
.build();
} catch (ClassNotFoundException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.setErrorDetail("定时任务包名及类名不正确")
.setErrorSolution("请重新输入定时任务包名及类名")
.build();
} catch (RuntimeException e) {
String message;
if (e.getMessage().indexOf("CronExpression") == 0) {
message = "时间周期表达式错误";
} else {
message = e.getMessage();
}
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.setErrorDetail(message)
.build();
}
return sysTaskPlan; return sysTaskPlan;
} }
@Override @Override
@ApiOperation(value = "修改任务计划", notes = "修改任务计划") @ApiOperation(value = "修改任务计划", notes = "修改任务计划")
public void updateSysTaskPlan(SysTaskPlan sysTaskPlan, SysTaskCycle sysTaskCycle) { public void updateSysTaskPlan(SysTaskPlan sysTaskPlan) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
SysTaskPlan oldSysTaskPlan = sysTaskPlanRDao.getById(sysTaskPlan.getId()); SysTaskPlan oldSysTaskPlan = sysTaskPlanRDao.getById(sysTaskPlan.getId());
@ -150,54 +89,6 @@ public class SysTaskPlanService implements ISysTaskPlanService {
sysTaskPlan.setLastRunDateTime(oldSysTaskPlan.getLastRunDateTime()); sysTaskPlan.setLastRunDateTime(oldSysTaskPlan.getLastRunDateTime());
sysTaskPlan.setTaskPlanStatus(oldSysTaskPlan.getTaskPlanStatus()); sysTaskPlan.setTaskPlanStatus(oldSysTaskPlan.getTaskPlanStatus());
sysTaskPlanRDao.update(sysTaskPlan); sysTaskPlanRDao.update(sysTaskPlan);
try {
TriggerKey triggerKey = TriggerKey.triggerKey(oldSysTaskPlan.getName(), oldSysTaskPlan.getGroupName());
if (!scheduler.checkExists(triggerKey)) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("定时任务不存在")
.setErrorSolution("请重新选择")
.build();
}
// 添加定时任务与触发器到quartz表中
CronScheduleBuilder schedBuilder = CronScheduleBuilder
.cronSchedule(sysTaskCycle.getTaskCycleExps())
.withMisfireHandlingInstructionDoNothing();
TriggerBuilder<CronTrigger> trigger = TriggerBuilder.newTrigger()
.withIdentity(triggerKey)
.withDescription(sysTaskCycle.getTaskCycleDescription())
.withSchedule(schedBuilder)
.startAt(sdf.parse(sysTaskCycle.getTaskCycleStartDatetime()));
if (sysTaskCycle.getTaskCycleEndDatetime() != null && !"".equals(sysTaskCycle.getTaskCycleEndDatetime())) {
trigger = trigger.endAt(sdf.parse(sysTaskCycle.getTaskCycleEndDatetime()));
}
JobKey jobKey = new JobKey(sysTaskPlan.getName(), sysTaskPlan.getGroupName());
JobDetail jobDetail = scheduler.getJobDetail(jobKey);
jobDetail.getJobBuilder().withDescription(sysTaskPlan.getTaskPlanDescription());
HashSet<Trigger> triggerSet = new HashSet<>();
triggerSet.add(trigger.build());
scheduler.scheduleJob(jobDetail, triggerSet, true);
} catch (SchedulerException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.setErrorDetail(e.getMessage())
.build();
} catch (ParseException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.setErrorDetail("表达式起止时间错误")
.setErrorSolution("请更改表达式起止时间")
.build();
}
} }
@Override @Override
@ -208,33 +99,11 @@ public class SysTaskPlanService implements ISysTaskPlanService {
sysTaskPlan.setTaskPlanStatus(status); sysTaskPlan.setTaskPlanStatus(status);
sysTaskPlan.setModifyUser(user.getUserName()); sysTaskPlan.setModifyUser(user.getUserName());
sysTaskPlanRDao.update(sysTaskPlan); sysTaskPlanRDao.update(sysTaskPlan);
try {
TriggerKey triggerKey = TriggerKey.triggerKey(sysTaskPlan.getName(), sysTaskPlan.getGroupName());
if (!scheduler.checkExists(triggerKey)) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("定时任务不存在")
.setErrorSolution("请重新选择")
.build();
}
if (status == CommonEnumUtil.DATA_STATUS.ENABLE.getValue()) {
scheduler.resumeTrigger(triggerKey);
} else {
scheduler.pauseTrigger(triggerKey);
}
} catch (SchedulerException e) {
LOGGER.info("重新开始任务-->复杂调度" + e.getMessage());
e.printStackTrace();
}
} }
@Override @Override
@ApiOperation(value = "根据根据id删除数据") @ApiOperation(value = "根据根据id删除数据")
public void deleteSysTaskPlanById(Long id) { public void deleteSysTaskPlanById(Long id) {
try {
SysTaskPlan sysTaskPlan = sysTaskPlanRDao.getById(id); SysTaskPlan sysTaskPlan = sysTaskPlanRDao.getById(id);
ValidatorBean.checkNotNull(sysTaskPlan, "定时任务不存在"); ValidatorBean.checkNotNull(sysTaskPlan, "定时任务不存在");
@ -243,25 +112,6 @@ public class SysTaskPlanService implements ISysTaskPlanService {
// 删除关系表数据 // 删除关系表数据
sysRefTaskCyclePlanRDao.deleteByProperties(new String[]{"taskPlanName", "taskPlanGroupName"}, sysRefTaskCyclePlanRDao.deleteByProperties(new String[]{"taskPlanName", "taskPlanGroupName"},
new Object[]{sysTaskPlan.getName(), sysTaskPlan.getGroupName()}); new Object[]{sysTaskPlan.getName(), sysTaskPlan.getGroupName()});
TriggerKey triggerKey = TriggerKey.triggerKey(sysTaskPlan.getName(), sysTaskPlan.getGroupName());
if (scheduler.checkExists(triggerKey)) {
scheduler.pauseTrigger(triggerKey);
scheduler.unscheduleJob(triggerKey);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("定时任务不存在")
.setErrorSolution("请重新选择")
.build();
}
} catch (SchedulerException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.build();
}
} }
@Override @Override
@ -290,29 +140,6 @@ public class SysTaskPlanService implements ISysTaskPlanService {
} }
@Override @Override
@ApiOperation(value = "立即执行任务计划", notes = "立即执行任务计划")
public void executeSysTaskPlan(SysTaskPlan sysTaskPlan) {
JobKey jobKey = JobKey.jobKey(sysTaskPlan.getName(), sysTaskPlan.getGroupName());
try {
if (scheduler.checkExists(jobKey)) {
scheduler.triggerJob(jobKey);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("任务计划不存在")
.setErrorSolution("请重新选择任务计划")
.build();
}
} catch (SchedulerException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.build();
}
}
@Override
@ApiOperation(value = "查询任务计划", notes = "根据任务计划名称与组名称查询") @ApiOperation(value = "查询任务计划", notes = "根据任务计划名称与组名称查询")
public SysTaskPlan getSysTaskPlanByNameAndGroup(String name, String groupName) { public SysTaskPlan getSysTaskPlanByNameAndGroup(String name, String groupName) {
List<SysTaskPlan> sysTaskPlanList = sysTaskPlanRDao.findByProperty(new String[]{"name", "groupName"}, new Object[]{name, groupName}); List<SysTaskPlan> sysTaskPlanList = sysTaskPlanRDao.findByProperty(new String[]{"name", "groupName"}, new Object[]{name, groupName});
@ -327,60 +154,4 @@ public class SysTaskPlanService implements ISysTaskPlanService {
public void logInsertSysLogTaskTime(SysLogTaskTime sysLogTaskTime) { public void logInsertSysLogTaskTime(SysLogTaskTime sysLogTaskTime) {
sysLogTaskTimeRDao.insert(sysLogTaskTime); sysLogTaskTimeRDao.insert(sysLogTaskTime);
} }
@Override
@ApiOperation(value = "修改定时任务信息", notes = "修改定时任务信息不会更新quartz数据库")
public void updateSysTaskPlan(SysTaskPlan sysTaskPlan) {
sysTaskPlanRDao.update(sysTaskPlan);
}
@Override
@ApiOperation(value = "批量删除任务计划信息", notes = "批量删除任务计划信息")
public void deleteSysTaskPlanByIds(Long[] ids) {
try {
List<SysTaskPlan> sysTaskPlan = sysTaskPlanRDao.findByHqlWhere(CoreHqlPack.packHqlIds("id", ids));
List<TriggerKey> triggerKeyList = new ArrayList<>();
//数据校验
if (sysTaskPlan == null || sysTaskPlan.size() == 0) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("任务计划不存在")
.setErrorSolution("请重新选择任务计划")
.build();
} else {
for (int i = 0; i < sysTaskPlan.size(); i++) {
triggerKeyList.add(TriggerKey.triggerKey(sysTaskPlan.get(i).getName(), sysTaskPlan.get(i).getGroupName()));
}
}
sysTaskPlanRDao.deleteByIds(ids);
// 删除关系表数据
sysRefTaskCyclePlanRDao.deleteByPropertyIn("taskPlanId", ids);
// 检查定时人计划是否存在,并暂停
for (TriggerKey trigger : triggerKeyList) {
if (scheduler.checkExists(trigger)) {
scheduler.pauseTrigger(trigger);
} else {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION_DATA_NOT_EXIT.getCode())
.setErrorDetail("定时任务不存在")
.setErrorSolution("请重新选择")
.build();
}
}
// 取消调度任务
scheduler.unscheduleJobs(triggerKeyList);
} catch (SchedulerException e) {
throw ImppExceptionBuilder.newInstance()
.setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode())
.setErrorCode(ImppExceptionEnum.TASK_EXCEPTION.getCode())
.build();
}
}
} }

@ -102,7 +102,7 @@ public class SysToolTypeService implements ISysToolTypeService {
@Override @Override
@ApiOperation(value = "删除硬件类型",notes = "根据 ID 批量删除硬件类型信息") @ApiOperation(value = "删除硬件类型",notes = "根据 ID 批量删除硬件类型信息")
public void deleteSysToolTypeByIds(Long[] ids) { public void deleteSysToolTypeByIds(Long[] ids) {
LOGGER.info("硬件类型 TOOL_TYPE ids:{}", ids.toString()); LOGGER.info("硬件类型 TOOL_TYPE ids:{}", ids);
List<SysTool> count = toolRDao.findByHqlWhere(CoreHqlPack.packHqlIds("toolTypeId",ids)); List<SysTool> count = toolRDao.findByHqlWhere(CoreHqlPack.packHqlIds("toolTypeId",ids));
if(count.size() > 0){ if(count.size() > 0){
throw ImppExceptionBuilder.newInstance() throw ImppExceptionBuilder.newInstance()

@ -218,7 +218,7 @@ public class SysUserInfoService implements ISysUserInfoService {
LOGGER.info("用户信息 SysUserInfo userInfoId:{}",userInfoId); LOGGER.info("用户信息 SysUserInfo userInfoId:{}",userInfoId);
SysUserInfo userInfo = sysUserInfoRDao.getById(userInfoId); SysUserInfo userInfo = sysUserInfoRDao.getById(userInfoId);
if(userInfo != null){ if(userInfo != null){
int count = sysUserRepository.findByPropertyCount( sysUserRepository.findByPropertyCount(
new String[]{"userInfoId","isValid"}, new String[]{"userInfoId","isValid"},
new Object[]{userInfo.getId(),CommonEnumUtil.IS_VAILD.VAILD.getValue()}); new Object[]{userInfo.getId(),CommonEnumUtil.IS_VAILD.VAILD.getValue()});
// userInfo.setUserNum(count); // userInfo.setUserNum(count);

@ -34,7 +34,6 @@ public class TestMain {
int wId = new Random().nextInt(29) + 1; int wId = new Random().nextInt(29) + 1;
System.out.println("random id -> "+wId); System.out.println("random id -> "+wId);
SnowflakeIdMaker m = new SnowflakeIdMaker(wId,3); SnowflakeIdMaker m = new SnowflakeIdMaker(wId,3);
m = new SnowflakeIdMaker(wId,3);
int i = 0; int i = 0;
long id; long id;

@ -42,7 +42,7 @@ public class TestBase {
SecurityUtils.setSecurityManager(securityManager); SecurityUtils.setSecurityManager(securityManager);
securityManager.start(sessionContext); securityManager.start(sessionContext);
UserToken token = new UserToken("login_name", "login_pwd", "zh"); // UserToken token = new UserToken("login_name", "login_pwd", "zh");
// SessionUser sessionUser = AuthUtil.login(token); // SessionUser sessionUser = AuthUtil.login(token);
// AuthUtil.setSessionUser(sessionUser); // AuthUtil.setSessionUser(sessionUser);
System.out.println("----------------->> 开始测试 <<-----------------"); System.out.println("----------------->> 开始测试 <<-----------------");

@ -1,96 +1,96 @@
package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;//package cn.estsh.i3plus.core.apiservice.serviceimpl.busi; //package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;//package cn.estsh.i3plus.core.apiservice.serviceimpl.busi;
//
import cn.estsh.i3plus.pojo.platform.bean.*; //import cn.estsh.i3plus.pojo.platform.bean.*;
import cn.estsh.i3plus.pojo.platform.repository.*; //import cn.estsh.i3plus.pojo.platform.repository.*;
import org.apache.poi.ss.usermodel.Row; //import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet; //import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; //import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.junit.Test; //import org.junit.Test;
import org.slf4j.Logger; //import org.slf4j.Logger;
import org.slf4j.LoggerFactory; //import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.beans.factory.annotation.Autowired;
//
import java.io.InputStream; //import java.io.InputStream;
import java.util.ArrayList; //import java.util.ArrayList;
import java.util.List; //import java.util.List;
//
/** ///**
* @Description : // * @Description :
* @Reference : // * @Reference :
* @Author : yunhao // * @Author : yunhao
* @CreateDate : 2018-11-22 11:01 // * @CreateDate : 2018-11-22 11:01
* @Modify: // * @Modify:
**/ // **/
public class TestExcelOrderNoRule extends TestBase { //public class TestExcelOrderNoRule extends cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestBase {
//
public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelOrderNoRule.class); // public static final Logger LOGGER = LoggerFactory.getLogger(TestExcelOrderNoRule.class);
//
// 文件路径 // // 文件路径
public static final String PATH_NAME = "init/oder-no-rule.xlsx"; // public static final String PATH_NAME = "init/oder-no-rule.xlsx";
// 权限Sheet 名称 // // 权限Sheet 名称
public static final String SHEET_ORDER_NO_RULE = "order-no-rule"; // public static final String SHEET_ORDER_NO_RULE = "order-no-rule";
//
@Autowired // @Autowired
private SysOrderNoRuleRepository sysOrderNoRuleRDao; // private SysOrderNoRuleRepository sysOrderNoRuleRDao;
//
@Test // @Test
public void testInit() throws Exception { // public void testInit() throws Exception {
XSSFWorkbook workbook = getWorkbook(PATH_NAME); // XSSFWorkbook workbook = getWorkbook(PATH_NAME);
if(workbook != null){ // if(workbook != null){
XSSFSheet sheetOrderNoRule = workbook.getSheet(SHEET_ORDER_NO_RULE); // XSSFSheet sheetOrderNoRule = workbook.getSheet(SHEET_ORDER_NO_RULE);
//
List<SysOrderNoRule> ysOrderNoRuleList = getSysOrderNoRule(sheetOrderNoRule); // List<SysOrderNoRule> ysOrderNoRuleList = getSysOrderNoRule(sheetOrderNoRule);
//
LOGGER.info("System Init SysOrderNoRule Size:{}",ysOrderNoRuleList.size()); // LOGGER.info("System Init SysOrderNoRule Size:{}",ysOrderNoRuleList.size());
//
sysOrderNoRuleRDao.saveAll(ysOrderNoRuleList); // sysOrderNoRuleRDao.saveAll(ysOrderNoRuleList);
} // }
} // }
//
public List<SysOrderNoRule> getSysOrderNoRule(XSSFSheet sheet){ // public List<SysOrderNoRule> getSysOrderNoRule(XSSFSheet sheet){
List<SysOrderNoRule> result = new ArrayList<>(); // List<SysOrderNoRule> result = new ArrayList<>();
if(sheet != null){ // if(sheet != null){
if(sheet.getLastRowNum() >= 1){ // if(sheet.getLastRowNum() >= 1){
SysOrderNoRule obj = null; // SysOrderNoRule obj = null;
for (int i = 1; i <= sheet.getLastRowNum(); i++) { // for (int i = 1; i <= sheet.getLastRowNum(); i++) {
try { // try {
Row row = sheet.getRow(i);//获取索引为i的行以0开始 // Row row = sheet.getRow(i);//获取索引为i的行以0开始
if(row.getCell(0).toString().trim().length() > 0){ // if(row.getCell(0).toString().trim().length() > 0){
obj = new SysOrderNoRule(); // obj = new SysOrderNoRule();
obj.setId(Long.parseLong(row.getCell(0).getStringCellValue())); // obj.setId(Long.parseLong(row.getCell(0).getStringCellValue()));
obj.setName(row.getCell(1).getStringCellValue()); // obj.setName(row.getCell(1).getStringCellValue());
obj.setOrderNoRuleCode(row.getCell(2).getStringCellValue()); // obj.setOrderNoRuleCode(row.getCell(2).getStringCellValue());
obj.setOrderNoRule(row.getCell(3).getStringCellValue()); // obj.setOrderNoRule(row.getCell(3).getStringCellValue());
obj.setSerialNoSeed(Long.parseLong(row.getCell(4).getStringCellValue())); // obj.setSerialNoSeed(Long.parseLong(row.getCell(4).getStringCellValue()));
obj.setSerialNoIncrement(Long.parseLong(row.getCell(5).getStringCellValue())); // obj.setSerialNoIncrement(Long.parseLong(row.getCell(5).getStringCellValue()));
obj.setSerialNoLength(Long.parseLong(row.getCell(6).getStringCellValue())); // obj.setSerialNoLength(Long.parseLong(row.getCell(6).getStringCellValue()));
obj.setIsCycle(Integer.parseInt(row.getCell(7).getStringCellValue())); // obj.setIsCycle(Integer.parseInt(row.getCell(7).getStringCellValue()));
obj.setOrderNoRuleDescription(row.getCell(8).getStringCellValue()); // obj.setOrderNoRuleDescription(row.getCell(8).getStringCellValue());
obj.setOrderNoRuleStatus(1); // obj.setOrderNoRuleStatus(1);
obj.setSerialNo(-1L); // obj.setSerialNo(-1L);
obj.setIsValid(1); // obj.setIsValid(1);
//
result.add(obj); // result.add(obj);
} // }
}catch (Exception e){ // }catch (Exception e){
LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i); // LOGGER.error("Excel Sheet Name :{} Index:{} DataType Error", sheet.getSheetName(), i);
} // }
} // }
} // }
} // }
return result; // return result;
} // }
//
public XSSFWorkbook getWorkbook(String pathName){ // public XSSFWorkbook getWorkbook(String pathName){
try { // try {
InputStream in = TestExcelPermission.class.getClassLoader().getResourceAsStream(pathName); // InputStream in = cn.estsh.i3plus.core.apiservice.serviceimpl.busi.TestExcelPermission.class.getClassLoader().getResourceAsStream(pathName);
XSSFWorkbook workbook = new XSSFWorkbook(in); // XSSFWorkbook workbook = new XSSFWorkbook(in);
return workbook; // return workbook;
}catch (Exception e){ // }catch (Exception e){
LOGGER.error(" System Init Sys Data Excel Error file path {} error message :{}",pathName,e.getMessage()); // LOGGER.error(" System Init Sys Data Excel Error file path {} error message :{}",pathName,e.getMessage());
e.getMessage(); // e.getMessage();
return null; // return null;
} // }
} // }
//
} //}

@ -30,7 +30,6 @@ public class TestMathOper extends cn.estsh.i3plus.core.apiservice.serviceimpl.bu
@Test @Test
public void testMax(){ public void testMax(){
SysConfig sysConfig = new SysConfig();
// max // max
System.out.println(sysConfigRDao.findMaxByProperties(propertyName,groupByName,param,paramValue)); System.out.println(sysConfigRDao.findMaxByProperties(propertyName,groupByName,param,paramValue));
System.out.println(sysConfigRDao.findMaxByProperty(propertyName,groupByName,param[0],paramValue[0])); System.out.println(sysConfigRDao.findMaxByProperty(propertyName,groupByName,param[0],paramValue[0]));

Loading…
Cancel
Save