From 609d91e1e62b1e8932b34b15b09baf02e7f09a93 Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期一, 09 十二月 2024 10:36:47 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/qijisheng --- ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java | 136 +++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 124 insertions(+), 12 deletions(-) diff --git a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java index 359acf3..41c12e5 100644 --- a/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java +++ b/ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/ShopController.java @@ -2,19 +2,37 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.ruoyi.account.api.feignClient.AppUserClient; +import com.ruoyi.account.api.model.AppUser; +import com.ruoyi.common.core.domain.R; import com.ruoyi.common.core.web.controller.BaseController; import com.ruoyi.common.core.web.domain.AjaxResult; +import com.ruoyi.common.security.service.TokenService; +import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.other.api.domain.Shop; +import com.ruoyi.other.api.domain.ShopScore; import com.ruoyi.other.api.domain.Technician; +import com.ruoyi.other.enums.ShopStatus; +import com.ruoyi.other.service.ShopScoreService; +import com.ruoyi.other.service.ShopService; import com.ruoyi.other.service.TechnicianService; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.other.vo.NearbyShopVO; +import com.ruoyi.other.vo.ShopDetailVO; +import com.ruoyi.other.vo.VerifiableShopVo; +import com.ruoyi.system.api.model.LoginUser; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.List; /** * <p> - * 前端控制器 + * 前端控制器 * </p> * * @author luodangjia @@ -22,23 +40,117 @@ */ @RestController @RequestMapping("/shop") +@Api(tags = "门店") public class ShopController extends BaseController { @Resource private TechnicianService technicianService; + @Resource + private ShopService shopService; + @Resource + private AppUserClient appUserClient; + @Resource + private ShopScoreService shopScoreService; + @Resource + private TokenService tokenService; - + @PostMapping("/getDetailById") + public R<Shop> getDetailById(@RequestParam("id") Long id){ + Shop byId = shopService.getById(id); + return R.ok(byId); + } /** - * 指定门店技师列表 + * 附近门店列表 */ - @RequestMapping("/technicianList") - public AjaxResult technicianList(@RequestParam String shopId){ - return success(technicianService.list(new LambdaQueryWrapper<Technician>() - .eq(Technician::getShopId,shopId) - .eq(Technician::getStatus,2) - .eq(Technician::getSubscribeStatus,1))); + @GetMapping("/nearbyShopList") + @ApiOperation(value = "附近门店列表", tags = {"小程序-首页-附近门店列表"}) + public R<List<NearbyShopVO>> nearbyShopList(@ApiParam("经度") @RequestParam BigDecimal longitude, + @ApiParam("纬度") @RequestParam BigDecimal latitude) { + return R.ok(shopService.nearbyShopList(longitude, latitude)); + } + + + @GetMapping("/shopDetail") + @ApiOperation(value = "门店详情", tags = {"小程序-首页-门店详情"}) + public R<ShopDetailVO> shopDetail(@ApiParam("门店id") @RequestParam Integer shopId, + @ApiParam("经度") @RequestParam BigDecimal longitude, + @ApiParam("纬度") @RequestParam BigDecimal latitude) { + return R.ok(shopService.getShopDetail(shopId, longitude, latitude)); + } + + /** + * 查询当前店长所属门店 + */ + @GetMapping("/shopByUser") + @ApiOperation(value = "查询当前店长所属门店", tags = {"小程序-个人中心-首页"}, notes = "可绑定的门店列表") + public R<List<Shop>> shopByUser() { + List<Shop> list = shopService.list(new LambdaQueryWrapper<Shop>() + .eq(Shop::getAppUserId, SecurityUtils.getUserId()) + .eq(Shop::getStatus, ShopStatus.SHOP_STATUS_NORMAL.getCode())); + return R.ok(list); + } + + /** + * 绑定门店 + */ + @GetMapping("/bindShop") + @ApiOperation(value = "绑定门店", tags = {"小程序-个人中心-绑定门店"}) + public R<Void> bindShop(@ApiParam("门店id") @RequestParam Long shopId) { + AppUser appUser = appUserClient.getAppUserById(SecurityUtils.getUserId()); + appUser.setShopId(shopId); + return appUserClient.editAppUserById(appUser); + } + + /** + * 门店打分 + * @return + */ + @PostMapping("/shopScore") + @ApiOperation(value = "门店打分", tags = {"小程序-个人中心-门店打分"}) + public R<Void> shopScore(@RequestBody ShopScore shopScore) { + LoginUser loginUserApplet = tokenService.getLoginUserApplet(); + shopScore.setAppUserId(loginUserApplet.getUserid()); + shopScore.setCreateTime(LocalDateTime.now()); + shopScoreService.save(shopScore); + return R.ok(); + } + + + + @ResponseBody + @GetMapping("/getVerifiableShop") + @ApiOperation(value = "获取可核销门店列表", tags = {"购物车-小程序"}) + public R<List<VerifiableShopVo>> getVerifiableShop(){ + // todo 待完善 pu + return R.ok(); + } + + + /** + * 根据id获取门店信息 + * @param id + * @return + */ + @ResponseBody + @PostMapping("/getShopById") + public R<Shop> getShopById(@RequestParam("id") Integer id){ + Shop shop = shopService.getById(id); + return R.ok(shop); + } + + + /** + * 根据店铺管理员电话获取门店数据 + * @param phone + * @return + */ + @ResponseBody + @PostMapping("/getShopByPhone") + public R<Shop> getShopByPhone(@RequestParam("phone") String phone){ + Shop one = shopService.getOne(new LambdaQueryWrapper<Shop>().eq(Shop::getPhone, phone).eq(Shop::getDelFlag, 0).eq(Shop::getStatus, 1)); + return R.ok(one); } } -- Gitblit v1.7.1