Преглед изворни кода

feat: 商品信息 & 竞品信息

xdd пре 2 месеци
родитељ
комит
4588b59cd4

+ 73 - 0
fs-admin/src/main/java/com/fs/saler/FsServiceGoodsController.java

@@ -0,0 +1,73 @@
+package com.fs.saler;
+
+import com.fs.common.core.domain.R;
+import com.fs.saler.domain.FsProductInfo;
+import com.fs.saler.param.ProductInfoListPageParam;
+import com.fs.saler.service.FsProductInfoService;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@Api("商品信息")
+@RestController
+@RequestMapping(value="/saler/serviceGoods")
+public class FsServiceGoodsController {
+    @Autowired
+    private FsProductInfoService fsProductInfoService;
+
+    /**
+     * 分页查询商品列表
+     */
+    @ApiOperation("查看商品列表")
+    @PostMapping("/listPage")
+    public R listPage(@RequestBody ProductInfoListPageParam param) {
+        PageHelper.startPage(param.getPageNum(), param.getPageSize());
+        List<FsProductInfo> list = fsProductInfoService.getAll(param);
+        PageInfo<FsProductInfo> pageInfo = new PageInfo<>(list);
+        return R.ok().put("data", pageInfo);
+    }
+    /**
+     * 查看商品详情
+     */
+    @ApiOperation("查看商品详情")
+    @PostMapping("/findById")
+    public R findById(@RequestBody ProductInfoListPageParam param) {
+        FsProductInfo productInfo = fsProductInfoService.getById(param.getId());
+        return R.ok().put("data", productInfo);
+    }
+    /**
+     * 新增商品
+     */
+    @ApiOperation("新增商品")
+    @PostMapping("/save")
+    public R save(@RequestBody FsProductInfo productInfo) {
+        boolean result = fsProductInfoService.save(productInfo);
+        return result ? R.ok() : R.error("新增商品失败");
+    }
+    /**
+     * 更新商品信息
+     */
+    @ApiOperation("更新商品信息")
+    @PostMapping("/updateById")
+    public R updateById(@RequestBody FsProductInfo productInfo) {
+        boolean result = fsProductInfoService.update(productInfo);
+        return result ? R.ok() : R.error("更新商品信息失败");
+    }
+    /**
+     * 删除商品
+     */
+    @ApiOperation("删除商品")
+    @PostMapping("/deleteById")
+    public R deleteById(@RequestBody ProductInfoListPageParam param) {
+        boolean result = fsProductInfoService.removeById(param.getId());
+        return result ? R.ok() : R.error("删除商品失败");
+    }
+}

+ 4 - 4
fs-service/src/main/java/com/fs/saler/mapper/FsProductInfoMapper.java

@@ -1,6 +1,7 @@
 package com.fs.saler.mapper;
 
 import com.fs.saler.domain.FsProductInfo;
+import com.fs.saler.param.ProductInfoListPageParam;
 import org.apache.ibatis.annotations.*;
 import java.util.List;
 
@@ -15,14 +16,13 @@ public interface FsProductInfoMapper {
      * @return 商品信息
      */
     @Select("SELECT * FROM fs_product_info WHERE id = #{id}")
-    FsProductInfo selectById(Integer id);
+    FsProductInfo selectById(Long id);
 
     /**
      * 查询所有商品信息
      * @return 商品信息列表
      */
-    @Select("SELECT * FROM fs_product_info")
-    List<FsProductInfo> selectAll();
+    List<FsProductInfo> selectAll(ProductInfoListPageParam param);
 
     /**
      * 插入商品信息
@@ -54,5 +54,5 @@ public interface FsProductInfoMapper {
      * @return 影响行数
      */
     @Delete("DELETE FROM fs_product_info WHERE id = #{id}")
-    int deleteById(Integer id);
+    int deleteById(Long id);
 }

+ 59 - 0
fs-service/src/main/java/com/fs/saler/param/ProductInfoListPageParam.java

