16 changed files with 285 additions and 15 deletions
@ -0,0 +1,38 @@ |
|||
package com.qs.serve.modules.tzc.entity.dto; |
|||
|
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2023/3/10 |
|||
*/ |
|||
@Data |
|||
public class PolicyItemDto { |
|||
|
|||
/** 主题 */ |
|||
private String title; |
|||
|
|||
String policyItemCode; |
|||
|
|||
String cusCode; |
|||
|
|||
Date startDate; |
|||
|
|||
Date endDate; |
|||
|
|||
/** 满减金额 */ |
|||
private BigDecimal discountAmount; |
|||
|
|||
/** 返点百分比 */ |
|||
private BigDecimal discountRate; |
|||
|
|||
/** 优惠上限 */ |
|||
private BigDecimal discountMax; |
|||
|
|||
List<String> invCodeList; |
|||
|
|||
} |
@ -0,0 +1,63 @@ |
|||
package com.qs.serve.modules.tzc.service; |
|||
|
|||
import com.qs.serve.modules.tbs.entity.dto.TbsBudgetCostResult; |
|||
import com.qs.serve.modules.tbs.entity.vo.TbsBudgetTableVo; |
|||
import com.qs.serve.modules.tzc.entity.TzcPolicyItem; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @author YenHex |
|||
* @since 2023/3/10 |
|||
*/ |
|||
public interface TzcPolicyApplicationService { |
|||
|
|||
/** |
|||
* 政策项ID |
|||
* @param policyItemId |
|||
*/ |
|||
void syncPolicyItem(Long policyItemId); |
|||
|
|||
/** |
|||
* 创建费用占用结果 |
|||
* @param policyId |
|||
* @param throwEx |
|||
* @param buildTableFlag |
|||
* @return |
|||
*/ |
|||
TbsBudgetCostResult buildBudgetCostResult(Long policyId, |
|||
Boolean throwEx, |
|||
Boolean buildTableFlag); |
|||
|
|||
/** |
|||
* 创建费用占用结果 |
|||
* @param policyId 用于加载历史预算时,排除当前费用占比 |
|||
* @param policyItemList 政策项列表 |
|||
* @param overspend 是否支持超出预算 |
|||
* @param throwEx 是否需要抛出异常 |
|||
* @param buildTableFlag 创建表VO |
|||
* @return |
|||
*/ |
|||
TbsBudgetCostResult buildBudgetCostResult(Long policyId, |
|||
List<TzcPolicyItem> policyItemList, |
|||
Boolean overspend, |
|||
Boolean throwEx, |
|||
Boolean buildTableFlag); |
|||
|
|||
|
|||
/** |
|||
* 提交申请 |
|||
* @param policyId |
|||
*/ |
|||
void commitPolicy(Long policyId); |
|||
|
|||
|
|||
/** |
|||
* 构建预览2接口 |
|||
* @param policyId |
|||
* @return |
|||
*/ |
|||
TbsBudgetTableVo buildResultTable(Long policyId); |
|||
|
|||
} |
@ -0,0 +1,38 @@ |
|||
package com.qs.serve.task; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
|||
import com.qs.serve.modules.tzc.common.TzPolicyItemStatus; |
|||
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.TzcPolicyService; |
|||
import lombok.AllArgsConstructor; |
|||
import org.springframework.stereotype.Component; |
|||
import java.util.List; |
|||
/** |
|||
* 政策同步方法 |
|||
* @author YenHex |
|||
* @since 2023/3/11 |
|||
*/ |
|||
@Component |
|||
@AllArgsConstructor |
|||
public class TzcPolicyTask { |
|||
|
|||
private TzcPolicyService policyService; |
|||
private TzcPolicyItemService policyItemService; |
|||
private TzcPolicyApplicationService policyApplicationService; |
|||
|
|||
/** |
|||
* 同步数据到销路通 |
|||
*/ |
|||
public void syncPolicyToXlt(){ |
|||
LambdaQueryWrapper<TzcPolicyItem> itemLqw = new LambdaQueryWrapper<>(); |
|||
itemLqw.select(TzcPolicyItem::getId); |
|||
itemLqw.eq(TzcPolicyItem::getPolicyItemStatus,TzPolicyItemStatus.Status_1_PassSuccess); |
|||
List<TzcPolicyItem> policyItemList = policyItemService.list(itemLqw); |
|||
for (TzcPolicyItem policyItem : policyItemList) { |
|||
policyApplicationService.syncPolicyItem(policyItem.getId()); |
|||
} |
|||
} |
|||
|
|||
} |
Loading…
Reference in new issue