不合格处理:OA回调新增结束标识字段,每个节点审批结束都更新一次流程信息
| | |
| | | private final InsUnqualifiedHandlerFileService unqualifiedHandlerFileService; |
| | | private static final String REQUESTID = "requestId"; |
| | | private static final String CHECKRESULT = "CHECKRESULT"; |
| | | private static final String ENDFLAG = "jsbs";//结束标识,只有退回/结束等于1 |
| | | |
| | | @ApiOperation(value = "提交OA") |
| | | @PostMapping("/pushOA") |
| | |
| | | try { |
| | | Long oaWorkId = response.getLong(REQUESTID); |
| | | String checkResult = response.getString(CHECKRESULT); |
| | | unqualifiedHandlerService.unqualifiedHandlerOACallback(oaWorkId, checkResult,response); |
| | | String endFlag = response.getString(ENDFLAG); |
| | | unqualifiedHandlerService.unqualifiedHandlerOACallback(oaWorkId, checkResult,endFlag,response); |
| | | } catch (Exception e) { |
| | | log.error("oa回调失败: " + e.getMessage()); |
| | | msg = OAProcess.oaReturnMsg(1, "oa回调失败: " + e.getMessage()); |
| | |
| | | |
| | | Result pushOA(PushOADto pushOADto); |
| | | |
| | | void unqualifiedHandlerOACallback(Long oaWorkId, String checkResult, JSONObject response); |
| | | void unqualifiedHandlerOACallback(Long oaWorkId, String checkResult,String endFlag, JSONObject response); |
| | | |
| | | List<CommonOa> getOaFlow(Integer id); |
| | | |
| | |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void unqualifiedHandlerOACallback(Long oaWorkId, String checkResult, JSONObject response) { |
| | | public void unqualifiedHandlerOACallback(Long oaWorkId, String checkResult,String endFlag, JSONObject response) { |
| | | // 没有这个就结束 |
| | | Long count1 = baseMapper.selectCount(Wrappers.<InsUnqualifiedHandler>lambdaQuery() |
| | | .eq(InsUnqualifiedHandler::getRequestId, Integer.valueOf(String.valueOf(oaWorkId)))); |
| | |
| | | clcsMap.put("1","退货"); |
| | | clcsMap.put("2","部分退货"); |
| | | clcsMap.put("3","降级使用"); |
| | | //流程结束才修改oa状态 |
| | | boolean hasChangeOaState = StringUtils.isNotBlank(endFlag) && endFlag.equals("1"); |
| | | //oa状态:3通过 4驳回 |
| | | Integer oaState = "1".equals(checkResult) ? 3 : 4; |
| | | baseMapper.update(null, new LambdaUpdateWrapper<InsUnqualifiedHandler>() |
| | | .set(InsUnqualifiedHandler::getOaState, oaState) |
| | | .set(hasChangeOaState,InsUnqualifiedHandler::getOaState, oaState) |
| | | .set(InsUnqualifiedHandler::getClassification,response.getString("flclassification")) |
| | | .eq(InsUnqualifiedHandler::getRequestId, Integer.valueOf(String.valueOf(oaWorkId)))); |
| | | //保存oa审批流程记录 |