@@ -0,0 +1,59 @@
+package com.fs.saler.param;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+@Data
+public class ProductInfoListPageParam {
+    private Long id;
+    private Integer pageNum;
+    private Integer pageSize;
+
+    /**
+     * 商品名称
+     */
+    private String productName;
+
+    /**
+     * 购买数量
+     */
+    private Integer purchaseQuantity;
+
+    /**
+     * 金额
+     */
+    private BigDecimal amount;
+
+    /**
+     * 预计完成时间
+     */
+    private Date plannedCompletionDate;
+
+    /**
+     * 购买次数
+     */
+    private Integer purchaseTimes;
+
+    /**
+     * 剩余次数
+     */
+    private Integer surplusTimes;
+
+    /**
+     * 会员情况
+     */
+    private String memberStatus;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+}

+ 45 - 0
fs-service/src/main/java/com/fs/saler/service/FsCompetitorInfoService.java

@@ -0,0 +1,45 @@
+package com.fs.saler.service;
+
+import com.fs.saler.domain.FsCompetitorInfo;
+
+import java.util.List;
+
+/**
+ * 竞品信息服务接口
+ */
+public interface FsCompetitorInfoService {
+
+    /**
+     * 根据ID查询竞品信息
+     * @param id 竞品ID
+     * @return 竞品信息
+     */
+    FsCompetitorInfo getById(Integer id);
+
+    /**
+     * 查询所有竞品信息
+     * @return 竞品信息列表
+     */
+    List<FsCompetitorInfo> getAll();
+
+    /**
+     * 新增竞品信息
+     * @param FsCompetitorInfo 竞品信息
+     * @return 是否成功
+     */
+    boolean save(FsCompetitorInfo FsCompetitorInfo);
+
+    /**
+     * 更新竞品信息
+     * @param FsCompetitorInfo 竞品信息
+     * @return 是否成功
+     */
+    boolean update(FsCompetitorInfo FsCompetitorInfo);
+
+    /**
+     * 根据ID删除竞品信息
+     * @param id 竞品ID
+     * @return 是否成功
+     */
+    boolean removeById(Integer id);
+}

+ 46 - 0
fs-service/src/main/java/com/fs/saler/service/FsProductInfoService.java

@@ -0,0 +1,46 @@
+package com.fs.saler.service;
+
+import com.fs.saler.domain.FsProductInfo;
+import com.fs.saler.param.ProductInfoListPageParam;
+
+import java.util.List;
+
+/**
+ * 商品信息服务接口
+ */
+public interface FsProductInfoService {
+
+    /**
+     * 根据ID查询商品信息
+     * @param id 商品ID
+     * @return 商品信息
+     */
+    FsProductInfo getById(Long id);
+
+    /**
+     * 查询所有商品信息
+     * @return 商品信息列表
+     */
+    List<FsProductInfo> getAll(ProductInfoListPageParam param);
+
+    /**
+     * 新增商品信息
+     * @param FsProductInfo 商品信息
+     * @return 是否成功
+     */
+    boolean save(FsProductInfo FsProductInfo);
+
+    /**
+     * 更新商品信息
+     * @param FsProductInfo 商品信息
+     * @return 是否成功
+     */
+    boolean update(FsProductInfo FsProductInfo);
+
+    /**
+     * 根据ID删除商品信息
+     * @param id 商品ID
+     * @return 是否成功
+     */
+    boolean removeById(Long id);
+}

+ 67 - 0
fs-service/src/main/java/com/fs/saler/service/impl/FsCompetitorInfoServiceImpl.java

