|
@@ -13,6 +13,7 @@ import com.fjhx.enums.ApplyPurchaseStatusEnum;
|
|
|
import com.fjhx.mapper.ApplyPurchaseMapper;
|
|
|
import com.fjhx.service.ApplyPurchaseService;
|
|
|
import com.fjhx.service.OrderFlowService;
|
|
|
+import com.fjhx.service.OrderService;
|
|
|
import com.fjhx.utils.Assert;
|
|
|
import org.springblade.core.redis.lock.RedisLockClient;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
@@ -42,6 +43,9 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
@Autowired
|
|
|
private OrderFlowService orderFlowService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private OrderService orderService;
|
|
|
+
|
|
|
@Override
|
|
|
public void add(ApplyPurchase applyPurchase) {
|
|
|
Assert.notEmpty(applyPurchase.getGoodsId(), "物品id不能为空");
|
|
@@ -57,6 +61,9 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
// 状态
|
|
|
applyPurchase.setStatus(ApplyPurchaseStatusEnum.WAIT_START.getValue());
|
|
|
|
|
|
+ // 申购单未完成
|
|
|
+ applyPurchase.setCompleteStatus(StatusConstant.No);
|
|
|
+
|
|
|
save(applyPurchase);
|
|
|
}
|
|
|
|
|
@@ -135,7 +142,7 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
update(Wrappers.<ApplyPurchase>lambdaUpdate()
|
|
|
.eq(ApplyPurchase::getOrderId, orderId)
|
|
|
.set(ApplyPurchase::getStatus, ApplyPurchaseStatusEnum.PURCHASED.getValue())
|
|
|
- .set(BaseEntity::getCreateTime, new Date())
|
|
|
+ .set(BaseEntity::getUpdateTime, new Date())
|
|
|
.set(BaseEntity::getUpdateUser, AuthUtil.getUserId())
|
|
|
);
|
|
|
}
|
|
@@ -152,7 +159,7 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
.set(ApplyPurchase::getApplyPrice, null)
|
|
|
.set(ApplyPurchase::getUnitPrice, null)
|
|
|
.set(ApplyPurchase::getRemark, null)
|
|
|
- .set(BaseEntity::getCreateTime, new Date())
|
|
|
+ .set(BaseEntity::getUpdateTime, new Date())
|
|
|
.set(BaseEntity::getUpdateUser, AuthUtil.getUserId())
|
|
|
);
|
|
|
}
|
|
@@ -185,9 +192,9 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
|
|
|
Assert.eqTrue(b, ErrorMsgConstant.SYSTEM_BUSY_ERROR);
|
|
|
|
|
|
- // TODO 完成订单
|
|
|
+ // 如果完成订单,修改订单状态为已完成
|
|
|
if (totalArrivalQuantity.compareTo(quantity) >= 0 && autoComplete) {
|
|
|
-
|
|
|
+ orderService.orderComplete(applyPurchase.getOrderId());
|
|
|
}
|
|
|
|
|
|
}
|
|
@@ -196,7 +203,7 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
public void endApplyPurchase(Long applyPurchaseId) {
|
|
|
update(Wrappers.<ApplyPurchase>lambdaUpdate()
|
|
|
.eq(ApplyPurchase::getId, applyPurchaseId)
|
|
|
- .set(BaseEntity::getCreateTime, new Date())
|
|
|
+ .set(BaseEntity::getUpdateTime, new Date())
|
|
|
.set(BaseEntity::getUpdateUser, AuthUtil.getUserId())
|
|
|
.set(ApplyPurchase::getCompleteStatus, StatusConstant.YES));
|
|
|
}
|
|
@@ -205,12 +212,23 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
public void discardApplyPurchase(Long applyPurchaseId) {
|
|
|
update(Wrappers.<ApplyPurchase>lambdaUpdate()
|
|
|
.eq(ApplyPurchase::getId, applyPurchaseId)
|
|
|
- .set(BaseEntity::getCreateTime, new Date())
|
|
|
+ .set(BaseEntity::getUpdateTime, new Date())
|
|
|
.set(BaseEntity::getUpdateUser, AuthUtil.getUserId())
|
|
|
.set(ApplyPurchase::getStatus, ApplyPurchaseStatusEnum.DISCARD.getValue())
|
|
|
);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public boolean orderIsComplete(Long orderId) {
|
|
|
+
|
|
|
+ int count = count(Wrappers.<ApplyPurchase>lambdaQuery()
|
|
|
+ .eq(ApplyPurchase::getOrderId, orderId)
|
|
|
+ .eq(ApplyPurchase::getCompleteStatus, StatusConstant.No)
|
|
|
+ );
|
|
|
+
|
|
|
+ return count == 0;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 发起申购
|
|
|
*
|
|
@@ -273,7 +291,7 @@ public class ApplyPurchaseServiceImpl extends ServiceImpl<ApplyPurchaseMapper, A
|
|
|
private void updateFlowStatus(Long flowLinkNo, ApplyPurchaseStatusEnum applyPurchaseStatusEnum) {
|
|
|
update(Wrappers.<ApplyPurchase>lambdaUpdate()
|
|
|
.eq(ApplyPurchase::getFlowLinkNo, flowLinkNo)
|
|
|
- .set(BaseEntity::getCreateTime, new Date())
|
|
|
+ .set(BaseEntity::getUpdateTime, new Date())
|
|
|
.set(BaseEntity::getUpdateUser, AuthUtil.getUserId())
|
|
|
.set(ApplyPurchase::getStatus, applyPurchaseStatusEnum.getValue()));
|
|
|
}
|