Merge #8 into master from cc_20250922_closeStore_w
闭店
* cc_20250922_closeStore_w: (44 commits squashed)
- feat:闭店流程init
- feat:闭店流程接口
- feat:闭店
- Merge branch 'refs/heads/master' into cc_20250922_closeStore_w
- fix:闭店材料模块
- fix:账号关闭流程
- feat:闭店审批流程(未测);字典表
- fix:闭店审批流程完善
- Merge branch 'master' into cc_20250922_closeStore_w
- fix:闭店流程流转补充
- feat:闭店退款
- fix:字典表接口
- Merge branch 'master' into cc_20250922_closeStore_w
- fix:闭店原因接口新增闭店发起方式字段
- fix:修改审批记录返回数据类型
feat:新增退款流程跳过
- fix
- fix:新增字段
- feat:新增闭店退款提交人列表接口
- fix:闭店初始化数据来源修改;小程序闭店材料详情新增模板url字段
- fix:新增接口返回字段
- fix:闭店管理、审批待办类别所属品牌筛选改为多选
- fix:闭店管理列表新增完成阶段数量字段
- feat:新增第三方闭店申请接口
- Merge branch 'refs/heads/master' into cc_20250922_closeStore_w
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/constants/CommonConstants.java
#	coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java
#	coolstore-partner-common/src/main/java/com/cool/store/utils/BeanUtil.java
#	coolstore-partner-dao/src/main/java/com/cool/store/dao/StoreDao.java
#	coolstore-partner-dao/src/main/java/com/cool/store/mapper/StoreMapper.java
#	coolstore-partner-dao/src/main/resources/mapper/StoreMapper.xml
- fix:自动发起闭店申请定时任务
- feat:火码账号关闭
- fix:闭店流程修改
- Merge branch 'master' into cc_20250922_closeStore_w
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/constants/RedisConstant.java
#	coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java
#	coolstore-partner-web/src/main/java/com/cool/store/controller/webb/OpenApiController.java
- fix:删除云流水发起闭店接口
- fix:取消闭店申请入参修改
- fix:闭店申请列表赋值异常问题
- fix:闭店审批通过异常
- fix:普通方法参数校验
- fix:账号关闭时校验阶段状态
- fix:初始化
- fix:字段新增
- fix:接口补充
- fix
- Merge branch 'refs/heads/master' into cc_20250922_closeStore_w
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/constants/RedisConstant.java
#	coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java
#	coolstore-partner-common/src/main/java/com/cool/store/enums/RocketMqGroupEnum.java
#	coolstore-partner-common/src/main/java/com/cool/store/enums/RocketMqTagEnum.java
#	coolstore-partner-web/src/main/java/com/cool/store/controller/webb/OpenApiController.java
#	coolstore-partner-web/src/main/java/com/cool/store/controller/webc/TestController.java
- Merge branch 'refs/heads/master' into cc_20250922_closeStore_w
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/common/InsertGroup.java
#	coolstore-partner-common/src/main/java/com/cool/store/common/UpdateGroup.java
#	coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java
#	coolstore-partner-dao/src/main/java/com/cool/store/dao/StoreDao.java
#	coolstore-partner-dao/src/main/java/com/cool/store/dao/dict/SysDictColumnDAO.java
#	coolstore-partner-dao/src/main/java/com/cool/store/mapper/StoreMapper.java
#	coolstore-partner-dao/src/main/java/com/cool/store/mapper/dict/SysDictColumnMapper.java
#	coolstore-partner-dao/src/main/resources/mapper/StoreMapper.xml
#	coolstore-partner-dao/src/main/resources/mapper/dict/SysDictColumnMapper.xml
#	coolstore-partner-web/src/main/java/com/cool/store/controller/webb/DictManagerController.java
#	coolstore-partner-web/src/main/java/com/cool/store/job/XxlJobHandler.java
- fix:闭店流程修改
- fix:闭店流程修改
- fix:修改三方付款状态接口
- fix:闭店申请测试接口
Signed-off-by: 王非凡 <accounts_67eba0c5fee9c49c80c8e2b4@mail.teambition.com>
Reviewed-by: 苏竹红 <accounts_68551bf01395375227aee211@mail.teambition.com>
Merged-by: 苏竹红 <accounts_68551bf01395375227aee211@mail.teambition.com>
CR-link: https://codeup.aliyun.com/692ea314dec569489f6f167c/hangzhou/java/custom_zxjp/change/8
This commit is contained in:
@@ -6,7 +6,7 @@ package com.cool.store.common;
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/11/4
|
||||
* @since 2025/3/6
|
||||
*/
|
||||
public interface InsertGroup {
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ package com.cool.store.common;
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/11/4
|
||||
* @since 2025/3/6
|
||||
*/
|
||||
public interface UpdateGroup {
|
||||
}
|
||||
|
||||
@@ -209,6 +209,11 @@ public class CommonConstants {
|
||||
public static final String ONLINE_ENV = "online";
|
||||
public static final String AMOUNT_KEY = "amount:{0}:{1}";
|
||||
|
||||
/**
|
||||
* 闭店状态
|
||||
*/
|
||||
public static final String CLOSED = "closed";
|
||||
|
||||
public static final String WX_SELF_AUTH_URL = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=%s&redirect_uri=%s&response_type=code&scope=snsapi_base&state=1#wechat_redirect";
|
||||
|
||||
/**
|
||||
|
||||
@@ -289,7 +289,7 @@ public class RedisConstant {
|
||||
public static final String HUO_MA_STORE_ID = "huo_ma_store_id";
|
||||
|
||||
public static final String HUO_MA_TOKEN= "huo_ma_token:{0}";
|
||||
|
||||
|
||||
/**
|
||||
* 钱包开通失败/打标失败原因 wallet_open_fail:storeId:1/2 1平安/2网商
|
||||
*/
|
||||
@@ -304,4 +304,29 @@ public class RedisConstant {
|
||||
* 网商账户是否已激活
|
||||
*/
|
||||
public static final String WALLET_ONLINE_BANK_ACTIVATED = "wallet_online_bank_activated:{0}";
|
||||
|
||||
/**
|
||||
* 闭店退款申请人
|
||||
*/
|
||||
public static final String CLOSE_STORE_REFUND_SUBMIT_USER = "zxjp_refund_submit_user";
|
||||
|
||||
/**
|
||||
* 闭店账号初始化
|
||||
*/
|
||||
public static final String CLOSE_STORE_ACCOUNT_INIT = "zxjp_close_store_account";
|
||||
|
||||
/**
|
||||
* 闭店资料初始化
|
||||
*/
|
||||
public static final String CLOSE_STORE_FILE_INIT = "zxjp_close_store_file";
|
||||
|
||||
/**
|
||||
* 闭店资料模板
|
||||
*/
|
||||
public static final String CLOSE_STORE_FILE_TEMPLATE = "zxjp_close_store_file_template";
|
||||
|
||||
/**
|
||||
* 每刻退款用户信息
|
||||
*/
|
||||
public static final String MK_USER_MAPPING = "zxjp_mk_user_mapping";
|
||||
}
|
||||
|
||||
@@ -321,12 +321,32 @@ public enum ErrorCodeEnum {
|
||||
SHOP_NAME_INVALID(1610014, "门店名称包含禁止关键词",null),
|
||||
//装修
|
||||
TEAM_USED(1612001,"该装修团队有门店使用,无法删除,请确认!",null),
|
||||
CURRENT_BRAND_SORT_NUMBER_EXIST(16100007,"当前品牌已存在该排序数字!",null),
|
||||
CONTRACT_CONFIG_NOT_EXIST(16100008,"合同配置不存在!",null),
|
||||
|
||||
WALLET_OPEN_ACCOUNT_FAIL(1620001,"钱包开通失败",null),
|
||||
WALLET_WITH_DRAWER_FAIL(1620002,"提现失败",null),
|
||||
WALLET_API_ERROR(1620003,"{0}",null),
|
||||
CURRENT_BRAND_SORT_NUMBER_EXIST(16100007,"当前品牌已存在该排序数字!",null),
|
||||
CONTRACT_CONFIG_NOT_EXIST(16100008,"合同配置不存在!",null),
|
||||
|
||||
// 171闭店
|
||||
CLOSE_STORE_SUB_STAGE_ERROR(171002, "当前流程状态异常", null),
|
||||
STORE_NOT_EXIST(1710003,"门店不存在!",null),
|
||||
STORE_NOT_OPEN(1710004,"当期门店状态为已闭店!请确认!",null),
|
||||
CLOSE_STORE_INFO_NOT_EXIST(1710005,"闭店申请信息不存在!",null),
|
||||
CLOSE_STORE_EXIST_ONGOING_RECORD(1710006,"当前门店有进行中的闭店申请,请确认!",null),
|
||||
CLOSE_STORE_HAS_BEEN_COMPLETED(1710007,"该审批已结束",null),
|
||||
NO_APPROVAL_AUTHORITY(1710008,"您没有审批权限!",null),
|
||||
CLOSE_STORE_AUDIT_RECORD_NOT_EXIST(1710009,"闭店审批记录不存在!",null),
|
||||
CLOSE_STORE_CANCEL_ERROR(1710010,"该闭店申请已审批无法取消",null),
|
||||
CLOSE_STORE_CANCELED(1710011,"该闭店申请已取消",null),
|
||||
CLOSE_STORE_IS_NOT_APPLICANT(1710012, "非申请发起人无法取消!",null),
|
||||
CLOSE_STORE_REFUND_INFO_NOT_EXIST(1710013,"退款信息不存在",null),
|
||||
CLOSE_STORE_FILE_STATUS_ERROR(1710014, "材料上传状态错误,请检查材料上传情况", null),
|
||||
CLOSE_STORE_FILE_NOT_EXIST(1710015, "闭店材料不存在", null),
|
||||
CLOSE_STORE_REFUND_MK_USER_NOT_EXIST(1710016, "当前用户不存在每刻权限", null),
|
||||
CLOSE_STORE_REFUND_EXIST_EFFECTIVE_RECORD(1710017, "存在生效中的退款申请!", null),
|
||||
CLOSE_STORE_REFUND_TYPE_ERROR(1710018, "退款类型错误", null),
|
||||
|
||||
/**
|
||||
* 181 十二分制
|
||||
*/
|
||||
|
||||
@@ -34,7 +34,9 @@ public enum RocketMqGroupEnum {
|
||||
|
||||
|
||||
STORE_USER_UPDATE("store_user_update", new ArrayList<>(Arrays.asList(RocketMqTagEnum.STORE_USER_UPDATE))),
|
||||
SHOP_DECORATION_ASSIGN("shop_decoration_assign", new ArrayList<>(Arrays.asList(RocketMqTagEnum.DELAY_SHOP_DECORATION_ASSIGN)))
|
||||
SHOP_DECORATION_ASSIGN("shop_decoration_assign", new ArrayList<>(Arrays.asList(RocketMqTagEnum.DELAY_SHOP_DECORATION_ASSIGN))),
|
||||
|
||||
STORE_MASTER_ISSUE("store_master_issue", new ArrayList<>(Arrays.asList(RocketMqTagEnum.STORE_MASTER_ISSUE))),
|
||||
|
||||
;
|
||||
|
||||
|
||||
@@ -19,7 +19,8 @@ public enum RocketMqTagEnum {
|
||||
PARTNER_LICENSE_SYNC_QUEUE("partner_license_sync_queue", "招商证照信息同步"),
|
||||
BUSINESS_SYNC("business_sync", "工商食安信息同步"),
|
||||
STORE_USER_UPDATE("store_user_update", "门店信息人员变更同步菜品"),
|
||||
DELAY_SHOP_DECORATION_ASSIGN("shop_decoration_assign","门店装修分配");
|
||||
DELAY_SHOP_DECORATION_ASSIGN("shop_decoration_assign","门店装修分配"),
|
||||
STORE_MASTER_ISSUE("store_master_issue","门店主数据下发"),
|
||||
;
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 闭店账号关闭类型枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/10/9
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum AccountCloseTypeEnum {
|
||||
|
||||
DIRECT_CLOSE(0, "直接关闭"),
|
||||
APPLY_CLOSE(1, "申请关闭"),
|
||||
;
|
||||
|
||||
private final Integer type;
|
||||
|
||||
private final String msg;
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 闭店账号状态枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/10/8
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum CloseStoreAccountStatusEnum {
|
||||
|
||||
IN_USE(1, "使用中"),
|
||||
CLOSED(2, "已关闭"),
|
||||
CLOSING(3, "关闭中"),
|
||||
;
|
||||
|
||||
private final Integer status;
|
||||
|
||||
private final String msg;
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 闭店账号类型枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/10/8
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum CloseStoreAccountTypeEnum {
|
||||
|
||||
IT_ACCOUNT(0, "IT账号"),
|
||||
TAKE_OUT_ACCOUNT(1, "外卖账号"),
|
||||
;
|
||||
|
||||
private final Integer type;
|
||||
|
||||
private final String msg;
|
||||
|
||||
public static String getMsgByType(Integer type) {
|
||||
for (CloseStoreAccountTypeEnum value : CloseStoreAccountTypeEnum.values()) {
|
||||
if (value.getType().equals(type)) {
|
||||
return value.getMsg();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 闭店审批状态枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/10/8
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum CloseStoreAuditStatusEnum {
|
||||
|
||||
PENDING(0, "待处理"),
|
||||
PASS(1, "通过"),
|
||||
REJECTED(2, "拒绝"),
|
||||
|
||||
;
|
||||
|
||||
private final Integer status;
|
||||
|
||||
private final String msg;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 闭店材料 枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/11/27
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum CloseStoreFileEnum {
|
||||
|
||||
HT("close_store_file_ht", "合同"),
|
||||
YJT("close_store_file_yjt", "押金条"),
|
||||
SQS("close_store_file_sqs", "授权书"),
|
||||
MTZ("close_store_file_mtz", "门头字摧毁照片"),
|
||||
TKD("close_store_file_tkd", "退款单"),
|
||||
SFZ("close_store_file_sfz", "身份证复印件"),
|
||||
YHK("close_store_file_yhk", "银行卡复印件"),
|
||||
;
|
||||
|
||||
private final String code;
|
||||
|
||||
private final String desc;
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
* @Date 2025/9/22 11:21
|
||||
* @Version 1.0
|
||||
*/
|
||||
public enum CloseStoreStageEnum {
|
||||
|
||||
CLOSE_STORE_STAGE_1(1, "材料上交"),
|
||||
CLOSE_STORE_STAGE_2(2, "账号关闭"),
|
||||
CLOSE_STORE_STAGE_3(3, "退款"),
|
||||
;
|
||||
|
||||
/**
|
||||
* 闭店阶段
|
||||
*/
|
||||
private Integer closeStoreStage;
|
||||
|
||||
/**
|
||||
* 闭店阶段名称
|
||||
*/
|
||||
private String closeStoreName;
|
||||
|
||||
|
||||
|
||||
CloseStoreStageEnum(Integer closeStoreStage, String closeStoreName) {
|
||||
this.closeStoreStage = closeStoreStage;
|
||||
this.closeStoreName = closeStoreName;
|
||||
}
|
||||
|
||||
public static CloseStoreStageEnum getCloseStoreStageEnum(Integer closeStoreStage) {
|
||||
for (CloseStoreStageEnum closeStoreStageEnum : CloseStoreStageEnum.values()) {
|
||||
if (closeStoreStageEnum.getCloseStoreStage().equals(closeStoreStage)) {
|
||||
return closeStoreStageEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
public Integer getCloseStoreStage() {
|
||||
return closeStoreStage;
|
||||
}
|
||||
|
||||
public String getCloseStoreName() {
|
||||
return closeStoreName;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
* @Date 2025/9/22 18:57
|
||||
* @Version 1.0
|
||||
*/
|
||||
public enum CloseStoreStatusEnum {
|
||||
// 督导审批中
|
||||
UNDER_APPROVAL(1, "审批中"),
|
||||
// 大区老总审批中
|
||||
MANAGER_UNDER_APPROVAL(2, "审批中"),
|
||||
REVIEW_NOT_APPROVED(5, "审批拒绝"),
|
||||
CANCELED(10, "已取消"),
|
||||
CLOSING(15, "闭店中"),
|
||||
COMPLETED(20, "已完成"),
|
||||
|
||||
;
|
||||
private Integer closeStoreStatus;
|
||||
|
||||
private String closeStoreStatusName;
|
||||
|
||||
|
||||
CloseStoreStatusEnum(Integer closeStoreStatus, String closeStoreStatusName) {
|
||||
this.closeStoreStatus = closeStoreStatus;
|
||||
this.closeStoreStatusName = closeStoreStatusName;
|
||||
}
|
||||
|
||||
public Integer getCloseStoreStatus() {
|
||||
return closeStoreStatus;
|
||||
}
|
||||
|
||||
public String getCloseStoreStatusName() {
|
||||
return closeStoreStatusName;
|
||||
}
|
||||
|
||||
public static CloseStoreStatusEnum getByCloseStoreStatus(Integer closeStoreStatus){
|
||||
for (CloseStoreStatusEnum value : CloseStoreStatusEnum.values()) {
|
||||
if (value.getCloseStoreStatus().equals(closeStoreStatus)){
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static String getNameByStatus(Integer closeStoreStatus) {
|
||||
for (CloseStoreStatusEnum value : CloseStoreStatusEnum.values()) {
|
||||
if (value.getCloseStoreStatus().equals(closeStoreStatus)){
|
||||
return value.getCloseStoreStatusName();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取下一个审批通过状态
|
||||
* @param status 审批状态
|
||||
* @return 审批状态
|
||||
*/
|
||||
public static Integer getNextPassStatus(Integer status) {
|
||||
CloseStoreStatusEnum currentStatus = getByCloseStoreStatus(status);
|
||||
if (currentStatus == null) {
|
||||
throw new IllegalArgumentException("闭店申请状态为空");
|
||||
}
|
||||
switch (currentStatus) {
|
||||
case UNDER_APPROVAL:
|
||||
return MANAGER_UNDER_APPROVAL.getCloseStoreStatus();
|
||||
case MANAGER_UNDER_APPROVAL:
|
||||
return CLOSING.getCloseStoreStatus();
|
||||
case CLOSING:
|
||||
return COMPLETED.getCloseStoreStatus();
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean isApprove(Integer status) {
|
||||
return CloseStoreStatusEnum.UNDER_APPROVAL.getCloseStoreStatus().equals(status)
|
||||
|| CloseStoreStatusEnum.MANAGER_UNDER_APPROVAL.getCloseStoreStatus().equals(status);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author zhangchenbiao
|
||||
* @FileName: ShopStageEnum
|
||||
* @Description:店铺阶段
|
||||
* @date 2024-04-10 17:34
|
||||
*/
|
||||
public enum CloseStoreSubStageEnum {
|
||||
|
||||
CLOSE_STORE_SUB_STAGE_10(CloseStoreStageEnum.CLOSE_STORE_STAGE_1, 10, "关店所需材料上交", 1),
|
||||
CLOSE_STORE_SUB_STAGE_20(CloseStoreStageEnum.CLOSE_STORE_STAGE_2, 20, "账号关闭", 2),
|
||||
CLOSE_STORE_SUB_STAGE_30(CloseStoreStageEnum.CLOSE_STORE_STAGE_3, 30, "押金退款", 3),
|
||||
CLOSE_STORE_SUB_STAGE_40(CloseStoreStageEnum.CLOSE_STORE_STAGE_3, 40, "货款退款", 3),
|
||||
;
|
||||
|
||||
/**
|
||||
* 阶段
|
||||
*/
|
||||
private CloseStoreStageEnum closeStoreStageEnum;
|
||||
|
||||
/**
|
||||
* 子阶段
|
||||
*/
|
||||
private Integer closeStoreSubStage;
|
||||
|
||||
/**
|
||||
* 子阶段名称
|
||||
*/
|
||||
private String closeStoreSubStageName;
|
||||
|
||||
/**
|
||||
* 计划完成天数
|
||||
*/
|
||||
private Integer planCompleteDays;
|
||||
|
||||
CloseStoreSubStageEnum(CloseStoreStageEnum closeStoreStageEnum, Integer closeStoreSubStage, String closeStoreSubStageName, Integer planCompleteDays) {
|
||||
this.closeStoreStageEnum = closeStoreStageEnum;
|
||||
this.closeStoreSubStage = closeStoreSubStage;
|
||||
this.closeStoreSubStageName = closeStoreSubStageName;
|
||||
this.planCompleteDays = planCompleteDays;
|
||||
}
|
||||
|
||||
|
||||
public static List<CloseStoreSubStageEnum> getShopStageEnum(Integer closeStoreStage) {
|
||||
List<CloseStoreSubStageEnum> resultList = new ArrayList<>();
|
||||
for (CloseStoreSubStageEnum closeStoreSubStageEnum : CloseStoreSubStageEnum.values()) {
|
||||
if (closeStoreSubStageEnum.getCloseStoreStageEnum().getCloseStoreStage().equals(closeStoreStage)) {
|
||||
resultList.add(closeStoreSubStageEnum);
|
||||
}
|
||||
}
|
||||
return resultList;
|
||||
}
|
||||
|
||||
public CloseStoreStageEnum getCloseStoreStageEnum() {
|
||||
return closeStoreStageEnum;
|
||||
}
|
||||
|
||||
public Integer getCloseStoreSubStage() {
|
||||
return closeStoreSubStage;
|
||||
}
|
||||
|
||||
public String getCloseStoreSubStageName() {
|
||||
return closeStoreSubStageName;
|
||||
}
|
||||
|
||||
public Integer getPlanCompleteDays() {
|
||||
return planCompleteDays;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取各阶段的初始状态
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public CloseStoreSubStageStatusEnum getInitStatus() {
|
||||
switch (this) {
|
||||
case CLOSE_STORE_SUB_STAGE_10:
|
||||
return CloseStoreSubStageStatusEnum.CLOSE_STORE_SUB_STAGE_STATUS_10;
|
||||
case CLOSE_STORE_SUB_STAGE_20:
|
||||
case CLOSE_STORE_SUB_STAGE_30:
|
||||
case CLOSE_STORE_SUB_STAGE_40:
|
||||
return CloseStoreSubStageStatusEnum.CLOSE_STORE_SUB_STAGE_STATUS_00;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public String getPlanCompleteTime(LocalDate planCompleteTime) {
|
||||
switch (this) {
|
||||
default:
|
||||
return planCompleteTime.plusDays(getPlanCompleteDays()).toString();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取下一个开启的子阶段
|
||||
*/
|
||||
public static List<CloseStoreSubStageEnum> getNextSubStage(CloseStoreSubStageEnum currentSubStage) {
|
||||
switch (currentSubStage) {
|
||||
case CLOSE_STORE_SUB_STAGE_10:
|
||||
return Arrays.asList(CLOSE_STORE_SUB_STAGE_20, CLOSE_STORE_SUB_STAGE_30, CLOSE_STORE_SUB_STAGE_40);
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static CloseStoreSubStageEnum getSubStageByStage(Integer subStage) {
|
||||
for (CloseStoreSubStageEnum value : CloseStoreSubStageEnum.values()) {
|
||||
if (value.getCloseStoreSubStage().equals(subStage)) {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static String getSubStageNameBySubStage(Integer subStage) {
|
||||
for (CloseStoreSubStageEnum value : CloseStoreSubStageEnum.values()) {
|
||||
if (value.getCloseStoreSubStage().equals(subStage)) {
|
||||
return value.getCloseStoreSubStageName();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,168 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @author zhangchenbiao
|
||||
* @FileName: ShopStageStatusEnum
|
||||
* @Description:店铺阶段状态
|
||||
* @date 2024-04-10 17:34
|
||||
*/
|
||||
public enum CloseStoreSubStageStatusEnum {
|
||||
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_00(null, -100, "未开始", Boolean.FALSE),
|
||||
|
||||
/**
|
||||
* 材料上传
|
||||
*/
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_10(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_10, 100, "待内勤填写地址", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_15(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_10, 110, "未提交", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_16(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_10, 120, "待督导审核", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_17(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_10, 130, "督导审批驳回", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_18(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_10, 140, "待内勤审核", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_19(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_10, 150, "内勤审批驳回", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_20(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_10, 160, "已完成", Boolean.TRUE),
|
||||
|
||||
/**
|
||||
* 账号关闭
|
||||
*/
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_25(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_20, 200, "进行中", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_30(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_20, 210, "已完成", Boolean.TRUE),
|
||||
|
||||
/**
|
||||
* 押金退款
|
||||
*/
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_35(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_30, 310, "待退款", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_40(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_30, 330, "已完成", Boolean.TRUE),
|
||||
|
||||
/**
|
||||
* 货款退款
|
||||
*/
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_45(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_40, 410, "待退款", Boolean.FALSE),
|
||||
CLOSE_STORE_SUB_STAGE_STATUS_50(CloseStoreSubStageEnum.CLOSE_STORE_SUB_STAGE_40, 430, "已完成", Boolean.TRUE),
|
||||
|
||||
;
|
||||
|
||||
private CloseStoreSubStageEnum closeStoreSubStageEnum;
|
||||
|
||||
private Integer shopSubStageStatus;
|
||||
|
||||
private String shopSubStageStatusName;
|
||||
|
||||
private boolean isTerminated;
|
||||
|
||||
|
||||
CloseStoreSubStageStatusEnum(CloseStoreSubStageEnum closeStoreSubStageEnum, Integer shopSubStageStatus, String shopSubStageStatusName, Boolean isTerminated) {
|
||||
this.closeStoreSubStageEnum = closeStoreSubStageEnum;
|
||||
this.shopSubStageStatus = shopSubStageStatus;
|
||||
this.shopSubStageStatusName = shopSubStageStatusName;
|
||||
this.isTerminated = isTerminated;
|
||||
}
|
||||
|
||||
public static List<CloseStoreSubStageStatusEnum> getCloseStoreSubStageStatusEnum(CloseStoreSubStageEnum closeStoreSubStageEnum) {
|
||||
List<CloseStoreSubStageStatusEnum> resultList = new ArrayList<>();
|
||||
for (CloseStoreSubStageStatusEnum stageStatusEnum : CloseStoreSubStageStatusEnum.values()) {
|
||||
if (Objects.nonNull(stageStatusEnum.getCloseStoreSubStageEnum()) && stageStatusEnum.getCloseStoreSubStageEnum().equals(closeStoreSubStageEnum)) {
|
||||
resultList.add(stageStatusEnum);
|
||||
}
|
||||
}
|
||||
return resultList;
|
||||
}
|
||||
|
||||
public CloseStoreSubStageEnum getCloseStoreSubStageEnum() {
|
||||
return closeStoreSubStageEnum;
|
||||
}
|
||||
|
||||
public Integer getShopSubStageStatus() {
|
||||
return shopSubStageStatus;
|
||||
}
|
||||
|
||||
public String getShopSubStageStatusName() {
|
||||
return shopSubStageStatusName;
|
||||
}
|
||||
|
||||
public String getShopSubStageName() {
|
||||
return closeStoreSubStageEnum.getCloseStoreSubStageName();
|
||||
}
|
||||
|
||||
public boolean isTerminated() {
|
||||
return isTerminated;
|
||||
}
|
||||
|
||||
public static CloseStoreSubStageStatusEnum getCloseStoreSubStageStatusEnum(Integer CloseStoreSubStageStatus) {
|
||||
for (CloseStoreSubStageStatusEnum storeSubStageStatusEnum : CloseStoreSubStageStatusEnum.values()) {
|
||||
if (Objects.nonNull(storeSubStageStatusEnum.getShopSubStageStatus()) && storeSubStageStatusEnum.getShopSubStageStatus().equals(CloseStoreSubStageStatus)) {
|
||||
return storeSubStageStatusEnum;
|
||||
}
|
||||
}
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_00;
|
||||
}
|
||||
|
||||
public static CloseStoreSubStageStatusEnum getByStatus(Integer shopSubStageStatus) {
|
||||
for (CloseStoreSubStageStatusEnum statusEnum : CloseStoreSubStageStatusEnum.values()) {
|
||||
if (statusEnum.getShopSubStageStatus().equals(shopSubStageStatus)) {
|
||||
return statusEnum;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取下一个阶段状态
|
||||
* @param current 当前阶段状态
|
||||
* @return 阶段状态
|
||||
*/
|
||||
public static CloseStoreSubStageStatusEnum getNextStageStatus(CloseStoreSubStageStatusEnum current) {
|
||||
switch (current) {
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_10:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_15;
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_15:
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_17:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_16;
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_16:
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_19:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_18;
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_18:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_20;
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_25:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_30;
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_35:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_40;
|
||||
case CLOSE_STORE_SUB_STAGE_STATUS_45:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_50;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取子流程的开始阶段状态
|
||||
* @param subStage 子流程
|
||||
* @return 阶段状态
|
||||
*/
|
||||
public static CloseStoreSubStageStatusEnum getOpenStageStatus(CloseStoreSubStageEnum subStage) {
|
||||
switch (subStage) {
|
||||
case CLOSE_STORE_SUB_STAGE_10:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_10;
|
||||
case CLOSE_STORE_SUB_STAGE_20:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_25;
|
||||
case CLOSE_STORE_SUB_STAGE_30:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_35;
|
||||
case CLOSE_STORE_SUB_STAGE_40:
|
||||
return CLOSE_STORE_SUB_STAGE_STATUS_45;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static String getStatusNameByStatus(Integer status) {
|
||||
for (CloseStoreSubStageStatusEnum statusEnum : CloseStoreSubStageStatusEnum.values()) {
|
||||
if (statusEnum.getShopSubStageStatus().equals(status)) {
|
||||
return statusEnum.getShopSubStageStatusName();
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
* @Date 2025/9/22 18:43
|
||||
* @Version 1.0
|
||||
*/
|
||||
public enum CloseTypeEnum {
|
||||
|
||||
INITIATE(1, "主动发起"),
|
||||
NO_ORDER_AUTO(2, "未订货自动发起"),
|
||||
;
|
||||
|
||||
CloseTypeEnum(Integer closeType, String closeTypeName) {
|
||||
this.closeType = closeType;
|
||||
this.closeTypeName = closeTypeName;
|
||||
}
|
||||
|
||||
private Integer closeType;
|
||||
|
||||
private String closeTypeName;
|
||||
|
||||
public Integer getCloseType() {
|
||||
return closeType;
|
||||
}
|
||||
|
||||
public String getCloseTypeName() {
|
||||
return closeTypeName;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 闭店材料状态 枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/11/26
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum FileStatusEnum {
|
||||
|
||||
NOT_UPLOAD(0, "未上传"),
|
||||
QUALIFIED(1, "合格"),
|
||||
UNQUALIFIED(2, "不合格"),
|
||||
UPLOADED(3, "已上传"),
|
||||
APPROVING(4, "审批中"),
|
||||
MODIFIED(5, "已修改"),
|
||||
;
|
||||
|
||||
private final Integer status;
|
||||
|
||||
private final String desc;
|
||||
|
||||
public static String getDescByStatus(Integer status) {
|
||||
for (FileStatusEnum value : FileStatusEnum.values()) {
|
||||
if (value.status.equals(status)) {
|
||||
return value.desc;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
* @Date 2025/9/23 13:45
|
||||
* @Version 1.0
|
||||
*/
|
||||
public enum RecordTypeEnum {
|
||||
|
||||
CLOSE_STORE_RECORD_TYPE_10(1, "申请提交"),
|
||||
CLOSE_STORE_RECORD_TYPE_20(2, "审批操作"),
|
||||
;
|
||||
|
||||
private Integer recordType;
|
||||
|
||||
private String recordTypeName;
|
||||
|
||||
RecordTypeEnum(Integer recordType, String recordTypeName) {
|
||||
this.recordType = recordType;
|
||||
this.recordTypeName = recordTypeName;
|
||||
}
|
||||
|
||||
public Integer getRecordType() {
|
||||
return recordType;
|
||||
}
|
||||
|
||||
public String getRecordTypeName() {
|
||||
return recordTypeName;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 退款支付状态枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/12/1
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum RefundPayStatusEnum {
|
||||
|
||||
APPROVING("APPROVING", "审批中"),
|
||||
ABANDON("ABANDON", "作废"),
|
||||
SETTLEMENT("SETTLEMENT", "结算中"),
|
||||
PAY_SUCCESS("PAY_SUCCESS", "支付成功"),
|
||||
PAY_FAIL("PAY_FAIL", "支付失败"),
|
||||
;
|
||||
|
||||
private final String status;
|
||||
|
||||
private final String desc;
|
||||
|
||||
public static String getDescByStatus(String status) {
|
||||
for (RefundPayStatusEnum value : values()) {
|
||||
if (value.status.equals(status)) {
|
||||
return value.desc;
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.cool.store.enums.close;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 新管家退管单支付状态枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/11/28
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum XgjRefundPayStatusEnum {
|
||||
|
||||
APPROVING("APPROVING", "审批中"),
|
||||
ABANDON("ABANDON", "作废"),
|
||||
SETTLEMENT("SETTLEMENT", "结算中"),
|
||||
PAY_SUCCESS("PAY_SUCCESS", "支付成功"),
|
||||
PAY_FAIL("PAY_FAIL", "支付失败"),
|
||||
REJECTED("REJECTED", "驳回")
|
||||
;
|
||||
|
||||
private final String status;
|
||||
|
||||
private final String desc;
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.cool.store.enums.master;
|
||||
|
||||
import com.cool.store.enums.close.CloseTypeEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 门店闭店性质枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/9/16
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum StoreCloseNatureEnum {
|
||||
// 这里的描述跟标品略微不同,但是描述不要改!!!跟每刻保持一致!!!
|
||||
REQUIRE_CLOSE(0, "我们管理要求闭店", CloseTypeEnum.NO_ORDER_AUTO),
|
||||
|
||||
ONESELF_CLOSE(1, "加盟商自行闭店", CloseTypeEnum.INITIATE),
|
||||
;
|
||||
|
||||
|
||||
private final Integer code;
|
||||
|
||||
private final String desc;
|
||||
|
||||
private final CloseTypeEnum closeType;
|
||||
|
||||
public static String getDescByCode(Integer code) {
|
||||
for (StoreCloseNatureEnum value : StoreCloseNatureEnum.values()) {
|
||||
if (value.code.equals(code)) {
|
||||
return value.desc;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
package com.cool.store.enums.master;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 门店闭店原因枚举类
|
||||
* </p>
|
||||
*
|
||||
* @author wangff
|
||||
* @since 2025/9/16
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum StoreCloseReasonEnum {
|
||||
// 这里的描述跟标品略微不同,但是描述不要改!!!跟每刻保持一致!!!
|
||||
REASON0(0, "不进货(外购)", StoreCloseNatureEnum.REQUIRE_CLOSE),
|
||||
REASON1(1, "门店形象差(不升级)", StoreCloseNatureEnum.REQUIRE_CLOSE),
|
||||
REASON2(2, "顾客投诉率高", StoreCloseNatureEnum.REQUIRE_CLOSE),
|
||||
REASON3(3, "加盟老板失联", StoreCloseNatureEnum.REQUIRE_CLOSE),
|
||||
REASON4(4, "其他严重违反加盟规定", StoreCloseNatureEnum.REQUIRE_CLOSE),
|
||||
REASON5(5, "卫生操作不达标", StoreCloseNatureEnum.REQUIRE_CLOSE),
|
||||
|
||||
REASON6(6, "人员不足", StoreCloseNatureEnum.ONESELF_CLOSE),
|
||||
REASON7(7, "商圈转移或拆迁", StoreCloseNatureEnum.ONESELF_CLOSE),
|
||||
REASON8(8, "生意差", StoreCloseNatureEnum.ONESELF_CLOSE),
|
||||
REASON9(9, "房东不租", StoreCloseNatureEnum.ONESELF_CLOSE),
|
||||
REASON19(10, "想转行或想长休", StoreCloseNatureEnum.ONESELF_CLOSE),
|
||||
|
||||
;
|
||||
|
||||
|
||||
private final Integer code;
|
||||
|
||||
private final String desc;
|
||||
|
||||
private final StoreCloseNatureEnum closeNature;
|
||||
|
||||
public static String getDescByCode(Integer code) {
|
||||
for (StoreCloseReasonEnum value : StoreCloseReasonEnum.values()) {
|
||||
if (value.code.equals(code)) {
|
||||
return value.desc;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static StoreCloseReasonEnum getByCode(Integer code) {
|
||||
for (StoreCloseReasonEnum value : StoreCloseReasonEnum.values()) {
|
||||
if (value.code.equals(code)) {
|
||||
return value;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -4,6 +4,7 @@ import cn.hutool.core.bean.copier.CopyOptions;
|
||||
import com.github.pagehelper.PageInfo;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
@@ -51,4 +52,13 @@ public class BeanUtil extends cn.hutool.core.bean.BeanUtil {
|
||||
newPage.setList(list);
|
||||
return newPage;
|
||||
}
|
||||
|
||||
public static void copyPropertiesIgnoreId(Object source, Object target, String... ignoreProperties) {
|
||||
if (source == null || target == null) {
|
||||
return;
|
||||
}
|
||||
String[] mergedIgnoreProperties = Arrays.copyOf(ignoreProperties, ignoreProperties.length + 1);
|
||||
mergedIgnoreProperties[ignoreProperties.length] = "id";
|
||||
copyProperties(source, target, mergedIgnoreProperties);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -161,6 +161,13 @@ public class CoolDateUtils {
|
||||
return LocalDate.now().format(getDateFormatter(DATE_FORMAT_DAY));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前时间字符串 (yyyy-MM-dd HH:mm:ss)
|
||||
*/
|
||||
public static String getCurrentDateTime() {
|
||||
return LocalDateTime.now().format(getDateFormatter(DATE_FORMAT_SEC));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取上月同一天的日期字符串 (yyyy-MM-dd)
|
||||
* 如果上个月没有同一天(如当前是3月31日,但2月没有31日),则返回上个月的最后一天
|
||||
|
||||
@@ -22,16 +22,16 @@ import java.util.stream.Collectors;
|
||||
@Slf4j
|
||||
public class RocketMqUtil {
|
||||
|
||||
private static final String INSTANCE_ID = "MQ_INST_1947409023213164_BX3sLZnA";
|
||||
private static final String INSTANCE_ID = "MQ_INST_1748142459508127_BZfpFxuJ";
|
||||
|
||||
/**
|
||||
* 本地
|
||||
*/
|
||||
private static final String LOCAL_INSTANCE_ID = "MQ_INST_1255228665351616_BX3wfyPO";
|
||||
|
||||
private static final String INSTANCE_ID_ONLINE_HD_PRE = "MQ_INST_1947409023213164_BX5N7rwl";
|
||||
private static final String ACCESS_KEY = "LTAI5tJbgtyoHUvofTaeP1RP";
|
||||
private static final String ACCESS_SECRET = "myg755iCx0j4PyQkHMaUVeOr0bw1tA";
|
||||
private static final String INSTANCE_ID_ONLINE_HD_PRE = "MQ_INST_1748142459508127_BZegx2xc";
|
||||
private static final String ACCESS_KEY = "LTAI5tGBwmXwZkMuHK4MudMJ";
|
||||
private static final String ACCESS_SECRET = "bnZoUMRQ9834STgz5E291YrqlBu6yn";
|
||||
/**
|
||||
* 使用AK&SK初始化账号Client
|
||||
* @param accessKeyId
|
||||
@@ -61,6 +61,11 @@ public class RocketMqUtil {
|
||||
return new Client(config);
|
||||
}
|
||||
|
||||
public static void main(String[] args) throws Exception {
|
||||
// initGroup("local");
|
||||
// initOnlineAndHdAndPreGroup("online");
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增测试、开发环境的group
|
||||
* @author chenyupeng
|
||||
|
||||
Reference in New Issue
Block a user