diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/controller/BusProcessNewController.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/controller/BusProcessNewController.java index cad134c6..a494e2ca 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_main/datas/controller/BusProcessNewController.java +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/controller/BusProcessNewController.java @@ -11,10 +11,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.activiti.engine.task.Task; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; - -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.util.List; @@ -68,6 +65,17 @@ public class BusProcessNewController extends BaseAction { return iBusProcessNewService.selectBusProcessNew(taskId); } + @ApiOperation(value = "问答中心(第一个人回答以后删除其他人的代办任务以及OA提醒)") + @PostMapping("/deleteReplyToenNotice") + public List deleteReplyToenNotice(@RequestParam("taskId") String taskId, @RequestParam("answerer") String answerer){ + return iBusProcessNewService.deleteReplyToenNotice(taskId,answerer); + } + + @ApiOperation(value = "问答中心(第一个人回答以后删除其他人的代办任务以及OA提醒)") + @GetMapping("/selectAskId") + public String selectAskId(@RequestParam("taskId") String taskId){ + return iBusProcessNewService.selectAskId(taskId); + } } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/controller/OASendLogController.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/controller/OASendLogController.java new file mode 100644 index 00000000..1aeb1c63 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/controller/OASendLogController.java @@ -0,0 +1,15 @@ +package com.ydw.bat.wkflow.business_main.datas.controller; + +import com.tmsps.fk.common.base.action.BaseAction; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +@Api(description = "OA删除日志查询") +@RestController +@RequestMapping("/datas/OASendLogController") +public class OASendLogController extends BaseAction { + + +} diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/entity/OASendLog.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/entity/OASendLog.java new file mode 100644 index 00000000..44868f01 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/entity/OASendLog.java @@ -0,0 +1,47 @@ +package com.ydw.bat.wkflow.business_main.datas.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.util.Date; + +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("OA_Send_LOG") +@ApiModel(value="OASendLog对象", description="") +@Data +public class OASendLog { + + @ApiModelProperty(value = "主键") + @TableId(value = "ID", type = IdType.UUID) + private String id; + + @ApiModelProperty(value = "类型") + @TableField("TYPE") + private String type; + + @ApiModelProperty(value = "日志") + @TableField("MSG_LOG") + private String msgLog; + + @ApiModelProperty(value = "方法") + @TableField("MEANS") + private String means; + + @TableField("CREATE_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @TableField("UPDATE_TIME") + @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss") + private Date updateTime; + +} diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/mapper/BusProcessNewMapper.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/mapper/BusProcessNewMapper.java index 9743050e..96d425a9 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_main/datas/mapper/BusProcessNewMapper.java +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/mapper/BusProcessNewMapper.java @@ -33,5 +33,4 @@ public interface BusProcessNewMapper extends BaseMapper { List everyDayTenOlock(); List everyDayTenOlockSAM(); - } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/mapper/OASendLogMapper.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/mapper/OASendLogMapper.java new file mode 100644 index 00000000..98a64d49 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/mapper/OASendLogMapper.java @@ -0,0 +1,8 @@ +package com.ydw.bat.wkflow.business_main.datas.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ydw.bat.wkflow.business_main.datas.entity.OASendLog; + +public interface OASendLogMapper extends BaseMapper { + +} diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessNewService.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessNewService.java index 2a6378cf..5e66d3e5 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessNewService.java +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/IBusProcessNewService.java @@ -37,4 +37,8 @@ public interface IBusProcessNewService extends IService { List everyDayTenOlockSAM(); String selectBusProcessNew(String taskId); + + List deleteReplyToenNotice(String taskId, String answerer); + + String selectAskId(String taskId); } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/OASendLogService.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/OASendLogService.java new file mode 100644 index 00000000..9fba0dc1 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/OASendLogService.java @@ -0,0 +1,8 @@ +package com.ydw.bat.wkflow.business_main.datas.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ydw.bat.wkflow.business_main.datas.entity.OASendLog; + +public interface OASendLogService extends IService { + +} diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/BusProcessNewServiceImpl.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/BusProcessNewServiceImpl.java index b36fd699..b4bcc0b1 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/BusProcessNewServiceImpl.java +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/BusProcessNewServiceImpl.java @@ -1,13 +1,19 @@ package com.ydw.bat.wkflow.business_main.datas.service.impl; import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.ydw.bat.wkflow.business_activiti.task.TodoTaskController; +import com.ydw.bat.wkflow.business_main.datas.entity.BusMes; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; import com.ydw.bat.wkflow.business_main.datas.mapper.BusProcessNewMapper; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ydw.bat.wkflow.business_oa.webService.service.impl.WebServiceOAServiceImpl; import org.activiti.engine.TaskService; import org.activiti.engine.task.Task; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; @@ -24,8 +30,12 @@ import java.util.stream.Collectors; @Service public class BusProcessNewServiceImpl extends ServiceImpl implements IBusProcessNewService { + @Autowired private TaskService taskService; + @Autowired + private WebServiceOAServiceImpl webServiceOAService; + /* * @Author yuzhong * @Description @@ -93,15 +103,37 @@ public class BusProcessNewServiceImpl extends ServiceImpl deleteReplyToenNotice(String taskId, String answerer) { + QueryWrapper objectQueryWrapper = new QueryWrapper<>(); + objectQueryWrapper.eq("TASK_ID",taskId); + List busProcessNews = baseMapper.selectList(objectQueryWrapper); + //删除OA待办 + if(StringUtils.isNotBlank(busProcessNews.get(0).getPId())){ + webServiceOAService.deleteOAByPid(busProcessNews.get(0).getPId()); + } + return null; + } + + @Override + public String selectAskId(String taskId) { + if(StringUtils.isNotBlank(taskId)){ + QueryWrapper objectQueryWrapper = new QueryWrapper<>(); + objectQueryWrapper.eq("TASK_ID",taskId); + List busProcessNews = baseMapper.selectList(objectQueryWrapper); + if(!busProcessNews.isEmpty()){ + String mesg = busProcessNews.get(0).getMesg(); + JSONObject jsonObject = JSON.parseObject(mesg); + JSONObject askQuestions = jsonObject.getJSONObject("askQuestions"); + String id = askQuestions.getString("id"); + return id; + } + } + return null; + } } diff --git a/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/OASendLogServiceImpl.java b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/OASendLogServiceImpl.java new file mode 100644 index 00000000..e4fa59d5 --- /dev/null +++ b/src/main/java/com/ydw/bat/wkflow/business_main/datas/service/impl/OASendLogServiceImpl.java @@ -0,0 +1,19 @@ +package com.ydw.bat.wkflow.business_main.datas.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ydw.bat.wkflow.business_main.datas.entity.OASendLog; +import com.ydw.bat.wkflow.business_main.datas.mapper.OASendLogMapper; +import com.ydw.bat.wkflow.business_main.datas.service.OASendLogService; +import org.springframework.stereotype.Service; + +@Service +public class OASendLogServiceImpl extends ServiceImpl implements OASendLogService { + + public String addOASendLog(OASendLog oaSendLog) { + int insert = baseMapper.insert(oaSendLog); + if(insert==1){ + return "1"; + } + return null; + } +} diff --git a/src/main/java/com/ydw/bat/wkflow/business_oa/webService/service/impl/WebServiceOAServiceImpl.java b/src/main/java/com/ydw/bat/wkflow/business_oa/webService/service/impl/WebServiceOAServiceImpl.java index a5cbff85..77763ec9 100644 --- a/src/main/java/com/ydw/bat/wkflow/business_oa/webService/service/impl/WebServiceOAServiceImpl.java +++ b/src/main/java/com/ydw/bat/wkflow/business_oa/webService/service/impl/WebServiceOAServiceImpl.java @@ -8,6 +8,7 @@ import com.ydw.bat.wkflow.business_main.datas.entity.*; import com.ydw.bat.wkflow.business_main.datas.mapper.SendTodoLogMapper; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNameService; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; +import com.ydw.bat.wkflow.business_main.datas.service.impl.OASendLogServiceImpl; import com.ydw.bat.wkflow.business_mq.service.CreateMQService; import com.ydw.bat.wkflow.business_oa.common.WebServiceConf; import com.ydw.bat.wkflow.business_oa.utils.OkHttpUtil; @@ -72,6 +73,9 @@ public class WebServiceOAServiceImpl implements WebServiceOAService { @Autowired private IBusProcessNameService iBusProcessNameService; + @Autowired + private OASendLogServiceImpl oaSendLogService; + public WebServiceOAServiceImpl(){ credentials = Credentials.basic(api_key,api_secret); } @@ -214,6 +218,12 @@ public class WebServiceOAServiceImpl implements WebServiceOAService { map.put("list",notifyTodoSendContextArrayList); net.sf.json.JSONObject jsonObject = net.sf.json.JSONObject.fromObject(map); log.info("调用MQ数据!!!:"+jsonObject.toString()); + OASendLog oaSendLog = new OASendLog(); + oaSendLog.setType("delete"); + oaSendLog.setCreateTime(new Date()); + oaSendLog.setMeans("deleteOAByPid"); + oaSendLog.setMsgLog(jsonObject.toString()); + oaSendLogService.addOASendLog(oaSendLog); oaService.setTodoDeleteMq(jsonObject.toString()); } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerAfter.java b/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerAfter.java index 90a00879..4171e321 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerAfter.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerAfter.java @@ -92,6 +92,7 @@ public class answerAfter implements TaskListener { } } // 提交时,结束流程,保存当前节点信息 + delegateTask.setVariable("flag",1); BussUtils.endFunAll(delegateTask, prcName, busBean, object, "0", busProcessNameService, "27"); } } diff --git a/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerBefore.java b/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerBefore.java index d1e861a0..d8d38401 100644 --- a/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerBefore.java +++ b/src/main/java/com/ydw/bat/wkflow/listener/quizOrAnswer/answerBefore.java @@ -1,5 +1,7 @@ package com.ydw.bat.wkflow.listener.quizOrAnswer; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ydw.bat.wkflow.business_main.datas.entity.BusProcessNew; import com.ydw.bat.wkflow.business_main.datas.service.IBusProcessNewService; @@ -28,7 +30,7 @@ public class answerBefore implements TaskListener { CreateMQService oaService = SpringContextUtil.getBean(CreateMQService.class); // 发送 oa 待办 设置 跳转页面 router ? 后面流程类型 - one1.setLink("standQA?prcType=27"); + one1.setLink("questions2?prcType=27&taskId="+one1.getTaskId()); one1.setTaskInfo(delegateTask.getName()); oaService.sendTodoMq(one1); } diff --git a/src/main/resources/mapper/datas/BusProcessNewMapper.xml b/src/main/resources/mapper/datas/BusProcessNewMapper.xml index e3a7a9b0..bd2df8df 100644 --- a/src/main/resources/mapper/datas/BusProcessNewMapper.xml +++ b/src/main/resources/mapper/datas/BusProcessNewMapper.xml @@ -61,6 +61,4 @@ CONCAT( date_sub( DATE_FORMAT( NOW(), '%Y-%m-%d' ), INTERVAL 1 DAY), '%')) and TASK_INFO = '标准化活动参会流程-流程结束' - - diff --git a/src/main/resources/mapper/datas/OASendLog.xml b/src/main/resources/mapper/datas/OASendLog.xml new file mode 100644 index 00000000..2641519b --- /dev/null +++ b/src/main/resources/mapper/datas/OASendLog.xml @@ -0,0 +1,5 @@ + + + + +