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 @@