Commit 428f9bac authored by shiyu's avatar shiyu

发送上新通知

parent 3a7e2268
...@@ -40,11 +40,6 @@ public interface CommConsts { ...@@ -40,11 +40,6 @@ public interface CommConsts {
public static final Long SYSTEM_ACCOUNT = 8888888888L; public static final Long SYSTEM_ACCOUNT = 8888888888L;
/**
* 默认展示的卖家,逍遥的id
*/
public static final Long SYSTEM_SELLER = 291997L;
/** /**
* 系统默认用户头像URL * 系统默认用户头像URL
*/ */
......
...@@ -211,11 +211,6 @@ public class SupplierItemVo implements Entity { ...@@ -211,11 +211,6 @@ public class SupplierItemVo implements Entity {
*/ */
private String creatorAvatar; private String creatorAvatar;
/**
* 藏品上传人简介
*/
private String creatorProfile;
/** /**
* 收藏数 * 收藏数
*/ */
......
...@@ -64,4 +64,5 @@ public interface FollowFansRecordDao { ...@@ -64,4 +64,5 @@ public interface FollowFansRecordDao {
*/ */
List<FollowFansRecord> findDistinctFans(FollowFansRecordRequestDto dto); List<FollowFansRecord> findDistinctFans(FollowFansRecordRequestDto dto);
} }
...@@ -150,5 +150,13 @@ public interface DistributionOrderDao { ...@@ -150,5 +150,13 @@ public interface DistributionOrderDao {
List<DistributionOrderNum> countGroupByStateForUser(long userId); List<DistributionOrderNum> countGroupByStateForUser(long userId);
/**
* 统计藏家各状态的订单数量
* @param userId
* @return
*/
List<DistributionOrderNum> countGroupByStateForCollector(long userId);
boolean isBuyItem(long buyerId, long itemId); boolean isBuyItem(long buyerId, long itemId);
} }
...@@ -36,9 +36,6 @@ public class FollowFansRecordRequestDto extends BaseRequestDto implements Entity ...@@ -36,9 +36,6 @@ public class FollowFansRecordRequestDto extends BaseRequestDto implements Entity
*/ */
private Long followerId; private Long followerId;
/**
* 被关注人id集合
*/
private List<Long> followerIdList; private List<Long> followerIdList;
/** /**
......
...@@ -193,6 +193,11 @@ public class DistributionOrderDaoImpl implements DistributionOrderDao { ...@@ -193,6 +193,11 @@ public class DistributionOrderDaoImpl implements DistributionOrderDao {
return distributionOrderMapper.countGroupByStateForDistributor(distributorId); return distributionOrderMapper.countGroupByStateForDistributor(distributorId);
} }
@Override
public List<DistributionOrderNum> countGroupByStateForCollector(long userId) {
return distributionOrderMapper.countGroupByStateForCollector(userId);
}
@Override @Override
public List<DistributionOrderNum> countGroupByStateForUser(long userId) { public List<DistributionOrderNum> countGroupByStateForUser(long userId) {
return distributionOrderMapper.countGroupByStateForUser(userId); return distributionOrderMapper.countGroupByStateForUser(userId);
......
...@@ -166,5 +166,6 @@ public class SupplierItemDaoImpl implements SupplierItemDao { ...@@ -166,5 +166,6 @@ public class SupplierItemDaoImpl implements SupplierItemDao {
criteria.andTypeEqualTo(supplierItemRequestDto.getType()); criteria.andTypeEqualTo(supplierItemRequestDto.getType());
criteria.andIsDeletedEqualTo(false); criteria.andIsDeletedEqualTo(false);
return supplierItemMapper.selectByExampleSelective(supplierItemExample, SupplierItem.Column.creatorId); return supplierItemMapper.selectByExampleSelective(supplierItemExample, SupplierItem.Column.creatorId);
} }
} }
...@@ -75,7 +75,12 @@ public interface DistributionOrderMapper { ...@@ -75,7 +75,12 @@ public interface DistributionOrderMapper {
*/ */
List<DistributionOrderNum> countGroupByStateForDistributor(@Param("sellerId")Long distributorId); List<DistributionOrderNum> countGroupByStateForDistributor(@Param("sellerId")Long distributorId);
/**
* 统计分销商各状态的订单数量
* @param distributorId
* @return
*/
List<DistributionOrderNum> countGroupByStateForCollector(@Param("sellerId")Long distributorId);
/** /**
* 介绍人产生的订单金额总和 * 介绍人产生的订单金额总和
......
...@@ -634,6 +634,10 @@ ...@@ -634,6 +634,10 @@
select state, count(distribution_order_id) as num from distribution_order where seller_id = #{sellerId} group by state select state, count(distribution_order_id) as num from distribution_order where seller_id = #{sellerId} group by state
</select> </select>
<select id="countGroupByStateForCollector" parameterType="java.lang.Long" resultType="com.wwdz.ch.db.bean.DistributionOrderNum">
select state, count(distribution_order_id) as num from distribution_order where seller_id = #{sellerId} and type =3 group by state
</select>
<select id="countGroupByStateForUser" parameterType="java.lang.Long" resultType="com.wwdz.ch.db.bean.DistributionOrderNum"> <select id="countGroupByStateForUser" parameterType="java.lang.Long" resultType="com.wwdz.ch.db.bean.DistributionOrderNum">
select state, count(distribution_order_id) as num from distribution_order where buyer_id = #{buyerId} group by state select state, count(distribution_order_id) as num from distribution_order where buyer_id = #{buyerId} group by state
</select> </select>
......
package com.wwdz.ch.wx.entity;
import com.xxdxxs.entity.Entity;
import lombok.Data;
import java.util.Date;
@Data
public class CollectorNoticeMsg implements Entity {
private String openId;
private String templetId;
/**
* 分销订单号
*/
private String distributionOrderId;
/**
* 介绍人
*/
private String introducerName;
/**
* 创建时间
*/
private Date createTime;
/**
* 消息内容
*/
private String content;
}
...@@ -190,10 +190,4 @@ public class DistributionOrderDetailVo implements Entity { ...@@ -190,10 +190,4 @@ public class DistributionOrderDetailVo implements Entity {
private String typeName; private String typeName;
/**
* 分佣比例
*/
private String introduceRebate;
} }
...@@ -214,6 +214,13 @@ public class UserServiceImpl implements UserService { ...@@ -214,6 +214,13 @@ public class UserServiceImpl implements UserService {
if (shopDTO != null && !ObjectUtils.isEmpty(shopDTO.getShopId()) && shopDTO.getPayStatus() == 1 && shopDTO.getCheckStatus() == 1 && shopDTO.getType() == 4) { if (shopDTO != null && !ObjectUtils.isEmpty(shopDTO.getShopId()) && shopDTO.getPayStatus() == 1 && shopDTO.getCheckStatus() == 1 && shopDTO.getType() == 4) {
result.put("isShop", true); result.put("isShop", true);
result.put("shopId", shopDTO.getShopId()); result.put("shopId", shopDTO.getShopId());
//在表中记录
ShopWhiteList shopWhiteList = new ShopWhiteList();
shopWhiteList.setUserId(dto.getUserId());
shopWhiteList.setShopId(dto.getUserId());
shopWhiteList.setCreateTime(new Date());
shopWhiteList.setIsValid(true);
shopWhiteListDao.insert(shopWhiteList);
} else { } else {
result.put("isShop", false); result.put("isShop", false);
} }
......
...@@ -27,7 +27,6 @@ import com.wwdz.ch.wx.entity.SignedNoticeMsg; ...@@ -27,7 +27,6 @@ import com.wwdz.ch.wx.entity.SignedNoticeMsg;
import com.wwdz.ch.wx.entity.vo.distribution.DistributionOrderDetailVo; import com.wwdz.ch.wx.entity.vo.distribution.DistributionOrderDetailVo;
import com.wwdz.ch.wx.entity.vo.distribution.DistributionOrderVo; import com.wwdz.ch.wx.entity.vo.distribution.DistributionOrderVo;
import com.wwdz.ch.wx.service.distribution.DistributionOrderService; import com.wwdz.ch.wx.service.distribution.DistributionOrderService;
import com.wwdz.ch.wx.service.distribution.DistributorProfitService;
import com.wwdz.ch.wx.service.distribution.SendMsgService; import com.wwdz.ch.wx.service.distribution.SendMsgService;
import com.xxdxxs.utils.DateUtils; import com.xxdxxs.utils.DateUtils;
import com.xxdxxs.utils.EntityMapper; import com.xxdxxs.utils.EntityMapper;
...@@ -111,9 +110,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -111,9 +110,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
@Autowired @Autowired
FollowFansRecordDao followFansRecordDao; FollowFansRecordDao followFansRecordDao;
@Autowired
DistributorProfitService distributorProfitService;
@Transactional @Transactional
@Override @Override
public Result createDistributionOrder(DistributionOrderRequestDto dto) { public Result createDistributionOrder(DistributionOrderRequestDto dto) {
...@@ -380,7 +376,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -380,7 +376,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
@Override @Override
@Transactional
public Result createCollectionOrder(DistributionOrderRequestDto dto) { public Result createCollectionOrder(DistributionOrderRequestDto dto) {
try { try {
Long itemId = dto.getItemId(); Long itemId = dto.getItemId();
...@@ -424,13 +419,8 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -424,13 +419,8 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
followFansRecordRequestDto.setFollowerId(supplierItem.getCreatorId()); followFansRecordRequestDto.setFollowerId(supplierItem.getCreatorId());
followFansRecordRequestDto.setFansId(dto.getBuyerId()); followFansRecordRequestDto.setFansId(dto.getBuyerId());
FollowFansRecord followFansRecord = followFansRecordDao.findOne(followFansRecordRequestDto); FollowFansRecord followFansRecord = followFansRecordDao.findOne(followFansRecordRequestDto);
long introducerId;
if (followFansRecord == null) {
introducerId = CommConsts.SYSTEM_SELLER;
} else {
//把介绍人作为该订单的分享链接字段的值 //把介绍人作为该订单的分享链接字段的值
introducerId = followFansRecord.getIntroducerId(); long introducerId = followFansRecord.getIntroducerId();
}
DistributionOrder distributionOrder = new DistributionOrder(); DistributionOrder distributionOrder = new DistributionOrder();
distributionOrder.setItemId(itemId); distributionOrder.setItemId(itemId);
distributionOrder.setItemNum(dto.getItemNum()); distributionOrder.setItemNum(dto.getItemNum());
...@@ -461,8 +451,7 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -461,8 +451,7 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
//介绍人分佣,自己推荐获得的订单无需计算介绍佣金 //介绍人分佣,自己推荐获得的订单无需计算介绍佣金
double introduceCost = 0; double introduceCost = 0;
if (supplierItem.getCreatorId() != introducerId) { if (supplierItem.getCreatorId() != introducerId) {
double rebate = distributorProfitService.getIntroduceRebate(followFansRecordRequestDto); introduceCost = distributionOrder.getAmount().doubleValue() * 0.03;
introduceCost = distributionOrder.getAmount().doubleValue() * rebate;
} }
distributorProfit.setDistributionOrderId(distributionOrderId); distributorProfit.setDistributionOrderId(distributionOrderId);
distributorProfit.setDistributorId(distributionOrder.getSellerId()); distributorProfit.setDistributorId(distributionOrder.getSellerId());
...@@ -951,7 +940,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -951,7 +940,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
} }
} }
//查询分销订单 //查询分销订单
dto.setType(DistributionEnum.DistributionTypeEnum.COLLECT.getCode());
List<DistributionOrder> distributionOrderList = distributionOrderDao.findByPage(dto); List<DistributionOrder> distributionOrderList = distributionOrderDao.findByPage(dto);
PageInfo pageInfo = new PageInfo<>(distributionOrderList); PageInfo pageInfo = new PageInfo<>(distributionOrderList);
for (DistributionOrder distributionOrder : distributionOrderList) { for (DistributionOrder distributionOrder : distributionOrderList) {
...@@ -1005,12 +993,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService { ...@@ -1005,12 +993,6 @@ public class DistributionOrderServiceImpl implements DistributionOrderService {
DistributorProfit distributorProfit = distributorProfitDao.findByIdOfDistributor(dto.getDistributionOrderId(), distributionOrder.getSellerId()); DistributorProfit distributorProfit = distributorProfitDao.findByIdOfDistributor(dto.getDistributionOrderId(), distributionOrder.getSellerId());
distributionOrderDetailVo.setChannelCost(PriceUtil.convertPriceFenToYuan(distributorProfit.getChannelCost())); distributionOrderDetailVo.setChannelCost(PriceUtil.convertPriceFenToYuan(distributorProfit.getChannelCost()));
distributionOrderDetailVo.setIntroduceCost(PriceUtil.convertPriceFenToYuan(distributorProfit.getIntroduceCost())); distributionOrderDetailVo.setIntroduceCost(PriceUtil.convertPriceFenToYuan(distributorProfit.getIntroduceCost()));
FollowFansRecordRequestDto followFansRecordRequestDto = new FollowFansRecordRequestDto();
followFansRecordRequestDto.setFollowerId(supplierItem.getCreatorId());
followFansRecordRequestDto.setFansId(dto.getBuyerId());
double rebate = distributorProfitService.getIntroduceRebate(followFansRecordRequestDto);
distributionOrderDetailVo.setIntroduceRebate(PriceUtil.convertPriceFromStr(String.valueOf(rebate)).toString());
distributionOrderDetailVo.setProfit(PriceUtil.convertPriceFenToYuan(distributorProfit.getProfit())); distributionOrderDetailVo.setProfit(PriceUtil.convertPriceFenToYuan(distributorProfit.getProfit()));
//一口价支付截止时间为下单半小时后,竞拍为24小时 //一口价支付截止时间为下单半小时后,竞拍为24小时
......
package com.wwdz.ch.wx.impl.distribution;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.PriceUtil;
import com.wwdz.ch.db.dao.FollowFansRecordDao;
import com.wwdz.ch.db.dao.distribution.DistributorProfitDao;
import com.wwdz.ch.db.domain.FollowFansRecord;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto;
import com.wwdz.ch.wx.service.distribution.DistributorProfitService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.Instant;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
@Service
public class DistributorProfitServiceImpl implements DistributorProfitService {
private static final Logger logger = LoggerFactory.getLogger(DistributorProfitServiceImpl.class);
@Autowired
DistributorProfitDao distributorProfitDao;
@Autowired
FollowFansRecordDao followFansRecordDao;
@Override
public Double getIntroduceRebate(FollowFansRecordRequestDto dto) {
double rebate = 0;
try {
FollowFansRecord followFansRecord = followFansRecordDao.findOne(dto);
if (followFansRecord == null) {
return rebate;
}
Date createTime = followFansRecord.getCreateTime();
Date now = new Date();
int year = 0;
for (int i = 1; i <= 3; i++) {
Calendar cal = Calendar.getInstance();
cal.setTime(createTime);
cal.add(Calendar.YEAR, i);
Date newDate = cal.getTime();
if (newDate.after(now)) {
year = i;
break;
}
}
if (year == 1) {
rebate = 0.03;
} else if (year == 2){
rebate = 0.03;
} else if (year == 3) {
rebate = 0.01;
}
return rebate;
} catch (Exception e) {
logger.error("获取介绍人当前的佣金比例 error : {}", e);
}
return rebate;
}
@Override
public Result getExpectAmount(SupplierItemRequestDto supplierItemRequestDto) {
try {
Long itemPrice = PriceUtil.convertPriceFromStr(supplierItemRequestDto.getDistributionPrice());
long channelServiceCost = PriceUtil.convertPriceFromStr(PriceUtil.convertDoubleToString(itemPrice.doubleValue() * 0.05));
long introduceCost = PriceUtil.convertPriceFromStr(PriceUtil.convertDoubleToString(itemPrice.doubleValue() * 0.03));
long profit = itemPrice - channelServiceCost - introduceCost;
Map<String, String> map = new HashMap<>();
map.put("channelServiceCost", PriceUtil.convertPriceFenToYuan(channelServiceCost));
map.put("introduceCost", PriceUtil.convertPriceFenToYuan(introduceCost));
map.put("profit", PriceUtil.convertPriceFenToYuan(profit));
return Result.success(map);
} catch (Exception e) {
logger.error("获取预计分佣金额 error : {}", e);
}
return Result.failed();
}
}
...@@ -146,6 +146,7 @@ public class SelfPageServiceImpl implements SelfPageService { ...@@ -146,6 +146,7 @@ public class SelfPageServiceImpl implements SelfPageService {
@Override @Override
public Result getCollectorPageInfo(SelfPageRequestDto dto) { public Result getCollectorPageInfo(SelfPageRequestDto dto) {
try { try {
......
...@@ -540,7 +540,6 @@ public class SendMsgServiceImpl implements SendMsgService { ...@@ -540,7 +540,6 @@ public class SendMsgServiceImpl implements SendMsgService {
return Result.failed(); return Result.failed();
} }
@Override @Override
public String getOpenIdByUserId(long userId) { public String getOpenIdByUserId(long userId) {
//先查询寄售单用户信息 //先查询寄售单用户信息
...@@ -557,6 +556,7 @@ public class SendMsgServiceImpl implements SendMsgService { ...@@ -557,6 +556,7 @@ public class SendMsgServiceImpl implements SendMsgService {
} }
/** /**
* 商品上新通知 * 商品上新通知
* @param auctionOfferNoticeMsg * @param auctionOfferNoticeMsg
...@@ -703,9 +703,4 @@ public class SendMsgServiceImpl implements SendMsgService { ...@@ -703,9 +703,4 @@ public class SendMsgServiceImpl implements SendMsgService {
} }
return Result.failed(); return Result.failed();
} }
@Override
public Result newOrderNoticeMsg(FollowFansMsg followFansMsg) {
return null;
}
} }
...@@ -11,6 +11,7 @@ import com.wwdz.ch.core.type.Result; ...@@ -11,6 +11,7 @@ import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.CacheUtil; import com.wwdz.ch.core.util.CacheUtil;
import com.wwdz.ch.core.util.MediaUtil; import com.wwdz.ch.core.util.MediaUtil;
import com.wwdz.ch.core.util.PriceUtil; import com.wwdz.ch.core.util.PriceUtil;
import com.wwdz.ch.core.util.StringUtil;
import com.wwdz.ch.db.dao.CollectionBookSortDao; import com.wwdz.ch.db.dao.CollectionBookSortDao;
import com.wwdz.ch.db.dao.FollowFansRecordDao; import com.wwdz.ch.db.dao.FollowFansRecordDao;
import com.wwdz.ch.db.dao.SwitchDao; import com.wwdz.ch.db.dao.SwitchDao;
...@@ -18,7 +19,6 @@ import com.wwdz.ch.db.dao.distribution.*; ...@@ -18,7 +19,6 @@ import com.wwdz.ch.db.dao.distribution.*;
import com.wwdz.ch.db.domain.CollectionBookSort; import com.wwdz.ch.db.domain.CollectionBookSort;
import com.wwdz.ch.db.domain.FollowFansRecord; import com.wwdz.ch.db.domain.FollowFansRecord;
import com.wwdz.ch.db.domain.Switch; import com.wwdz.ch.db.domain.Switch;
import com.wwdz.ch.db.domain.User;
import com.wwdz.ch.db.domain.distribution.*; import com.wwdz.ch.db.domain.distribution.*;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto; import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.db.dto.request.distribution.*; import com.wwdz.ch.db.dto.request.distribution.*;
...@@ -60,6 +60,8 @@ public class SupplierItemServiceImpl implements SupplierItemService { ...@@ -60,6 +60,8 @@ public class SupplierItemServiceImpl implements SupplierItemService {
private static final Logger logger = LoggerFactory.getLogger(SupplierItemServiceImpl.class); private static final Logger logger = LoggerFactory.getLogger(SupplierItemServiceImpl.class);
private final static Long SYSTEM_ACCOUNT = 8888888888L;
@Autowired @Autowired
SupplierItemDao supplierItemDao; SupplierItemDao supplierItemDao;
...@@ -186,7 +188,7 @@ public class SupplierItemServiceImpl implements SupplierItemService { ...@@ -186,7 +188,7 @@ public class SupplierItemServiceImpl implements SupplierItemService {
if (StringUtils.isEmpty(shareRecordId) && dto.getId() == null) { if (StringUtils.isEmpty(shareRecordId) && dto.getId() == null) {
return Result.failed("商品信息为空"); return Result.failed("商品信息为空");
} else if (StringUtils.hasLength(shareRecordId)) { } else if (StringUtils.hasLength(shareRecordId)) {
if (!shareRecordId.contains(CommConsts.SYSTEM_ACCOUNT.toString())) { if (!shareRecordId.contains(SYSTEM_ACCOUNT.toString())) {
distributorShareRecord = distributorShareRecordDao.findById(shareRecordId); distributorShareRecord = distributorShareRecordDao.findById(shareRecordId);
if (distributorShareRecord == null || !distributorShareRecord.getEnabled()) { if (distributorShareRecord == null || !distributorShareRecord.getEnabled()) {
return Result.failed("该商品已下架"); return Result.failed("该商品已下架");
...@@ -573,9 +575,9 @@ public class SupplierItemServiceImpl implements SupplierItemService { ...@@ -573,9 +575,9 @@ public class SupplierItemServiceImpl implements SupplierItemService {
supplierItem.setVideos(getVideosImage(dto.getVideos())); supplierItem.setVideos(getVideosImage(dto.getVideos()));
} }
supplierItem.setSort(1); supplierItem.setSort(1);
supplierItem.setBuyLimitNum(-1); supplierItem.setBuyLimitNum(1);
supplierItem.setStock(dto.getStock()); supplierItem.setStock(1);
supplierItem.setIsOnSale(dto.getIsOnSale()); supplierItem.setIsOnSale(true);
Date now = new Date(); Date now = new Date();
supplierItem.setCreateTime(now); supplierItem.setCreateTime(now);
supplierItem.setUpdateTime(now); supplierItem.setUpdateTime(now);
...@@ -719,11 +721,9 @@ public class SupplierItemServiceImpl implements SupplierItemService { ...@@ -719,11 +721,9 @@ public class SupplierItemServiceImpl implements SupplierItemService {
supplierItemVo.setItemId(supplierItem.getId()); supplierItemVo.setItemId(supplierItem.getId());
supplierItemVo.setDistributionPrice(PriceUtil.convertPriceFenToYuan(supplierItem.getDistributionPrice())); supplierItemVo.setDistributionPrice(PriceUtil.convertPriceFenToYuan(supplierItem.getDistributionPrice()));
supplierItemVo.setHomePageImage(MediaUtil.getHomePageImage(supplierItem.getImages(), supplierItem.getVideos())); supplierItemVo.setHomePageImage(MediaUtil.getHomePageImage(supplierItem.getImages(), supplierItem.getVideos()));
User creator = cacheUtil.appletUserInfoCache.get(supplierItem.getCreatorId()).get(); supplierItemVo.setCreatorName(cacheUtil.getAppletUserNameById(supplierItem.getCreatorId()));
supplierItemVo.setCreatorName(creator.getNickname()); String avatar = cacheUtil.getAppletUserById(supplierItem.getCreatorId()).getAvatar();
String avatar = creator.getAvatar();
supplierItemVo.setCreatorAvatar(StringUtils.isEmpty(avatar) ? CommConsts.DEFAULT_AVATAR_URL : avatar); supplierItemVo.setCreatorAvatar(StringUtils.isEmpty(avatar) ? CommConsts.DEFAULT_AVATAR_URL : avatar);
supplierItemVo.setCreatorProfile(creator.getProfile());
//查询藏品被收藏的次数 //查询藏品被收藏的次数
long countNum = itemCollectedRecordDao.countByItemId(itemId); long countNum = itemCollectedRecordDao.countByItemId(itemId);
supplierItemVo.setCollectedNum((int) countNum); supplierItemVo.setCollectedNum((int) countNum);
......
...@@ -3,7 +3,9 @@ package com.wwdz.ch.wx.job; ...@@ -3,7 +3,9 @@ package com.wwdz.ch.wx.job;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.wwdz.ch.core.consts.CommConsts; import com.wwdz.ch.core.consts.CommConsts;
import com.wwdz.ch.core.consts.DistributionEnum; import com.wwdz.ch.core.consts.DistributionEnum;
import com.wwdz.ch.core.notify.AliSmsSender;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.PriceUtil;
import com.wwdz.ch.db.dao.FollowFansRecordDao; import com.wwdz.ch.db.dao.FollowFansRecordDao;
import com.wwdz.ch.db.dao.distribution.*; import com.wwdz.ch.db.dao.distribution.*;
import com.wwdz.ch.db.domain.FollowFansRecord; import com.wwdz.ch.db.domain.FollowFansRecord;
...@@ -12,6 +14,7 @@ import com.wwdz.ch.db.dto.request.BaseRequestDto; ...@@ -12,6 +14,7 @@ import com.wwdz.ch.db.dto.request.BaseRequestDto;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto; import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto; import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto;
import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto; import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto;
import com.wwdz.ch.wx.api.WxAppletApi;
import com.wwdz.ch.wx.service.distribution.DistributionOrderService; import com.wwdz.ch.wx.service.distribution.DistributionOrderService;
import com.xxdxxs.utils.DateUtils; import com.xxdxxs.utils.DateUtils;
import com.xxdxxs.utils.StringUtils; import com.xxdxxs.utils.StringUtils;
...@@ -55,10 +58,16 @@ public class NewItemNoticeJob { ...@@ -55,10 +58,16 @@ public class NewItemNoticeJob {
@Autowired @Autowired
ShopWhiteListDao shopWhiteListDao; ShopWhiteListDao shopWhiteListDao;
@Autowired
WxAppletApi wxAppletApi;
@Autowired
AliSmsSender aliSmsSender;
/** /**
* 每天晚上八点执行一次 * 每天晚上八点执行一次
*/ */
// @Scheduled(cron = "0 0 20 * * ?") @Scheduled(cron = "0 0 20 * * ?")
public void execute() { public void execute() {
RLock lock = redissonClient.getLock(NEW_ITEM_NOTICE_KEY); RLock lock = redissonClient.getLock(NEW_ITEM_NOTICE_KEY);
if (!lock.tryLock()) { if (!lock.tryLock()) {
...@@ -91,6 +100,10 @@ public class NewItemNoticeJob { ...@@ -91,6 +100,10 @@ public class NewItemNoticeJob {
for (ShopWhiteList shopWhiteList : shopWhiteLists) { for (ShopWhiteList shopWhiteList : shopWhiteLists) {
//发送模板消息 //发送模板消息
long distributorId = shopWhiteList.getUserId(); long distributorId = shopWhiteList.getUserId();
String url = wxAppletApi.getUrlLink("/pages/salePool/index",null);
//发短信
String msg = "分销中心选品池已上新, " + "请前往"+ url + "查看";
aliSmsSender.sendSms(distributorId, msg);
} }
} }
...@@ -122,7 +135,9 @@ public class NewItemNoticeJob { ...@@ -122,7 +135,9 @@ public class NewItemNoticeJob {
for (FollowFansRecord followFansRecord : followFansRecordList) { for (FollowFansRecord followFansRecord : followFansRecordList) {
//发送通知 //发送通知
long fansId = followFansRecord.getFansId(); long fansId = followFansRecord.getFansId();
String url = wxAppletApi.getUrlLink("/pages/home/index",null);
String msg = "您关注的用户发布了新的藏品," + "请前往"+ url + "查看";
// aliSmsSender.sendSms(fansId, msg);
} }
} }
} }
......
package com.wwdz.ch.wx.service.distribution;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto;
public interface DistributorProfitService {
/**
* 获取介绍人当前的佣金比例
* @param dto
* @return
*/
Double getIntroduceRebate(FollowFansRecordRequestDto dto);
/**
* 获取预计分佣金额
* @param dto
* @return
*/
Result getExpectAmount(SupplierItemRequestDto supplierItemRequestDto);
}
...@@ -57,7 +57,7 @@ public interface SendMsgService { ...@@ -57,7 +57,7 @@ public interface SendMsgService {
* @param auctionOfferNoticeMsg * @param auctionOfferNoticeMsg
* @return * @return
*/ */
Result auctionEndMsg(AuctionOfferNoticeMsg auctionOfferNoticeMsg); Result auctionEndMsg( AuctionOfferNoticeMsg auctionOfferNoticeMsg);
/** /**
...@@ -74,12 +74,5 @@ public interface SendMsgService { ...@@ -74,12 +74,5 @@ public interface SendMsgService {
Result followNoticeMsg(FollowFansMsg followFansMsg); Result followNoticeMsg(FollowFansMsg followFansMsg);
/**
* 通知被关注者
* @return
*/
Result newOrderNoticeMsg(FollowFansMsg followFansMsg);
String getOpenIdByUserId(long userId); String getOpenIdByUserId(long userId);
} }
...@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON; ...@@ -4,7 +4,6 @@ import com.alibaba.fastjson.JSON;
import com.wwdz.ch.core.consts.ResultCode; import com.wwdz.ch.core.consts.ResultCode;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto; import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto;
import com.wwdz.ch.wx.entity.request.QueryPriceRequestDto; import com.wwdz.ch.wx.entity.request.QueryPriceRequestDto;
import com.wwdz.ch.wx.service.FollowFansRecordService; import com.wwdz.ch.wx.service.FollowFansRecordService;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
...@@ -110,25 +109,4 @@ public class FollowFansRecordController { ...@@ -110,25 +109,4 @@ public class FollowFansRecordController {
} }
@ApiOperation(value = "查询分佣明细")
@PostMapping("/introduceAmountDetail")
public Result introduceAmountDetail(@RequestBody FollowFansRecordRequestDto dto) {
logger.info("查询分佣明细,请求参数:{}", JSON.toJSONString(dto));
if (dto.getFollowerId() == null || dto.getIntroducerId() == null) {
return Result.failed(ResultCode.PARAM_ERROR);
}
return followFansRecordService.introduceAmountDetail(dto);
}
@ApiOperation(value = "查询分佣订单明细")
@PostMapping("/introduceOrderDetail")
public Result introduceOrderDetail(@RequestBody DistributionOrderRequestDto dto) {
logger.info("查询分佣订单明细,请求参数:{}", JSON.toJSONString(dto));
if (StringUtils.isEmpty(dto.getDistributionOrderId())) {
return Result.failed(ResultCode.PARAM_ERROR);
}
return followFansRecordService.introduceOrderDetail(dto);
}
} }
...@@ -234,35 +234,6 @@ public class DistributionOrderController { ...@@ -234,35 +234,6 @@ public class DistributionOrderController {
} }
@ApiOperation(value = "藏馆订单列表查询")
@PostMapping("/findOrderOfCollector")
public Result findOrderOfCollector(@RequestBody DistributionOrderRequestDto dto) {
logger.info("藏馆订单列表查询,请求参数:{}", JSON.toJSONString(dto));
Validator validator = new Validator(FormHandler.ofEntity(dto));
validator.set("sellerId", "卖家id").must().number()
.end();
if (!validator.isValid()) {
return Result.failed(validator.getErrorInfo());
}
return distributionOrderService.findOrderOfCollector(dto);
}
@ApiOperation(value = "查询藏馆订单详情")
@PostMapping("/findOrderDetailOfCollector")
public Result findOrderDetailOfCollector(@RequestBody DistributionOrderRequestDto dto) {
logger.info("查询藏馆订单详情,请求参数:{}", JSON.toJSONString(dto));
Validator validator = new Validator(FormHandler.ofEntity(dto));
validator.set("distributionOrderId", "订单号").must().string()
.end();
if (!validator.isValid()) {
return Result.failed(validator.getErrorInfo());
}
return distributionOrderService.findOrderDetailOfCollector(dto);
}
@ApiOperation(value = "订单退款") @ApiOperation(value = "订单退款")
@PostMapping("/refund") @PostMapping("/refund")
public Result refund(@RequestBody DistributionOrderRequestDto dto) { public Result refund(@RequestBody DistributionOrderRequestDto dto) {
......
...@@ -2,6 +2,7 @@ package com.wwdz.ch.wx.web.distribution; ...@@ -2,6 +2,7 @@ package com.wwdz.ch.wx.web.distribution;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto;
import com.wwdz.ch.wx.entity.request.SelfPageRequestDto; import com.wwdz.ch.wx.entity.request.SelfPageRequestDto;
import com.wwdz.ch.wx.service.distribution.SelfPageService; import com.wwdz.ch.wx.service.distribution.SelfPageService;
import com.xxdxxs.service.FormHandler; import com.xxdxxs.service.FormHandler;
...@@ -12,6 +13,7 @@ import org.slf4j.LoggerFactory; ...@@ -12,6 +13,7 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.ws.rs.GET;
/** /**
* 个人主页 * 个人主页
...@@ -54,21 +56,6 @@ public class SelfPageController { ...@@ -54,21 +56,6 @@ public class SelfPageController {
} }
@ApiOperation(value = "查询藏家个人主页信息")
@PostMapping("/getCollectorPageInfo")
public Result getCollectorPageInfo(@RequestBody SelfPageRequestDto dto) {
logger.info("查询藏家个人主页信息,请求参数:{}", JSON.toJSONString(dto));
Validator validator = new Validator(FormHandler.ofEntity(dto));
validator.set("userId", "用户id").must().number()
.end();
if (!validator.isValid()) {
return Result.failed(validator.getErrorInfo());
}
return selfPageService.getCollectorPageInfo(dto);
}
@ApiOperation(value = "分销商查询自己购买的订单信息") @ApiOperation(value = "分销商查询自己购买的订单信息")
@PostMapping("/getMyOrders") @PostMapping("/getMyOrders")
public Result getMyOrders(@RequestBody SelfPageRequestDto dto) { public Result getMyOrders(@RequestBody SelfPageRequestDto dto) {
......
...@@ -5,7 +5,6 @@ import com.wwdz.ch.core.consts.ResultCode; ...@@ -5,7 +5,6 @@ import com.wwdz.ch.core.consts.ResultCode;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto; import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto;
import com.wwdz.ch.wx.entity.request.MessageRequestDto; import com.wwdz.ch.wx.entity.request.MessageRequestDto;
import com.wwdz.ch.wx.service.distribution.DistributorProfitService;
import com.wwdz.ch.wx.service.distribution.SupplierItemService; import com.wwdz.ch.wx.service.distribution.SupplierItemService;
import com.xxdxxs.service.FormHandler; import com.xxdxxs.service.FormHandler;
import com.xxdxxs.utils.StringUtils; import com.xxdxxs.utils.StringUtils;
...@@ -28,9 +27,6 @@ public class SupplierItemController { ...@@ -28,9 +27,6 @@ public class SupplierItemController {
@Autowired @Autowired
SupplierItemService supplierItemService; SupplierItemService supplierItemService;
@Autowired
DistributorProfitService distributorProfitService;
@ApiOperation(value = "查询供货商品列表") @ApiOperation(value = "查询供货商品列表")
@PostMapping("/findList") @PostMapping("/findList")
...@@ -142,12 +138,4 @@ public class SupplierItemController { ...@@ -142,12 +138,4 @@ public class SupplierItemController {
logger.info("查询主页列表,请求参数:{}", JSON.toJSONString(dto)); logger.info("查询主页列表,请求参数:{}", JSON.toJSONString(dto));
return supplierItemService.findHomePage(dto); return supplierItemService.findHomePage(dto);
} }
@ApiOperation(value = "获取商品预计分佣金额")
@PostMapping("/getExpectAmount")
public Result getExpectAmount(@RequestBody SupplierItemRequestDto dto) {
logger.info("获取商品预计分佣金额,请求参数:{}", JSON.toJSONString(dto));
return distributorProfitService.getExpectAmount(dto);
}
} }
...@@ -57,8 +57,6 @@ public class ChatApiTest { ...@@ -57,8 +57,6 @@ public class ChatApiTest {
@Test @Test
public void chatWithModel() { public void chatWithModel() {
String question = "什么是站洋,请回答钱币相关的内容"; String question = "什么是站洋,请回答钱币相关的内容";
chatApi.chatWithModel(question); chatApi.chatWithModel(question);
} }
......
package com.wwdz.ch.wx.impl; package com.wwdz.ch.wx.impl;
import com.alibaba.dubbo.config.annotation.Reference; import com.alibaba.dubbo.config.annotation.Reference;
import com.wwdz.ch.db.dao.FollowFansRecordDao;
import com.wwdz.ch.db.domain.FollowFansRecord;
import com.wwdz.ch.db.dto.request.FollowFansRecordRequestDto;
import com.wwdz.ch.wx.Application; import com.wwdz.ch.wx.Application;
import com.wwdz.mall.common.vo.response.CloudServerResponse; import com.wwdz.mall.common.vo.response.CloudServerResponse;
...@@ -17,14 +14,9 @@ import org.junit.Test; ...@@ -17,14 +14,9 @@ import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@SpringBootTest(classes= Application.class) @SpringBootTest(classes= Application.class)
@RunWith(SpringJUnit4ClassRunner.class) @RunWith(SpringJUnit4ClassRunner.class)
@EnableDubbo(scanBasePackages = {"com.wwdz.ch.wx"}) @EnableDubbo(scanBasePackages = {"com.wwdz.ch.wx"})
...@@ -35,24 +27,14 @@ public class ShopServiceImplTest { ...@@ -35,24 +27,14 @@ public class ShopServiceImplTest {
@Reference @Reference
ShopReadService shopReadService; ShopReadService shopReadService;
@Autowired
FollowFansRecordDao followFansRecordDao;
@Test @Test
public void test() { public void test() {
FollowFansRecordRequestDto followFansRecordRequestDto = new FollowFansRecordRequestDto(); long userId = 61074671;
List<Long> creatorIds = Arrays.asList(61074146L, 61091901L, 42192256L, 291997L);
followFansRecordRequestDto.setFollowerIdList(creatorIds);
List<FollowFansRecord> followFansRecordList = followFansRecordDao.findDistinctFans(followFansRecordRequestDto);
logger.info("个数 = {}", followFansRecordList.size());
logger.info("followFansRecordList = {}", followFansRecordList);
/* long userId = 61074671;
ShopQueryOption option = new ShopQueryOption(); ShopQueryOption option = new ShopQueryOption();
option.setUserId(userId); option.setUserId(userId);
CloudServerResponse<ShopDTO> cloudServerResponse = shopReadService.getShopByUserId(userId, option); CloudServerResponse<ShopDTO> cloudServerResponse = shopReadService.getShopByUserId(userId, option);
logger.info("cloudServerResponse = {}", cloudServerResponse); logger.info("cloudServerResponse = {}", cloudServerResponse);
logger.info("result = {}", JsonUtils.from(cloudServerResponse.getResult()));*/ logger.info("result = {}", JsonUtils.from(cloudServerResponse.getResult()));
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment