فهرست منبع

新增二级市场购物车

李书文 1 سال پیش
والد
کامیت
227680c4ed

+ 67 - 0
sp-service/level-two-server/src/main/java/com/pj/tb_orders_cart/TbOrdersCart.java

@@ -0,0 +1,67 @@
+package com.pj.tb_orders_cart;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * Model: tb_orders_cart -- 订单购物车
+ *
+ * @author linbl
+ */
+@Data
+@Accessors(chain = true)
+@TableName(TbOrdersCart.TABLE_NAME)
+@EqualsAndHashCode(callSuper = false)
+public class TbOrdersCart extends Model<TbOrdersCart> implements Serializable {
+
+    // ---------- 模块常量 ----------
+    /**
+     * 序列化版本id
+     */
+    private static final long serialVersionUID = 1L;
+    /**
+     * 此模块对应的表名
+     */
+    public static final String TABLE_NAME = "tb_orders_cart";
+    /**
+     * 此模块对应的权限码
+     */
+    public static final String PERMISSION_CODE = "tb-orders-cart";
+    public static final String PERMISSION_CODE_ADD = "tb-orders-cart-add";
+    public static final String PERMISSION_CODE_EDIT = "tb-orders-cart-edit";
+    public static final String PERMISSION_CODE_DEL = "tb-orders-cart-del";
+
+
+    // ---------- 表中字段 ----------
+    /**
+     * 主键
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 订单id
+     */
+    @NotNull(message = "订单ID为空")
+    private Long orderId;
+
+    /**
+     * 购买者的ID
+     */
+    private Long userId;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+}

+ 66 - 0
sp-service/level-two-server/src/main/java/com/pj/tb_orders_cart/TbOrdersCartAppController.java

@@ -0,0 +1,66 @@
+package com.pj.tb_orders_cart;
+
+import com.pj.current.satoken.StpAPPUserUtil;
+import com.pj.tb_orders_cart.vo.OrderListVo;
+import com.pj.utils.sg.AjaxJson;
+import com.pj.utils.so.SoMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
+
+
+/**
+ * Controller: tb_orders_cart -- 订单购物车
+ *
+ * @author linbl
+ */
+@RestController
+@RequestMapping("/app/TbOrdersCart/")
+public class TbOrdersCartAppController {
+
+    /**
+     * 底层 Service 对象
+     */
+    @Autowired
+    TbOrdersCartService tbOrdersCartService;
+
+    /**
+     * 增
+     */
+    @RequestMapping("add")
+    public AjaxJson add(@Validated TbOrdersCart t) {
+        t.setUserId(StpAPPUserUtil.getAPPLoginInfo().getLoginId());
+        TbOrdersCart check = tbOrdersCartService.selectByOrderIdAndUserId(t);
+        if (check == null) {
+            t.setCreateTime(new Date());
+            return AjaxJson.toAjax(tbOrdersCartService.save(t));
+        } else {
+            return AjaxJson.getError("该订单已添加");
+        }
+    }
+
+    /**
+     * 清理购物车,可批量
+     */
+    @RequestMapping("deleteByIds/{ids}")
+    public AjaxJson deleteByIds(@PathVariable Long[] ids) {
+        return AjaxJson.getSuccessData(tbOrdersCartService.removeByIds(Arrays.asList(ids)));
+    }
+
+    /**
+     * 查集合 - 根据条件(参数为空时代表忽略指定条件)
+     */
+    @RequestMapping("getList")
+    public AjaxJson getList() {
+        SoMap so = SoMap.getRequestSoMap();
+        so.put("userId", StpAPPUserUtil.getAPPLoginInfo().getLoginId());
+        List<OrderListVo> list = tbOrdersCartService.getOrderList(so);
+        return AjaxJson.getSuccessData(list);
+    }
+}

+ 93 - 0
sp-service/level-two-server/src/main/java/com/pj/tb_orders_cart/TbOrdersCartController.java

