|
@@ -185,26 +185,27 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
* @param pageSize 每页数量
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<PageInfo<OrderVo>> getOrderListByKeyword(Integer userId, String searchWord, int pageNum, int pageSize) {
|
|
|
+ public ResponseJson<PageInfo<ShopOrderVo>> getOrderListByKeyword(Integer userId, String searchWord, int pageNum, int pageSize) {
|
|
|
Integer identity = baseMapper.getIdentityByUserId(userId);
|
|
|
// 设置搜索关键词历史记录
|
|
|
orderCommonService.setHistoryRecord(userId, searchWord);
|
|
|
PageHelper.startPage(pageNum, pageSize);
|
|
|
- List<OrderVo> orderList = orderClubMapper.getOrderListByKeyword(searchWord, userId);
|
|
|
+ // List<OrderVo> orderList = orderClubMapper.getOrderListByKeyword(searchWord, userId);
|
|
|
+ List<ShopOrderVo> shopOrderList = orderClubMapper.getShopOrderListByKeyword(searchWord, userId);
|
|
|
//获取主订单数据
|
|
|
- orderList.forEach(order -> {
|
|
|
+ shopOrderList.forEach(shopOrder -> {
|
|
|
// 设置订单状态
|
|
|
- orderCommonService.setOrderStatus(order);
|
|
|
+ orderCommonService.setShopOrderStatus(shopOrder);
|
|
|
// 设置子订单数据
|
|
|
- orderCommonService.getShopOrderData(order);
|
|
|
+ orderCommonService.setShopOrderInfo(shopOrder);
|
|
|
// 设置付款金额
|
|
|
- orderCommonService.getDiscernReceiptAndSetOrder(order);
|
|
|
+ orderCommonService.getDiscernReceiptAndSetShoporder(shopOrder);
|
|
|
});
|
|
|
//不是协销,订单不可见屏蔽
|
|
|
if (identity != 1) {
|
|
|
- orderList.removeIf(o -> o.getOrderSeen().equals(2));
|
|
|
+ shopOrderList.removeIf(o -> o.getOrderSeen().equals(2));
|
|
|
}
|
|
|
- PageInfo<OrderVo> pageInfo = new PageInfo(orderList);
|
|
|
+ PageInfo<ShopOrderVo> pageInfo = new PageInfo(shopOrderList);
|
|
|
return ResponseJson.success(pageInfo);
|
|
|
}
|
|
|
|
|
@@ -464,7 +465,7 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
secondFlag = true;
|
|
|
}
|
|
|
// 更新复购价格库
|
|
|
- // productService.savePurchasePrice(order, product, secondFlag, note);
|
|
|
+ // productService.savePurchasePrice(order, product, secondFlag, note);
|
|
|
// 二手商品确认商品如果是二手仪器则需要把该二手商品置为已售
|
|
|
if (secondFlag) {
|
|
|
orderClubMapper.updateSecondStatus(product.getProductId(), 1);
|
|
@@ -480,13 +481,10 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
productService.saveDiscernReceipt(shopOrder.getAccountAmount(), shopOrderId, note);
|
|
|
}
|
|
|
if (null == shopOrder.getAccountAmount() || shopOrder.getAccountAmount() == 0d) {
|
|
|
- shopOrder.setStatus(11);
|
|
|
shopOrder.setReceiptStatus(1);
|
|
|
} else if (null != shopOrder.getAccountAmount() && MathUtil.compare(shopOrder.getAccountAmount(), shopOrder.getTotalAmount()) < 0) {
|
|
|
- shopOrder.setStatus(21);
|
|
|
shopOrder.setReceiptStatus(2);
|
|
|
} else {
|
|
|
- shopOrder.setStatus(31);
|
|
|
shopOrder.setReceiptStatus(3);
|
|
|
}
|
|
|
Integer count = 0;
|
|
@@ -566,7 +564,7 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
/*order.setUpdateDate(curDateStr);
|
|
|
order.setConfirmTime(curDateStr);*/
|
|
|
//确认订单状态
|
|
|
- // order.setConfirmFlag(2);
|
|
|
+ shopOrder.setStatus(1);
|
|
|
// 更新订单状态
|
|
|
orderClubMapper.updateShopOrderStatus(shopOrder);
|
|
|
return ResponseJson.success("确认订单成功!", null);
|
|
@@ -739,37 +737,46 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
/**
|
|
|
* 机构删除订单
|
|
|
*
|
|
|
- * @param orderId 订单Id
|
|
|
+ * @param shopOrderId 订单Id
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<Void> deleteMainOrder(Integer orderId) {
|
|
|
- OrderPo order = orderClubMapper.getMainOrderByOrderId(orderId);
|
|
|
- if (null == order || OrderStatus.CLOSED.getCode() != order.getStatus()) {
|
|
|
+ public ResponseJson<Void> deleteMainOrder(Integer shopOrderId) {
|
|
|
+// OrderPo order = orderClubMapper.getMainOrderByOrderId(orderId);
|
|
|
+ ShopOrderVo shopOrder = orderClubMapper.getShopOrderById(shopOrderId);
|
|
|
+ if (null == shopOrder || 4 != shopOrder.getStatus()) {
|
|
|
// 非已关闭订单
|
|
|
return ResponseJson.error("订单异常!", null);
|
|
|
}
|
|
|
- // 逻辑删除主订单
|
|
|
- order.setNote("用户发起删除订单");
|
|
|
- orderClubMapper.deleteMainOrder(order.getOrderId(), order.getNote());
|
|
|
- log.info("【删除订单】>>>>>>>>>逻辑删除主订单(update[cm_order])orderId:" + orderId);
|
|
|
// 逻辑删除子订单
|
|
|
- String[] shopOrderIdArr = order.getShopOrderIds().split(",");
|
|
|
- List<String> shopOrderIds = Arrays.asList(shopOrderIdArr);
|
|
|
+ // String[] shopOrderIdArr = order.getShopOrderIds().split(",");
|
|
|
+ List<String> shopOrderIds = new ArrayList<>();
|
|
|
+ shopOrderIds.add(shopOrder.getShopOrderId().toString());
|
|
|
orderClubMapper.deleteShopOrder(shopOrderIds);
|
|
|
- log.info("【删除订单】>>>>>>>>>逻辑删除子订单(update[cm_shop_order])shopOrderIds:" + order.getShopOrderIds());
|
|
|
+ log.info("【删除订单】>>>>>>>>>逻辑删除子订单(update[cm_shop_order])shopOrderId:" + shopOrder.getShopOrderId());
|
|
|
+ // 逻辑删除主订单
|
|
|
+ List<Integer> shopOrderStatus = orderClubMapper.getShopOrderStatus(shopOrder.getOrderId());
|
|
|
+ boolean flag = false;
|
|
|
+ if (shopOrderStatus.stream().allMatch(s -> s == 4)) {
|
|
|
+ flag = true;
|
|
|
+ }
|
|
|
+ if (flag) {
|
|
|
+ orderClubMapper.deleteMainOrder(shopOrder.getOrderId(), "用户发起删除订单");
|
|
|
+ log.info("【删除订单】>>>>>>>>>逻辑删除主订单(update[cm_order])orderId:" + shopOrder.getOrderId());
|
|
|
+ }
|
|
|
+
|
|
|
// 逻辑删除收款记录
|
|
|
- List<String> receiptIds = orderClubMapper.getOrderReceiptIds(orderId);
|
|
|
+ List<String> receiptIds = orderClubMapper.getShopOrderReceiptIds(shopOrderId);
|
|
|
if (!receiptIds.isEmpty()) {
|
|
|
- orderClubMapper.deleteOrderReceiptRelation(orderId);
|
|
|
+ orderClubMapper.deleteShopOrderReceiptRelation(shopOrderId);
|
|
|
orderClubMapper.deleteDiscernReceipt(receiptIds);
|
|
|
- log.info("【删除订单】>>>>>>>>>逻辑删除收款记录(update[cm_discern_receipt])orderId:" + orderId);
|
|
|
+ log.info("【删除订单】>>>>>>>>>逻辑删除收款记录(update[cm_discern_receipt])orderId:" + shopOrderId);
|
|
|
}
|
|
|
// 逻辑删除付款记录
|
|
|
List<String> payIds = orderClubMapper.getPayShopIds(shopOrderIds);
|
|
|
if (!payIds.isEmpty()) {
|
|
|
orderClubMapper.deletePayShopRecord(shopOrderIds);
|
|
|
orderClubMapper.deletePayShop(payIds);
|
|
|
- log.info("【删除订单】>>>>>>>>>逻辑删除付款记录(update[cm_pay_shop])shopOrderIds:" + order.getShopOrderIds());
|
|
|
+ log.info("【删除订单】>>>>>>>>>逻辑删除付款记录(update[cm_pay_shop])shopOrderIds:" + shopOrderIds);
|
|
|
}
|
|
|
|
|
|
return ResponseJson.success("删除订单成功!", null);
|
|
@@ -891,14 +898,16 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
/**
|
|
|
* 分享订单,获取分享码
|
|
|
*
|
|
|
- * @param orderId 订单Id
|
|
|
+ * @param shopOrderId 订单Id
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<String> getOrderShareCode(Integer orderId) {
|
|
|
- int orderCount = orderClubMapper.countMainOrderByOrderId(orderId);
|
|
|
- if (0 == orderCount) {
|
|
|
+ public ResponseJson<String> getOrderShareCode(Integer shopOrderId) {
|
|
|
+ // int orderCount = orderClubMapper.countMainOrderByOrderId(orderId);
|
|
|
+ int shopOrderCount = orderClubMapper.countMainShopOrderByOrderId(shopOrderId);
|
|
|
+ if (0 == shopOrderCount) {
|
|
|
return ResponseJson.error("订单不存在!", null);
|
|
|
}
|
|
|
+ ShopOrderVo shopOrder = orderClubMapper.getShopOrderById(shopOrderId);
|
|
|
// 生成分享码
|
|
|
String shareCode = RandomStringUtils.random(4, false, true);
|
|
|
// 过期时间
|
|
@@ -906,13 +915,13 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
calendar.setTime(new Date());
|
|
|
calendar.add(Calendar.DATE, 1);
|
|
|
// 获取数据库已有分享码
|
|
|
- OrderShareCodeVo orderCodeVo = orderClubMapper.getOrderCodeById(orderId);
|
|
|
+ OrderShareCodeVo orderCodeVo = orderClubMapper.getShopOrderCodeById(shopOrderId);
|
|
|
if (orderCodeVo != null && orderCodeVo.getExpiredTime().compareTo(new Date()) >= 0) {
|
|
|
// 旧分享码还未过期,直接返回
|
|
|
return ResponseJson.success(orderCodeVo.getShareCode());
|
|
|
} else if (orderCodeVo != null) {
|
|
|
// 如果旧分享码已经过期,删除分享码使用记录
|
|
|
- orderClubMapper.deleteOrderShareCodeRecord(orderId);
|
|
|
+ orderClubMapper.deleteShopOrderShareCodeRecord(shopOrderId);
|
|
|
// 更新数据库的分享码
|
|
|
orderCodeVo.setShareCode(shareCode);
|
|
|
orderCodeVo.setExpiredTime(calendar.getTime());
|
|
@@ -921,7 +930,8 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
} else {
|
|
|
// 如果没有分享记录,新增数据库的分享码
|
|
|
OrderShareCodeVo newShareCodeVo = new OrderShareCodeVo();
|
|
|
- newShareCodeVo.setOrderId(orderId);
|
|
|
+ newShareCodeVo.setOrderId(shopOrder.getOrderId());
|
|
|
+ newShareCodeVo.setShopOrderId(shopOrderId);
|
|
|
newShareCodeVo.setShareCode(shareCode);
|
|
|
newShareCodeVo.setExpiredTime(calendar.getTime());
|
|
|
newShareCodeVo.setAddTime(new Date());
|
|
@@ -935,7 +945,7 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
/**
|
|
|
* 分享订单,用户身份
|
|
|
*
|
|
|
- * @param orderId 订单Id
|
|
|
+ * @param shopOrderId 订单Id
|
|
|
* @param userId 用户Id
|
|
|
* @param serviceProviderId 协销Id
|
|
|
* @param code 微信code
|
|
@@ -944,11 +954,12 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
* @param headers HttpHeaders
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<String> identityOrderShareCode(Integer orderId, Integer userId, Integer serviceProviderId, String code, String encryptedData, String iv, HttpHeaders headers) {
|
|
|
+ public ResponseJson<String> identityOrderShareCode(Integer shopOrderId, Integer userId, Integer serviceProviderId, String code, String encryptedData, String iv, HttpHeaders headers) {
|
|
|
// 用户组织Id
|
|
|
Integer organizeId = baseMapper.getOrganizeId(userId);
|
|
|
- int orderCount = orderClubMapper.countMainOrderByOrderId(orderId);
|
|
|
- if (0 == orderCount) {
|
|
|
+ // int orderCount = orderClubMapper.countMainOrderByOrderId(orderId);
|
|
|
+ int shopOrderCount = orderClubMapper.countMainShopOrderByOrderId(shopOrderId);
|
|
|
+ if (0 == shopOrderCount) {
|
|
|
return ResponseJson.error("订单不存在!", null);
|
|
|
}
|
|
|
// 微信小程序授权登录(调用user服务,发送服务间调用POST请求)
|
|
@@ -988,7 +999,7 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
return ResponseJson.success(1, "该机构的运营人员查看分享订单!", loginData);
|
|
|
}
|
|
|
// 根据openId统计数据库内是否有有效分享码
|
|
|
- int codeCount = orderClubMapper.countShareCodeRecord(orderId, openId);
|
|
|
+ int codeCount = orderClubMapper.countShareCodeRecord(shopOrderId, openId);
|
|
|
if (codeCount > 0) {
|
|
|
// 游客权限
|
|
|
return ResponseJson.success(3, "游客权限查看分享订单!", null);
|
|
@@ -1002,7 +1013,7 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
/**
|
|
|
* 分享订单,校验分享码
|
|
|
*
|
|
|
- * @param orderId 订单Id
|
|
|
+ * @param shopOrderId 订单Id
|
|
|
* @param shareCode 分享码
|
|
|
* @param code 微信code
|
|
|
* @param encryptedData 微信加密数据
|
|
@@ -1010,11 +1021,12 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
* @param headers HttpHeaders
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<String> checkOrderShareCode(Integer userId, Integer orderId, String shareCode, String code, String encryptedData, String iv, HttpHeaders headers) {
|
|
|
+ public ResponseJson<String> checkOrderShareCode(Integer userId, Integer shopOrderId, String shareCode, String code, String encryptedData, String iv, HttpHeaders headers) {
|
|
|
// 用户组织Id
|
|
|
Integer organizeId = baseMapper.getOrganizeId(userId);
|
|
|
- int orderCount = orderClubMapper.countMainOrderByOrderId(orderId);
|
|
|
- if (0 == orderCount) {
|
|
|
+ // int orderCount = orderClubMapper.countMainOrderByOrderId(orderId);
|
|
|
+ int shopOrderCount = orderClubMapper.countMainShopOrderByOrderId(shopOrderId);
|
|
|
+ if (0 == shopOrderCount) {
|
|
|
return ResponseJson.error("订单不存在!", null);
|
|
|
}
|
|
|
// 微信小程序授权登录(调用user服务,发送服务间调用POST请求)
|
|
@@ -1034,7 +1046,7 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
return ResponseJson.error("微信授权登录异常!", null);
|
|
|
}
|
|
|
// 根据订单Id获取分享码
|
|
|
- OrderShareCodeVo orderCodeVo = orderClubMapper.getOrderCodeById(orderId);
|
|
|
+ OrderShareCodeVo orderCodeVo = orderClubMapper.getShopOrderCodeById(shopOrderId);
|
|
|
if (null == orderCodeVo) {
|
|
|
return ResponseJson.error("该订单没有生成分享码!", null);
|
|
|
}
|
|
@@ -1046,6 +1058,7 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
codeRecord.setOpenId(openId);
|
|
|
codeRecord.setAddTime(new Date());
|
|
|
codeRecord.setOrderId(orderCodeVo.getOrderId());
|
|
|
+ codeRecord.setShopOrderId(shopOrderId);
|
|
|
codeRecord.setDelFlag(0);
|
|
|
codeRecord.setShareCodeId(orderCodeVo.getId());
|
|
|
orderClubMapper.insertOrderShareCodeRecord(codeRecord);
|
|
@@ -1063,18 +1076,18 @@ public class OrderClubServiceImpl implements OrderClubService {
|
|
|
/**
|
|
|
* 分享订单,初始商品数据
|
|
|
*
|
|
|
- * @param orderId 订单Id
|
|
|
+ * @param shopOrderId 订单Id
|
|
|
*/
|
|
|
@Override
|
|
|
- public ResponseJson<Map<String, Object>> getOrderShareInitProduct(Integer orderId) {
|
|
|
- List<OrderProductVo> orderProductList = orderCommonMapper.getOrderProductByOrderId(orderId);
|
|
|
+ public ResponseJson<Map<String, Object>> getOrderShareInitProduct(Integer shopOrderId) {
|
|
|
+ List<OrderProductVo> orderProductList = orderCommonMapper.getshopOrderProductByOrderId(shopOrderId);
|
|
|
orderProductList.forEach(orderProduct -> orderProduct.setImage(ImageUtil.getImageUrl("product", orderProduct.getImage(), domain)));
|
|
|
- OrderVo order = orderCommonMapper.getOrderByOrderId(orderId);
|
|
|
- orderCommonService.setOrderStatus(order);
|
|
|
+ ShopOrderVo shopOrderVo = orderCommonMapper.getShopOrderById(shopOrderId);
|
|
|
+ orderCommonService.setShopOrderStatus(shopOrderVo);
|
|
|
HashMap<String, Object> result = new HashMap<>(2);
|
|
|
- orderCommonService.getDiscernReceiptAndSetOrder(order);
|
|
|
+ orderCommonService.getDiscernReceiptAndSetShoporder(shopOrderVo);
|
|
|
result.put("productList", orderProductList);
|
|
|
- result.put("orderStatus", order.getStatus());
|
|
|
+ result.put("orderStatus", shopOrderVo.getStatus());
|
|
|
//2021.12.14 去掉paybutton判断
|
|
|
// result.put("payButton", order.isPayButton());
|
|
|
return ResponseJson.success(result);
|