Commit b9719a32 by chenweisong

更新

parent 54e39ddf
......@@ -11,7 +11,6 @@ import com.keymobile.rest.service.*;
import io.swagger.annotations.*;
import org.activiti.engine.*;
import org.activiti.engine.task.Task;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -28,7 +27,8 @@ public class ExcelController {
private DataInfoService dataInfoService;
@Autowired
private ProcessService processService;
@Autowired
private FeignAuthService feignAuthService;
@Autowired
private ActivityService activityService;
......@@ -73,7 +73,9 @@ public class ExcelController {
if (template.getNeedAudit() == Template.NEED_AUDIT) {
vars.put("NeedDataAudit", true);
vars.put("auditUser", "审核人");
Map audit = feignAuthService.getUserById(template.getAuditId());
CommonValidator.notNull(audit, "模板审核人不存在");
vars.put("auditUser", audit.get("name").toString());
} else {
vars.put("NeedDataAudit", false);
......@@ -89,12 +91,12 @@ public class ExcelController {
if (nrOfCompletedInstances == nrOfInstances - 1) {
if (activity.getNeedConfirm() == Activity.NEED_CONFIRM) {
vars.put("NeedConfirm", true);
vars.put("manager", "审核人");
vars.put("manager", TaskConstant.USER_NAME_MANAGER);
} else {
vars.put("NeedConfirm", false);
// if (StringUtils.isNotEmpty(template.getBackStreamAddr())) {
// vars.put("NeedDataBack", true);
// vars.put("backFlowUser", "数据回流人");
// vars.put("backFlowUser", "");
// } else {
vars.put("NeedDataBack", false);
// 流程完
......
......@@ -157,6 +157,7 @@ public class TaskController {
CommonValidator.isTrue(excelForm.getConfig() != null, "模板配置config不能为空");
// CommonValidator.isTrue(excelForm.getScopeId() != null && excelForm.getScopeId() != 0, "模板scopeId不能为空");
CommonValidator.isTrue(excelForm.getUserIdList() != null && excelForm.getUserIdList().size() != 0, "模板用户idList不能为空");
CommonValidator.isTrue(excelForm.getAuditIdList() != null && excelForm.getAuditIdList().size() != 0, "模板审核人idList不能为空");
CommonValidator.isTrue(excelForm.getNeedAudit() != null && excelForm.getNeedAudit() != 0, "模板needAudit不能为空");
CommonValidator.isFalse((StringUtils.isEmpty(excelForm.getUpStreamAddr()) && StringUtils.isNotEmpty(excelForm.getBackStreamAddr())
......@@ -167,6 +168,9 @@ public class TaskController {
Template template = new Template();
template = BeanUti.convertTo(excelForm, template);
template.setCreateAt(DateUtil.getTimestamp());
List<Long> auditIdList = excelForm.getAuditIdList();
// 指定审核人
template.setAuditId(auditIdList.get(0));
final Template finalTemplate = templateService.save(template);
// 查找当前补录所有的用户
......@@ -245,55 +249,62 @@ public class TaskController {
@ApiOperation(value = "审核通过活动")
@ApiImplicitParams({
@ApiImplicitParam(name = "taskId", value = "活动id", paramType = "path", required = true, dataType = "string")
@ApiImplicitParam(name = "taskId", value = "任务id", paramType = "path", required = true, dataType = "string"),
@ApiImplicitParam(name = "status", value = "审核状态", paramType = "path", required = true, dataType = "integer", example = "0")
})
@PostMapping(value = "/task/pass/{taskId}")
public Object passTask(@PathVariable String taskId) {
@PostMapping(value = "/task/pass/{taskId}/{status}")
public Object passTask(@PathVariable String taskId, @PathVariable int status) {
Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
CommonValidator.notNull(task, "任务不存在");
boolean pass = status == TaskConstant.STATUS_PASS;
Map vars = new HashMap();
vars.put("DataAudit", true);
String executionId = task.getExecutionId();
// 总的会签任务数量
int nrOfInstances = Integer.parseInt(runtimeService.getVariable(executionId, "nrOfInstances").toString());
// 当前获取的会签任务数量
int nrOfActiveInstances = Integer.parseInt(runtimeService.getVariable(executionId, "nrOfActiveInstances").toString());
// 已经完成的会签任务数量
int nrOfCompletedInstances = Integer.parseInt(runtimeService.getVariable(executionId, "nrOfCompletedInstances").toString());
String processInstanceId = task.getProcessInstanceId();
Process process = processService.findByProcessId(processInstanceId);
Activity activity = process.getActivity();
if (nrOfCompletedInstances == nrOfInstances - 1) {
if (activity.getNeedConfirm() == Activity.NEED_CONFIRM) {
vars.put("NeedConfirm", true);
vars.put("manager", TaskConstant.USER_NAME_MANAGER);
} else {
vars.put("NeedConfirm", false);
vars.put("DataAudit", pass);
if (pass) {
String executionId = task.getExecutionId();
// 总的会签任务数量
int nrOfInstances = Integer.parseInt(runtimeService.getVariable(executionId, "nrOfInstances").toString());
// 当前获取的会签任务数量
int nrOfActiveInstances = Integer.parseInt(runtimeService.getVariable(executionId, "nrOfActiveInstances").toString());
// 已经完成的会签任务数量
int nrOfCompletedInstances = Integer.parseInt(runtimeService.getVariable(executionId, "nrOfCompletedInstances").toString());
String processInstanceId = task.getProcessInstanceId();
Process process = processService.findByProcessId(processInstanceId);
Activity activity = process.getActivity();
if (nrOfCompletedInstances == nrOfInstances - 1) {
if (activity.getNeedConfirm() == Activity.NEED_CONFIRM) {
vars.put("NeedConfirm", true);
vars.put("manager", TaskConstant.USER_NAME_MANAGER);
} else {
vars.put("NeedConfirm", false);
// if (StringUtils.isNotEmpty(template.getBackStreamAddr())) {
// vars.put("NeedDataBack", true);
// vars.put("backFlowUser", "数据回流人");
// } else {
vars.put("NeedDataBack", false);
// 流程完
vars.put("NeedDataBack", false);
// 流程完
// }
}
activity.setStatus(Activity.STATUS_WAIT);
activityService.save(activity);
}
activity.setStatus(Activity.STATUS_WAIT);
activityService.save(activity);
}
return "审核通过成功";
taskService.complete(task.getId(), vars);
return pass ? "审核通过成功" : "审核驳回成功";
}
@ApiOperation(value = "审核驳回活动")
@ApiOperation(value = "负责人确认活动通过")
@ApiImplicitParams({
@ApiImplicitParam(name = "taskId", value = "活动id", paramType = "path", required = true, dataType = "long")
@ApiImplicitParam(name = "taskId", value = "活动id", paramType = "path", required = true, dataType = "string"),
@ApiImplicitParam(name = "status", value = "审核状态", paramType = "path", required = true, dataType = "integer", example = "0")
})
@PostMapping(value = "/task/reject/{taskId}")
public Object rejectTask(@PathVariable long taskId) {
Activity activity = activityService.findById(taskId);
// 完结活动, 流程跑完
return "审核驳回成功";
@PostMapping(value = "/task/confirm/{taskId}/{status}")
public Object confirmTask(@PathVariable String taskId, @PathVariable int status) {
Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
CommonValidator.notNull(task, "任务不存在");
boolean pass = status == TaskConstant.STATUS_PASS;
Map vars = new HashMap();
vars.put("Confirm", pass);
return "审核通过成功";
}
@ApiOperation(value = "查看当前活动进程列表", hidden = true)
......
......@@ -5,6 +5,9 @@ public interface TaskConstant {
int TASK_TYPE_PERSONAL = 1;
int TASK_TYPE_GROUP = 2;
int STATUS_PASS = 1;
int STATUS_FAIL = 0;
int MISSION_TYPE_DATA_ENTER = 1;
int MISSION_TYPE_DATA_AUDIT = 2;
int MISSION_TYPE_MANAGER_AUDIT = 3;
......@@ -22,5 +25,5 @@ public interface TaskConstant {
String USER_NAME_ADMIN = "admin";
String USER_NAME_MANAGER = "负责人";
String USER_NAME_MANAGER = "manager";
}
......@@ -21,6 +21,9 @@ public class ExcelForm {
@ApiModelProperty(required = true, name = "userIdList", value = "补录人员id集合")
private List<Long> userIdList;
@ApiModelProperty(required = true, name = "auditIdList", value = "审核人员id集合")
private List<Long> auditIdList;
@ApiModelProperty(name = "remark", value = "模板名称", required = true)
private String name;
......
......@@ -46,6 +46,9 @@ public class Template implements Serializable {
@Column(name = "back_stream_addr", columnDefinition = ("varchar(100) comment '回流地址'"))
private String backStreamAddr;
@Column(nullable = false, columnDefinition = ("bigint(22) comment '审核人userId'"))
private Long auditId;
@Column(columnDefinition = ("varchar(200) comment '备注'"))
private String remark;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment