diff --git a/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java b/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java index 58f617c6..0d3b399a 100644 --- a/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java +++ b/src/main/java/com/qs/serve/common/framework/manager/AsyncFactory.java @@ -17,6 +17,7 @@ import com.qs.serve.modules.tbs.entity.bo.TbsAffairCommitBo; import com.qs.serve.modules.tbs.service.impl.TbsBudgetApplyOperationServiceImpl; import com.qs.serve.modules.tbs.service.impl.TbsCostApplyOperationServiceImpl; import com.qs.serve.modules.tzc.service.impl.TzcPolicyOperationServiceImpl; +import com.qs.serve.modules.vtb.common.VtbVerificationState; import com.qs.serve.modules.vtb.entity.VtbVerification; import com.qs.serve.modules.vtb.service.VtbVerificationApplication; import com.qs.serve.modules.vtb.service.VtbVerificationService; @@ -184,11 +185,11 @@ public class AsyncFactory { /** * 异步保存核销状态 - * @param verification + * @param verificationId * @param totalAmount * @return */ - public static TimerTask saveVtbSubmit(VtbVerification verification, BigDecimal totalAmount,Integer state,boolean realaseFlag) { + public static TimerTask saveVtbSubmit(Long verificationId, BigDecimal totalAmount,Integer state,boolean realaseFlag) { return new TimerTask() { @Override public void run() { @@ -196,11 +197,15 @@ public class AsyncFactory { AuthContextUtils.setTenant("001"); Thread.sleep(20*1000); log.debug("saveVtbSubmit"); + VtbVerificationService vtbVerificationService = SpringUtils.getBean(VtbVerificationService.class); + VtbVerification verification = vtbVerificationService.getById(verificationId); + if(!verification.getVerificationState().equals(VtbVerificationState.Commiting.getCode())){ + return; + } VtbVerificationOperationServiceImpl verificationOperationService = SpringUtils.getBean(VtbVerificationOperationServiceImpl.class); String summeryResult = verificationOperationService.checkAffairSummery(verification.getId().toString()); if( summeryResult.equals(VtbVerificationOperationServiceImpl.SummeryState_Success)){ VtbVerificationApplication verificationApplication = SpringUtils.getBean(VtbVerificationApplication.class); - VtbVerificationService vtbVerificationService = SpringUtils.getBean(VtbVerificationService.class); if(state.equals(1)){ //调用成功回调方法 verificationApplication.finishCallBack(verification, totalAmount); diff --git a/src/main/java/com/qs/serve/modules/oms/controller/api/OmsShoppingCartApi.java b/src/main/java/com/qs/serve/modules/oms/controller/api/OmsShoppingCartApi.java index 9c354bad..5e7b0b00 100644 --- a/src/main/java/com/qs/serve/modules/oms/controller/api/OmsShoppingCartApi.java +++ b/src/main/java/com/qs/serve/modules/oms/controller/api/OmsShoppingCartApi.java @@ -100,7 +100,7 @@ public class OmsShoppingCartApi { shoppingCart.setPicUrl(goodsSku.getPicUrl()); shoppingCart.setSpuId(goodsSku.getSpuId()); GoodsSpu goodsSpu = goodsSpuService.getById(shoppingCart.getSpuId()); - if(!goodsSpu.getShelf().equals("1")){ + if(!goodsSpu.getShelf().equals(1)){ return R.error("商品已下架"); } shoppingCart.setSpuName(goodsSpu.getName()); diff --git a/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java b/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java index 207fede2..0eb2d701 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java @@ -273,7 +273,9 @@ public class VtbVerificationApplication { //重新计算合计 if(isFinish){ finishCallBack(verification, totalAmount); - vtbVerificationService.release(verification.getActivityId(),false); + if(isRelease){ + vtbVerificationService.release(verification.getActivityId(),false); + } }else { //更新金额 VtbVerification vtbVer = new VtbVerification(); @@ -284,7 +286,7 @@ public class VtbVerificationApplication { } if(isNext){ //判断是否直接跳过审批的申请 - AsyncManager.me().execute(AsyncFactory.saveVtbSubmit(verification, totalAmount,affairCommit.getState(),isRelease)); + AsyncManager.me().execute(AsyncFactory.saveVtbSubmit(verification.getId(), totalAmount,affairCommit.getState(),isRelease)); } return R.ok(); } diff --git a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java index 998be3d9..fae01f2f 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java @@ -696,7 +696,7 @@ public class VtbVerificationServiceImpl extends ServiceImpl