diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java index ab20dc98..bacd188a 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/api/CourseManageApi.java @@ -772,14 +772,19 @@ public class CourseManageApi extends ApiBaseController{ } /** * 25.12.12新增,审核完成的回调接口 + * 注意需和项目经理核对: + * boe_course_HRBP_audit表里没有直接对应的字段,原表auditUser和lastAuditUser,原表auditRemark/lastRemark和auditComment */ @PostMapping("/audit/callback") public JsonResponse callbackBPM(@RequestBody BPMCallbackDto dto){ try { - - - return success(""); - + if(StringUtils.isBlank(dto.getAuditId())) + { + log.error("BPM回调失败:auditId不能为空"); + return error("auditId不能为空"); + } + hrbpAuditService.bpmRecallUpdate(dto); + return success("BPM回调成功"); } catch (Exception e) { log.error("回调错误",e); return error("error"); diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseHRBPAuditDao.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseHRBPAuditDao.java index 8f14bad0..ff635455 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseHRBPAuditDao.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/dao/CourseHRBPAuditDao.java @@ -1,5 +1,6 @@ package com.xboe.module.course.dao; +import com.xboe.module.course.dto.BPMCallbackDto; import org.springframework.stereotype.Repository; import com.xboe.core.orm.BaseDao; diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseHRBPAudit.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseHRBPAudit.java index 69fd9594..1d896371 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseHRBPAudit.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/entity/CourseHRBPAudit.java @@ -141,6 +141,28 @@ public class CourseHRBPAudit extends IdEntity { @Column(name = "last_remark") private String lastRemark; + /** + * 25.12.15新增 + * 审核类型 + */ + @Column(name = "audit_type") + private Integer auditType; + + /** + * 25.12.15新增 + * 审核结果 + * 1通过,0驳回 + */ + @Column(name = "audit_result") + private Integer auditResult; + + /** + * 25.12.15新增 + * 审核流程Id + */ + @Column(name = "audit_id") + private String auditId; + @Transient private String courseName; diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseHRBPAuditService.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseHRBPAuditService.java index e6f83feb..9f9075d3 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseHRBPAuditService.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/ICourseHRBPAuditService.java @@ -4,6 +4,7 @@ package com.xboe.module.course.service; import java.util.List; import com.xboe.common.PageList; +import com.xboe.module.course.dto.BPMCallbackDto; import com.xboe.module.course.dto.CourseHRBPAuditDto; import com.xboe.module.course.entity.CourseHRBPAudit; @@ -11,6 +12,10 @@ import com.xboe.module.course.entity.CourseHRBPAudit; * 人员课程审核 * */ public interface ICourseHRBPAuditService { + /** + * BPM回调更新 + * */ + void bpmRecallUpdate(BPMCallbackDto dto); /** * 提交审核 diff --git a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseHRBPAuditServiceImpl.java b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseHRBPAuditServiceImpl.java index f4d6bcce..f1a38ab5 100644 --- a/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseHRBPAuditServiceImpl.java +++ b/servers/boe-server-all/src/main/java/com/xboe/module/course/service/impl/CourseHRBPAuditServiceImpl.java @@ -5,6 +5,8 @@ import java.util.List; import javax.annotation.Resource; +import com.xboe.core.orm.UpdateBuilder; +import com.xboe.module.course.dto.BPMCallbackDto; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -19,6 +21,7 @@ import com.xboe.module.course.entity.CourseHRBPAudit; import com.xboe.module.course.service.ICourseHRBPAuditService; import lombok.extern.slf4j.Slf4j; +import org.springframework.transaction.annotation.Transactional; @Slf4j @Service @@ -26,6 +29,31 @@ public class CourseHRBPAuditServiceImpl implements ICourseHRBPAuditService { @Resource CourseHRBPAuditDao courseHRBPAuditDao; + /** + * BPM回调后更新审批结果 + * @param dto + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void bpmRecallUpdate(BPMCallbackDto dto){ + if(dto.getAuditResult().equals("success")){ + courseHRBPAuditDao.update( + UpdateBuilder.from(CourseHRBPAudit.class) + .addUpdateField("auditResult", 1) + .addFilter(FieldFilters.eq("auditId", dto.getAuditId())) + .builder() + ); + }else{ + courseHRBPAuditDao.update( + UpdateBuilder.from(CourseHRBPAudit.class) + .addUpdateField("auditResult", 0) + .addUpdateField("auditRemark", dto.getAuditComment()) + .addUpdateField("auditUser", dto.getLastAuditUser()) + .addFilter(FieldFilters.eq("auditId", dto.getAuditId())) + .builder() + ); + } + } @Override public void save(CourseHRBPAudit coursePersonAudit) {