diff --git a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderPileOccupyController.java b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderPileOccupyController.java index 6bf4fb91e..437ea31b8 100644 --- a/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderPileOccupyController.java +++ b/jsowell-admin/src/main/java/com/jsowell/web/controller/pile/OrderPileOccupyController.java @@ -111,4 +111,14 @@ public class OrderPileOccupyController extends BaseController { // { // return toAjax(orderPileOccupyService.deleteByPrimaryKey(ids)); // } + + /** + * 重新计算占桩金额 + * retryCalculateOccupyPileOrderAmount + */ + @PreAuthorize("@ss.hasPermi('pile:occupy:edit')") + @PostMapping("/retryCalculateOccupyPileOrderAmount") + public AjaxResult retryCalculateOccupyPileOrderAmount(@RequestBody MakeOrderFreeDTO dto) { + return toAjax(orderPileOccupyService.retryCalculateOccupyPileOrderAmount(dto.getOccupyCode())); + } } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderPileOccupyService.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderPileOccupyService.java index 306c8f817..80d99d371 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderPileOccupyService.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/OrderPileOccupyService.java @@ -66,6 +66,8 @@ public interface OrderPileOccupyService{ void stopOccupyPileOrder(OrderPileOccupy orderPileOccupy); + int retryCalculateOccupyPileOrderAmount(String occupyCode); + /** * 通过memberid查询挂起状态订单 * @param memberId diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderPileOccupyServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderPileOccupyServiceImpl.java index 6d3f81324..3dbd24fc4 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderPileOccupyServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderPileOccupyServiceImpl.java @@ -282,6 +282,26 @@ public class OrderPileOccupyServiceImpl implements OrderPileOccupyService { orderPileOccupyMapper.updateByPrimaryKeySelective(orderPileOccupy); } + @Override + public int retryCalculateOccupyPileOrderAmount(String occupyCode) { + OrderPileOccupy orderPileOccupy = queryByOccupyCode(occupyCode); + // 计算金额 + BigDecimal orderAmount = calculateOccupyPileOrderAmount(orderPileOccupy); + + if (orderAmount.compareTo(BigDecimal.ZERO) > 0) { + // 需要支付金额,订单挂起 + orderPileOccupy.setStatus(Constants.TWO); // 2-订单挂起 + } else { + // 订单金额为0 + orderPileOccupy.setPayStatus(Constants.TWO); // 2-无需支付 + orderPileOccupy.setStatus(Constants.ONE); // 1-订单完成 + } + orderPileOccupy.setOrderAmount(orderAmount); + // 更新数据库 + int i = orderPileOccupyMapper.updateByPrimaryKeySelective(orderPileOccupy); + return i; + } + /** * 计算占桩订单金额 * calculateTheAmountOfTheOccupancyOrder diff --git a/jsowell-ui/src/api/pile/occupy.js b/jsowell-ui/src/api/pile/occupy.js index 8348ce6c6..5a9654811 100644 --- a/jsowell-ui/src/api/pile/occupy.js +++ b/jsowell-ui/src/api/pile/occupy.js @@ -50,4 +50,13 @@ export function noNeedPay(data) { method: 'post', data: data }) -} \ No newline at end of file +} + +// 重新计算 +export function retryCalculateOccupyPileOrderAmount(data) { + return request({ + url: '/pile/occupy/retryCalculateOccupyPileOrderAmount', + method: 'post', + data: data + }) +} diff --git a/jsowell-ui/src/views/pile/occupy/index.vue b/jsowell-ui/src/views/pile/occupy/index.vue index 7abeecf62..9b16a5aa9 100644 --- a/jsowell-ui/src/views/pile/occupy/index.vue +++ b/jsowell-ui/src/views/pile/occupy/index.vue @@ -106,6 +106,9 @@ 无需支付 + 重新计算占桩订单金额 + @@ -177,7 +180,15 @@