## 188商品分享码接口;188商品列表;

This commit is contained in:
cabbage 2025-07-21 10:17:15 +08:00
parent 47bd35fa6f
commit 343e216ecb
64 changed files with 380 additions and 789 deletions

View File

@ -6,11 +6,7 @@ import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Description: 嗨粉直推奖励配置
* @Author: sui q
* @Time: 2022/11/14 16:31
* @Classname: BonusHiPinkDTO
* @PackageName: com.hzs.system.config.dto
* 嗨粉直推奖励配置
*/
@Data
public class BonusHiPinkDTO implements Serializable {

View File

@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R;
import com.hzs.third.share.dto.ShareServiceDTO;
/**
* @Description: 分享码服务
* @Author: jiang chao
* @Time: 2023/3/15 11:31
* @Classname: IShareServiceApi
* @PackageName: com.hzs.third.share
* 分享码服务
*/
public interface IShareServiceApi {

View File

@ -9,11 +9,7 @@ import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Description: 分享码DTO
* @Author: jiang chao
* @Time: 2023/3/15 18:19
* @Classname: ShareServiceParam
* @PackageName: com.hzs.third.share.dto
* 分享码DTO
*/
@AllArgsConstructor
@NoArgsConstructor

View File

@ -177,7 +177,7 @@ public class BonusGrantServiceImpl implements IBonusGrantService {
List<CuMemberTrade> cuMemberTradeList = new ArrayList<>();
cuMemberBonusList.forEach(cuMemberBonus -> {
CurrencyDTO currencyDTO = iCurrencyServiceApi.getCurrency(cuMemberBonus.getPkCountry()).getData();
// 奖金币首购+复购+云代+海粉+嗨粉+店铺
// 奖金币首购+复购+店铺
packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.BONUS.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRealIncomeTotal(), currencyDTO.getOutExchangeRate()), settleDate);
// 重销币商城重消+平台服务费
// BigDecimal repeat = ComputeUtil.computeAdd(cuMemberBonus.getBackPoints(), cuMemberBonus.getServiceSpend());
@ -239,7 +239,7 @@ public class BonusGrantServiceImpl implements IBonusGrantService {
List<CuMemberTrade> cuMemberTradeList = new ArrayList<>();
cuMemberBonusList.forEach(cuMemberBonus -> {
CurrencyDTO currencyDTO = iCurrencyServiceApi.getCurrency(cuMemberBonus.getPkCountry()).getData();
// 奖金币首购+复购+云代+海粉+嗨粉+店铺
// 奖金币首购+复购+店铺
packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.BONUS.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRealIncomeTotal(), currencyDTO.getOutExchangeRate()), settleDate);
// 重销币商城重消+平台服务费
// BigDecimal repeat = ComputeUtil.computeAdd(cuMemberBonus.getBackPoints(), cuMemberBonus.getServiceSpend());

View File

@ -451,7 +451,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle {
if (bdGrade.getFirstCalculate() != null && EYesNo.NO.getIntValue() == bdGrade.getFirstCalculate()) {
continue;
}
// 嗨粉海粉没有量奖
// 没有量奖
if (EPlaceDept.LEFT_DEPT.getValue() == cuMemberSettleExt.getPlaceDept()) {
// 左区
// K值设置

View File

@ -390,7 +390,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
memberBonusDetailVOList.add(memberBonusDetailVO);
});
} else {
// 其他收益 服务补贴分红收益嗨粉直推
// 其他收益 服务补贴分红收益
// 拓展收益复购拓展收益
List<CuMemberBonusDetailExt> cuMemberBonusDetailList = cuMemberBonusDetailMapper.queryMemberBonusDetailByBonusItems(bonusParam);
dataTable = getDataTable(cuMemberBonusDetailList);
@ -422,7 +422,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
List<MemberBonusDetailVO> memberBonusDetailVOList = new ArrayList<>();
BdBonusItems bonusItems = iBonusItemsServiceApi.queryBonusItemsByBonusValue(bonusParam.getPkCountry(), bonusParam.getBonusValue()).getData();
bonusParam.setPkBonusItems(bonusItems.getPkId());
// 其他收益 服务补贴分红收益嗨粉直推
// 其他收益 服务补贴分红收益
// 拓展收益复购拓展收益
List<CuMemberBonusDetailExt> cuMemberBonusDetailList = cuMemberBonusDetailMapper.queryMemberBonusDetailByBonusItems(bonusParam);
CurrencyDTO currency = iCurrencyServiceApi.getCurrency(bonusParam.getPkCountry()).getData();
@ -500,7 +500,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
memberBonusDetailSerVoS.add(memberBonusDetailVO);
});
} else {
// 其他收益 服务补贴分红收益嗨粉直推
// 其他收益 服务补贴分红收益
List<CuMemberBonusDetailExt> cuMemberBonusDetailList = cuMemberBonusDetailMapper.queryMemberBonusDetailByBonusItemsForServer(bonusParam);
dataTable = getDataTable(cuMemberBonusDetailList);
cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> {

View File

@ -106,11 +106,6 @@ public class BonusPubVO implements Serializable {
@Excel(name = "店铺收益", scale = 2)
private BigDecimal storeIncomeOri;
/**
* 嗨粉推荐收益
*/
private BigDecimal hiFunIncomeOri;
/**
* 首购实发小计
*/
@ -236,11 +231,6 @@ public class BonusPubVO implements Serializable {
@Excel(name = "店铺收益($)", scale = 2)
private BigDecimal storeIncome;
/**
* 嗨粉推荐收益
*/
private BigDecimal hiFunIncome;
/**
* 首购实发小计
*/

View File

@ -134,12 +134,6 @@ public class BonusTotalVO implements Serializable {
@Excel(name = "店铺收益", scale = 2)
private BigDecimal storeIncomeOri;
/**
* 嗨粉推荐收益
*/
@Excel(name = "嗨粉推荐收益", scale = 2)
private BigDecimal hiFunIncomeOri;
/**
* 首购实发小计
*/
@ -267,12 +261,6 @@ public class BonusTotalVO implements Serializable {
@Excel(name = "店铺收益($)", scale = 2)
private BigDecimal storeIncome;
/**
* 嗨粉推荐收益
*/
@Excel(name = "嗨粉推荐收益($)", scale = 2)
private BigDecimal hiFunIncome;
/**
* 首购实发小计
*/

View File

@ -293,16 +293,6 @@ public class CuMemberBonusVO implements Serializable {
*/
private BigDecimal storeIncome;
/**
* 嗨粉推荐收益
*/
private BigDecimal hiFunIncomeOri;
/**
* 嗨粉推荐收益
*/
private BigDecimal hiFunIncome;
/**
* 首购实发小计
*/

View File

@ -8,12 +8,7 @@ import lombok.NoArgsConstructor;
import java.math.BigDecimal;
/**
* @description: 会员端海粉收益
* @author: sui q
* @time: 2023/4/28 10:36
* @classname: MemberBonusPurchaseVO
* @package_name: com.hzs.member.bonus.vo
* version 1.0.0
* 会员端海粉收益
*/
@Data
@Builder

View File

@ -8,12 +8,7 @@ import lombok.NoArgsConstructor;
import java.math.BigDecimal;
/**
* @description: 会员端嗨粉收益
* @author: sui q
* @time: 2023/4/28 10:36
* @classname: MemberBonusPurchaseVO
* @package_name: com.hzs.member.bonus.vo
* version 1.0.0
* 会员端嗨粉收益
*/
@Data
@Builder

View File

@ -9,11 +9,7 @@ import java.util.Date;
import java.util.List;
/**
* @Description: 后台查询会员的统一入口参数
* @Author: sui q
* @Time: 2022/10/13 9:41
* @Classname: QueryMemberParam
* @PackageName: com.hzs.member.param
* 后台查询会员的统一入口参数
*/
@Data
public class MemberParam implements Serializable {
@ -31,11 +27,11 @@ public class MemberParam implements Serializable {
private String memberName;
/**
* 用户类型分类0=正常正常 空单 嗨粉 1=死点死点
* 用户类型分类0=正常正常 空单 1=死点死点
*/
private Integer category;
/**
* 会员类型0.正常 1.空单 2.死点 4.嗨粉 5.商城小程序游客
* 会员类型0.正常 1.空单 2.死点 5.商城小程序游客
*/
private Integer customerType;

View File

@ -15,12 +15,7 @@ import java.util.Date;
import java.util.List;
/**
* <p>
* 会员交易明细
* </p>
*
* @author hzs
* @since 2022-09-06
*/
@EqualsAndHashCode(callSuper = true)
@Data
@ -56,7 +51,7 @@ public class CuMemberTradeDetailVO extends CuMemberBaseVO {
private String pkAccountVal;
/**
* 交易类型: (101: 注册订单,102: 升级订单,103: 复购订单,104: 圣宝云代注册,105: 圣宝云代升级,106: 圣宝云代复购,107: 嗨粉订单,108: 提货订单,109: 礼包订单,110: 消费订单,111: 兑换订单,200: 提现,201: 提现充正,300: 转账,400: 后台充值,401: 线上充值,500: 收益发放,600: 撤单返钱,601: 返还本金)
* 交易类型: (101: 注册订单,102: 升级订单,103: 复购订单,108: 提货订单,109: 礼包订单,110: 消费订单,111: 兑换订单,200: 提现,201: 提现充正,300: 转账,400: 后台充值,401: 线上充值,500: 收益发放,600: 撤单返钱,601: 返还本金)
*/
@Transaction(transactionKey = EnumsPrefixConstants.TRADE_TYPE)
private Integer tradeType;

View File

@ -13,12 +13,7 @@ import java.util.Date;
import java.util.List;
/**
* <p>
* 会员交易明细
* </p>
*
* @author hzs
* @since 2022-09-06
*/
@EqualsAndHashCode(callSuper = true)
@Data
@ -42,7 +37,7 @@ public class CuMemberTradeVO extends CuMemberBaseVO {
private String pkAccountVal;
/**
* 交易类型: (101: 注册订单,102: 升级订单,103: 复购订单,104: 圣宝云代注册,105: 圣宝云代升级,106: 圣宝云代复购,107: 嗨粉订单,108: 提货订单,109: 礼包订单,110: 消费订单,111: 兑换订单,200: 提现,201: 提现充正,300: 转账,400: 后台充值,401: 线上充值,500: 收益发放,600: 撤单返钱,601: 返还本金)
* 交易类型: (101: 注册订单,102: 升级订单,103: 复购订单,108: 提货订单,109: 礼包订单,110: 消费订单,111: 兑换订单,200: 提现,201: 提现充正,300: 转账,400: 后台充值,401: 线上充值,500: 收益发放,600: 撤单返钱,601: 返还本金)
*/
@Transaction(transactionKey = EnumsPrefixConstants.TRADE_TYPE)
private Integer tradeType;

View File

@ -1509,8 +1509,6 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl<CuMemberAchieveMappe
recommendDataBaseVO.setFirstAchieve(recommendDataBaseVO.getFirstAchieve().subtract(getBigDecimal(startRe.getFirstAchieve())));
recommendDataBaseVO.setRepeatAmount(recommendDataBaseVO.getRepeatAmount().subtract(getBigDecimal(startRe.getRepeatAmount())));
recommendDataBaseVO.setRepeatAchieve(recommendDataBaseVO.getRepeatAchieve().subtract(getBigDecimal(startRe.getRepeatAchieve())));
recommendDataBaseVO.setHiFunAmount(recommendDataBaseVO.getHiFunAmount().subtract(getBigDecimal(startRe.getHiFunAmount())));
recommendDataBaseVO.setHiFunAchieve(recommendDataBaseVO.getHiFunAchieve().subtract(getBigDecimal(startRe.getHiFunAchieve())));
}
}
}
@ -1608,8 +1606,6 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl<CuMemberAchieveMappe
BigDecimal firstAchieve = recommendDataBaseVO.getFirstAchieve();
BigDecimal repeatAmount = recommendDataBaseVO.getRepeatAmount();
BigDecimal repeatAchieve = recommendDataBaseVO.getRepeatAchieve();
BigDecimal hiFunAmount = recommendDataBaseVO.getHiFunAmount();
BigDecimal hiFunAchieve = recommendDataBaseVO.getHiFunAchieve();
Long pkVertex = recommendDataBaseVO.getPkVertex();
//汇率
@ -1630,15 +1626,12 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl<CuMemberAchieveMappe
firstAchieve = firstAchieve.add(dataVO.getFirstAchieve());
repeatAmount = repeatAmount.add(dataVO.getRepeatAmount());
repeatAchieve = repeatAchieve.add(dataVO.getRepeatAchieve());
hiFunAmount = hiFunAmount.add(dataVO.getHiFunAmount());
hiFunAchieve = hiFunAchieve.add(dataVO.getHiFunAchieve());
}
}
return RecommendDataDetailVO.builder()
.realAmount(realAmount).realAchieve(realAchieve)
.firstAmount(firstAmount).firstAchieve(firstAchieve)
.repeatAmount(repeatAmount).repeatAchieve(repeatAchieve)
.hiFunAmount(hiFunAmount).hiFunAchieve(hiFunAchieve)
.systemRatio(getSystemRatio(param, realAchieve, pkVertex, vertexMap))
.marketRatio(getMarketRatio(param, realAchieve, marketVO))
.dataType(dataType)
@ -1649,8 +1642,6 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl<CuMemberAchieveMappe
.settleFirstAchieve(getSettleValue(currency, firstAchieve))
.settleRepeatAmount(getSettleValue(currency, repeatAmount))
.settleRepeatAchieve(getSettleValue(currency, repeatAchieve))
.settleHiFunAmount(getSettleValue(currency, hiFunAmount))
.settleHiFunAchieve(getSettleValue(currency, hiFunAchieve))
.settleSystemRatio(getSystemRatio(param, getSettleValue(currency, realAchieve), pkVertex, vertexMap))
.settleMarketRatio(getMarketRatio(param, getSettleValue(currency, realAchieve), marketVO))
.build();

View File

@ -255,7 +255,7 @@ public class CuMemberVO implements Serializable {
/**
* 用户类型分类0=正常正常 空单 嗨粉 1=死点死点 ECategory
* 用户类型分类0=正常正常 空单 1=死点死点 ECategory
*/
@Transaction(transactionKey = EnumsPrefixConstants.ENU_CAT)
private Integer category;
@ -264,7 +264,7 @@ public class CuMemberVO implements Serializable {
/**
* 会员类型0.正常 1.空单 2.死点 4.嗨粉 5.商城小程序游客
* 会员类型0.正常 1.空单 2.死点 5.商城小程序游客
*/
@Transaction(transactionKey = EnumsPrefixConstants.CUSTOMER_TYPE)
private Integer customerType;

View File

@ -11,9 +11,6 @@ import java.util.Date;
/**
* 会员真实信息VO
*
* @author hzs
* @since 2022-08-04
*/
@Data
public class MemberRealInfoVO {
@ -37,11 +34,11 @@ public class MemberRealInfoVO {
private String memberName;
/**
* 会员类型分类0=正常正常 空单 嗨粉 1=死点死点
* 会员类型分类0=正常正常 空单 1=死点死点
*/
private Integer category;
/**
* 会员类型0.正常 1.空单 2.死点 4.嗨粉 5.商城小程序游客
* 会员类型0.正常 1.空单 2.死点 5.商城小程序游客
*/
private Integer customerType;
@ -137,7 +134,6 @@ public class MemberRealInfoVO {
private Integer pkMaxAwards;
/**
* 消费金额
*/

View File

@ -1,17 +1,12 @@
package com.hzs.member.param;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @Description: 后台查询会员的统一入口参数
* @Classname: QueryMemberParam
* @PackageName: com.hzs.member.param
* 后台查询会员的统一入口参数
*/
@Data
public class MemberParam implements Serializable {
@ -29,11 +24,11 @@ public class MemberParam implements Serializable {
private String memberName;
/**
* 用户类型分类0=正常正常 空单 嗨粉 1=死点死点
* 用户类型分类0=正常正常 空单 1=死点死点
*/
private Integer category;
/**
* 会员类型0.正常 1.空单 2.死点 4.嗨粉 5.商城小程序游客
* 会员类型0.正常 1.空单 2.死点 5.商城小程序游客
*/
private Integer customerType;

View File

@ -41,7 +41,7 @@ public class OrderParam implements Serializable {
private String memberName;
/**
* 会员类型0.正常 1.空单 2.死点 4.嗨粉 5.商城小程序游客
* 会员类型0.正常 1.空单 2.死点 5.商城小程序游客
*/
private Integer customerType;

View File

@ -27,12 +27,6 @@ import java.util.Map;
/**
* 结算中心
*
* @Description:
* @Author: ljc
* @Time: 2023/5/24 16:52
* @Classname: SettleCenterController
* @Package_name: com.hzs.member.settlecenter.controller.manage
*/
@RestController
@RequestMapping("/manager/center")
@ -54,7 +48,7 @@ public class SettleCenterController extends BaseController {
* @return TableDataInfo
*/
@AccessPermissions("placement")
@PostMapping("show-place")
@PostMapping("/show-place")
public TableDataInfo showPlace(@RequestBody PlacementDataParam param) {
List<PlacementDataVO> placementDataVOList = new ArrayList<>();
Integer pkSettleCountry = param.getPkSettleCountry();
@ -81,7 +75,7 @@ public class SettleCenterController extends BaseController {
* @return TableDataInfo
*/
@AccessPermissions("recommendData")
@PostMapping("show-recommend")
@PostMapping("/show-recommend")
public TableDataInfo showRecommend(@RequestBody PlacementDataParam param) {
List<PlacementDataVO> placementDataVOList = new ArrayList<>();
Integer pkSettleCountry = param.getPkSettleCountry();
@ -323,8 +317,6 @@ public class SettleCenterController extends BaseController {
exportDataVO.setFirstAchieve(detailVO.getFirstAchieve());
exportDataVO.setRepeatAmount(detailVO.getRepeatAmount());
exportDataVO.setRepeatAchieve(detailVO.getRepeatAchieve());
exportDataVO.setHiFunAmount(detailVO.getHiFunAmount());
exportDataVO.setHiFunAchieve(detailVO.getHiFunAchieve());
exportDataVO.setSystemRatio(detailVO.getSystemRatio());
exportDataVO.setMarketRatio(detailVO.getMarketRatio());
@ -334,8 +326,6 @@ public class SettleCenterController extends BaseController {
exportDataVO.setSettleFirstAchieve(detailVO.getSettleFirstAchieve());
exportDataVO.setSettleRepeatAmount(detailVO.getSettleRepeatAmount());
exportDataVO.setSettleRepeatAchieve(detailVO.getSettleRepeatAchieve());
exportDataVO.setSettleHiFunAmount(detailVO.getSettleHiFunAmount());
exportDataVO.setSettleHiFunAchieve(detailVO.getSettleHiFunAchieve());
exportDataVO.setSettleSystemRatio(detailVO.getSettleSystemRatio());
exportDataVO.setSettleMarketRatio(detailVO.getSettleMarketRatio());
return exportDataVO;
@ -356,8 +346,6 @@ public class SettleCenterController extends BaseController {
exportDataVO.setReplyFirstAchieve(detailVO.getFirstAchieve());
exportDataVO.setReplyRepeatAmount(detailVO.getRepeatAmount());
exportDataVO.setReplyRepeatAchieve(detailVO.getRepeatAchieve());
exportDataVO.setReplyHiFunAmount(detailVO.getHiFunAmount());
exportDataVO.setReplyHiFunAchieve(detailVO.getHiFunAchieve());
exportDataVO.setReplySystemRatio(detailVO.getSystemRatio());
exportDataVO.setReplyMarketRatio(detailVO.getMarketRatio());
@ -367,8 +355,6 @@ public class SettleCenterController extends BaseController {
exportDataVO.setReplySettleFirstAchieve(detailVO.getSettleFirstAchieve());
exportDataVO.setReplySettleRepeatAmount(detailVO.getSettleRepeatAmount());
exportDataVO.setReplySettleRepeatAchieve(detailVO.getSettleRepeatAchieve());
exportDataVO.setReplySettleHiFunAmount(detailVO.getSettleHiFunAmount());
exportDataVO.setReplySettleHiFunAchieve(detailVO.getSettleHiFunAchieve());
exportDataVO.setReplySettleSystemRatio(detailVO.getSettleSystemRatio());
exportDataVO.setReplySettleMarketRatio(detailVO.getSettleMarketRatio());
return exportDataVO;

View File

@ -13,12 +13,6 @@ import java.util.Date;
/**
* 推荐数据数据查询VO
*
* @Description:
* @Author: ljc
* @Time: 2023/5/30 16:38
* @Classname: PlacementDataBaseVO
* @Package_name: com.hzs.member.settlecenter.vo
*/
@Data
@Builder
@ -99,19 +93,6 @@ public class RecommendDataBaseVO implements Serializable {
@BigDecimalFormat()
private BigDecimal repeatAchieve;
/**
* 嗨粉金额
*/
@BigDecimalFormat()
private BigDecimal hiFunAmount;
/**
* 嗨粉业绩
*/
@BigDecimalFormat()
private BigDecimal hiFunAchieve;
/**
* 体系占比
*/

View File

@ -13,12 +13,6 @@ import java.math.BigDecimal;
/**
* 推荐数据详情
*
* @Description:
* @Author: ljc
* @Time: 2023/6/1 17:33
* @Classname: RecommendDataDetailVO
* @Package_name: com.hzs.member.settlecenter.vo
*/
@Data
@Builder
@ -66,19 +60,6 @@ public class RecommendDataDetailVO implements Serializable {
@BigDecimalFormat()
private BigDecimal repeatAchieve;
/**
* 嗨粉金额
*/
@BigDecimalFormat()
private BigDecimal hiFunAmount;
/**
* 嗨粉业绩
*/
@BigDecimalFormat()
private BigDecimal hiFunAchieve;
/**
* 体系占比
*/
@ -133,19 +114,6 @@ public class RecommendDataDetailVO implements Serializable {
@BigDecimalFormat()
private BigDecimal settleRepeatAchieve;
/**
* 嗨粉金额本币
*/
@BigDecimalFormat()
private BigDecimal settleHiFunAmount;
/**
* 嗨粉业绩本币
*/
@BigDecimalFormat()
private BigDecimal settleHiFunAchieve;
/**
* 体系占比本币
*/

View File

@ -2,8 +2,6 @@ package com.hzs.member.settlecenter.vo;
import com.hzs.common.core.annotation.BigDecimalFormat;
import com.hzs.common.core.annotation.Excel;
import com.hzs.common.core.annotation.Transaction;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
@ -12,13 +10,6 @@ import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Description:
* @Author: ljc
* @Time: 2023/6/3 15:05
* @Classname: RecommendExportDataVO
* @Package_name: com.hzs.member.settlecenter.vo
*/
@Data
@Builder
@AllArgsConstructor
@ -113,21 +104,6 @@ public class RecommendExportDataVO implements Serializable {
@Excel(name = "复购业绩($)", scale = 2)
private BigDecimal repeatAchieve;
/**
* 嗨粉金额
*/
@BigDecimalFormat()
@Excel(name = "嗨粉金额($)", scale = 2)
private BigDecimal hiFunAmount;
/**
* 嗨粉业绩
*/
@BigDecimalFormat()
@Excel(name = "嗨粉业绩($)", scale = 2)
private BigDecimal hiFunAchieve;
/**
* 体系占比
*/
@ -191,21 +167,6 @@ public class RecommendExportDataVO implements Serializable {
private BigDecimal settleRepeatAchieve;
/**
* 嗨粉金额本币
*/
@BigDecimalFormat()
@Excel(name = "嗨粉金额(¥)", scale = 2)
private BigDecimal settleHiFunAmount;
/**
* 嗨粉业绩本币
*/
@BigDecimalFormat()
@Excel(name = "嗨粉业绩(¥)", scale = 2)
private BigDecimal settleHiFunAchieve;
/**
* 体系占比
*/
@ -273,21 +234,6 @@ public class RecommendExportDataVO implements Serializable {
@Excel(name = "去重复购业绩($)", scale = 2)
private BigDecimal replyRepeatAchieve;
/**
* 嗨粉金额
*/
@BigDecimalFormat()
@Excel(name = "去重嗨粉金额($)", scale = 2)
private BigDecimal replyHiFunAmount;
/**
* 嗨粉业绩
*/
@BigDecimalFormat()
@Excel(name = "去重嗨粉业绩($)", scale = 2)
private BigDecimal replyHiFunAchieve;
/**
* 体系占比
*/
@ -351,21 +297,6 @@ public class RecommendExportDataVO implements Serializable {
private BigDecimal replySettleRepeatAchieve;
/**
* 嗨粉金额本币
*/
@BigDecimalFormat()
@Excel(name = "去重嗨粉金额(¥)", scale = 2)
private BigDecimal replySettleHiFunAmount;
/**
* 嗨粉业绩本币
*/
@BigDecimalFormat()
@Excel(name = "去重嗨粉业绩(¥)", scale = 2)
private BigDecimal replySettleHiFunAchieve;
/**
* 体系占比
*/
@ -382,5 +313,4 @@ public class RecommendExportDataVO implements Serializable {
private BigDecimal replySettleMarketRatio;
}

View File

@ -1,9 +1,6 @@
package com.hzs.member.share.controller.api;
import com.hzs.common.core.config.BdConfig;
import com.hzs.common.core.constant.SysConstants;
import com.hzs.common.core.domain.R;
import com.hzs.common.core.enums.EEnv;
import com.hzs.common.core.enums.EShareType;
import com.hzs.common.core.utils.sign.Base64Util;
import com.hzs.common.core.web.domain.AjaxResult;
@ -16,16 +13,11 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* @Description: 会员分享相关控制器
* @Author: jiang chao
* @Time: 2023/3/15 10:03
* @Classname: ShareController
* @PackageName: com.hzs.member.share.controller
* 会员分享相关控制器
*/
@Slf4j
@RestController
@ -35,36 +27,36 @@ public class ApiShareController {
@DubboReference
IShareServiceApi iShareServiceApi;
/**
* 获取海粉分享码
*
* @return
*/
@GetMapping("/fans-code")
public AjaxResult fansCode() {
Long userId = SecurityUtils.getUserId();
// 海粉注册分享人就是自己
R<String> resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder()
.eShareType(EShareType.FANS)
.pkBusiness(userId)
.pkCountry(SecurityUtils.getPkCountry())
.userId(userId)
.build());
if (resultR.isSuccess()) {
return AjaxResult.success("", resultR.getData());
}
return AjaxResult.error();
}
// /**
// * 获取海粉分享码
// *
// * @return
// */
// @GetMapping("/fans-code")
// public AjaxResult fansCode() {
// Long userId = SecurityUtils.getUserId();
// // 海粉注册分享人就是自己
// R<String> resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder()
// .eShareType(EShareType.FANS)
// .pkBusiness(userId)
// .pkCountry(SecurityUtils.getPkCountry())
// .userId(userId)
// .build());
// if (resultR.isSuccess()) {
// return AjaxResult.success("", resultR.getData());
// }
// return AjaxResult.error();
// }
/**
* 获取海粉分享码H5
* 获取188分享码H5
*
* @return
*/
@GetMapping("/fans-code-h5")
public AjaxResult fansCodeH5() {
Long userId = SecurityUtils.getUserId();
// 海粉注册分享人就是自己
// 188注册分享人就是自己
R<String> resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder()
.eShareType(EShareType.FANS)
.pkBusiness(userId)
@ -81,86 +73,50 @@ public class ApiShareController {
return AjaxResult.error();
}
/**
* 获取分享专区分享码
*
* @return
*/
@GetMapping("/share-code")
public AjaxResult shareCode() {
// 2024.01.29 添加需求自2024年2月1日起0元注册功能取消
if (checkShare()) {
return AjaxResult.error("二维码已停用,请联系相应亲友协助办理注册");
}
Long userId = SecurityUtils.getUserId();
// 分享专区分享人就是自己
R<String> resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder()
.eShareType(EShareType.SHARE)
.pkBusiness(userId)
.pkCountry(SecurityUtils.getPkCountry())
.userId(userId)
.build());
if (resultR.isSuccess()) {
return AjaxResult.success("", resultR.getData());
}
return AjaxResult.error();
}
/**
* 获取分享专区分享码H5
*
* @return
*/
@GetMapping("/share-code-h5")
public AjaxResult shareCodeH5() {
// 2024.01.29 添加需求自2024年2月1日起0元注册功能取消
if (checkShare()) {
return AjaxResult.error("二维码已停用,请联系相应亲友协助办理注册");
}
Long userId = SecurityUtils.getUserId();
// 分享专区分享人就是自己
R<String> resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder()
.eShareType(EShareType.SHARE)
.pkBusiness(userId)
.pkCountry(SecurityUtils.getPkCountry())
.userId(userId)
.build());
if (resultR.isSuccess()) {
Map<String, String> resultMap = new HashMap<>();
resultMap.put("dataUrl", resultR.getData());
// 前端无法根据URL生成海报此处需要转一下base64
resultMap.put("dataStr", Base64Util.toUrlBase64(resultR.getData()));
return AjaxResult.success(resultMap);
}
return AjaxResult.error();
}
/**
* 校验是否能注册
*
* @return
*/
@GetMapping("/check-share-code")
public AjaxResult checkShareCode() {
if (checkShare()) {
return AjaxResult.error("二维码已停用,请联系相应亲友协助办理注册");
}
return AjaxResult.success();
}
/**
* 校验是否可以注册 -- 自2024年2月1日起0元注册功能取消
*
* @return
*/
private boolean checkShare() {
if (EEnv.TEST.getValue().equals(BdConfig.getEnv())) {
return new Date().getTime() >= SysConstants.CLOSE_ZERO_DATE_TEST;
} else {
return new Date().getTime() >= SysConstants.CLOSE_ZERO_DATE_ONLINE;
}
}
// /**
// * 获取分享专区分享码
// *
// * @return
// */
// @GetMapping("/share-code")
// public AjaxResult shareCode() {
// Long userId = SecurityUtils.getUserId();
// // 分享专区分享人就是自己
// R<String> resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder()
// .eShareType(EShareType.SHARE)
// .pkBusiness(userId)
// .pkCountry(SecurityUtils.getPkCountry())
// .userId(userId)
// .build());
// if (resultR.isSuccess()) {
// return AjaxResult.success("", resultR.getData());
// }
// return AjaxResult.error();
// }
//
// /**
// * 获取分享专区分享码H5
// *
// * @return
// */
// @GetMapping("/share-code-h5")
// public AjaxResult shareCodeH5() {
// Long userId = SecurityUtils.getUserId();
// // 分享专区分享人就是自己
// R<String> resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder()
// .eShareType(EShareType.SHARE)
// .pkBusiness(userId)
// .pkCountry(SecurityUtils.getPkCountry())
// .userId(userId)
// .build());
// if (resultR.isSuccess()) {
// Map<String, String> resultMap = new HashMap<>();
// resultMap.put("dataUrl", resultR.getData());
// // 前端无法根据URL生成海报此处需要转一下base64
// resultMap.put("dataStr", Base64Util.toUrlBase64(resultR.getData()));
// return AjaxResult.success(resultMap);
// }
// return AjaxResult.error();
// }
}

View File

@ -341,7 +341,6 @@ public class CuBonusStatisServiceImpl extends ServiceImpl<CuBonusStatisMapper, C
// 设置去年数据的属性如果查询结果为空则设置为 BigDecimal.ZERO
if (thisYear != null) {
thisYear.setLastHifansRegAmount(lastYear != null ? lastYear.getHifansRegAmount() : BigDecimal.ZERO);
thisYear.setLastMainRegAmount(lastYear != null ? lastYear.getMainRegAmount() : BigDecimal.ZERO);
thisYear.setLastMainRepurAmount(lastYear != null ? lastYear.getMainRepurAmount() : BigDecimal.ZERO);
thisYear.setLastMainUpAmount(lastYear != null ? lastYear.getMainUpAmount() : BigDecimal.ZERO);

View File

@ -54,17 +54,6 @@ public class CuBonusStatisColumnarVO {
*/
@Excel(name = "去年复购金额(¥)")
private BigDecimal lastMainRepurAmount;
/**
* 今年嗨粉金额
*/
@Excel(name = "今年嗨粉金额(¥)")
private BigDecimal hifansRegAmount;
/**
* 去年嗨粉金额
*/
@Excel(name = "去年嗨粉金额(¥)")
private BigDecimal lastHifansRegAmount;
/**
* 体系ID 统计体系1原体系2六合体系,3六合二101非洲体系

View File

@ -149,14 +149,6 @@ public class DirectPushNewVo {
* 复购业绩
*/
private BigDecimal repurchasePv;
/**
* 嗨粉金额
*/
private BigDecimal hiFunAmount;
/**
* 嗨粉业绩
*/
private BigDecimal hiFunPv;
/**
* 商城金额
*/

View File

@ -17,11 +17,7 @@ import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @Description: 商品分类列表
* @Author: yuhui
* @Time: 2022/9/5 10:57
* @Classname: BdAreaClassifyController
* @PackageName: com.hzs.sale.product.controller.manage
* 商品分类列表
*/
@Slf4j
@RestController

View File

@ -1,6 +1,7 @@
package com.hzs.sale.wares.controller.api;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.codec.Base64Decoder;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
@ -37,10 +38,8 @@ import com.hzs.system.base.ICurrencyServiceApi;
import com.hzs.system.base.dto.CurrencyDTO;
import com.hzs.system.config.AdvertBannerServiceApi;
import com.hzs.system.config.IAreaCurrencyServiceApi;
import com.hzs.system.config.IGradeServiceApi;
import com.hzs.system.config.dto.AdvertBannerDTO;
import com.hzs.system.config.dto.AreaCurrencyDTO;
import com.hzs.system.config.dto.GradeDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference;
import org.springframework.beans.factory.annotation.Autowired;
@ -49,7 +48,6 @@ import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
@ -60,8 +58,6 @@ import java.util.stream.Collectors;
@Slf4j
public class ApiBdWaresController extends BaseController {
@DubboReference
IGradeServiceApi iGradeServiceApi;
@DubboReference
AdvertBannerServiceApi advertBannerServiceApi;
@DubboReference
@ -91,7 +87,6 @@ public class ApiBdWaresController extends BaseController {
@Autowired
protected StringRedisTemplate redisTemplate;
/**
* 专区商品列表
*
@ -117,11 +112,6 @@ public class ApiBdWaresController extends BaseController {
List<BdWaresExt> bdWaresExtList = iBdWaresService.queryWaresByCondition(cuWaresParams.getSpecialArea(), cuWaresParams.getPkAreaClassify(), cuWaresParams.getWaresName(), null, null, pkCountry);
if (CollectionUtil.isNotEmpty(bdWaresExtList)) {
// 等级
R<List<GradeDTO>> gradeDTO = iGradeServiceApi.queryGradeList(pkCountry);
List<GradeDTO> gradeList = gradeDTO.getData();
Map<Integer, GradeDTO> gradeMap = gradeList.stream().collect(Collectors.toMap(GradeDTO::getGradeValue, Function.identity()));
// 当前会员ID
Long userId = SecurityUtils.getUserId();
CuMember cuMember = iSaOrderService.getCuMemberByKey(userId);
@ -745,4 +735,132 @@ public class ApiBdWaresController extends BaseController {
return AjaxResult.success(waresInfoVo);
}
/**
* 188分享专区商品列表
*/
@GetMapping("/list-wares-share")
public AjaxResult listWaresShare(@RequestBody WaresShareParam param) {
param.setSpecialArea(ESpecialArea.REGISTER_AREA.getValue());
param.setIsMakerGift(EWaresType.PRODUCT_188.getValue());
param.setPkCountry(CountryConstants.CHINA_COUNTRY);
// 返回数据
List<CuWaresParams> waresParamsList = new ArrayList<>();
// 查询商品列表
List<BdWaresExt> bdWaresExtList = iBdWaresService.listWaresShare(param.getSpecialArea(), param.getIsMakerGift(), param.getPkCountry());
if (CollectionUtil.isNotEmpty(bdWaresExtList)) {
// 商品主键列表
List<Integer> waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList());
if (StringUtils.isNotEmpty(param.getShareMemberCode())) {
// 分享人ID
Long pkMember = Long.parseLong(new String(Base64Decoder.decode(param.getShareMemberCode())));
CuMember cuMember = iSaOrderService.getCuMemberByKey(pkMember);
// 当前会员编号
String memberCode = cuMember.getMemberCode();
// 检验商品团队信息
Map<Integer, List<BdWaresAuthority>> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList);
List<ShowWaresDTO> showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), pkMember, memberCode, waresAuthorityMap)).collect(Collectors.toList());
R<Map<Integer, Boolean>> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList);
Map<Integer, Boolean> waresShowMap = waresShowMapDto.getData();
// 商品标签列表
BdWaresLabel waresLabel = new BdWaresLabel();
waresLabel.setPkIdList(waresIdList);
List<BdLabelExt> list = iBdWaresLabelService.selectByList(waresLabel);
// 标签
for (BdWaresExt bdWaresExt : bdWaresExtList) {
// 保证标签
List<BdLabel> ensureLabelList = new ArrayList<>();
// 卖点标签
List<BdLabel> sellingLabelList = new ArrayList<>();
for (BdLabelExt bdLabel : list) {
if (ELabelType.PREFIX.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) {
// 前缀标签
bdWaresExt.setPrefixLabelTarget(bdLabel);
}
if (ELabelType.COOL.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) {
// 酷炫标签
bdWaresExt.setCoolLabelTarget(bdLabel);
}
if (ELabelType.ENSURE.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) {
// 保证标签
ensureLabelList.add(bdLabel);
}
if (ELabelType.SELLING.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) {
// 卖点标签
sellingLabelList.add(bdLabel);
}
}
bdWaresExt.setEnsureLabelList(ensureLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList()));
bdWaresExt.setSellingLabelList(sellingLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList()));
}
// 查询商品sku 最小值 和数量
List<BdWaresSpecsSkuExt> waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList);
Map<Integer, List<BdWaresSpecsSkuExt>> waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares));
// 查询默认规格
List<BdWaresSpecsSkuExt> waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList);
for (BdWaresExt waresExt : bdWaresExtList) {
// 校验团队信息
Boolean isShowWares = waresShowMap.get(waresExt.getPkId());
if (null == isShowWares || !isShowWares) {
continue;
}
CuWaresParams waresParams = BeanUtil.copyProperties(waresExt, CuWaresParams.class);
// 价格
BigDecimal waresPrice = BigDecimal.ZERO;
// 业绩
BigDecimal waresAchieve = BigDecimal.ZERO;
List<BdWaresSpecsSkuExt> waresSpecsSku = waresSpecsSkuMap.get(waresExt.getPkId());
waresSpecsSku = waresSpecsSku.stream().peek(a -> a.setProductGift(a.getPkProduct() + "" + a.getIsGift())).collect(Collectors.toList());
Map<String, List<BdWaresSpecsSkuExt>> col = waresSpecsSku.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getProductGift));
for (Map.Entry<String, List<BdWaresSpecsSkuExt>> integerListEntry : col.entrySet()) {
// 取得每一个商品价格最小值
Optional<BdWaresSpecsSkuExt> minBdWaresSpecsSkuExt = integerListEntry.getValue().stream().filter(Objects::nonNull).min(Comparator.comparing(BdWaresSpecsSkuExt::getPrice));
BdWaresSpecsSkuExt bdWaresSpecsSkuExt = minBdWaresSpecsSkuExt.get();
waresPrice = waresPrice.add(bdWaresSpecsSkuExt.getPrice().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity())));
waresAchieve = waresAchieve.add(bdWaresSpecsSkuExt.getAchieve().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity())));
}
// 计算商品列表价格和业绩最小值
waresParams.setWaresPrice(waresPrice);
waresParams.setWaresAchieve(waresAchieve);
// 商品业绩计算汇率
if (waresParams.getWaresAchieve() != null) {
waresParams.setWaresAchieve(waresParams.getWaresAchieve());
waresParams.setWaresPrice(waresParams.getWaresPrice());
} else {
waresParams.setWaresAchieve(BigDecimal.ZERO);
waresParams.setWaresPrice(BigDecimal.ZERO);
}
// 查询默认规格
JSONArray jsonArray = new JSONArray();
List<BdWaresSpecsSkuExt> collect = waresSpecsSkuList.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList());
for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) {
if (bdWaresSpecsSku.getPkWares().equals(waresExt.getPkId())) {
JSONObject js = new JSONObject();
js.put("pkProduct", bdWaresSpecsSku.getPkProduct());
js.put("pkSkuId", bdWaresSpecsSku.getPkId());
js.put("quantity", bdWaresSpecsSku.getQuantity());
jsonArray.add(js);
}
}
waresParams.setProductGroup(jsonArray);
waresParamsList.add(waresParams);
}
}
}
return AjaxResult.success(waresParamsList);
}
}

View File

@ -38,6 +38,18 @@ public interface BdWaresMapper extends BaseMapper<BdWares> {
@Param("waresCodeNotInList") List<String> waresCodeNotInList,
@Param("pkCountry") Integer pkCountry);
/**
* 根据条件查询商品信息
*
* @param specialArea 专区
* @param specialArea 专区
* @param pkCountry 所属国家
* @return: List<BdWaresExt>
*/
List<BdWaresExt> listWaresShare(@Param("specialArea") Integer specialArea,
@Param("isMakerGift") Integer isMakerGift,
@Param("pkCountry") Integer pkCountry);
/**
* 查询最末商品编号
*

View File

@ -1,26 +0,0 @@
package com.hzs.sale.wares.param;/**
* @Description:
* @Author: yuhui
* @Time: 2023/5/23 15:21
* @Classname: ConfirmOrderWaresInfoParams
* @PackageName: com.hzs.sale.wares.param
*/
import lombok.Data;
import java.util.List;
/**
*@BelongsProject: hzs_cloud
*@BelongsPackage: com.hzs.sale.wares.param
*@Author: yh
*@CreateTime: 2023-05-23 15:21
*@Description: TODO
*@Version: 1.0
*/
@Data
public class ConfirmOrderWaresInfoParams {
private List<ConfirmOrderWaresInfoList> confirmOrderWaresInfoParamsList;
}

View File

@ -1,28 +0,0 @@
package com.hzs.sale.wares.param;
import lombok.Data;
import java.util.List;
/**
* @Description:
* @Author: yuhui
* @Time: 2023/1/30 11:51
* @Classname: CuWaresInfoParams
* @PackageName: com.hzs.sale.wares.param
*/
@Data
public class CuWaresInfoParams {
/**
* 商品编号
*/
private String waresCode;
/**
* 商品明细主键,用于查询sku
*/
private List<Integer> pkWaresDetail;
}

View File

@ -22,11 +22,10 @@ import java.util.List;
@NoArgsConstructor
public class CuWaresParams implements Serializable {
/**
*
*/
private Long pkId;
private Integer pkWares;
/**
* 商品id
*/
@ -237,7 +236,6 @@ public class CuWaresParams implements Serializable {
/**
* 商品分类一级分类
*/
private Long pkCategoryOne;
/**
@ -248,10 +246,10 @@ public class CuWaresParams implements Serializable {
* 商品介绍
*/
private String description;
/**
* 商品分类三级分类
*/
private Long pkCategoryThree;
/**
@ -279,7 +277,6 @@ public class CuWaresParams implements Serializable {
*/
private BigDecimal retailPrice;
/**
* 消费配置主键
*/

View File

@ -1,23 +0,0 @@
package com.hzs.sale.wares.param;
import lombok.Data;
/**
* @Description:
* @Author: yuhui
* @Time: 2022/11/2 15:54
* @Classname: LabelParams
* @PackageName: com.hzs.sale.wares.param
*/
@Data
public class LabelParams {
/**
* 标签类型
*/
private Integer labelType;
/**
* 标签主键
*/
private Integer pkLabel;
}

View File

@ -1,31 +0,0 @@
package com.hzs.sale.wares.param;/**
* @Description:
* @Author: yuhui
* @Time: 2024/3/7 14:45
* @Classname: SpecsNameVo
* @PackageName: com.hzs.sale.wares.param
*/
import lombok.Data;
/**
*@BelongsProject: hzs_cloud
*@BelongsPackage: com.hzs.sale.wares.param
*@Author: yh
*@CreateTime: 2024-03-07 14:45
*@Description: TODO
*@Version: 1.0
*/
@Data
public class SpecsNameVo {
/**
* 规格名称
*/
private String specsName;
/**
* 是否赠品 0 1
*/
private Integer isGift;
}

View File

@ -1,23 +0,0 @@
package com.hzs.sale.wares.param;
import lombok.Data;
/**
* @Description:
* @Author: yuhui
* @Time: 2022/11/2 16:25
* @Classname: TransportPostage
* @PackageName: com.hzs.sale.wares.param
*/
@Data
public class TransportPostage {
/**
* ETransportType 枚举 海运 陆运空运
*/
private Integer transportType;
/**
* 邮费外键
*/
private Integer pkPostage;
}

View File

@ -1,28 +0,0 @@
package com.hzs.sale.wares.param;/**
* @Description:
* @Author: yuhui
* @Time: 2023/7/20 14:50
* @Classname: WaresCategoryParam
* @PackageName: com.hzs.sale.wares.param
*/
import lombok.Data;
import java.util.List;
/**
*@BelongsProject: hzs_cloud
*@BelongsPackage: com.hzs.sale.wares.param
*@Author: yh
*@CreateTime: 2023-07-20 14:50
*@Description: TODO
*@Version: 1.0
*/
@Data
public class WaresCategoryParam {
/**
* 上级id 列表
*/
List<Long> parentIds;
}

View File

@ -0,0 +1,31 @@
package com.hzs.sale.wares.param;
import lombok.Data;
/**
* 分享商品查询条件
*/
@Data
public class WaresShareParam {
/**
* 分享会员编号
*/
private String shareMemberCode;
/**
* 所属专区
*/
private Integer specialArea;
/**
* 商品类型
*/
private Integer isMakerGift;
/**
* 国家
*/
private Integer pkCountry;
}

View File

@ -1,42 +0,0 @@
package com.hzs.sale.wares.param;
import lombok.Data;
import java.util.Date;
/**
* @Description: 三方商品统计入参
* @Author: jiang chao
* @Time: 2023/7/21 17:50
* @Classname: WaresStatisticsParam
* @PackageName: com.hzs.sale.wares.param
*/
@Data
public class WaresStatisticsParam {
/**
* 商品名称
*/
private String productName;
/**
* 一级商品分类
*/
private Long pkCategoryOne;
/**
* 二级商品分类
*/
private Long pkCategoryTwo;
/**
* 三级商品分类
*/
private Long pkCategoryThree;
/**
* 统计时间范围
*/
private Date[] statisticsDate;
}

View File

@ -82,6 +82,16 @@ public interface IBdWaresService extends IService<BdWares> {
*/
List<BdWaresExt> queryWaresByCondition();
/**
* 根据条件查询商品信息
*
* @param specialArea 专区
* @param specialArea 专区
* @param pkCountry 所属国家
* @return: List<BdWaresExt>
*/
List<BdWaresExt> listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry);
/**
* 查询商品外键
*

View File

@ -899,6 +899,11 @@ public class BdWaresServiceImpl extends ServiceImpl<BdWaresMapper, BdWares> impl
return baseMapper.queryWaresByCondition(null, null, null, null, null, null, null);
}
@Override
public List<BdWaresExt> listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry) {
return baseMapper.listWaresShare(specialArea, isMakerGift, pkCountry);
}
@Override
public BdWares getWares(Integer waresId) {
String redisKey = CacheConstants.BD_WARES + waresId;

View File

@ -146,6 +146,37 @@
order by bw.SORT_STATUS desc , bw.WARES_PRICE ,bw.CREATION_TIME desc
</select>
<!-- 分享商品列表 -->
<select id="listWaresShare" resultMap="BaseResultMap">
select bw.PK_COUNTRY, bw.PK_ID, be.pk_id PK_WARES_EXTEND,
be.IS_MAKER_GIFT, bw.WARES_CODE, bw.WARES_NAME,
PK_AREA_CLASSIFY, COVER, COVER1, COVER2,
bw.WARES_PRICE, bw.WARES_ACHIEVE,
SORT, SPECIAL_AREA,
IS_PUT_ON, PRE_SALE_STATUS,
PREFIX_LABEL, COOL_LABEL, S_LABEL,
SALES, IS_SALE, ARRIVAL_TIME, WARN_MESSAGE,
be.PK_SPECIAL_CURRENCY
from bd_wares bw
inner join bd_wares_extend be
on bw.pk_id = be.pk_wares
where bw.del_flag = 0
and be.del_flag = 0
and be.is_put_on = 0
<!-- 商品必须通过审核后才能显示 -->
and bw.wares_status = 5
<if test="specialArea != null">
and bw.special_area = #{specialArea}
</if>
<if test="isMakerGift != null">
and be.is_maker_gift = #{isMakerGift}
</if>
<if test="pkCountry != null">
and bw.pk_country = #{pkCountry}
</if>
order by bw.SORT_STATUS desc , bw.sort desc, bw.WARES_PRICE ,bw.CREATION_TIME desc
</select>
<select id="getLastWaresCode" resultType="string">
select WARES_CODE
from (select t.WARES_CODE from BD_WARES t order by WARES_CODE desc)

View File

@ -1,16 +1,10 @@
package com.hzs.system.config.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hzs.common.domain.system.config.BdBonusHiPink;
/**
* <p>
* 嗨粉直推奖励配置 Mapper 接口
* </p>
*
* @author zhangjing
* @since 2022-11-03
*/
public interface BdBonusHiPinkMapper extends BaseMapper<BdBonusHiPink> {

View File

@ -1,44 +1,17 @@
package com.hzs.system.config.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hzs.common.domain.system.config.BdBonusHiPink;
import java.util.List;
/**
* <p>
* 嗨粉直推奖励配置 服务类
* </p>
*
* @author zhangjing
* @since 2022-11-03
*/
public interface IBdBonusHiPinkService extends IService<BdBonusHiPink> {
/**
* @description: 新增嗨粉直推奖励配置
* @author: zhang jing
* @date: 2022/11/4 9:25
* @param: [bonusHiPinkList]
* @return: boolean
**/
boolean saveBonusHiPink(List<BdBonusHiPink> bonusHiPinkList);
/**
* @description: 修改嗨粉直推奖励配置
* @author: zhang jing
* @date: 2022/11/4 9:25
* @param: [bonusHiPinkList]
* @return: boolean
**/
boolean updateBonusHiPink(List<BdBonusHiPink> bonusHiPinkList);
/**
* 查询会员嗨粉推荐奖金
* @return: List<BdBonusHiPink>
* @Author: sui q
* @Date: 2023/1/4 15:23
*/
List<BdBonusHiPink> queryBonusHiPink();
}

View File

@ -10,46 +10,11 @@ import org.springframework.stereotype.Service;
import java.util.List;
/**
* <p>
* 嗨粉直推奖励配置 服务实现类
* </p>
*
* @author zhangjing
* @since 2022-11-03
*/
@Service
public class BdBonusHiPinkServiceImpl extends ServiceImpl<BdBonusHiPinkMapper, BdBonusHiPink> implements IBdBonusHiPinkService {
/**
* @description: 新增嗨粉直推奖励配置
* @author: zhang jing
* @date: 2022/11/3 19:54
* @param: [bonusHiPinkList]
* @return: boolean
**/
@Override
public boolean saveBonusHiPink(List<BdBonusHiPink> bonusHiPinkList) {
for(BdBonusHiPink bbhp : bonusHiPinkList){
baseMapper.insert(bbhp);
}
return true;
}
/**
* @description: 修改嗨粉直推奖励配置
* @author: zhang jing
* @date: 2022/11/4 9:25
* @param: [bonusHiPinkList]
* @return: boolean
**/
@Override
public boolean updateBonusHiPink(List<BdBonusHiPink> bonusHiPinkList) {
for(BdBonusHiPink bbhp : bonusHiPinkList){
baseMapper.insert(bbhp);
}
return true;
}
@Override
public List<BdBonusHiPink> queryBonusHiPink() {
QueryWrapper<BdBonusHiPink> queryWrapper = new QueryWrapper<>();

View File

@ -2371,7 +2371,7 @@ public class EnumsController extends BaseController {
public AjaxResult getWaresType() {
List<EnumEntity> enumEntityList = new ArrayList<>();
for (EWaresType value : EWaresType.values()) {
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.ENU_WARES_TYPE));
enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel()));
}
return AjaxResult.success(enumEntityList);
}

View File

@ -5,8 +5,6 @@ import org.springframework.stereotype.Component;
/**
* 读取项目相关配置
*
* @author hzs
*/
@Component
@ConfigurationProperties(prefix = "bd")

View File

@ -572,10 +572,6 @@ public class EnumsPrefixConstants {
*/
public static final String ENU_USER = "ENU_USER_S_";
/**
* 商品类型枚举
*/
public static final String ENU_WARES_TYPE = "ENU_WARES_TYPE_P_";
/**
* 是否打印枚举
*/

View File

@ -2,8 +2,6 @@ package com.hzs.common.core.constant;
/**
* 系统使用常量
*
* @author sshcode
*/
public class SysConstants {
@ -27,14 +25,4 @@ public class SysConstants {
*/
public static final String SPECIAL_CODE = "BD68880628";
//////////////////// 2024.01.29 添加需求2024.02.01日起0元关闭注册 ////////////////////
/**
* 测试时间 2024-03-30 00:00:00
*/
public static final Long CLOSE_ZERO_DATE_TEST = 1706544000000L;
/**
* 生产时间 2024-02-01 00:00:00
*/
public static final Long CLOSE_ZERO_DATE_ONLINE = 1706716800000L;
}

View File

@ -12,7 +12,7 @@ import lombok.Getter;
public enum ECategory {
/**
* 0=正常正常 空单 嗨粉 1=死点死点
* 0=正常正常 空单 1=死点死点
*/
NORMAL(0, "正常", 0, EnumsPrefixConstants.ENU_CAT + 0),

View File

@ -15,7 +15,7 @@ import java.util.List;
public enum EOrderBusiness {
/**
* 全部 注册 + 升级+ 复购+ 嗨粉 + 三方 + 福利
* 全部 注册 + 升级+ 复购 + 福利
*/
WHOLE(1, "全部", 0, EnumsPrefixConstants.ORDER_BUSINESS + 1),
@ -25,7 +25,7 @@ public enum EOrderBusiness {
FIRST_PURCHASE(2, "首购", 0, EnumsPrefixConstants.ORDER_BUSINESS + 2),
/**
* 复购 + 嗨粉
* 复购
*/
REPURCHASE(3, "复购", 0, EnumsPrefixConstants.ORDER_BUSINESS + 3),
@ -44,11 +44,6 @@ public enum EOrderBusiness {
*/
REPURCHASE_ORDER(7, "复购专区", 0, EnumsPrefixConstants.ORDER_BUSINESS + 7),
// /**
// * 嗨粉
// */
// FANS_ORDER(8, "海粉专区", 0, EnumsPrefixConstants.ORDER_BUSINESS + 8),
//
// /**
// * 福利
// */

View File

@ -25,7 +25,7 @@ public enum EOrderShipment {
FIRST_PURCHASE(2, "首购", 0, EnumsPrefixConstants.ORDER_SHIPMENT + 2),
/**
* 复购 + 嗨粉
* 复购
*/
REPURCHASE(3, "复购", 0, EnumsPrefixConstants.ORDER_SHIPMENT + 3),
@ -44,11 +44,6 @@ public enum EOrderShipment {
*/
REPURCHASE_ORDER(7, "复购专区", 0, EnumsPrefixConstants.ORDER_SHIPMENT + 7),
// /**
// * 嗨粉
// */
// FANS_ORDER(8, "嗨粉专区", 0, EnumsPrefixConstants.ORDER_SHIPMENT + 8),
//
// /**
// * 福利
// */

View File

@ -4,25 +4,21 @@ import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @Description: 分享业务类型
* @Author: jiang chao
* @Time: 2023/3/15 10:46
* @Classname: EShareType
* @PackageName: com.hzs.common.core.enums
* 分享业务类型
*/
@AllArgsConstructor
@Getter
public enum EShareType {
/**
* 分享注册
*/
SHARE(1, "分享注册"),
// /**
// * 分享注册
// */
// SHARE(1, "分享注册"),
/**
* 海粉注册
* 188注册
*/
FANS(2, "海粉注册"),
FANS(2, "188注册"),
;

View File

@ -1,6 +1,5 @@
package com.hzs.common.core.enums;
import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.AllArgsConstructor;
import lombok.Getter;
@ -14,7 +13,12 @@ public enum EWaresType {
/**
* 1=普通商品
*/
ORDINARY(1, "普通商品", EnumsPrefixConstants.ENU_WARES_TYPE + "1"),
ORDINARY(1, "普通商品"),
/**
* 2=188商品
*/
PRODUCT_188(2, "188商品"),
;
@ -27,10 +31,6 @@ public enum EWaresType {
* 显示标签
*/
private final String label;
/**
* 国际化翻译key值
*/
private final String key;
/**
* 根据枚举值获取枚举

View File

@ -1,7 +1,6 @@
package com.hzs.common.domain.member.account;
import java.math.BigDecimal;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
@ -55,7 +54,7 @@ public class CuMemberTrade extends BaseEntity {
private Integer pkAccount;
/**
* 交易类型:(101: 注册订单,102: 升级订单,103: 复购订单,104: 圣宝云代注册,105: 圣宝云代升级,106: 圣宝云代复购,107: 嗨粉订单,108: 提货订单,109: 礼包订单,110: 消费订单,111: 兑换订单,200: 提现,201: 提现充正,300: 转账,400: 后台充值,401: 线上充值,500: 收益发放,600: 撤单返钱,601: 返还本金)
* 交易类型:(101: 注册订单,102: 升级订单,103: 复购订单,108: 提货订单,109: 礼包订单,110: 消费订单,111: 兑换订单,200: 提现,201: 提现充正,300: 转账,400: 后台充值,401: 线上充值,500: 收益发放,600: 撤单返钱,601: 返还本金)
*/
@TableField("TRADE_TYPE")
private Integer tradeType;

View File

@ -17,6 +17,7 @@ import java.util.List;
@Data
public class BdWaresExt extends BdWares {
/**
* 扩展表主键
*/

View File

@ -157,7 +157,7 @@ public class BdWaresExtend extends BaseEntity {
/**
* 商品类型1=普通商品
* 商品类型1=普通商品,2=188商品 -- EWaresType
*/
@TableField("IS_MAKER_GIFT")
private Integer isMakerGift;

View File

@ -12,12 +12,7 @@ import lombok.experimental.Accessors;
import java.math.BigDecimal;
/**
* <p>
* 嗨粉直推奖励配置
* </p>
*
* @author zhangjing
* @since 2022-11-03
*/
@Data
@EqualsAndHashCode(callSuper = true)

View File

@ -2,15 +2,11 @@ package com.hzs.common.domain.system.config.ext;
import com.hzs.common.domain.system.config.BdBonusHiPink;
import lombok.Data;
import java.util.List;
/**
* <p>
* 嗨粉直推奖励配置
* </p>
*
* @author zhangjing
* @since 2022-11-03
*/
@Data
public class BdBonusHiPinkExt extends BdBonusHiPink {

View File

@ -2,7 +2,9 @@ package com.hzs.common.domain.third.share;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
@ -11,9 +13,6 @@ import lombok.experimental.Accessors;
/**
* 分享编码
*
* @author hzs
* @since 2023-03-15
*/
@Data
@Accessors(chain = true)

View File

@ -5,9 +5,6 @@ import com.hzs.common.domain.third.share.TShareCode;
/**
* 分享编码 Mapper 接口
*
* @author hzs
* @since 2023-03-15
*/
public interface TShareCodeMapper extends BaseMapper<TShareCode> {

View File

@ -9,11 +9,7 @@ import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.factory.annotation.Autowired;
/**
* @Description: 分享码服务
* @Author: jiang chao
* @Time: 2023/3/15 11:33
* @Classname: ShareServiceProvider
* @PackageName: com.hzs.third.share.provider
* 分享码服务
*/
@Slf4j
@DubboService

View File

@ -6,9 +6,6 @@ import com.hzs.third.share.dto.ShareServiceDTO;
/**
* 分享编码 服务类
*
* @author hzs
* @since 2023-03-15
*/
public interface ITShareCodeService extends IService<TShareCode> {

View File

@ -1,7 +1,7 @@
package com.hzs.third.share.service.impl;
import cn.hutool.core.codec.Base64Encoder;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hzs.common.core.config.OssConfig;
import com.hzs.common.core.enums.EShareType;
@ -17,9 +17,6 @@ import java.nio.charset.StandardCharsets;
/**
* 分享编码 服务实现类
*
* @author hzs
* @since 2023-03-15
*/
@Service
public class TShareCodeServiceImpl extends ServiceImpl<TShareCodeMapper, TShareCode> implements ITShareCodeService {
@ -39,9 +36,9 @@ public class TShareCodeServiceImpl extends ServiceImpl<TShareCodeMapper, TShareC
Long pkBusiness = dto.getPkBusiness();
// 查询该业务数据库中是否存在
QueryWrapper<TShareCode> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("BUSINESS_TYPE", eShareType.getValue());
queryWrapper.eq("PK_BUSINESS", pkBusiness);
LambdaQueryWrapper<TShareCode> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(TShareCode::getBusinessType, eShareType.getValue());
queryWrapper.eq(TShareCode::getPkBusiness, pkBusiness);
TShareCode tShareCode = baseMapper.selectOne(queryWrapper);
if (null != tShareCode) {
resultCode = tShareCode.getPath();
@ -50,13 +47,13 @@ public class TShareCodeServiceImpl extends ServiceImpl<TShareCodeMapper, TShareC
String code = Base64Encoder.encode(pkBusiness.toString().getBytes(StandardCharsets.UTF_8));
switch (eShareType) {
case SHARE:
// 分享注册
resultCode = fansPath + "?code=" + code;
break;
// case SHARE:
// // 分享注册
// resultCode = fansPath + "?code=" + code;
// break;
case FANS:
// 海粉注册
resultCode = sharePath + "?code=" + code + "&country=" + dto.getPkCountry();
resultCode = sharePath + "?code=" + code;
break;
default:
}