Commit a0a78051 by guojuxing

判断将要设置的商户是否已存在规则,进行二次确认

parent 1fab802e
......@@ -4,6 +4,8 @@ import com.gic.api.base.commons.Page;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.enterprise.dto.rule.RuleEnterpriseDTO;
import java.util.List;
public interface ConfigRuleEnterpriseApiService {
/**
......@@ -19,6 +21,16 @@ public interface ConfigRuleEnterpriseApiService {
ServiceResponse<Integer> edit(RuleEnterpriseDTO dto);
/**
* 判断将要设置的商户是否已存在规则,进行二次确认
* @Title: hasRuleOfToBeSetEnterprises

* @Description:

* @author guojuxing
* @param dto

* @return com.gic.api.base.commons.ServiceResponse<java.lang.List<String>>


*/
ServiceResponse<List<String>> hasRuleOfToBeSetEnterprises(RuleEnterpriseDTO dto);
/**
* 删除商户规则
* @Title: deleteEnterpriseRule

* @Description:
......
......@@ -20,6 +20,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
import java.util.stream.Collectors;
@Service("configRuleEnterpriseApiService")
public class ConfigRuleEnterpriseApiServiceImpl implements ConfigRuleEnterpriseApiService {
......@@ -119,6 +120,55 @@ public class ConfigRuleEnterpriseApiServiceImpl implements ConfigRuleEnterpriseA
}
@Override
public ServiceResponse<List<String>> hasRuleOfToBeSetEnterprises(RuleEnterpriseDTO dto) {
Integer enterpriseRuleId = dto.getEnterpriseRuleId();
if (enterpriseRuleId != null) {
TabConfigRuleEnterprise record = configRuleEnterpriseService.getByEnterpriseRuleId(enterpriseRuleId);
if (record == null) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "规则ID错误,无记录");
}
}
ServiceResponse<Void> valid = valid(dto);
if (!valid.isSuccess()) {
return ServiceResponse.failure(valid.getCode(), valid.getMessage());
}
//验证并获取商户ID列表
boolean isDefaultRule = "-1".equals(dto.getEnterpriseIds());
List<String> enterpriseIdList;
if (!isDefaultRule) {
//如果不是平台默认规则,则需要进行商户的校验
ServiceResponse<List<Integer>> enterpriseIdListResult = getEnterpriseIdList(dto);
if (enterpriseIdListResult.isSuccess()) {
List<Integer> tempEnterpriseIdList = enterpriseIdListResult.getResult();
enterpriseIdList = Optional.ofNullable(tempEnterpriseIdList).orElse(new ArrayList<>())
.stream()
.map(e -> e.toString())
.collect(Collectors.toList());
} else {
return ServiceResponse.failure(enterpriseIdListResult.getCode(), enterpriseIdListResult.getMessage());
}
} else {
return ServiceResponse.success();
}
List<EnterpriseDTO> enterpriseDTOList = enterpriseService.listEnterprise();
Map<String, String> enterpriseIdMapName = Optional.ofNullable(enterpriseDTOList).orElse(new ArrayList<>())
.stream()
.collect(Collectors.toMap(e -> e.getEnterpriseId().toString(), EnterpriseDTO::getEnterpriseName));
//查询规则关联商户数据
List<TabConfigRuleEnterpriseRel> rel = configRuleEnterpriseService.listEnterprise();
return ServiceResponse.success(Optional.ofNullable(rel).orElse(new ArrayList<>())
.stream()
.filter(e -> Optional.ofNullable(enterpriseRuleId).orElse(-111).intValue() != e.getEnterpriseId().intValue()
&& enterpriseIdList.contains(e.getEnterpriseId().toString()))
.map(e -> enterpriseIdMapName.get(e.getEnterpriseId().toString()))
.collect(Collectors.toList()));
}
@Override
public ServiceResponse<String> deleteEnterpriseRule(Integer enterpriseRuleId) {
TabConfigRuleEnterprise record = configRuleEnterpriseService.getByEnterpriseRuleId(enterpriseRuleId);
if (record == null) {
......
......@@ -162,6 +162,17 @@ public class ConfigRuleController {
return ResultControllerUtils.commonResult(configRuleEnterpriseApiService.save(dto));
}
/**
* 判断将要设置的商户是否已存在规则,进行二次确认
* @param dto
* @return
*/
@RequestMapping("/has-rule-of-enterprises")
public RestResponse hasRuleOfEnterprises(RuleEnterpriseDTO dto) {
return ResultControllerUtils.commonResult(configRuleEnterpriseApiService.hasRuleOfToBeSetEnterprises(dto));
}
@RequestMapping("/editEnterpriseRule")
public RestResponse editEnterpriseRule(RuleEnterpriseDTO dto) {
if (dto.getEnterpriseRuleId() == null) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment