huliguo
2025-04-15 451116c1df3c639da15b3d213f3fcff2f585337a
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java
@@ -8,8 +8,11 @@
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.ruoyi.account.api.feignClient.AppUserClient;
import com.ruoyi.account.api.feignClient.AppUserShopClient;
import com.ruoyi.account.api.model.AppUser;
import com.ruoyi.account.api.model.AppUserShop;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.page.PageInfo;
import com.ruoyi.common.security.service.TokenService;
@@ -80,7 +83,7 @@
    @Resource
    private ShopScoreMapper shopScoreMapper;
    @Resource
    private UserShopClient userShopClient;
    private AppUserShopClient appUserShopClient;
    @Resource
    private GoodsService goodsService;
    @Resource
@@ -153,12 +156,12 @@
    @ApiOperation(value = "新增门店", tags = {"管理后台-门店管理"})
    @Transactional(rollbackFor = Exception.class)
    public R<Void> add(@RequestBody Shop shop){
        String phone = shop.getPhone();
        /*String phone = shop.getPhone();
        AppUser appUser = appUserClient.getAppUserByPhone1(phone).getData();
        if (appUser == null){
            return R.fail("该手机号未注册");
        }
     /*   shop.setShopAllPoint(0);
     *//*   shop.setShopAllPoint(0);
        shop.setLowerLevelSharePoint(0);
        shop.setSharePoint(0);
        shop.setServerPoint(0);
@@ -166,20 +169,20 @@
        shop.setGiveawayAllMoney(BigDecimal.ZERO);
        shop.setGiveawayMoney(BigDecimal.ZERO);
        shop.setLowerLevelGiveawayMoney(BigDecimal.ZERO);
        shop.setServerGiveawayMoney(BigDecimal.ZERO);*/
        shop.setServerGiveawayMoney(BigDecimal.ZERO);*//*
        shop.setCanWithdrawMoney(BigDecimal.ZERO);
        shop.setWithdrawMoney(BigDecimal.ZERO);
        shop.setOrderNumber(0);
      /*  shop.setServerOrderNumber(0);
        shop.setCustomOrderNumber(0);*/
      *//*  shop.setServerOrderNumber(0);
        shop.setCustomOrderNumber(0);*//*
        shop.setAppUserId(appUser.getId());
        String city = TencentMapUtil.inverseGeographicalAnalysis(shop.getLongitude(), shop.getLatitude(), false);
        if(!StringUtils.hasLength(city)){
            city = "510100";
        }
        shop.setProvinceCode(city.substring(0, 2) + "0000");
        *//*shop.setProvinceCode(city.substring(0, 2) + "0000");
        shop.setCityCode(city.substring(0, 4) + "00");
        shop.setDistrictCode(city);
        shop.setDistrictCode(city);*//*
        shopService.save(shop);
        Integer shopId = shop.getId();
@@ -249,7 +252,7 @@
        R<List<AppUser>> lowerShopR = appUserClient.setLowerUserShop(appUser.getId(), shopId);
        if (R.isError(lowerShopR)){
            throw new RuntimeException("更换下级会员绑定门店失败");
        }
        }*/
        return R.ok();
    }
@@ -258,9 +261,7 @@
    @ApiOperation(value = "门店详情", tags = {"管理后台-门店管理"})
    public R<Shop> getDetailById(@RequestParam("id") Integer id){
        Shop shop = shopService.getById(id);
        if (null != shop.getPid() && shop.getPid()==0){
            shop.setPid(null);
        }
        return R.ok(shop);
    }
@@ -301,23 +302,17 @@
    @PutMapping("/editShop")
    @ApiOperation(value = "门店管理-编辑门店", tags = {"管理后台-门店管理"})
    public R<Void> editShop(@RequestBody Shop shop){
        String phone = shop.getPhone();
        /*String phone = shop.getPhone();
        if (!shopService.cheUserByPhone(phone)) {
            return R.fail("该手机号未注册");
        }
        if (shop.getPid() != null && shop.getPid() != 0){
            Shop shopP = shopService.getById(shop.getPid());
            if (shopP.getPid()!=null&&shopP.getPid()!=0&& shopP.getPid().equals(shop.getId())){
                return R.fail("门店之间不能互相作为上级门店");
            }
        }
        String city = TencentMapUtil.inverseGeographicalAnalysis(shop.getLongitude(), shop.getLatitude(), false);
        if(!StringUtils.hasLength(city)){
            city = "510100";
        }
        shop.setProvinceCode(city.substring(0, 2) + "0000");
        *//*shop.setProvinceCode(city.substring(0, 2) + "0000");
        shop.setCityCode(city.substring(0, 4) + "00");
        shop.setDistrictCode(city);
        shop.setDistrictCode(city);*//*
        Shop old_shop = shopService.getById(shop.getId());
        shopService.updateById(shop);
        //修改管理员
@@ -397,7 +392,7 @@
                userShop.setCreateTime(LocalDateTime.now());
                userShopClient.saveUserShop(userShop);
            }
        }
        }*/
        return R.ok();
    }
