qrs 3 тижнів тому
батько
коміт
88cae0a512

+ 112 - 0
alien-entity/src/main/java/shop/alien/entity/second/SecondTradeRecord.java

@@ -0,0 +1,112 @@
+package shop.alien.entity.second;
+
+import com.baomidou.mybatisplus.annotation.*;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * <p>
+ * 二手交易记录表
+ * </p>
+ *
+ * @author qrs
+ * @since 2025-07-07
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="SecondTradeRecord对象", description="二手交易记录表")
+public class SecondTradeRecord extends Model<SecondTradeRecord> {
+
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "主键id")
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    @ApiModelProperty(value = "商品id")
+    @TableField("goods_id")
+    private Integer goodsId;
+
+    @ApiModelProperty(value = "买家id")
+    @TableField("buyer_id")
+    private Integer buyerId;
+
+    @ApiModelProperty(value = "卖家id")
+    @TableField("seller_id")
+    private Integer sellerId;
+
+    @ApiModelProperty(value = "交易时间")
+    @TableField("transaction_time")
+    private Date transactionTime;
+
+    @ApiModelProperty(value = "交易地点(经纬度)")
+    @TableField("transaction_latitude_longitude")
+    private String transactionLatitudeLongitude;
+
+    @ApiModelProperty(value = "交易地点(详细地址)")
+    @TableField("transaction_location")
+    private String transactionLocation;
+
+    @ApiModelProperty(value = "交易金额")
+    @TableField("transaction_amount")
+    private BigDecimal transactionAmount;
+
+    @ApiModelProperty(value = "买家是否签到  0-未签到  1-已签到")
+    @TableField("buyer_signin")
+    private Integer buyerSignin;
+
+    @ApiModelProperty(value = "卖家是否签到  0-未签到  1-已签到")
+    @TableField("seller_signin")
+    private Integer sellerSignin;
+
+    @ApiModelProperty(value = "买家交易状态  1-交易成功  2-交易失败")
+    @TableField("buyer_transaction_status")
+    private Integer buyerTransactionStatus;
+
+    @ApiModelProperty(value = "卖家交易状态  1-交易成功  2-交易失败")
+    @TableField("seller_transaction_status")
+    private Integer sellerTransactionStatus;
+
+    @ApiModelProperty(value = "交易状态  0-待交易  1-交易成功  2-交易失败")
+    @TableField("trade_status")
+    private Integer tradeStatus;
+
+    @ApiModelProperty(value = "买家评价")
+    @TableField("buyer_evaluate")
+    private String buyerEvaluate;
+
+    @ApiModelProperty(value = "卖家评价")
+    @TableField("seller_evaluate")
+    private String sellerEvaluate;
+
+    @ApiModelProperty(value = "删除标记  0:未删除  1:已删除")
+    @TableField("delete_flag")
+    @TableLogic
+    private Integer deleteFlag;
+
+    @ApiModelProperty(value = "创建时间")
+    @TableField(value = "created_time", fill = FieldFill.INSERT)
+    private Date createdTime;
+
+    @ApiModelProperty(value = "创建人ID")
+    @TableField(value = "created_user_id", fill = FieldFill.INSERT)
+    private Integer createdUserId;
+
+    @ApiModelProperty(value = "修改时间")
+    @TableField(value = "updated_time", fill = FieldFill.INSERT_UPDATE)
+    private Date updatedTime;
+
+    @ApiModelProperty(value = "修改人ID")
+    @TableField(value = "updated_user_id", fill = FieldFill.INSERT_UPDATE)
+    private Integer updatedUserId;
+
+}

+ 17 - 0
alien-entity/src/main/java/shop/alien/mapper/second/SecondTradeRecordMapper.java

@@ -0,0 +1,17 @@
+package shop.alien.mapper.second;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import shop.alien.entity.second.SecondTradeRecord;
+
+/**
+ * <p>
+ * 二手交易记录表 Mapper 接口
+ * </p>
+ *
+ * @author qrs
+ * @since 2025-07-07
+ */
+public interface SecondTradeRecordMapper extends BaseMapper<SecondTradeRecord> {
+
+}

+ 57 - 0
alien-second/src/main/java/shop/alien/second/controller/SecondTradeRecordController.java

