package com.xiaopeng.operation.controller; import com.xiaopeng.api.model.operation.XpSystemSetting; import com.xiaopeng.common.core.constant.CacheConstants; import com.xiaopeng.common.core.domain.R; import com.xiaopeng.common.core.web.controller.BaseController; import com.xiaopeng.common.core.web.domain.AjaxResult; import com.xiaopeng.common.redis.service.RedisService; import com.xiaopeng.operation.service.XpSystemSettingService; import com.xiaopeng.operation.vo.CustomerServicePhoneVo; import com.xiaopeng.unifiedverification.interceptor.XpClientCheck; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @Slf4j @Validated @RestController @RequestMapping("maintenance-app") public class XpSystemSettingAPPController extends BaseController { // 系统设置实现类 private final XpSystemSettingService xpSystemSettingService; private final RedisService redisService; public XpSystemSettingAPPController(XpSystemSettingService xpSystemSettingService, RedisService redisService) { this.xpSystemSettingService = xpSystemSettingService; this.redisService = redisService; } @GetMapping("/base/v1/mini-program/support/phone") @ApiOperation(value = "获取客服电话",tags = {"小程序首页"},response = String.class) public AjaxResult getCustomerServicePhone() { Object customerServicePhone = redisService.getCacheObject(CacheConstants.CUSTOMER_SERVICE_PHONE); if(customerServicePhone!=null){ return success(new CustomerServicePhoneVo(customerServicePhone.toString())); }else { return success(new CustomerServicePhoneVo(xpSystemSettingService.getCustomerServicePhone())); } } // @GetMapping("/support/getOrderDistance") // @ApiOperation(value = "获取下单距离",tags = {"小程序首页-服务调用获取下单距离"},response = Integer.class) // public AjaxResult getOrderDistance() { // return success(xpSystemSettingService.getOrderDistance()); // } @GetMapping("/base/v1/mini-program/support/getOrderDistance") @XpClientCheck(checkToken = false, checkOtpToken = true) @ApiOperation(value = "获取下单距离",tags = {"小程序首页-服务调用获取下单距离"},response = Integer.class) public R getOrderDistance() { return R.ok(xpSystemSettingService.getOrderDistance()); } @GetMapping("/base/v1/support/getOrderDistance") @ApiOperation(value = "获取下单距离",tags = {"小程序首页-服务调用获取下单距离"},response = Integer.class) public R getOrderDistance1() { return R.ok(xpSystemSettingService.getOrderDistance()); } @ApiOperation(value = "获取自动结束行程时间",tags = {"小程序-业务流程"},response = Integer.class) @GetMapping("/api/v1/mini-program/support/getOrderFinishTime") @XpClientCheck(checkToken = false, checkOtpToken = true) public R getOrderFinishTime() { return R.ok(xpSystemSettingService.getOrderFinishTime()); } @GetMapping("/api/v1/support/getOrderFinishTime") public R getOrderFinishTime1() { return R.ok(xpSystemSettingService.getOrderFinishTime()); } @GetMapping("/base/v1/support/phone") @ApiOperation(value = "获取客服电话", tags = {"运维APP-个人中心"}, response = String.class) public R getCustomerPhone() { Object customerServicePhone = redisService.getCacheObject(CacheConstants.CUSTOMER_SERVICE_PHONE); if (customerServicePhone != null) { return R.ok(new CustomerServicePhoneVo(customerServicePhone.toString())); } else { return R.ok(new CustomerServicePhoneVo(xpSystemSettingService.getCustomerServicePhone())); } } @ApiOperation(value = "获取系统配置、热修复", tags = {"管理后台-系统"}) @GetMapping("/api/v1/systemSetting") public R getSystemSetting(){ return R.ok(xpSystemSettingService.lambdaQuery().last("limit 1").one()); } @ApiOperation(value = "保存系统配置、热修复", tags = {"管理后台-系统"}) @PostMapping("/api/v1/systemSetting/save") public R saveSystemSetting(@RequestBody XpSystemSetting xpSystemSetting){ xpSystemSettingService.saveSystemSetting(xpSystemSetting); return R.ok(); } }