Browse Source

[add] 配送单初始化

BKGin 6 months ago
parent
commit
97c8cc5c0c

+ 114 - 0
yiqi-admin/src/main/java/com/yiqi/admin/controller/order/OrderDeliveryController.java

@@ -0,0 +1,114 @@
+package com.yiqi.admin.controller.order;
+
+import java.util.Arrays;
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.yiqi.common.constant.UrlConstants;
+import com.yiqi.order.domain.OrderDelivery;
+import com.yiqi.order.service.IOrderDeliveryService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.yiqi.common.annotation.Log;
+import com.yiqi.common.core.controller.BaseController;
+import com.yiqi.common.core.domain.AjaxResult;
+import com.yiqi.common.enums.BusinessType;
+import com.yiqi.common.utils.poi.ExcelUtil;
+import com.yiqi.common.core.page.TableDataInfo;
+
+/**
+ * 订单配送Controller
+ *
+ * @author ruoyi
+ * @date 2024-09-07
+ */
+@Api(tags = "管理后台 - 订单配送")
+@RestController
+@RequestMapping(UrlConstants.managerApi + "/system/delivery")
+public class OrderDeliveryController extends BaseController {
+    @Autowired
+    private IOrderDeliveryService orderDeliveryService;
+
+    /**
+     * 查询订单配送列表
+     */
+    @PreAuthorize("@ss.hasPermi('system:delivery:list')")
+    @GetMapping("/list")
+    @ApiOperation(value = "查询订单配送列表")
+    public TableDataInfo list(OrderDelivery orderDelivery) {
+        startPage();
+        List<OrderDelivery> list = orderDeliveryService.selectOrderDeliveryList(orderDelivery);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出订单配送列表
+     */
+    @PreAuthorize("@ss.hasPermi('system:delivery:export')")
+    @Log(title = "订单配送", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    @ApiOperation(value = "导出订单配送列表")
+    public void export(HttpServletResponse response, OrderDelivery orderDelivery) {
+        List<OrderDelivery> list = orderDeliveryService.selectOrderDeliveryList(orderDelivery);
+        ExcelUtil<OrderDelivery> util = new ExcelUtil<OrderDelivery>(OrderDelivery.class);
+        util.exportExcel(response, list, "订单配送数据");
+    }
+
+    /**
+     * 获取订单配送详细信息
+     */
+    @PreAuthorize("@ss.hasPermi('system:delivery:query')")
+    @GetMapping(value = "/{id}")
+    @ApiOperation(value = "获取订单配送详细信息")
+    public AjaxResult getInfo(@PathVariable("id") Integer id) {
+        return success(orderDeliveryService.getById(id));
+    }
+
+    /**
+     * 新增订单配送
+     */
+    @PreAuthorize("@ss.hasPermi('system:delivery:add')")
+    @Log(title = "订单配送", businessType = BusinessType.INSERT)
+    @PostMapping
+    @ApiOperation(value = "新增订单配送")
+    public AjaxResult add(@RequestBody OrderDelivery orderDelivery) {
+        orderDelivery.setCreateById(getUserId());
+        orderDelivery.setCreateBy(getUsername());
+        return toAjax(orderDeliveryService.save(orderDelivery));
+    }
+
+    /**
+     * 修改订单配送
+     */
+    @PreAuthorize("@ss.hasPermi('system:delivery:edit')")
+    @Log(title = "订单配送", businessType = BusinessType.UPDATE)
+    @PutMapping
+    @ApiOperation(value = "修改订单配送")
+    public AjaxResult edit(@RequestBody OrderDelivery orderDelivery) {
+        orderDelivery.setUpdateById(getUserId());
+        orderDelivery.setUpdateBy(getUsername());
+        return toAjax(orderDeliveryService.updateById(orderDelivery));
+    }
+
+    /**
+     * 删除订单配送
+     */
+    @PreAuthorize("@ss.hasPermi('system:delivery:remove')")
+    @Log(title = "订单配送", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    @ApiOperation(value = "删除订单配送")
+    public AjaxResult remove(@PathVariable Integer[] ids) {
+        return toAjax(orderDeliveryService.removeBatchByIds(Arrays.asList(ids)));
+    }
+
+}

+ 213 - 0
yiqi-common/src/main/java/com/yiqi/order/domain/OrderDelivery.java

@@ -0,0 +1,213 @@
+package com.yiqi.order.domain;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.yiqi.common.annotation.Excel;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.yiqi.common.core.domain.BaseEntity;
+import lombok.Data;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+
+/**
+ * 订单配送对象 order_delivery
+ *
+ * @author ruoyi
+ * @date 2024-09-07
+ */
+@ApiModel("订单配送")
+@TableName("order_delivery")
+@Data
+public class OrderDelivery extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键ID
+     */
+    @ApiModelProperty("主键ID")
+    @TableId(type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 配送单号
+     */
+    @Excel(name = "配送单号")
+    @ApiModelProperty("配送单号")
+    private String deliverySn;
+
+    /**
+     * 商品订单号
+     */
+    @Excel(name = "商品订单号")
+    @ApiModelProperty("商品订单号")
+    private String orderSn;
+
+    /**
+     * 组织ID
+     */
+    @Excel(name = "组织ID")
+    @ApiModelProperty("组织ID")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long storeId;
+
+    /**
+     * 微信门店id
+     */
+    @Excel(name = "微信门店id")
+    @ApiModelProperty("微信门店id")
+    private String wxStoreId;
+
+    /**
+     * 衣服订单类型(0=收衣,1=取衣)
+     */
+    @Excel(name = "衣服订单类型", readConverterExp = "0==收衣,1=取衣")
+    @ApiModelProperty("衣服订单类型(0=收衣,1=取衣)")
+    private String clothOrderType;
+
+    /**
+     * 运力ID
+     */
+    @Excel(name = "运力ID")
+    @ApiModelProperty("运力ID")
+    private String serviceTransId;
+
+    /**
+     * 客户ID
+     */
+    @Excel(name = "客户ID")
+    @ApiModelProperty("客户ID")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long appUserId;
+
+    /**
+     * 经纬度
+     */
+    @Excel(name = "经纬度")
+    @ApiModelProperty("经纬度")
+    private String userLng;
+
+    /**
+     * 经纬度
+     */
+    @Excel(name = "经纬度")
+    @ApiModelProperty("经纬度")
+    private String userLat;
+
+    /**
+     * 地址
+     */
+    @Excel(name = "地址")
+    @ApiModelProperty("地址")
+    private String userAddress;
+
+    /**
+     * 地址
+     */
+    @Excel(name = "地址")
+    @ApiModelProperty("地址")
+    private String userPhone;
+
+    /**
+     * 配送距离(整数单位:米)
+     */
+    @Excel(name = "配送距离(整数单位:米)")
+    @ApiModelProperty("配送距离(整数单位:米)")
+    private String distance;
+
+    /**
+     * 实际运费(单位:元),运费减去优惠券费用
+     */
+    @Excel(name = "实际运费(单位:元),运费减去优惠券费用")
+    @ApiModelProperty("实际运费(单位:元),运费减去优惠券费用")
+    private BigDecimal fee;
+
+    /**
+     * 取货码
+     */
+    @Excel(name = "取货码")
+    @ApiModelProperty("取货码")
+    private String fetchCode;
+
+    /**
+     * 收货码
+     */
+    @Excel(name = "收货码")
+    @ApiModelProperty("收货码")
+    private String recvCode;
+
+    /**
+     * 外部订单id
+     */
+    @Excel(name = "外部订单id")
+    @ApiModelProperty("外部订单id")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long transOrderId;
+
+    /**
+     * 配送状态,枚举值
+     */
+    @Excel(name = "配送状态,枚举值")
+    @ApiModelProperty("配送状态,枚举值")
+    private String deliveryStatus;
+
+    /**
+     * 状态描述
+     */
+    @Excel(name = "状态描述")
+    @ApiModelProperty("状态描述")
+    private String deliveryStatusMsg;
+
+    /**
+     * 配送员接单时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @Excel(name = "配送员接单时间", width = 30, dateFormat = "yyyy-MM-dd")
+    @ApiModelProperty("配送员接单时间")
+    private Date acceptTime;
+
+    /**
+     * 配送员取货时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @Excel(name = "配送员取货时间", width = 30, dateFormat = "yyyy-MM-dd")
+    @ApiModelProperty("配送员取货时间")
+    private Date fetchTime;
+
+    /**
+     * 配送员完成时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @Excel(name = "配送员完成时间", width = 30, dateFormat = "yyyy-MM-dd")
+    @ApiModelProperty("配送员完成时间")
+    private Date finishTime;
+
+    /**
+     * 取消时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+    @Excel(name = "取消时间", width = 30, dateFormat = "yyyy-MM-dd")
+    @ApiModelProperty("取消时间")
+    private Date cancelTime;
+
+    /**
+     * 配送员姓名
+     */
+    @Excel(name = "配送员姓名")
+    @ApiModelProperty("配送员姓名")
+    private String transporterName;
+
+    /**
+     * 配送员电话
+     */
+    @Excel(name = "配送员电话")
+    @ApiModelProperty("配送员电话")
+    private String transporterPhone;
+
+
+}

+ 24 - 0
yiqi-common/src/main/java/com/yiqi/order/service/IOrderDeliveryService.java

@@ -0,0 +1,24 @@
+package com.yiqi.order.service;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yiqi.order.domain.OrderDelivery;
+
+/**
+ * 订单配送Service接口
+ *
+ * @author ruoyi
+ * @date 2024-09-07
+ */
+public interface IOrderDeliveryService extends IService<OrderDelivery> {
+
+    /**
+     * 查询订单配送列表
+     *
+     * @param orderDelivery 订单配送
+     * @return 订单配送集合
+     */
+    public List<OrderDelivery> selectOrderDeliveryList(OrderDelivery orderDelivery);
+
+}

+ 25 - 0
yiqi-core/src/main/java/com/yiqi/order/mapper/OrderDeliveryMapper.java

@@ -0,0 +1,25 @@
+package com.yiqi.order.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.yiqi.order.domain.OrderDelivery;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 订单配送Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-09-07
+ */
+@Mapper
+public interface OrderDeliveryMapper extends BaseMapper<OrderDelivery> {
+
+    /**
+     * 查询订单配送列表
+     *
+     * @param orderDelivery 订单配送
+     * @return 订单配送集合
+     */
+    public List<OrderDelivery> selectOrderDeliveryList(OrderDelivery orderDelivery);
+
+}

+ 35 - 0
yiqi-core/src/main/java/com/yiqi/order/service/impl/OrderDeliveryServiceImpl.java

@@ -0,0 +1,35 @@
+package com.yiqi.order.service.impl;
+
+import java.util.List;
+
+import com.yiqi.common.utils.DateUtils;
+import com.yiqi.common.utils.SecurityUtils;
+import com.yiqi.order.domain.OrderDelivery;
+import com.yiqi.order.mapper.OrderDeliveryMapper;
+import com.yiqi.order.service.IOrderDeliveryService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+/**
+ * 订单配送Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-09-07
+ */
+@Service
+public class OrderDeliveryServiceImpl extends ServiceImpl<OrderDeliveryMapper, OrderDelivery> implements IOrderDeliveryService {
+
+
+    /**
+     * 查询订单配送列表
+     *
+     * @param orderDelivery 订单配送
+     * @return 订单配送
+     */
+    @Override
+    public List<OrderDelivery> selectOrderDeliveryList(OrderDelivery orderDelivery) {
+        return baseMapper.selectOrderDeliveryList(orderDelivery);
+    }
+
+}

+ 12 - 0
yiqi-core/src/main/resources/mapper/order/OrderDeliveryMapper.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.yiqi.order.mapper.OrderDeliveryMapper">
+
+    <select id="selectOrderDeliveryList" resultType="com.yiqi.order.domain.OrderDelivery">
+        select *
+        from order_delivery
+        where 1 = 1
+    </select>
+</mapper>