123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- package com.qtzl.alterSales.manager.handler;
-
- import cn.com.taiji.common.manager.net.http.ServiceHandleException;
- import cn.hutool.core.bean.BeanUtil;
- import cn.hutool.core.util.DesensitizedUtil;
- import com.google.common.collect.Lists;
- import com.qtzl.alterSales.dao.entity.second.AflCenterUserInfo;
- import com.qtzl.alterSales.dao.repo.jpa.second.AflCenterUserInfoRepo;
- import com.qtzl.alterSales.manager.abstracts.AbstractAfterSalesManager;
- import com.qtzl.alterSales.manager.model.protocol.UcServiceError;
- import com.qtzl.alterSales.manager.model.protocol.sales.AflCenterUserInfoFindPageViewRequest;
- import com.qtzl.alterSales.manager.model.protocol.sales.AflCenterUserInfoFindPageViewResponse;
- import com.qtzl.alterSales.manager.service.AfterSalesCmd;
- import com.qtzl.alterSales.manager.vo.AflCenterUserInfoVo;
- import com.txffp.api.core.manager.comm.annotation.ApiHandler;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.data.domain.Page;
- import org.springframework.data.domain.PageRequest;
- import org.springframework.data.domain.Sort;
- import org.springframework.stereotype.Service;
-
- import javax.annotation.Resource;
- import javax.persistence.criteria.Predicate;
- import java.time.LocalDateTime;
- import java.util.List;
- import java.util.stream.Collectors;
-
- /**
- *账户管理查询
- */
- @Service
- @ApiHandler
- public class AflCenterUserInfoFindPageHandler extends AbstractAfterSalesManager<AflCenterUserInfoFindPageViewRequest> {
-
- @Resource
- private AflCenterUserInfoRepo aflCenterUserInfoRepo;
-
- public AflCenterUserInfoFindPageHandler() {
- super(AfterSalesCmd.FINDPAGECENTERUSERINFO, AflCenterUserInfoFindPageViewRequest.class);
- }
-
-
- @Override
- public String handleInternal(String filename, AflCenterUserInfoFindPageViewRequest request) throws ServiceHandleException {
- try {
- Page<AflCenterUserInfo> page = select(request);
- return toResponse(page, request).toJson();
- } catch (Exception e) {
- if (e instanceof ServiceHandleException) {
- throw e;
- }
- logger.error("选装-账户管理查询失败:{}", e.getMessage());
- throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("账户管理查询失败");
- }
- }
-
- private AflCenterUserInfoFindPageViewResponse toResponse(Page<AflCenterUserInfo> page, AflCenterUserInfoFindPageViewRequest request) {
- final AflCenterUserInfoFindPageViewResponse response = new AflCenterUserInfoFindPageViewResponse();
- response.setCurrentPage(request.getPageNo());
- response.setPageSize(request.getPageSize());
- response.setPageCount(page.getTotalPages());
- response.setTotalCount(page.getTotalElements());
- if (isEmpty(page.getContent())) {
- response.setData(Lists.newArrayList());
- return response;
- }
- List<AflCenterUserInfoVo> formVoList = page.getContent().stream().map(this::toVo).collect(Collectors.toList());
- response.setData(formVoList);
- return response;
- }
-
- private Page<AflCenterUserInfo> select(AflCenterUserInfoFindPageViewRequest request) throws ServiceHandleException {
- if (request.getPageSize() > 100) {
- throw UcServiceError.BUSINESS_VALIDATE_ERR.toHandleException("请求每页数量过大 " + request.getPageSize());
- }
- return aflCenterUserInfoRepo.findAll(((root, query, cb) -> {
- List<Predicate> list = Lists.newArrayList();
- if (!StringUtils.isEmpty(request.getAccountId())) {
- list.add(cb.equal(root.<String>get("accountId"), request.getAccountId()));
- }
- if (!StringUtils.isEmpty(request.getName())) {
- list.add(cb.like(root.<String>get("name"), "%"+request.getName()+"%"));
- }
- if (!StringUtils.isEmpty(request.getAccountType())) {
- list.add(cb.equal(root.<String>get("accountType"), request.getAccountType()));
- }
- if (!StringUtils.isEmpty(request.getIdType())) {
- list.add(cb.equal(root.<String>get("idType"), request.getIdType()));
- }
- if (!StringUtils.isEmpty(request.getIdNum())) {
- list.add(cb.equal(root.<String>get("idNum"), request.getIdNum()));
- }
- if (!StringUtils.isEmpty(request.getMobile())) {
- list.add(cb.equal(root.<String>get("mobile"), request.getMobile()));
- }
- if (!StringUtils.isEmpty(request.getAgentName())) {
- list.add(cb.like(root.<String>get("agentName"), "%"+request.getAgentName()+"%"));
- }
- if (!StringUtils.isEmpty(request.getAgentIdType())) {
- list.add(cb.equal(root.<String>get("agentIdType"), request.getAgentIdType()));
- }
- if (!StringUtils.isEmpty(request.getAgentIdNum())) {
- list.add(cb.equal(root.<String>get("agentIdNum"), request.getAgentIdNum()));
- }
- if (!StringUtils.isEmpty(request.getStatus())) {
- list.add(cb.equal(root.<String>get("status"), request.getStatus()));
- }
- if (request.getInsertTimeStart() != null) {
- list.add(cb.greaterThanOrEqualTo(root.<LocalDateTime>get("insertTime"), request.getInsertTimeStart()));
- }
- if (request.getInsertTimeEnd() != null) {
- list.add(cb.lessThanOrEqualTo(root.<LocalDateTime>get("insertTime"), request.getInsertTimeEnd()));
- }
- Predicate[] p = new Predicate[list.size()];
- return cb.and(list.toArray(p));
- }), PageRequest.of(request.getPageNo() - 1, request.getPageSize(),
- Sort.by(Sort.Direction.DESC, "insertTime")));
- }
-
- private AflCenterUserInfoVo toVo(AflCenterUserInfo aflCenterUserInfo) {
- AflCenterUserInfoVo aflCenterUserInfoVo = new AflCenterUserInfoVo();
- BeanUtil.copyProperties(aflCenterUserInfo, aflCenterUserInfoVo);
- if (!StringUtils.isEmpty(aflCenterUserInfoVo.getIdNum())&&aflCenterUserInfoVo.getIdNum().length()==18){
- aflCenterUserInfoVo.setIdNum(DesensitizedUtil.idCardNum(aflCenterUserInfoVo.getIdNum(), 3, 4));
- }
- if (!StringUtils.isEmpty(aflCenterUserInfoVo.getMobile())&&aflCenterUserInfoVo.getMobile().length()==11){
- aflCenterUserInfoVo.setIdNum(DesensitizedUtil.mobilePhone(aflCenterUserInfoVo.getMobile()));
- }
- return aflCenterUserInfoVo;
- }
- }
|