diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java index 09293a725..eb080c6bd 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxRentContractController.java @@ -51,14 +51,14 @@ public class WxRentContractController extends BaseController { public ResultData update(@RequestBody WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::update"); wxRentContract.setTenantId(getTenantId()); - return wxRentContractService.update(wxRentContract, getUser().getId()); + return wxRentContractService.update(wxRentContract, getUser().getId(),getUser().getName()); } @PostMapping("updateMoney") public ResultData updateMoney(@RequestBody WxRentContract wxRentContract) { logger.debug("[" + getIpAddr() + "] WxRentContractController::updateMoney"); wxRentContract.setTenantId(getTenantId()); - return wxRentContractService.update(wxRentContract, getUser().getId()); + return wxRentContractService.update(wxRentContract, getUser().getId(),getUser().getName()); } @PostMapping("updateFile") diff --git a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java index c62dd7e7f..0ab69056f 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxRentContractService.java @@ -40,7 +40,7 @@ public interface WxRentContractService { */ ResultData save(WxRentContract record,Long userId,String userName); - ResultData update(WxRentContract record, Long userId); + ResultData update(WxRentContract record, Long userId,String userName); /** * 根据Id删除实体 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java index d8839340c..f27cb9afe 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -215,11 +215,31 @@ public class WxRentContractServiceImpl implements WxRentContractService { return new ResultData(Result.SUCCESS, "保存租赁合同信息成功", record); } - @Transactional(rollbackFor = {Exception.class}) @Override - public ResultData update(WxRentContract record, Long userId) { - return getResultDataForUpdate(record, userId); + public ResultData update(WxRentContract record, Long userId,String userName) { + ResultData resultData = getResultDataForUpdate(record, userId); + try { + // 启动审批流 + if(record.getFlowParams() != null){ + record.getFlowParams().put("businessId",record.getId().toString()); + if(record.getMerchantId() != null) { + record.getFlowParams().put("supplement", true); //设置补录 + } + wxFlowService.start(record.getFlowParams(),userId,userName,record.getTenantId()); + + // 合同状态改成待签约 + WxRentContract updateRentContract = new WxRentContract(); + updateRentContract.setId(record.getId()); + updateRentContract.setStatus(EnumRentContractStatus.WAIT_SIGN.getCode()); + wxRentContractMapper.updateStatus(updateRentContract); + logger.info("id:{},启动审批流成功 ,是否补录:{}",record.getId().toString(),record.getMerchantId() != null); + } + } catch (Exception e) { + logger.error("启动审批流失败,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.FLOW_FAIL.getCode(), "FLOW FAILD " + e.getMessage()); + } + return resultData; } public ResultData getResultDataForUpdate(WxRentContract record, Long userId) {