diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/OrderApplication.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/OrderApplication.java index 7e1b99352..ed0d910a0 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/OrderApplication.java +++ b/order/order-application/src/main/java/cn/iocoder/mall/order/application/OrderApplication.java @@ -9,6 +9,9 @@ import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactor import org.springframework.boot.web.servlet.server.ConfigurableServletWebServerFactory; import org.springframework.context.annotation.Bean; +/** + * @author xiaofeng + */ @SpringBootApplication(scanBasePackages = {"cn.iocoder.mall.order"}) public class OrderApplication { diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/admins/AdminOrderReturnController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/admins/AdminOrderReturnController.java deleted file mode 100644 index d7591408c..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/admins/AdminOrderReturnController.java +++ /dev/null @@ -1,57 +0,0 @@ -package cn.iocoder.mall.order.application.controller.admins; - -import cn.iocoder.common.framework.util.HttpUtil; -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.order.api.OrderReturnService; -import cn.iocoder.mall.order.api.bo.OrderReturnListBO; -import cn.iocoder.mall.order.api.dto.OrderReturnQueryDTO; -import cn.iocoder.mall.order.application.convert.OrderReturnConvert; -import cn.iocoder.mall.order.application.po.admin.OrderReturnQueryPO; -import io.swagger.annotations.Api; -import org.apache.dubbo.config.annotation.Reference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; - -/** - * 订单退货 - * - * @author Sin - * @time 2019-05-06 21:31 - */ -@RestController -@RequestMapping("admins/order_return") -@Api("订单退货(admins api)") -public class AdminOrderReturnController { - - @Reference(validation = "true", version = "${dubbo.provider.OrderReturnService.version}") - private OrderReturnService orderReturnService; - - @GetMapping("list") - public CommonResult list(@Validated OrderReturnQueryPO queryPO) { - OrderReturnQueryDTO queryDTO = OrderReturnConvert.INSTANCE.convert(queryPO); - return orderReturnService.orderReturnList(queryDTO); - } - - @PostMapping("agree") - public CommonResult agree(@RequestParam("id") Integer id) { - return orderReturnService.orderReturnAgree(id); - } - - @PostMapping("refuse") - public CommonResult refuse(@RequestParam("id") Integer id) { - return orderReturnService.orderReturnRefuse(id); - } - - @PostMapping("confirm_receipt") - public CommonResult confirmReceipt(@RequestParam("id") Integer id) { - return orderReturnService.confirmReceipt(id); - } - - @PostMapping("confirm_refund") - public CommonResult confirmRefund(HttpServletRequest request, @RequestParam("id") Integer id) { - String ip = HttpUtil.getIp(request); - return orderReturnService.refund(id, ip); - } -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/admins/AdminsOrderController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/admins/AdminsOrderController.java deleted file mode 100644 index 7dd025655..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/admins/AdminsOrderController.java +++ /dev/null @@ -1,101 +0,0 @@ -package cn.iocoder.mall.order.application.controller.admins; - -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.order.api.OrderService; -import cn.iocoder.mall.order.api.bo.OrderItemBO; -import cn.iocoder.mall.order.api.bo.OrderPageBO; -import cn.iocoder.mall.order.api.bo.OrderRecipientBO; -import cn.iocoder.mall.order.api.dto.OrderItemUpdateDTO; -import cn.iocoder.mall.order.api.dto.OrderLogisticsUpdateDTO; -import cn.iocoder.mall.order.api.dto.OrderQueryDTO; -import cn.iocoder.mall.order.application.convert.OrderConvertAPP; -import cn.iocoder.mall.order.application.convert.OrderDeliveryConvert; -import cn.iocoder.mall.order.application.po.admin.OrderDeliverPO; -import cn.iocoder.mall.order.application.po.admin.OrderItemUpdatePO; -import cn.iocoder.mall.order.application.po.admin.OrderLogisticsPO; -import cn.iocoder.mall.order.application.po.admin.OrderPageQueryPO; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.apache.dubbo.config.annotation.Reference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 订单API(admins) - * - * @author Sin - * @time 2019-03-24 10:22 - */ -@RestController -@RequestMapping("admins/order") -@Api(value = "订单 API(admins)") -public class AdminsOrderController { - - @Reference(validation = "true", version = "${dubbo.provider.OrderService.version}") - private OrderService orderService; - - @GetMapping("page") - @ApiOperation("订单列表") - public CommonResult getOrderPage(@Validated OrderPageQueryPO orderPageQueryVO) { - OrderQueryDTO orderQueryDTO = OrderConvertAPP.INSTANCE.convert(orderPageQueryVO); - return orderService.getOrderPage(orderQueryDTO); - } - - @GetMapping("order_items") - @ApiOperation("订单列表") - public CommonResult> getOrderItems(@RequestParam("orderId") Integer orderId) { - return orderService.getOrderItems(orderId); - } - - @GetMapping("order_recipient_info") - @ApiOperation("订单收件人信息") - public CommonResult getOrderRecipientBO(@RequestParam("orderId") Integer orderId) { - return orderService.getOrderRecipientBO(orderId); - } - - @PostMapping("order_deliver") - @ApiOperation("订单发货") - public CommonResult orderDeliver(@RequestBody @Validated OrderDeliverPO orderDeliverPO) { - return orderService.orderDelivery(OrderDeliveryConvert.INSTANCE.convert(orderDeliverPO)); - } - - @PutMapping("update_remark") - @ApiOperation("更新-更新订单备注") - public CommonResult updateRemark(@RequestParam("orderId") Integer orderId, - @RequestParam("remark") String remark) { - return orderService.updateOrderRemake(orderId, remark); - } - - @PutMapping("cancel_order") - @ApiOperation("取消订单") - public CommonResult cancelOrder( - @RequestParam("orderId") Integer orderId, - @RequestParam("reasons") Integer reasons, - @RequestParam(value = "otherReasons", required = false) String otherReasons) { - return orderService.cancelOrder(orderId, reasons, otherReasons); - } - - @PutMapping("order_item/update_pay_amount") - @ApiOperation("更新-订单item实付金额") - public CommonResult updateOrderItemPayAmount(@RequestParam("orderId") Integer orderId, - @RequestParam("orderItemId") Integer orderItemId, - @RequestParam("payAmount") Integer payAmount) { - return orderService.updateOrderItemPayAmount(orderId, orderItemId, payAmount); - } - - @PutMapping("order_item/update") - @ApiOperation("更新-订单item") - public CommonResult updateOrderItem(@RequestBody @Validated OrderItemUpdatePO orderItemUpdateVO) { - OrderItemUpdateDTO dto = OrderConvertAPP.INSTANCE.convert(orderItemUpdateVO); - return orderService.updateOrderItem(dto); - } - - @PutMapping("logistics/update") - @ApiOperation("更新-订单物流") - public CommonResult updateLogistics(@RequestBody @Validated OrderLogisticsPO orderLogisticsVO) { - OrderLogisticsUpdateDTO dto = OrderConvertAPP.INSTANCE.convert(orderLogisticsVO); - return orderService.updateLogistics(dto); - } -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderCommentController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderCommentController.java deleted file mode 100644 index e908c5e16..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderCommentController.java +++ /dev/null @@ -1,78 +0,0 @@ -package cn.iocoder.mall.order.application.controller.users; - -import cn.iocoder.common.framework.constant.MallConstants; -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.order.api.OrderCommentReplyService; -import cn.iocoder.mall.order.api.OrderCommentService; -import cn.iocoder.mall.order.api.bo.OrderCommentCreateBO; -import cn.iocoder.mall.order.api.bo.OrderCommentInfoAndMerchantReplyBO; -import cn.iocoder.mall.order.api.bo.OrderCommentPageBO; -import cn.iocoder.mall.order.api.bo.OrderCommentStateInfoPageBO; -import cn.iocoder.mall.order.api.dto.OrderCommentCreateDTO; -import cn.iocoder.mall.order.api.dto.OrderCommentPageDTO; -import cn.iocoder.mall.order.api.dto.OrderCommentStateInfoPageDTO; -import cn.iocoder.mall.user.sdk.annotation.RequiresLogin; -import cn.iocoder.mall.user.sdk.context.UserSecurityContextHolder; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.apache.dubbo.config.annotation.Reference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - - -import static cn.iocoder.common.framework.vo.CommonResult.success; - -/** - * - * 订单评论 Api(user) - * - * @author wtz - * @time 2019-05-27 20:46 - */ -@RestController -@RequestMapping(MallConstants.ROOT_PATH_USER + "/order_comment") -@Api("用户评论模块") -public class OrderCommentController { - - @Reference(validation = "true", version = "${dubbo.provider.OrderCommentService.version}") - private OrderCommentService orderCommentService; - - @Reference(validation = "true", version = "${dubbo.provider.OrderCommentReplyService.version}") - private OrderCommentReplyService orderCommentReplyService; - - - @PostMapping("create_order_comment") - //@RequiresLogin - @ApiOperation(value = "创建订单评论") - public CommonResult createOrderComment(@RequestBody @Validated OrderCommentCreateDTO orderCommentCreateDTO) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - orderCommentCreateDTO.setUserId(userId); - return success(orderCommentService.createOrderComment(orderCommentCreateDTO)); - } - - @GetMapping("order_comment_page") - @ApiOperation(value = "获取评论分页") - public CommonResult getOrderCommentPage(@Validated OrderCommentPageDTO orderCommentPageDTO){ - return success(orderCommentService.getOrderCommentPage(orderCommentPageDTO)); - } - - @GetMapping("order_comment_info_merchant_reply") - @ApiOperation(value = "获取评论和商家回复") - public CommonResult geOrderCommentInfoAndMerchantReply(@RequestParam("commentId") Integer commentId){ - OrderCommentInfoAndMerchantReplyBO orderCommentInfoAndMerchantReplyBO=new OrderCommentInfoAndMerchantReplyBO(); - orderCommentInfoAndMerchantReplyBO.setOrderCommentInfoBO(orderCommentService.getOrderCommentInfo(commentId)); - orderCommentInfoAndMerchantReplyBO.setOrderCommentMerchantReplyBOS(orderCommentReplyService.getOrderCommentMerchantReply(commentId)); - return success(orderCommentInfoAndMerchantReplyBO); - } - - @GetMapping - //@RequiresLogin - @ApiOperation(value = "获取订单评论状态分页") - public CommonResult getOrderCommentStateInfoPage(@Validated OrderCommentStateInfoPageDTO orderCommentStateInfoPageDTO){ - //Integer userId = UserSecurityContextHolder.getContext().getUserId(); - //orderCommentStateInfoPageDTO.setUserId(userId); - return success(orderCommentService.getOrderCommentStateInfoPage(orderCommentStateInfoPageDTO)); - } - - -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderCommentReplyController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderCommentReplyController.java deleted file mode 100644 index 37c147b65..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderCommentReplyController.java +++ /dev/null @@ -1,47 +0,0 @@ -package cn.iocoder.mall.order.application.controller.users; - -import cn.iocoder.common.framework.constant.MallConstants; -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.order.api.OrderCommentReplyService; -import cn.iocoder.mall.order.api.bo.OrderCommentReplyCreateBO; -import cn.iocoder.mall.order.api.bo.OrderCommentReplyPageBO; -import cn.iocoder.mall.order.api.dto.OrderCommentReplyCreateDTO; -import cn.iocoder.mall.order.api.dto.OrderCommentReplyPageDTO; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.apache.dubbo.config.annotation.Reference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import static cn.iocoder.common.framework.vo.CommonResult.success; - - -/** - * - * 评论回复模块 Api(user) - * - * @author wtz - * @time 2019-05-31 18:00 - */ -@RestController -@RequestMapping(MallConstants.ROOT_PATH_USER + "/order_comment_reply") -@Api("用户评论回复模块 ") -public class OrderCommentReplyController { - - @Reference(validation = "true", version = "${dubbo.provider.OrderCommentService.version}") - private OrderCommentReplyService orderCommentReplyService; - - @PostMapping("create_order_comment_reply") - //@RequiresLogin - @ApiOperation(value = "创建订单回复") - public CommonResult createOrderCommentReply(@RequestBody @Validated OrderCommentReplyCreateDTO orderCommentReplyCreateDTO){ - return success(orderCommentReplyService.createOrderCommentReply(orderCommentReplyCreateDTO)); - } - - @GetMapping("order_comment_reply_page") - //@RequiresLogin - @ApiOperation(value = "分页获取评论回复") - public CommonResult getOrderCommentReplyPage(@Validated OrderCommentReplyPageDTO orderCommentReplyCreateDTO){ - return success(orderCommentReplyService.getOrderCommentReplyPage(orderCommentReplyCreateDTO)); - } -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderController.java deleted file mode 100644 index 2d53ae44d..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderController.java +++ /dev/null @@ -1,152 +0,0 @@ -package cn.iocoder.mall.order.application.controller.users; - -import cn.iocoder.common.framework.util.HttpUtil; -import cn.iocoder.common.framework.util.ServiceExceptionUtil; -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.system.api.DataDictService; -import cn.iocoder.mall.system.api.bo.datadict.DataDictBO; -import cn.iocoder.mall.order.api.CartService; -import cn.iocoder.mall.order.api.OrderService; -import cn.iocoder.mall.order.api.bo.*; -import cn.iocoder.mall.order.api.constant.DictKeyConstants; -import cn.iocoder.mall.order.api.constant.OrderErrorCodeEnum; -import cn.iocoder.mall.order.api.dto.CalcOrderPriceDTO; -import cn.iocoder.mall.order.api.dto.OrderCreateDTO; -import cn.iocoder.mall.order.api.dto.OrderQueryDTO; -import cn.iocoder.mall.order.application.convert.CartConvert; -import cn.iocoder.mall.order.application.convert.OrderConvertAPP; -import cn.iocoder.mall.order.application.po.user.OrderCreatePO; -import cn.iocoder.mall.order.application.vo.UsersOrderConfirmCreateVO; -import cn.iocoder.mall.promotion.api.CouponService; -import cn.iocoder.mall.promotion.api.bo.CouponCardAvailableBO; -import cn.iocoder.mall.user.sdk.annotation.RequiresLogin; -import cn.iocoder.mall.user.sdk.context.UserSecurityContextHolder; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.apache.dubbo.config.annotation.Reference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; -import java.util.Collections; -import java.util.List; -import java.util.stream.Collectors; - -import static cn.iocoder.common.framework.vo.CommonResult.success; - -/** - * 订单API(users) - * - * @author Sin - * @time 2019-03-24 11:24 - */ -@RestController -@RequestMapping("users/order") -@Api(description = "用户订单") // TODO FROM 芋艿 to 小范,description 已经废弃啦 -public class OrderController { - - @Reference(validation = "true", version = "${dubbo.provider.OrderReturnService.version}") - private OrderService orderService; - - @Reference(validation = "true", version = "${dubbo.provider.CartService.version}") - private CartService cartService; - - @Reference(validation = "true", version = "${dubbo.consumer.DataDictService.version}") - private DataDictService dataDictService; - - @Reference(validation = "true", version = "${dubbo.consumer.CouponService.version}") - private CouponService couponService; - - @GetMapping("order_page") - @RequiresLogin - @ApiOperation("订单分页") - public CommonResult getOrderPage(@Validated OrderQueryDTO orderQueryDTO) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - orderQueryDTO.setUserId(userId); - return orderService.getOrderPage(orderQueryDTO); - } - - @PostMapping("create_order") - @RequiresLogin - @ApiOperation("创建订单") - public CommonResult createOrder(@RequestBody @Validated OrderCreatePO orderCreatePO, - HttpServletRequest request) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - OrderCreateDTO orderCreateDTO = OrderConvertAPP.INSTANCE.convert(orderCreatePO); - orderCreateDTO.setUserId(userId).setIp(HttpUtil.getIp(request)); - return orderService.createOrder(orderCreateDTO); - } - - @PostMapping("create_order_from_cart") - @RequiresLogin - @ApiOperation("创建订单购物车") - public CommonResult createOrderFromCart(@RequestParam("userAddressId") Integer userAddressId, - @RequestParam(value = "couponCardId", required = false) Integer couponCardId, - @RequestParam(value = "remark", required = false) String remark, - HttpServletRequest request) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - // 获得购物车中选中的商品 - List cartItems = cartService.list(userId, true); - if (cartItems.isEmpty()) { - return ServiceExceptionUtil.error(OrderErrorCodeEnum.ORDER_CREATE_CART_IS_EMPTY.getCode()); - } - // 创建 OrderCreateDTO 对象 - OrderCreateDTO orderCreateDTO = OrderConvertAPP.INSTANCE.createOrderCreateDTO(userId, userAddressId, - remark, HttpUtil.getIp(request), - cartItems, couponCardId); - // 创建订单 - CommonResult createResult = orderService.createOrder(orderCreateDTO); - if (createResult.isError()) { - return CommonResult.error(createResult); - } - // 清空购物车 // TODO 芋艿,需要标记删除的原因,即结果为创建为某个订单。 - cartService.deleteList(userId, cartItems.stream().map(CartItemBO::getSkuId).collect(Collectors.toList())); - // 返回结果 - return createResult; - } - - @GetMapping("confirm_create_order") - @RequiresLogin - @ApiOperation("确认创建订单") - public CommonResult getConfirmCreateOrder(@RequestParam("skuId") Integer skuId, - @RequestParam("quantity") Integer quantity, - @RequestParam(value = "couponCardId", required = false) Integer couponCardId) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - // 创建 CalcOrderPriceDTO 对象,并执行价格计算 - CalcOrderPriceDTO calcOrderPriceDTO = new CalcOrderPriceDTO() - .setUserId(userId) - .setItems(Collections.singletonList(new CalcOrderPriceDTO.Item(skuId, quantity, true))) - .setCouponCardId(couponCardId); - CalcOrderPriceBO calcOrderPrice = cartService.calcOrderPrice(calcOrderPriceDTO); - // 获得优惠劵 - List couponCards = couponService.getCouponCardList(userId, - CartConvert.INSTANCE.convertList(calcOrderPrice.getItemGroups())); - // 执行数据拼装 - return success(CartConvert.INSTANCE.convert(calcOrderPrice).setCouponCards(couponCards)); - } - - @PostMapping("confirm_receiving") - @RequiresLogin - @ApiOperation("确认收货") - public CommonResult confirmReceiving(@RequestParam("orderId") Integer orderId) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - return orderService.confirmReceiving(userId, orderId); - } - - @GetMapping("info") - @RequiresLogin - @ApiOperation("订单详情") - public CommonResult orderInfo(@RequestParam("orderId") Integer orderId) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - CommonResult commonResult = orderService.info(userId, orderId); - - OrderInfoBO orderInfoBO = commonResult.getData(); - if (orderInfoBO != null) { - CommonResult dictResult = dataDictService - .getDataDict(DictKeyConstants.ORDER_STATUS, orderInfoBO.getStatus()); - orderInfoBO.setStatusText(dictResult.getData().getDisplayName()); - } - return commonResult; - } - -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderLogisticsController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderLogisticsController.java deleted file mode 100644 index 918b92ac2..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderLogisticsController.java +++ /dev/null @@ -1,85 +0,0 @@ -package cn.iocoder.mall.order.application.controller.users; - -import cn.iocoder.common.framework.util.ServiceExceptionUtil; -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.system.api.DataDictService; -import cn.iocoder.mall.system.api.bo.datadict.DataDictBO; -import cn.iocoder.mall.order.api.OrderLogisticsService; -import cn.iocoder.mall.order.api.bo.OrderLogisticsInfoBO; -import cn.iocoder.mall.order.api.bo.OrderLogisticsInfoWithOrderBO; -import cn.iocoder.mall.order.api.constant.DictKeyConstants; -import cn.iocoder.mall.order.api.constant.OrderErrorCodeEnum; -import cn.iocoder.mall.user.sdk.context.UserSecurityContextHolder; -import org.apache.dubbo.config.annotation.Reference; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.util.CollectionUtils; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; - -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.stream.Collectors; - -/** - * 订单物流 controller - * - * @author Sin - * @time 2019-04-12 22:24 - */ -@RestController -@RequestMapping("users/order_logistics") -@Api(description = "订单物流信息") -public class OrderLogisticsController { - - @Reference(validation = "true", version = "${dubbo.provider.OrderLogisticsService.version}") - private OrderLogisticsService orderLogisticsService; - - @Reference(validation = "true", version = "${dubbo.consumer.DataDictService.version}") - private DataDictService dataDictService; - - @GetMapping("info") - @ApiOperation("物流详细 - 物流通用") - public CommonResult logistics(@RequestParam("logisticsId") Integer logisticsId) { - return orderLogisticsService.getLogisticsInfo(logisticsId); - } - - @GetMapping("info_order") - @ApiOperation("物流详细 - 返回订单所关联的所有物流信息(订单用的)") - public CommonResult logisticsInfoWithOrder(@RequestParam("orderId") Integer orderId) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - CommonResult commonResult = orderLogisticsService.getOrderLogisticsInfo(userId, orderId); - if (commonResult.isSuccess()) { - OrderLogisticsInfoWithOrderBO orderLogisticsInfoBO = commonResult.getData(); - List logisticsList = orderLogisticsInfoBO.getLogistics(); - - // 获取字典值 - Set dictValues = logisticsList.stream().map(o -> o.getLogistics()).collect(Collectors.toSet()); - if (!CollectionUtils.isEmpty(dictValues)) { - CommonResult> dictResult = dataDictService - .getDataDictList(DictKeyConstants.ORDER_LOGISTICS_COMPANY, dictValues); - - if (dictResult.isError()) { - // 错误情况 - return ServiceExceptionUtil.error(OrderErrorCodeEnum.DICT_SERVER_INVOKING_FAIL.getCode()); - } - - // 转换结果字典值 - Map dataDictBOMap = dictResult.getData() - .stream().collect(Collectors.toMap(o -> o.getValue(), o -> o)); - - logisticsList.stream().map(o -> { - String dicValue = o.getLogistics().toString(); - if (dataDictBOMap.containsKey(dicValue)) { - o.setLogisticsText(dataDictBOMap.get(dicValue).getDisplayName()); - } - return o; - }).collect(Collectors.toList()); - } - } - return commonResult; - } -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderReturnController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderReturnController.java deleted file mode 100644 index ff5503dbc..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/OrderReturnController.java +++ /dev/null @@ -1,65 +0,0 @@ -package cn.iocoder.mall.order.application.controller.users; - -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.system.api.DataDictService; -import cn.iocoder.mall.system.api.bo.datadict.DataDictBO; -import cn.iocoder.mall.order.api.OrderReturnService; -import cn.iocoder.mall.order.api.bo.OrderReturnInfoBO; -import cn.iocoder.mall.order.api.constant.DictKeyConstants; -import cn.iocoder.mall.order.api.dto.OrderReturnApplyDTO; -import cn.iocoder.mall.order.application.convert.OrderReturnConvert; -import cn.iocoder.mall.order.application.po.user.OrderReturnApplyPO; -import org.apache.dubbo.config.annotation.Reference; -import io.swagger.annotations.ApiOperation; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 订单退款/售后流程 - * - * @author Sin - * @time 2019-04-25 22:04 - */ -@RestController -@RequestMapping("users/order_return") -public class OrderReturnController { - - @Reference(validation = "true", version = "${dubbo.provider.OrderReturnService.version}") - private OrderReturnService orderReturnService; - - @Reference(validation = "true", version = "${dubbo.consumer.DataDictService.version}") - private DataDictService dataDictService; - - @GetMapping("reason") - @ApiOperation("原因") - public CommonResult> orderReturnReason() { - return dataDictService.getDataDict(DictKeyConstants.ORDER_RETURN_REASON); - } - - @PostMapping("apply") - @ApiOperation("订单售后") - public CommonResult orderReturnApply(@RequestBody OrderReturnApplyPO orderReturnApplyPO) { - OrderReturnApplyDTO applyDTO = OrderReturnConvert.INSTANCE.convert(orderReturnApplyPO); - return orderReturnService.orderReturnApply(applyDTO); - } - - @GetMapping("info") - @ApiOperation("订单售后详细") - public CommonResult orderApplyInfo(@RequestParam("orderId") Integer orderId) { - CommonResult commonResult = orderReturnService.orderApplyInfo(orderId); - - // 转换 字典值 - if (commonResult.isSuccess()) { - CommonResult dataDictResult = dataDictService.getDataDict( - DictKeyConstants.ORDER_RETURN_SERVICE_TYPE, - commonResult.getData().getReturnInfo().getServiceType()); - - if (dataDictResult.isSuccess()) { - commonResult.getData().getReturnInfo().setServiceTypeText(dataDictResult.getData().getDisplayName()); - } - } - - return commonResult; - } -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/UsersCartController.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/UsersCartController.java deleted file mode 100644 index 5e021055c..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/controller/users/UsersCartController.java +++ /dev/null @@ -1,143 +0,0 @@ -package cn.iocoder.mall.order.application.controller.users; - -import cn.iocoder.common.framework.vo.CommonResult; -import cn.iocoder.mall.order.api.CartService; -import cn.iocoder.mall.order.api.OrderService; -import cn.iocoder.mall.order.api.bo.CalcOrderPriceBO; -import cn.iocoder.mall.order.api.bo.CalcSkuPriceBO; -import cn.iocoder.mall.order.api.bo.CartItemBO; -import cn.iocoder.mall.order.api.dto.CalcOrderPriceDTO; -import cn.iocoder.mall.order.application.convert.CartConvert; -import cn.iocoder.mall.order.application.vo.UsersCalcSkuPriceVO; -import cn.iocoder.mall.order.application.vo.UsersCartDetailVO; -import cn.iocoder.mall.order.application.vo.UsersOrderConfirmCreateVO; -import cn.iocoder.mall.promotion.api.CouponService; -import cn.iocoder.mall.promotion.api.bo.CouponCardAvailableBO; -import cn.iocoder.mall.user.sdk.context.UserSecurityContextHolder; -import org.apache.dubbo.config.annotation.Reference; -import org.springframework.web.bind.annotation.*; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Set; - -import static cn.iocoder.common.framework.vo.CommonResult.success; - -@RestController -@RequestMapping("users/cart") -public class UsersCartController { - - @Reference(validation = "true", version = "${dubbo.provider.CartService.version}") - private CartService cartService; - - @Reference(validation = "true", version = "${dubbo.provider.OrderService.version}") - private OrderService orderService; - - @Reference(validation = "true", version = "${dubbo.consumer.CouponService.version}") - private CouponService couponService; - - @PostMapping("add") - public CommonResult add(@RequestParam("skuId") Integer skuId, - @RequestParam("quantity") Integer quantity) { - // 添加到购物车 - cartService.add(UserSecurityContextHolder.getContext().getUserId(), skuId, quantity); - // 获得目前购物车商品总数量 - return success(cartService.count(UserSecurityContextHolder.getContext().getUserId())); - } - - @PostMapping("update_quantity") - public CommonResult updateQuantity(@RequestParam("skuId") Integer skuId, // TODO 芋艿,先暂用这个 VO 。等促销活动出来后,做调整 - @RequestParam("quantity") Integer quantity) { - // 添加到购物车 - cartService.updateQuantity(UserSecurityContextHolder.getContext().getUserId(), - skuId, quantity); - // 获得目前购物车明细 - return getCartDetail(); - } - - @PostMapping("update_selected") - public CommonResult updateSelected(@RequestParam("skuIds") Set skuIds, // TODO 芋艿,先暂用这个 VO 。等促销活动出来后,做调整 - @RequestParam("selected") Boolean selected) { - // 添加到购物车 - cartService.updateSelected(UserSecurityContextHolder.getContext().getUserId(), skuIds, selected); - // 获得目前购物车明细 - return getCartDetail(); - } - - @GetMapping("count") - public CommonResult count() { - return success(cartService.count(UserSecurityContextHolder.getContext().getUserId())); - } - - @GetMapping("/list") - public CommonResult list() { // TODO 芋艿,先暂用这个 VO 。等促销活动出来后,做调整 - return getCartDetail(); - } - - private CommonResult getCartDetail() { - // 获得购物车中选中的 - List cartItems = cartService.list(UserSecurityContextHolder.getContext().getUserId(), null); - // 购物车为空时,构造空的 UsersOrderConfirmCreateVO 返回 - if (cartItems.isEmpty()) { - UsersCartDetailVO result = new UsersCartDetailVO(); - result.setItemGroups(Collections.emptyList()); - result.setFee(new UsersCartDetailVO.Fee(0, 0, 0, 0)); - return success(result); - } - // 计算商品价格 - CalcOrderPriceBO calcOrder = list0(cartItems, null); - // 执行数据拼装 - return success(CartConvert.INSTANCE.convert2(calcOrder)); - } - - @GetMapping("/confirm_create_order") - public CommonResult getConfirmCreateOrder(@RequestParam(value = "couponCardId", required = false) Integer couponCardId) { - Integer userId = UserSecurityContextHolder.getContext().getUserId(); - // 获得购物车中选中的 - List cartItems = cartService.list(userId, true); - // 购物车为空时,构造空的 UsersOrderConfirmCreateVO 返回 - if (cartItems.isEmpty()) { - UsersOrderConfirmCreateVO result = new UsersOrderConfirmCreateVO(); - result.setItemGroups(Collections.emptyList()); - result.setFee(new UsersOrderConfirmCreateVO.Fee(0, 0, 0, 0)); - return success(result); - } - // 计算商品价格 - CalcOrderPriceBO calcOrderPrice = list0(cartItems, couponCardId); - // 获得优惠劵 - List couponCards = couponService.getCouponCardList(userId, - CartConvert.INSTANCE.convertList(calcOrderPrice.getItemGroups())); - // 执行数据拼装 - return success(CartConvert.INSTANCE.convert(calcOrderPrice).setCouponCards(couponCards)); - } - - private CalcOrderPriceBO list0(List cartItems, Integer couponCardId) { - // 创建计算的 DTO - CalcOrderPriceDTO calcOrderPriceDTO = new CalcOrderPriceDTO() - .setUserId(UserSecurityContextHolder.getContext().getUserId()) - .setItems(new ArrayList<>(cartItems.size())) - .setCouponCardId(couponCardId); - for (CartItemBO item : cartItems) { - calcOrderPriceDTO.getItems().add(new CalcOrderPriceDTO.Item(item.getSkuId(), item.getQuantity(), item.getSelected())); - } - // 执行计算 - return cartService.calcOrderPrice(calcOrderPriceDTO); - } - - @GetMapping("/calc_sku_price") - public CommonResult calcSkuPrice(@RequestParam("skuId") Integer skuId) { - // 计算 sku 的价格 - CalcSkuPriceBO calcSkuPrice = cartService.calcSkuPrice(skuId); - return success(CartConvert.INSTANCE.convert2(calcSkuPrice)); - } - - public CommonResult confirmOrder() { - // 查询购物车列表(选中的) -// cartService.list(userId, true); - // 查询确认订单信息的明细 - - return null; - } - -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/CartConvert.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/CartConvert.java deleted file mode 100644 index eec491ebe..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/CartConvert.java +++ /dev/null @@ -1,40 +0,0 @@ -package cn.iocoder.mall.order.application.convert; - -import cn.iocoder.mall.order.api.bo.CalcOrderPriceBO; -import cn.iocoder.mall.order.api.bo.CalcSkuPriceBO; -import cn.iocoder.mall.order.application.vo.UsersCalcSkuPriceVO; -import cn.iocoder.mall.order.application.vo.UsersCartDetailVO; -import cn.iocoder.mall.order.application.vo.UsersOrderConfirmCreateVO; -import cn.iocoder.mall.promotion.api.dto.CouponCardSpuDTO; -import org.mapstruct.Mapper; -import org.mapstruct.factory.Mappers; - -import java.util.ArrayList; -import java.util.List; -import java.util.stream.Collectors; - -@Mapper -public interface CartConvert { - - CartConvert INSTANCE = Mappers.getMapper(CartConvert.class); - - UsersOrderConfirmCreateVO convert(CalcOrderPriceBO calcOrderPriceBO); - - UsersCartDetailVO convert2(CalcOrderPriceBO calcOrderPriceBO); - - UsersCalcSkuPriceVO convert2(CalcSkuPriceBO calcSkuPriceBO); - - default List convertList(List itemGroups) { - List items = new ArrayList<>(); - itemGroups.forEach(itemGroup -> items.addAll(itemGroup.getItems().stream().map( - item -> new CouponCardSpuDTO() - .setSpuId(item.getSpu().getId()) - .setSkuId(item.getId()) - .setCategoryId(item.getSpu().getCid()) - .setPrice(item.getBuyPrice()) - .setQuantity(item.getBuyQuantity())) - .collect(Collectors.toList()))); - return items; - } - -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderConvertAPP.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderConvertAPP.java deleted file mode 100644 index 98703be0e..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderConvertAPP.java +++ /dev/null @@ -1,54 +0,0 @@ -package cn.iocoder.mall.order.application.convert; - -import cn.iocoder.mall.order.api.bo.CartItemBO; -import cn.iocoder.mall.order.api.dto.*; -import cn.iocoder.mall.order.application.po.admin.OrderItemUpdatePO; -import cn.iocoder.mall.order.application.po.admin.OrderLogisticsPO; -import cn.iocoder.mall.order.application.po.admin.OrderPageQueryPO; -import cn.iocoder.mall.order.application.po.user.OrderCreatePO; -import org.mapstruct.Mapper; -import org.mapstruct.Mappings; -import org.mapstruct.factory.Mappers; - -import java.util.List; - -/** - * application 订单 convert - * - * TODO 这种方式 文件名不能一样哈! - * - * @author Sin - * @time 2019-03-24 10:45 - */ -@Mapper -public interface OrderConvertAPP { - - OrderConvertAPP INSTANCE = Mappers.getMapper(OrderConvertAPP.class); - - @Mappings({}) - OrderQueryDTO convert(OrderPageQueryPO orderPageQueryVO); - - @Mappings({}) - OrderLogisticsUpdateDTO convert(OrderLogisticsPO orderLogisticsVO); - - @Mappings({}) - OrderItemUpdateDTO convert(OrderItemUpdatePO orderItemUpdateVO); - - @Mappings({}) - OrderCreateDTO convert(OrderCreatePO orderCreatePO); - - @Mappings({}) - List convert(List cartItems); - - default OrderCreateDTO createOrderCreateDTO(Integer userId, Integer userAddressId, String remark, String ip, - List cartItems, Integer couponCardId) { - return new OrderCreateDTO() - .setUserId(userId) - .setUserAddressId(userAddressId) - .setRemark(remark) - .setIp(ip) - .setOrderItems(this.convert(cartItems)) - .setCouponCardId(couponCardId); - } - -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderDeliveryConvert.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderDeliveryConvert.java deleted file mode 100644 index 777126121..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderDeliveryConvert.java +++ /dev/null @@ -1,20 +0,0 @@ -package cn.iocoder.mall.order.application.convert; - -import cn.iocoder.mall.order.api.dto.OrderDeliveryDTO; -import cn.iocoder.mall.order.application.po.admin.OrderDeliverPO; -import org.mapstruct.Mapper; -import org.mapstruct.Mappings; -import org.mapstruct.factory.Mappers; - -/** - * @author Sin - * @time 2019-04-05 17:00 - */ -@Mapper -public interface OrderDeliveryConvert { - - OrderDeliveryConvert INSTANCE = Mappers.getMapper(OrderDeliveryConvert.class); - - @Mappings({}) - OrderDeliveryDTO convert(OrderDeliverPO orderDeliverPO); -} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderReturnConvert.java b/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderReturnConvert.java deleted file mode 100644 index 71f25954f..000000000 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/convert/OrderReturnConvert.java +++ /dev/null @@ -1,27 +0,0 @@ -package cn.iocoder.mall.order.application.convert; - -import cn.iocoder.mall.order.api.dto.OrderReturnApplyDTO; -import cn.iocoder.mall.order.api.dto.OrderReturnQueryDTO; -import cn.iocoder.mall.order.application.po.admin.OrderReturnQueryPO; -import cn.iocoder.mall.order.application.po.user.OrderReturnApplyPO; -import org.mapstruct.Mapper; -import org.mapstruct.Mappings; -import org.mapstruct.factory.Mappers; - -/** - * 订单退货 - * - * @author Sin - * @time 2019-04-25 21:54 - */ -@Mapper -public interface OrderReturnConvert { - - OrderReturnConvert INSTANCE = Mappers.getMapper(OrderReturnConvert.class); - - @Mappings({}) - OrderReturnApplyDTO convert(OrderReturnApplyPO orderReturnApplyPO); - - @Mappings({}) - OrderReturnQueryDTO convert(OrderReturnQueryPO orderReturnQueryPO); -} diff --git a/order/order-rest/pom.xml b/order/order-rest/pom.xml index b525ca535..150c7d471 100644 --- a/order/order-rest/pom.xml +++ b/order/order-rest/pom.xml @@ -19,7 +19,6 @@ order-biz 1.0-SNAPSHOT - cn.iocoder.mall diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/admins/AdminOrderReturnController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/admins/AdminOrderReturnController.java new file mode 100644 index 000000000..e0a2e3ba6 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/admins/AdminOrderReturnController.java @@ -0,0 +1,47 @@ +package cn.iocoder.mall.order.rest.controller.admins; + +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 订单退货 + * + * @author Sin + * @time 2019-05-06 21:31 + */ +@RestController +@RequestMapping("admins/order_return") +@Api("订单退货(admins api)") +public class AdminOrderReturnController { + +// @Reference(validation = "true", version = "${dubbo.provider.OrderReturnService.version}") +// private OrderReturnService orderReturnService; +// +// @GetMapping("list") +// public CommonResult list(@Validated OrderReturnQueryPO queryPO) { +// OrderReturnQueryDTO queryDTO = OrderReturnConvert.INSTANCE.convert(queryPO); +// return orderReturnService.orderReturnList(queryDTO); +// } +// +// @PostMapping("agree") +// public CommonResult agree(@RequestParam("id") Integer id) { +// return orderReturnService.orderReturnAgree(id); +// } +// +// @PostMapping("refuse") +// public CommonResult refuse(@RequestParam("id") Integer id) { +// return orderReturnService.orderReturnRefuse(id); +// } +// +// @PostMapping("confirm_receipt") +// public CommonResult confirmReceipt(@RequestParam("id") Integer id) { +// return orderReturnService.confirmReceipt(id); +// } +// +// @PostMapping("confirm_refund") +// public CommonResult confirmRefund(HttpServletRequest request, @RequestParam("id") Integer id) { +// String ip = HttpUtil.getIp(request); +// return orderReturnService.refund(id, ip); +// } +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/admins/AdminsOrderController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/admins/AdminsOrderController.java new file mode 100644 index 000000000..fa2eb03d6 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/admins/AdminsOrderController.java @@ -0,0 +1,83 @@ +package cn.iocoder.mall.order.rest.controller.admins; + +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 订单API(admins) + * + * @author Sin + * @time 2019-03-24 10:22 + */ +@RestController +@RequestMapping("admins/order") +@Api(value = "订单 API(admins)") +public class AdminsOrderController { + +// @Reference(validation = "true", version = "${dubbo.provider.OrderService.version}") +// private OrderService orderService; +// +// @GetMapping("page") +// @ApiOperation("订单列表") +// public CommonResult getOrderPage(@Validated OrderPageQueryPO orderPageQueryVO) { +// OrderQueryDTO orderQueryDTO = OrderConvertAPP.INSTANCE.convert(orderPageQueryVO); +// return orderService.getOrderPage(orderQueryDTO); +// } +// +// @GetMapping("order_items") +// @ApiOperation("订单列表") +// public CommonResult> getOrderItems(@RequestParam("orderId") Integer orderId) { +// return orderService.getOrderItems(orderId); +// } +// +// @GetMapping("order_recipient_info") +// @ApiOperation("订单收件人信息") +// public CommonResult getOrderRecipientBO(@RequestParam("orderId") Integer orderId) { +// return orderService.getOrderRecipientBO(orderId); +// } +// +// @PostMapping("order_deliver") +// @ApiOperation("订单发货") +// public CommonResult orderDeliver(@RequestBody @Validated OrderDeliverPO orderDeliverPO) { +// return orderService.orderDelivery(OrderDeliveryConvert.INSTANCE.convert(orderDeliverPO)); +// } +// +// @PutMapping("update_remark") +// @ApiOperation("更新-更新订单备注") +// public CommonResult updateRemark(@RequestParam("orderId") Integer orderId, +// @RequestParam("remark") String remark) { +// return orderService.updateOrderRemake(orderId, remark); +// } +// +// @PutMapping("cancel_order") +// @ApiOperation("取消订单") +// public CommonResult cancelOrder( +// @RequestParam("orderId") Integer orderId, +// @RequestParam("reasons") Integer reasons, +// @RequestParam(value = "otherReasons", required = false) String otherReasons) { +// return orderService.cancelOrder(orderId, reasons, otherReasons); +// } +// +// @PutMapping("order_item/update_pay_amount") +// @ApiOperation("更新-订单item实付金额") +// public CommonResult updateOrderItemPayAmount(@RequestParam("orderId") Integer orderId, +// @RequestParam("orderItemId") Integer orderItemId, +// @RequestParam("payAmount") Integer payAmount) { +// return orderService.updateOrderItemPayAmount(orderId, orderItemId, payAmount); +// } +// +// @PutMapping("order_item/update") +// @ApiOperation("更新-订单item") +// public CommonResult updateOrderItem(@RequestBody @Validated OrderItemUpdatePO orderItemUpdateVO) { +// OrderItemUpdateDTO dto = OrderConvertAPP.INSTANCE.convert(orderItemUpdateVO); +// return orderService.updateOrderItem(dto); +// } +// +// @PutMapping("logistics/update") +// @ApiOperation("更新-订单物流") +// public CommonResult updateLogistics(@RequestBody @Validated OrderLogisticsPO orderLogisticsVO) { +// OrderLogisticsUpdateDTO dto = OrderConvertAPP.INSTANCE.convert(orderLogisticsVO); +// return orderService.updateLogistics(dto); +// } +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderCommentController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderCommentController.java new file mode 100644 index 000000000..d13a233e7 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderCommentController.java @@ -0,0 +1,61 @@ +package cn.iocoder.mall.order.rest.controller.users; + +import cn.iocoder.common.framework.constant.MallConstants; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * + * 订单评论 Api(user) + * + * @author wtz + * @time 2019-05-27 20:46 + */ +@RestController +@RequestMapping(MallConstants.ROOT_PATH_USER + "/order_comment") +@Api("用户评论模块") +public class OrderCommentController { + +// @Reference(validation = "true", version = "${dubbo.provider.OrderCommentService.version}") +// private OrderCommentService orderCommentService; +// +// @Reference(validation = "true", version = "${dubbo.provider.OrderCommentReplyService.version}") +// private OrderCommentReplyService orderCommentReplyService; +// +// +// @PostMapping("create_order_comment") +// //@RequiresLogin +// @ApiOperation(value = "创建订单评论") +// public CommonResult createOrderComment(@RequestBody @Validated OrderCommentCreateDTO orderCommentCreateDTO) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// orderCommentCreateDTO.setUserId(userId); +// return success(orderCommentService.createOrderComment(orderCommentCreateDTO)); +// } +// +// @GetMapping("order_comment_page") +// @ApiOperation(value = "获取评论分页") +// public CommonResult getOrderCommentPage(@Validated OrderCommentPageDTO orderCommentPageDTO){ +// return success(orderCommentService.getOrderCommentPage(orderCommentPageDTO)); +// } +// +// @GetMapping("order_comment_info_merchant_reply") +// @ApiOperation(value = "获取评论和商家回复") +// public CommonResult geOrderCommentInfoAndMerchantReply(@RequestParam("commentId") Integer commentId){ +// OrderCommentInfoAndMerchantReplyBO orderCommentInfoAndMerchantReplyBO=new OrderCommentInfoAndMerchantReplyBO(); +// orderCommentInfoAndMerchantReplyBO.setOrderCommentInfoBO(orderCommentService.getOrderCommentInfo(commentId)); +// orderCommentInfoAndMerchantReplyBO.setOrderCommentMerchantReplyBOS(orderCommentReplyService.getOrderCommentMerchantReply(commentId)); +// return success(orderCommentInfoAndMerchantReplyBO); +// } +// +// @GetMapping +// //@RequiresLogin +// @ApiOperation(value = "获取订单评论状态分页") +// public CommonResult getOrderCommentStateInfoPage(@Validated OrderCommentStateInfoPageDTO orderCommentStateInfoPageDTO){ +// //Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// //orderCommentStateInfoPageDTO.setUserId(userId); +// return success(orderCommentService.getOrderCommentStateInfoPage(orderCommentStateInfoPageDTO)); +// } + + +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderCommentReplyController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderCommentReplyController.java new file mode 100644 index 000000000..b9787a203 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderCommentReplyController.java @@ -0,0 +1,37 @@ +package cn.iocoder.mall.order.rest.controller.users; + +import cn.iocoder.common.framework.constant.MallConstants; +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +/** + * + * 评论回复模块 Api(user) + * + * @author wtz + * @time 2019-05-31 18:00 + */ +@RestController +@RequestMapping(MallConstants.ROOT_PATH_USER + "/order_comment_reply") +@Api("用户评论回复模块 ") +public class OrderCommentReplyController { + +// @Reference(validation = "true", version = "${dubbo.provider.OrderCommentService.version}") +// private OrderCommentReplyService orderCommentReplyService; +// +// @PostMapping("create_order_comment_reply") +// //@RequiresLogin +// @ApiOperation(value = "创建订单回复") +// public CommonResult createOrderCommentReply(@RequestBody @Validated OrderCommentReplyCreateDTO orderCommentReplyCreateDTO){ +// return success(orderCommentReplyService.createOrderCommentReply(orderCommentReplyCreateDTO)); +// } +// +// @GetMapping("order_comment_reply_page") +// //@RequiresLogin +// @ApiOperation(value = "分页获取评论回复") +// public CommonResult getOrderCommentReplyPage(@Validated OrderCommentReplyPageDTO orderCommentReplyCreateDTO){ +// return success(orderCommentReplyService.getOrderCommentReplyPage(orderCommentReplyCreateDTO)); +// } +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderController.java new file mode 100644 index 000000000..ab0d08c95 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderController.java @@ -0,0 +1,123 @@ +package cn.iocoder.mall.order.rest.controller.users; + + +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 订单API(users) + * + * @author Sin + * @time 2019-03-24 11:24 + */ +@RestController +@RequestMapping("users/order") +@Api(description = "用户订单") // TODO FROM 芋艿 to 小范,description 已经废弃啦 +public class OrderController { + +// @Reference(validation = "true", version = "${dubbo.provider.OrderReturnService.version}") +// private OrderService orderService; +// +// @Reference(validation = "true", version = "${dubbo.provider.CartService.version}") +// private CartService cartService; +// +// @Reference(validation = "true", version = "${dubbo.consumer.DataDictService.version}") +// private DataDictService dataDictService; +// +// @Reference(validation = "true", version = "${dubbo.consumer.CouponService.version}") +// private CouponService couponService; +// +// @GetMapping("order_page") +// @RequiresLogin +// @ApiOperation("订单分页") +// public CommonResult getOrderPage(@Validated OrderQueryDTO orderQueryDTO) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// orderQueryDTO.setUserId(userId); +// return orderService.getOrderPage(orderQueryDTO); +// } +// +// @PostMapping("create_order") +// @RequiresLogin +// @ApiOperation("创建订单") +// public CommonResult createOrder(@RequestBody @Validated OrderCreatePO orderCreatePO, +// HttpServletRequest request) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// OrderCreateDTO orderCreateDTO = OrderConvertAPP.INSTANCE.convert(orderCreatePO); +// orderCreateDTO.setUserId(userId).setIp(HttpUtil.getIp(request)); +// return orderService.createOrder(orderCreateDTO); +// } +// +// @PostMapping("create_order_from_cart") +// @RequiresLogin +// @ApiOperation("创建订单购物车") +// public CommonResult createOrderFromCart(@RequestParam("userAddressId") Integer userAddressId, +// @RequestParam(value = "couponCardId", required = false) Integer couponCardId, +// @RequestParam(value = "remark", required = false) String remark, +// HttpServletRequest request) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// // 获得购物车中选中的商品 +// List cartItems = cartService.list(userId, true); +// if (cartItems.isEmpty()) { +// return ServiceExceptionUtil.error(OrderErrorCodeEnum.ORDER_CREATE_CART_IS_EMPTY.getCode()); +// } +// // 创建 OrderCreateDTO 对象 +// OrderCreateDTO orderCreateDTO = OrderConvertAPP.INSTANCE.createOrderCreateDTO(userId, userAddressId, +// remark, HttpUtil.getIp(request), +// cartItems, couponCardId); +// // 创建订单 +// CommonResult createResult = orderService.createOrder(orderCreateDTO); +// if (createResult.isError()) { +// return CommonResult.error(createResult); +// } +// // 清空购物车 // TODO 芋艿,需要标记删除的原因,即结果为创建为某个订单。 +// cartService.deleteList(userId, cartItems.stream().map(CartItemBO::getSkuId).collect(Collectors.toList())); +// // 返回结果 +// return createResult; +// } +// +// @GetMapping("confirm_create_order") +// @RequiresLogin +// @ApiOperation("确认创建订单") +// public CommonResult getConfirmCreateOrder(@RequestParam("skuId") Integer skuId, +// @RequestParam("quantity") Integer quantity, +// @RequestParam(value = "couponCardId", required = false) Integer couponCardId) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// // 创建 CalcOrderPriceDTO 对象,并执行价格计算 +// CalcOrderPriceDTO calcOrderPriceDTO = new CalcOrderPriceDTO() +// .setUserId(userId) +// .setItems(Collections.singletonList(new CalcOrderPriceDTO.Item(skuId, quantity, true))) +// .setCouponCardId(couponCardId); +// CalcOrderPriceBO calcOrderPrice = cartService.calcOrderPrice(calcOrderPriceDTO); +// // 获得优惠劵 +// List couponCards = couponService.getCouponCardList(userId, +// CartConvert.INSTANCE.convertList(calcOrderPrice.getItemGroups())); +// // 执行数据拼装 +// return success(CartConvert.INSTANCE.convert(calcOrderPrice).setCouponCards(couponCards)); +// } +// +// @PostMapping("confirm_receiving") +// @RequiresLogin +// @ApiOperation("确认收货") +// public CommonResult confirmReceiving(@RequestParam("orderId") Integer orderId) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// return orderService.confirmReceiving(userId, orderId); +// } +// +// @GetMapping("info") +// @RequiresLogin +// @ApiOperation("订单详情") +// public CommonResult orderInfo(@RequestParam("orderId") Integer orderId) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// CommonResult commonResult = orderService.info(userId, orderId); +// +// OrderInfoBO orderInfoBO = commonResult.getData(); +// if (orderInfoBO != null) { +// CommonResult dictResult = dataDictService +// .getDataDict(DictKeyConstants.ORDER_STATUS, orderInfoBO.getStatus()); +// orderInfoBO.setStatusText(dictResult.getData().getDisplayName()); +// } +// return commonResult; +// } + +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderLogisticsController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderLogisticsController.java new file mode 100644 index 000000000..43bfd8bfd --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderLogisticsController.java @@ -0,0 +1,65 @@ +package cn.iocoder.mall.order.rest.controller.users; + +import io.swagger.annotations.Api; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 订单物流 controller + * + * @author Sin + * @time 2019-04-12 22:24 + */ +@RestController +@RequestMapping("users/order_logistics") +@Api(description = "订单物流信息") +public class OrderLogisticsController { + +// @Reference(validation = "true", version = "${dubbo.provider.OrderLogisticsService.version}") +// private OrderLogisticsService orderLogisticsService; +// +// @Reference(validation = "true", version = "${dubbo.consumer.DataDictService.version}") +// private DataDictService dataDictService; +// +// @GetMapping("info") +// @ApiOperation("物流详细 - 物流通用") +// public CommonResult logistics(@RequestParam("logisticsId") Integer logisticsId) { +// return orderLogisticsService.getLogisticsInfo(logisticsId); +// } +// +// @GetMapping("info_order") +// @ApiOperation("物流详细 - 返回订单所关联的所有物流信息(订单用的)") +// public CommonResult logisticsInfoWithOrder(@RequestParam("orderId") Integer orderId) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// CommonResult commonResult = orderLogisticsService.getOrderLogisticsInfo(userId, orderId); +// if (commonResult.isSuccess()) { +// OrderLogisticsInfoWithOrderBO orderLogisticsInfoBO = commonResult.getData(); +// List logisticsList = orderLogisticsInfoBO.getLogistics(); +// +// // 获取字典值 +// Set dictValues = logisticsList.stream().map(o -> o.getLogistics()).collect(Collectors.toSet()); +// if (!CollectionUtils.isEmpty(dictValues)) { +// CommonResult> dictResult = dataDictService +// .getDataDictList(DictKeyConstants.ORDER_LOGISTICS_COMPANY, dictValues); +// +// if (dictResult.isError()) { +// // 错误情况 +// return ServiceExceptionUtil.error(OrderErrorCodeEnum.DICT_SERVER_INVOKING_FAIL.getCode()); +// } +// +// // 转换结果字典值 +// Map dataDictBOMap = dictResult.getData() +// .stream().collect(Collectors.toMap(o -> o.getValue(), o -> o)); +// +// logisticsList.stream().map(o -> { +// String dicValue = o.getLogistics().toString(); +// if (dataDictBOMap.containsKey(dicValue)) { +// o.setLogisticsText(dataDictBOMap.get(dicValue).getDisplayName()); +// } +// return o; +// }).collect(Collectors.toList()); +// } +// } +// return commonResult; +// } +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderReturnController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderReturnController.java new file mode 100644 index 000000000..d9ea9dfdd --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/OrderReturnController.java @@ -0,0 +1,53 @@ +package cn.iocoder.mall.order.rest.controller.users; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * 订单退款/售后流程 + * + * @author Sin + * @time 2019-04-25 22:04 + */ +@RestController +@RequestMapping("users/order_return") +public class OrderReturnController { + +// @Reference(validation = "true", version = "${dubbo.provider.OrderReturnService.version}") +// private OrderReturnService orderReturnService; +// +// @Reference(validation = "true", version = "${dubbo.consumer.DataDictService.version}") +// private DataDictService dataDictService; +// +// @GetMapping("reason") +// @ApiOperation("原因") +// public CommonResult> orderReturnReason() { +// return dataDictService.getDataDict(DictKeyConstants.ORDER_RETURN_REASON); +// } +// +// @PostMapping("apply") +// @ApiOperation("订单售后") +// public CommonResult orderReturnApply(@RequestBody OrderReturnApplyPO orderReturnApplyPO) { +// OrderReturnApplyDTO applyDTO = OrderReturnConvert.INSTANCE.convert(orderReturnApplyPO); +// return orderReturnService.orderReturnApply(applyDTO); +// } +// +// @GetMapping("info") +// @ApiOperation("订单售后详细") +// public CommonResult orderApplyInfo(@RequestParam("orderId") Integer orderId) { +// CommonResult commonResult = orderReturnService.orderApplyInfo(orderId); +// +// // 转换 字典值 +// if (commonResult.isSuccess()) { +// CommonResult dataDictResult = dataDictService.getDataDict( +// DictKeyConstants.ORDER_RETURN_SERVICE_TYPE, +// commonResult.getData().getReturnInfo().getServiceType()); +// +// if (dataDictResult.isSuccess()) { +// commonResult.getData().getReturnInfo().setServiceTypeText(dataDictResult.getData().getDisplayName()); +// } +// } +// +// return commonResult; +// } +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/UsersCartController.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/UsersCartController.java new file mode 100644 index 000000000..9b8b4e16a --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/controller/users/UsersCartController.java @@ -0,0 +1,122 @@ +package cn.iocoder.mall.order.rest.controller.users; + +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("users/cart") +public class UsersCartController { + +// @Reference(validation = "true", version = "${dubbo.provider.CartService.version}") +// private CartService cartService; +// +// @Reference(validation = "true", version = "${dubbo.provider.OrderService.version}") +// private OrderService orderService; +// +// @Reference(validation = "true", version = "${dubbo.consumer.CouponService.version}") +// private CouponService couponService; +// +// @PostMapping("add") +// public CommonResult add(@RequestParam("skuId") Integer skuId, +// @RequestParam("quantity") Integer quantity) { +// // 添加到购物车 +// cartService.add(UserSecurityContextHolder.getContext().getUserId(), skuId, quantity); +// // 获得目前购物车商品总数量 +// return success(cartService.count(UserSecurityContextHolder.getContext().getUserId())); +// } +// +// @PostMapping("update_quantity") +// public CommonResult updateQuantity(@RequestParam("skuId") Integer skuId, // TODO 芋艿,先暂用这个 VO 。等促销活动出来后,做调整 +// @RequestParam("quantity") Integer quantity) { +// // 添加到购物车 +// cartService.updateQuantity(UserSecurityContextHolder.getContext().getUserId(), +// skuId, quantity); +// // 获得目前购物车明细 +// return getCartDetail(); +// } +// +// @PostMapping("update_selected") +// public CommonResult updateSelected(@RequestParam("skuIds") Set skuIds, // TODO 芋艿,先暂用这个 VO 。等促销活动出来后,做调整 +// @RequestParam("selected") Boolean selected) { +// // 添加到购物车 +// cartService.updateSelected(UserSecurityContextHolder.getContext().getUserId(), skuIds, selected); +// // 获得目前购物车明细 +// return getCartDetail(); +// } +// +// @GetMapping("count") +// public CommonResult count() { +// return success(cartService.count(UserSecurityContextHolder.getContext().getUserId())); +// } +// +// @GetMapping("/list") +// public CommonResult list() { // TODO 芋艿,先暂用这个 VO 。等促销活动出来后,做调整 +// return getCartDetail(); +// } +// +// private CommonResult getCartDetail() { +// // 获得购物车中选中的 +// List cartItems = cartService.list(UserSecurityContextHolder.getContext().getUserId(), null); +// // 购物车为空时,构造空的 UsersOrderConfirmCreateVO 返回 +// if (cartItems.isEmpty()) { +// UsersCartDetailVO result = new UsersCartDetailVO(); +// result.setItemGroups(Collections.emptyList()); +// result.setFee(new UsersCartDetailVO.Fee(0, 0, 0, 0)); +// return success(result); +// } +// // 计算商品价格 +// CalcOrderPriceBO calcOrder = list0(cartItems, null); +// // 执行数据拼装 +// return success(CartConvert.INSTANCE.convert2(calcOrder)); +// } +// +// @GetMapping("/confirm_create_order") +// public CommonResult getConfirmCreateOrder(@RequestParam(value = "couponCardId", required = false) Integer couponCardId) { +// Integer userId = UserSecurityContextHolder.getContext().getUserId(); +// // 获得购物车中选中的 +// List cartItems = cartService.list(userId, true); +// // 购物车为空时,构造空的 UsersOrderConfirmCreateVO 返回 +// if (cartItems.isEmpty()) { +// UsersOrderConfirmCreateVO result = new UsersOrderConfirmCreateVO(); +// result.setItemGroups(Collections.emptyList()); +// result.setFee(new UsersOrderConfirmCreateVO.Fee(0, 0, 0, 0)); +// return success(result); +// } +// // 计算商品价格 +// CalcOrderPriceBO calcOrderPrice = list0(cartItems, couponCardId); +// // 获得优惠劵 +// List couponCards = couponService.getCouponCardList(userId, +// CartConvert.INSTANCE.convertList(calcOrderPrice.getItemGroups())); +// // 执行数据拼装 +// return success(CartConvert.INSTANCE.convert(calcOrderPrice).setCouponCards(couponCards)); +// } +// +// private CalcOrderPriceBO list0(List cartItems, Integer couponCardId) { +// // 创建计算的 DTO +// CalcOrderPriceDTO calcOrderPriceDTO = new CalcOrderPriceDTO() +// .setUserId(UserSecurityContextHolder.getContext().getUserId()) +// .setItems(new ArrayList<>(cartItems.size())) +// .setCouponCardId(couponCardId); +// for (CartItemBO item : cartItems) { +// calcOrderPriceDTO.getItems().add(new CalcOrderPriceDTO.Item(item.getSkuId(), item.getQuantity(), item.getSelected())); +// } +// // 执行计算 +// return cartService.calcOrderPrice(calcOrderPriceDTO); +// } +// +// @GetMapping("/calc_sku_price") +// public CommonResult calcSkuPrice(@RequestParam("skuId") Integer skuId) { +// // 计算 sku 的价格 +// CalcSkuPriceBO calcSkuPrice = cartService.calcSkuPrice(skuId); +// return success(CartConvert.INSTANCE.convert2(calcSkuPrice)); +// } +// +// public CommonResult confirmOrder() { +// // 查询购物车列表(选中的) +//// cartService.list(userId, true); +// // 查询确认订单信息的明细 +// +// return null; +// } + +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/CartConvert.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/CartConvert.java new file mode 100644 index 000000000..432f602c4 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/CartConvert.java @@ -0,0 +1,30 @@ +package cn.iocoder.mall.order.rest.convert; + +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +@Mapper +public interface CartConvert { + + CartConvert INSTANCE = Mappers.getMapper(CartConvert.class); + +// UsersOrderConfirmCreateVO convert(CalcOrderPriceBO calcOrderPriceBO); +// +// UsersCartDetailVO convert2(CalcOrderPriceBO calcOrderPriceBO); +// +// UsersCalcSkuPriceVO convert2(CalcSkuPriceBO calcSkuPriceBO); +// +// default List convertList(List itemGroups) { +// List items = new ArrayList<>(); +// itemGroups.forEach(itemGroup -> items.addAll(itemGroup.getItems().stream().map( +// item -> new CouponCardSpuDTO() +// .setSpuId(item.getSpu().getId()) +// .setSkuId(item.getId()) +// .setCategoryId(item.getSpu().getCid()) +// .setPrice(item.getBuyPrice()) +// .setQuantity(item.getBuyQuantity())) +// .collect(Collectors.toList()))); +// return items; +// } + +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderConvertAPP.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderConvertAPP.java new file mode 100644 index 000000000..67deea991 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderConvertAPP.java @@ -0,0 +1,46 @@ +package cn.iocoder.mall.order.rest.convert; + +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +/** + * application 订单 convert + * + * TODO 这种方式 文件名不能一样哈! + * + * @author Sin + * @time 2019-03-24 10:45 + */ +@Mapper +public interface OrderConvertAPP { + + OrderConvertAPP INSTANCE = Mappers.getMapper(OrderConvertAPP.class); + +// @Mappings({}) +// OrderQueryDTO convert(OrderPageQueryPO orderPageQueryVO); +// +// @Mappings({}) +// OrderLogisticsUpdateDTO convert(OrderLogisticsPO orderLogisticsVO); +// +// @Mappings({}) +// OrderItemUpdateDTO convert(OrderItemUpdatePO orderItemUpdateVO); +// +// @Mappings({}) +// OrderCreateDTO convert(OrderCreatePO orderCreatePO); +// +// @Mappings({}) +// List convert(List cartItems); +// +// default OrderCreateDTO createOrderCreateDTO(Integer userId, Integer userAddressId, +// String remark, String ip, +// List cartItems, Integer couponCardId) { +// return new OrderCreateDTO() +// .setUserId(userId) +// .setUserAddressId(userAddressId) +// .setRemark(remark) +// .setIp(ip) +// .setOrderItems(this.convert(cartItems)) +// .setCouponCardId(couponCardId); +// } + +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderDeliveryConvert.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderDeliveryConvert.java new file mode 100644 index 000000000..d6c8d6ec5 --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderDeliveryConvert.java @@ -0,0 +1,17 @@ +package cn.iocoder.mall.order.rest.convert; + +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +/** + * @author Sin + * @time 2019-04-05 17:00 + */ +@Mapper +public interface OrderDeliveryConvert { + + OrderDeliveryConvert INSTANCE = Mappers.getMapper(OrderDeliveryConvert.class); + +// @Mappings({}) +// OrderDeliveryDTO convert(OrderDeliverPO orderDeliverPO); +} diff --git a/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderReturnConvert.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderReturnConvert.java new file mode 100644 index 000000000..90997321d --- /dev/null +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/convert/OrderReturnConvert.java @@ -0,0 +1,22 @@ +package cn.iocoder.mall.order.rest.convert; + +import org.mapstruct.Mapper; +import org.mapstruct.factory.Mappers; + +/** + * 订单退货 + * + * @author Sin + * @time 2019-04-25 21:54 + */ +@Mapper +public interface OrderReturnConvert { + + OrderReturnConvert INSTANCE = Mappers.getMapper(OrderReturnConvert.class); + +// @Mappings({}) +// OrderReturnApplyDTO convert(OrderReturnApplyPO orderReturnApplyPO); +// +// @Mappings({}) +// OrderReturnQueryDTO convert(OrderReturnQueryPO orderReturnQueryPO); +} diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderDeliverPO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderDeliverRequest.java similarity index 90% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderDeliverPO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderDeliverRequest.java index f91264987..2a7326da8 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderDeliverPO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderDeliverRequest.java @@ -1,13 +1,12 @@ -package cn.iocoder.mall.order.application.po.admin; +package cn.iocoder.mall.order.rest.request.admin; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -import javax.validation.constraints.NotNull; import java.io.Serializable; import java.util.List; +import javax.validation.constraints.NotNull; +import lombok.Data; +import lombok.experimental.Accessors; /** * 订单发货 @@ -18,7 +17,7 @@ import java.util.List; @Data @Accessors(chain = true) @ApiModel(description = "订单发货PO") -public class OrderDeliverPO implements Serializable { +public class OrderDeliverRequest implements Serializable { /** * 订单编号 diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderItemUpdatePO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderItemUpdateRequest.java similarity index 90% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderItemUpdatePO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderItemUpdateRequest.java index dac2b7e15..263bc3bec 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderItemUpdatePO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderItemUpdateRequest.java @@ -1,13 +1,12 @@ -package cn.iocoder.mall.order.application.po.admin; +package cn.iocoder.mall.order.rest.request.admin; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.experimental.Accessors; - +import java.io.Serializable; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; -import java.io.Serializable; +import lombok.Data; +import lombok.experimental.Accessors; /** * 订单 item 更新 @@ -18,7 +17,7 @@ import java.io.Serializable; @Data @Accessors(chain = true) @ApiModel("订单item更新") -public class OrderItemUpdatePO implements Serializable { +public class OrderItemUpdateRequest implements Serializable { /** * 编号 diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderLogisticsPO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderLogisticsRequest.java similarity index 92% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderLogisticsPO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderLogisticsRequest.java index 1661562f4..80df6f660 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderLogisticsPO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderLogisticsRequest.java @@ -1,13 +1,12 @@ -package cn.iocoder.mall.order.application.po.admin; +package cn.iocoder.mall.order.rest.request.admin; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.experimental.Accessors; - +import java.io.Serializable; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; -import java.io.Serializable; +import lombok.Data; +import lombok.experimental.Accessors; /** * 订单物流 @@ -18,7 +17,7 @@ import java.io.Serializable; @Data @Accessors(chain = true) @ApiModel("订单物流信息") -public class OrderLogisticsPO implements Serializable { +public class OrderLogisticsRequest implements Serializable { /** * 订单 id diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderPageQueryPO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderPageQueryRequest.java similarity index 94% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderPageQueryPO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderPageQueryRequest.java index 70ea5a0ee..d56338c4e 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderPageQueryPO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderPageQueryRequest.java @@ -1,14 +1,13 @@ -package cn.iocoder.mall.order.application.po.admin; +package cn.iocoder.mall.order.rest.request.admin; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import java.util.Date; import lombok.Data; import lombok.experimental.Accessors; import org.springframework.format.annotation.DateTimeFormat; -import java.io.Serializable; -import java.util.Date; - /** * 订单 page 查询 vo * @@ -18,7 +17,7 @@ import java.util.Date; @Data @Accessors(chain = true) @ApiModel("订单查询") -public class OrderPageQueryPO implements Serializable { +public class OrderPageQueryRequest implements Serializable { /** * id diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderPagePO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderPageRequest.java similarity index 86% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderPagePO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderPageRequest.java index 8a8a4a068..8200e491d 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderPagePO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderPageRequest.java @@ -1,13 +1,12 @@ -package cn.iocoder.mall.order.application.po.admin; +package cn.iocoder.mall.order.rest.request.admin; import cn.iocoder.mall.order.api.bo.OrderBO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.experimental.Accessors; - import java.io.Serializable; import java.util.List; +import lombok.Data; +import lombok.experimental.Accessors; /** * 订单分页 vo @@ -18,7 +17,7 @@ import java.util.List; @Data @Accessors(chain = true) @ApiModel("订单VO") -public class OrderPagePO implements Serializable { +public class OrderPageRequest implements Serializable { /** * 分页 diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderReturnQueryPO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderReturnQueryRequest.java similarity index 90% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderReturnQueryPO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderReturnQueryRequest.java index b1b496b32..d4c89d137 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/admin/OrderReturnQueryPO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/admin/OrderReturnQueryRequest.java @@ -1,13 +1,12 @@ -package cn.iocoder.mall.order.application.po.admin; +package cn.iocoder.mall.order.rest.request.admin; +import java.io.Serializable; +import java.util.Date; +import javax.validation.constraints.NotNull; import lombok.Data; import lombok.experimental.Accessors; import org.springframework.format.annotation.DateTimeFormat; -import javax.validation.constraints.NotNull; -import java.io.Serializable; -import java.util.Date; - /** * 订单退货 查询 po * @@ -16,7 +15,7 @@ import java.util.Date; */ @Data @Accessors(chain = true) -public class OrderReturnQueryPO implements Serializable { +public class OrderReturnQueryRequest implements Serializable { /** * diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/user/OrderCreatePO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/users/OrderCreateRequest.java similarity index 90% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/user/OrderCreatePO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/users/OrderCreateRequest.java index 4c193fbc3..678918fd6 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/user/OrderCreatePO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/users/OrderCreateRequest.java @@ -1,13 +1,12 @@ -package cn.iocoder.mall.order.application.po.user; - -import lombok.Data; -import lombok.experimental.Accessors; +package cn.iocoder.mall.order.rest.request.users; +import java.io.Serializable; +import java.util.List; import javax.validation.constraints.Max; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; -import java.io.Serializable; -import java.util.List; +import lombok.Data; +import lombok.experimental.Accessors; /** * 订单创建 @@ -17,7 +16,7 @@ import java.util.List; */ @Data @Accessors(chain = true) -public class OrderCreatePO implements Serializable { +public class OrderCreateRequest implements Serializable { /** * 收件手机号 diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/user/OrderReturnApplyPO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/users/OrderReturnApplyRequest.java similarity index 89% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/po/user/OrderReturnApplyPO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/users/OrderReturnApplyRequest.java index 64cad4de9..a34c2455c 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/po/user/OrderReturnApplyPO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/request/users/OrderReturnApplyRequest.java @@ -1,11 +1,10 @@ -package cn.iocoder.mall.order.application.po.user; - -import lombok.Data; -import lombok.experimental.Accessors; +package cn.iocoder.mall.order.rest.request.users; +import java.io.Serializable; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; -import java.io.Serializable; +import lombok.Data; +import lombok.experimental.Accessors; /** * 订单售后 @@ -15,7 +14,7 @@ import java.io.Serializable; */ @Data @Accessors(chain = true) -public class OrderReturnApplyPO implements Serializable { +public class OrderReturnApplyRequest implements Serializable { /** * 订单编号 diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersCalcSkuPriceVO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersCalcSkuPriceResponse.java similarity index 68% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersCalcSkuPriceVO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersCalcSkuPriceResponse.java index d8826ed7e..6cf7ed411 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersCalcSkuPriceVO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersCalcSkuPriceResponse.java @@ -1,6 +1,5 @@ -package cn.iocoder.mall.order.application.vo; +package cn.iocoder.mall.order.rest.response; -import cn.iocoder.mall.promotion.api.bo.PromotionActivityBO; import io.swagger.annotations.ApiModel; import lombok.Data; import lombok.experimental.Accessors; @@ -8,20 +7,20 @@ import lombok.experimental.Accessors; @ApiModel("计算商品 SKU 价格结果 VO") @Data @Accessors(chain = true) -public class UsersCalcSkuPriceVO { +public class UsersCalcSkuPriceResponse { /** * 满减送促销活动 * * TODO 芋艿,后续改成 VO */ - private PromotionActivityBO fullPrivilege; +// private PromotionActivityBO fullPrivilege; /** * 电视和折扣促销活动 * * TODO 芋艿,后续改成 VO */ - private PromotionActivityBO timeLimitedDiscount; +// private PromotionActivityBO timeLimitedDiscount; /** * 原价格,单位:分。 */ diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersCartDetailVO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersCartDetailResponse.java similarity index 91% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersCartDetailVO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersCartDetailResponse.java index c34696f1a..68e30c5c0 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersCartDetailVO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersCartDetailResponse.java @@ -1,17 +1,14 @@ -package cn.iocoder.mall.order.application.vo; +package cn.iocoder.mall.order.rest.response; -import cn.iocoder.mall.product.api.bo.ProductAttrAndValuePairBO; -import cn.iocoder.mall.promotion.api.bo.PromotionActivityBO; import io.swagger.annotations.ApiModel; +import java.util.List; import lombok.Data; import lombok.experimental.Accessors; -import java.util.List; - @ApiModel(value = "购物车明细 VO") @Data @Accessors(chain = true) -public class UsersCartDetailVO { +public class UsersCartDetailResponse { /** * 商品分组数组 @@ -34,7 +31,7 @@ public class UsersCartDetailVO { /** * 优惠活动 */ - private PromotionActivityBO activity; // TODO 芋艿,偷懒 +// private PromotionActivityBO activity; // TODO 芋艿,偷懒 /** * 促销减少的金额 * @@ -69,7 +66,7 @@ public class UsersCartDetailVO { /** * 规格值数组 */ - private List attrs; // TODO 后面改下 +// private List attrs; // TODO 后面改下 /** * 价格,单位:分 */ @@ -92,7 +89,7 @@ public class UsersCartDetailVO { /** * 优惠活动 */ - private PromotionActivityBO activity; +// private PromotionActivityBO activity; /** * 原始单价,单位:分。 */ diff --git a/order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersOrderConfirmCreateVO.java b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersOrderConfirmCreateResponse.java similarity index 90% rename from order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersOrderConfirmCreateVO.java rename to order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersOrderConfirmCreateResponse.java index 21c0379c7..d16970dd0 100644 --- a/order/order-application/src/main/java/cn/iocoder/mall/order/application/vo/UsersOrderConfirmCreateVO.java +++ b/order/order-rest/src/main/java/cn/iocoder/mall/order/rest/response/UsersOrderConfirmCreateResponse.java @@ -1,16 +1,12 @@ -package cn.iocoder.mall.order.application.vo; +package cn.iocoder.mall.order.rest.response; -import cn.iocoder.mall.product.api.bo.ProductAttrAndValuePairBO; -import cn.iocoder.mall.promotion.api.bo.CouponCardAvailableBO; -import cn.iocoder.mall.promotion.api.bo.PromotionActivityBO; +import java.util.List; import lombok.Data; import lombok.experimental.Accessors; -import java.util.List; - @Data @Accessors(chain = true) -public class UsersOrderConfirmCreateVO { +public class UsersOrderConfirmCreateResponse { /** * 商品分组数组 @@ -23,7 +19,7 @@ public class UsersOrderConfirmCreateVO { /** * 优惠劵列表 TODO 芋艿,后续改改 */ - private List couponCards; +// private List couponCards; /** * 优惠劵优惠金额 */ @@ -42,7 +38,7 @@ public class UsersOrderConfirmCreateVO { */ // TODO 芋艿,目前只会有【满减送】的情况,未来有新的促销方式,可能需要改成数组 // TODO 芋艿,后面改成 VO - private PromotionActivityBO activity; +// private PromotionActivityBO activity; /** * 商品数组 */ @@ -70,7 +66,7 @@ public class UsersOrderConfirmCreateVO { /** * 规格值数组 */ - private List attrs; // TODO 后面改下 +// private List attrs; // TODO 后面改下 /** * 价格,单位:分 */ diff --git a/order/order-rest/src/main/resources/rest.yaml b/order/order-rest/src/main/resources/rest.yaml index 4040f4b25..460ca2af0 100644 --- a/order/order-rest/src/main/resources/rest.yaml +++ b/order/order-rest/src/main/resources/rest.yaml @@ -1,8 +1,8 @@ # 服务器的配置项 server: - port: 18083 + port: 18088 servlet: - context-path: /system-api/ + context-path: /order-api/ # Swagger 配置项 swagger: