Commit e981461d by fudahua

feat: 会员卡

parent 7cfb493e
......@@ -7,6 +7,7 @@ public enum QueryFilterCodeEnum {
STORE_CODE("storeCode","门店编号筛选"),
STORE_NAME("storeName","门店名称筛选"),
STORE_GROUP_NAME("storeGroupName","门店分组筛选"),
GRADE("grade","会员等级"),
;
private String code;
private String name;
......
......@@ -214,6 +214,11 @@
<artifactId>gic-clerk-api</artifactId>
<version>${gic-clerk-api}</version>
</dependency>
<dependency>
<groupId>com.gic</groupId>
<artifactId>gic-member-api</artifactId>
<version>${gic-member-api}</version>
</dependency>
</dependencies>
<build>
......
package com.gic.cloud.data.hook.service.deal.queryfilter;
import com.gic.api.base.commons.Page;
import com.gic.clerk.api.dto.ClerkDTO;
import com.gic.clerk.api.service.ClerkService;
import com.gic.cloud.data.hook.api.dto.FilterQueryDataDTO;
import com.gic.cloud.data.hook.api.enums.QueryFilterCodeEnum;
import com.gic.cloud.data.hook.service.deal.BaseQueryFilter;
import com.gic.cloud.data.hook.service.deal.QueryFilterContext;
import com.gic.cloud.data.hook.service.entity.QueryFilterInfo;
import com.gic.member.api.dto.GradeBaseDTO;
import com.gic.member.api.service.GradeService;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class MemberGradeNameQueryFilter implements BaseQueryFilter {
@Autowired
private GradeService gradeService;
@Override
public boolean checkFilter(QueryFilterContext context) {
QueryFilterInfo queryFilterInfo = context.getQueryFilterInfo();
if (null == queryFilterInfo||queryFilterInfo.getFilterCode()==null) {
return false;
}
return queryFilterInfo.getFilterCode().equals(QueryFilterCodeEnum.GRADE.getCode());
}
@Override
public Page<FilterQueryDataDTO> pageQueryData(QueryFilterContext context) {
List<GradeBaseDTO> gradeDTOList = gradeService.getGradeDTOList(context.getEnterpriseId());
Page<FilterQueryDataDTO> ret =new Page<>();
ret.setPageSize(context.getPageSize());
ret.setCurrentPage(context.getPageNum());
ret.setTotalCount(gradeDTOList.size());
List<FilterQueryDataDTO> retList = gradeDTOList.stream().map(mid -> {
FilterQueryDataDTO filterQueryDataDTO = new FilterQueryDataDTO();
filterQueryDataDTO.setShowName(mid.getGradeName());
filterQueryDataDTO.setItemValue(mid.getGradeName());
filterQueryDataDTO.setSubShowName(mid.getGradeName());
return filterQueryDataDTO;
}).collect(Collectors.toList());
ret.setResult(retList);
return ret;
}
@Override
public List<FilterQueryDataDTO> listBackByItems(QueryFilterContext context) {
List<GradeBaseDTO> gradeDTOList = gradeService.getGradeDTOList(context.getEnterpriseId());
if (CollectionUtils.isEmpty(gradeDTOList)) {
return null;
}
List<FilterQueryDataDTO> retList = gradeDTOList.stream().map(mid -> {
FilterQueryDataDTO filterQueryDataDTO = new FilterQueryDataDTO();
filterQueryDataDTO.setShowName(mid.getGradeName());
filterQueryDataDTO.setItemValue(mid.getGradeName());
filterQueryDataDTO.setSubShowName(mid.getGradeName());
return filterQueryDataDTO;
}).collect(Collectors.toList());
return retList;
}
}
......@@ -40,6 +40,7 @@
<dubbo:reference interface="com.gic.clerk.api.service.ClerkService" id="clerkService" timeout="10000" />
<dubbo:reference interface="com.gic.enterprise.api.service.StoreService" id="storeService" timeout="10000" />
<dubbo:reference interface="com.gic.enterprise.api.service.StoreGroupService" id="storeGroupService" timeout="10000" />
<dubbo:reference interface="com.gic.member.api.service.GradeService" id="gradeService" timeout="10000" />
<!-- 引用的 Dubbo 服务 -->
<!--<dubbo:reference interface="com.gic.dict.api.service.ManagerDictService" id="managerDictService" timeout="10000" />
......
......@@ -30,7 +30,7 @@ public class QueryFilterTest {
@Test
public void test(){
QueryFilterContext queryFilterContext = new QueryFilterContext();
DhFlatQueryFilter dhFlatQueryFilter = dhFlatQueryFilterMapper.selectByPrimaryKey(2L);
DhFlatQueryFilter dhFlatQueryFilter = dhFlatQueryFilterMapper.selectByPrimaryKey(46L);
if (null == dhFlatQueryFilter) {
return;
}
......
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