@@ -409,7 +404,7 @@
    @PutMapping("/freezingOrThawing")
    @ApiOperation(value = "门店管理-冻结/解冻门店", tags = {"管理后台-门店管理"})
    public R freezingOrThawing(@RequestParam("id") Integer id, @RequestParam("status") Integer status){
        Shop shop = shopService.getById(id);
       /* Shop shop = shopService.getById(id);
        if(shop.getStatus().equals(status)){
            return R.fail("不能重复操作");
        }
@@ -460,7 +455,7 @@
                    }
                }
            }
        }
        }*/
        
        return R.ok();
    }
@@ -493,7 +488,7 @@
    @GetMapping ("/resetPassword")
    @ApiOperation(value = "重置密码", tags = {"管理后台-门店管理"})
    public R<Void> resetPassword(@RequestParam(value = "ids") String ids) {
        String[] idsArr = ids.split(",");
       /* String[] idsArr = ids.split(",");
        for (String id : idsArr) {
            Shop shop = shopService.getById(Integer.valueOf(id));
            UserShop userShop = new UserShop();
@@ -504,7 +499,7 @@
            String s = MD5Generator.generateMD5(userData.getPhonenumber().substring(5));
            userData.setPassword(s);
            sysUserClient.resetPassword(userData);
        }
        }*/
        return R.ok();
    }
@@ -601,11 +596,7 @@
        return R.ok(one);
    }
/*    @PostMapping("/getShopByUserIds")
    public R<List<Shop>> getShopByUserIds(@RequestBody List<Long> userIds){
        List<Shop> list = shopService.list(new LambdaQueryWrapper<Shop>().in(Shop::getAppUserId, userIds));
        return R.ok(list);
    }*/
    /**
     * 根据名称查询门店id
@@ -667,28 +658,27 @@
    @ApiOperation(value = "获取可切换的门店列表", tags = {"门店后台-首页"})
    public R<List<VerifiableShopVo>> getSysUserShop(@ApiParam("经度") @RequestParam(required = false) BigDecimal longitude,
                                                    @ApiParam("纬度") @RequestParam(required = false) BigDecimal latitude){
        Long userid = tokenService.getLoginUser().getUserid();
        UserShop userShop = new UserShop();
        userShop.setUserId(userid);
        List<UserShop> data = userShopClient.getUserShop(userShop).getData();
        Long userid = tokenService.getLoginUserApplet().getUserid();
        List<AppUserShop> data = appUserShopClient.getUserShopListByUserId(userid).getData();
        if (null == data || data.isEmpty()) {
            return R.ok();
            return R.fail("暂无其他门店可切换");
        }
        List<Integer> collect = data.stream().map(UserShop::getShopId).collect(Collectors.toList());
        List<Integer> collect = data.stream().map(AppUserShop::getShopId).collect(Collectors.toList());
        List<Shop> shops = shopService.list(new LambdaQueryWrapper<Shop>()
                .in(!CollectionUtils.isEmpty(collect),Shop::getId, collect)
                .eq(Shop::getDelFlag, 0).eq(Shop::getStatus, 1));
        if (shops == null || shops.isEmpty()) {
            return  R.ok();
            return  R.fail("暂无其他门店可切换");
        }
        List<VerifiableShopVo> list = new ArrayList<>();
        for (Shop shop : shops) {
            VerifiableShopVo vo = new VerifiableShopVo();
            BeanUtils.copyProperties(shop, vo);
            vo.setId(shop.getId());
            vo.setName(shop.getName());
            vo.setHomePicture(shop.getHomePicture());
            String address = shop.getProvince() + shop.getCity() + shop.getDistrict()+ shop.getAddress();
            vo.setAddress(address);
            if (null != latitude && null != longitude) {
                Double wgs84 = GeodesyUtil.getDistance(longitude + "," + latitude, shop.getLongitude() + "," + shop.getLatitude()).get("WGS84");
                vo.setDistance(wgs84.longValue());
@@ -756,7 +746,9 @@
    @ResponseBody
    @GetMapping("/getGoodsListByShopId")
    @ApiOperation(value = "获取门店内商品列表", tags = {"门店后台-首页"})
    public R<PageInfo<GoodsVO>> getGoodsListByShopId(@ApiParam("门店id") Integer shopId, Integer pageCurr, Integer pageSize) {
    public R<PageInfo<GoodsVO>> getGoodsListByShopId(@ApiParam("门店id")@RequestParam("shopId") Integer shopId,
                                                     @ApiParam("门店id")@RequestParam("pageCurr") Integer pageCurr,
                                                     @ApiParam("门店id")@RequestParam("pageSize") Integer pageSize) {
        PageInfo<GoodsVO> pageInfo = new PageInfo<>(pageCurr, pageSize);
        List<GoodsVO> goodsList = shopService.getGoodsListByShopId(pageInfo, shopId);
        return R.ok(pageInfo.setRecords(goodsList));