diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/SysRoleDao.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/SysRoleDao.java
index 56c3b18f3..90ae46db8 100644
--- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/SysRoleDao.java
+++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/SysRoleDao.java
@@ -60,4 +60,21 @@ public class SysRoleDao {
return sysRoleDOS.stream().collect(Collectors.toMap(k->k.getId(), v->v.getRoleName(), (k1, k2)->k1));
}
+ /**
+ * 查询优先级最高的角色
+ * @param userId 用户id
+ * @return 角色
+ */
+ public SysRoleDO getHighestPrioritySysRoleDoByUserId(String userId) {
+ return sysRoleMapper.getHighestPrioritySysRoleDoByUserId(userId);
+ }
+
+ /**
+ * 根据角色枚举查询角色
+ * @param roleEnum 角色枚举
+ * @return 角色
+ */
+ public SysRoleDO getRoleByRoleEnum(String roleEnum) {
+ return sysRoleMapper.getRoleByRoleEnum(roleEnum);
+ }
}
diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/menu/MiniMenuConfigDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/menu/MiniMenuConfigDAO.java
new file mode 100644
index 000000000..d4e44b2aa
--- /dev/null
+++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/menu/MiniMenuConfigDAO.java
@@ -0,0 +1,31 @@
+package com.cool.store.dao.menu;
+
+import com.cool.store.entity.menu.MiniMenuConfigDO;
+import com.cool.store.mapper.menu.MiniMenuConfigMapper;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ *
+ * 小程序菜单配置
+ *
+ *
+ * @author wangff
+ * @since 2025/10/31
+ */
+@Repository
+@RequiredArgsConstructor
+public class MiniMenuConfigDAO {
+ private final MiniMenuConfigMapper miniMenuConfigMapper;
+
+ /**
+ * 根据角色id查询
+ * @param roleId 角色id
+ * @return 菜单配置列表
+ */
+ public List getListByRoleId(Long roleId) {
+ return miniMenuConfigMapper.select(MiniMenuConfigDO.builder().roleId(roleId).build());
+ }
+}
diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/menu/MiniMenuDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/menu/MiniMenuDAO.java
new file mode 100644
index 000000000..3c3f33742
--- /dev/null
+++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/menu/MiniMenuDAO.java
@@ -0,0 +1,34 @@
+package com.cool.store.dao.menu;
+
+import com.cool.store.entity.menu.MiniMenuDO;
+import com.cool.store.mapper.menu.MiniMenuMapper;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.collections4.CollectionUtils;
+import org.springframework.stereotype.Repository;
+import tk.mybatis.mapper.entity.Example;
+
+import java.util.Collections;
+import java.util.List;
+
+/**
+ *
+ * 小程序菜单DAO
+ *
+ *
+ * @author wangff
+ * @since 2025/11/28
+ */
+@Repository
+@RequiredArgsConstructor
+public class MiniMenuDAO {
+ private final MiniMenuMapper miniMenuMapper;
+
+ public List getByIds(List ids) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return Collections.emptyList();
+ }
+ Example example = new Example(MiniMenuDO.class);
+ example.createCriteria().andIn("id", ids);
+ return miniMenuMapper.selectByExample(example);
+ }
+}
diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/menu/MiniMenuConfigMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/menu/MiniMenuConfigMapper.java
new file mode 100644
index 000000000..a7d59a6ac
--- /dev/null
+++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/menu/MiniMenuConfigMapper.java
@@ -0,0 +1,7 @@
+package com.cool.store.mapper.menu;
+
+import com.cool.store.entity.menu.MiniMenuConfigDO;
+import tk.mybatis.mapper.common.Mapper;
+
+public interface MiniMenuConfigMapper extends Mapper {
+}
\ No newline at end of file
diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/menu/MiniMenuMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/menu/MiniMenuMapper.java
new file mode 100644
index 000000000..e5e72cc4b
--- /dev/null
+++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/menu/MiniMenuMapper.java
@@ -0,0 +1,7 @@
+package com.cool.store.mapper.menu;
+
+import com.cool.store.entity.menu.MiniMenuDO;
+import tk.mybatis.mapper.common.Mapper;
+
+public interface MiniMenuMapper extends Mapper {
+}
\ No newline at end of file
diff --git a/coolstore-partner-dao/src/main/resources/mapper/menu/MiniMenuConfigMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/menu/MiniMenuConfigMapper.xml
new file mode 100644
index 000000000..1857cb167
--- /dev/null
+++ b/coolstore-partner-dao/src/main/resources/mapper/menu/MiniMenuConfigMapper.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/coolstore-partner-dao/src/main/resources/mapper/menu/MiniMenuMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/menu/MiniMenuMapper.xml
new file mode 100644
index 000000000..72065b4a8
--- /dev/null
+++ b/coolstore-partner-dao/src/main/resources/mapper/menu/MiniMenuMapper.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/LaunchDataDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/LaunchDataDTO.java
index 90eb0e210..586a7b61b 100644
--- a/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/LaunchDataDTO.java
+++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/LaunchDataDTO.java
@@ -18,4 +18,7 @@ public class LaunchDataDTO {
@ApiModelProperty("上新时间,yyyy-MM-dd")
private String upSaleDate;
+
+ @ApiModelProperty("")
+ private String upSaleTime;
}
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/RevenueDataDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/RevenueDataDTO.java
index 8a92a1c61..f2e16e2f3 100644
--- a/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/RevenueDataDTO.java
+++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/RevenueDataDTO.java
@@ -40,5 +40,8 @@ public class RevenueDataDTO {
@ApiModelProperty("菜品列表")
private List otherRecipeLaunchDates;
+ @ApiModelProperty("下架")
+ private List otherDownDates;
+
}
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/SalesVolumeDayQueryDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/SalesVolumeDayQueryDTO.java
new file mode 100644
index 000000000..e5b34b8f9
--- /dev/null
+++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/recipe/SalesVolumeDayQueryDTO.java
@@ -0,0 +1,25 @@
+package com.cool.store.dto.recipe;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ *
+ * 门店日销量查询DTO
+ *
+ *
+ * @author wangff
+ * @since 2025/12/3
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+public class SalesVolumeDayQueryDTO {
+ @ApiModelProperty("日期,yyyy-MM-dd")
+ private String businessDate;
+
+ @ApiModelProperty("门店编码")
+ private String storeCode;
+}
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/menu/MiniMenuConfigDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/menu/MiniMenuConfigDO.java
new file mode 100644
index 000000000..c0c560dc7
--- /dev/null
+++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/menu/MiniMenuConfigDO.java
@@ -0,0 +1,34 @@
+package com.cool.store.entity.menu;
+
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.persistence.*;
+
+/**
+ * 小程序菜单配置
+ */
+@Table(name = "zxjp_mini_menu_config")
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+public class MiniMenuConfigDO {
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Long id;
+
+ /**
+ * 角色id
+ */
+ @Column(name = "role_id")
+ private Long roleId;
+
+ /**
+ * 菜单
+ */
+ @Column(name = "menu_id")
+ private Long menuId;
+}
\ No newline at end of file
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/menu/MiniMenuDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/menu/MiniMenuDO.java
new file mode 100644
index 000000000..9642f6786
--- /dev/null
+++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/menu/MiniMenuDO.java
@@ -0,0 +1,26 @@
+package com.cool.store.entity.menu;
+
+import lombok.Data;
+
+import javax.persistence.*;
+
+@Table(name = "zxjp_mini_menu")
+@Data
+public class MiniMenuDO {
+ /**
+ * id
+ */
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Long id;
+
+ /**
+ * 名称
+ */
+ private String name;
+
+ /**
+ * key
+ */
+ private String menuKey;
+}
\ No newline at end of file
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/recipe/SalesVolumeDayRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/recipe/SalesVolumeDayRequest.java
new file mode 100644
index 000000000..655e72e16
--- /dev/null
+++ b/coolstore-partner-model/src/main/java/com/cool/store/request/recipe/SalesVolumeDayRequest.java
@@ -0,0 +1,25 @@
+package com.cool.store.request.recipe;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ *
+ * 门店日销量Request
+ *
+ *
+ * @author wangff
+ * @since 2025/12/3
+ */
+@Data
+public class SalesVolumeDayRequest {
+ @ApiModelProperty("日期,yyyy-MM-dd")
+ @NotBlank(message = "日期不能为空")
+ private String businessDate;
+
+ @ApiModelProperty("门店id")
+ @NotBlank(message = "门店id不能为空")
+ private String storeId;
+}
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/menu/MiniMenuConfigVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/menu/MiniMenuConfigVO.java
new file mode 100644
index 000000000..e2d67f093
--- /dev/null
+++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/menu/MiniMenuConfigVO.java
@@ -0,0 +1,19 @@
+package com.cool.store.vo.menu;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ *
+ * 小程序菜单配置VO
+ *
+ *
+ * @author wangff
+ * @since 2025/10/31
+ */
+@Data
+public class MiniMenuConfigVO {
+
+ @ApiModelProperty("菜单key")
+ private String menuKey;
+}
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/LaunchDataVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/LaunchDataVO.java
index 0b9fc81de..be478eff4 100644
--- a/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/LaunchDataVO.java
+++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/LaunchDataVO.java
@@ -18,4 +18,7 @@ public class LaunchDataVO {
@ApiModelProperty("上新时间,yyyy-MM-dd")
private String upSaleDate;
+
+ @ApiModelProperty("")
+ private String upSaleTime;
}
diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/RevenueDataVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/RevenueDataVO.java
index 3420a29b2..39ad7fbe1 100644
--- a/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/RevenueDataVO.java
+++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/recipe/RevenueDataVO.java
@@ -34,6 +34,9 @@ public class RevenueDataVO {
@ApiModelProperty("菜品列表")
private List otherRecipeLaunchDates;
+ @ApiModelProperty("下架")
+ private List otherDownDates;
+
@ApiModelProperty("外卖实收")
private BigDecimal takeoutReceivedAmt;
diff --git a/coolstore-partner-service/src/main/java/com/cool/store/config/rest/JacksonConfig.java b/coolstore-partner-service/src/main/java/com/cool/store/config/rest/JacksonConfig.java
index 201084bba..3ed141657 100644
--- a/coolstore-partner-service/src/main/java/com/cool/store/config/rest/JacksonConfig.java
+++ b/coolstore-partner-service/src/main/java/com/cool/store/config/rest/JacksonConfig.java
@@ -1,5 +1,6 @@
package com.cool.store.config.rest;
+import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -15,6 +16,7 @@ public class JacksonConfig {
@Bean
public ObjectMapper objectMapper() {
ObjectMapper mapper = new ObjectMapper();
+ mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
return mapper;
}
}
diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/ThirdFoodService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/ThirdFoodService.java
index 88045070d..2a4ae9ffa 100644
--- a/coolstore-partner-service/src/main/java/com/cool/store/service/ThirdFoodService.java
+++ b/coolstore-partner-service/src/main/java/com/cool/store/service/ThirdFoodService.java
@@ -4,6 +4,7 @@ import com.cool.store.dto.FoodTokenDTO;
import com.cool.store.dto.recipe.RecipeSpLaunchDTO;
import com.cool.store.dto.store.StoreUserUpdateDTO;
import com.cool.store.request.recipe.RevenueDataRequest;
+import com.cool.store.request.recipe.SalesVolumeDayRequest;
import com.cool.store.response.caipin.StoreUserResponse;
import com.cool.store.vo.recipe.RevenueDataVO;
@@ -45,4 +46,12 @@ public interface ThirdFoodService {
* @return 服务包菜品上新DTO
*/
RecipeSpLaunchDTO getRecipeServiceLaunch(RevenueDataRequest request);
+
+
+ /**
+ * 门店销量日视图
+ * @param request 请求request
+ * @return 营收数据VO列表
+ */
+ List storeSalesVolumeDay(SalesVolumeDayRequest request);
}
diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SyncMainSysServerImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SyncMainSysServerImpl.java
index 89da73c43..c1ece664a 100644
--- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SyncMainSysServerImpl.java
+++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SyncMainSysServerImpl.java
@@ -185,8 +185,8 @@ public class SyncMainSysServerImpl implements SyncMainSysServer {
}
storeMasterDTO.setSignerInfo(signerInfo);
simpleMessageService.send(JSONObject.toJSONString(storeMasterDTO), RocketMqTagEnum.ZXJP_CREATE_STORE);
- // 推送营帐通
- pushStoreToYzt(shopInfo, lineInfoDO);
+ // TODO: 临时关闭,推送营帐通
+// pushStoreToYzt(shopInfo, lineInfoDO);
} catch (Exception e) {
log.info("asdStore_error:{},shopId:{}", e.getMessage(), shopId.toString());
}
diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ThirdFoodServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ThirdFoodServiceImpl.java
index 4fddb48d1..7e71fe14c 100644
--- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ThirdFoodServiceImpl.java
+++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ThirdFoodServiceImpl.java
@@ -7,11 +7,13 @@ import com.cool.store.dto.FoodTokenDTO;
import com.cool.store.dto.recipe.RecipeSpLaunchDTO;
import com.cool.store.dto.recipe.RevenueDataDTO;
import com.cool.store.dto.recipe.RevenueDataQueryDTO;
+import com.cool.store.dto.recipe.SalesVolumeDayQueryDTO;
import com.cool.store.dto.store.StoreUserUpdateDTO;
import com.cool.store.entity.StoreDO;
import com.cool.store.enums.ErrorCodeEnum;
import com.cool.store.exception.ServiceException;
import com.cool.store.request.recipe.RevenueDataRequest;
+import com.cool.store.request.recipe.SalesVolumeDayRequest;
import com.cool.store.response.caipin.StoreUserResponse;
import com.cool.store.response.oppty.OpportunityApiResponse;
import com.cool.store.service.ThirdFoodService;
@@ -91,6 +93,17 @@ public class ThirdFoodServiceImpl implements ThirdFoodService {
return executeApiCall(url, queryDTO, RecipeSpLaunchDTO.class);
}
+ @Override
+ public List storeSalesVolumeDay(SalesVolumeDayRequest request) {
+ StoreDO storeDO = storeDao.getByStoreId(request.getStoreId());
+ if (Objects.isNull(storeDO)) {
+ throw new ServiceException(ErrorCodeEnum.STORE_NOT_FIND);
+ }
+ SalesVolumeDayQueryDTO queryDTO = new SalesVolumeDayQueryDTO(request.getBusinessDate(), storeDO.getStoreNum());
+ String url = "/v1/store/business/day";
+ List list = executeApiCall(url, queryDTO, List.class);
+ return BeanUtil.toList(list, RevenueDataVO.class, CopyOptions.create().setFieldMapping(Collections.singletonMap("storeCode", "storeNum")));
+ }
private T executeApiCall(String url, Object requestBody, Class responseType) {
// 1. 打印请求前日志
diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/menu/MiniMenuService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/menu/MiniMenuService.java
new file mode 100644
index 000000000..15637bf03
--- /dev/null
+++ b/coolstore-partner-service/src/main/java/com/cool/store/service/menu/MiniMenuService.java
@@ -0,0 +1,22 @@
+package com.cool.store.service.menu;
+
+import com.cool.store.vo.menu.MiniMenuConfigVO;
+
+import java.util.List;
+
+/**
+ *
+ * 小程序菜单配置
+ *
+ *
+ * @author wangff
+ * @since 2025/10/31
+ */
+public interface MiniMenuService {
+
+ /**
+ * 获取用户小程序菜单配置
+ * @return 小程序菜单配置
+ */
+ List getUserMiniMenu();
+}
diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/menu/impl/MiniMenuServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/menu/impl/MiniMenuServiceImpl.java
new file mode 100644
index 000000000..72eaed992
--- /dev/null
+++ b/coolstore-partner-service/src/main/java/com/cool/store/service/menu/impl/MiniMenuServiceImpl.java
@@ -0,0 +1,88 @@
+package com.cool.store.service.menu.impl;
+
+import cn.hutool.core.collection.CollStreamUtil;
+import com.cool.store.context.PartnerUserHolder;
+import com.cool.store.dao.EnterpriseUserDAO;
+import com.cool.store.dao.SysRoleDao;
+import com.cool.store.dao.menu.MiniMenuConfigDAO;
+import com.cool.store.dao.menu.MiniMenuDAO;
+import com.cool.store.entity.EnterpriseUserDO;
+import com.cool.store.entity.SysRoleDO;
+import com.cool.store.entity.menu.MiniMenuConfigDO;
+import com.cool.store.entity.menu.MiniMenuDO;
+import com.cool.store.enums.AIEnum;
+import com.cool.store.enums.Role;
+import com.cool.store.service.menu.MiniMenuService;
+import com.cool.store.utils.BeanUtil;
+import com.cool.store.vo.PartnerUserInfoVO;
+import com.cool.store.vo.menu.MiniMenuConfigVO;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.stereotype.Service;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.Objects;
+
+
+/**
+ *
+ * 小程序菜单配置 服务实现类
+ *
+ *
+ * @author wangff
+ * @since 2025/10/31
+ */
+@Service
+@RequiredArgsConstructor
+public class MiniMenuServiceImpl implements MiniMenuService {
+ private final MiniMenuConfigDAO miniMenuConfigDAO;
+ private final SysRoleDao sysRoleDao;
+ private final EnterpriseUserDAO enterpriseUserDAO;
+ private final MiniMenuDAO miniMenuDAO;
+
+
+ @Override
+ public List getUserMiniMenu() {
+ PartnerUserInfoVO user = PartnerUserHolder.getUser();
+ if (StringUtils.isBlank(user.getMobile())) {
+ return Collections.emptyList();
+ }
+ SysRoleDO highestRole = getHighestRoleByMobile(user.getMobile());
+ if (Objects.isNull(highestRole)) {
+ return Collections.emptyList();
+ }
+ List list = miniMenuConfigDAO.getListByRoleId(highestRole.getId());
+ List menuIds = CollStreamUtil.toList(list, MiniMenuConfigDO::getMenuId);
+ List menuList = miniMenuDAO.getByIds(menuIds);
+ return BeanUtil.toList(menuList, MiniMenuConfigVO.class);
+ }
+
+ /**
+ * 根据手机号查询用户优先级最高的角色
+ * @param mobile 手机号
+ * @return 角色信息
+ */
+ private SysRoleDO getHighestRoleByMobile(String mobile) {
+ if (StringUtils.isBlank(mobile)) {
+ return null;
+ }
+ EnterpriseUserDO userDO = enterpriseUserDAO.selectByMobile(mobile);
+ if (Objects.isNull(userDO)) {
+ return null;
+ }
+ return getHighestRole(userDO.getUserId());
+ }
+
+ /**
+ * 查询当前用户优先级最高的角色
+ * @param userId 用户id
+ * @return 角色信息
+ */
+ private SysRoleDO getHighestRole(String userId) {
+ if(AIEnum.AI_USERID.getCode().equals(userId)){
+ return sysRoleDao.getRoleByRoleEnum(Role.MASTER.getRoleEnum());
+ }
+ return sysRoleDao.getHighestPrioritySysRoleDoByUserId(userId);
+ }
+}
diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDataBoardController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDataBoardController.java
index e471872c4..87cbb966d 100644
--- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDataBoardController.java
+++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDataBoardController.java
@@ -2,6 +2,7 @@ package com.cool.store.controller.webc;
import com.cool.store.dto.recipe.RecipeSpLaunchDTO;
import com.cool.store.request.recipe.RevenueDataRequest;
+import com.cool.store.request.recipe.SalesVolumeDayRequest;
import com.cool.store.response.ResponseResult;
import com.cool.store.service.ThirdFoodService;
import com.cool.store.vo.recipe.RevenueDataVO;
@@ -44,4 +45,10 @@ public class MiniDataBoardController {
public ResponseResult getRecipeSpLaunchData(@RequestBody @Valid RevenueDataRequest request) {
return ResponseResult.success(thirdFoodService.getRecipeServiceLaunch(request));
}
+
+ @ApiOperation("门店日销量")
+ @PostMapping("/storeSalesVolumeDay")
+ public ResponseResult> getStoreSalesVolumeDay(@RequestBody @Valid SalesVolumeDayRequest request) {
+ return ResponseResult.success(thirdFoodService.storeSalesVolumeDay(request));
+ }
}
diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniMenuController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniMenuController.java
new file mode 100644
index 000000000..2fd52cf04
--- /dev/null
+++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniMenuController.java
@@ -0,0 +1,35 @@
+package com.cool.store.controller.webc;
+
+import com.cool.store.response.ResponseResult;
+import com.cool.store.service.menu.MiniMenuService;
+import com.cool.store.vo.menu.MiniMenuConfigVO;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ *
+ * 小程序菜单配置 前端控制器
+ *
+ *
+ * @author wangff
+ * @since 2025/10/31
+ */
+@RestController
+@RequestMapping({"/mini/menu"})
+@Api(tags = "Mini菜单配置")
+@RequiredArgsConstructor
+public class MiniMenuController {
+ private final MiniMenuService miniMenuService;
+
+ @ApiOperation("当前用户菜单配置")
+ @GetMapping("/userConfig")
+ public ResponseResult> getCurrentUserConfig() {
+ return ResponseResult.success(miniMenuService.getUserMiniMenu());
+ }
+}