Merge #120 into master from cc_20250922_closeStore_w
fix:闭店中止新增审批记录
* cc_20250922_closeStore_w: (100 commits squashed)
- fix:新管家应退实退金额字段修改
- fix:启用禁用规则合并
- Merge branch 'refs/heads/master' into cc_2021104_twelve_points
- fix:惩处规则列表新增描述字段
- fix:闭店支行测试环境mock
- fix:新增用户管辖门店列表接口
- fix:门店列表接口新增门店积分字段
- fix:查询问题修复;新增草稿状态
- fix:申请单审批补充审批人字段
- fix:修改门店积分限制0-12
- fix:积分流水接口修复;申请单查询接口添加日期筛选
- fix:redis报错修复
- fix:惩处单查询提供惩处待处理、惩处已处理状态筛选
- fix:新管家关店原因字段补充
- fix:惩处单复议申请查询异常修复
- fix:小程序惩处单详情接口字段补充
- fix:查询字段补充
- fix
- fix:转义
- fix
- fix:新增撤销复议申请单接口
- fix:补充字段
- fix:补充字段
- fix:新增门店分数接口
- fix:申请单新增筛选条件
- fix:门店积分接口返回参数修改
- fix:小程序规则分页查询接口改为Post
- fix:问题修复
- fix:十二分导入
- fix:导入状态部分失败改为失败
- fix:字段补充
- fix:异步下Excel导入图片临时文件被清理的问题
- fix:扣分申请导入图片路径修改并使用CDN
- fix:导入图片上传oss文件类型修改为图片
- fix:批量审批
- fix:批量审批新增备注字段
- fix:字段补充
- Merge branch 'master' into cc_2021104_twelve_points
# 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-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
#	coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCStoreController.java
- fix:新增字段
- fix:字段补充
- fix:小程序新增接口根据闭店申请id获取闭店申请简单信息
- fix:小程序退款信息列表修改
- fix:闭店审批允许管理员审批
- fix:字典项新增排序、编辑删除权限、关联字典项
- Merge branch 'master' into cc_2021104_twelve_points
- fix:十二分值-扣分列表申请复议截止日期格式
- fix:去除appealEndDate格式校验
- Merge remote-tracking branch 'origin/cc_20260128_dict_update' into cc_20260205_twelve_points_v2
- fix:阶段名称修改
- Merge branch 'refs/heads/master' into cc_20250922_closeStore_w
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/enums/close/CloseStoreSubStageStatusEnum.java
- fix:闭店记录列表补充审批id;仅在营门店允许发起闭店
- fix:提交新管家字段取值逻辑修改
- Merge branch 'cc_20260128_dict_update' into cc_2021104_twelve_points
- fix:字典回显包含已删除字典项
- Merge branch 'master' into cc_2021104_twelve_points
- Merge remote-tracking branch 'origin/cc_20260205_twelve_points_v2' into cc_2021104_twelve_points
- fix:去除惩处单审批阶段;复议申请单证明图片非必填
- fix:复议拒绝后惩处单直接生效
- fix:扣分申请单证明图片改为非必填
- fix
- fix:字段转义
- fix:惩处待处理包含带生效数据
- fix:字段转义
- fix:警告单金额和积分初始化为0
- fix
- fix:小程序接口字段转义
- Merge branch 'master' into cc_2021104_twelve_points
- fix:十二分审批记录展示待审批人
- fix
- fix:惩处单复议申请逾期检查改为延时队列
- Merge branch 'refs/heads/master' into cc_20250922_closeStore_w
- fix:闭店定时任务过滤闭店状态补充
- Merge branch 'refs/heads/master' into cc_2021104_twelve_points
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/constants/RedisConstant.java
- Merge branch 'master' into cc_20250922_closeStore_w
- fix:闭店材料新增字段
- fix
- fix:小程序闭店材料详情新增字段
- fix:闭店流程流转校验除授权书外是否已邮寄
- fix:营帐通JWT生成
- fix:营帐通JWT改为post
- fix:修改secret
- fix:配置
- Merge branch 'master' into cc_2021104_twelve_points
- fix:十二分流水导出;流水新增规则描述字段
- fix
- fix:闭店新管家接口错误信息返回
- Merge branch 'master' into cc_20250922_closeStore_w
- Merge branch 'cc_20260412_jwt_ge' into cc_20250922_closeStore_w
- Merge branch 'master' into cc_20250922_closeStore_w
- fix:闭店火码关闭账号不存在时忽略
- Merge branch 'cc_2021104_twelve_points' into cc_20250922_closeStore_w
- 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/FileTypeEnum.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
- fix:闭店逻辑修改
- fix:闭店待办列表新增字段
- fix:计划闭店时间修改
- fix:闭店信息新增初审、复审、终审时间字段;闭店管理列表新增返回字段
- fix:删除字段
- fix:字段名称修改
- fix:闭店中止新增审批记录
- Merge branch 'master' into cc_20250922_closeStore_w
# Conflicts:
#	coolstore-partner-common/src/main/java/com/cool/store/enums/UserRoleEnum.java
Signed-off-by: 王非凡 <accounts_67eba0c5fee9c49c80c8e2b4@mail.teambition.com>
Merged-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>
CR-link: https://codeup.aliyun.com/692ea314dec569489f6f167c/hangzhou/java/custom_zxjp/change/120
This commit is contained in:
@@ -59,6 +59,13 @@ public interface CloseStoreService {
|
||||
*/
|
||||
Boolean cancelApply(Long closeStoreId);
|
||||
|
||||
/**
|
||||
* 中止闭店申请
|
||||
* @param closeStoreId 闭店申请id
|
||||
* @return 是否成功
|
||||
*/
|
||||
Boolean suspendApply(Long closeStoreId);
|
||||
|
||||
/**
|
||||
* 查询权限下的闭店申请审批记录
|
||||
* @param request 闭店申请查询Request
|
||||
|
||||
@@ -22,8 +22,10 @@ import com.cool.store.response.AuditInfoResponse;
|
||||
import com.cool.store.service.SysRoleService;
|
||||
import com.cool.store.service.UserAuthMappingService;
|
||||
import com.cool.store.service.close.CloseStoreService;
|
||||
import com.cool.store.service.dict.impl.DictService;
|
||||
import com.cool.store.utils.BeanUtil;
|
||||
import com.cool.store.utils.CoolDateUtils;
|
||||
import com.cool.store.utils.poi.DateUtils;
|
||||
import com.cool.store.utils.poi.StringUtils;
|
||||
import com.cool.store.vo.PartnerUserInfoVO;
|
||||
import com.cool.store.vo.close.store.*;
|
||||
@@ -37,6 +39,7 @@ import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -65,6 +68,7 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
private final CloseStoreRefundInfoDAO closeStoreRefundInfoDAO;
|
||||
private final EnterpriseUserDAO enterpriseUserDAO;
|
||||
private final SysRoleService sysRoleService;
|
||||
private final DictService dictService;
|
||||
|
||||
@Value("${mybatis.configuration.variables.enterpriseId}")
|
||||
private String enterpriseId;
|
||||
@@ -116,9 +120,9 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
closeStoreInfoDO.setCloseStatus(CloseStoreStatusEnum.UNDER_APPROVAL.getCloseStoreStatus());
|
||||
closeStoreInfoDO.setApplyUserId(userId);
|
||||
closeStoreInfoDAO.insertSelective(closeStoreInfoDO);
|
||||
// 查询督导
|
||||
// 查询运营顾问
|
||||
List<String> auditUserIds = getAuditUserIds(regionDO.getId(), UserRoleEnum.SUPERVISION);
|
||||
closeStoreAuditRecordDAO.addRecord(closeStoreInfoDO.getId(), userId, userName, auditUserIds);
|
||||
closeStoreAuditRecordDAO.addRecord(closeStoreInfoDO.getId(), userId, userName, auditUserIds, DateUtils.addDays(new Date(), 7));
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
@@ -176,11 +180,15 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
auditRecordDO.setHandlerUserName(CurrentUserHolder.getUser().getName());
|
||||
auditRecordDO.setFinishTaskTime(new Date());
|
||||
closeStoreAuditRecordDAO.updateRecord(auditRecordDO);
|
||||
// 督导审批结束后为大区经理审批
|
||||
// 运营顾问审批结束后为运营片区总顾问
|
||||
if (CloseStoreStatusEnum.MANAGER_UNDER_APPROVAL.getCloseStoreStatus().equals(nextCloseStatus)) {
|
||||
// 新增大区老总审批
|
||||
// 新增运营片区总顾问审批
|
||||
List<String> auditUserIds = getAuditUserIds(closeStoreInfoDO.getRegionId(), UserRoleEnum.OPERATION_GENERAL_CONSULTANT);
|
||||
closeStoreAuditRecordDAO.addApproveRecord(closeStoreInfoDO.getId(), auditUserIds);
|
||||
closeStoreAuditRecordDAO.addApproveRecord(closeStoreInfoDO.getId(), auditUserIds, DateUtils.addDays(new Date(), 7));
|
||||
} else if (CloseStoreStatusEnum.OPERATION_VICE_PRESIDENT_APPROVAL.getCloseStoreStatus().equals(nextCloseStatus)) {
|
||||
// 新增运营副总裁审批
|
||||
List<String> auditUserIds = getAuditUserIds(closeStoreInfoDO.getRegionId(), UserRoleEnum.OPERATION_VICE_PRESIDENT);
|
||||
closeStoreAuditRecordDAO.addApproveRecord(closeStoreInfoDO.getId(), auditUserIds, DateUtils.addDays(new Date(), 14));
|
||||
} else {
|
||||
// 完成闭店,再进入闭店流程
|
||||
closeStoreFlowInit(closeStoreInfoDO, closeStoreInfoDO.getStoreId(), closeStoreInfoDO.getCloseReason());
|
||||
@@ -199,6 +207,14 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
throw new ServiceException(ErrorCodeEnum.CLOSE_STORE_INFO_NOT_EXIST);
|
||||
}
|
||||
closeStoreInfoDO.setCloseStatus(CloseStoreStatusEnum.REVIEW_NOT_APPROVED.getCloseStoreStatus());
|
||||
// 如果是未订货自动发起的话,更新闭店申请信息中的拒绝信息
|
||||
if (CloseTypeEnum.NO_ORDER_AUTO.getCloseType().equals(closeStoreInfoDO.getCloseType())) {
|
||||
if (StringUtils.isBlank(request.getRejectReason())) {
|
||||
throw new ServiceException(ErrorCodeEnum.ERROR_MESSAGE, "拒绝原因不能为空");
|
||||
}
|
||||
closeStoreInfoDO.setRejectReason(request.getRejectReason());
|
||||
closeStoreInfoDO.setRejectRemark(request.getRejectRemark());
|
||||
}
|
||||
closeStoreInfoDAO.updateSelective(closeStoreInfoDO);
|
||||
// 修改闭店审批信息
|
||||
auditRecordDO.setAuditStatus(CloseStoreAuditStatusEnum.REJECTED.getStatus());
|
||||
@@ -236,6 +252,27 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean suspendApply(Long closeStoreId) {
|
||||
CloseStoreInfoDO closeStoreInfoDO = closeStoreInfoDAO.getById(closeStoreId);
|
||||
if (Objects.isNull(closeStoreInfoDO)) {
|
||||
throw new ServiceException(ErrorCodeEnum.CLOSE_STORE_INFO_NOT_EXIST);
|
||||
}
|
||||
// 仅审批中能够取消
|
||||
if (!CloseStoreStatusEnum.isApprove(closeStoreInfoDO.getCloseStatus())) {
|
||||
throw new ServiceException(ErrorCodeEnum.CLOSE_STORE_ONLY_APPROVAL_ENABLE_SUSPEND);
|
||||
}
|
||||
// 修改闭店申请信息
|
||||
closeStoreInfoDO.setCloseStatus(CloseStoreStatusEnum.SUSPEND.getCloseStoreStatus());
|
||||
closeStoreInfoDAO.updateSelective(closeStoreInfoDO);
|
||||
// 删除待处理的审批记录
|
||||
closeStoreAuditRecordDAO.deletePendingRecord(closeStoreId);
|
||||
LoginUserInfo user = CurrentUserHolder.getUser();
|
||||
// 新增中止操作记录
|
||||
closeStoreAuditRecordDAO.addSuspendRecord(closeStoreId, user.getUserId(), user.getName());
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageInfo<CloseStoreInfoListVO> closeStoreAuditList(CloseStoreQueryRequest request) {
|
||||
closeStoreRecordQueryBefore(request);
|
||||
@@ -364,6 +401,7 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
vo.setAuditId(pendingAuditRecord.getId());
|
||||
}
|
||||
}
|
||||
dictService.fillDictField(vo);
|
||||
return vo;
|
||||
}
|
||||
|
||||
@@ -422,7 +460,7 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
@Override
|
||||
public List<CloseStoreStatusVO> getCloseStoreStatusList() {
|
||||
return Arrays.stream(CloseStoreStatusEnum.values())
|
||||
.filter(v -> v != CloseStoreStatusEnum.MANAGER_UNDER_APPROVAL)
|
||||
.filter(v -> v != CloseStoreStatusEnum.MANAGER_UNDER_APPROVAL && v != CloseStoreStatusEnum.OPERATION_VICE_PRESIDENT_APPROVAL)
|
||||
.map(v -> new CloseStoreStatusVO(v.getCloseStoreStatus(), v.getCloseStoreStatusName()))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
@@ -486,6 +524,14 @@ public class CloseStoreServiceImpl implements CloseStoreService {
|
||||
.id(stageInfoDO.getId())
|
||||
.shopSubStageStatus(openStageStatus.getShopSubStageStatus())
|
||||
.build();
|
||||
// 单独处理闭店资料待邮寄(7天)、闭店资料待审核(14天)、账号关闭(3天)
|
||||
if (CloseStoreSubStageStatusEnum.CLOSE_STORE_SUB_STAGE_STATUS_15.equals(openStageStatus)) {
|
||||
updateStageInfo.setPlanCompleteTime(LocalDate.now().plusDays(7).toString());
|
||||
} else if (CloseStoreSubStageStatusEnum.CLOSE_STORE_SUB_STAGE_STATUS_16.equals(openStageStatus)) {
|
||||
updateStageInfo.setPlanCompleteTime(LocalDate.now().plusDays(14).toString());
|
||||
} else if (CloseStoreSubStageStatusEnum.CLOSE_STORE_SUB_STAGE_STATUS_25.equals(openStageStatus)) {
|
||||
updateStageInfo.setPlanCompleteTime(LocalDate.now().plusDays(3).toString());
|
||||
}
|
||||
updateStageList.add(updateStageInfo);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user