@@ -0,0 +1,93 @@
+package com.pj.tb_orders_cart;
+
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import com.pj.project4sp.SP;
+import com.pj.utils.sg.AjaxJson;
+import com.pj.utils.so.SoMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+
+/**
+ * Controller: tb_orders_cart -- 订单购物车
+ *
+ * @author linbl
+ */
+@RestController
+@RequestMapping("/TbOrdersCart/")
+public class TbOrdersCartController {
+
+    /**
+     * 底层 Service 对象
+     */
+    @Autowired
+    TbOrdersCartService tbOrdersCartService;
+
+    /**
+     * 增
+     */
+    @RequestMapping("add")
+    @SaCheckPermission(TbOrdersCart.PERMISSION_CODE_ADD)
+    public AjaxJson add(TbOrdersCart t) {
+        tbOrdersCartService.add(t);
+        t = tbOrdersCartService.getById(SP.publicMapper.getPrimarykey());
+        return AjaxJson.getSuccessData(t);
+    }
+
+    /**
+     * 删
+     */
+    @RequestMapping("delete")
+    @SaCheckPermission(TbOrdersCart.PERMISSION_CODE_DEL)
+    public AjaxJson delete(Long id) {
+        tbOrdersCartService.delete(id);
+        return AjaxJson.getSuccess();
+    }
+
+    /**
+     * 删 - 根据id列表
+     */
+    @RequestMapping("deleteByIds")
+    @SaCheckPermission(TbOrdersCart.PERMISSION_CODE_DEL)
+    public AjaxJson deleteByIds() {
+        List<Long> ids = SoMap.getRequestSoMap().getListByComma("ids", long.class);
+        int line = SP.publicMapper.deleteByIds(TbOrdersCart.TABLE_NAME, ids);
+        return AjaxJson.getByLine(line);
+    }
+
+    /**
+     * 改
+     */
+    @RequestMapping("update")
+    @SaCheckPermission(TbOrdersCart.PERMISSION_CODE_EDIT)
+    public AjaxJson update(TbOrdersCart t) {
+        tbOrdersCartService.update(t);
+        return AjaxJson.getSuccess();
+    }
+
+    /**
+     * 查 - 根据id
+     */
+    @RequestMapping("getById")
+    @SaCheckPermission(TbOrdersCart.PERMISSION_CODE)
+    public AjaxJson getById(String id) {
+        TbOrdersCart t = tbOrdersCartService.getById(id);
+        return AjaxJson.getSuccessData(t);
+    }
+
+    /**
+     * 查集合 - 根据条件(参数为空时代表忽略指定条件)
+     */
+    @RequestMapping("getList")
+    @SaCheckPermission(TbOrdersCart.PERMISSION_CODE)
+    public AjaxJson getList() {
+        SoMap so = SoMap.getRequestSoMap();
+        List<TbOrdersCart> list = tbOrdersCartService.getList(so.startPage());
+        return AjaxJson.getPageData(so.getDataCount(), list);
+    }
+
+
+}

+ 36 - 0
sp-service/level-two-server/src/main/java/com/pj/tb_orders_cart/TbOrdersCartMapper.java

@@ -0,0 +1,36 @@
+package com.pj.tb_orders_cart;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.pj.tb_orders_cart.vo.OrderListVo;
+import com.pj.utils.so.SoMap;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Select;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * Mapper: tb_orders_cart -- 订单购物车
+ *
+ * @author linbl
+ */
+
+@Mapper
+@Repository
+public interface TbOrdersCartMapper extends BaseMapper<TbOrdersCart> {
+
+
+    /**
+     * 查集合 - 根据条件(参数为空时代表忽略指定条件)
+     *
+     * @param so 参数集合
+     * @return 数据列表
+     */
+    List<TbOrdersCart> getList(SoMap so);
+
+    @Select("SELECT * FROM tb_orders_cart WHERE order_id=#{orderId} AND user_id=#{userId}")
+    TbOrdersCart selectByOrderIdAndUserId(TbOrdersCart cart);
+
+
+    List<OrderListVo> getOrderList(SoMap so);
+}

+ 53 - 0
sp-service/level-two-server/src/main/java/com/pj/tb_orders_cart/TbOrdersCartMapper.xml

