From 04b4bddaac0a222760113899568d20b45af701f4 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 27 九月 2024 19:04:14 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
server/service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 52 insertions(+), 5 deletions(-)
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
index a1c246c..44ba5fd 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
@@ -914,7 +914,7 @@
}
IPage<Shop> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
MPJLambdaWrapper<Shop> queryWrapper = new MPJLambdaWrapper<>();
- queryWrapper.select("ID,NAME,ADDRESS,PROVINCE_NAME,CITY_NAME,AREA_NAME,TOWN,AREA_NAME,LEGAL_PHONE " +
+ queryWrapper.select("ID,NAME,LINK_PHONE,ADDRESS,PROVINCE_NAME,CITY_NAME,AREA_NAME,TOWN,AREA_NAME,LEGAL_PHONE " +
" , (6371 * ACOS(COS(RADIANS("+pageWrap.getModel().getLatitude()+")) * COS(RADIANS(latitude)) * COS(RADIANS(longitude) - RADIANS("+pageWrap.getModel().getLongitude()+")) + SIN(RADIANS("+pageWrap.getModel().getLatitude()+")) * SIN(RADIANS(latitude)) ) ) as distance " )
.eq("isdeleted",Constants.ZERO)
.isNotNull("LATITUDE")
@@ -959,7 +959,7 @@
if(distanceM.compareTo(new BigDecimal(100))<0){
shop.setDistanceStr("<100绫�");
}else{
- shop.setDistanceStr(distanceM.divide(BigDecimal.valueOf(1)).setScale(2,BigDecimal.ROUND_HALF_UP) + "m");
+ shop.setDistanceStr(distanceM.divide(BigDecimal.valueOf(1)).setScale(0,BigDecimal.ROUND_HALF_UP) + "m");
}
}else{
shop.setDistanceStr(shop.getDistance().divide(BigDecimal.valueOf(1)).setScale(2,BigDecimal.ROUND_HALF_UP) + "km");
@@ -974,7 +974,7 @@
Member member = memberMapper.selectById(memberId);
//濡傛灉浜哄憳娌℃湁缁忕含搴︿俊鎭紝鍒欎笉鏌ヨ璺濈
if(Objects.nonNull(member)&&Objects.nonNull(member.getLatitude())&&Objects.nonNull(member.getLongitude())){
- queryWrapper.select("ID,NAME,ADDRESS,PROVINCE_NAME,CITY_NAME,AREA_NAME,TOWN,AREA_NAME,LEGAL_PHONE " +
+ queryWrapper.select(" * " +
" , (6371 * ACOS(COS(RADIANS("+member.getLatitude()+")) * COS(RADIANS(latitude)) * COS(RADIANS(longitude) - RADIANS("+member.getLongitude()+")) + SIN(RADIANS("+member.getLatitude()+")) * SIN(RADIANS(latitude)) ) ) as distance " );
}
}
@@ -997,7 +997,7 @@
}
shop.setUsersList(usersList);
//鏌ヨ缁忚惀鑼冨洿淇℃伅
- List<CategorySeg> categorySegList = categorySegMapper.selectList(new QueryWrapper<CategorySeg>().lambda().eq(CategorySeg::getOrgId,shop.getOrgId()).eq(CategorySeg::getIsdeleted,Constants.ZERO));
+ List<CategorySeg> categorySegList = categorySegMapper.selectList(new QueryWrapper<CategorySeg>().lambda().eq(CategorySeg::getScode,shop.getScode()).eq(CategorySeg::getIsdeleted,Constants.ZERO));
if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(categorySegList)){
List<UnitCodeVo> unitCodeVoList =systemDictDataBiz.getUnitList();
List<String> seqNameList = new ArrayList<>();
@@ -1007,7 +1007,8 @@
seqNameList.add(seqName);
}
}
- shop.setSeqNameList(seqNameList);
+ Set<String> hs = new HashSet<String>(seqNameList);
+ shop.setSeqNameList(new ArrayList<String>(hs));
}
return shop;
}
@@ -1032,4 +1033,50 @@
);
}
+ @Override
+ public List<Shop> getUserShopList(Long userId) {
+ Users users = usersMapper.selectById(userId);
+ if(Objects.isNull(users)){
+ return new ArrayList<>();
+ }
+ Shop userShop = shopMapper.selectById(users.getDepartmentId());
+ if(Objects.isNull(userShop)){
+ return new ArrayList<>();
+ }
+ Boolean manageShop = true;
+ if(users.getRoleCodes().indexOf(StringUtils.trimToNull(systemDictDataBiz.queryByCode(Constants.ZBOM_CUSTOMIZED,Constants.USERS_MANAGE_CODE).getCode()))>=0){
+ manageShop = false;
+ }
+ List<Shop> shopList = shopMapper.selectList(new QueryWrapper<Shop>()
+ .lambda()
+ .eq(Shop::getScode,userShop.getScode())
+ .eq(Shop::getType,Constants.TWO)
+ .eq(Shop::getSecondType,Constants.THREE)
+ .apply(manageShop,"1=2")
+ );
+ //鏌ヨ缁忚惀鑼冨洿淇℃伅
+ List<CategorySeg> categorySegAllList = categorySegMapper.selectList(new QueryWrapper<CategorySeg>().lambda()
+ .isNotNull(CategorySeg::getOrgId)
+ .eq(CategorySeg::getIsdeleted,Constants.ZERO));
+ if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(categorySegAllList)){
+ for (Shop shop:shopList) {
+ if(StringUtils.isBlank(shop.getOrgId())){
+ continue;
+ }
+ List<CategorySeg> categorySegList = categorySegAllList.stream().filter(i->i.getScode().equals(shop.getScode())).collect(Collectors.toList());
+ List<UnitCodeVo> unitCodeVoList =systemDictDataBiz.getUnitList();
+ List<String> seqNameList = new ArrayList<>();
+ for(CategorySeg model : categorySegList){
+ String seqName = systemDictDataBiz.getUnitName(model.getUnitCode(),unitCodeVoList);
+ if(Objects.nonNull(seqName)){
+ seqNameList.add(seqName);
+ }
+ }
+ Set<String> hs = new HashSet<String>(seqNameList);
+ shop.setSeqNameList(new ArrayList<String>(hs));
+ }
+ }
+ return shopList;
+ }
+
}
--
Gitblit v1.9.3