Merge #52 into master from cc_20260121_store_type
Merge branch 'cc_20260126_pingan_wallet' into cc_20260121_store_type
* cc_20260121_store_type: (100 commits squashed)
- Merge branch 'master' into cc_20251208_visit
- feat:订单列表
- feat:订单列表
- fix:拜访记录导出
- feat:列表处理
- Merge branch 'cc_20251208_visit' into cc_20260121_store_type
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java
- feat:标准店接口处理
- feat:标准店接口处理
- feat:标准店接口处理
- feat:标准店接口处理
- feat:标准店接口处理
- fix:加盟缴费调整
- feat:标准店接口处理
- fix:加盟缴费调整
- Merge branch 'cc_20260126_pingan_wallet' into cc_20260121_store_type
# Conflicts:
#	coolstore-partner-model/src/main/java/com/cool/store/dto/wallet/BatchTransferDTO.java
#	coolstore-partner-model/src/main/java/com/cool/store/request/wallet/BatchTransferRequest.java
- feat:冲突解决
- feat:接口处理
- feat:shopInfo
- fix:PC缴费信息列表过滤已完成缴费信息
- fix:测试接口修改
- Merge branch 'refs/heads/cc_20260126_pingan_wallet' into cc_20260121_store_type
- fix:测试接口修改
- feat:接口
- feat:接口调整
- feat:注释调整
- feat:key 调整
- feat:订单ID
- feat:日志打印
- feat:选择标准店型
- feat:useStandardStore
- feat:标准店没有缴费阶段
- feat:标准店没有缴费阶段
- feat:标准店没有缴费阶段
- feat:标准店没有缴费阶段
- feat:阶段调整
- fix:修复加盟缴费流程流转错误
- feat:费用类型ID
- feat:锁释放
- feat:分账状态
- fix:加盟签约合同数据补充
- feat:排序
- feat:选项单位
- feat:选项单位
- feat:选项单位
- feat:选项单位
- feat:option_unit
- feat:option_unit
- feat:更新调整
- feat:视频非必填
- feat:optionUnit
- fix:转义
- Merge branch 'master' into cc_20260126_pingan_wallet
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/constants/RedisConstant.java
- feat:同一配置项下只能设置一个默认选项
- feat:数量支持小数,新增首次订货字段
- fix:提交及修改校验合计缴费金额和分账总金额是否相同
- feat:queryPage
- feat:defaultQuantity 改为 BigDecimal
- feat:defaultQuantity 改为 BigDecimal
- feat:门店预约到店
- feat:门店预约到店 取消预约
- feat:门店预约到店 手机号
- feat:添加原价
- feat:添加原价
- feat:添加原价
- feat:字典表 remark
- Merge branch 'master' into cc_20260121_store_type
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/constants/RedisConstant.java
#	coolstore-partner-common/src/main/java/com/cool/store/enums/FileTypeEnum.java
#	coolstore-partner-model/src/main/java/com/cool/store/vo/dict/DictColumnSimpleVO.java
#	coolstore-partner-service/src/main/java/com/cool/store/service/ExportRealizeService.java
#	coolstore-partner-service/src/main/java/com/cool/store/service/ExportService.java
#	coolstore-partner-service/src/main/java/com/cool/store/service/impl/ExportRealizeServiceImpl.java
#	coolstore-partner-service/src/main/java/com/cool/store/service/impl/ExportServiceImpl.java
#	coolstore-partner-web/src/main/java/com/cool/store/controller/webb/ExportController.java
- feat:字典表 remark
- feat:服务人员手机号
- feat:价格计算调整店型优惠价*默认数量 + 原价 *(选择数量-默认数量)
- fix:补充钱包账单推送新管家流程
- fix:账单推送钱包支付类型payWay由1改为2
- feat:同一配置项下只能设置一个默认选项 限制去掉
- fix:平安钱包分账信息改为非必填
- feat:同一配置项只能选择一个选项 限制去掉
- feat:心愿单
- feat:心愿单
- feat:心愿单接口调整
- feat:心愿单接口调整
- feat:心愿单接口调整
- feat:批量更新数据
- feat:查询店型已配置的选项绑定 新增顶部预览图
- feat:查询店型已配置的选项绑定 新增顶部预览图
- feat:查询店型已配置的选项绑定 新增顶部预览图
- feat:配置大类
- feat:配置大类
- feat:价格优化
- feat:阶段审批处理
- fix:删除设计费-立规
- feat:配置大项 配置项接口改造
- feat:配置大项 配置项接口改造
- feat:handleAudit
- feat:新增code
- feat:categoryId
- feat:心愿单接口更新
- feat:心愿单接口更新
- feat:心愿单接口更新
- feat:心愿单接口更新
- feat:心愿单接口更新
- Merge branch 'cc_20260126_pingan_wallet' into cc_20260121_store_type
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/constants/RedisConstant.java
- Merge branch 'master' into cc_20260121_store_type
# Conflicts:
#	coolstore-partner-service/src/main/java/com/cool/store/service/impl/SignFranchiseServiceImpl.java
Signed-off-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>
Merged-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>
CR-link: https://codeup.aliyun.com/692ea314dec569489f6f167c/hangzhou/java/custom_zxjp/change/52
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package com.cool.store.common;
|
||||
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
package com.cool.store.constants;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 字典表常量池
|
||||
@@ -13,4 +16,21 @@ public class DictConstants {
|
||||
* 装修设计要求-统一装修设计
|
||||
*/
|
||||
public static final String DECORATION_REQUIREMENT_UNIFORM = "decoration_requirement_uniform";
|
||||
|
||||
/**
|
||||
* 加盟费-费用类型
|
||||
*/
|
||||
public static final String EXPENSE_TYPE = "expense_type";
|
||||
|
||||
/**
|
||||
* 平安钱包默认分账费用类型字典项code
|
||||
*/
|
||||
public static final List<String> PING_AN_DEFAULT_ALLOCATION_EXPENSE_TYPE_CODES = Arrays.asList(
|
||||
"expense_franchise_fee",
|
||||
"expense_management_fee",
|
||||
"expense_brand_usage_fee",
|
||||
"expense_design_fee_group",
|
||||
// "expense_design_fee_lg",
|
||||
"expense_earnest_money"
|
||||
);
|
||||
}
|
||||
|
||||
@@ -346,7 +346,9 @@ public class RedisConstant {
|
||||
* 十二分导入锁
|
||||
*/
|
||||
public static final String TP_PENALTY_APPLY_IMPORT_LOCK = "tp_penalty_apply_import_lock";
|
||||
|
||||
|
||||
public static final String STANDARD_STORE_PAY_LOCK_KEY = "standard_store_pay_lock_key:{0}";
|
||||
|
||||
/**
|
||||
* 拜访记录导出锁
|
||||
*/
|
||||
@@ -361,4 +363,14 @@ public class RedisConstant {
|
||||
* 我的铺位导出锁
|
||||
*/
|
||||
public static final String MY_POINT_EXPORT_LOCK = "my_point_export_lock";
|
||||
|
||||
/**
|
||||
* 钱包分账公司配置-招商分部
|
||||
*/
|
||||
public static final String WALLET_ALLOCATION_CONFIG_INVEST_DIVISION = "wallet_invest_allocation_id";
|
||||
|
||||
/**
|
||||
* 钱包分账支付锁
|
||||
*/
|
||||
public static final String WALLET_ALLOCATION_PAY_LOCK_KEY = "wallet_allocation_pay_lock_key:{0}";
|
||||
}
|
||||
|
||||
@@ -19,6 +19,7 @@ public enum AuditTypeEnum {
|
||||
BUILDINFORMATION(15,"建店资料信息"),
|
||||
JINg_DONG_WAI_MAI(16,"京东外卖"),
|
||||
OPENING_ACCEPTANCE(17,"开业验收"),
|
||||
STANDARD_STORE(18,"标准店"),
|
||||
;
|
||||
|
||||
private Integer code;
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.cool.store.enums;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 业务模块枚举
|
||||
*
|
||||
* @author system
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum BusinessModuleEnum {
|
||||
WALLET_ALLOCATION_CONFIG("WALLET_ALLOCATION_CONFIG", "分账配置"),
|
||||
PAYEE_BANK_CONFIG("PAYEE_BANK_CONFIG", "收款银行配置"),
|
||||
FEE_STANDARD_CONFIG("FEE_STANDARD_CONFIG", "加盟费用标准收费额配置"),
|
||||
;
|
||||
|
||||
private final String code;
|
||||
private final String desc;
|
||||
|
||||
public static BusinessModuleEnum getByCode(String code) {
|
||||
for (BusinessModuleEnum e : BusinessModuleEnum.values()) {
|
||||
if (e.getCode().equals(code)) {
|
||||
return e;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -334,9 +334,38 @@ public enum ErrorCodeEnum {
|
||||
STORE_NOT_FIND(1610013,"门店不存在",null),
|
||||
SHOP_NAME_INVALID(1610014, "门店名称包含禁止关键词",null),
|
||||
CONTRACT_STAGE_NO_COMPLETE(1610015, "当前阶段无法分配运营顾问!",null),
|
||||
|
||||
CONFIG_OPTION_USED(1610015, "配置选项已被店型使用,无法删除", null),
|
||||
STORE_TYPE_OPTION_DEFAULT_DUPLICATE(1610016, "同一配置项下只能设置一个默认选项", null),
|
||||
STORE_TYPE_MUST_DISABLE_BEFORE_DELETE(1610017, "店型已启用,无法删除,请先停用", null),
|
||||
STORE_ORDER_ITEM_CODE_DUPLICATE(1610018, "同一配置项只能选择一个选项", null),
|
||||
CONFIG_OPTION_NAME_EXIST(1610019, "配置选项名称已存在", null),
|
||||
THE_OPTION_IS_NOT_PART_OF_THIS_STORE_TYPE(1610022, "选项不属于该店型", null),
|
||||
THE_QUANTITY_MUST_BE_GREATER_THAN_0(1610020, "数量必须大于0", null),
|
||||
THE_NUMBER_OF_OPTIONS_IS_NOT_MODIFIABLE(1610021, "该选项数量不可修改", null),
|
||||
SHOP_HAS_UNFINISHED_ORDER(1610023, "当前门店存在未结束订单,无法新建", null),
|
||||
SHOP_HAS_PAID_ORDER(1610024, "当前门店已支付完成,不支持新建订单", null),
|
||||
ORDER_PAYING_CANT_ADJUST(1610025,"订单支付中,无法调整", null),
|
||||
ORDER_AMOUNT_NOT_DIFF(1610025,"分账明细与订单金额不相等,请确认!", null),
|
||||
CODE_EXIST(1610026,"存在相同的编码,请确认!", null),
|
||||
|
||||
|
||||
STORE_ORDER_NOT_FOUND(1610100, "订单不存在", null),
|
||||
STORE_ORDER_STATUS_INVALID(1610101, "订单状态不合法", null),
|
||||
STORE_ORDER_UPDATE_FORBIDDEN(1610102, "当前订单状态不允许修改", null),
|
||||
STORE_ORDER_WITHDRAW_FORBIDDEN(1610103, "当前订单状态不允许撤回", null),
|
||||
STORE_ORDER_CANCEL_FORBIDDEN(1610104, "当前订单状态不允许作废", null),
|
||||
CURRENT_STORE_TYPE_EXIST(1610105, "当前店型已存在", null),
|
||||
CURRENT_STORE_TYPE_NOT_EXIST(1610106, "当前店型不存在", null),
|
||||
PAY_FAIL(1610107, "支付失败", null),
|
||||
DUPLICATE_PAYMENTS(1610108, "订单支付中,请勿重复支付!", null),
|
||||
CURRENT_ORDER_NOT_SUPPORT(1610109, "当前订单状态不支持审批!", null),
|
||||
|
||||
|
||||
|
||||
//装修
|
||||
TEAM_USED(1612001,"该装修团队有门店使用,无法删除,请确认!",null),
|
||||
CURRENT_BRAND_SORT_NUMBER_EXIST(16100007,"当前品牌已存在该排序数字!",null),
|
||||
CURRENT_BRAND_SORT_NUMBER_EXIST(16100007,"已存在该排序数字!",null),
|
||||
CONTRACT_CONFIG_NOT_EXIST(16100008,"合同配置不存在!",null),
|
||||
|
||||
WALLET_OPEN_ACCOUNT_FAIL(1620001,"钱包开通失败",null),
|
||||
@@ -393,6 +422,30 @@ public enum ErrorCodeEnum {
|
||||
VISIT_RECORD_COMPLETE(1820005, "已完成拜访", null),
|
||||
EXPORT_TASK_LIMIT(1830006, "导出任务数量达上限,请稍后再试", null),
|
||||
CITY_PLANNING_EXISTS(1820001, "同年份同季度同省市已存在规划,不能重复添加", null),
|
||||
|
||||
WALLET_INVEST_TYPE_EXISTS(1830000, "同品牌同费用仅能存在分部或全部", null),
|
||||
WALLET_UNIQUE_KEY_EXISTS(1830001, "该加盟品牌、招商分部、费用类型已存在", null),
|
||||
BANK_CONFIG_INVEST_TYPE_EXISTS(1830002, "同品牌同付款方式只能配置全部或分部其中一种", null),
|
||||
BANK_CONFIG_UNIQUE_KEY_EXISTS(1830003, "该加盟品牌、招商分部、付款方式配置已存在", null),
|
||||
FEE_STANDARD_UNIQUE_KEY_EXISTS(1830003, "该加盟品牌、费用类型配置已存在", null),
|
||||
NO_PAYMENT_METHOD_IS_SET(1830004, "未设置支付方式", null),
|
||||
FRANCHISE_FEE_PAY_TYPE_ERROR(1830005,"缴款方式已选择,不可更改!",null),
|
||||
EXIST_PAY_INFO(1830006, "存在缴款,无法修改分账信息", null),
|
||||
PAY_TYPE_UNEQUAL_TO_PING_AN_WALLET(1830007, "支付方式不为平安钱包支付", null),
|
||||
NONSUPPORT_EXPENSE_TYPE(1830008, "不支持的费用类型", null),
|
||||
EXPENSE_TYPE_HAS_PAID(1830009, "{0}已完成支付", null),
|
||||
EXPENSE_CHANGED(1830010, "费用发生变化,请刷新页面后重试", null),
|
||||
THERE_IS_NO_PAYMENT_INFORMATION(1830011, "不存在缴费信息", null),
|
||||
THE_USER_IS_PAYING_UNABLE_UPDATE(1830012, "用户缴费中,无法编辑", null),
|
||||
THE_USER_IS_PAYING(1830018, "用户缴费中,请稍后再试", null),
|
||||
ALLOCATION_CONFIG_NOT_EXIST(1830013, "不存在分账配置信息", null),
|
||||
NOT_EXIST_CALLBACK_RESOLVE(1830014, "不存在回调处理策略", null),
|
||||
NOT_EXIST_PING_AN_ACCOUNT(1830015, "不存在平安账户,请开通", null),
|
||||
NOT_ENOUGH_BALANCE(1830016, "账户余额不足", null),
|
||||
WALLET_TRANS_FAIL(1830017, "钱包交易失败", null),
|
||||
WALLET_RE_PAY_FAIL(1830019, "重新支付异常,请联系管理员", null),
|
||||
WALLET_PAY_CANNOT_CANCEL(1830020, "该交易无法取消", null),
|
||||
TOTAL_FEES_NEED_EQUAL(1830021, "分账总金额需与合计缴费金额一致", null),
|
||||
;
|
||||
|
||||
|
||||
|
||||
@@ -30,6 +30,7 @@ public enum FileTypeEnum {
|
||||
TP_PENALTY_IMPORT("tpPenaltyImport", "十二分惩处申请单导入"),
|
||||
TP_PENALTY_ERROR_EXPORT("tpPenaltyErrorExport", "十二分惩处申请单导入错误列表"),
|
||||
VISIT_RECORD_EXPORT("visitRecordExport", "拜访记录列表"),
|
||||
ORDER_RECORD_EXPORT("orderRecordExport", "订单记录列表"),
|
||||
POINT_EXPORT("pointExport", "铺位管理列表"),
|
||||
MY_POINT_EXPORT("myPointExport", "我的铺位管理列表"),
|
||||
;
|
||||
|
||||
@@ -10,7 +10,9 @@ public enum StoreTypeEnum {
|
||||
//:0-无展示门店、1-餐厅店、2-普通门店
|
||||
NO_SHOW_STORE(0, "无展示门店"),
|
||||
RESTAURANT_STORE(1, "餐厅店"),
|
||||
ORDINARY_STORE(2, "普通门店");
|
||||
ORDINARY_STORE(2, "普通门店"),
|
||||
X_STORE(3, "X店型"),
|
||||
Z_STORE(4, "Z店型");
|
||||
private Integer code;
|
||||
private String message;
|
||||
StoreTypeEnum(Integer code, String message) {
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.cool.store.enums.dict;
|
||||
|
||||
/**
|
||||
* @Auther zx_szh
|
||||
* @Date 2026/1/22 16:24
|
||||
* @Version 1.0
|
||||
*/
|
||||
public enum DictTableEnum {
|
||||
|
||||
|
||||
STANDARD_STORE_TYPE_CONFIG_TYPE("standard_store_type_config_type","标准店型配置类型"),
|
||||
STANDARD_STORE_TYPE_CONFIG_COLUMN("standard_store_type_config_column","标准店型配置项"),
|
||||
|
||||
;
|
||||
|
||||
private String code;
|
||||
|
||||
private String message;
|
||||
|
||||
DictTableEnum(String code, String message) {
|
||||
this.code = code;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
|
||||
public String getCode() {
|
||||
return code;
|
||||
}
|
||||
|
||||
public String getMessage() {
|
||||
return message;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.cool.store.enums.fees;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 平安钱包缴费转账状态枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2026/2/3
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum AllocationPayStatusEnum {
|
||||
|
||||
PAID(1, "已支付"),
|
||||
FAIL(2, "支付失败"),
|
||||
PAYING(3, "支付中"),
|
||||
CANCEL(4, "已取消")
|
||||
;
|
||||
|
||||
private final Integer status;
|
||||
|
||||
private final String desc;
|
||||
|
||||
public static String getDescByStatus(Integer status) {
|
||||
for (AllocationPayStatusEnum value : values()) {
|
||||
if (value.status.equals(status)) {
|
||||
return value.desc;
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.cool.store.enums.fees;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 支付方式枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2026/1/29
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum PayTypeEnum {
|
||||
|
||||
OFFLINE(1, "线下支付"),
|
||||
PING_AN(2, "平安钱包支付"),
|
||||
;
|
||||
|
||||
private final Integer type;
|
||||
|
||||
private final String desc;
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
package com.cool.store.enums.fees;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 钱包转账费用科目枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2026/1/30
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum WalletFeeItemEnum {
|
||||
FRANCHISE_FEE(310, "expense_franchise_fee", "加盟费"),
|
||||
MANAGEMENT_FEE(311, "expense_management_fee", "管理费(年)"),
|
||||
BRAND_USAGE_FEE(312, "expense_brand_usage_fee", "品牌使用费(年)"),
|
||||
DESIGN_FEE_GROUP(313, "expense_design_fee_group", "设计费-集团"),
|
||||
// DESIGN_FEE_LG(314, "expense_design_fee_lg", "设计费-立规"),
|
||||
EARNEST_MONEY(315, "expense_earnest_money", "保证金"),
|
||||
EXPENSE_DECORATION_MONEY(316, "expense_decoration_money", "装修费"),
|
||||
EXPENSE_EQUIPMENT_MONEY(317, "expense_equipment_money", "设备费"),
|
||||
;
|
||||
|
||||
private final Integer feeItemId;
|
||||
|
||||
private final String expenseType;
|
||||
|
||||
private final String desc;
|
||||
|
||||
public static WalletFeeItemEnum getByExpenseType(String expenseType) {
|
||||
for (WalletFeeItemEnum value : WalletFeeItemEnum.values()) {
|
||||
if (value.expenseType.equals(expenseType)) {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static WalletFeeItemEnum getByFeeItemId(Integer feeItemId) {
|
||||
for (WalletFeeItemEnum value : WalletFeeItemEnum.values()) {
|
||||
if (value.feeItemId.equals(feeItemId)) {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
package com.cool.store.enums.order;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Getter
|
||||
public enum StoreOrderStatusEnum {
|
||||
|
||||
DRAFT(0, "草稿"),
|
||||
WAIT_CONFIRM(5, "待立规确认"),
|
||||
INVEST_MANAGER_CONFIRM(7, "待招商经理确认"),
|
||||
FINANCIAL_CONFIRM(8, "待财务确认"),
|
||||
WAIT_ADJUST(10, "待调整"),
|
||||
WAIT_PAY(15, "待支付"),
|
||||
PAID(20, "已支付"),
|
||||
PAY_FAIL(22, "支付失败"),
|
||||
CLOSED(25, "已关闭");
|
||||
|
||||
private final Integer code;
|
||||
private final String desc;
|
||||
|
||||
StoreOrderStatusEnum(Integer code, String desc) {
|
||||
this.code = code;
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
private static final Map<Integer, StoreOrderStatusEnum> MAP = Arrays.stream(values())
|
||||
.collect(Collectors.toMap(StoreOrderStatusEnum::getCode, Function.identity(), (a, b) -> a));
|
||||
|
||||
public static StoreOrderStatusEnum of(Integer code) {
|
||||
return MAP.get(code);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 可撤回阶段
|
||||
* @param code
|
||||
* @return
|
||||
*/
|
||||
public static boolean canWithdraw(Integer code) {
|
||||
return WAIT_CONFIRM.getCode().equals(code) || WAIT_PAY.getCode().equals(code)||INVEST_MANAGER_CONFIRM.getCode().equals(code);
|
||||
}
|
||||
|
||||
/**
|
||||
* 待审核状态
|
||||
* @param code
|
||||
* @return
|
||||
*/
|
||||
public static boolean approve(Integer code) {
|
||||
return WAIT_CONFIRM.getCode().equals(code) || INVEST_MANAGER_CONFIRM.getCode().equals(code);
|
||||
}
|
||||
}
|
||||
@@ -43,6 +43,8 @@ public enum ShopSubStageEnum {
|
||||
|
||||
SHOP_STAGE_6(ShopStageEnum.SHOP_STAGE_2, 260, "开通门店平安钱包", 1),
|
||||
SHOP_STAGE_27(ShopStageEnum.SHOP_STAGE_2, 270, "开业验收", 1),
|
||||
SHOP_STAGE_28(ShopStageEnum.SHOP_STAGE_2, 280, "选择标准店型", 1),
|
||||
|
||||
|
||||
SHOP_STAGE_30(ShopStageEnum.SHOP_STAGE_2, 300, "开业日期报备", 1),
|
||||
|
||||
@@ -68,11 +70,19 @@ public enum ShopSubStageEnum {
|
||||
this.planCompleteDays = planCompleteDays;
|
||||
}
|
||||
|
||||
public static Integer getTotalStageIsLocationAndPreparation() {
|
||||
public static Integer getTotalStageIsLocationAndPreparation(Integer useStandardStore) {
|
||||
int total = 0;
|
||||
for (ShopSubStageEnum shopStageEnum : ShopSubStageEnum.values()) {
|
||||
if (shopStageEnum.getShopStageEnum().getShopStage().equals(ShopStageEnum.SHOP_STAGE_1.getShopStage())
|
||||
|| shopStageEnum.getShopStageEnum().getShopStage().equals(ShopStageEnum.SHOP_STAGE_2.getShopStage())) {
|
||||
//如果不是标准店 且是SHOP_STAGE_28 直接continue
|
||||
if (useStandardStore==0&&shopStageEnum.getShopSubStage().equals(SHOP_STAGE_28.getShopSubStage())){
|
||||
continue;
|
||||
}
|
||||
//是标准店 没有缴费阶段
|
||||
if (useStandardStore==1&&shopStageEnum.getShopSubStage().equals(SHOP_STAGE_8.getShopSubStage())){
|
||||
continue;
|
||||
}
|
||||
total++;
|
||||
}
|
||||
}
|
||||
@@ -110,20 +120,16 @@ public enum ShopSubStageEnum {
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public ShopSubStageStatusEnum getInitStatus() {
|
||||
public ShopSubStageStatusEnum getInitStatus(Integer userStrandard) {
|
||||
switch (this) {
|
||||
case SHOP_STAGE_1:
|
||||
return ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_10;
|
||||
case SHOP_STAGE_5:
|
||||
return ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_50;
|
||||
// case SHOP_STAGE_6:
|
||||
// return ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_60;
|
||||
// case SHOP_STAGE_7:
|
||||
// return ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_70;
|
||||
case SHOP_STAGE_6:
|
||||
case SHOP_STAGE_2:
|
||||
case SHOP_STAGE_3:
|
||||
case SHOP_STAGE_4:
|
||||
case SHOP_STAGE_7:
|
||||
case SHOP_STAGE_8:
|
||||
case SHOP_STAGE_8_5:
|
||||
case SHOP_STAGE_8_6:
|
||||
@@ -145,6 +151,20 @@ public enum ShopSubStageEnum {
|
||||
case SHOP_STAGE_27:
|
||||
case SHOP_STAGE_30:
|
||||
return ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_00;
|
||||
case SHOP_STAGE_7:
|
||||
if (userStrandard==1){
|
||||
//是标准店 不需要单独缴费 统一收款
|
||||
return null;
|
||||
}else {
|
||||
return ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_00;
|
||||
}
|
||||
case SHOP_STAGE_28:
|
||||
if (userStrandard==1){
|
||||
//是标准店 需要选择店型 其他情况不需要选择店型
|
||||
return ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_00;
|
||||
}else {
|
||||
return null;
|
||||
}
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -166,6 +166,16 @@ public enum ShopSubStageStatusEnum {
|
||||
SHOP_SUB_STAGE_STATUS_274(ShopSubStageEnum.SHOP_STAGE_27, 2740,"待整改", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_276(ShopSubStageEnum.SHOP_STAGE_27, 2760,"已完成", Boolean.TRUE),
|
||||
|
||||
|
||||
SHOP_SUB_STAGE_STATUS_280(ShopSubStageEnum.SHOP_STAGE_28, 2800, "待选购", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_281(ShopSubStageEnum.SHOP_STAGE_28, 2810, "待立规审批", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_281_5(ShopSubStageEnum.SHOP_STAGE_28, 2815, "待招商经理审批", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_282(ShopSubStageEnum.SHOP_STAGE_28, 2820, "待财务确认", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_283(ShopSubStageEnum.SHOP_STAGE_28, 2830, "审批拒绝", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_284(ShopSubStageEnum.SHOP_STAGE_28, 2840, "待缴费", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_285(ShopSubStageEnum.SHOP_STAGE_28, 2850, "已完成", Boolean.TRUE),
|
||||
|
||||
|
||||
//开业日期报备
|
||||
SHOP_SUB_STAGE_STATUS_300(ShopSubStageEnum.SHOP_STAGE_30, 3000, "待填写", Boolean.FALSE),
|
||||
SHOP_SUB_STAGE_STATUS_310(ShopSubStageEnum.SHOP_STAGE_30, 3010, "待开业确认", Boolean.FALSE),
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
package com.cool.store.enums.visit;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 预约到店状态
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum StoreVisitReservationStatusEnum {
|
||||
|
||||
WAIT_CONFIRM(10, "待确认"),
|
||||
WAIT_VISIT(20, "待看店"),
|
||||
ARRIVED(30, "已到店"),
|
||||
CANCELED(40, "已取消");
|
||||
|
||||
private final Integer status;
|
||||
private final String desc;
|
||||
|
||||
public static boolean isValid(Integer status) {
|
||||
if (status == null) {
|
||||
return false;
|
||||
}
|
||||
for (StoreVisitReservationStatusEnum value : values()) {
|
||||
if (value.status.equals(status)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.cool.store.enums.wallet;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 钱包交易业务模块枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2026/2/4
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum WalletTradeModuleEnum {
|
||||
|
||||
FRANCHISE_PAY("FRANCHISE_PAY", "钱包加盟缴费"),
|
||||
STANDARD_STORE("STANDARD_STORE", "标准店缴费"),
|
||||
;
|
||||
|
||||
private final String module;
|
||||
|
||||
private final String desc;
|
||||
|
||||
public static WalletTradeModuleEnum getByModule(String module) {
|
||||
for (WalletTradeModuleEnum value : WalletTradeModuleEnum.values()) {
|
||||
if (value.getModule().equals(module)) {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -22,4 +22,12 @@ public class CommonUtil {
|
||||
} catch (Exception ignored) {}
|
||||
return BigDecimal.ZERO;
|
||||
}
|
||||
|
||||
public static BigDecimal addAll(String... value) {
|
||||
BigDecimal total = new BigDecimal(0);
|
||||
for (String v : value) {
|
||||
total = total.add(convertToBig(v));
|
||||
}
|
||||
return total;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.cool.store.utils;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
|
||||
import static com.cool.store.utils.CoolDateUtils.DATE_FORMAT_SEC_9;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 编号生成工具栏
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2026/2/5
|
||||
*/
|
||||
public class GenerateNoUtil {
|
||||
|
||||
/**
|
||||
* 生成编号,yyyyMMddHHmmssSSS+3位随机数
|
||||
*/
|
||||
public static String generateMillsNoWithRandom() {
|
||||
DateTimeFormatter dateFormatter = DateTimeFormatter.ofPattern(DATE_FORMAT_SEC_9);
|
||||
return LocalDateTime.now().format(dateFormatter) + ((int) (Math.random() * 900) + 100);
|
||||
}
|
||||
}
|
||||
@@ -175,4 +175,24 @@ public class RedisUtil {
|
||||
public Long increment(String key) {
|
||||
return redisTemplate.boundValueOps(key).increment(1L);
|
||||
}
|
||||
|
||||
/**
|
||||
* 尝试获取分布式锁
|
||||
* @param key 锁的key
|
||||
* @param value 请求标识,通常是UUID
|
||||
* @param expireTime 超时时间
|
||||
* @param timeUnit 时间单位
|
||||
* @return 是否获取成功
|
||||
*/
|
||||
public Boolean tryLock(String key, String value, long expireTime, TimeUnit timeUnit) {
|
||||
return redisTemplate.opsForValue().setIfAbsent(key, value, expireTime, timeUnit);
|
||||
}
|
||||
|
||||
/**
|
||||
* 释放锁
|
||||
* @param key 锁的key
|
||||
*/
|
||||
public void unlock(String key) {
|
||||
redisTemplate.delete(key);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user