Commit 6965c063 by guojuxing

数字会员调整

parent ebee9f2d
......@@ -9,6 +9,28 @@ public interface DataConfigApiService {
ServiceResponse<Void> configWechatMember(DataWechatMemberConfigDTO dto);
/**
* 新增会员卡,通知
* @Title: newWechatMember

* @Description:

* @author guojuxing
* @param enterpriseId
* @param memberCardArea

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


*/
ServiceResponse<Void> newWechatMember(Integer enterpriseId, Long memberCardArea);
/**
* 删除会员卡,通知
* @Title: deleteWechatMember

* @Description:

* @author guojuxing
* @param enterpriseId
* @param memberCardArea

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


*/
ServiceResponse<Void> deleteWechatMember(Integer enterpriseId, Long memberCardArea);
ServiceResponse<List<DataWechatMemberConfigDTO>> listWechatMemberConfig(Integer enterpriseId);
/**
* 会员消费配置
......
......@@ -48,13 +48,6 @@ public class DataConfigApiServiceImpl implements DataConfigApiService {
if (result == null) {
dataWechatMemberConfigService.saveWechatMemberConfig(dto);
} else {
if (isRefresh) {
if (result.getValidSave() == 1) {
//配置过了,不允许编辑
return ServiceResponse.success();
}
}
//配置过的
dto.setWechatMemberConfigId(result.getWechatMemberConfigId());
dataWechatMemberConfigService.editWechatMemberConfig(dto);
}
......@@ -62,6 +55,25 @@ public class DataConfigApiServiceImpl implements DataConfigApiService {
}
@Override
public ServiceResponse<Void> newWechatMember(Integer enterpriseId, Long memberCardArea) {
return configWechatMember(new DataWechatMemberConfigDTO().setEnterpriseId(enterpriseId).setMemberCardArea(memberCardArea.toString()).setValidRefresh(1));
}
@Override
public ServiceResponse<Void> deleteWechatMember(Integer enterpriseId, Long memberCardArea) {
if (memberCardArea == null) {
return ServiceResponse.failure(ErrorCode.PARAMETER_ERROR.getCode(), "会员卡域不能为空");
}
TabDataWechatMemberConfig result = dataWechatMemberConfigService.getByMemberCardId(enterpriseId, memberCardArea.toString());
if (result != null) {
dataWechatMemberConfigService.editWechatMemberConfig(new DataWechatMemberConfigDTO()
.setWechatMemberConfigId(result.getWechatMemberConfigId())
.setStatus(0));
}
return ServiceResponse.success();
}
@Override
public ServiceResponse<List<DataWechatMemberConfigDTO>> listWechatMemberConfig(Integer enterpriseId) {
return ServiceResponse.success(Optional
.ofNullable(EntityUtil.changeEntityListNew(DataWechatMemberConfigDTO.class, dataWechatMemberConfigService
......
......@@ -95,15 +95,52 @@ public class DataConfigController {
public RestResponse configWechatMember(DataWechatMemberConfigDTO dto) {
dto.setValidRefresh(2);
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
initMemberWechat(enterpriseId);
dto.setEnterpriseId(enterpriseId);
return ResultControllerUtils.commonResult(dataConfigApiService
.configWechatMember(dto));
ServiceResponse<Void> response = dataConfigApiService
.configWechatMember(dto);
if (response.isSuccess()) {
configWechatMember(enterpriseId);
}
return ResultControllerUtils.commonResult(response);
}
private void initMemberWechat(Integer enterpriseId) {
ServiceResponse<List<OwnerMemberCardDTO>> result = memberCardApiService.getAll(enterpriseId);
if (result.isSuccess()) {
List<OwnerMemberCardDTO> list = result.getResult();
if (CollectionUtils.isNotEmpty(list)) {
list.forEach(e -> {
dataConfigApiService.configWechatMember(new DataWechatMemberConfigDTO()
.setEnterpriseId(enterpriseId)
.setMemberCardArea(e.getCardConfigId().toString())
.setValidRefresh(1));
});
}
}
}
private void configWechatMember(Integer enterpriseId) {
ServiceResponse<List<DataWechatMemberConfigDTO>> all = dataConfigApiService
.listWechatMemberConfig(UserDetailUtils.getUserDetail().getEnterpriseId());
if (all.isSuccess()) {
List<DataWechatMemberConfigDTO> allList = all.getResult();
if (CollectionUtils.isNotEmpty(allList)) {
if (allList.stream().allMatch(e -> StringUtils.isNotBlank(e.getRelateService()) && StringUtils.isNotBlank(e.getRelateWechat()))) {
//所有的卡都配置,则初始化
enterpriseInitApiService.configWechatMember(enterpriseId);
}
}
}
}
@RequestMapping("refresh-wechat-member-config")
public RestResponse refreshWechatMemberConfig() {
//
Integer enterpriseId = UserDetailUtils.getUserDetail().getEnterpriseId();
initMemberWechat(enterpriseId);
ServiceResponse<List<DigitalConfigDTO>> response = enterpriseConfigApiService
.getDigitalConfigByEnterpriseId(enterpriseId);
LOGGER.info("刷新数字会员配置:{}", JSON.toJSONString(response));
......@@ -118,18 +155,8 @@ public class DataConfigController {
.setRelateWechat(listToString(e.getAppletsIds()))
.setValidRefresh(1));
});
configWechatMember(enterpriseId);
ServiceResponse<List<OwnerMemberCardDTO>> result = memberCardApiService.getAll(UserDetailUtils.getUserDetail().getEnterpriseId());
if (result.isSuccess()) {
List<OwnerMemberCardDTO> memberCardList = result.getResult();
if (CollectionUtils.isNotEmpty(memberCardList)) {
final Set<String> memberCardSet = memberCardList.stream().map(e -> e.getCardConfigId().toString()).collect(Collectors.toSet());
if (list.stream().allMatch(e -> memberCardSet.contains(e.getCardConfigId().toString()))) {
//所有的卡都配置,则初始化
enterpriseInitApiService.configWechatMember(enterpriseId);
}
}
}
}
}
return RestResponse.success();
......
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