|
@ -30,8 +30,11 @@ import com.epmet.commons.tools.security.dto.TokenDto; |
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
import com.epmet.commons.tools.utils.ConvertUtils; |
|
|
import com.epmet.commons.tools.utils.Result; |
|
|
import com.epmet.commons.tools.utils.Result; |
|
|
import com.epmet.dao.PointRuleDao; |
|
|
import com.epmet.dao.PointRuleDao; |
|
|
|
|
|
import com.epmet.dao.PointRuleDefaultDao; |
|
|
import com.epmet.dao.RuleOperateLogDao; |
|
|
import com.epmet.dao.RuleOperateLogDao; |
|
|
|
|
|
import com.epmet.dto.CustomerDTO; |
|
|
import com.epmet.dto.CustomerStaffDTO; |
|
|
import com.epmet.dto.CustomerStaffDTO; |
|
|
|
|
|
import com.epmet.dto.InitPointRuleResultDTO; |
|
|
import com.epmet.dto.form.CustomerFunctionListFormDTO; |
|
|
import com.epmet.dto.form.CustomerFunctionListFormDTO; |
|
|
import com.epmet.dto.form.PointDetailFormDTO; |
|
|
import com.epmet.dto.form.PointDetailFormDTO; |
|
|
import com.epmet.dto.form.PointRuleFormDTO; |
|
|
import com.epmet.dto.form.PointRuleFormDTO; |
|
@ -40,9 +43,11 @@ import com.epmet.dto.result.CustomerFunctionResultDTO; |
|
|
import com.epmet.dto.result.DefaultFunctionListResultDTO; |
|
|
import com.epmet.dto.result.DefaultFunctionListResultDTO; |
|
|
import com.epmet.dto.result.PointDetailResultDTO; |
|
|
import com.epmet.dto.result.PointDetailResultDTO; |
|
|
import com.epmet.dto.result.PointRuleResultDTO; |
|
|
import com.epmet.dto.result.PointRuleResultDTO; |
|
|
|
|
|
import com.epmet.entity.PointRuleDefaultEntity; |
|
|
import com.epmet.entity.PointRuleEntity; |
|
|
import com.epmet.entity.PointRuleEntity; |
|
|
import com.epmet.entity.RuleOperateLogEntity; |
|
|
import com.epmet.entity.RuleOperateLogEntity; |
|
|
import com.epmet.feign.EpmetUserOpenFeignClient; |
|
|
import com.epmet.feign.EpmetUserOpenFeignClient; |
|
|
|
|
|
import com.epmet.feign.OperCrmOpenFeignClient; |
|
|
import com.epmet.feign.OperCustomizeOpenFeignClient; |
|
|
import com.epmet.feign.OperCustomizeOpenFeignClient; |
|
|
import com.epmet.service.PointRuleService; |
|
|
import com.epmet.service.PointRuleService; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
import lombok.extern.slf4j.Slf4j; |
|
@ -71,6 +76,10 @@ public class PointRuleServiceImpl extends BaseServiceImpl<PointRuleDao, PointRul |
|
|
private EpmetUserOpenFeignClient epmetUserOpenFeignClient; |
|
|
private EpmetUserOpenFeignClient epmetUserOpenFeignClient; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private RuleOperateLogDao ruleOperateLogDao; |
|
|
private RuleOperateLogDao ruleOperateLogDao; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private OperCrmOpenFeignClient operCrmOpenFeignClient; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private PointRuleDefaultDao pointRuleDefaultDao; |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
public List<CustomerFunctionResultDTO> getFunctionList(String customerId) { |
|
|
public List<CustomerFunctionResultDTO> getFunctionList(String customerId) { |
|
@ -171,10 +180,10 @@ public class PointRuleServiceImpl extends BaseServiceImpl<PointRuleDao, PointRul |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/** |
|
|
/** |
|
|
* @Description 根据evetCode和客户Id查找积分规则详情 |
|
|
|
|
|
* @param customerId |
|
|
* @param customerId |
|
|
* @param eventCode |
|
|
* @param eventCode |
|
|
* @return |
|
|
* @return |
|
|
|
|
|
* @Description 根据evetCode和客户Id查找积分规则详情 |
|
|
* @author wangc |
|
|
* @author wangc |
|
|
* @date 2020.07.31 14:54 |
|
|
* @date 2020.07.31 14:54 |
|
|
**/ |
|
|
**/ |
|
@ -183,6 +192,33 @@ public class PointRuleServiceImpl extends BaseServiceImpl<PointRuleDao, PointRul |
|
|
return baseDao.selectByEventCodeAndCustomerId(customerId, eventCode); |
|
|
return baseDao.selectByEventCodeAndCustomerId(customerId, eventCode); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
|
public InitPointRuleResultDTO initPointRule() { |
|
|
|
|
|
Result<List<CustomerDTO>> customerListResult = operCrmOpenFeignClient.getAllCustomerList(); |
|
|
|
|
|
if (!customerListResult.success() || CollectionUtils.isEmpty(customerListResult.getData())) { |
|
|
|
|
|
log.error("获取所有客户列表失败"); |
|
|
|
|
|
} |
|
|
|
|
|
List<CustomerDTO> customerDTOList = customerListResult.getData(); |
|
|
|
|
|
List<PointRuleDefaultEntity> ruleDefaultEntities = pointRuleDefaultDao.selectList(null); |
|
|
|
|
|
List<String> haveInitCustomerIds = baseDao.selectCustomerIds(); |
|
|
|
|
|
List<PointRuleEntity> insertList = new ArrayList<>(); |
|
|
|
|
|
ruleDefaultEntities.forEach(defaultRule -> { |
|
|
|
|
|
for (CustomerDTO customerDTO : customerDTOList) { |
|
|
|
|
|
if (haveInitCustomerIds.contains(customerDTO.getId())) { |
|
|
|
|
|
continue; |
|
|
|
|
|
} |
|
|
|
|
|
PointRuleEntity entity = ConvertUtils.sourceToTarget(defaultRule, PointRuleEntity.class); |
|
|
|
|
|
entity.setCustomerId(customerDTO.getId()); |
|
|
|
|
|
insertList.add(entity); |
|
|
|
|
|
} |
|
|
|
|
|
}); |
|
|
|
|
|
this.insertBatch(insertList, 100); |
|
|
|
|
|
InitPointRuleResultDTO result = new InitPointRuleResultDTO(); |
|
|
|
|
|
result.setCustomerTotal(customerDTOList.size()); |
|
|
|
|
|
result.setInitedTotal(insertList.size()); |
|
|
|
|
|
return result; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
private void insertOperateRecord(TokenDto tokenDTO, PointRuleEntity entityNew, PointRuleEntity entityDB, String opType) { |
|
|
private void insertOperateRecord(TokenDto tokenDTO, PointRuleEntity entityNew, PointRuleEntity entityDB, String opType) { |
|
|
RuleOperateLogEntity record = new RuleOperateLogEntity(); |
|
|
RuleOperateLogEntity record = new RuleOperateLogEntity(); |
|
|
if (tokenDTO != null) { |
|
|
if (tokenDTO != null) { |
|
|