增加私域订单
This commit is contained in:
parent
4f59023ef0
commit
71a47383da
|
|
@ -0,0 +1,85 @@
|
|||
package cn.qihangerp.oms.controller.offline;
|
||||
|
||||
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.PageQuery;
|
||||
import cn.qihangerp.common.ResultVo;
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
import cn.qihangerp.module.order.domain.OfflineGoodsSku;
|
||||
import cn.qihangerp.module.order.service.OfflineGoodsSkuService;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 商品管理Controller
|
||||
*
|
||||
* @author qihang
|
||||
* @date 2023-12-29
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/offline_goods")
|
||||
public class OfflineGoodsController extends BaseController
|
||||
{
|
||||
private final OfflineGoodsSkuService skuService;
|
||||
|
||||
/**
|
||||
* 搜索商品SKU
|
||||
* 条件:商品编码、SKU、商品名称
|
||||
*/
|
||||
@GetMapping("/searchSku")
|
||||
public TableDataInfo searchSkuBy(String keyword)
|
||||
{
|
||||
logger.info("========SKU搜索=========",keyword);
|
||||
List<OfflineGoodsSku> list = skuService.searchGoodsSpec(keyword);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
@GetMapping("/sku_list")
|
||||
public TableDataInfo skuList(OfflineGoodsSku bo, PageQuery pageQuery)
|
||||
{
|
||||
var pageList = skuService.querySkuPageList(bo,pageQuery);
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取商品管理详细信息
|
||||
*/
|
||||
@GetMapping(value = "/sku/{id}")
|
||||
public AjaxResult getSkuInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(skuService.getById(id));
|
||||
}
|
||||
|
||||
|
||||
|
||||
@PostMapping("/sku")
|
||||
public AjaxResult addSku(@RequestBody OfflineGoodsSku goodsSku)
|
||||
{
|
||||
ResultVo<Long> result = skuService.insertGoodsSku(goodsSku);
|
||||
if(result.getCode() != 0) return AjaxResult.error(result.getMsg());
|
||||
else return AjaxResult.success();
|
||||
|
||||
}
|
||||
|
||||
@PutMapping("/sku")
|
||||
public AjaxResult editSku(@RequestBody OfflineGoodsSku sku)
|
||||
{
|
||||
return toAjax(skuService.updateById(sku));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除商品管理
|
||||
*/
|
||||
@DeleteMapping("/sku/{ids}")
|
||||
public AjaxResult remove(@PathVariable Long[] ids)
|
||||
{
|
||||
return toAjax(skuService.removeBatchByIds(Arrays.stream(ids).toList()));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,107 @@
|
|||
package cn.qihangerp.oms.controller.offline;
|
||||
|
||||
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.PageQuery;
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
import cn.qihangerp.common.enums.EnumShopType;
|
||||
import cn.qihangerp.common.mq.MqMessage;
|
||||
import cn.qihangerp.common.mq.MqType;
|
||||
import cn.qihangerp.common.mq.MqUtils;
|
||||
import cn.qihangerp.module.order.domain.bo.OfflineOrderCreateBo;
|
||||
import cn.qihangerp.module.order.domain.bo.OfflineOrderPushBo;
|
||||
import cn.qihangerp.module.order.service.OfflineOrderService;
|
||||
import cn.qihangerp.request.OrderSearchRequest;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/offline_order")
|
||||
public class OfflineOrderController extends BaseController {
|
||||
private final OfflineOrderService orderService;
|
||||
private final MqUtils mqUtils;
|
||||
/**
|
||||
* 查询店铺订单列表
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(OrderSearchRequest bo, PageQuery pageQuery)
|
||||
{
|
||||
var pageList = orderService.queryPageList(bo,pageQuery);
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取店铺订单详细信息
|
||||
*/
|
||||
@GetMapping(value = "/{id}")
|
||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
||||
{
|
||||
return success(orderService.queryDetailById(id));
|
||||
}
|
||||
|
||||
// @PostMapping("/pushErp/{ids}")
|
||||
// public AjaxResult remove(@PathVariable Long[] ids) {
|
||||
// for (Long id : ids) {
|
||||
// OOrder oOrder = orderService.getById(id);
|
||||
// if (oOrder != null) {
|
||||
// oOrder.setItemList(orderItemService.getOrderItemListByOrderId(id));
|
||||
// ResultVo resultVo = erpPushHelper.pushOrderSingle(oOrder);
|
||||
// OOrder pushUpdate = new OOrder();
|
||||
// if (oOrder.getOrderStatus() == 1 || oOrder.getOrderStatus() == 2 || oOrder.getOrderStatus() == 3) {
|
||||
// // 待发货、已发货、已完成 订单推送
|
||||
// pushUpdate.setErpPushStatus(resultVo.getCode() == 0 ? 200 : resultVo.getCode());
|
||||
//
|
||||
// } else if (oOrder.getOrderStatus() == 11) {
|
||||
// pushUpdate.setErpPushStatus(resultVo.getCode() == 0 ? 100 : resultVo.getCode());//推送状态200 订单推送成功 100 取消订单推送成功
|
||||
// }
|
||||
// pushUpdate.setErpPushResult(resultVo.getMsg());
|
||||
// pushUpdate.setErpPushTime(new Date());
|
||||
// pushUpdate.setUpdateBy("手动推送到ERP");
|
||||
// pushUpdate.setUpdateTime(new Date());
|
||||
// pushUpdate.setId(id.toString());
|
||||
// orderService.updateById(pushUpdate);
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return success();
|
||||
// }
|
||||
|
||||
|
||||
@PostMapping("/create")
|
||||
public AjaxResult add(@RequestBody OfflineOrderCreateBo order)
|
||||
{
|
||||
if(order.getGoodsAmount()==null)return new AjaxResult(1503,"请填写商品价格!");
|
||||
|
||||
Long result = orderService.insertOfflineOrder(order,getUsername());
|
||||
if(result>0) {
|
||||
logger.info("渠道訂單添加成功");
|
||||
mqUtils.sendApiMessage(MqMessage.build(EnumShopType.OFFLINE, MqType.ORDER_MESSAGE, order.getOrderNum()));
|
||||
}
|
||||
else if(result == -1) return new AjaxResult(501,"订单号已存在!");
|
||||
else if(result == -2) return new AjaxResult(502,"请添加订单商品!");
|
||||
else if(result == -3) return new AjaxResult(503,"请完善订单商品明细!");
|
||||
else if(result == -4) return new AjaxResult(504,"请选择店铺!");
|
||||
return toAjax(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 手动推送到系统
|
||||
* @param bo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/push_oms")
|
||||
@ResponseBody
|
||||
public AjaxResult pushOms(@RequestBody OfflineOrderPushBo bo) {
|
||||
// TODO:需要优化消息格式
|
||||
if(bo!=null && bo.getIds()!=null) {
|
||||
for(String id: bo.getIds()) {
|
||||
mqUtils.sendApiMessage(MqMessage.build(EnumShopType.OFFLINE, MqType.ORDER_MESSAGE, id));
|
||||
}
|
||||
}
|
||||
return success();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package cn.qihangerp.oms.controller.offline;
|
||||
|
||||
|
||||
import cn.qihangerp.common.PageQuery;
|
||||
import cn.qihangerp.common.TableDataInfo;
|
||||
import cn.qihangerp.module.order.service.OfflineRefundService;
|
||||
import cn.qihangerp.request.RefundSearchRequest;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/offline_refund")
|
||||
public class OfflineRefundController extends BaseController {
|
||||
|
||||
private final OfflineRefundService refundService;
|
||||
/**
|
||||
* 查询店铺订单列表
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo list(RefundSearchRequest bo, PageQuery pageQuery)
|
||||
{
|
||||
var pageList = refundService.queryPageList(bo,pageQuery);
|
||||
return getDataTable(pageList);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,77 @@
|
|||
package cn.qihangerp.oms.controller.offline;
|
||||
|
||||
|
||||
import cn.qihangerp.common.AjaxResult;
|
||||
import cn.qihangerp.common.enums.EnumShopType;
|
||||
import cn.qihangerp.common.mq.MqMessage;
|
||||
import cn.qihangerp.common.mq.MqType;
|
||||
import cn.qihangerp.common.mq.MqUtils;
|
||||
import cn.qihangerp.module.order.domain.OfflineOrder;
|
||||
import cn.qihangerp.module.order.domain.bo.OfflineOrderShipBo;
|
||||
import cn.qihangerp.module.order.domain.bo.OrderShipSendBo;
|
||||
import cn.qihangerp.module.order.service.OfflineOrderService;
|
||||
import cn.qihangerp.security.common.BaseController;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@AllArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/offline_ship")
|
||||
public class OfflineShipController extends BaseController {
|
||||
private final OfflineOrderService orderService;
|
||||
private final MqUtils mqUtils;
|
||||
/**
|
||||
* 手动填写物流单号()
|
||||
* @param bo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/order_logistics")
|
||||
public AjaxResult add(@RequestBody OfflineOrderShipBo bo)
|
||||
{
|
||||
int result = orderService.orderLogistics(bo,getUsername());
|
||||
if(result==-1) return AjaxResult.error("参数错误:orderNum不能为空");
|
||||
else if(result==-2) return AjaxResult.error("参数错误:快递信息不能为空");
|
||||
else if(result==-3) return AjaxResult.error("参数错误:找不到订单");
|
||||
else if(result==-4) return AjaxResult.error("数据错误:订单状态不是待发货的状态");
|
||||
else if(result==-5) return AjaxResult.error("数据错误:订单正在售后中");
|
||||
|
||||
return toAjax(1);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量发货
|
||||
* @param bo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/order_batch_send")
|
||||
@ResponseBody
|
||||
public AjaxResult orderSend(@RequestBody OrderShipSendBo bo) {
|
||||
// TODO:需要优化消息格式
|
||||
if(bo!=null && bo.getOrderNums()!=null) {
|
||||
for(String sn: bo.getOrderNums()) {
|
||||
List<OfflineOrder> orders = orderService.list(new LambdaQueryWrapper<OfflineOrder>().eq(OfflineOrder::getOrderNum,sn));
|
||||
if(orders!=null&& orders.size()>0) {
|
||||
if (orders.get(0).getOrderStatus() == 1 && orders.get(0).getRefundStatus() == 1 && StringUtils.hasText(orders.get(0).getShippingNumber())) {
|
||||
OfflineOrder update = new OfflineOrder();
|
||||
update.setId(orders.get(0).getId());
|
||||
update.setOrderStatus(2);
|
||||
update.setUpdateTime(new Date());
|
||||
update.setUpdateBy("批量发货");
|
||||
update.setShippingTime(new Date());
|
||||
update.setShippingMan(getUsername());
|
||||
orderService.updateById(update);
|
||||
// 通知已发货
|
||||
mqUtils.sendApiMessage(MqMessage.build(EnumShopType.OFFLINE, MqType.SHIP_SEND_MESSAGE, sn, orders.get(0).getShippingCompany(), orders.get(0).getShippingNumber()));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return success();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -38,7 +38,7 @@
|
|||
import OrderDou from "@/views/dou/order/index";
|
||||
import OrderPdd from "@/views/pdd/order/index";
|
||||
import OrderWei from "@/views/wei/order/index";
|
||||
import OrderOffline from "@/views/offline/order/index";
|
||||
import OrderOffline from "@/views/order/private/index";
|
||||
import {listPlatform} from "@/api/shop/shop";
|
||||
export default {
|
||||
name: "Order",
|
||||
|
|
|
|||
Loading…
Reference in New Issue