Commit 276afec7 authored by shiyu's avatar shiyu

配置lot加锁,预估价默认为0

parent e1313049
......@@ -18,10 +18,12 @@ import com.wwdz.ch.db.dto.request.distribution.SpecialPerformanceRequestDto;
import com.xxdxxs.utils.DateUtils;
import com.xxdxxs.utils.EntityMapper;
import io.swagger.models.auth.In;
import javafx.beans.binding.ObjectExpression;
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.Isolation;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.interceptor.TransactionAspectSupport;
import org.springframework.util.CollectionUtils;
......@@ -220,6 +222,7 @@ public class SysSpecialPerformanceServiceImpl implements SysSpecialPerformanceSe
specialPerformanceConfig.setItemId(Long.valueOf(itemId));
specialPerformanceConfig.setSpecialPerformanceId(dto.getSpecialPerformanceId());
specialPerformanceConfig.setCurrentPrice(auctionConfig.getStartPrice());
specialPerformanceConfig.setLot(0);
specialPerformanceConfig.setState(SpecialPerformanceEnum.ConfigStateEnum.VALID.getCode());
Random random = new Random();
int randomNumber = random.nextInt(20);
......@@ -267,13 +270,16 @@ public class SysSpecialPerformanceServiceImpl implements SysSpecialPerformanceSe
@Override
public Result itemSort(SpecialPerformanceConfigRequestDto dto) {
try {
//校验是否lot重复
boolean isExist = specialPerformanceConfigDao.isExistedSort(dto.getSpecialPerformanceId(), dto.getItemId(), dto.getLot());
if (isExist) {
return Result.failed("lot重复");
Object lock = new Object();
synchronized (lock) {
//校验是否lot重复
boolean isExist = specialPerformanceConfigDao.isExistedSort(dto.getSpecialPerformanceId(), dto.getItemId(), dto.getLot());
if (isExist) {
return Result.failed("lot重复");
}
specialPerformanceConfigDao.itemSort(dto.getSpecialPerformanceId(), dto.getItemId(), dto.getLot());
return Result.success();
}
specialPerformanceConfigDao.itemSort(dto.getSpecialPerformanceId(), dto.getItemId(), dto.getLot());
return Result.success();
} catch (Exception e) {
logger.error("专场商品排序 error {}", e);
}
......
......@@ -531,7 +531,7 @@ public class SysSupplierItemServiceImpl implements SysSupplierItemService {
auctionConfig.setRealEndTime(StringUtils.isEmpty(dto.getAuctionEndTime()) ? endTime : DateUtils.parseString(dto.getAuctionEndTime()));
auctionConfig.setStartPrice(StringUtils.isEmpty(dto.getStartPrice()) ? 0 : PriceUtil.convertPriceFromStr(dto.getStartPrice()));
auctionConfig.setAddExtent(StringUtils.isEmpty(dto.getAddExtent()) ? 5000 : PriceUtil.convertPriceFromStr(dto.getAddExtent()));
auctionConfig.setEstimatedPrice(StringUtils.isEmpty(dto.getEstimatedPrice()) ? 999999999 : PriceUtil.convertPriceFromStr(dto.getEstimatedPrice()));
auctionConfig.setEstimatedPrice(StringUtils.isEmpty(dto.getEstimatedPrice()) ? 0 : PriceUtil.convertPriceFromStr(dto.getEstimatedPrice()));
auctionConfig.setCreateTime(now);
auctionConfig.setUpdateTime(now);
auctionConfigDao.insert(auctionConfig);
......
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