|
|
@@ -135,6 +135,7 @@ public class StoreBusinessServiceImpl extends ServiceImpl<StoreInfoMapper, Store
|
|
|
/** 商户证照历史记录数据访问对象 */
|
|
|
private final StoreLicenseHistoryMapper licenseHistoryMapper;
|
|
|
|
|
|
+ private final EssentialHolidayComparisonMapper essentialHolidayComparisonMapper;
|
|
|
|
|
|
@Value("${spring.web.resources.excel-path}")
|
|
|
private String excelPath;
|
|
|
@@ -194,7 +195,14 @@ public class StoreBusinessServiceImpl extends ServiceImpl<StoreInfoMapper, Store
|
|
|
//门店标签
|
|
|
storeMainInfoVo.setStoreLabel(storeLabelMapper.selectOne(new LambdaQueryWrapper<StoreLabel>().eq(StoreLabel::getStoreId, id)));
|
|
|
//营业时间
|
|
|
- storeMainInfoVo.setStoreBusinessInfo(storeBusinessInfoMapper.selectList(new LambdaQueryWrapper<StoreBusinessInfo>().eq(StoreBusinessInfo::getStoreId, id)));
|
|
|
+ //storeMainInfoVo.setStoreBusinessInfo(storeBusinessInfoMapper.selectList(new LambdaQueryWrapper<StoreBusinessInfo>().eq(StoreBusinessInfo::getStoreId, id)));
|
|
|
+
|
|
|
+ //营业时间(通过 getStoreInfoBusinessHours 方法获取,包含节假日信息)
|
|
|
+ List<StoreBusinessInfoVo> storeBusinessInfoVos = this.getStoreInfoBusinessHoursNew(id);
|
|
|
+ // 设置包含节假日信息的营业时间列表
|
|
|
+ storeMainInfoVo.setStoreBusinessInfoVos(storeBusinessInfoVos);
|
|
|
+
|
|
|
+
|
|
|
//门店头像
|
|
|
LambdaQueryWrapper<StoreImg> eq = new LambdaQueryWrapper<StoreImg>().eq(StoreImg::getImgType, 10).eq(StoreImg::getStoreId, id);
|
|
|
StoreImg storeImg = storeImgMapper.selectOne(eq);
|
|
|
@@ -252,7 +260,14 @@ public class StoreBusinessServiceImpl extends ServiceImpl<StoreInfoMapper, Store
|
|
|
storeMainInfoVo.setStoreLabel(storeLabelMapper.selectOne(new LambdaQueryWrapper<StoreLabel>().eq(StoreLabel::getStoreId, id)));
|
|
|
//营业时间
|
|
|
List<StoreBusinessInfo> storeBusinessInfoList = storeBusinessInfoMapper.selectList(new LambdaQueryWrapper<StoreBusinessInfo>().eq(StoreBusinessInfo::getStoreId, id));
|
|
|
- storeMainInfoVo.setStoreBusinessInfo(storeBusinessInfoList);
|
|
|
+
|
|
|
+
|
|
|
+ //营业时间(通过 getStoreInfoBusinessHours 方法获取,包含节假日信息)
|
|
|
+ List<StoreBusinessInfoVo> storeBusinessInfoVos = this.getStoreInfoBusinessHoursNew(id);
|
|
|
+ // 设置包含节假日信息的营业时间列表
|
|
|
+ storeMainInfoVo.setStoreBusinessInfoVos(storeBusinessInfoVos);
|
|
|
+
|
|
|
+
|
|
|
//营业执照
|
|
|
storeMainInfoVo.setBusinessLicenseList(storeImgMapper.selectList(new LambdaQueryWrapper<StoreImg>().eq(StoreImg::getImgType, 14).eq(StoreImg::getStoreId, id)));
|
|
|
//合同照片
|
|
|
@@ -273,6 +288,50 @@ public class StoreBusinessServiceImpl extends ServiceImpl<StoreInfoMapper, Store
|
|
|
return storeBusinessInfoList;
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ public List<StoreBusinessInfoVo> getStoreInfoBusinessHoursNew(Integer id) {
|
|
|
+ // 查询营业时间(包含正常时间和特殊时间)
|
|
|
+ List<StoreBusinessInfo> storeBusinessInfoList = storeBusinessInfoMapper.selectList(
|
|
|
+ new LambdaQueryWrapper<StoreBusinessInfo>()
|
|
|
+ .eq(StoreBusinessInfo::getStoreId, id)
|
|
|
+ .eq(StoreBusinessInfo::getDeleteFlag, 0)
|
|
|
+ .orderByAsc(StoreBusinessInfo::getBusinessType) // 先按类型排序:1-正常时间,2-特殊时间
|
|
|
+ .orderByAsc(StoreBusinessInfo::getBusinessDate) // 再按日期排序
|
|
|
+ );
|
|
|
+
|
|
|
+ // 转换为 VO 并关联节假日信息
|
|
|
+ // store_business_info 的 essential_id 关联 essential_holiday_comparison 的 id
|
|
|
+ List<StoreBusinessInfoVo> resultList = new ArrayList<>();
|
|
|
+ for (StoreBusinessInfo businessInfo : storeBusinessInfoList) {
|
|
|
+ StoreBusinessInfoVo vo = new StoreBusinessInfoVo();
|
|
|
+ // 复制基本信息
|
|
|
+ BeanUtils.copyProperties(businessInfo, vo);
|
|
|
+
|
|
|
+ // 如果有关联的节假日ID(essential_id),查询 essential_holiday_comparison 表的节假日信息
|
|
|
+ if (businessInfo.getEssentialId() != null && !businessInfo.getEssentialId().trim().isEmpty()) {
|
|
|
+ Integer essentialId = null;
|
|
|
+ try {
|
|
|
+ essentialId = Integer.parseInt(businessInfo.getEssentialId().trim());
|
|
|
+ EssentialHolidayComparison holiday = essentialHolidayComparisonMapper.selectById(essentialId);
|
|
|
+ if (holiday != null) {
|
|
|
+ vo.setHolidayInfo(holiday);
|
|
|
+ } else {
|
|
|
+ log.warn("门店营业时间关联的节假日信息不存在,storeId=" + id + ", essentialId=" + essentialId);
|
|
|
+ }
|
|
|
+ } catch (NumberFormatException e) {
|
|
|
+ log.warn("门店营业时间关联的节假日ID格式错误,storeId=" + id + ", essentialId=" + businessInfo.getEssentialId());
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.error("查询节假日信息失败,storeId=" + id + ", essentialId=" + businessInfo.getEssentialId(), e);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ resultList.add(vo);
|
|
|
+ }
|
|
|
+
|
|
|
+ return resultList;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 门店信息-修改后展示
|
|
|
*
|
|
|
@@ -285,7 +344,13 @@ public class StoreBusinessServiceImpl extends ServiceImpl<StoreInfoMapper, Store
|
|
|
//门店标签
|
|
|
storeMainInfoVo.setStoreLabel(storeLabelMapper.selectOne(new LambdaQueryWrapper<StoreLabel>().eq(StoreLabel::getStoreId, id)));
|
|
|
//营业时间
|
|
|
- storeMainInfoVo.setStoreBusinessInfo(storeBusinessInfoMapper.selectList(new LambdaQueryWrapper<StoreBusinessInfo>().eq(StoreBusinessInfo::getStoreId, id)));
|
|
|
+ //storeMainInfoVo.setStoreBusinessInfo(storeBusinessInfoMapper.selectList(new LambdaQueryWrapper<StoreBusinessInfo>().eq(StoreBusinessInfo::getStoreId, id)));
|
|
|
+
|
|
|
+ //营业时间(通过 getStoreInfoBusinessHours 方法获取,包含节假日信息)
|
|
|
+ List<StoreBusinessInfoVo> storeBusinessInfoVos = this.getStoreInfoBusinessHoursNew(id);
|
|
|
+ // 设置包含节假日信息的营业时间列表
|
|
|
+ storeMainInfoVo.setStoreBusinessInfoVos(storeBusinessInfoVos);
|
|
|
+
|
|
|
return storeMainInfoVo;
|
|
|
}
|
|
|
|