add:出入库决策模版

This commit is contained in:
zhangzq
2024-04-06 20:23:09 +08:00
parent d0cbc07399
commit 867d30da73
31 changed files with 201 additions and 224 deletions

View File

@@ -11,4 +11,9 @@
</profile>
</annotationProcessing>
</component>
<component name="EclipseCompilerSettings">
<option name="PROCEED_ON_ERROR" value="false" />
<option name="DEBUGGING_INFO" value="false" />
<option name="DEPRECATION" value="false" />
</component>
</project>

View File

@@ -260,6 +260,14 @@
<artifactId>redisson-spring-boot-starter</artifactId>
<version>3.16.4</version>
</dependency>
<!-- 脚本处理-->
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>3.0.13</version>
<type>pom</type>
</dependency>
<!-- 规则处理-->
<!-- quartz -->
<dependency>

View File

@@ -4,23 +4,30 @@ import org.nl.wms.flow_manage.flow.framework.engine.cmd.CommandExecutor;
import org.nl.wms.flow_manage.flow.framework.engine.cmd.interceptor.CommandInterceptor;
import org.nl.wms.flow_manage.flow.framework.engine.cmd.interceptor.impl.InvokeCommandInterceptor;
import org.nl.wms.flow_manage.flow.framework.engine.cmd.interceptor.impl.ThreadCommandInterceptor;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.TypeHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.*;
/*
* @author ZZQ
* @Date 2024/3/21 11:26
*/
@Configuration
public class InitFlowConfig {
public void initConfig(){
@Autowired
private Map<String,TypeHandler> handlerMap;
public void initConfig(){
CommandInterceptor first = initCommandInterceptor();
CommandExecutor commandExecutor = new CommandExecutor();
commandExecutor.setInterceptor(first);
TypeHandler.HANDLER_MAP=handlerMap;
}
public CommandInterceptor initCommandInterceptor(){
List<CommandInterceptor> chain = new ArrayList<>();
chain.add(new ThreadCommandInterceptor());

View File

@@ -3,8 +3,8 @@ package org.nl.wms.flow_manage.flow.framework.engine.behavior.impl;
import org.nl.wms.flow_manage.flow.framework.engine.behavior.FlowNodeActivityBehavior;
import org.nl.wms.flow_manage.flow.framework.entity.ExecutionEntity;
import org.nl.wms.flow_manage.flow.framework.entity.node.base.impl.FlowElement;
import org.nl.wms.flow_manage.flow.framework.entity.node.base.impl.FlowNode;
import org.nl.wms.flow_manage.flow.framework.entity.node.impl.task.impl.FormTask;
import org.nl.wms.pm_manage.form_data.service.dao.PmFormData;
import org.springframework.stereotype.Service;
/*
@@ -13,20 +13,19 @@ import org.springframework.stereotype.Service;
* 源UserTask
*/
@Service
public class FormTaskActivityBehavior extends FlowNodeActivityBehavior<FlowNode> {
public class FormTaskActivityBehavior extends FlowNodeActivityBehavior<PmFormData> {
@Override
public void execute(ExecutionEntity<FlowNode> execution) {
public void execute(ExecutionEntity<PmFormData> execution) {
FlowElement flowElement = execution.getCurrentFlowElement();
String type = flowElement.getType();
if (flowElement instanceof FormTask){
//根据当前表单配置生成当前节点表单数据
FormTask formTask = (FormTask) flowElement;
}
PmFormData sourceForm = execution.getT();
//TODO:获取不同的类型执行器.处理该节点:获取当前表单
//获取表单配置表
super.execute(execution);
super.execute(execution);
}
@Override

View File

@@ -1,6 +1,5 @@
package org.nl.wms.flow_manage.flow.framework.entity;
import lombok.Data;
import lombok.Getter;
import org.nl.wms.flow_manage.flow.framework.entity.node.base.impl.FlowElement;

View File

@@ -14,9 +14,10 @@ import java.util.*;
@Data
public class FormTask extends ExecuteTask {
private String assignee;
private String task_type;
private String owner;
private String priority;
private String formKey;
private String form_type;
private boolean sameDeployment = true;
private String dueDate;
private String businessCalendarName;
@@ -26,7 +27,10 @@ public class FormTask extends ExecuteTask {
private List<String> candidateGroups = new ArrayList<>();
// private List<FormProperty> formProperties = new ArrayList<>();
// private List<FlowableListener> taskListeners = new ArrayList<>();
private String skipExpression;
/**
* 规则:支持多级别
*/
private List<String> skipExpression;
private String validateFormFields;
private String taskIdVariableName;

View File

@@ -1,13 +1,25 @@
package org.nl.wms.flow_manage.flow.framework.process.nodeType;
import org.nl.wms.flow_manage.flow.framework.entity.ExecutionEntity;
import org.nl.wms.config_manage.form_struc.service.dao.BmFormStruc;
import java.util.List;
import java.util.Map;
/*
* @author ZZQ
* @Date 2024/3/21 15:19
*/
public abstract class TypeHandler {
public abstract class TypeHandler<T,P> {
public abstract void handler(String param, ExecutionEntity entity);
public static Map<String,TypeHandler> HANDLER_MAP;
/**
* 对应flownode:task_type的逻辑处理
* @param param
* @param entity
* @param form_struc
* @return
*/
public abstract T handler(List<String> param, P entity, BmFormStruc form_struc);
}

View File

@@ -0,0 +1,22 @@
package org.nl.wms.flow_manage.flow.framework.process.nodeType.excess.impl;
import com.alibaba.fastjson.JSONObject;
import org.nl.wms.config_manage.form_struc.service.dao.BmFormStruc;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.TypeHandler;
import org.springframework.stereotype.Service;
import java.util.List;
/*
* @author ZZQ
* @Date 2024/3/21 15:17
*/
@Service
public class ClassHandler extends TypeHandler<JSONObject,String> {
@Override
public JSONObject handler(List<String> param, String entity, BmFormStruc form_struc) {
return null;
}
}

View File

@@ -0,0 +1,21 @@
package org.nl.wms.flow_manage.flow.framework.process.nodeType.excess.impl;
import com.alibaba.fastjson.JSONObject;
import org.nl.wms.config_manage.form_struc.service.dao.BmFormStruc;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.TypeHandler;
import org.springframework.stereotype.Service;
import java.util.List;
/*
* @author ZZQ
* @Date 2024/3/21 15:16
*/
@Service
public class ExpressionHandler extends TypeHandler<JSONObject,String> {
@Override
public JSONObject handler(List<String> param, String entity, BmFormStruc form_struc) {
return null;
}
}

View File

@@ -0,0 +1,22 @@
package org.nl.wms.flow_manage.flow.framework.process.nodeType.excess.impl;
import com.alibaba.fastjson.JSONObject;
import org.nl.wms.config_manage.form_struc.service.dao.BmFormStruc;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.TypeHandler;
import org.springframework.stereotype.Service;
import java.util.List;
/*
* @author ZZQ
* @Date 2024/3/21 15:16
*/
@Service
public class ScriptHandler extends TypeHandler<JSONObject,String> {
@Override
public JSONObject handler(List<String> param, String entity, BmFormStruc form_struc) {
return null;
}
}

View File

@@ -1,17 +0,0 @@
package org.nl.wms.flow_manage.flow.framework.process.nodeType.impl;
import org.nl.wms.flow_manage.flow.framework.entity.ExecutionEntity;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.TypeHandler;
/*
* @author ZZQ
* @Date 2024/3/21 15:17
*/
public class ClassHandler extends TypeHandler {
@Override
public void handler(String param, ExecutionEntity entity) {
}
}

View File

@@ -1,15 +0,0 @@
package org.nl.wms.flow_manage.flow.framework.process.nodeType.impl;
import org.nl.wms.flow_manage.flow.framework.entity.ExecutionEntity;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.TypeHandler;
/*
* @author ZZQ
* @Date 2024/3/21 15:16
*/
public class ExpressionHandler extends TypeHandler {
@Override
public void handler(String param, ExecutionEntity entity) {
}
}

View File

@@ -1,16 +0,0 @@
package org.nl.wms.flow_manage.flow.framework.process.nodeType.impl;
import org.nl.wms.flow_manage.flow.framework.entity.ExecutionEntity;
import org.nl.wms.flow_manage.flow.framework.process.nodeType.TypeHandler;
/*
* @author ZZQ
* @Date 2024/3/21 15:16
*/
public class ScriptHandler extends TypeHandler {
@Override
public void handler(String param, ExecutionEntity entity) {
}
}

View File

@@ -2,6 +2,7 @@ package org.nl.wms.system_manage.controller.coderule;
import com.alibaba.fastjson.JSONObject;
import lombok.RequiredArgsConstructor;
import org.nl.common.TableDataInfo;
import org.nl.common.anno.Log;
@@ -35,7 +36,7 @@ public class SysCodeRuleController {
//("查询编码")
@GetMapping
// @SaCheckPermission("genCode:list")
// //SaCheckPermission("genCode:list")
public ResponseEntity<Object> queryAll(CodeRuleQuery form, PageQuery pageable) {
return new ResponseEntity<>(TableDataInfo.build(codeRuleService.queryAll(form, pageable)), HttpStatus.OK);
}
@@ -43,7 +44,7 @@ public class SysCodeRuleController {
@Log("新增编码")
//("新增编码")
@PostMapping
// @SaCheckPermission("genCode:add")
// //SaCheckPermission("genCode:add")
public ResponseEntity<Object> create(@Validated @RequestBody SysCodeRule codeRule) {
codeRuleService.create(codeRule);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -52,7 +53,7 @@ public class SysCodeRuleController {
@Log("删除编码")
//("删除编码")
@DeleteMapping
// @SaCheckPermission("genCode:del")
// //SaCheckPermission("genCode:del")
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
codeRuleService.deleteCodeRule(ids);
return new ResponseEntity<>(HttpStatus.OK);
@@ -61,7 +62,7 @@ public class SysCodeRuleController {
@Log("修改编码")
//("修改编码")
@PutMapping
// @SaCheckPermission("genCode:edit")
// //SaCheckPermission("genCode:edit")
public ResponseEntity<Object> update(@RequestBody SysCodeRule codeRule) {
codeRuleService.updateCodeRule(codeRule);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -69,9 +70,9 @@ public class SysCodeRuleController {
//("导出任务数据")
@GetMapping(value = "/codeDemo")
// @SaCheckPermission("genCode:list")
public ResponseEntity<Object> CodeDemo(@RequestParam Map form) throws IOException {
return new ResponseEntity<>(codeRuleService.codeDemo(form), HttpStatus.OK);
// //SaCheckPermission("genCode:list")
public ResponseEntity<Object> CodeDemo(String flag,String code) {
return new ResponseEntity<>(codeRuleService.codeDemo(flag, code), HttpStatus.OK);
}
}

View File

@@ -31,7 +31,7 @@ public class SysCodeRuleDetailController {
//("查询编码明细")
@GetMapping
// @SaCheckPermission("genCode:list")
// //SaCheckPermission("genCode:list")
public ResponseEntity<Object> queryAll(CodeRuleDetailQuery form, PageQuery pageable){
return new ResponseEntity<>(TableDataInfo.build(codeDetailService.queryAll(form,pageable)), HttpStatus.OK);
}
@@ -39,7 +39,7 @@ public class SysCodeRuleDetailController {
@Log("新增编码明细")
//("新增编码明细")
@PostMapping
// @SaCheckPermission("genCode:add")
// //SaCheckPermission("genCode:add")
public ResponseEntity<Object> create(@RequestBody SysCodeRuleDetail codeRuleDetail){
codeDetailService.create(codeRuleDetail);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -48,7 +48,7 @@ public class SysCodeRuleDetailController {
@Log("删除编码明细")
//("删除编码明细")
@DeleteMapping(value = "/{id}")
// @SaCheckPermission("genCode:del")
// //SaCheckPermission("genCode:del")
public ResponseEntity<Object> delete(@PathVariable String id){
codeDetailService.delete(id);
return new ResponseEntity<>(HttpStatus.OK);
@@ -57,7 +57,7 @@ public class SysCodeRuleDetailController {
@Log("修改编码明细")
//("修改编码明细")
@PutMapping
// @SaCheckPermission("genCode:edit")
// //SaCheckPermission("genCode:edit")
public ResponseEntity<Object> update(@RequestBody SysCodeRuleDetail json){
codeDetailService.update(json);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);

View File

@@ -75,7 +75,7 @@ public class DeptController {
//("查询部门:根据ID获取同级与上级数据")
@PostMapping("/superior")
@SaCheckPermission(value = {"user:list", "dept:list"}, mode = SaMode.AND)
//SaCheckPermission(value = {"user:list", "dept:list"}, mode = SaMode.AND)
public ResponseEntity<Object> getSuperior(@RequestBody List<Long> ids) {
if (CollectionUtils.isEmpty(ids)){
return ResponseEntity.noContent().build();
@@ -86,7 +86,7 @@ public class DeptController {
@Log("新增部门")
//("新增部门")
@PostMapping
// @SaCheckPermission("dept:add")
// //SaCheckPermission("dept:add")
public ResponseEntity<Object> create(@Validated @RequestBody SysDept resources){
deptService.createDept(resources);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -95,7 +95,7 @@ public class DeptController {
@Log("修改部门")
//("修改部门")
@PutMapping
// @SaCheckPermission("dept:edit")
// //SaCheckPermission("dept:edit")
public ResponseEntity<Object> update(@Validated @RequestBody SysDept dept){
if (dept.getPid() != null && dept.getDept_id().equals(dept.getPid())) {
throw new BadRequestException("上级不能为自己");
@@ -107,7 +107,7 @@ public class DeptController {
@Log("删除部门")
//("删除部门")
@DeleteMapping
// @SaCheckPermission("dept:del")
// //SaCheckPermission("dept:del")
public ResponseEntity<Object> delete(@RequestBody Set<String> deptIds){
if (CollectionUtils.isEmpty(deptIds)){
return ResponseEntity.noContent().build();

View File

@@ -99,7 +99,7 @@ public class SysDictController {
@Log("修改字典详情")
//("修改字典详情")
@PutMapping("/dictDetail")
// @SaCheckPermission("dict:edit")
// //SaCheckPermission("dict:edit")
public ResponseEntity<Object> updateDetail(@RequestBody Dict resources){
dictService.updateDetail(resources);
return new ResponseEntity<>(HttpStatus.OK);

View File

@@ -49,13 +49,13 @@ public class SysMenuController {
//("返回全部的菜单")
@GetMapping(value = "/lazy")
@SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND)
//SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND)
public ResponseEntity<Object> query(@RequestParam String pid) {
return new ResponseEntity<>(iSysMenuService.getMenus(pid), HttpStatus.OK);
}
//("获取菜单列表")
@PostMapping(value = "/getMenusByRole")
@SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND)
//SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND)
public ResponseEntity<Object> getMenusByRole(@RequestBody JSONObject json) {
String role_id = json.getString("role_id");
String system_type = json.getString("system_type");
@@ -65,7 +65,7 @@ public class SysMenuController {
//("根据菜单ID返回所有子节点ID包含自身ID")
@GetMapping(value = "/child")
@SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND)
//SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND)
public ResponseEntity<Object> child(@RequestParam String id) {
Set<SysMenu> menuSet = new HashSet<>();
List<SysMenu> menuList = iSysMenuService.getMenus(id);
@@ -77,7 +77,7 @@ public class SysMenuController {
@GetMapping
//("查询菜单")
@SaCheckPermission("menu:list")
//SaCheckPermission("menu:list")
public ResponseEntity<Object> pageQuery(MenuQuery query, PageQuery page) throws Exception {
page.setSize(100);
List list = iSysMenuService.query(query, page);
@@ -86,7 +86,7 @@ public class SysMenuController {
//("查询菜单:根据ID获取同级与上级数据")
@PostMapping("/superior")
@SaCheckPermission("menu:list")
//SaCheckPermission("menu:list")
public ResponseEntity<Object> getSuperior(@RequestBody JSONObject param) {
Set<MenuDto> menuDtos = new LinkedHashSet<>();
String id=param.getString("ids");
@@ -100,7 +100,7 @@ public class SysMenuController {
@Log("新增菜单")
//("新增菜单")
@PostMapping
@SaCheckPermission("menu:add")
//SaCheckPermission("menu:add")
public ResponseEntity<Object> create(@RequestBody SysMenu form) {
iSysMenuService.create(form);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -109,7 +109,7 @@ public class SysMenuController {
@Log("修改菜单")
//("修改菜单")
@PutMapping
@SaCheckPermission("menu:edit")
//SaCheckPermission("menu:edit")
public ResponseEntity<Object> update( @RequestBody SysMenu form) {
iSysMenuService.update(form);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -118,7 +118,7 @@ public class SysMenuController {
@Log("删除菜单")
//("删除菜单")
@DeleteMapping
@SaCheckPermission("menu:del")
//SaCheckPermission("menu:del")
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
Set<SysMenu> menuSet = new HashSet<>();
for (String id : ids) {

View File

@@ -15,8 +15,8 @@
*/
package org.nl.wms.system_manage.controller.monitor;
import lombok.RequiredArgsConstructor;
import org.nl.wms.system_manage.service.monitor.MonitorService;
import org.springframework.http.HttpStatus;
@@ -31,7 +31,7 @@ import org.springframework.web.bind.annotation.RestController;
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/api/monitor")
public class MonitorController {
@@ -39,7 +39,7 @@ public class MonitorController {
@GetMapping
//("查询服务监控")
// @SaCheckPermission("monitor:list")
// //SaCheckPermission("monitor:list")
public ResponseEntity<Object> query() {
return new ResponseEntity<>(serverService.getServers(),HttpStatus.OK);
}

View File

@@ -39,7 +39,7 @@ class SysParamController {
@GetMapping
@Log(value = "查询系统参数", isAddLogTable = true, isInterfaceLog = true)
//("查询系统参数")
//@SaCheckPermission("param:list")
////SaCheckPermission("param:list")
public ResponseEntity<Object> query(@RequestParam Map whereJson, PageQuery page) {
return new ResponseEntity<>(TableDataInfo.build(paramService.queryPage(whereJson, page)), HttpStatus.OK);
}
@@ -47,7 +47,7 @@ class SysParamController {
@PostMapping
@Log("新增系统参数")
//("新增系统参数")
//@SaCheckPermission("param:add")
////SaCheckPermission("param:add")
public ResponseEntity<Object> create(@Validated @RequestBody Param param) {
paramService.create(param);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -56,7 +56,7 @@ class SysParamController {
@PutMapping
@Log("修改系统参数")
//("修改系统参数")
//@SaCheckPermission("param:edit")
////SaCheckPermission("param:edit")
public ResponseEntity<Object> update(@Validated @RequestBody Param param) {
paramService.update(param);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -64,7 +64,7 @@ class SysParamController {
@Log("删除系统参数")
//("删除系统参数")
//@SaCheckPermission("param:del")
////SaCheckPermission("param:del")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody String[] ids) {
List<String> Ids = Arrays.asList(ids);

View File

@@ -39,7 +39,7 @@ public class SysDataPermissionController {
@GetMapping
@Log("查询数据权限")
//("查询数据权限")
//@SaCheckPermission("@el.check('dataPermission:list')")
////SaCheckPermission("@el.check('dataPermission:list')")
public ResponseEntity<Object> query(SysDataPermissionQuery dataPermissionQuery, PageQuery page) {
return new ResponseEntity<>(TableDataInfo.build(dataPermissionService.queryAll(dataPermissionQuery, page)), HttpStatus.OK);
}
@@ -47,7 +47,7 @@ public class SysDataPermissionController {
@PostMapping
@Log("新增数据权限")
//("新增数据权限")
//@SaCheckPermission("@el.check('dataPermission:add')")
////SaCheckPermission("@el.check('dataPermission:add')")
public ResponseEntity<Object> create(@Validated @RequestBody SysDataPermission permission) {
dataPermissionService.create(permission);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -56,7 +56,7 @@ public class SysDataPermissionController {
@PutMapping
@Log("修改数据权限")
//("修改数据权限")
//@SaCheckPermission("@el.check('dataPermission:edit')")
////SaCheckPermission("@el.check('dataPermission:edit')")
public ResponseEntity<Object> update(@Validated @RequestBody SysDataPermission permission) {
dataPermissionService.update(permission);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -64,7 +64,7 @@ public class SysDataPermissionController {
@Log("删除数据权限")
//("删除数据权限")
//@SaCheckPermission("@el.check('dataPermission:del')")
////SaCheckPermission("@el.check('dataPermission:del')")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
dataPermissionService.deleteAll(ids);

View File

@@ -41,20 +41,20 @@ public class SysQuartzJobController {
private final ISysQuartzJobService quartzJobService;
@GetMapping
@SaCheckPermission("timing:list")
//SaCheckPermission("timing:list")
public ResponseEntity<Object> query(JobQuery criteria, PageQuery pageable) {
return new ResponseEntity<>(TableDataInfo.build(quartzJobService.queryAll(criteria, pageable)), HttpStatus.OK);
}
@GetMapping(value = "/logs")
@SaCheckPermission("timing:list")
//SaCheckPermission("timing:list")
public ResponseEntity<Object> queryJobLog(JobQuery criteria, PageQuery pageable) {
return new ResponseEntity<>(TableDataInfo.build(quartzJobService.queryAllLog(criteria, pageable)), HttpStatus.OK);
}
@Log("新增定时任务")
@PostMapping
@SaCheckPermission("timing:add")
//SaCheckPermission("timing:add")
public ResponseEntity<Object> create(@Validated @RequestBody SysQuartzJob resources) {
if (resources.getJob_id() != null) {
throw new BadRequestException("A new " + ENTITY_NAME + " cannot already have an ID");
@@ -65,7 +65,7 @@ public class SysQuartzJobController {
@Log("修改定时任务")
@PutMapping
@SaCheckPermission("timing:edit")
//SaCheckPermission("timing:edit")
public ResponseEntity<Object> update(@Validated @RequestBody SysQuartzJob resources) {
quartzJobService.updateJob(resources);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -73,7 +73,7 @@ public class SysQuartzJobController {
@Log("更改定时任务状态")
@PutMapping(value = "/{id}")
@SaCheckPermission("timing:edit")
//SaCheckPermission("timing:edit")
public ResponseEntity<Object> update(@PathVariable String id) {
quartzJobService.updateIsPause(quartzJobService.getById(id));
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -81,7 +81,7 @@ public class SysQuartzJobController {
@Log("执行定时任务")
@PutMapping(value = "/exec/{id}")
@SaCheckPermission("timing:edit")
//SaCheckPermission("timing:edit")
public ResponseEntity<Object> execution(@PathVariable String id) {
quartzJobService.execution(quartzJobService.getById(id));
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -89,7 +89,7 @@ public class SysQuartzJobController {
@Log("删除定时任务")
@DeleteMapping
@SaCheckPermission("timing:del")
//SaCheckPermission("timing:del")
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
quartzJobService.deleteJob(ids);
return new ResponseEntity<>(HttpStatus.OK);

View File

@@ -33,7 +33,7 @@ public class SysRoleController {
//("分页查询角色")
@GetMapping
@SaCheckPermission("roles:list")
//SaCheckPermission("roles:list")
public ResponseEntity<Object> pageQuery(@RequestParam Map param, PageQuery page) {
return new ResponseEntity<>(TableDataInfo.build(roleService.query(param, page)), HttpStatus.OK);
}
@@ -47,7 +47,7 @@ public class SysRoleController {
@Log("新增角色")
//("新增角色")
@PostMapping
@SaCheckPermission("roles:add")
//SaCheckPermission("roles:add")
public ResponseEntity<Object> create(@RequestBody JSONObject param) {
roleService.create(param);
return new ResponseEntity<>(HttpStatus.CREATED);
@@ -56,7 +56,7 @@ public class SysRoleController {
@Log("修改角色")
//("修改角色")
@PutMapping
@SaCheckPermission("roles:edit")
//SaCheckPermission("roles:edit")
public ResponseEntity<Object> update(@RequestBody JSONObject param) {
roleService.update(param);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
@@ -65,7 +65,7 @@ public class SysRoleController {
@Log("删除角色")
//("删除角色")
@DeleteMapping
@SaCheckPermission("roles:del")
//SaCheckPermission("roles:del")
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
roleService.deleteBatchByIds(ids);
return new ResponseEntity<>(HttpStatus.OK);
@@ -74,7 +74,7 @@ public class SysRoleController {
@Log("修改角色菜单")
//("修改角色菜单")
@PutMapping(value = "/menu")
@SaCheckPermission("roles:edit")
//SaCheckPermission("roles:edit")
public ResponseEntity<Object> updateMenu(@RequestBody JSONObject form) {
roleService.updateMenu(form);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);

View File

@@ -87,7 +87,7 @@ public class UserController {
@Log("删除用户")
//("删除用户")
@DeleteMapping
// @SaCheckPermission("user:del")
// //SaCheckPermission("user:del")
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
userService.removeByIds(ids);
return new ResponseEntity<>(HttpStatus.OK);

View File

@@ -6,7 +6,6 @@ import org.nl.common.domain.entity.PageQuery;
import org.nl.wms.system_manage.service.coderule.dao.SysCodeRule;
import org.nl.wms.system_manage.service.coderule.dto.CodeRuleQuery;
import java.util.Map;
import java.util.Set;
/**
@@ -29,10 +28,11 @@ public interface ISysCodeRuleService extends IService<SysCodeRule> {
/**
* 创建编码
* @param form
* @param flag
* @param code
* @return
*/
String codeDemo(Map form);
String codeDemo(String flag,String code);
/**
* 添加

View File

@@ -2,6 +2,9 @@ package org.nl.wms.system_manage.service.coderule.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.nl.wms.system_manage.service.coderule.dao.SysCodeRule;
import org.nl.wms.system_manage.service.coderule.dao.SysCodeRuleDetail;
import java.util.List;
/**
* <p>
@@ -13,4 +16,6 @@ import org.nl.wms.system_manage.service.coderule.dao.SysCodeRule;
*/
public interface SysCodeRuleMapper extends BaseMapper<SysCodeRule> {
List<SysCodeRuleDetail> findBycode(String code);
}

View File

@@ -2,4 +2,9 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.nl.wms.system_manage.service.coderule.dao.mapper.SysCodeRuleMapper">
<select id="findBycode" resultType="org.nl.wms.system_manage.service.coderule.dao.SysCodeRuleDetail">
select sys_code_rule_detail.* from sys_code_rule_detail
left join sys_code_rule on sys_code_rule_detail.code_rule_id = sys_code_rule.id
where sys_code_rule.code = #{code}
</select>
</mapper>

View File

@@ -1,6 +1,7 @@
package org.nl.wms.system_manage.service.coderule.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -8,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.nl.common.domain.exception.BadRequestException;
import org.nl.common.domain.entity.PageQuery;
import org.nl.common.utils.MapOf;
@@ -22,10 +24,11 @@ import org.nl.wms.system_manage.service.coderule.dto.CodeRuleQuery;
import org.nl.wms.system_manage.service.coderule.utils.CodeRuleTypeEnum;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
@@ -37,29 +40,27 @@ import java.util.Set;
* @since 2022-12-19
*/
@Service
@RequiredArgsConstructor
public class SysCodeRuleServiceImpl extends ServiceImpl<SysCodeRuleMapper, SysCodeRule> implements ISysCodeRuleService {
private final SysCodeRuleMapper codeRuleMapper;
private final SysCodeRuleDetailMapper codeRuleDetailMapper;
@Resource
private SysCodeRuleDetailMapper codeRuleDetailMapper;
@Override
public IPage<SysCodeRule> queryAll(CodeRuleQuery form, PageQuery pageable) {
IPage<SysCodeRule> page = this.page(pageable.build(SysCodeRule.class), form.build());
page.getRecords().forEach(sysCodeRule -> sysCodeRule.setDemo(codeDemo(MapOf.of("flag", "0", "code", sysCodeRule.getCode()))));
page.getRecords().forEach(sysCodeRule -> sysCodeRule.setDemo(codeDemo("0",sysCodeRule.getCode())));
return page;
}
@Override
public synchronized String codeDemo(Map form) {
String code = (String) form.get("code");
String id = codeRuleMapper.selectOne(new LambdaQueryWrapper<SysCodeRule>().eq(SysCodeRule::getCode, code)).getId();
// 如果flag = 1就执行更新数据库的操作
String flag = (String) form.get("flag");
List<SysCodeRuleDetail> ruleDetails = codeRuleDetailMapper.selectList(new LambdaQueryWrapper<SysCodeRuleDetail>().eq(SysCodeRuleDetail::getCode_rule_id, id));
public String codeDemo(String flag, String code) {
List<SysCodeRuleDetail> ruleDtl = this.baseMapper.findBycode(code);
if (CollectionUtils.isEmpty(ruleDtl)){
throw new BadRequestException("编码规则不存在"+code);
}
String demo = "";
boolean isSame = true;
for(SysCodeRuleDetail detail : ruleDetails) {
for(SysCodeRuleDetail detail : ruleDtl) {
String value = "";
String type = detail.getType();
//固定直接取值
@@ -125,12 +126,11 @@ public class SysCodeRuleServiceImpl extends ServiceImpl<SysCodeRuleMapper, SysCo
}
@Override
@Transactional(rollbackFor = Exception.class)
public void create(SysCodeRule codeRule) {
String currentUserId = SecurityUtils.getCurrentUserId();
String currentUsername = SecurityUtils.getCurrentUsername();
String now = DateUtil.now();
List<SysCodeRule> sysCodeRules = codeRuleMapper.selectList(new LambdaQueryWrapper<SysCodeRule>().eq(SysCodeRule::getCode, codeRule.getCode()));
List<SysCodeRule> sysCodeRules = this.baseMapper.selectList(new LambdaQueryWrapper<SysCodeRule>().eq(SysCodeRule::getCode, codeRule.getCode()));
if (ObjectUtil.isNotEmpty(sysCodeRules)) throw new BadRequestException("编号[" + sysCodeRules.get(0).getCode() + "]已存在");
codeRule.setId(IdUtil.getSnowflake(1,1).nextIdStr());
codeRule.setCreate_id(currentUserId);
@@ -139,21 +139,20 @@ public class SysCodeRuleServiceImpl extends ServiceImpl<SysCodeRuleMapper, SysCo
codeRule.setUpdate_id(currentUserId);
codeRule.setUpdate_name(currentUsername);
codeRule.setUpdate_time(now);
codeRuleMapper.insert(codeRule);
this.baseMapper.insert(codeRule);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteCodeRule(Set<String> ids) {
ids.forEach(id -> {
codeRuleMapper.deleteById(id);
this.baseMapper.deleteById(id);
codeRuleDetailMapper.delete(new LambdaQueryWrapper<SysCodeRuleDetail>().eq(SysCodeRuleDetail::getCode_rule_id, id));
});
}
@Override
public void updateCodeRule(SysCodeRule codeRule) {
List<SysCodeRule> sysCodeRules = codeRuleMapper.selectList(new LambdaQueryWrapper<SysCodeRule>()
List<SysCodeRule> sysCodeRules = this.baseMapper.selectList(new LambdaQueryWrapper<SysCodeRule>()
.eq(SysCodeRule::getCode, codeRule.getCode())
.ne(SysCodeRule::getId, codeRule.getId()));
if (ObjectUtil.isNotEmpty(sysCodeRules)) throw new BadRequestException("该编码code已存在请校验");
@@ -163,7 +162,7 @@ public class SysCodeRuleServiceImpl extends ServiceImpl<SysCodeRuleMapper, SysCo
codeRule.setUpdate_id(currentUserId);
codeRule.setUpdate_name(currentUsername);
codeRule.setUpdate_time(now);
codeRuleMapper.updateById(codeRule);
this.baseMapper.updateById(codeRule);
}
}

View File

@@ -318,13 +318,9 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
@Override
public List<MenuDto> buildTree(List<MenuDto> menuDtos) {
List<MenuDto> trees = new ArrayList<>();
Set<String> ids = new HashSet<>();
List<MenuDto> collect = menuDtos.stream().filter(a -> a.getType().equals("2")).collect(Collectors.toList());
for (MenuDto menuDTO : collect) {
if (menuDTO.getPid() == null) {
trees.add(menuDTO);
}
for (MenuDto it : menuDtos) {
if (menuDTO.getMenu_id().equals(it.getPid())) {
if (menuDTO.getChildren() == null) {
@@ -335,10 +331,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
}
}
}
if (trees.size() == 0) {
trees = menuDtos.stream().filter(s -> !ids.contains(s.getMenu_id())).collect(Collectors.toList());
}
return trees;
return menuDtos;
}
@Override
@@ -414,41 +407,20 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
// 一级目录需要加斜杠,不然会报警告
menuVo.setPath(pid.equals(menuDTO.getPid())? "/" + menuDTO.getPath() : menuDTO.getPath());
menuVo.setHidden(menuDTO.getHidden());
menuVo.setMeta(new MenuMetaVo(menuDTO.getTitle(), menuDTO.getIcon(), !menuDTO.getCache()));
// 如果不是外链
if (!menuDTO.getIframe()) {
if (pid.equals(menuDTO.getPid())) {
menuVo.setComponent(StrUtil.isEmpty(menuDTO.getComponent()) ? "Layout" : menuDTO.getComponent());
//"2".equals(menuDTO.getType() 判断是不是目录
} else if (!pid.equals(menuDTO.getPid()) && "2".equals(menuDTO.getType())) {
menuVo.setComponent(StrUtil.isEmpty(menuDTO.getComponent()) ? "ParentView" : menuDTO.getComponent());
} else if (!StrUtil.isEmpty(menuDTO.getComponent())) {
if ("2".equals(menuDTO.getType())) {
menuVo.setComponent(pid.equals(menuDTO.getPid()) ? "Layout" : "ParentView");
} else {
menuVo.setComponent(menuDTO.getComponent());
}
}
menuVo.setMeta(new MenuMetaVo(menuDTO.getTitle(), menuDTO.getIcon(), !menuDTO.getCache()));
if (menuDtoList != null && menuDtoList.size() != 0) {
menuVo.setAlwaysShow(true);
menuVo.setRedirect("noredirect");
menuVo.setChildren(buildMenus(menuDtoList,pid));
// 处理是一级菜单并且没有子菜单的情况
} else if (StrUtil.isEmpty(menuDTO.getPid())) {
MenuVo menuVo1 = new MenuVo();
menuVo1.setMeta(menuVo.getMeta());
// 非外链
if (!menuDTO.getIframe()) {
menuVo1.setPath("index");
menuVo1.setName(menuVo.getName());
menuVo1.setComponent(menuVo.getComponent());
} else {
menuVo1.setPath(menuDTO.getPath());
}
menuVo.setName(null);
menuVo.setMeta(null);
menuVo.setComponent("Layout");
List<MenuVo> list1 = new ArrayList<>();
list1.add(menuVo1);
menuVo.setChildren(list1);
}
list.add(menuVo);
}

View File

@@ -9,7 +9,7 @@ spring:
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://${DB_HOST:localhost}:${DB_PORT:3306}/${DB_NAME:wms}?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&useOldAliasMetadataBehavior=true&allowPublicKeyRetrieval=true&useSSL=false
username: ${DB_USER:root}
password: ${DB_PWD:password}
password: ${DB_PWD:123456}
# 初始连接数
initial-size: 5

View File

@@ -1,56 +0,0 @@
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import java.util.*;
import java.util.stream.Collectors;
public class Test3 {
public static void main(String[] args) {
JSONArray array = new JSONArray();
JSONObject jsonObject1 = new JSONObject();
jsonObject1.put("name", "小三");
jsonObject1.put("age", "12");
array.add(jsonObject1);
JSONObject jsonObject2 = new JSONObject();
jsonObject2.put("name", "小二");
jsonObject2.put("age", "17");
array.add(jsonObject2);
JSONObject jsonObject3 = new JSONObject();
jsonObject3.put("name", "小二");
jsonObject3.put("age", "17");
array.add(jsonObject3);
Set<JSONObject> name = array.stream().map(row -> ((JSONObject) row)).collect(Collectors.toSet());
HashMap<String, JSONObject> name1 = array.stream().collect(HashMap::new, (k, v) -> k.put(((JSONObject) v).getString("name"), (JSONObject) v), HashMap::putAll);
HashSet<JSONObject> collect = array.stream().collect(HashSet::new, (k, v) -> k.add((JSONObject) v), HashSet::addAll);
collect.stream().forEach(json -> a(json.getString("name")));
List<Map> maps = new ArrayList<>();
HashMap<String, String> map = new HashMap<>();
map.put("storagevehicle_code","1");
map.put("storagevehicle_name","sadfs");
maps.add(map);
HashMap<String, String> map2 = new HashMap<>();
map2.put("storagevehicle_code","2");
map2.put("storagevehicle_name","sdfd");
maps.add(map2);
boolean age = array.stream().filter(row -> ((JSONObject) row).getString("age").equals("18")).findAny().isPresent();
System.out.println(age);
}
public static void a(String name) {
}
public static void b(String name) {
}
}