Merge #56 into master from cc_20260121_store_type
feat:PC 心愿单
* cc_20260121_store_type: (100 commits squashed)
- 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
- Merge branch 'master' into cc_20260121_store_type
# Conflicts:
#	coolstore-partner-model/src/main/java/com/cool/store/request/JoinIntentionRequest.java
#	coolstore-partner-model/src/main/java/com/cool/store/vo/fees/PayeeBankConfigVO.java
#	coolstore-partner-service/src/main/java/com/cool/store/service/fees/impl/PayeeBankConfigServiceImpl.java
#	coolstore-partner-service/src/main/java/com/cool/store/service/fees/impl/ShopAllocationInfoServiceImpl.java
- feat:PC 心愿单
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/56
This commit is contained in:
@@ -1,11 +1,13 @@
|
||||
package com.cool.store.dao.order;
|
||||
|
||||
import com.cool.store.entity.ShopInfoDO;
|
||||
import com.cool.store.entity.order.StoreWishlistDO;
|
||||
import com.cool.store.mapper.order.StoreWishlistMapper;
|
||||
import com.cool.store.vo.order.MiniStoreWishlistListVO;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.stereotype.Repository;
|
||||
import tk.mybatis.mapper.entity.Example;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
@@ -50,4 +52,15 @@ public class StoreWishlistDAO {
|
||||
}
|
||||
return mapper.listByLineId(lineId, storeTypeId);
|
||||
}
|
||||
|
||||
public List<MiniStoreWishlistListVO> listByVersionList(List<String> versionNoList) {
|
||||
if (CollectionUtils.isEmpty(versionNoList)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
return mapper.listByVersionList(versionNoList);
|
||||
}
|
||||
|
||||
public List<String> getDistinctVersion(String mobile){
|
||||
return mapper.versionNoList(mobile);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -23,4 +23,9 @@ public interface StoreWishlistMapper extends Mapper<StoreWishlistDO> {
|
||||
|
||||
List<MiniStoreWishlistListVO> listByLineId(@Param("lineId") Long lineId,
|
||||
@Param("storeTypeId") Long storeTypeId);
|
||||
|
||||
|
||||
List<MiniStoreWishlistListVO> listByVersionList(@Param("versionNoList") List<String> versionNoList);
|
||||
|
||||
List<String> versionNoList(String mobile);
|
||||
}
|
||||
|
||||
@@ -60,4 +60,41 @@
|
||||
ORDER BY w.create_time DESC
|
||||
</select>
|
||||
|
||||
<select id="listByVersionList" resultType="com.cool.store.vo.order.MiniStoreWishlistListVO">
|
||||
SELECT
|
||||
w.store_type_id AS storeTypeId,
|
||||
w.line_id as lineId,
|
||||
st.brand AS brand,
|
||||
st.store_type_name AS storeTypeName,
|
||||
st.store_type AS storeType,
|
||||
st.image_url AS imageUrl,
|
||||
MIN(w.create_time) AS createTime,
|
||||
MAX(w.total_amount) AS totalAmount,
|
||||
w.version_no AS versionNo
|
||||
FROM zxjp_store_wishlist w
|
||||
LEFT JOIN zxjp_store_type st ON st.id = w.store_type_id
|
||||
WHERE w.deleted = 0
|
||||
<if test="versionNoList != null and versionNoList.size>0">
|
||||
and
|
||||
<foreach collection="versionNoList" item="versionNo" separator="," open="w.version_no in (" close=")">
|
||||
#{versionNo}
|
||||
</foreach>
|
||||
</if>
|
||||
GROUP BY w.version_no
|
||||
ORDER BY w.create_time DESC
|
||||
</select>
|
||||
|
||||
<select id="versionNoList" resultType="java.lang.String">
|
||||
SELECT DISTINCT version_no
|
||||
FROM zxjp_store_wishlist
|
||||
<if test="mobile!=null and mobile !=''">
|
||||
a left join xfsg_line_info b on a.line_id = b.id
|
||||
</if>
|
||||
WHERE deleted = 0
|
||||
<if test="mobile!=null and mobile !=''">
|
||||
and nobile = #{mobile}
|
||||
</if>
|
||||
ORDER BY version_no desc
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -127,7 +127,7 @@ public class JoinIntentionRequest {
|
||||
|
||||
@ApiModelProperty
|
||||
private Integer useStandardStore = 0;
|
||||
|
||||
|
||||
|
||||
public LineInfoDO toLineInfoDO() {
|
||||
LineInfoDO lineInfoDO = new LineInfoDO();
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.cool.store.request.order;
|
||||
|
||||
import com.cool.store.common.PageBasicInfo;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @Auther zx_szh
|
||||
* @Date 2026/3/11 16:45
|
||||
* @Version 1.0
|
||||
*/
|
||||
@Data
|
||||
public class WishAllListRequest extends PageBasicInfo {
|
||||
|
||||
private String mobile;
|
||||
|
||||
|
||||
}
|
||||
@@ -15,6 +15,8 @@ public class MiniStoreWishlistListVO {
|
||||
@ApiModelProperty("店型ID")
|
||||
private Long storeTypeId;
|
||||
|
||||
private Long lineId;
|
||||
|
||||
@ApiModelProperty("品牌")
|
||||
private String brand;
|
||||
|
||||
|
||||
@@ -54,4 +54,6 @@ public interface MiniStoreOrderService {
|
||||
|
||||
List<MiniStoreWishlistListVO> wishlistList(PartnerUserInfoVO userInfoVO);
|
||||
|
||||
List<MiniStoreWishlistListVO> wishAllList(WishAllListRequest request);
|
||||
|
||||
}
|
||||
|
||||
@@ -1485,6 +1485,43 @@ public class MiniStoreOrderServiceImpl implements MiniStoreOrderService {
|
||||
return wishlist;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<MiniStoreWishlistListVO> wishAllList(WishAllListRequest request) {
|
||||
PageHelper.startPage(request.getPageNum(),request.getPageSize());
|
||||
List<String> distinctVersion = storeWishlistDAO.getDistinctVersion(request.getMobile());
|
||||
List<MiniStoreWishlistListVO> wishlist = storeWishlistDAO.listByVersionList(distinctVersion);
|
||||
for (MiniStoreWishlistListVO item : wishlist) {
|
||||
List<StoreWishlistDO> rows = storeWishlistDAO.listByLineIdAndStoreTypeAndVersion(item.getLineId(), item.getStoreTypeId(), item.getVersionNo());
|
||||
if (CollectionUtils.isEmpty(rows)) {
|
||||
item.setOptions(Collections.emptyList());
|
||||
continue;
|
||||
}
|
||||
|
||||
List<Long> optionIds = rows.stream().map(StoreWishlistDO::getOptionId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
|
||||
Map<Long, ConfigOptionDO> optionMap = new HashMap<>();
|
||||
if (CollectionUtils.isNotEmpty(optionIds)) {
|
||||
List<ConfigOptionDO> options = configOptionDAO.listActiveByIds(optionIds);
|
||||
optionMap = options.stream().collect(Collectors.toMap(ConfigOptionDO::getId, Function.identity(), (a, b) -> a));
|
||||
}
|
||||
|
||||
List<MiniStoreWishlistListVO.OptionVO> optionList = new ArrayList<>();
|
||||
for (StoreWishlistDO row : rows) {
|
||||
MiniStoreWishlistListVO.OptionVO vo = new MiniStoreWishlistListVO.OptionVO();
|
||||
vo.setOptionId(row.getOptionId());
|
||||
vo.setQuantity(row.getQuantity());
|
||||
ConfigOptionDO cfg = optionMap.get(row.getOptionId());
|
||||
if (cfg != null) {
|
||||
vo.setOptionName(cfg.getOptionName());
|
||||
vo.setOptionPrice(cfg.getOptionPrice());
|
||||
vo.setImageUrl(cfg.getImageUrl());
|
||||
}
|
||||
optionList.add(vo);
|
||||
}
|
||||
item.setOptions(optionList);
|
||||
}
|
||||
return wishlist;
|
||||
}
|
||||
|
||||
|
||||
private BigDecimal safe(BigDecimal v) {
|
||||
return v == null ? BigDecimal.ZERO : v;
|
||||
|
||||
@@ -1,15 +1,17 @@
|
||||
package com.cool.store.controller.webb;
|
||||
|
||||
import com.cool.store.context.CurrentUserHolder;
|
||||
import com.cool.store.context.PartnerUserHolder;
|
||||
import com.cool.store.request.order.OrderAuditRecordRequest;
|
||||
import com.cool.store.request.order.PCStoreOrderOptionQuantityUpdateRequest;
|
||||
import com.cool.store.request.order.PCStoreOrderQueryRequest;
|
||||
import com.cool.store.request.order.WishAllListRequest;
|
||||
import com.cool.store.response.ResponseResult;
|
||||
import com.cool.store.service.order.MiniStoreOrderService;
|
||||
import com.cool.store.vo.order.MiniStoreOrderDetailVO;
|
||||
import com.cool.store.vo.order.PCStoreOrderListVO;
|
||||
import com.cool.store.vo.order.*;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import com.cool.store.vo.order.WalletPayVO;
|
||||
|
||||
import com.github.pagehelper.PageInfo;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
@@ -74,4 +76,17 @@ public class StoreOrderController {
|
||||
return ResponseResult.success(miniStoreOrderService.batchUpdateOptionQuantity(request));
|
||||
}
|
||||
|
||||
@ApiOperation("心愿单详情")
|
||||
@GetMapping("/wishlist/detail")
|
||||
public ResponseResult<MiniStoreWishlistDetailVO> wishlistDetail(@RequestParam("storeTypeId") Long storeTypeId,
|
||||
@RequestParam("versionNo") String versionNo) {
|
||||
return ResponseResult.success(miniStoreOrderService.wishlistDetail(storeTypeId,versionNo, PartnerUserHolder.getUser()));
|
||||
}
|
||||
|
||||
@ApiOperation("PC心愿单列表")
|
||||
@PostMapping("/wishlist/queryPage")
|
||||
public ResponseResult<List<MiniStoreWishlistListVO>> wishAllList(@RequestBody @Valid WishAllListRequest request) {
|
||||
return ResponseResult.success(miniStoreOrderService.wishAllList( request));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -113,4 +113,5 @@ public class MiniStoreOrderController {
|
||||
public ResponseResult<List<MiniStoreWishlistListVO>> wishlistList() {
|
||||
return ResponseResult.success(miniStoreOrderService.wishlistList( PartnerUserHolder.getUser()));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user