|
@@ -7,9 +7,11 @@ import com.huaxu.process.dto.TaskUserDTO;
|
|
|
import com.huaxu.process.service.UserFormService;
|
|
|
import com.huaxu.util.MessageSendUtil;
|
|
|
import com.huaxu.util.UserUtil;
|
|
|
+import org.activiti.engine.TaskService;
|
|
|
import org.activiti.engine.delegate.DelegateExecution;
|
|
|
import org.activiti.engine.delegate.Expression;
|
|
|
import org.activiti.engine.delegate.JavaDelegate;
|
|
|
+import org.activiti.engine.task.Task;
|
|
|
import org.springframework.amqp.core.AmqpTemplate;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
@@ -21,55 +23,55 @@ import java.util.Set;
|
|
|
import java.util.UUID;
|
|
|
|
|
|
@Component
|
|
|
-public class ProgressSevice implements JavaDelegate{
|
|
|
- private Expression expression;
|
|
|
+public class ProgressSevice {
|
|
|
+
|
|
|
|
|
|
@Autowired
|
|
|
private UserFormService userFormService;
|
|
|
@Autowired
|
|
|
private MessageSendUtil messageSendUtil;
|
|
|
-
|
|
|
+ @Autowired
|
|
|
+ TaskService taskService;
|
|
|
public void execute(DelegateExecution delegateExecution) throws Exception {
|
|
|
- System.out.println("serviceTask已经执行已经执行!");
|
|
|
- Map<String, Object> variables = delegateExecution.getVariables();
|
|
|
- Message message=new Message();
|
|
|
-
|
|
|
- message.setStatus(1);
|
|
|
- LoginUser currentUser = UserUtil.getCurrentUser();
|
|
|
- message.setCreateBy(currentUser.getUsername());
|
|
|
- message.setTenantId(currentUser.getTenantId());
|
|
|
- message.setMessageContent(JSONObject.toJSONString(variables));
|
|
|
- message.setMessageId(UUID.randomUUID().toString());
|
|
|
- message.setMessageType((Integer) variables.get("msgType"));
|
|
|
- message.setUrl((String) variables.get("url"));
|
|
|
- message.setMessageTemplateId((Integer) variables.get("templateId"));
|
|
|
- String value = (String) expression.getValue(delegateExecution);
|
|
|
- TaskUserDTO taskUserDTO = JSONObject.parseObject(value, TaskUserDTO.class);
|
|
|
- message.setChannel(taskUserDTO.getChannel());
|
|
|
-
|
|
|
- Set<Integer> taskUsers = userFormService.getTaskUsers(taskUserDTO);
|
|
|
- if(taskUserDTO.getUserFormFlag()==1){
|
|
|
- String assineeFormUserId = (String)variables.get("assineeFormUserId");
|
|
|
- if(assineeFormUserId!=null){
|
|
|
- String[] userIds=assineeFormUserId.split(",");
|
|
|
- for (String userId : userIds) {
|
|
|
- taskUsers.add(Integer.parseInt(userId));
|
|
|
- }
|
|
|
|
|
|
- }
|
|
|
- }
|
|
|
- if(taskUsers!=null){
|
|
|
+ }
|
|
|
+ public void runWithParticipants(DelegateExecution execution,String param){
|
|
|
+ System.out.println("serviceTask已经执行已经执行!");
|
|
|
+ Map<String, Object> variables = execution.getVariables();
|
|
|
|
|
|
- taskUsers.forEach(id->{
|
|
|
- message.setUserId(id);
|
|
|
- messageSendUtil.send(message);
|
|
|
- });
|
|
|
- }
|
|
|
+ Message message=new Message();
|
|
|
|
|
|
+ message.setStatus(1);
|
|
|
+ LoginUser currentUser = UserUtil.getCurrentUser();
|
|
|
+ message.setCreateBy(currentUser.getUsername());
|
|
|
+ message.setTenantId(currentUser.getTenantId());
|
|
|
+ message.setMessageContent(JSONObject.toJSONString(variables));
|
|
|
+ message.setMessageId(UUID.randomUUID().toString());
|
|
|
+ message.setMessageType((Integer) variables.get("msgType"));
|
|
|
+ message.setUrl((String) variables.get("url"));
|
|
|
+ message.setMessageTemplateId((Integer) variables.get("templateId"));
|
|
|
|
|
|
+ TaskUserDTO taskUserDTO = JSONObject.parseObject(param, TaskUserDTO.class);
|
|
|
+ message.setChannel(taskUserDTO.getChannel());
|
|
|
|
|
|
+ Set<Integer> taskUsers = userFormService.getTaskUsers(taskUserDTO);
|
|
|
+ if(taskUserDTO.getUserFormFlag()==1){
|
|
|
+ String assineeFormUserId = (String)variables.get("assineeFormUserId");
|
|
|
+ if(assineeFormUserId!=null){
|
|
|
+ String[] userIds=assineeFormUserId.split(",");
|
|
|
+ for (String userId : userIds) {
|
|
|
+ taskUsers.add(Integer.parseInt(userId));
|
|
|
+ }
|
|
|
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(taskUsers!=null){
|
|
|
|
|
|
+ taskUsers.forEach(id->{
|
|
|
+ message.setUserId(id);
|
|
|
+ messageSendUtil.send(message);
|
|
|
+ });
|
|
|
+ }
|
|
|
|
|
|
- }
|
|
|
+ }
|
|
|
}
|