Files
auto-solution/auto-solution-rule/src/main/java/com/solution/rule/strategy/DefenseStrategy.java

45 lines
1.2 KiB
Java

package com.solution.rule.strategy;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.solution.common.constant.ExceptionConstants;
import com.solution.rule.domain.RuleParam;
import com.solution.rule.domain.vo.PlatformWeaponAggregateVO;
import com.solution.rule.enums.SceneType;
import com.solution.rule.handler.RuleChainHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.List;
@Component
public class DefenseStrategy implements SceneStrategy{
@Autowired
private RuleChainHandler ruleChainHandler;
/**
* 防御场景处理
* @param
* @return
*/
@Override
public List<PlatformWeaponAggregateVO> execute(RuleParam ruleParam) {
if(ObjectUtil.isEmpty(ruleParam) || CollUtil.isEmpty(ruleParam.getWeaponModelDTOList())){
throw new RuntimeException(ExceptionConstants.PARAMETER_EXCEPTION);
}
ruleParam = ruleChainHandler.findRuleParam(ruleParam);
return ruleParam.getResultWeapons();
}
@Override
public SceneType getSceneType() {
return SceneType.DEFENSE;
}
}