Commit 7bcff6ba authored by shiyu's avatar shiyu

藏家商品转团购

parent cde2136e
package com.wwdz.ch.admin.impl;
import com.wwdz.ch.admin.service.SysGroupPurchaseService;
import com.wwdz.ch.core.consts.AuctionEnum;
import com.wwdz.ch.core.consts.DistributionEnum;
import com.wwdz.ch.core.consts.GroupPurchaseEnum;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.PriceUtil;
import com.wwdz.ch.db.dao.distribution.GroupPurchaseConfigDao;
import com.wwdz.ch.db.dao.distribution.GroupPurchaseDiscountDao;
import com.wwdz.ch.db.dao.distribution.SupplierItemDao;
import com.wwdz.ch.db.domain.distribution.AuctionConfig;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseConfig;
import com.wwdz.ch.db.domain.distribution.SupplierItem;
import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto;
import com.xxdxxs.utils.DateUtils;
import com.xxdxxs.utils.EntityMapper;
import com.xxdxxs.utils.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import java.time.Duration;
import java.time.Instant;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@Service
public class SysGroupPurchaseServiceImpl implements SysGroupPurchaseService {
private static final Logger logger = LoggerFactory.getLogger(SysGroupPurchaseServiceImpl.class);
@Autowired
GroupPurchaseDiscountDao groupPurchaseDiscountDao;
@Autowired
GroupPurchaseConfigDao groupPurchaseConfigDao;
@Autowired
SupplierItemDao supplierItemDao;
@Override
@Transactional(rollbackFor = Exception.class)
public Result collectorItemConvertToGroupPurchase(SupplierItemRequestDto dto) {
try {
Date now = new Date();
List<String> idList = Arrays.asList(dto.getItemIdsStr().split(","));
for (String id : idList) {
long itemId = Long.valueOf(id);
SupplierItem oldItem = supplierItemDao.findById(itemId);
if (supplierItemDao.isSupplierIdExisted(itemId)) {
continue;
}
//复制一份藏家藏品的数据,设置为团购品
SupplierItem supplierItem = new SupplierItem();
EntityMapper.copyAttribute(oldItem, supplierItem);
//该字段设置为原来藏品的id,用来溯源该拍品是由哪个藏品转换而来
supplierItem.setSupplierId(itemId);
supplierItem.setId(null);
supplierItem.setStock(oldItem.getStock());
supplierItem.setIsOnSale(false);
supplierItem.setIsDeleted(false);
supplierItem.setCreateTime(now);
supplierItem.setUpdateTime(now);
supplierItem.setType(DistributionEnum.DistributionTypeEnum.GROUP_PURCHASE.getCode());
supplierItem.setIsAbleSale(true);
long newItemId = supplierItemDao.insert(supplierItem);
//新增默认团购配置
GroupPurchaseConfig groupPurchaseConfig = new GroupPurchaseConfig();
groupPurchaseConfig.setItemId(newItemId);
groupPurchaseConfig.setCreatorId(oldItem.getCreatorId());
groupPurchaseConfig.setState(GroupPurchaseEnum.ItemStateEnum.NOT_START.getCode());
groupPurchaseConfig.setIsValid(true);
groupPurchaseConfig.setIsDeal(false);
groupPurchaseConfig.setCreateTime(now);
groupPurchaseConfig.setUpdateTime(now);
groupPurchaseConfigDao.insert(groupPurchaseConfig);
}
return Result.success();
} catch (Exception e) {
logger.error("藏品上团购失败 error : {}", e);
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
}
return Result.failed();
}
}
...@@ -36,10 +36,7 @@ import java.math.BigDecimal; ...@@ -36,10 +36,7 @@ import java.math.BigDecimal;
import java.net.URL; import java.net.URL;
import java.time.Duration; import java.time.Duration;
import java.time.Instant; import java.time.Instant;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
...@@ -89,6 +86,12 @@ public class SysSupplierItemServiceImpl implements SysSupplierItemService { ...@@ -89,6 +86,12 @@ public class SysSupplierItemServiceImpl implements SysSupplierItemService {
@Autowired @Autowired
SpecialPerformanceConfigDao specialPerformanceConfigDao; SpecialPerformanceConfigDao specialPerformanceConfigDao;
@Autowired
GroupPurchaseConfigDao groupPurchaseConfigDao;
@Autowired
GroupPurchaseDiscountDao groupPurchaseDiscountDao;
@Override @Override
@Transactional @Transactional
public Result create(SupplierItemRequestDto dto) { public Result create(SupplierItemRequestDto dto) {
...@@ -342,6 +345,16 @@ public class SysSupplierItemServiceImpl implements SysSupplierItemService { ...@@ -342,6 +345,16 @@ public class SysSupplierItemServiceImpl implements SysSupplierItemService {
supplierItemVo.setStartPrice(PriceUtil.convertPriceFenToYuan(auctionConfig.getStartPrice())); supplierItemVo.setStartPrice(PriceUtil.convertPriceFenToYuan(auctionConfig.getStartPrice()));
supplierItemVo.setAddExtent(PriceUtil.convertPriceFenToYuan(auctionConfig.getAddExtent())); supplierItemVo.setAddExtent(PriceUtil.convertPriceFenToYuan(auctionConfig.getAddExtent()));
supplierItemVo.setEstimatedPrice(PriceUtil.convertPriceFenToYuan(auctionConfig.getEstimatedPrice())); supplierItemVo.setEstimatedPrice(PriceUtil.convertPriceFenToYuan(auctionConfig.getEstimatedPrice()));
} else if (supplierItem.getType() == DistributionEnum.DistributionTypeEnum.GROUP_PURCHASE.getCode()) {
//团购商品查询相关配置和优惠信息
GroupPurchaseConfig groupPurchaseConfig = groupPurchaseConfigDao.findByItemId(itemId);
supplierItemVo.setSalePrice(PriceUtil.convertPriceFenToYuan(groupPurchaseConfig.getPrice()));
supplierItemVo.setDeposit(PriceUtil.convertPriceFenToYuan(groupPurchaseConfig.getDeposit()));
supplierItemVo.setGroupPurchaseStartTime(DateUtils.toString(groupPurchaseConfig.getStartTime()));
supplierItemVo.setGroupPurchaseEndTime(DateUtils.toString(groupPurchaseConfig.getEndTime()));
List<GroupPurchaseDiscount> discountList = groupPurchaseDiscountDao.findByItemId(itemId);
supplierItemVo.setDiscountList(discountList);
} }
return Result.success(supplierItemVo); return Result.success(supplierItemVo);
} catch (Exception e) { } catch (Exception e) {
...@@ -378,10 +391,37 @@ public class SysSupplierItemServiceImpl implements SysSupplierItemService { ...@@ -378,10 +391,37 @@ public class SysSupplierItemServiceImpl implements SysSupplierItemService {
auctionConfig.setIsDeal(false); auctionConfig.setIsDeal(false);
} }
auctionConfigDao.update(auctionConfig); auctionConfigDao.update(auctionConfig);
//调整专场里商品的当前价 } else if (dto.getType() == DistributionEnum.DistributionTypeEnum.GROUP_PURCHASE.getCode()) {
// List<SpecialPerformanceConfig> specialPerformanceConfigList = specialPerformanceConfigDao.findList(); //设置团购商品
// specialPerformanceConfigDao.update(); GroupPurchaseConfig groupPurchaseConfig = groupPurchaseConfigDao.findByItemId(dto.getId());
groupPurchaseConfig.setPrice(PriceUtil.convertPriceFromStr(dto.getSalePrice()));
groupPurchaseConfig.setDeposit(PriceUtil.convertPriceFromStr(dto.getDeposit()));
groupPurchaseConfig.setSupplyPrice(PriceUtil.convertPriceFromStr(dto.getSupplyPrice()));
groupPurchaseConfig.setStartTime(DateUtils.parseString(dto.getGroupPurchaseStartTime()));
groupPurchaseConfig.setEndTime(DateUtils.parseString(dto.getGroupPurchaseEndTime()));
groupPurchaseConfigDao.update(groupPurchaseConfig);
//设置团购商品优惠
//先删除之前的优惠信息,再插入新的
if (groupPurchaseDiscountDao.isExisted(dto.getId())) {
groupPurchaseDiscountDao.delete(dto.getId());
}
String discountJson = dto.getDiscountJson();
List<Map<String, Object>> list = JsonUtils.toMapList(discountJson);
for (Map map : list) {
int requireNum = Integer.valueOf(map.get("requireNum").toString());
String rebate = map.get("rebate").toString();
GroupPurchaseDiscount groupPurchaseDiscount = new GroupPurchaseDiscount();
groupPurchaseDiscount.setItemId(dto.getId());
groupPurchaseDiscount.setCreateTime(new Date());
groupPurchaseDiscount.setUpdateTime(new Date());
groupPurchaseDiscount.setRequireNum(requireNum);
groupPurchaseDiscount.setRebate(new BigDecimal(rebate));
groupPurchaseDiscount.setState(GroupPurchaseEnum.StateEnum.VALID.getCode());
groupPurchaseDiscountDao.insert(groupPurchaseDiscount);
}
} }
long oldDistributionPrice = oldSupplierItem.getDistributionPrice(); long oldDistributionPrice = oldSupplierItem.getDistributionPrice();
if (oldDistributionPrice != PriceUtil.convertPriceFromStr(dto.getDistributionPrice())) { if (oldDistributionPrice != PriceUtil.convertPriceFromStr(dto.getDistributionPrice())) {
//把该商品所关联的所有分享链接都改为无效 //把该商品所关联的所有分享链接都改为无效
......
package com.wwdz.ch.admin.service;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.db.dto.request.distribution.SupplierItemRequestDto;
public interface SysGroupPurchaseService {
/**
* 用户藏品上团购
* @param dto
* @return
*/
Result collectorItemConvertToGroupPurchase(SupplierItemRequestDto dto);
}
...@@ -88,6 +88,12 @@ public interface CommConsts { ...@@ -88,6 +88,12 @@ public interface CommConsts {
*/ */
public final static String SETTLEMENT_PREFIX = "ST"; public final static String SETTLEMENT_PREFIX = "ST";
/**
* 团购支付定金交易号前缀
*/
public final static String GROUPPURCHASE_DEPOSIT_PREFIX = "GP";
/** /**
* 平台收货地址 * 平台收货地址
*/ */
......
...@@ -7,6 +7,7 @@ public class DistributionEnum { ...@@ -7,6 +7,7 @@ public class DistributionEnum {
*/ */
public enum DistributionOrderStateEnum { public enum DistributionOrderStateEnum {
PRE_PAY(1, "待付款"), PRE_PAY(1, "待付款"),
PRE_SALE(5, "预售中"),
PRE_SEND(10, "待发货"), PRE_SEND(10, "待发货"),
PRE_SIGNED(20, "待收货"), PRE_SIGNED(20, "待收货"),
AFTER_SALE(30, "售后中"), AFTER_SALE(30, "售后中"),
...@@ -55,6 +56,7 @@ public class DistributionEnum { ...@@ -55,6 +56,7 @@ public class DistributionEnum {
COLLECT(3, "藏品"), COLLECT(3, "藏品"),
DISCOUNT(4, "折扣品"), DISCOUNT(4, "折扣品"),
AUCTION_PERFORMANCE(5, "竞拍专场"), AUCTION_PERFORMANCE(5, "竞拍专场"),
GROUP_PURCHASE(6, "团购"),
; ;
private int code; private int code;
...@@ -169,6 +171,7 @@ public class DistributionEnum { ...@@ -169,6 +171,7 @@ public class DistributionEnum {
PAGE(2, "个人藏馆"), PAGE(2, "个人藏馆"),
SYSTEM_ITEM(3, "平台藏品"), SYSTEM_ITEM(3, "平台藏品"),
COLLECTOR_AUCTION_ITEM(4, "藏家拍卖品"), COLLECTOR_AUCTION_ITEM(4, "藏家拍卖品"),
GROUPPURASE_ITEM(5, "团购商品"),
; ;
private int code; private int code;
......
package com.wwdz.ch.core.consts;
/**
* 团购相关的枚举
*/
public class GroupPurchaseEnum {
public enum StateEnum {
INVALID(0, "无效"),
VALID(1, "有效"),
;
private int code;
private String des;
StateEnum(int code, String des) {
this.code = code;
this.des = des;
}
public static String getNameByCode(int code) {
for (GroupPurchaseEnum.StateEnum stateEnum : GroupPurchaseEnum.StateEnum.values()) {
if (code == stateEnum.getCode()) {
return stateEnum.getDes();
}
}
return null;
}
public int getCode() {
return code;
}
public String getDes() {
return des;
}
}
public enum ItemStateEnum {
NOT_START(0, "未开始"),
PROCESSING(1, "进行中"),
END(2, "已结束"),
;
private int code;
private String des;
ItemStateEnum(int code, String des) {
this.code = code;
this.des = des;
}
public static String getNameByCode(int code) {
for (GroupPurchaseEnum.ItemStateEnum stateEnum : GroupPurchaseEnum.ItemStateEnum.values()) {
if (code == stateEnum.getCode()) {
return stateEnum.getDes();
}
}
return null;
}
public int getCode() {
return code;
}
public String getDes() {
return des;
}
}
}
package com.wwdz.ch.core.entity; package com.wwdz.ch.core.entity;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseDiscount;
import com.xxdxxs.entity.Entity; import com.xxdxxs.entity.Entity;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
...@@ -54,6 +55,27 @@ public class SupplierItemVo implements Entity { ...@@ -54,6 +55,27 @@ public class SupplierItemVo implements Entity {
*/ */
private String salePrice; private String salePrice;
/**
* 团购商品定金
* 前端传过来的单位是元,后台要处理为分
*/
private String deposit;
/**
* 团购开始时间
*/
private String groupPurchaseStartTime;
/**
* 团购结束时间
*/
private String groupPurchaseEndTime;
/**
* 团购折扣信息
*/
private List<GroupPurchaseDiscount> discountList;
/** /**
* 库存 * 库存
*/ */
......
package com.wwdz.ch.db.dao.distribution;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseConfig;
public interface GroupPurchaseConfigDao {
/**
* 插入新记录
*
* @param groupPurchaseConfig
* @return
*/
int insert(GroupPurchaseConfig groupPurchaseConfig);
/**
* 更新团购配置
*
* @param groupPurchaseConfig
* @return
*/
int update(GroupPurchaseConfig groupPurchaseConfig);
/**
* 更新团购配置
*
* @param groupPurchaseConfig
* @return
*/
int updateByItemId(GroupPurchaseConfig groupPurchaseConfig);
/**
* 更新状态
* @param itemId
* @param state
* @return
*/
int updateState(long itemId, int state);
/**
* 根据商品id查询团购设置
* @param itemId
* @return
*/
GroupPurchaseConfig findByItemId(long itemId);
}
package com.wwdz.ch.db.dao.distribution;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseDiscount;
import java.util.List;
public interface GroupPurchaseDiscountDao {
/**
* 插入新记录
*
* @param groupPurchaseDiscount
* @return
*/
int insert(GroupPurchaseDiscount groupPurchaseDiscount);
/**
* 根据商品id查询团购折扣
* @param itemId
* @return
*/
List<GroupPurchaseDiscount> findByItemId(long itemId);
boolean isExisted(long itemId);
boolean delete(long itemId);
}
package com.wwdz.ch.db.dao.distribution;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseRecord;
import com.wwdz.ch.db.dto.request.distribution.GroupPurchaseRecordRequestDto;
import com.wwdz.ch.db.dto.request.distribution.UserAccountDetailRequestDto;
import java.util.List;
public interface GroupPurchaseRecordDao {
/**
* 插入新记录
*
* @param groupPurchaseRecord
* @return
*/
int insert(GroupPurchaseRecord groupPurchaseRecord);
GroupPurchaseRecord findByPayId(String dispositPayId);
int updateByPayId(GroupPurchaseRecord groupPurchaseRecord);
/**
* 统计当前商品已经团购的件数
* @param dto
* @return
*/
long summaryItemNum(GroupPurchaseRecordRequestDto dto);
/**
* 统计当前商品参数团购的人数
* @param dto
* @return
*/
List<GroupPurchaseRecord> countPeople(GroupPurchaseRecordRequestDto dto);
}
...@@ -42,7 +42,7 @@ public class CollectionShareRecordRequestDto extends BaseRequestDto implements E ...@@ -42,7 +42,7 @@ public class CollectionShareRecordRequestDto extends BaseRequestDto implements E
private Date updateTime; private Date updateTime;
/** /**
* 分享的类型1藏品2藏馆 * 分享的类型1藏品;2藏馆;5团购商品
*/ */
private Integer type; private Integer type;
......
package com.wwdz.ch.db.dto.request.distribution;
import com.wwdz.ch.db.dto.request.BaseRequestDto;
import lombok.Data;
import java.util.Date;
@Data
public class GroupPurchaseRecordRequestDto extends BaseRequestDto {
private Long id;
/**
* 团购定金支付id
*/
private String depositPayId;
/**
* 关联的预售订单id
*/
private String distributionOrderId;
/**
* 预支付id
*/
private String prepayId;
/**
* 微信支付订单号
*/
private String transactionId;
/**
* 商品id
*/
private Long itemId;
/**
* 商品数量
*/
private Integer itemNum;
/**
* 用户id
*/
private Long userId;
/**
* 用户openid
*/
private String userOpenid;
/**
* 定金金额
*/
private String amount;
/**
* 创建时间
*/
private Date createTime;
/**
* 支付时间
*/
private Date payTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 状态
*/
private Integer state;
}
...@@ -47,10 +47,22 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity { ...@@ -47,10 +47,22 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity {
/** /**
* 进货价格 * 进货价格
*前端传过来的单位是元,后台要处理为分 * 前端传过来的单位是元,后台要处理为分
*/ */
private String supplyPrice; private String supplyPrice;
/**
* 团购商品售价
* 前端传过来的单位是元,后台要处理为分
*/
private String salePrice;
/**
* 团购商品定金
* 前端传过来的单位是元,后台要处理为分
*/
private String deposit;
/** /**
* 商品名称 * 商品名称
*/ */
...@@ -158,6 +170,18 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity { ...@@ -158,6 +170,18 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity {
*/ */
private String auctionEndTime; private String auctionEndTime;
/**
* 团购开始时间
*/
private String groupPurchaseStartTime;
/**
* 团购结束时间
*/
private String groupPurchaseEndTime;
/** /**
* 起拍价 * 起拍价
* 单位元 需要转为分 * 单位元 需要转为分
...@@ -214,4 +238,10 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity { ...@@ -214,4 +238,10 @@ public class SupplierItemRequestDto extends BaseRequestDto implements Entity {
*/ */
private Integer specialPerformanceId; private Integer specialPerformanceId;
/**
* 团购优惠信息
* json数组
*/
private String discountJson;
} }
package com.wwdz.ch.db.impl.distribution;
import com.wwdz.ch.db.dao.distribution.GroupPurchaseConfigDao;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseConfig;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseConfigExample;
import com.wwdz.ch.db.mapper.distribution.GroupPurchaseConfigMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.Date;
@Repository
public class GroupPurchaseConfigDaoImpl implements GroupPurchaseConfigDao {
@Autowired
GroupPurchaseConfigMapper groupPurchaseConfigMapper;
@Override
public int insert(GroupPurchaseConfig groupPurchaseConfig) {
return groupPurchaseConfigMapper.insert(groupPurchaseConfig);
}
@Override
public int update(GroupPurchaseConfig groupPurchaseConfig) {
groupPurchaseConfig.setUpdateTime(new Date());
return groupPurchaseConfigMapper.updateByPrimaryKeySelective(groupPurchaseConfig);
}
@Override
public int updateByItemId(GroupPurchaseConfig groupPurchaseConfig) {
groupPurchaseConfig.setUpdateTime(new Date());
GroupPurchaseConfigExample example = new GroupPurchaseConfigExample();
GroupPurchaseConfigExample.Criteria criteria = example.createCriteria();
criteria.andItemIdEqualTo(groupPurchaseConfig.getItemId());
return groupPurchaseConfigMapper.updateByExampleSelective(groupPurchaseConfig, example);
}
@Override
public int updateState(long itemId, int state) {
GroupPurchaseConfigExample example = new GroupPurchaseConfigExample();
GroupPurchaseConfigExample.Criteria criteria = example.createCriteria();
criteria.andItemIdEqualTo(itemId);
GroupPurchaseConfig groupPurchaseConfig = new GroupPurchaseConfig();
groupPurchaseConfig.setUpdateTime(new Date());
groupPurchaseConfig.setState(state);
return groupPurchaseConfigMapper.updateByExampleSelective(groupPurchaseConfig, example);
}
@Override
public GroupPurchaseConfig findByItemId(long itemId) {
GroupPurchaseConfigExample example = new GroupPurchaseConfigExample();
GroupPurchaseConfigExample.Criteria criteria = example.createCriteria();
criteria.andItemIdEqualTo(itemId);
return groupPurchaseConfigMapper.selectOneByExample(example);
}
}
package com.wwdz.ch.db.impl.distribution;
import com.wwdz.ch.db.dao.distribution.GroupPurchaseDiscountDao;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseDiscount;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseDiscountExample;
import com.wwdz.ch.db.mapper.distribution.GroupPurchaseDiscountMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public class GroupPurchaseDiscountDaoImpl implements GroupPurchaseDiscountDao {
@Autowired
GroupPurchaseDiscountMapper groupPurchaseDiscountMapper;
@Override
public int insert(GroupPurchaseDiscount groupPurchaseDiscount) {
return groupPurchaseDiscountMapper.insert(groupPurchaseDiscount);
}
@Override
public List<GroupPurchaseDiscount> findByItemId(long itemId) {
GroupPurchaseDiscountExample example = new GroupPurchaseDiscountExample();
GroupPurchaseDiscountExample.Criteria criteria = example.createCriteria();;
criteria.andItemIdEqualTo(itemId);
return groupPurchaseDiscountMapper.selectByExample(example);
}
@Override
public boolean isExisted(long itemId) {
GroupPurchaseDiscountExample example = new GroupPurchaseDiscountExample();
GroupPurchaseDiscountExample.Criteria criteria = example.createCriteria();;
criteria.andItemIdEqualTo(itemId);
return groupPurchaseDiscountMapper.countByExample(example) > 0;
}
@Override
public boolean delete(long itemId) {
GroupPurchaseDiscountExample example = new GroupPurchaseDiscountExample();
GroupPurchaseDiscountExample.Criteria criteria = example.createCriteria();;
criteria.andItemIdEqualTo(itemId);
return groupPurchaseDiscountMapper.deleteByExample(example) > 0;
}
}
package com.wwdz.ch.db.impl.distribution;
import com.wwdz.ch.db.dao.distribution.GroupPurchaseRecordDao;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseRecord;
import com.wwdz.ch.db.domain.distribution.GroupPurchaseRecordExample;
import com.wwdz.ch.db.dto.request.distribution.GroupPurchaseRecordRequestDto;
import com.wwdz.ch.db.mapper.distribution.GroupPurchaseRecordMapper;
import com.xxdxxs.db.component.JdbcHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public class GroupPurchaseRecordDaoImpl implements GroupPurchaseRecordDao {
@Autowired
GroupPurchaseRecordMapper groupPurchaseRecordMapper;
@Override
public int insert(GroupPurchaseRecord groupPurchaseRecord) {
return groupPurchaseRecordMapper.insert(groupPurchaseRecord);
}
@Override
public GroupPurchaseRecord findByPayId(String dispositPayId) {
GroupPurchaseRecordExample example = new GroupPurchaseRecordExample();
GroupPurchaseRecordExample.Criteria criteria = example.createCriteria();
criteria.andDepositPayIdEqualTo(dispositPayId);
return groupPurchaseRecordMapper.selectOneByExample(example);
}
@Override
public int updateByPayId(GroupPurchaseRecord groupPurchaseRecord) {
GroupPurchaseRecordExample example = new GroupPurchaseRecordExample();
GroupPurchaseRecordExample.Criteria criteria = example.createCriteria();
criteria.andDepositPayIdEqualTo(groupPurchaseRecord.getDepositPayId());
return groupPurchaseRecordMapper.updateByExampleSelective(groupPurchaseRecord, example);
}
@Override
public long summaryItemNum(GroupPurchaseRecordRequestDto dto) {
GroupPurchaseRecordExample example = new GroupPurchaseRecordExample();
GroupPurchaseRecordExample.Criteria criteria = example.createCriteria();
JdbcHelper.ifPresent(dto.getItemId(), criteria::andItemIdEqualTo);
JdbcHelper.ifPresent(dto.getUserId(), criteria::andUserIdEqualTo);
return groupPurchaseRecordMapper.summaryItemNum(example);
}
@Override
public List<GroupPurchaseRecord> countPeople(GroupPurchaseRecordRequestDto dto) {
GroupPurchaseRecordExample example = new GroupPurchaseRecordExample();
example.setDistinct(true);
GroupPurchaseRecordExample.Criteria criteria = example.createCriteria();
JdbcHelper.ifPresent(dto.getItemId(), criteria::andItemIdEqualTo);
JdbcHelper.ifPresent(dto.getUserId(), criteria::andUserIdEqualTo);
return groupPurchaseRecordMapper.selectByExampleSelective(example, GroupPurchaseRecord.Column.userId);
}
}
...@@ -63,16 +63,16 @@ ...@@ -63,16 +63,16 @@
<!--生成Model类存放位置--> <!--生成Model类存放位置-->
<javaModelGenerator targetPackage="com.wwdz.ch.db.domain" targetProject="ch-dao/src/main/java"> <javaModelGenerator targetPackage="com.wwdz.ch.db.domain.distribution" targetProject="ch-dao/src/main/java">
<property name="enableSubPackages" value="true"/> <property name="enableSubPackages" value="true"/>
<property name="trimStrings" value="true"/> <property name="trimStrings" value="true"/>
</javaModelGenerator> </javaModelGenerator>
<sqlMapGenerator targetPackage="com.wwdz.ch.db.mapper" targetProject="ch-dao/src/main/resources"/> <sqlMapGenerator targetPackage="com.wwdz.ch.db.mapper.distribution" targetProject="ch-dao/src/main/resources"/>
<javaClientGenerator type="XMLMAPPER" targetPackage="com.wwdz.ch.db.mapper" <javaClientGenerator type="XMLMAPPER" targetPackage="com.wwdz.ch.db.mapper.distribution"
targetProject="ch-dao/src/main/java"/> targetProject="ch-dao/src/main/java"/>
<table tableName="collector_white_list" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true"> <table tableName="group_purchase_record" enableCountByExample="true" enableUpdateByExample="true" enableDeleteByExample="true" enableSelectByExample="true" selectByExampleQueryId="true">
<generatedKey column="id" sqlStatement="Mysql" identity="true" /> <generatedKey column="id" sqlStatement="Mysql" identity="true" />
</table> </table>
......
...@@ -61,10 +61,10 @@ public class CollectionShareRecordServiceImpl implements CollectionShareRecordSe ...@@ -61,10 +61,10 @@ public class CollectionShareRecordServiceImpl implements CollectionShareRecordSe
map.put("imageList", imageList); map.put("imageList", imageList);
map.put("count", pageInfo.getTotal()); map.put("count", pageInfo.getTotal());
} }
logger.info("创建藏品或藏馆分享链接返回结果:{}", JsonUtils.from(map)); logger.info("创建藏家藏品相关的分享链接返回结果:{}", JsonUtils.from(map));
return Result.success(map); return Result.success(map);
} catch (Exception e) { } catch (Exception e) {
logger.error("创建藏品或藏馆分享链接失败 error: {}", e); logger.error("创建藏家藏品相关的分享链接失败 error: {}", e);
} }
return Result.failed(); return Result.failed();
} }
......
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