Commit 1ba88c9d authored by shiyu's avatar shiyu

商品类型

parent adbda99d
......@@ -35,6 +35,7 @@ public class SysSupplierItemController {
validator.set("name", "商品名称").must().string()
.set("distributionPrice", "商品供货价").must().string()
.set("type", "商品类型").must().number()
.set("buyLimitNum", "限购数量").must().number()
.end();
if (!validator.isValid()) {
return Result.failed(validator.getErrorInfo());
......
......@@ -305,4 +305,20 @@ public class WxPayServiceApi {
return Result.failed();
}
/**
* 微信支付关闭订单
* @param dto
* @return
*/
public Result closeOrder(DistributionOrderRequestDto dto){
try {
return Result.success();
}catch (Exception e){
logger.error("微信退款接口错误error : {}", e);
}
return Result.failed();
}
}
......@@ -110,4 +110,10 @@ public class SupplierItemVo implements Entity {
* 是否限购
*/
private Boolean isLimitBuy = true;
/**
* 商品类型1一口价2竞拍
*/
private Integer type;
}
......@@ -46,4 +46,8 @@ public class AuctionRecordRequestDto extends BaseRequestDto implements Entity {
*/
private Boolean isLead;
/**
* 分销订单号
*/
private String distributionOrderId;
}
package com.wwdz.ch.wx.impl.distribution;
import com.wwdz.ch.core.api.wxpay.WxPayServiceApi;
import com.wwdz.ch.core.consts.DistributionEnum;
import com.wwdz.ch.core.consts.ResultCode;
import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.PriceUtil;
import com.wwdz.ch.db.dao.distribution.AuctionConfigDao;
import com.wwdz.ch.db.dao.distribution.AuctionRecordDao;
import com.wwdz.ch.db.dao.distribution.DistributionOrderDao;
import com.wwdz.ch.db.dao.distribution.SupplierItemDao;
import com.wwdz.ch.db.domain.distribution.AuctionConfig;
import com.wwdz.ch.db.domain.distribution.AuctionRecord;
import com.wwdz.ch.db.domain.distribution.DistributionOrder;
import com.wwdz.ch.db.domain.distribution.SupplierItem;
import com.wwdz.ch.db.dto.request.distribution.AuctionRecordRequestDto;
import com.wwdz.ch.db.dto.request.distribution.DistributionOrderRequestDto;
import com.wwdz.ch.wx.entity.vo.distribution.AuctionRecordVo;
import com.wwdz.ch.wx.service.distribution.AuctionRecordService;
import com.wwdz.ch.wx.util.RedisUtil;
......@@ -44,6 +50,15 @@ public class AuctionRecordServiceImpl implements AuctionRecordService {
@Autowired
RedissonClient redissonClient;
@Autowired
DistributionOrderDao distributionOrderDao;
@Autowired
SupplierItemDao supplierItemDao;
@Autowired
WxPayServiceApi wxPayServiceApi;
@Override
......@@ -149,4 +164,31 @@ public class AuctionRecordServiceImpl implements AuctionRecordService {
}
return Result.failed();
}
@Override
public Result auctionPay(AuctionRecordRequestDto dto) {
try {
long itemId = dto.getItemId();
SupplierItem supplierItem = supplierItemDao.findById(itemId);
String distributionOrderId = dto.getDistributionOrderId();
DistributionOrder distributionOrder = distributionOrderDao.findById(distributionOrderId);
DistributionOrderRequestDto prePayDto = new DistributionOrderRequestDto();
prePayDto.setDistributionOrderId(distributionOrderId);
prePayDto.setAmount(PriceUtil.convertPriceFenToYuan(distributionOrder.getAmount()));
prePayDto.setBuyerOpenid(distributionOrder.getBuyerOpenid());
prePayDto.setItemName(supplierItem.getName());
Result prePayResult = wxPayServiceApi.createPrepareOrder(prePayDto);
if (!prePayResult.getSuccess()) {
logger.error(">>>>>>>> 订单号: {}, 预下单失败 <<<<<<<<",distributionOrderId );
return Result.failed(ResultCode.PAY_FAILED);
}
String prepayId = (String) prePayResult.getData();
Result getPayParamResult = wxPayServiceApi.wxAppPayTuneUp(prepayId);
return getPayParamResult;
} catch (Exception e) {
logger.error("支付失败 error : {}", e);
}
return Result.failed();
}
}
......@@ -18,4 +18,11 @@ public interface AuctionRecordService {
* @return
*/
Result findList(AuctionRecordRequestDto dto);
/**
* 中拍支付
* @param dto
* @return
*/
Result auctionPay(AuctionRecordRequestDto dto);
}
......@@ -55,6 +55,21 @@ public class AuctionRecordController {
}
@ApiOperation(value = "中拍支付")
@PostMapping("/auctionPay")
public Result auctionPay(@RequestBody AuctionRecordRequestDto dto) {
logger.info("中拍支付,请求参数:{}", JSON.toJSONString(dto));
Validator validator = new Validator(FormHandler.ofEntity(dto));
validator.set("itemId", "商品id").must().number()
.set("userId", "userId").must().number()
.end();
if (!validator.isValid()) {
return Result.failed(validator.getErrorInfo());
}
return auctionRecordService.auctionPay(dto);
}
}
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