diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillOtherDepositController.java b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillOtherDepositController.java index 9f53f2d03..bf2ec3cec 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillOtherDepositController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/rent/WxBillOtherDepositController.java @@ -91,7 +91,7 @@ public class WxBillOtherDepositController extends BaseController { @SystemControllerLog(description = "其它账单-退回押金") public ResultData returnDeposit(@RequestBody WxBillOtherDeposit wxBillDeposit) { logger.debug("[" + getIpAddr() + "] WxBillOtherDepositController::returnDeposit"); - return wxBillOtherDepositService.returnDeposit(wxBillDeposit); + return wxBillOtherDepositService.returnDeposit(wxBillDeposit, getUser()); } diff --git a/mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java b/mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java index 63dbfaf30..ab5c4667f 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxBillOtherDepositService.java @@ -50,7 +50,7 @@ public interface WxBillOtherDepositService { ResultData updatePaid(Long id); - ResultData returnDeposit(WxBillOtherDeposit wxBillDeposit); + ResultData returnDeposit(WxBillOtherDeposit wxBillDeposit, MallUserInfo user); ResultData adjustDeposit(WxBillOtherDeposit wxBillDeposit); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java index 7c52f72a4..00eba0e86 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillOtherDepositServiceImpl.java @@ -210,7 +210,7 @@ public class WxBillOtherDepositServiceImpl implements WxBillOtherDepositService } @Override - public ResultData returnDeposit(WxBillOtherDeposit record) { + public ResultData returnDeposit(WxBillOtherDeposit record, MallUserInfo user) { logger.info("其他押金退还"); WxBillOtherDeposit wxBillDeposit = wxBillOtherDepositMapper.selectByPrimaryKey(record.getId()); if (wxBillDeposit == null) { @@ -222,10 +222,29 @@ public class WxBillOtherDepositServiceImpl implements WxBillOtherDepositService try { wxBillOtherDepositMapper.updateByPrimaryKeySelective(wxBillDeposit); } catch (Exception e) { - logger.error("租赁押金退还失败,e:" + e.getMessage()); + logger.error("押金退还失败,e:" + e.getMessage()); throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); } - return new ResultData(Result.SUCCESS, "租赁押金退还成功", wxBillDeposit); + + //日志 + WxBillAction wxBillAction = new WxBillAction(); + wxBillAction.setBillId(wxBillDeposit.getId()); + String message = EnumBillPayWay.getEnum(record.getPayWay()).getMessage(); + String price = new BigDecimal(record.getReturnPrice()).divide(new BigDecimal(100)).toPlainString(); + wxBillAction.setDetails(message + price + "元"); + wxBillAction.setAction(EnumBillAction.DEPOSIT_RETURN.getCode()); + wxBillAction.setUserId(user.getId()); + wxBillAction.setUserName(user.getName()); + wxBillAction.setPhone(user.getPhone()); + wxBillAction.setTenantId(wxBillDeposit.getTenantId()); + try { + wxBillActionService.save(wxBillAction); + } catch (Exception e) { + logger.error("添加其他押金账单行为日志,e:" + e.getMessage()); + throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "DB FAILD " + e.getMessage()); + } + + return new ResultData(Result.SUCCESS, "押金退还成功", wxBillDeposit); } @Override 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 9934b7e93..05b952427 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java @@ -677,6 +677,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { //修改flowRecord WxFlowRecord fr = new WxFlowRecord(); fr.setBusinessId(id); + fr.setCurrStatus(EnumRentContractAppStatus.CANCLE.getCode()); wxFlowRecordMapper.updateCurrStatus(fr); logger.info("合同id:{},开始停止...", id); @@ -759,7 +760,13 @@ public class WxRentContractServiceImpl implements WxRentContractService { long[] priceArr = new long[arraySize]; for (int i = 0; i < arraySize; i++) { JSONObject rentInfoObject = rentInfoArray.getJSONObject(i); - priceArr[i] = new BigDecimal(rentInfoObject.getString("price")).multiply(new BigDecimal(100)).longValue(); + //年 需要除12 + if(EnumPriceUnit.Y.getCode().equals(priceUnit)){ + BigDecimal yprice = new BigDecimal(rentInfoObject.getString("price")).divide(new BigDecimal(12),2, BigDecimal.ROUND_HALF_DOWN); + priceArr[i] = yprice.multiply(new BigDecimal(100)).longValue(); + }else{ + priceArr[i] = new BigDecimal(rentInfoObject.getString("price")).multiply(new BigDecimal(100)).longValue(); + } } priceList.add(priceArr); //大于一年