@@ -0,0 +1,57 @@
+package shop.alien.second.controller;
+
+
+import feign.Param;
+import io.swagger.annotations.*;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+import shop.alien.entity.result.R;
+import shop.alien.entity.second.SecondTradeRecord;
+import shop.alien.second.service.SecondTradeRecordService;
+
+/**
+ * <p>
+ * 二手交易记录表 前端控制器
+ * </p>
+ *
+ * @author qrs
+ * @since 2025-07-07
+ */
+@Slf4j
+@Api(tags = {"二手平台-商品交易记录"})
+@ApiSort(1)
+@CrossOrigin
+@RequiredArgsConstructor
+@RestController
+@RequestMapping("/secondTradeRecord")
+public class SecondTradeRecordController {
+
+    private final SecondTradeRecordService secondTradeRecordService;
+
+    @ApiOperation("获取交易信息")
+    @ApiOperationSupport(order = 1)
+    @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "主键id", dataType = "Integer", paramType = "query", required = true)})
+    @GetMapping("/getTradeRecord")
+    public R<SecondTradeRecord> getTradeRecord(@Param("id") Long id) {
+        log.error("SecondTradeRecordController.getTradeRecord?id={}", id);
+        return R.data(secondTradeRecordService.getTradeRecord(id));
+    }
+
+    @ApiOperation("保存或更新交易记录")
+    @ApiOperationSupport(order = 2)
+    @PostMapping("/saveOrUpdate")
+    public R<Boolean> saveOrUpdate(@RequestBody SecondTradeRecord entity) {
+        log.error("SecondTradeRecordController.getTradeRecord?entity={}", entity.toString());
+        return R.data(secondTradeRecordService.saveOrUpdate(entity));
+    }
+
+    @ApiOperation("删除交易信息")
+    @ApiOperationSupport(order = 3)
+    @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "主键id", dataType = "Integer", paramType = "query", required = true)})
+    @DeleteMapping("/deleteTradeRecord")
+    public R<Boolean> deleteTradeRecord(@Param("id") Long id) {
+        log.error("SecondTradeRecordController.deleteTradeRecord?id={}", id);
+        return R.data(secondTradeRecordService.removeById(id));
+    }
+}

+ 36 - 0
alien-second/src/main/java/shop/alien/second/service/SecondTradeRecordService.java

@@ -0,0 +1,36 @@
+package shop.alien.second.service;
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import shop.alien.entity.second.SecondTradeRecord;
+
+/**
+ * <p>
+ * 二手交易记录表 服务类
+ * </p>
+ *
+ * @author qrs
+ * @since 2025-07-07
+ */
+public interface SecondTradeRecordService extends IService<SecondTradeRecord> {
+    /**
+     * 根据ID获取交易记录
+     * @param id 交易记录ID
+     * @return 交易记录对象
+     */
+    SecondTradeRecord getTradeRecord(Long id);
+
+    /**
+     * 保存或更新交易记录
+     * @param entity 交易记录对象
+     * @return 操作结果
+     */
+    boolean saveOrUpdate(SecondTradeRecord entity);
+
+    /**
+     * 根据ID删除交易记录
+     * @param id 交易记录ID
+     * @return 删除结果
+     */
+    boolean removeById(Long id);
+}

+ 68 - 0
alien-second/src/main/java/shop/alien/second/service/impl/SecondTradeRecordServiceImpl.java

@@ -0,0 +1,68 @@
+package shop.alien.second.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import shop.alien.entity.second.SecondGoods;
+import shop.alien.entity.second.SecondTradeRecord;
+import shop.alien.mapper.second.SecondGoodsMapper;
+import shop.alien.mapper.second.SecondTradeRecordMapper;
+import shop.alien.second.service.SecondTradeRecordService;
+
+/**
+ * <p>
+ * 二手交易记录表 服务实现类
+ * </p>
+ *
+ * @author qrs
+ * @since 2025-07-07
+ */
+@Slf4j
+@Service
+@RequiredArgsConstructor
+public class SecondTradeRecordServiceImpl extends ServiceImpl<SecondTradeRecordMapper, SecondTradeRecord> implements SecondTradeRecordService {
+
+    private final SecondTradeRecordMapper secondTradeRecordMapper;
+    private final SecondGoodsMapper secondGoodsMapper;
+
+    @Override
+    public SecondTradeRecord getTradeRecord(Long id) {
+        return super.getById(id);
+    }
+
+    /**
+     * 保存或更新交易记录
+     * @param entity 交易记录对象
+     * @return 操作结果
+     */
+    @Override
+    public boolean saveOrUpdate(SecondTradeRecord entity) {
+        try {
+            if (null == entity.getId()) {
+                super.saveOrUpdate(entity);
+                SecondGoods goods = new SecondGoods();
+                goods.setId(entity.getGoodsId());
+                goods.setTradeId(entity.getId());
+                secondGoodsMapper.updateById(goods);
+            } else {
+                super.saveOrUpdate(entity);
+            }
+            return true;
+        } catch (Exception e) {
+            log.error("SecondTradeRecordServiceImpl.saveOrUpdate?error={}", e.getMessage());
+        }
+
+        return false;
+    }
+
+    /**
+     * 根据ID删除交易记录
+     * @param id 交易记录ID
+     * @return 删除结果
+     */
+    @Override
+    public boolean removeById(Long id) {
+        return super.removeById(id);
+    }
+}