完善表单
This commit is contained in:
parent
2f04c79eda
commit
e26b4468e6
@ -7,13 +7,11 @@ import ink.wgink.module.activiti.pojo.dtos.ActivitiProcdefDTO;
|
||||
import ink.wgink.module.activiti.service.activiti.IActivitiProcdefService;
|
||||
import ink.wgink.pojo.ListPage;
|
||||
import ink.wgink.pojo.result.ErrorResult;
|
||||
import ink.wgink.pojo.result.SuccessResult;
|
||||
import ink.wgink.pojo.result.SuccessResultList;
|
||||
import io.swagger.annotations.*;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -32,6 +30,17 @@ public class ActivitiProcdefController extends DefaultBaseController {
|
||||
@Autowired
|
||||
private IActivitiProcdefService activitiProcdefService;
|
||||
|
||||
@ApiOperation(value = "删除流程", notes = "删除流程接口")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "deploymentId", value = "部署ID", paramType = "path")
|
||||
})
|
||||
@ApiResponses({@ApiResponse(code = 400, message = "请求失败", response = ErrorResult.class)})
|
||||
@DeleteMapping("delete/{deploymentId}")
|
||||
public SuccessResult delete(@PathVariable("deploymentId") String deploymentId) {
|
||||
activitiProcdefService.delete(deploymentId);
|
||||
return new SuccessResult();
|
||||
}
|
||||
|
||||
@ApiOperation(value = "部署分页列表", notes = "部署分页列表接口")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "Integer", defaultValue = "1"),
|
||||
|
@ -2,6 +2,7 @@ package ink.wgink.module.activiti.controller.api.oa;
|
||||
|
||||
import ink.wgink.common.base.DefaultBaseController;
|
||||
import ink.wgink.interfaces.consts.ISystemConstant;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaHistoryTaskDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaProcdefDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaTaskDTO;
|
||||
import ink.wgink.module.activiti.service.oa.IOaService;
|
||||
@ -53,10 +54,38 @@ public class OaController extends DefaultBaseController {
|
||||
return oaService.listPageProcdef(page.getPage(), page.getRows());
|
||||
}
|
||||
|
||||
@ApiOperation(value = "我的任务(待办)", notes = "我的任务(待办)接口")
|
||||
@ApiOperation(value = "我的任务(待办)列表", notes = "我的任务(待办)列表接口")
|
||||
@GetMapping("list-task-of-mine")
|
||||
public List<OaTaskDTO> listTaskOfMine() {
|
||||
return oaService.listTaskOfMine();
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "我的任务(待办)分页列表", notes = "我的任务(待办)分页列表接口")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
|
||||
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
|
||||
})
|
||||
@GetMapping("listpage-task-of-mine")
|
||||
public SuccessResultList<List<OaTaskDTO>> listPageTaskOfMine(ListPage page) {
|
||||
return oaService.listPageTaskOfMine(page.getPage(), page.getRows());
|
||||
}
|
||||
|
||||
@ApiOperation(value = "我的历史任务(已办)列表", notes = "我的历史任务(已办)列表接口")
|
||||
@GetMapping("list-history-task-of-mine")
|
||||
public List<OaHistoryTaskDTO> listHistoryTaskOfMine() {
|
||||
return oaService.listHistoryTaskOfMine();
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "我的历史任务(已办)分页列表", notes = "我的历史任务(已办)分页列表接口")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "page", value = "当前页码", paramType = "query", dataType = "int", defaultValue = "1"),
|
||||
@ApiImplicitParam(name = "rows", value = "显示数量", paramType = "query", dataType = "int", defaultValue = "20"),
|
||||
})
|
||||
@GetMapping("listpage-history-task-of-mine")
|
||||
public SuccessResultList<List<OaHistoryTaskDTO>> listPageHistoryTaskOfMine(ListPage page) {
|
||||
return oaService.listPageHistoryTaskOfMine(page.getPage(), page.getRows());
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -45,6 +45,24 @@ public class OaFormReportController extends DefaultBaseController {
|
||||
return new SuccessResult();
|
||||
}
|
||||
|
||||
@ApiOperation(value = "更新表单", notes = "更新表单接口")
|
||||
@ApiImplicitParams({
|
||||
@ApiImplicitParam(name = "taskId", value = "任务ID", paramType = "path"),
|
||||
@ApiImplicitParam(name = "formCode", value = "表单编码", paramType = "path"),
|
||||
@ApiImplicitParam(name = "formVersion", value = "表单版本", paramType = "path"),
|
||||
@ApiImplicitParam(name = "uid", value = "表单主键", paramType = "path")
|
||||
})
|
||||
@PutMapping("update/task-id/{taskId}/code/{formCode}/version/{formVersion}/uid/{uid}")
|
||||
public SuccessResult update(@PathVariable("taskId") String taskId,
|
||||
@PathVariable("formCode") String formCode,
|
||||
@PathVariable("formVersion") Integer formVersion,
|
||||
@PathVariable("uid") String uid,
|
||||
@RequestBody Map<String, Object> params) {
|
||||
checkParams(params);
|
||||
oaFormReportService.update(taskId, formCode, formVersion, uid, params);
|
||||
return new SuccessResult();
|
||||
}
|
||||
|
||||
private void checkParams(Map<String, Object> body) {
|
||||
if (body.isEmpty()) {
|
||||
throw new ParamsException("提交内容不能为空");
|
||||
|
@ -0,0 +1,61 @@
|
||||
package ink.wgink.module.activiti.controller.route.oa;
|
||||
|
||||
import ink.wgink.common.base.DefaultBaseController;
|
||||
import ink.wgink.interfaces.consts.ISystemConstant;
|
||||
import ink.wgink.module.activiti.service.oa.IOaFormReportRouteService;
|
||||
import io.swagger.annotations.Api;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
/**
|
||||
* @ClassName: OaController
|
||||
* @Description: Oa管理
|
||||
* @Author: wanggeng
|
||||
* @Date: 2022/3/23 09:54
|
||||
* @Version: 1.0
|
||||
*/
|
||||
@Api(tags = ISystemConstant.ROUTE_TAGS_PREFIX + "oa管理")
|
||||
@Controller
|
||||
@RequestMapping(ISystemConstant.ROUTE_PREFIX + "/oa-form-report")
|
||||
public class OaFormReportRouteController extends DefaultBaseController {
|
||||
|
||||
@Autowired
|
||||
private IOaFormReportRouteService oaFormReportRouteService;
|
||||
|
||||
@GetMapping("save/definition-id/{processDefinitionId}/code/{formCode}/version/{formVersion}")
|
||||
public void get(@PathVariable("processDefinitionId") String processDefinitionId,
|
||||
@PathVariable("formCode") String formCode,
|
||||
@PathVariable("formVersion") Integer formVersion,
|
||||
HttpSession httpSession,
|
||||
HttpServletRequest httpServletRequest,
|
||||
HttpServletResponse httpServletResponse) {
|
||||
oaFormReportRouteService.save(processDefinitionId, formCode, formVersion, httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@GetMapping("update/task-id/{taskId}/code/{formCode}/version/{formVersion}")
|
||||
public void update(@PathVariable("taskId") String taskId,
|
||||
@PathVariable("formCode") String formCode,
|
||||
@PathVariable("formVersion") Integer formVersion,
|
||||
HttpSession httpSession,
|
||||
HttpServletRequest httpServletRequest,
|
||||
HttpServletResponse httpServletResponse) {
|
||||
oaFormReportRouteService.update(taskId, formCode, formVersion, httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@GetMapping("show/code/{formCode}/version/{formVersion}")
|
||||
public void show(@PathVariable("formCode") String formCode,
|
||||
@PathVariable("formVersion") Integer formVersion,
|
||||
HttpSession httpSession,
|
||||
HttpServletRequest httpServletRequest,
|
||||
HttpServletResponse httpServletResponse) {
|
||||
oaFormReportRouteService.show(formCode, formVersion, httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
}
|
@ -17,7 +17,7 @@ import org.springframework.web.servlet.ModelAndView;
|
||||
*/
|
||||
@Api(tags = ISystemConstant.ROUTE_TAGS_PREFIX + "oa管理")
|
||||
@Controller
|
||||
@RequestMapping(ISystemConstant.ROUTE_PREFIX + "/oa")
|
||||
@RequestMapping(ISystemConstant.ROUTE_PREFIX + "/oa")
|
||||
public class OaRouteController extends DefaultBaseController {
|
||||
|
||||
@GetMapping("list-procdef")
|
||||
@ -26,4 +26,10 @@ public class OaRouteController extends DefaultBaseController {
|
||||
return mv;
|
||||
}
|
||||
|
||||
@GetMapping("list-task-of-mine")
|
||||
public ModelAndView listTaskOfMine() {
|
||||
ModelAndView mv = new ModelAndView("oa/list-task-of-mine");
|
||||
return mv;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -18,8 +18,12 @@ public class NodeFieldDTO {
|
||||
private String formId;
|
||||
@ApiModelProperty(name = "deploymentId", value = "部署ID")
|
||||
private String deploymentId;
|
||||
@ApiModelProperty(name = "flowNodeId", value = "节点")
|
||||
@ApiModelProperty(name = "flowNodeIndex", value = "节点下标")
|
||||
private String flowNodeIndex;
|
||||
@ApiModelProperty(name = "flowNodeId", value = "节点ID")
|
||||
private String flowNodeId;
|
||||
@ApiModelProperty(name = "flowNodeName", value = "节点名称")
|
||||
private String flowNodeName;
|
||||
@ApiModelProperty(name = "fieldName", value = "字段名")
|
||||
private String fieldName;
|
||||
@ApiModelProperty(name = "isVisible", value = "是否可见")
|
||||
@ -51,14 +55,30 @@ public class NodeFieldDTO {
|
||||
this.deploymentId = deploymentId;
|
||||
}
|
||||
|
||||
public String getFlowNodeIndex() {
|
||||
return flowNodeIndex == null ? "" : flowNodeIndex.trim();
|
||||
}
|
||||
|
||||
public void setFlowNodeIndex(String flowNodeIndex) {
|
||||
this.flowNodeIndex = flowNodeIndex;
|
||||
}
|
||||
|
||||
public String getFlowNodeId() {
|
||||
return flowNodeId;
|
||||
return flowNodeId == null ? "" : flowNodeId.trim();
|
||||
}
|
||||
|
||||
public void setFlowNodeId(String flowNodeId) {
|
||||
this.flowNodeId = flowNodeId;
|
||||
}
|
||||
|
||||
public String getFlowNodeName() {
|
||||
return flowNodeName == null ? "" : flowNodeName.trim();
|
||||
}
|
||||
|
||||
public void setFlowNodeName(String flowNodeName) {
|
||||
this.flowNodeName = flowNodeName;
|
||||
}
|
||||
|
||||
public String getFieldName() {
|
||||
return fieldName;
|
||||
}
|
||||
|
@ -0,0 +1,69 @@
|
||||
package ink.wgink.module.activiti.pojo.dtos.oa;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
|
||||
/**
|
||||
* @ClassName: OaTaskDTO
|
||||
* @Description: oa任务
|
||||
* @Author: wanggeng
|
||||
* @Date: 2022/3/23 09:33
|
||||
* @Version: 1.0
|
||||
*/
|
||||
@ApiModel
|
||||
public class OaHistoryTaskDTO {
|
||||
|
||||
private String taskId;
|
||||
private String taskName;
|
||||
private String taskDescription;
|
||||
private String formKey;
|
||||
private String formCode;
|
||||
private Integer formVersion;
|
||||
|
||||
public String getTaskId() {
|
||||
return taskId == null ? "" : taskId.trim();
|
||||
}
|
||||
|
||||
public void setTaskId(String taskId) {
|
||||
this.taskId = taskId;
|
||||
}
|
||||
|
||||
public String getTaskName() {
|
||||
return taskName == null ? "" : taskName.trim();
|
||||
}
|
||||
|
||||
public void setTaskName(String taskName) {
|
||||
this.taskName = taskName;
|
||||
}
|
||||
|
||||
public String getTaskDescription() {
|
||||
return taskDescription == null ? "" : taskDescription.trim();
|
||||
}
|
||||
|
||||
public void setTaskDescription(String taskDescription) {
|
||||
this.taskDescription = taskDescription;
|
||||
}
|
||||
|
||||
public String getFormKey() {
|
||||
return formKey == null ? "" : formKey.trim();
|
||||
}
|
||||
|
||||
public void setFormKey(String formKey) {
|
||||
this.formKey = formKey;
|
||||
}
|
||||
|
||||
public String getFormCode() {
|
||||
return formCode == null ? "" : formCode.trim();
|
||||
}
|
||||
|
||||
public void setFormCode(String formCode) {
|
||||
this.formCode = formCode;
|
||||
}
|
||||
|
||||
public Integer getFormVersion() {
|
||||
return formVersion == null ? 0 : formVersion;
|
||||
}
|
||||
|
||||
public void setFormVersion(Integer formVersion) {
|
||||
this.formVersion = formVersion;
|
||||
}
|
||||
}
|
@ -3,6 +3,7 @@ package ink.wgink.module.activiti.pojo.vos.oa;
|
||||
import ink.wgink.annotation.CheckEmptyAnnotation;
|
||||
import ink.wgink.annotation.CheckListAnnotation;
|
||||
import ink.wgink.annotation.CheckListBeanAnnotation;
|
||||
import ink.wgink.annotation.CheckNumberAnnotation;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
@ -17,6 +18,9 @@ import java.util.List;
|
||||
@ApiModel
|
||||
public class NodeFieldUpdateVO {
|
||||
|
||||
@ApiModelProperty(name = "flowNodeIndex", value = "流程节点下标")
|
||||
@CheckNumberAnnotation(name = "流程节点下标")
|
||||
private Integer flowNodeIndex;
|
||||
@ApiModelProperty(name = "deploymentId", value = "部署ID")
|
||||
@CheckEmptyAnnotation(name = "部署ID")
|
||||
private String deploymentId;
|
||||
@ -26,10 +30,21 @@ public class NodeFieldUpdateVO {
|
||||
@ApiModelProperty(name = "flowNodeId", value = "流程节点ID")
|
||||
@CheckEmptyAnnotation(name = "流程节点ID")
|
||||
private String flowNodeId;
|
||||
@ApiModelProperty(name = "flowNodeName", value = "流程节点名称")
|
||||
@CheckEmptyAnnotation(name = "流程节点名称")
|
||||
private String flowNodeName;
|
||||
@CheckListAnnotation(name = "表单字段列表")
|
||||
@CheckListBeanAnnotation
|
||||
private List<NodeFieldVO> formFields;
|
||||
|
||||
public Integer getFlowNodeIndex() {
|
||||
return flowNodeIndex == null ? 0 : flowNodeIndex;
|
||||
}
|
||||
|
||||
public void setFlowNodeIndex(Integer flowNodeIndex) {
|
||||
this.flowNodeIndex = flowNodeIndex;
|
||||
}
|
||||
|
||||
public String getDeploymentId() {
|
||||
return deploymentId;
|
||||
}
|
||||
@ -54,6 +69,14 @@ public class NodeFieldUpdateVO {
|
||||
this.flowNodeId = flowNodeId;
|
||||
}
|
||||
|
||||
public String getFlowNodeName() {
|
||||
return flowNodeName == null ? "" : flowNodeName.trim();
|
||||
}
|
||||
|
||||
public void setFlowNodeName(String flowNodeName) {
|
||||
this.flowNodeName = flowNodeName;
|
||||
}
|
||||
|
||||
public List<NodeFieldVO> getFormFields() {
|
||||
return formFields;
|
||||
}
|
||||
|
@ -16,6 +16,8 @@ import java.util.List;
|
||||
*/
|
||||
public interface IActivitiProcdefService {
|
||||
|
||||
void delete(String deploymentId);
|
||||
|
||||
SuccessResultList<List<ActivitiProcdefDTO>> listPage(int page, int rows);
|
||||
|
||||
List<ActivitiFlowNodeDTO> listFlowNodeByDeploymentId(String deploymentId);
|
||||
|
@ -10,6 +10,7 @@ import ink.wgink.pojo.result.SuccessResultList;
|
||||
import org.activiti.bpmn.model.Process;
|
||||
import org.activiti.bpmn.model.*;
|
||||
import org.activiti.engine.RepositoryService;
|
||||
import org.activiti.engine.RuntimeService;
|
||||
import org.activiti.engine.repository.ProcessDefinition;
|
||||
import org.activiti.engine.repository.ProcessDefinitionQuery;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
@ -31,6 +32,13 @@ public class ActivitiProcdefServiceImpl extends DefaultBaseService implements IA
|
||||
|
||||
@Autowired
|
||||
private RepositoryService repositoryService;
|
||||
@Autowired
|
||||
private RuntimeService runtimeService;
|
||||
|
||||
@Override
|
||||
public void delete(String deploymentId) {
|
||||
repositoryService.deleteDeployment(deploymentId, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SuccessResultList<List<ActivitiProcdefDTO>> listPage(int page, int rows) {
|
||||
|
@ -21,6 +21,7 @@ import ink.wgink.module.form.service.design.IFormFieldService;
|
||||
import ink.wgink.module.form.service.design.IFormService;
|
||||
import ink.wgink.pojo.result.SuccessResultList;
|
||||
import org.activiti.bpmn.model.BpmnModel;
|
||||
import org.activiti.bpmn.model.EndEvent;
|
||||
import org.activiti.bpmn.model.StartEvent;
|
||||
import org.activiti.editor.constants.ModelDataJsonConstants;
|
||||
import org.activiti.editor.language.json.converter.BpmnJsonConverter;
|
||||
@ -143,22 +144,28 @@ public class ActivitiServiceImpl extends DefaultBaseService implements IActiviti
|
||||
if (formFieldPOs.isEmpty()) {
|
||||
throw new SystemException("表单字段为空");
|
||||
}
|
||||
activitiFlowNodeDTOs.forEach(activitiFlowNodeDTO -> {
|
||||
for (int i = 0; i < activitiFlowNodeDTOs.size(); i++) {
|
||||
ActivitiFlowNodeDTO activitiFlowNodeDTO = activitiFlowNodeDTOs.get(i);
|
||||
if (StringUtils.equals(activitiFlowNodeDTO.getType(), EndEvent.class.getSimpleName())) {
|
||||
return;
|
||||
}
|
||||
NodeFieldUpdateVO nodeFieldUpdateVO = new NodeFieldUpdateVO();
|
||||
nodeFieldUpdateVO.setFlowNodeIndex(i);
|
||||
nodeFieldUpdateVO.setFlowNodeId(activitiFlowNodeDTO.getId());
|
||||
nodeFieldUpdateVO.setFlowNodeName(activitiFlowNodeDTO.getName());
|
||||
nodeFieldUpdateVO.setFormId(formPO.getFormId());
|
||||
nodeFieldUpdateVO.setDeploymentId(deploymentId);
|
||||
List<NodeFieldVO> nodeFieldVOs = new ArrayList<>();
|
||||
formFieldPOs.forEach(formFieldPO -> {
|
||||
for (FormFieldPO formFieldPO : formFieldPOs) {
|
||||
NodeFieldVO nodeFieldVO = new NodeFieldVO();
|
||||
nodeFieldVO.setFieldName(formFieldPO.getFieldName());
|
||||
nodeFieldVO.setIsVisible(1);
|
||||
nodeFieldVO.setIsEditable(1);
|
||||
nodeFieldVOs.add(nodeFieldVO);
|
||||
});
|
||||
}
|
||||
nodeFieldUpdateVO.setFormFields(nodeFieldVOs);
|
||||
nodeFieldService.save(nodeFieldUpdateVO);
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
private String getFormIdByStartEvent(List<ActivitiFlowNodeDTO> activitiFlowNodeDTOs) {
|
||||
|
@ -0,0 +1,22 @@
|
||||
package ink.wgink.module.activiti.service.oa;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
|
||||
/**
|
||||
* @ClassName: IOaFormReportRouteService
|
||||
* @Description: oa表单提交
|
||||
* @Author: wanggeng
|
||||
* @Date: 2022/3/24 09:31
|
||||
* @Version: 1.0
|
||||
*/
|
||||
public interface IOaFormReportRouteService {
|
||||
|
||||
void save(String processDefinitionId, String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
void update(String taskId, String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
void show(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
}
|
@ -1,8 +1,5 @@
|
||||
package ink.wgink.module.activiti.service.oa;
|
||||
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaTaskDTO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
@ -28,6 +25,14 @@ public interface IOaFormReportService {
|
||||
*/
|
||||
void save(String processDefinitionId, String formCode, Integer formVersion, Map<String, Object> params);
|
||||
|
||||
|
||||
/**
|
||||
* 更新表单
|
||||
* @param taskId
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
* @param uid
|
||||
* @param params
|
||||
*/
|
||||
void update(String taskId, String formCode, Integer formVersion, String uid, Map<String, Object> params);
|
||||
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package ink.wgink.module.activiti.service.oa;
|
||||
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaHistoryTaskDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaProcdefDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaTaskDTO;
|
||||
import ink.wgink.pojo.result.SuccessResultList;
|
||||
@ -38,4 +39,29 @@ public interface IOaService {
|
||||
*/
|
||||
List<OaTaskDTO> listTaskOfMine();
|
||||
|
||||
/**
|
||||
* 我的任务(待办)分页列表
|
||||
*
|
||||
* @param page
|
||||
* @param rows
|
||||
* @return
|
||||
*/
|
||||
SuccessResultList<List<OaTaskDTO>> listPageTaskOfMine(int page, int rows);
|
||||
|
||||
/**
|
||||
* 我的历史(已办)列表
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
List<OaHistoryTaskDTO> listHistoryTaskOfMine();
|
||||
|
||||
/**
|
||||
* 我的历史(已办)分页列表
|
||||
*
|
||||
* @param page
|
||||
* @param rows
|
||||
* @return
|
||||
*/
|
||||
SuccessResultList<List<OaHistoryTaskDTO>> listPageHistoryTaskOfMine(int page, int rows);
|
||||
|
||||
}
|
||||
|
@ -31,7 +31,12 @@ public class NodeFieldFieldServiceImpl extends DefaultBaseService implements INo
|
||||
LOG.debug("删除原有配置");
|
||||
delete(nodeFieldUpdateVO.getDeploymentId(), nodeFieldUpdateVO.getFormId(), nodeFieldUpdateVO.getFlowNodeId());
|
||||
LOG.debug("新增现有配置");
|
||||
save(nodeFieldUpdateVO.getDeploymentId(), nodeFieldUpdateVO.getFormId(), nodeFieldUpdateVO.getFlowNodeId(), nodeFieldUpdateVO.getFormFields());
|
||||
save(nodeFieldUpdateVO.getDeploymentId(),
|
||||
nodeFieldUpdateVO.getFormId(),
|
||||
nodeFieldUpdateVO.getFlowNodeIndex(),
|
||||
nodeFieldUpdateVO.getFlowNodeId(),
|
||||
nodeFieldUpdateVO.getFlowNodeName(),
|
||||
nodeFieldUpdateVO.getFormFields());
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -73,13 +78,15 @@ public class NodeFieldFieldServiceImpl extends DefaultBaseService implements INo
|
||||
* @param flowNodeId
|
||||
* @param formFields
|
||||
*/
|
||||
private void save(String deploymentId, String formId, String flowNodeId, List<NodeFieldVO> formFields) {
|
||||
private void save(String deploymentId, String formId, Integer flowNodeIndex, String flowNodeId, String flowNodeName, List<NodeFieldVO> formFields) {
|
||||
formFields.forEach(nodeFieldVO -> {
|
||||
Map<String, Object> params = HashMapUtil.beanToMap(nodeFieldVO);
|
||||
params.put("nodeFieldId", UUIDUtil.getUUID());
|
||||
params.put("deploymentId", deploymentId);
|
||||
params.put("formId", formId);
|
||||
params.put("flowNodeIndex", flowNodeIndex);
|
||||
params.put("flowNodeId", flowNodeId);
|
||||
params.put("flowNodeName", flowNodeName);
|
||||
nodeFieldDao.save(params);
|
||||
});
|
||||
}
|
||||
|
@ -0,0 +1,45 @@
|
||||
package ink.wgink.module.activiti.service.oa.impl;
|
||||
|
||||
import ink.wgink.common.base.DefaultBaseService;
|
||||
import ink.wgink.module.activiti.service.oa.IOaFormReportRouteService;
|
||||
import ink.wgink.module.form.service.report.IFormReportRouteService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @ClassName: OaFormReportRouteServiceImpl
|
||||
* @Description: oa表单提交
|
||||
* @Author: wanggeng
|
||||
* @Date: 2022/3/24 09:31
|
||||
* @Version: 1.0
|
||||
*/
|
||||
@Service
|
||||
public class OaFormReportRouteServiceImpl extends DefaultBaseService implements IOaFormReportRouteService {
|
||||
|
||||
@Autowired
|
||||
private IFormReportRouteService formReportRouteService;
|
||||
|
||||
@Override
|
||||
public void save(String processDefinitionId, String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
modal.put("processDefinitionId", processDefinitionId);
|
||||
formReportRouteService.save(formCode, formVersion, httpSession, httpServletRequest, httpServletResponse, modal);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(String taskId, String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
modal.put("taskId", taskId);
|
||||
formReportRouteService.update(formCode, formVersion, httpSession, httpServletRequest, httpServletResponse, modal);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void show(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) {
|
||||
|
||||
}
|
||||
}
|
@ -41,4 +41,10 @@ public class OaFormReportServiceImpl extends DefaultBaseService implements IOaFo
|
||||
formReportService.updateProcessInstanceId(formCode, formVersion, uid, processInstance.getProcessInstanceId());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(String taskId, String formCode, Integer formVersion, String uid, Map<String, Object> params) {
|
||||
formReportService.update(formCode, formVersion, uid, params);
|
||||
taskService.complete(taskId, params);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -1,6 +1,7 @@
|
||||
package ink.wgink.module.activiti.service.oa.impl;
|
||||
|
||||
import ink.wgink.common.base.DefaultBaseService;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaHistoryTaskDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaProcdefDTO;
|
||||
import ink.wgink.module.activiti.pojo.dtos.oa.OaTaskDTO;
|
||||
import ink.wgink.module.activiti.service.oa.IOaFormReportService;
|
||||
@ -8,10 +9,9 @@ import ink.wgink.module.activiti.service.oa.IOaService;
|
||||
import ink.wgink.module.form.pojo.dtos.design.FormDTO;
|
||||
import ink.wgink.module.form.service.design.IFormService;
|
||||
import ink.wgink.pojo.result.SuccessResultList;
|
||||
import org.activiti.engine.FormService;
|
||||
import org.activiti.engine.RepositoryService;
|
||||
import org.activiti.engine.RuntimeService;
|
||||
import org.activiti.engine.TaskService;
|
||||
import org.activiti.engine.*;
|
||||
import org.activiti.engine.history.HistoricTaskInstance;
|
||||
import org.activiti.engine.history.HistoricTaskInstanceQuery;
|
||||
import org.activiti.engine.repository.ProcessDefinition;
|
||||
import org.activiti.engine.repository.ProcessDefinitionQuery;
|
||||
import org.activiti.engine.task.Task;
|
||||
@ -43,6 +43,8 @@ public class OaServiceImpl extends DefaultBaseService implements IOaService {
|
||||
@Autowired
|
||||
private TaskService taskService;
|
||||
@Autowired
|
||||
private HistoryService historyService;
|
||||
@Autowired
|
||||
private IFormService iFormService;
|
||||
|
||||
@Override
|
||||
@ -104,6 +106,25 @@ public class OaServiceImpl extends DefaultBaseService implements IOaService {
|
||||
String userId = securityComponent.getCurrentUser().getUserId();
|
||||
TaskQuery taskQuery = taskService.createTaskQuery().taskCandidateOrAssigned(userId);
|
||||
List<Task> tasks = taskQuery.list();
|
||||
return listOaTask(tasks);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SuccessResultList<List<OaTaskDTO>> listPageTaskOfMine(int page, int rows) {
|
||||
String userId = securityComponent.getCurrentUser().getUserId();
|
||||
TaskQuery taskQuery = taskService.createTaskQuery().taskCandidateOrAssigned(userId);
|
||||
List<Task> tasks = taskQuery.listPage(page - 1, rows);
|
||||
List<OaTaskDTO> oaTaskDTOs = listOaTask(tasks);
|
||||
return new SuccessResultList<>(oaTaskDTOs, page, taskQuery.count());
|
||||
}
|
||||
|
||||
/**
|
||||
* oa任务列表
|
||||
*
|
||||
* @param tasks
|
||||
* @return
|
||||
*/
|
||||
private List<OaTaskDTO> listOaTask(List<Task> tasks) {
|
||||
List<OaTaskDTO> oaTaskDTOs = new ArrayList<>();
|
||||
tasks.forEach(task -> {
|
||||
OaTaskDTO oaTaskDTO = new OaTaskDTO();
|
||||
@ -115,7 +136,7 @@ public class OaServiceImpl extends DefaultBaseService implements IOaService {
|
||||
oaTaskDTO.setOwner(task.getOwner());
|
||||
|
||||
Map<String, Object> variables = runtimeService.getVariables(task.getProcessInstanceId());
|
||||
if(variables.isEmpty()) {
|
||||
if (variables.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
oaTaskDTO.setFormCode(variables.get(IOaFormReportService.KEY_FORM_CODE).toString());
|
||||
@ -124,4 +145,33 @@ public class OaServiceImpl extends DefaultBaseService implements IOaService {
|
||||
});
|
||||
return oaTaskDTOs;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<OaHistoryTaskDTO> listHistoryTaskOfMine() {
|
||||
String userId = securityComponent.getCurrentUser().getUserId();
|
||||
HistoricTaskInstanceQuery historicTaskInstanceQuery = historyService.createHistoricTaskInstanceQuery().taskAssignee(userId);
|
||||
List<HistoricTaskInstance> historicTaskInstances = historicTaskInstanceQuery.list();
|
||||
return listOaHistoryTask(historicTaskInstances);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SuccessResultList<List<OaHistoryTaskDTO>> listPageHistoryTaskOfMine(int page, int rows) {
|
||||
String userId = securityComponent.getCurrentUser().getUserId();
|
||||
HistoricTaskInstanceQuery historicTaskInstanceQuery = historyService.createHistoricTaskInstanceQuery().taskAssignee(userId);
|
||||
List<HistoricTaskInstance> historicTaskInstances = historicTaskInstanceQuery.listPage(page - 1, rows);
|
||||
List<OaHistoryTaskDTO> oaHistoryTaskDTOs = listOaHistoryTask(historicTaskInstances);
|
||||
return new SuccessResultList<>(oaHistoryTaskDTOs, page, historicTaskInstanceQuery.count());
|
||||
}
|
||||
|
||||
private List<OaHistoryTaskDTO> listOaHistoryTask(List<HistoricTaskInstance> historicTaskInstances) {
|
||||
List<OaHistoryTaskDTO> oaHistoryTaskDTOs = new ArrayList<>();
|
||||
historicTaskInstances.forEach(historicTaskInstance -> {
|
||||
OaHistoryTaskDTO oaHistoryTaskDTO = new OaHistoryTaskDTO();
|
||||
oaHistoryTaskDTO.setTaskId(historicTaskInstance.getId());
|
||||
oaHistoryTaskDTO.setTaskName(historicTaskInstance.getName());
|
||||
|
||||
});
|
||||
return oaHistoryTaskDTOs;
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -6,7 +6,9 @@
|
||||
<id column="node_field_id" property="nodeFieldId"/>
|
||||
<result column="deployment_id" property="deploymentId"/>
|
||||
<result column="form_id" property="formId"/>
|
||||
<result column="flow_node_index" property="flowNodeIndex"/>
|
||||
<result column="flow_node_id" property="flowNodeId"/>
|
||||
<result column="flow_node_name" property="flowNodeName"/>
|
||||
<result column="field_name" property="fieldName"/>
|
||||
<result column="is_visible" property="isVisible"/>
|
||||
<result column="is_editable" property="isEditable"/>
|
||||
@ -18,7 +20,9 @@
|
||||
`node_field_id` char(36) DEFAULT NULL COMMENT '主键',
|
||||
`deployment_id` char(36) DEFAULT NULL COMMENT '流程部署ID',
|
||||
`form_id` char(36) DEFAULT NULL COMMENT '表单ID',
|
||||
`flow_node_index` int(11) DEFAULT '0' COMMENT '流程节点下标',
|
||||
`flow_node_id` char(60) DEFAULT NULL COMMENT '流程节点ID',
|
||||
`flow_node_name` varchar(255) DEFAULT NULL COMMENT '流程节点名称',
|
||||
`field_name` varchar(255) DEFAULT NULL COMMENT '字段名',
|
||||
`is_visible` int(1) DEFAULT '1' COMMENT '是否可见',
|
||||
`is_editable` int(1) DEFAULT '1' COMMENT '是否可编辑',
|
||||
@ -32,7 +36,9 @@
|
||||
node_field_id,
|
||||
deployment_id,
|
||||
form_id,
|
||||
flow_node_index,
|
||||
flow_node_id,
|
||||
flow_node_name,
|
||||
field_name,
|
||||
is_visible,
|
||||
is_editable
|
||||
@ -40,7 +46,9 @@
|
||||
#{nodeFieldId},
|
||||
#{deploymentId},
|
||||
#{formId},
|
||||
#{flowNodeIndex},
|
||||
#{flowNodeId},
|
||||
#{flowNodeName},
|
||||
#{fieldName},
|
||||
#{isVisible},
|
||||
#{isEditable}
|
||||
@ -84,7 +92,9 @@
|
||||
SELECT
|
||||
deployment_id,
|
||||
form_id,
|
||||
flow_node_id
|
||||
flow_node_index,
|
||||
flow_node_id,
|
||||
flow_node_name
|
||||
FROM
|
||||
oa_node_field
|
||||
<where>
|
||||
@ -100,9 +110,11 @@
|
||||
GROUP BY
|
||||
deployment_id,
|
||||
form_id,
|
||||
flow_node_id
|
||||
flow_node_index,
|
||||
flow_node_id,
|
||||
flow_node_name
|
||||
ORDER BY
|
||||
id
|
||||
flow_node_index
|
||||
</select>
|
||||
|
||||
<!-- 列表 -->
|
||||
@ -111,7 +123,9 @@
|
||||
node_field_id,
|
||||
deployment_id,
|
||||
form_id,
|
||||
flow_node_index,
|
||||
flow_node_id,
|
||||
flow_node_name,
|
||||
field_name,
|
||||
is_visible,
|
||||
is_editable
|
||||
@ -132,7 +146,7 @@
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY
|
||||
id
|
||||
flow_node_index
|
||||
</select>
|
||||
|
||||
</mapper>
|
@ -65,7 +65,6 @@
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{type:'checkbox', fixed: 'left'},
|
||||
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
|
||||
{field:'name', width:150, title: '模型名称', align:'center',
|
||||
templet: function(row) {
|
||||
|
@ -132,10 +132,11 @@
|
||||
return flowChatImg;
|
||||
}
|
||||
},
|
||||
{field: 'form', width: 100, title: '操作', align:'center', fixed: 'right',
|
||||
{field: 'form', width: 140, title: '操作', align:'center', fixed: 'right',
|
||||
templet: function(row) {
|
||||
return '<div class="layui-btn-group">' +
|
||||
'<button class="layui-btn layui-btn-xs" lay-event="nodeEvent">节点管理</button>'+
|
||||
'<button class="layui-btn layui-btn-xs layui-btn-danger" lay-event="deleteEvent">删除</button>'+
|
||||
'</div>';
|
||||
}
|
||||
}
|
||||
@ -184,10 +185,30 @@
|
||||
top.dialog.open({
|
||||
url: top.restAjax.path('route/oa/node-field/list-node?deploymentId={deploymentId}', [data.deploymentId]),
|
||||
title: '节点字段管理',
|
||||
width: '400px',
|
||||
width: '800px',
|
||||
height: '500px',
|
||||
onClose: function() {}
|
||||
});
|
||||
} else if(layEvent === 'deleteEvent') {
|
||||
top.dialog.msg('删除流程会删除与流程有关的所有数据,确定删除吗?', {
|
||||
time: 0,
|
||||
btn: [top.dataMessage.button.yes, top.dataMessage.button.no],
|
||||
shade: 0.3,
|
||||
yes: function (index) {
|
||||
top.dialog.close(index);
|
||||
var layIndex;
|
||||
top.restAjax.delete(top.restAjax.path('api/activiti/procdef/delete/{deploymentId}', [data.deploymentId]), {}, null, function (code, data) {
|
||||
top.dialog.msg(top.dataMessage.deleteSuccess, {time: 1000});
|
||||
reloadTable();
|
||||
}, function (code, data) {
|
||||
top.dialog.msg(data.msg);
|
||||
}, function () {
|
||||
layIndex = top.dialog.msg(top.dataMessage.deleting, {icon: 16, time: 0, shade: 0.3});
|
||||
}, function () {
|
||||
top.dialog.close(layIndex);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
@ -20,12 +20,14 @@
|
||||
<table class="layui-table">
|
||||
<col width="60">
|
||||
<col>
|
||||
<col>
|
||||
<col width="80">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>序号</th>
|
||||
<th>节点ID</th>
|
||||
<th>节点名称</th>
|
||||
<th>表单管理</th>
|
||||
</tr>
|
||||
</thead>
|
||||
@ -58,6 +60,7 @@
|
||||
var tr = '<tr>' +
|
||||
'<td>'+ i +'</td>' +
|
||||
'<td>'+ item.flowNodeId +'</td>' +
|
||||
'<td>'+ item.flowNodeName +'</td>' +
|
||||
'<td><button type="button" class="layui-btn layui-btn-xs form-config" data-flow-node-id="'+ item.flowNodeId +'" data-form-id="'+ item.formId +'">表单配置</button></td>' +
|
||||
'</tr>';
|
||||
trs += tr;
|
||||
|
@ -158,7 +158,7 @@
|
||||
var layEvent = obj.event;
|
||||
if(layEvent === 'startProcess') {
|
||||
top.dialog.open({
|
||||
url: top.restAjax.path('route/form-report/save/code/{formCode}/version/{formVersion}?processDefinitionId={processDefinitionId}', [data.formCode, data.formVersion, data.id]),
|
||||
url: top.restAjax.path('route/oa-form-report/save/definition-id/{processDefinitionId}/code/{formCode}/version/{formVersion}', [data.id, data.formCode, data.formVersion]),
|
||||
title: '发起流程',
|
||||
width: '500px',
|
||||
height: '80%',
|
||||
|
@ -0,0 +1,142 @@
|
||||
<!doctype html>
|
||||
<html lang="en" xmlns:th="http://www.thymeleaf.org">
|
||||
<head>
|
||||
<base th:href="${#request.getContextPath() + '/'} ">
|
||||
<meta charset="utf-8">
|
||||
<meta name="renderer" content="webkit">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
||||
<link rel="stylesheet" href="assets/fonts/font-awesome/css/font-awesome.css"/>
|
||||
<link rel="stylesheet" href="assets/layuiadmin/layui/css/layui.css" media="all">
|
||||
<link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
|
||||
<link rel="stylesheet" type="text/css" href="assets/js/vendor/viewer/viewer.min.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="layui-fluid layui-anim layui-anim-fadein">
|
||||
<div class="layui-row">
|
||||
<div class="layui-col-md12">
|
||||
<div class="layui-card">
|
||||
<div class="layui-card-body">
|
||||
<table class="layui-hide" id="dataTable" lay-filter="dataTable"></table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="assets/layuiadmin/layui/layui.js"></script>
|
||||
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
|
||||
<script>
|
||||
layui.config({
|
||||
base: 'assets/layuiadmin/'
|
||||
}).extend({
|
||||
index: 'lib/index'
|
||||
}).use(['index', 'table', 'laydate', 'common'], function() {
|
||||
var $ = layui.$;
|
||||
var $win = $(window);
|
||||
var table = layui.table;
|
||||
var admin = layui.admin;
|
||||
var laydate = layui.laydate;
|
||||
var common = layui.common;
|
||||
var resizeTimeout = null;
|
||||
var tableUrl = 'api/oa/listpage-task-of-mine';
|
||||
|
||||
// 初始化表格
|
||||
function initTable() {
|
||||
table.render({
|
||||
elem: '#dataTable',
|
||||
id: 'dataTable',
|
||||
url: top.restAjax.path(tableUrl, []),
|
||||
width: admin.screen() > 1 ? '100%' : '',
|
||||
height: $win.height() - 50,
|
||||
limit: 20,
|
||||
limits: [20, 40, 60, 80, 100, 200],
|
||||
request: {
|
||||
pageName: 'page',
|
||||
limitName: 'rows'
|
||||
},
|
||||
cols: [
|
||||
[
|
||||
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
|
||||
{field:'taskId', width:150, title: '主键', align:'center',
|
||||
templet: function(row) {
|
||||
var rowData = row[this.field];
|
||||
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
||||
return '-';
|
||||
}
|
||||
return rowData;
|
||||
}
|
||||
},
|
||||
{field:'taskName', width:200, title: '任务名称', align:'center',
|
||||
templet: function(row) {
|
||||
var rowData = row[this.field];
|
||||
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
||||
return '-';
|
||||
}
|
||||
return rowData;
|
||||
}
|
||||
},
|
||||
{field: 'form', width: 100, title: '操作', align:'center', fixed: 'right',
|
||||
templet: function(row) {
|
||||
if(!row.formCode || !row.formVersion) {
|
||||
return '-';
|
||||
}
|
||||
return '<div class="layui-btn-group">' +
|
||||
'<button class="layui-btn layui-btn-xs" lay-event="handleEvent">处理</button>'+
|
||||
'</div>';
|
||||
}
|
||||
}
|
||||
]
|
||||
],
|
||||
page: true,
|
||||
parseData: function(data) {
|
||||
return {
|
||||
'code': 0,
|
||||
'msg': '',
|
||||
'count': data.total,
|
||||
'data': data.rows
|
||||
};
|
||||
}
|
||||
});
|
||||
}
|
||||
// 重载表格
|
||||
function reloadTable(currentPage) {
|
||||
table.reload('dataTable', {
|
||||
url: top.restAjax.path(tableUrl, []),
|
||||
where: {},
|
||||
page: {
|
||||
curr: currentPage
|
||||
},
|
||||
height: $win.height() - 50,
|
||||
});
|
||||
}
|
||||
initTable();
|
||||
// 事件 - 页面变化
|
||||
$win.on('resize', function() {
|
||||
clearTimeout(resizeTimeout);
|
||||
resizeTimeout = setTimeout(function() {
|
||||
reloadTable();
|
||||
}, 500);
|
||||
});
|
||||
// 事件 - 搜索
|
||||
$(document).on('click', '#search', function() {
|
||||
reloadTable(1);
|
||||
});
|
||||
|
||||
|
||||
table.on('tool(dataTable)', function(obj) {
|
||||
var data = obj.data;
|
||||
var layEvent = obj.event;
|
||||
if(layEvent === 'handleEvent') {
|
||||
top.dialog.open({
|
||||
url: top.restAjax.path('route/oa-form-report/update/task-id/{taskId}/code/{formCode}/version/{formVersion}?uid={reportUid}', [data.taskId, data.formCode, data.formVersion, data.reportUid]),
|
||||
title: '编辑',
|
||||
width: '500px',
|
||||
height: '80%',
|
||||
onClose: function() {}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
@ -3,6 +3,7 @@ package ink.wgink.module.form.service.report;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @ClassName: IFormReportService
|
||||
@ -25,7 +26,7 @@ public interface IFormReportRouteService {
|
||||
void save(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
/**
|
||||
* 修改页面
|
||||
* 新增页面
|
||||
*
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
@ -33,8 +34,32 @@ public interface IFormReportRouteService {
|
||||
* @param httpServletRequest
|
||||
* @param httpServletResponse
|
||||
*/
|
||||
void save(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal);
|
||||
|
||||
/**
|
||||
* 修改页面
|
||||
*
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
* @param httpSession
|
||||
* @param httpServletRequest
|
||||
* @param httpServletResponse
|
||||
* @param modal
|
||||
*/
|
||||
void update(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
/**
|
||||
* 修改页面
|
||||
*
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
* @param httpSession
|
||||
* @param httpServletRequest
|
||||
* @param httpServletResponse
|
||||
* @param modal
|
||||
*/
|
||||
void update(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal);
|
||||
|
||||
/**
|
||||
* 详情页面
|
||||
*
|
||||
@ -46,6 +71,18 @@ public interface IFormReportRouteService {
|
||||
*/
|
||||
void show(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
/**
|
||||
* 详情页面
|
||||
*
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
* @param httpSession
|
||||
* @param httpServletRequest
|
||||
* @param httpServletResponse
|
||||
* @param modal
|
||||
*/
|
||||
void show(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal);
|
||||
|
||||
/**
|
||||
* APP新增页面
|
||||
*
|
||||
@ -57,6 +94,18 @@ public interface IFormReportRouteService {
|
||||
*/
|
||||
void appSave(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
/**
|
||||
* APP新增页面
|
||||
*
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
* @param httpSession
|
||||
* @param httpServletRequest
|
||||
* @param httpServletResponse
|
||||
* @param modal
|
||||
*/
|
||||
void appSave(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal);
|
||||
|
||||
/**
|
||||
* APP修改页面
|
||||
*
|
||||
@ -68,6 +117,18 @@ public interface IFormReportRouteService {
|
||||
*/
|
||||
void appUpdate(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
/**
|
||||
* APP修改页面
|
||||
*
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
* @param httpSession
|
||||
* @param httpServletRequest
|
||||
* @param httpServletResponse
|
||||
* @param modal
|
||||
*/
|
||||
void appUpdate(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal);
|
||||
|
||||
/**
|
||||
* APP详情页面
|
||||
*
|
||||
@ -78,4 +139,16 @@ public interface IFormReportRouteService {
|
||||
* @param httpServletResponse
|
||||
*/
|
||||
void appShow(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse);
|
||||
|
||||
/**
|
||||
* APP详情页面
|
||||
*
|
||||
* @param formCode
|
||||
* @param formVersion
|
||||
* @param httpSession
|
||||
* @param httpServletRequest
|
||||
* @param httpServletResponse
|
||||
* @param modal
|
||||
*/
|
||||
void appShow(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal);
|
||||
}
|
||||
|
@ -45,7 +45,18 @@ public class FormReportRouteServiceImpl extends DefaultBaseService implements IF
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> modal = getModal(formPO);
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getSavePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void save(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal) {
|
||||
FormPO formPO = getFormPO(formCode, formVersion);
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getSavePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@ -55,7 +66,18 @@ public class FormReportRouteServiceImpl extends DefaultBaseService implements IF
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> modal = getModal(formPO);
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getUpdatePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void update(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal) {
|
||||
FormPO formPO = getFormPO(formCode, formVersion);
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getUpdatePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@ -65,7 +87,18 @@ public class FormReportRouteServiceImpl extends DefaultBaseService implements IF
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> modal = getModal(formPO);
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getShowPageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void show(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal) {
|
||||
FormPO formPO = getFormPO(formCode, formVersion);
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getShowPageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@ -75,7 +108,18 @@ public class FormReportRouteServiceImpl extends DefaultBaseService implements IF
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> modal = getModal(formPO);
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getAppSavePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void appSave(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal) {
|
||||
FormPO formPO = getFormPO(formCode, formVersion);
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getAppSavePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@ -85,7 +129,18 @@ public class FormReportRouteServiceImpl extends DefaultBaseService implements IF
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> modal = getModal(formPO);
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getAppUpdatePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void appUpdate(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal) {
|
||||
FormPO formPO = getFormPO(formCode, formVersion);
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getAppUpdatePageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@ -95,7 +150,18 @@ public class FormReportRouteServiceImpl extends DefaultBaseService implements IF
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
Map<String, Object> modal = getModal(formPO);
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getAppShowPageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void appShow(String formCode, Integer formVersion, HttpSession httpSession, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Map<String, Object> modal) {
|
||||
FormPO formPO = getFormPO(formCode, formVersion);
|
||||
if (formPO == null) {
|
||||
return;
|
||||
}
|
||||
setModal(formPO, modal);
|
||||
showPage(modal, formCode, formPO.getAppShowPageCode(), httpSession, httpServletRequest, httpServletResponse);
|
||||
}
|
||||
|
||||
@ -124,17 +190,17 @@ public class FormReportRouteServiceImpl extends DefaultBaseService implements IF
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取模型
|
||||
* 设置模型
|
||||
*
|
||||
* @param formPO
|
||||
* @param modal
|
||||
* @return
|
||||
*/
|
||||
private Map<String, Object> getModal(FormPO formPO) {
|
||||
Map<String, Object> modal = getHashMap(10);
|
||||
private void setModal(FormPO formPO, Map<String, Object> modal) {
|
||||
modal.put("contextPath", httpServletRequest.getContextPath() + "/");
|
||||
modal.put("formName", formPO.getFormName());
|
||||
modal.put("formCode", formPO.getFormCode());
|
||||
modal.put("formVersion", formPO.getFormVersion());
|
||||
return modal;
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user