| | |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.config.Jwt.JwtPayLoad; |
| | | import com.doumee.config.Jwt.JwtTokenUtil; |
| | | import com.doumee.config.listener.event.VisitEvent; |
| | | import com.doumee.core.model.LoginUserInfo; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | |
| | | |
| | | queryWrapper.leftJoin(Member.class,Member::getId,Shop::getMemberId); |
| | | queryWrapper.leftJoin(Labels.class,Labels::getId,Shop::getBigAreaId); |
| | | |
| | | if(pageWrap.getModel().getAreaId()!=null){ |
| | | queryWrapper.eq( Shop::getAreaId, pageWrap.getModel().getAreaId()); |
| | | }else if(pageWrap.getModel().getCityId()!=null){ |
| | | queryWrapper.leftJoin("areas a1 on a1.id=t.area_id"); |
| | | queryWrapper.leftJoin("areas a2 on a2.id=a1.parent_id"); |
| | | queryWrapper.apply("a2.id ="+pageWrap.getModel().getCityId()); |
| | | } else if (pageWrap.getModel().getProvinceId()!=null){ |
| | | queryWrapper.leftJoin("areas a1 on a1.id=t.area_id"); |
| | | queryWrapper.leftJoin("areas a2 on a2.id=a1.parent_id"); |
| | | queryWrapper.leftJoin("areas a3 on a3.id=a2.parent_id"); |
| | | queryWrapper.apply("a3.id ="+pageWrap.getModel().getProvinceId()); |
| | | } |
| | | queryWrapper.eq(Shop::getIsdeleted, Constants.ZERO); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getCode()) ,Shop::getCode,pageWrap.getModel().getCode()); |
| | | queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getUsername()) ,Shop::getName,pageWrap.getModel().getUsername()); |
| | |
| | | dto.setLabels(labels.stream().map(s->s.getName()).collect(Collectors.toList())); |
| | | List<ShopMenuDTO> shopMenuDTO = shopMenuService.findShopMenuDTO(shopId); |
| | | dto.setShopMenuDTOList(shopMenuDTO); |
| | | //访问操作 |
| | | VisitEvent<Shop> shopVisitEvent = new VisitEvent<>(this,shop); |
| | | applicationEventPublisher.publishEvent(shopVisitEvent); |
| | | return dto; |
| | | } |
| | | |
| | |
| | | .selectAll(Shop.class) |
| | | .select(" CONVERT( ST_Distance_Sphere ( POINT ( LONGITUDE, LATITUDE ), POINT ( '"+dto.getLgt()+"' , '"+dto.getLat()+"' )) /1000,DECIMAL(15,2))",Shop::getDistance) |
| | | .leftJoin(SystemUser.class,SystemUser::getId,Shop::getCreator) |
| | | .like(StringUtils.isNotBlank(dto.getCityName()),Shop::getAddr,dto.getCityName()) |
| | | .leftJoin("areas a1 on a1.id=t.area_id") |
| | | .leftJoin("areas a2 on a2.id=a1.parent_id") |
| | | .like(StringUtils.isNotBlank(dto.getCityName()),"a2.name",dto.getCityName()) |
| | | .like(StringUtils.isNotBlank(dto.getShopName()),Shop::getName,dto.getShopName()) |
| | | .orderByDesc(!isArea,Shop::getId) |
| | | .orderByAsc(isArea," distance ") |