| @@ -123,4 +123,22 @@ public class WxRentContractExtensionController extends BaseController { | |||||
| } | } | ||||
| return wxRentContractService.extensionUpdate(wxRentContract, user.getId(),user.getName(), EnumFromType.OTHER.getCode(),oldDate); | return wxRentContractService.extensionUpdate(wxRentContract, user.getId(),user.getName(), EnumFromType.OTHER.getCode(),oldDate); | ||||
| } | } | ||||
| @PostMapping("updateFile") | |||||
| @SystemControllerLog(description = "租赁合同续签-更新文件") | |||||
| public ResultData updateFile(@RequestBody WxRentContract wxRentContract) { | |||||
| log.debug("[" + getIpAddr() + "] WxRentContractExtensionController::updateFile"); | |||||
| if(StringUtils.isBlank(wxRentContract.getBusDiscountRatio())){ | |||||
| wxRentContract.setBusDiscountTime(new Integer(0)); | |||||
| } | |||||
| MallUserInfo user = getUser(); | |||||
| wxRentContract.updateTenantInfo(user); | |||||
| wxRentContract.setAdjustPeriodHandle(); | |||||
| wxRentContract.setRentPriceHandle(); | |||||
| Date oldDate = wxRentContract.getRentalStartDate(); | |||||
| if(wxRentContract.getRentStartType()!=null && wxRentContract.getRentStartType().equals(EnumRentStartType.STARTTIME.getCode())){ | |||||
| wxRentContract.setRentalStartDate(wxRentContract.getStartDate()); | |||||
| } | |||||
| return wxRentContractService.updateFile(wxRentContract, user.getId(),user.getName(),oldDate); | |||||
| } | |||||
| } | } | ||||
| @@ -110,4 +110,6 @@ public interface WxRentContractService { | |||||
| ResultData extension(WxRentContract record,Long userId,String userName,Date oldRentStartDate); | ResultData extension(WxRentContract record,Long userId,String userName,Date oldRentStartDate); | ||||
| ResultData extensionUpdate(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate); | ResultData extensionUpdate(WxRentContract record, Long userId,String userName,int from,Date oldRentStartDate); | ||||
| ResultData extensionUpdateFile(WxRentContract wxRentContract, Long userId,String userName,Date oldRentStartDate); | |||||
| } | } | ||||
| @@ -2846,4 +2846,46 @@ public class WxRentContractServiceImpl implements WxRentContractService { | |||||
| } | } | ||||
| return new ResultData(Result.SUCCESS, "保存租赁合同信息成功", wxRentContract); | return new ResultData(Result.SUCCESS, "保存租赁合同信息成功", wxRentContract); | ||||
| } | } | ||||
| @Transactional(rollbackFor = {Exception.class}) | |||||
| @Override | |||||
| public ResultData extensionUpdateFile(WxRentContract record, Long userId,String userName,Date oldRentStartDate) { | |||||
| // 保存调整金额(预账单调整) | |||||
| if(!CollectionUtils.isEmpty(record.getPreviewBillRentList())){ | |||||
| savePreviewBill(record); | |||||
| } | |||||
| ResultData resultData = getResultDataForExtensionUpdate(record, userId,0,oldRentStartDate); | |||||
| if (resultData.code != Result.SUCCESS) { | |||||
| return resultData; | |||||
| } | |||||
| //有模板,启动审批流,没有,直接生产账单 | |||||
| if (!CollectionUtils.isEmpty(record.getFlowParams())) { | |||||
| if (wxFlowService.getModelByType((Integer) record.getFlowParams().get("businessType"), record) == null | |||||
| && record.getMerchantId() != null) { | |||||
| updateRentContractStatus(record.getId()); | |||||
| }else{ | |||||
| record.getFlowParams().put("businessId", record.getId().toString()); | |||||
| if (record.getMerchantId() != null) { | |||||
| record.getFlowParams().put("supplement", true); //设置补录 | |||||
| } | |||||
| wxFlowService.start(record.getFlowParams(), userId, userName, record); | |||||
| // 合同状态改成待签约 | |||||
| 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); | |||||
| } | |||||
| }else{ | |||||
| //审批状态重置 | |||||
| WxRentContract updateRentContract = new WxRentContract(); | |||||
| updateRentContract.setId(record.getId()); | |||||
| updateRentContract.setApplyStatus(EnumRentContractAppStatus.DEFAULT.getCode()); | |||||
| updateApplyStatus(updateRentContract); | |||||
| } | |||||
| return resultData; | |||||
| } | |||||
| } | } | ||||