@@ -0,0 +1,67 @@
+package com.fs.saler.service.impl;
+
+import com.fs.saler.domain.FsCompetitorInfo;
+import com.fs.saler.mapper.FsCompetitorInfoMapper;
+import com.fs.saler.service.FsCompetitorInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.List;
+
+/**
+ * 竞品信息服务实现类
+ */
+@Service
+public class FsCompetitorInfoServiceImpl implements FsCompetitorInfoService {
+
+    @Autowired
+    private FsCompetitorInfoMapper fsCompetitorInfoMapper;
+
+    /**
+     * 根据ID查询竞品信息
+     * @param id 竞品ID
+     * @return 竞品信息
+     */
+    @Override
+    public FsCompetitorInfo getById(Integer id) {
+        return fsCompetitorInfoMapper.selectById(id);
+    }
+
+    /**
+     * 查询所有竞品信息
+     * @return 竞品信息列表
+     */
+    @Override
+    public List<FsCompetitorInfo> getAll() {
+        return fsCompetitorInfoMapper.selectAll();
+    }
+
+    /**
+     * 新增竞品信息
+     * @param FsCompetitorInfo 竞品信息
+     * @return 是否成功
+     */
+    @Override
+    public boolean save(FsCompetitorInfo FsCompetitorInfo) {
+        return fsCompetitorInfoMapper.insert(FsCompetitorInfo) > 0;
+    }
+
+    /**
+     * 更新竞品信息
+     * @param FsCompetitorInfo 竞品信息
+     * @return 是否成功
+     */
+    @Override
+    public boolean update(FsCompetitorInfo FsCompetitorInfo) {
+        return fsCompetitorInfoMapper.update(FsCompetitorInfo) > 0;
+    }
+
+    /**
+     * 根据ID删除竞品信息
+     * @param id 竞品ID
+     * @return 是否成功
+     */
+    @Override
+    public boolean removeById(Integer id) {
+        return fsCompetitorInfoMapper.deleteById(id) > 0;
+    }
+}

+ 68 - 0
fs-service/src/main/java/com/fs/saler/service/impl/FsProductInfoServiceImpl.java

@@ -0,0 +1,68 @@
+package com.fs.saler.service.impl;
+
+import com.fs.saler.domain.FsProductInfo;
+import com.fs.saler.mapper.FsProductInfoMapper;
+import com.fs.saler.param.ProductInfoListPageParam;
+import com.fs.saler.service.FsProductInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import java.util.List;
+
+/**
+ * 商品信息服务实现类
+ */
+@Service
+public class FsProductInfoServiceImpl implements FsProductInfoService {
+
+    @Autowired
+    private FsProductInfoMapper fsProductInfoMapper;
+
+    /**
+     * 根据ID查询商品信息
+     * @param id 商品ID
+     * @return 商品信息
+     */
+    @Override
+    public FsProductInfo getById(Long id) {
+        return fsProductInfoMapper.selectById(id);
+    }
+
+    /**
+     * 查询所有商品信息
+     * @return 商品信息列表
+     */
+    @Override
+    public List<FsProductInfo> getAll(ProductInfoListPageParam param) {
+        return fsProductInfoMapper.selectAll(param);
+    }
+
+    /**
+     * 新增商品信息
+     * @param FsProductInfo 商品信息
+     * @return 是否成功
+     */
+    @Override
+    public boolean save(FsProductInfo FsProductInfo) {
+        return fsProductInfoMapper.insert(FsProductInfo) > 0;
+    }
+
+    /**
+     * 更新商品信息
+     * @param FsProductInfo 商品信息
+     * @return 是否成功
+     */
+    @Override
+    public boolean update(FsProductInfo FsProductInfo) {
+        return fsProductInfoMapper.update(FsProductInfo) > 0;
+    }
+
+    /**
+     * 根据ID删除商品信息
+     * @param id 商品ID
+     * @return 是否成功
+     */
+    @Override
+    public boolean removeById(Long id) {
+        return fsProductInfoMapper.deleteById(id) > 0;
+    }
+}

+ 42 - 0
fs-service/src/main/resources/mapper/saler/FsProductInfoMapper.xml

