Browse Source

添加政策作废

v1.0
Yen 2 years ago
parent
commit
0e07845631
  1. 1
      src/main/java/com/qs/serve/modules/tzc/common/TzcPolicyStatus.java
  2. 37
      src/main/java/com/qs/serve/modules/tzc/controller/TzcPolicyController.java

1
src/main/java/com/qs/serve/modules/tzc/common/TzcPolicyStatus.java

@ -12,5 +12,6 @@ public interface TzcPolicyStatus {
int Status_3_Success = 3;
int Status_4_RollBack = 4;
int Status_5_Refuse = 5;
int Status_6_CANCEL = 6;
}

37
src/main/java/com/qs/serve/modules/tzc/controller/TzcPolicyController.java

@ -33,6 +33,9 @@ import com.qs.serve.modules.tzc.entity.TzcPolicyItem;
import com.qs.serve.modules.tzc.service.TzcPolicyApplicationService;
import com.qs.serve.modules.tzc.service.TzcPolicyItemService;
import com.qs.serve.modules.tzc.service.impl.TzcPolicyOperationServiceImpl;
import com.qs.serve.modules.vtb.entity.VtbVerification;
import com.qs.serve.modules.vtb.mapper.VtbVerificationMapper;
import com.qs.serve.modules.vtb.service.VtbVerificationService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.security.access.prepost.PreAuthorize;
@ -64,6 +67,8 @@ public class TzcPolicyController {
private TzcPolicyApplicationService policyApplicationService;
private TzcPolicyOperationServiceImpl tzcPolicyOperationService;
private SysPostUserService postUserService;
private VtbVerificationService verificationService;
private TbsBudgetLogService budgetLogService;
@GetMapping("succ")
public R<?> succ(Long id){
@ -423,5 +428,37 @@ public class TzcPolicyController {
return tzcPolicyOperationService.runCompensate(id);
}
/**
* 作废 用于过审的政策
* @param id
* @return
*/
@PostMapping("/cancellation/{id}")
public R<?> cancellation(@PathVariable Long id){
List<TzcPolicyItem> tzcPolicyItemList = tzcPolicyItemService.listByPolicyId(id);
List<Long> itemIds = tzcPolicyItemList.stream().map(TzcPolicyItem::getId).collect(Collectors.toList());
LambdaQueryWrapper<VtbVerification> lqw = new LambdaQueryWrapper<>();
lqw.eq(VtbVerification::getPolicyItemId,itemIds);
long count = verificationService.count(lqw);
if(count>0){
return R.error("已核销的政策无法作废");
}
//释放预算占用
LambdaQueryWrapper<TbsBudgetLog> logLqw = new LambdaQueryWrapper<>();
logLqw.eq(TbsBudgetLog::getPolicyId,id);
budgetLogService.remove(logLqw);
//释放政策及关联数据
for (TzcPolicyItem policyItem : tzcPolicyItemList) {
policyItem.setPolicyItemStatus(TzPolicyItemStatus.Status_0_Default);
tzcPolicyItemService.updateById(policyItem);
}
TzcPolicy policy = new TzcPolicy();
policy.setId(id);
policy.setPolicyStatus(TzcPolicyStatus.Status_6_CANCEL);
policy.setPassTime(LocalDateTime.now());
tzcPolicyService.updateById(policy);
return R.ok();
}
}

Loading…
Cancel
Save