@@ -0,0 +1,53 @@
+<?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.pj.tb_orders_cart.TbOrdersCartMapper">
+
+
+
+
+	<!-- ================================== 查询相关 ================================== -->
+	<!-- select id, order_id, user_id, create_time from tb_orders_cart  -->
+	
+	<!-- 通用映射:自动模式 -->
+	<resultMap id="model" autoMapping="true" type="com.pj.tb_orders_cart.TbOrdersCart"></resultMap>
+	
+	<!-- 公共查询sql片段 -->
+	<sql id="select_sql">
+		select * 
+		from tb_orders_cart 
+	</sql>
+
+	
+	<!-- 查集合 - 根据条件(参数为空时代表忽略指定条件) [G] -->
+	<select id="getList" resultMap="model">
+		<include refid="select_sql"></include>
+		<where>
+			<if test=' this.has("id") '> and id = #{id} </if>
+			<if test=' this.has("orderId") '> and order_id = #{orderId} </if>
+			<if test=' this.has("userId") '> and user_id = #{userId} </if>
+			<if test=' this.has("createTime") '> and create_time = #{createTime} </if>
+		</where>
+		order by
+		<choose>
+			<when test='sortType == 1'> id desc </when>
+			<when test='sortType == 2'> order_id desc </when>
+			<when test='sortType == 3'> user_id desc </when>
+			<when test='sortType == 4'> create_time desc </when>
+			<otherwise> id desc </otherwise>
+		</choose>
+	</select>
+
+	<select id="getOrderList" resultType="com.pj.tb_orders_cart.vo.OrderListVo">
+		SELECT
+			c.*,
+			o.goods_name,
+			o.create_name,
+			o.trade_area_name,
+			o.resale_price
+		FROM
+			tb_orders_cart c
+				LEFT JOIN tb_orders o ON o.id = c.order_id
+		WHERE c.user_id=#{userId}
+	</select>
+
+</mapper>

+ 72 - 0
sp-service/level-two-server/src/main/java/com/pj/tb_orders_cart/TbOrdersCartService.java

@@ -0,0 +1,72 @@
+package com.pj.tb_orders_cart;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.pj.tb_orders_cart.vo.OrderListVo;
+import com.pj.utils.so.SoMap;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+
+/**
+ * Service: tb_orders_cart -- 订单购物车
+ *
+ * @author linbl
+ */
+@Service
+@Transactional(rollbackFor = Exception.class)
+public class TbOrdersCartService extends ServiceImpl<TbOrdersCartMapper, TbOrdersCart> implements IService<TbOrdersCart> {
+
+    /**
+     * 底层 Mapper 对象
+     */
+    @Autowired
+    TbOrdersCartMapper tbOrdersCartMapper;
+
+    /**
+     * 增
+     */
+    void add(TbOrdersCart t) {
+        save(t);
+    }
+
+    /**
+     * 删
+     */
+    void delete(Long id) {
+        removeById(id);
+    }
+
+    /**
+     * 改
+     */
+    void update(TbOrdersCart t) {
+        updateById(t);
+
+    }
+
+    TbOrdersCart selectByOrderIdAndUserId(TbOrdersCart cart) {
+        return tbOrdersCartMapper.selectByOrderIdAndUserId(cart);
+    }
+
+    /**
+     * 查
+     */
+    TbOrdersCart getById(String id) {
+        return super.getById(id);
+    }
+
+    /**
+     * 查集合 - 根据条件(参数为空时代表忽略指定条件)
+     */
+    List<TbOrdersCart> getList(SoMap so) {
+        return tbOrdersCartMapper.getList(so);
+    }
+
+    List<OrderListVo> getOrderList(SoMap so) {
+        return tbOrdersCartMapper.getOrderList(so);
+    }
+
+}

+ 49 - 0
sp-service/level-two-server/src/main/java/com/pj/tb_orders_cart/vo/OrderListVo.java

@@ -0,0 +1,49 @@
+package com.pj.tb_orders_cart.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+
+@Data
+public class OrderListVo {
+
+    /**
+     * 主键
+     */
+    @TableId(type = IdType.AUTO)
+    private Long id;
+
+    /**
+     * 订单id
+     */
+    private Long orderId;
+
+    /**
+     * 创建时间
+     */
+    private Date createTime;
+
+    /**
+     * 商品名称
+     */
+    private String goodsName;
+
+    /**
+     * 创建人名称
+     */
+    private String createName;
+
+    /**
+     * 贸易区域名称
+     */
+    private String tradeAreaName;
+
+    /**
+     * 转售金额
+     */
+    private Double resalePrice;
+
+}