Merge branch 'master' into cc_20251028_decoration
# Conflicts: # coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java
This commit is contained in:
@@ -232,4 +232,7 @@ public class CommonConstants {
|
||||
public static final int REFRESH_TOKEN_EXPIRE = 30 * 24 * 60 * 60;
|
||||
|
||||
public static final int BATCH_SIZE = 200;
|
||||
|
||||
public static final Integer INDEX_ZERO = 0;
|
||||
public static final Integer INDEX_ONE = 1;
|
||||
}
|
||||
|
||||
@@ -283,4 +283,10 @@ public class RedisConstant {
|
||||
public static final String SUBMIT_BUILD_KEY = "submit_build_key_";
|
||||
|
||||
public static final String GET_AI_MODULE = "get_ai_module_";
|
||||
|
||||
public static final String HUOMA_STORE_DEVICE_RESOURCE_KEY = "huoma_store_device_resource";
|
||||
|
||||
public static final String HUO_MA_STORE_ID = "huo_ma_store_id";
|
||||
|
||||
public static final String HUO_MA_TOKEN= "huo_ma_token:{0}";
|
||||
}
|
||||
|
||||
@@ -9,7 +9,8 @@ package com.cool.store.enums;
|
||||
public enum BusinessModelEnum {
|
||||
NULL(0, "无"),
|
||||
DIRECT_SALES(1, "直营"),
|
||||
JOIN_SALES(2, "加盟");
|
||||
JOIN_SALES(2, "加盟"),
|
||||
JOINT_STORE(3, "联营");
|
||||
|
||||
private Integer code;
|
||||
private String desc;
|
||||
|
||||
@@ -212,7 +212,9 @@ public enum ErrorCodeEnum {
|
||||
|
||||
INVOICING_EXIST(109016, "当前门店发票信息已存在!", null),
|
||||
|
||||
SHOP_STATUS_NOT_SUPPORT_HANDLER(109016, "当前门店状态为:{0},不能进行结束跟进操作", null),
|
||||
SHOP_STATUS_NOT_SUPPORT_HANDLER(109017, "当前门店状态为:{0},不能进行结束跟进操作", null),
|
||||
|
||||
SYSTEM_NAME_NOT__SUPPORT(109018, "请不要使用系统默认店名!", null),
|
||||
|
||||
|
||||
INSERT_OPENING_OPERATION_PLAN_AUDIT_FALSE(103001,"插入运营方案审核信息失败",null),
|
||||
@@ -310,10 +312,10 @@ public enum ErrorCodeEnum {
|
||||
MESSAGE_NOT_HANDLED(1610008,"当前消息无需处理,请确认消息处理类型!",null),
|
||||
MESSAGE_PUBLISH(1610009,"您选择通知任务正在发布中,请稍后重试!",null),
|
||||
|
||||
NOT_FLAGSHIP_STORE(1611005,"非直营店,无法跳过缴费阶段!",null),
|
||||
NOT_FLAGSHIP_STORE_NOT_EXIST(1611006,"当前阶段加盟类型不能变更!",null),
|
||||
JOIN_MODE_NOT_ALLOW_OPERATE(1611007,"加盟部人员只能新建加盟店或联营店,请确认!",null),
|
||||
|
||||
NOT_FLAGSHIP_STORE(1610010,"非直营店,无法跳过缴费阶段!",null),
|
||||
NOT_FLAGSHIP_STORE_NOT_EXIST(1610011,"当前阶段加盟类型不能变更!",null),
|
||||
JOIN_MODE_NOT_ALLOW_OPERATE(1610012,"加盟部人员只能新建加盟店或联营店,请确认!",null),
|
||||
STORE_NOT_FIND(1610013,"门店不存在",null),
|
||||
//装修
|
||||
TEAM_USED(1612001,"该装修团队有门店使用,无法删除,请确认!",null),
|
||||
;
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
package com.cool.store.enums;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
* @Date 2025/11/5 16:03
|
||||
* @Version 1.0
|
||||
*/
|
||||
public enum SpecialTagEnum {
|
||||
|
||||
ELECTRONIC_PRICE_LIST("电子价目牌"),
|
||||
ACTIVITY_CAROUSEL("活动轮播"),
|
||||
ACTIVITY_PACKAGE("活动套餐"),
|
||||
PROMOTIONAL_VIDEO("宣传视频");
|
||||
|
||||
private final String tagName;
|
||||
|
||||
SpecialTagEnum(String tagName) {
|
||||
this.tagName = tagName;
|
||||
}
|
||||
|
||||
public String getTagName() {
|
||||
return tagName;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据标签名称获取枚举值
|
||||
*/
|
||||
public static SpecialTagEnum fromTagName(String tagName) {
|
||||
for (SpecialTagEnum tag : values()) {
|
||||
if (tag.getTagName().equals(tagName)) {
|
||||
return tag;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有标签名称列表
|
||||
*/
|
||||
public static List<String> getAllTagNames() {
|
||||
return Arrays.stream(values())
|
||||
.map(SpecialTagEnum::getTagName)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取电子价目牌标签名称
|
||||
* @return
|
||||
*/
|
||||
public static List<String> getElectronicPriceTagName() {
|
||||
return Arrays.asList(ELECTRONIC_PRICE_LIST.getTagName());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
package com.cool.store.enums;
|
||||
|
||||
/**
|
||||
* Created by Administrator on 2020/1/20.
|
||||
*/
|
||||
public enum StoreStatusEnum {
|
||||
|
||||
//营业
|
||||
OPEN("open","在营"),
|
||||
//闭店
|
||||
CLOSED("closed","闭店解约"),
|
||||
//未开业
|
||||
NOT_OPEN("not_open","未开业"),
|
||||
//迁址
|
||||
CHANGE_ADDRESS("change_address","迁址"),
|
||||
//退单
|
||||
CHARGEBACK("chargeback","退单"),
|
||||
//暂停营业
|
||||
CLOSE_UP("close_up","暂停营业");
|
||||
;
|
||||
|
||||
|
||||
private final String value;
|
||||
|
||||
private final String name;
|
||||
|
||||
StoreStatusEnum(String value, String name) {
|
||||
this.value = value;
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public static StoreStatusEnum parse(String value) {
|
||||
for (StoreStatusEnum storeStatusEnum : StoreStatusEnum.values()) {
|
||||
if (storeStatusEnum.getValue().equals(value)) {
|
||||
return storeStatusEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static String getName(String value) {
|
||||
for (StoreStatusEnum storeStatusEnum : StoreStatusEnum.values()) {
|
||||
if (storeStatusEnum.getValue().equals(value)) {
|
||||
return storeStatusEnum.name;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static String getCode(String flag) {
|
||||
switch (flag) {
|
||||
case "营业":
|
||||
case "在营":
|
||||
return "open";
|
||||
case "闭店":
|
||||
case "闭店解约":
|
||||
return "closed";
|
||||
case "未开业":
|
||||
return "not_open";
|
||||
case "迁址":
|
||||
return "change_address";
|
||||
case "退单":
|
||||
return "chargeback";
|
||||
case "暂停营业":
|
||||
return "close_up";
|
||||
}
|
||||
return "open";
|
||||
}
|
||||
}
|
||||
@@ -69,7 +69,8 @@ public enum UserRoleEnum {
|
||||
|
||||
JING_DONG_OPERATIONS_CUSTOMER(500000000L,"京东运营大区客服"),
|
||||
JING_DONG_HEADQUARTERS_BUILD_CUSTOMER(510000000L,"京东总部建店客服"),
|
||||
FRANCHISEES(530000000L,"加盟商")
|
||||
FRANCHISEES(530000000L,"加盟商"),
|
||||
SERVICE_PACKAGE_DEDICATED(1762761165005L,"服务包专用"),
|
||||
;
|
||||
|
||||
private Long code;
|
||||
|
||||
@@ -10,9 +10,9 @@ import java.util.List;
|
||||
*/
|
||||
public enum ModuleCodeEnum {
|
||||
|
||||
STORE_WORK(0,"店务日清/培训", Arrays.asList(MatterTypeEnum.QUESTION,MatterTypeEnum.LICENSE)),
|
||||
PRODUCT_UPDATE(1,"营销政策/产品上新",Arrays.asList(MatterTypeEnum.SERVICE_PACKAGE)),
|
||||
INVENTORY_MODULE(2,"原料订货与库存管理",Arrays.asList(MatterTypeEnum.RESTOCK,MatterTypeEnum.INVENTORY,MatterTypeEnum.LOGISTICS)),
|
||||
STORE_WORK(0,"店务/培训", Arrays.asList(MatterTypeEnum.QUESTION,MatterTypeEnum.LICENSE)),
|
||||
PRODUCT_UPDATE(1,"营销/上新",Arrays.asList(MatterTypeEnum.SERVICE_PACKAGE)),
|
||||
INVENTORY_MODULE(2,"订货/库存",Arrays.asList(MatterTypeEnum.RESTOCK,MatterTypeEnum.INVENTORY,MatterTypeEnum.LOGISTICS)),
|
||||
DISH(3,"菜品",Arrays.asList(MatterTypeEnum.NOTICE)),
|
||||
FRANCHISE(4,"加盟",Arrays.asList(MatterTypeEnum.NOTICE)),
|
||||
//其他(投诉与客户服务、临时通知)
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package com.cool.store.utils;
|
||||
|
||||
import cn.hutool.core.bean.copier.CopyOptions;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -28,6 +29,18 @@ public class BeanUtil extends cn.hutool.core.bean.BeanUtil {
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T, R> List<R> toList(List<T> list, Class<R> clazz, CopyOptions copyOptions) {
|
||||
if (list == null || list.isEmpty()) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
List<R> result = new ArrayList<>(list.size());
|
||||
for (T t : list) {
|
||||
R r = toBean(t, clazz, copyOptions);
|
||||
result.add(r);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public static <T, R> PageInfo<R> toPage(PageInfo<T> page, Class<R> clazz) {
|
||||
PageInfo<R> newPage = new PageInfo<>();
|
||||
newPage.setPages(page.getPages());
|
||||
|
||||
@@ -0,0 +1,62 @@
|
||||
package com.cool.store.utils;
|
||||
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
* @Date 2025/11/4 17:34
|
||||
* @Version 1.0
|
||||
*/
|
||||
public class BrowserVersionUtils {
|
||||
|
||||
|
||||
/**
|
||||
* 检测是否为旧版Chrome浏览器(版本小于60)
|
||||
* @param userAgent 浏览器User-Agent字符串
|
||||
* @return true-是旧版Chrome,false-不是旧版Chrome
|
||||
*/
|
||||
public static boolean isOldChromeBrowser(String userAgent) {
|
||||
if (userAgent == null || userAgent.isEmpty()) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// 检查是否是Chrome浏览器
|
||||
if (!userAgent.contains("Chrome")) {
|
||||
return false; // 不是Chrome浏览器
|
||||
}
|
||||
|
||||
// 提取Chrome版本号
|
||||
Integer chromeVersion = extractChromeVersion(userAgent);
|
||||
|
||||
if (chromeVersion == null) {
|
||||
return false; // 无法提取版本号
|
||||
}
|
||||
|
||||
// 判断版本是否小于60
|
||||
return chromeVersion < 60;
|
||||
}
|
||||
|
||||
/**
|
||||
* 从User-Agent中提取Chrome主版本号
|
||||
* @param userAgent 浏览器User-Agent字符串
|
||||
* @return Chrome主版本号,如果无法提取返回null
|
||||
*/
|
||||
public static Integer extractChromeVersion(String userAgent) {
|
||||
// 正则表达式匹配 Chrome/版本号 模式
|
||||
Pattern pattern = Pattern.compile("Chrome/(\\d+)");
|
||||
Matcher matcher = pattern.matcher(userAgent);
|
||||
|
||||
if (matcher.find()) {
|
||||
try {
|
||||
return Integer.parseInt(matcher.group(1));
|
||||
} catch (NumberFormatException e) {
|
||||
System.err.println("版本号格式错误: " + matcher.group(1));
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.cool.store.utils;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 公共工具
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/10/29
|
||||
*/
|
||||
public class CommonUtil {
|
||||
public static BigDecimal convertToBig(String value) {
|
||||
if (StringUtils.isBlank(value)) {
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
try {
|
||||
return new BigDecimal(value);
|
||||
} catch (Exception ignored) {}
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user