@@ -0,0 +1,42 @@
+<?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.fs.saler.mapper.FsProductInfoMapper">
+
+    <select id="selectAll" resultType="com.fs.saler.domain.FsProductInfo" parameterType="com.fs.saler.param.ProductInfoListPageParam">
+        SELECT * FROM fs_product_info
+        <where>
+            <if test="id != null">
+                AND id = #{id}
+            </if>
+            <if test="productName != null and productName != ''">
+                AND product_name LIKE CONCAT('%', #{productName}, '%')
+            </if>
+            <if test="purchaseQuantity != null">
+                AND purchase_quantity = #{purchaseQuantity}
+            </if>
+            <if test="amount != null">
+                AND amount = #{amount}
+            </if>
+            <if test="plannedCompletionDate != null">
+                AND planned_completion_date = #{plannedCompletionDate}
+            </if>
+            <if test="purchaseTimes != null">
+                AND purchase_times = #{purchaseTimes}
+            </if>
+            <if test="surplusTimes != null">
+                AND surplus_times = #{surplusTimes}
+            </if>
+            <if test="memberStatus != null and memberStatus != ''">
+                AND member_status = #{memberStatus}
+            </if>
+            <if test="remark != null and remark != ''">
+                AND remark LIKE CONCAT('%', #{remark}, '%')
+            </if>
+            <if test="createTime != null">
+                AND create_time = #{createTime}
+            </if>
+        </where>
+        ORDER BY id DESC
+    </select>
+
+</mapper>

+ 71 - 0
fs-user-app/src/main/java/com/fs/app/controller/FsServiceGoodsController.java

@@ -0,0 +1,71 @@
+package com.fs.app.controller;
+
+import com.fs.common.core.domain.R;
+import com.fs.saler.domain.FsProductInfo;
+import com.fs.saler.param.ProductInfoListPageParam;
+import com.fs.saler.service.FsProductInfoService;
+import com.github.pagehelper.PageHelper;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.github.pagehelper.PageInfo;
+import org.springframework.web.bind.annotation.*;
+import java.util.List;
+@Api("商品信息")
+@RestController
+@RequestMapping(value="/app/serviceGoods")
+public class FsServiceGoodsController {
+    @Autowired
+    private FsProductInfoService fsProductInfoService;
+
+    /**
+     * 分页查询商品列表
+     */
+    @ApiOperation("查看商品列表")
+    @PostMapping("/listPage")
+    public R listPage(@RequestBody ProductInfoListPageParam param) {
+        PageHelper.startPage(param.getPageNum(), param.getPageSize());
+        List<FsProductInfo> list = fsProductInfoService.getAll(param);
+        PageInfo<FsProductInfo> pageInfo = new PageInfo<>(list);
+        return R.ok().put("data", pageInfo);
+    }
+    /**
+     * 查看商品详情
+     */
+    @ApiOperation("查看商品详情")
+    @PostMapping("/findById")
+    public R findById(@RequestBody ProductInfoListPageParam param) {
+        FsProductInfo productInfo = fsProductInfoService.getById(param.getId());
+        return R.ok().put("data", productInfo);
+    }
+    /**
+     * 新增商品
+     */
+    @ApiOperation("新增商品")
+    @PostMapping("/save")
+    public R save(@RequestBody FsProductInfo productInfo) {
+        boolean result = fsProductInfoService.save(productInfo);
+        return result ? R.ok() : R.error("新增商品失败");
+    }
+    /**
+     * 更新商品信息
+     */
+    @ApiOperation("更新商品信息")
+    @PostMapping("/updateById")
+    public R updateById(@RequestBody FsProductInfo productInfo) {
+        boolean result = fsProductInfoService.update(productInfo);
+        return result ? R.ok() : R.error("更新商品信息失败");
+    }
+    /**
+     * 删除商品
+     */
+    @ApiOperation("删除商品")
+    @PostMapping("/deleteById")
+    public R deleteById(@RequestBody ProductInfoListPageParam param) {
+        boolean result = fsProductInfoService.removeById(param.getId());
+        return result ? R.ok() : R.error("删除商品失败");
+    }
+}