Merge branch 'feature/mall_product' of http://117.33.142.185:3000/zenghuapei/cyywl_server into feature/mall_product

pull/2/head
TianYu 2023-05-24 16:54:18 +08:00
commit 9ccba3d554
5 changed files with 85 additions and 40 deletions

View File

@ -60,4 +60,10 @@ public class OrderInfoResponse implements Serializable {
@Schema(description = "规格属性值") @Schema(description = "规格属性值")
private String sku; private String sku;
@Schema(description = "购买东西的详细信息")
private String info;
private String productName;
} }

View File

@ -72,7 +72,7 @@ public class StoreOrderDetailInfoResponse implements Serializable {
private BigDecimal deductionPrice; private BigDecimal deductionPrice;
@Schema(description = "优惠券id") @Schema(description = "优惠券id")
private Integer couponId; private Long couponId;
@Schema(description = "优惠券金额") @Schema(description = "优惠券金额")
private BigDecimal couponPrice; private BigDecimal couponPrice;

View File

@ -63,14 +63,13 @@ public class AppPhoneRecordController {
return success(null); return success(null);
} }
@PostMapping("delete") @PostMapping("delete")
public CommonResult<Boolean> delete(@RequestBody List<PhoneRecordAdd> data){ public CommonResult<Boolean> delete(@RequestBody String data){
String result = HttpRequest.post(phoneUrl+"query/deleteReport") String result = HttpRequest.post(phoneUrl+"query/deleteReport?orderNo="+data)
.header("token",token) .header("token",token)
.body(JSONObject.toJSONString(data))
.execute() .execute()
.body(); .body();
JSONObject resultJson = JSONObject.parseObject(result); JSONObject resultJson = JSONObject.parseObject(result);
log.info("提报新增返回结果{}",JSONObject.toJSONString(resultJson)); log.info("删除返回结果{}",JSONObject.toJSONString(resultJson));
if("0000".equals(resultJson.get("code"))){ if("0000".equals(resultJson.get("code"))){
return success(null); return success(null);
} }

View File

@ -63,6 +63,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.support.TransactionTemplate; import org.springframework.transaction.support.TransactionTemplate;
import cn.iocoder.yudao.framework.common.util.date.DateUtils; import cn.iocoder.yudao.framework.common.util.date.DateUtils;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -72,15 +73,15 @@ import java.util.stream.Collectors;
/** /**
* H5 * H5
* +---------------------------------------------------------------------- * +----------------------------------------------------------------------
* | CRMEB [ CRMEB ] * | CRMEB [ CRMEB ]
* +---------------------------------------------------------------------- * +----------------------------------------------------------------------
* | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved. * | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.
* +---------------------------------------------------------------------- * +----------------------------------------------------------------------
* | Licensed CRMEBCRMEB * | Licensed CRMEBCRMEB
* +---------------------------------------------------------------------- * +----------------------------------------------------------------------
* | Author: CRMEB Team <admin@crmeb.com> * | Author: CRMEB Team <admin@crmeb.com>
* +---------------------------------------------------------------------- * +----------------------------------------------------------------------
*/ */
@Service @Service
public class OrderServiceImpl implements OrderService { public class OrderServiceImpl implements OrderService {
@ -140,6 +141,7 @@ public class OrderServiceImpl implements OrderService {
@Autowired @Autowired
private StoreProductAttrValueService storeProductAttrValueService; private StoreProductAttrValueService storeProductAttrValueService;
/** /**
* *
* *
@ -151,12 +153,27 @@ public class OrderServiceImpl implements OrderService {
public PageInfo<OrderDetailResponse> list(Integer type, PageParam pageRequest) { public PageInfo<OrderDetailResponse> list(Integer type, PageParam pageRequest) {
PageHelper.startPage(pageRequest.getPageNo(), pageRequest.getPageSize()); PageHelper.startPage(pageRequest.getPageNo(), pageRequest.getPageSize());
LambdaQueryWrapper<StoreOrder> lambdaQueryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<StoreOrder> lambdaQueryWrapper = new LambdaQueryWrapper<>();
if(null != type){ if (null != type) {
lambdaQueryWrapper.eq(StoreOrder::getType, type); lambdaQueryWrapper.eq(StoreOrder::getType, type);
} }
lambdaQueryWrapper.orderByDesc(StoreOrder::getId); lambdaQueryWrapper.orderByDesc(StoreOrder::getId);
List<StoreOrder> storeOrders = dao.selectList(lambdaQueryWrapper); List<StoreOrder> storeOrders = dao.selectList(lambdaQueryWrapper);
return new PageInfo<>(StoreOrderConvert.INSTANCE.convert(storeOrders)); PageInfo<OrderDetailResponse> orderDetailResponsePageInfo = new PageInfo<>(StoreOrderConvert.INSTANCE.convert(storeOrders));
if (!CollectionUtils.isEmpty(orderDetailResponsePageInfo.getList())) {
orderDetailResponsePageInfo.getList().forEach(e -> {
List<StoreOrderInfo> list = storeOrderInfoService.list(Wrappers.<StoreOrderInfo>lambdaQuery().eq(StoreOrderInfo::getOrderId, e.getId()));
if (!CollectionUtils.isEmpty(list)) {
List<OrderInfoResponse> orderInfoList = new ArrayList<>();
list.forEach(x -> {
OrderInfoResponse response = new OrderInfoResponse();
BeanUtils.copyProperties(x, response);
orderInfoList.add(response);
});
e.setOrderInfoList(orderInfoList);
}
});
}
return orderDetailResponsePageInfo;
} }
/** /**
@ -167,13 +184,26 @@ public class OrderServiceImpl implements OrderService {
@Override @Override
public StoreOrderDetailInfoResponse detailOrder(String orderId) { public StoreOrderDetailInfoResponse detailOrder(String orderId) {
StoreOrder storeOrder = storeOrderService.getByOderId(orderId); StoreOrder storeOrder = storeOrderService.getByOderId(orderId);
return StoreOrderOneConvert.INSTANCE.convert(storeOrder); List<StoreOrderInfo> list = storeOrderInfoService.list(Wrappers.<StoreOrderInfo>lambdaQuery().eq(StoreOrderInfo::getOrderId, storeOrder.getId()));
StoreOrderDetailInfoResponse convert = StoreOrderOneConvert.INSTANCE.convert(storeOrder);
if (!CollectionUtils.isEmpty(list)) {
List<OrderInfoResponse> orderInfoList = new ArrayList<>();
list.forEach(e -> {
OrderInfoResponse response = new OrderInfoResponse();
BeanUtils.copyProperties(e, response);
orderInfoList.add(response);
});
convert.setOrderInfoList(orderInfoList);
}
return convert;
} }
/** /**
* *
*
* @param dateLimit * @param dateLimit
* @param status String * @param status String
* @return Integer * @return Integer
*/ */
private Long getCount(String dateLimit, String status, Integer type) { private Long getCount(String dateLimit, String status, Integer type) {
@ -192,8 +222,9 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
*
* @param dateLimit * @param dateLimit
* @param type * @param type
* @return BigDecimal * @return BigDecimal
*/ */
private BigDecimal getAmount(String dateLimit, String type) { private BigDecimal getAmount(String dateLimit, String type) {
@ -217,8 +248,9 @@ public class OrderServiceImpl implements OrderService {
/** /**
* where * where
*
* @param queryWrapper QueryWrapper<StoreOrder> * @param queryWrapper QueryWrapper<StoreOrder>
* @param status String * @param status String
*/ */
private void getStatusWhereNew(QueryWrapper<StoreOrder> queryWrapper, String status) { private void getStatusWhereNew(QueryWrapper<StoreOrder> queryWrapper, String status) {
if (StrUtil.isBlank(status)) { if (StrUtil.isBlank(status)) {
@ -266,7 +298,7 @@ public class OrderServiceImpl implements OrderService {
break; break;
case Constants.ORDER_STATUS_REFUNDING: //退款中 case Constants.ORDER_STATUS_REFUNDING: //退款中
queryWrapper.eq("paid", 1); queryWrapper.eq("paid", 1);
queryWrapper.in("refund_status", 1,3); queryWrapper.in("refund_status", 1, 3);
queryWrapper.eq("is_del", 0); queryWrapper.eq("is_del", 0);
break; break;
case Constants.ORDER_STATUS_REFUNDED: //已退款 case Constants.ORDER_STATUS_REFUNDED: //已退款
@ -291,7 +323,7 @@ public class OrderServiceImpl implements OrderService {
* @return * @return
*/ */
@Override @Override
public OrderDataResponse orderData(String dateLimit, Integer type,String payType) { public OrderDataResponse orderData(String dateLimit, Integer type, String payType) {
OrderDataResponse response = new OrderDataResponse(); OrderDataResponse response = new OrderDataResponse();
if (type.equals(2)) { if (type.equals(2)) {
type = null; type = null;
@ -307,7 +339,7 @@ public class OrderServiceImpl implements OrderService {
// 退款订单数量 // 退款订单数量
response.setRefundCount(getCount(dateLimit, Constants.ORDER_STATUS_REFUNDED, type)); response.setRefundCount(getCount(dateLimit, Constants.ORDER_STATUS_REFUNDED, type));
// 总消费钱数 // 总消费钱数
response.setSumPrice(getAmount(dateLimit,payType)); response.setSumPrice(getAmount(dateLimit, payType));
// 未支付订单数量 // 未支付订单数量
response.setUnPaidCount(getCount(dateLimit, Constants.ORDER_STATUS_UNPAID, type)); response.setUnPaidCount(getCount(dateLimit, Constants.ORDER_STATUS_UNPAID, type));
// 待发货订单数量 // 待发货订单数量
@ -330,7 +362,8 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
*@param orderNo *
* @param orderNo
* @return 退 * @return 退
*/ */
private StoreOrder getInfoException(Integer orderNo) { private StoreOrder getInfoException(Integer orderNo) {
@ -342,6 +375,7 @@ public class OrderServiceImpl implements OrderService {
} }
return storeOrder; return storeOrder;
} }
/** /**
* *
* *
@ -517,7 +551,7 @@ public class OrderServiceImpl implements OrderService {
*/ */
@Override @Override
public Object expressOrder(String orderId) { public Object expressOrder(String orderId) {
HashMap<String,Object> resultMap = new HashMap<>(); HashMap<String, Object> resultMap = new HashMap<>();
StoreOrder storeOrderPram = new StoreOrder(); StoreOrder storeOrderPram = new StoreOrder();
storeOrderPram.setOrderId(orderId); storeOrderPram.setOrderId(orderId);
StoreOrder existOrder = storeOrderService.getByEntityOne(storeOrderPram); StoreOrder existOrder = storeOrderService.getByEntityOne(storeOrderPram);
@ -547,7 +581,7 @@ public class OrderServiceImpl implements OrderService {
orderInfo.put("info", cartInfos); orderInfo.put("info", cartInfos);
resultMap.put("order", orderInfo); resultMap.put("order", orderInfo);
// resultMap.put("express", expressInfo); // resultMap.put("express", expressInfo);
return resultMap; return resultMap;
} }
@ -770,7 +804,7 @@ public class OrderServiceImpl implements OrderService {
//用户剩余积分 //用户剩余积分
//用户剩余经验 //用户剩余经验
// 缓存订单 // 缓存订单
String key = user.getId() + DateUtils.getNowTime().toString()+CrmebUtil.getUuid(); String key = user.getId() + DateUtils.getNowTime().toString() + CrmebUtil.getUuid();
redisUtil.set("user_order:" + key, JSONUtil.parseObj(orderInfoVo), Constants.ORDER_CASH_CONFIRM, TimeUnit.MINUTES); redisUtil.set("user_order:" + key, JSONUtil.parseObj(orderInfoVo), Constants.ORDER_CASH_CONFIRM, TimeUnit.MINUTES);
MyRecord record = new MyRecord(); MyRecord record = new MyRecord();
record.set("preOrderNo", key); record.set("preOrderNo", key);
@ -779,6 +813,7 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
*
* @param request * @param request
* @return OrderInfoVo * @return OrderInfoVo
*/ */
@ -866,6 +901,7 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
*
* @param detailRequest * @param detailRequest
* @return List<OrderInfoDetailVo> * @return List<OrderInfoDetailVo>
*/ */
@ -935,8 +971,9 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
*
* @param request * @param request
* @param user * @param user
* @return List<OrderInfoDetailVo> * @return List<OrderInfoDetailVo>
*/ */
private List<OrderInfoDetailVo> validatePreOrderShopping(PreOrderRequest request, MemberUserRespDTO user) { private List<OrderInfoDetailVo> validatePreOrderShopping(PreOrderRequest request, MemberUserRespDTO user) {
@ -991,6 +1028,7 @@ public class OrderServiceImpl implements OrderService {
}); });
return detailVoList; return detailVoList;
} }
/** /**
* *
* *
@ -1031,6 +1069,7 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
*
* @param request * @param request
* @return ComputedOrderPriceResponse * @return ComputedOrderPriceResponse
*/ */
@ -1137,7 +1176,7 @@ public class OrderServiceImpl implements OrderService {
orderRequest.setRealName(userAddress.getRealName()); orderRequest.setRealName(userAddress.getRealName());
orderRequest.setPhone(userAddress.getPhone()); orderRequest.setPhone(userAddress.getPhone());
userAddressStr = userAddress.getProvince() + userAddress.getCity() + userAddress.getDistrict() + userAddress.getDetail(); userAddressStr = userAddress.getProvince() + userAddress.getCity() + userAddress.getDistrict() + userAddress.getDetail();
}else if (orderRequest.getShippingType() == 2) { // 到店自提 } else if (orderRequest.getShippingType() == 2) { // 到店自提
if (StringUtils.isBlank(orderRequest.getRealName()) || StringUtils.isBlank(orderRequest.getPhone())) { if (StringUtils.isBlank(orderRequest.getRealName()) || StringUtils.isBlank(orderRequest.getPhone())) {
throw new ServiceException("请填写姓名和电话"); throw new ServiceException("请填写姓名和电话");
} }
@ -1150,7 +1189,7 @@ public class OrderServiceImpl implements OrderService {
// if (ObjectUtil.isNull(systemStore) || systemStore.getIsDel() || !systemStore.getIsShow()) { // if (ObjectUtil.isNull(systemStore) || systemStore.getIsDel() || !systemStore.getIsShow()) {
// throw new ServiceException("暂无门店无法选择门店自提"); // throw new ServiceException("暂无门店无法选择门店自提");
// } // }
verifyCode = CrmebUtil.randomCount(1111111111,999999999)+""; verifyCode = CrmebUtil.randomCount(1111111111, 999999999) + "";
//userAddressStr = systemStore.getName(); //userAddressStr = systemStore.getName();
} }
@ -1292,7 +1331,7 @@ public class OrderServiceImpl implements OrderService {
storeOrder.setType(1);// 视频号订单 storeOrder.setType(1);// 视频号订单
} }
// StoreCouponUser storeCouponUser = new StoreCouponUser(); // StoreCouponUser storeCouponUser = new StoreCouponUser();
// 优惠券修改 // 优惠券修改
// if (storeOrder.getCouponId() > 0) { // if (storeOrder.getCouponId() > 0) {
// storeCouponUser = storeCouponUserService.getById(storeOrder.getCouponId()); // storeCouponUser = storeCouponUserService.getById(storeOrder.getCouponId());
@ -1304,12 +1343,12 @@ public class OrderServiceImpl implements OrderService {
// 扣减库存 // 扣减库存
// 需要根据是否活动商品,扣减不同的库存 // 需要根据是否活动商品,扣减不同的库存
// 普通商品 // 普通商品
for (MyRecord skuRecord : skuRecordList) { for (MyRecord skuRecord : skuRecordList) {
// 普通商品口库存 // 普通商品口库存
storeProductService.operationStock(skuRecord.getInt("productId"), skuRecord.getInt("num"), "sub"); storeProductService.operationStock(skuRecord.getInt("productId"), skuRecord.getInt("num"), "sub");
// 普通商品规格扣库存 // 普通商品规格扣库存
//storeProductAttrValueService.operationStock(skuRecord.getInt("attrValueId"), skuRecord.getInt("num"), "sub", Constants.PRODUCT_TYPE_NORMAL); //storeProductAttrValueService.operationStock(skuRecord.getInt("attrValueId"), skuRecord.getInt("num"), "sub", Constants.PRODUCT_TYPE_NORMAL);
}// }//
storeOrderService.create(storeOrder); storeOrderService.create(storeOrder);
storeOrderInfos.forEach(info -> info.setOrderId(storeOrder.getId())); storeOrderInfos.forEach(info -> info.setOrderId(storeOrder.getId()));
@ -1337,7 +1376,7 @@ public class OrderServiceImpl implements OrderService {
redisUtil.lPush(Constants.ORDER_AUTO_CANCEL_KEY, storeOrder.getOrderId()); redisUtil.lPush(Constants.ORDER_AUTO_CANCEL_KEY, storeOrder.getOrderId());
// TODO 发送后台管理员下单提醒通知短信 // TODO 发送后台管理员下单提醒通知短信
// sendAdminOrderNotice(storeOrder.getOrderId()); // sendAdminOrderNotice(storeOrder.getOrderId());
MyRecord record = new MyRecord(); MyRecord record = new MyRecord();
record.set("orderNo", storeOrder.getOrderId()); record.set("orderNo", storeOrder.getOrderId());
@ -1346,6 +1385,7 @@ public class OrderServiceImpl implements OrderService {
/** /**
* *
*
* @param orderInfoVo Vo * @param orderInfoVo Vo
* @return List<MyRecord> * @return List<MyRecord>
* skuRecord * skuRecord
@ -1392,6 +1432,7 @@ public class OrderServiceImpl implements OrderService {
} }
return recordList; return recordList;
} }
/** /**
* *
* *

View File

@ -141,9 +141,8 @@ public class PhoneRecordServiceImpl implements PhoneRecordService {
*/ */
@Override @Override
public Boolean deletePhoneGear(String orderId) { public Boolean deletePhoneGear(String orderId) {
String result = HttpRequest.post(phoneUrl+"query/deleteReport") String result = HttpRequest.post(phoneUrl+"query/deleteReport?orderNo="+orderId)
.header("token",token) .header("token",token)
.body(JSONObject.toJSONString(orderId))
.execute() .execute()
.body(); .body();
JSONObject resultJson = JSONObject.parseObject(result); JSONObject resultJson = JSONObject.parseObject(result);