🎉 init-ware

This commit is contained in:
bunny 2025-06-24 21:25:48 +08:00
parent 80dfdbba19
commit c09f098807
41 changed files with 1459 additions and 45 deletions

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@ -30,10 +30,10 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<!-- <dependency> -->
<!-- <groupId>org.springframework.cloud</groupId> -->
<!-- <artifactId>spring-cloud-starter-openfeign</artifactId> -->
<!-- </dependency> -->
<dependency>
<groupId>org.springframework.boot</groupId>
@ -42,37 +42,37 @@
</dependency>
<!-- 配置中心来做配置管理-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
<!-- <dependency> -->
<!-- <groupId>com.alibaba.cloud</groupId> -->
<!-- <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> -->
<!-- </dependency> -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-seata</artifactId>
<exclusions>
<exclusion>
<groupId>io.seata</groupId>
<artifactId>seata-all</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- <dependency> -->
<!-- <groupId>com.alibaba.cloud</groupId> -->
<!-- <artifactId>spring-cloud-starter-alibaba-seata</artifactId> -->
<!-- <exclusions> -->
<!-- <exclusion> -->
<!-- <groupId>io.seata</groupId> -->
<!-- <artifactId>seata-all</artifactId> -->
<!-- </exclusion> -->
<!-- </exclusions> -->
<!-- </dependency> -->
<dependency>
<groupId>io.seata</groupId>
<artifactId>seata-all</artifactId>
<version>0.9.0</version>
</dependency>
<!-- <dependency> -->
<!-- <groupId>io.seata</groupId> -->
<!-- <artifactId>seata-all</artifactId> -->
<!-- <version>0.9.0</version> -->
<!-- </dependency> -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
<!-- <dependency> -->
<!-- <groupId>org.springframework.boot</groupId> -->
<!-- <artifactId>spring-boot-starter-amqp</artifactId> -->
<!-- </dependency> -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- <dependency> -->
<!-- <groupId>org.springframework.boot</groupId> -->
<!-- <artifactId>spring-boot-starter-actuator</artifactId> -->
<!-- </dependency> -->
</dependencies>

View File

@ -1,20 +1,15 @@
package com.xunqi.gulimall.ware;
import com.alibaba.cloud.seata.GlobalTransactionAutoConfiguration;
import org.springframework.amqp.rabbit.annotation.EnableRabbit;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
@EnableRabbit
@EnableFeignClients
@EnableDiscoveryClient
@SpringBootApplication(exclude = GlobalTransactionAutoConfiguration.class)
// @EnableRabbit
// @EnableFeignClients
// @EnableDiscoveryClient
// @SpringBootApplication(exclude = GlobalTransactionAutoConfiguration.class)
@SpringBootApplication
public class GulimallWareApplication {
public static void main(String[] args) {
SpringApplication.run(GulimallWareApplication.class, args);
}
}

View File

@ -0,0 +1,89 @@
package com.xunqi.gulimall.ware.controller;
import java.util.Arrays;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xunqi.gulimall.ware.entity.PurchaseEntity;
import com.xunqi.gulimall.ware.service.PurchaseService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.R;
/**
* 采购信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@RestController
@RequestMapping("ware/purchase")
public class PurchaseController {
@Autowired
private PurchaseService purchaseService;
/**
* 列表
*/
@RequestMapping("/list")
//@RequiresPermissions("ware:purchase:list")
public R list(@RequestParam Map<String, Object> params){
PageUtils page = purchaseService.queryPage(params);
return R.ok().put("page", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
//@RequiresPermissions("ware:purchase:info")
public R info(@PathVariable("id") Long id){
PurchaseEntity purchase = purchaseService.getById(id);
return R.ok().put("purchase", purchase);
}
/**
* 保存
*/
@RequestMapping("/save")
//@RequiresPermissions("ware:purchase:save")
public R save(@RequestBody PurchaseEntity purchase){
purchaseService.save(purchase);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
//@RequiresPermissions("ware:purchase:update")
public R update(@RequestBody PurchaseEntity purchase){
purchaseService.updateById(purchase);
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
//@RequiresPermissions("ware:purchase:delete")
public R delete(@RequestBody Long[] ids){
purchaseService.removeByIds(Arrays.asList(ids));
return R.ok();
}
}

View File

@ -0,0 +1,89 @@
package com.xunqi.gulimall.ware.controller;
import java.util.Arrays;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xunqi.gulimall.ware.entity.PurchaseDetailEntity;
import com.xunqi.gulimall.ware.service.PurchaseDetailService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.R;
/**
*
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@RestController
@RequestMapping("ware/purchasedetail")
public class PurchaseDetailController {
@Autowired
private PurchaseDetailService purchaseDetailService;
/**
* 列表
*/
@RequestMapping("/list")
//@RequiresPermissions("ware:purchasedetail:list")
public R list(@RequestParam Map<String, Object> params){
PageUtils page = purchaseDetailService.queryPage(params);
return R.ok().put("page", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
//@RequiresPermissions("ware:purchasedetail:info")
public R info(@PathVariable("id") Long id){
PurchaseDetailEntity purchaseDetail = purchaseDetailService.getById(id);
return R.ok().put("purchaseDetail", purchaseDetail);
}
/**
* 保存
*/
@RequestMapping("/save")
//@RequiresPermissions("ware:purchasedetail:save")
public R save(@RequestBody PurchaseDetailEntity purchaseDetail){
purchaseDetailService.save(purchaseDetail);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
//@RequiresPermissions("ware:purchasedetail:update")
public R update(@RequestBody PurchaseDetailEntity purchaseDetail){
purchaseDetailService.updateById(purchaseDetail);
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
//@RequiresPermissions("ware:purchasedetail:delete")
public R delete(@RequestBody Long[] ids){
purchaseDetailService.removeByIds(Arrays.asList(ids));
return R.ok();
}
}

View File

@ -0,0 +1,89 @@
package com.xunqi.gulimall.ware.controller;
import java.util.Arrays;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xunqi.gulimall.ware.entity.WareInfoEntity;
import com.xunqi.gulimall.ware.service.WareInfoService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.R;
/**
* 仓库信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@RestController
@RequestMapping("ware/wareinfo")
public class WareInfoController {
@Autowired
private WareInfoService wareInfoService;
/**
* 列表
*/
@RequestMapping("/list")
//@RequiresPermissions("ware:wareinfo:list")
public R list(@RequestParam Map<String, Object> params){
PageUtils page = wareInfoService.queryPage(params);
return R.ok().put("page", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
//@RequiresPermissions("ware:wareinfo:info")
public R info(@PathVariable("id") Long id){
WareInfoEntity wareInfo = wareInfoService.getById(id);
return R.ok().put("wareInfo", wareInfo);
}
/**
* 保存
*/
@RequestMapping("/save")
//@RequiresPermissions("ware:wareinfo:save")
public R save(@RequestBody WareInfoEntity wareInfo){
wareInfoService.save(wareInfo);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
//@RequiresPermissions("ware:wareinfo:update")
public R update(@RequestBody WareInfoEntity wareInfo){
wareInfoService.updateById(wareInfo);
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
//@RequiresPermissions("ware:wareinfo:delete")
public R delete(@RequestBody Long[] ids){
wareInfoService.removeByIds(Arrays.asList(ids));
return R.ok();
}
}

View File

@ -0,0 +1,89 @@
package com.xunqi.gulimall.ware.controller;
import java.util.Arrays;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xunqi.gulimall.ware.entity.WareOrderTaskEntity;
import com.xunqi.gulimall.ware.service.WareOrderTaskService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.R;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@RestController
@RequestMapping("ware/wareordertask")
public class WareOrderTaskController {
@Autowired
private WareOrderTaskService wareOrderTaskService;
/**
* 列表
*/
@RequestMapping("/list")
//@RequiresPermissions("ware:wareordertask:list")
public R list(@RequestParam Map<String, Object> params){
PageUtils page = wareOrderTaskService.queryPage(params);
return R.ok().put("page", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
//@RequiresPermissions("ware:wareordertask:info")
public R info(@PathVariable("id") Long id){
WareOrderTaskEntity wareOrderTask = wareOrderTaskService.getById(id);
return R.ok().put("wareOrderTask", wareOrderTask);
}
/**
* 保存
*/
@RequestMapping("/save")
//@RequiresPermissions("ware:wareordertask:save")
public R save(@RequestBody WareOrderTaskEntity wareOrderTask){
wareOrderTaskService.save(wareOrderTask);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
//@RequiresPermissions("ware:wareordertask:update")
public R update(@RequestBody WareOrderTaskEntity wareOrderTask){
wareOrderTaskService.updateById(wareOrderTask);
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
//@RequiresPermissions("ware:wareordertask:delete")
public R delete(@RequestBody Long[] ids){
wareOrderTaskService.removeByIds(Arrays.asList(ids));
return R.ok();
}
}

View File

@ -0,0 +1,89 @@
package com.xunqi.gulimall.ware.controller;
import java.util.Arrays;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xunqi.gulimall.ware.entity.WareOrderTaskDetailEntity;
import com.xunqi.gulimall.ware.service.WareOrderTaskDetailService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.R;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@RestController
@RequestMapping("ware/wareordertaskdetail")
public class WareOrderTaskDetailController {
@Autowired
private WareOrderTaskDetailService wareOrderTaskDetailService;
/**
* 列表
*/
@RequestMapping("/list")
//@RequiresPermissions("ware:wareordertaskdetail:list")
public R list(@RequestParam Map<String, Object> params){
PageUtils page = wareOrderTaskDetailService.queryPage(params);
return R.ok().put("page", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
//@RequiresPermissions("ware:wareordertaskdetail:info")
public R info(@PathVariable("id") Long id){
WareOrderTaskDetailEntity wareOrderTaskDetail = wareOrderTaskDetailService.getById(id);
return R.ok().put("wareOrderTaskDetail", wareOrderTaskDetail);
}
/**
* 保存
*/
@RequestMapping("/save")
//@RequiresPermissions("ware:wareordertaskdetail:save")
public R save(@RequestBody WareOrderTaskDetailEntity wareOrderTaskDetail){
wareOrderTaskDetailService.save(wareOrderTaskDetail);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
//@RequiresPermissions("ware:wareordertaskdetail:update")
public R update(@RequestBody WareOrderTaskDetailEntity wareOrderTaskDetail){
wareOrderTaskDetailService.updateById(wareOrderTaskDetail);
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
//@RequiresPermissions("ware:wareordertaskdetail:delete")
public R delete(@RequestBody Long[] ids){
wareOrderTaskDetailService.removeByIds(Arrays.asList(ids));
return R.ok();
}
}

View File

@ -0,0 +1,89 @@
package com.xunqi.gulimall.ware.controller;
import java.util.Arrays;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
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.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.xunqi.gulimall.ware.entity.WareSkuEntity;
import com.xunqi.gulimall.ware.service.WareSkuService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.R;
/**
* 商品库存
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@RestController
@RequestMapping("ware/waresku")
public class WareSkuController {
@Autowired
private WareSkuService wareSkuService;
/**
* 列表
*/
@RequestMapping("/list")
//@RequiresPermissions("ware:waresku:list")
public R list(@RequestParam Map<String, Object> params){
PageUtils page = wareSkuService.queryPage(params);
return R.ok().put("page", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
//@RequiresPermissions("ware:waresku:info")
public R info(@PathVariable("id") Long id){
WareSkuEntity wareSku = wareSkuService.getById(id);
return R.ok().put("wareSku", wareSku);
}
/**
* 保存
*/
@RequestMapping("/save")
//@RequiresPermissions("ware:waresku:save")
public R save(@RequestBody WareSkuEntity wareSku){
wareSkuService.save(wareSku);
return R.ok();
}
/**
* 修改
*/
@RequestMapping("/update")
//@RequiresPermissions("ware:waresku:update")
public R update(@RequestBody WareSkuEntity wareSku){
wareSkuService.updateById(wareSku);
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
//@RequiresPermissions("ware:waresku:delete")
public R delete(@RequestBody Long[] ids){
wareSkuService.removeByIds(Arrays.asList(ids));
return R.ok();
}
}

View File

@ -0,0 +1,17 @@
package com.xunqi.gulimall.ware.dao;
import com.xunqi.gulimall.ware.entity.PurchaseEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* 采购信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Mapper
public interface PurchaseDao extends BaseMapper<PurchaseEntity> {
}

View File

@ -0,0 +1,17 @@
package com.xunqi.gulimall.ware.dao;
import com.xunqi.gulimall.ware.entity.PurchaseDetailEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
*
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Mapper
public interface PurchaseDetailDao extends BaseMapper<PurchaseDetailEntity> {
}

View File

@ -0,0 +1,17 @@
package com.xunqi.gulimall.ware.dao;
import com.xunqi.gulimall.ware.entity.WareInfoEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* 仓库信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Mapper
public interface WareInfoDao extends BaseMapper<WareInfoEntity> {
}

View File

@ -0,0 +1,17 @@
package com.xunqi.gulimall.ware.dao;
import com.xunqi.gulimall.ware.entity.WareOrderTaskEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Mapper
public interface WareOrderTaskDao extends BaseMapper<WareOrderTaskEntity> {
}

View File

@ -0,0 +1,17 @@
package com.xunqi.gulimall.ware.dao;
import com.xunqi.gulimall.ware.entity.WareOrderTaskDetailEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Mapper
public interface WareOrderTaskDetailDao extends BaseMapper<WareOrderTaskDetailEntity> {
}

View File

@ -0,0 +1,17 @@
package com.xunqi.gulimall.ware.dao;
import com.xunqi.gulimall.ware.entity.WareSkuEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* 商品库存
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Mapper
public interface WareSkuDao extends BaseMapper<WareSkuEntity> {
}

View File

@ -0,0 +1,53 @@
package com.xunqi.gulimall.ware.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
*
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Data
@TableName("wms_purchase_detail")
public class PurchaseDetailEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId
private Long id;
/**
* 采购单id
*/
private Long purchaseId;
/**
* 采购商品id
*/
private Long skuId;
/**
* 采购数量
*/
private Integer skuNum;
/**
* 采购金额
*/
private BigDecimal skuPrice;
/**
* 仓库id
*/
private Long wareId;
/**
* 状态[0新建1已分配2正在采购3已完成4采购失败]
*/
private Integer status;
}

View File

@ -0,0 +1,65 @@
package com.xunqi.gulimall.ware.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 采购信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Data
@TableName("wms_purchase")
public class PurchaseEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 采购单id
*/
@TableId
private Long id;
/**
* 采购人id
*/
private Long assigneeId;
/**
* 采购人名
*/
private String assigneeName;
/**
* 联系方式
*/
private String phone;
/**
* 优先级
*/
private Integer priority;
/**
* 状态
*/
private Integer status;
/**
* 仓库id
*/
private Long wareId;
/**
* 总金额
*/
private BigDecimal amount;
/**
* 创建日期
*/
private Date createTime;
/**
* 更新日期
*/
private Date updateTime;
}

View File

@ -0,0 +1,40 @@
package com.xunqi.gulimall.ware.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 仓库信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Data
@TableName("wms_ware_info")
public class WareInfoEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Long id;
/**
* 仓库名
*/
private String name;
/**
* 仓库地址
*/
private String address;
/**
* 区域编码
*/
private String areacode;
}

View File

@ -0,0 +1,44 @@
package com.xunqi.gulimall.ware.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Data
@TableName("wms_ware_order_task_detail")
public class WareOrderTaskDetailEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Long id;
/**
* sku_id
*/
private Long skuId;
/**
* sku_name
*/
private String skuName;
/**
* 购买个数
*/
private Integer skuNum;
/**
* 工作单id
*/
private Long taskId;
}

View File

@ -0,0 +1,80 @@
package com.xunqi.gulimall.ware.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Data
@TableName("wms_ware_order_task")
public class WareOrderTaskEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Long id;
/**
* order_id
*/
private Long orderId;
/**
* order_sn
*/
private String orderSn;
/**
* 收货人
*/
private String consignee;
/**
* 收货人电话
*/
private String consigneeTel;
/**
* 配送地址
*/
private String deliveryAddress;
/**
* 订单备注
*/
private String orderComment;
/**
* 付款方式 1:在线付款 2:货到付款
*/
private Integer paymentWay;
/**
* 任务状态
*/
private Integer taskStatus;
/**
* 订单描述
*/
private String orderBody;
/**
* 物流单号
*/
private String trackingNo;
/**
* create_time
*/
private Date createTime;
/**
* 仓库id
*/
private Long wareId;
/**
* 工作单备注
*/
private String taskComment;
}

View File

@ -0,0 +1,48 @@
package com.xunqi.gulimall.ware.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* 商品库存
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
@Data
@TableName("wms_ware_sku")
public class WareSkuEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId
private Long id;
/**
* sku_id
*/
private Long skuId;
/**
* 仓库id
*/
private Long wareId;
/**
* 库存数
*/
private Integer stock;
/**
* sku_name
*/
private String skuName;
/**
* 锁定库存
*/
private Integer stockLocked;
}

View File

@ -0,0 +1,20 @@
package com.xunqi.gulimall.ware.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.gulimall.ware.entity.PurchaseDetailEntity;
import java.util.Map;
/**
*
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
public interface PurchaseDetailService extends IService<PurchaseDetailEntity> {
PageUtils queryPage(Map<String, Object> params);
}

View File

@ -0,0 +1,20 @@
package com.xunqi.gulimall.ware.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.gulimall.ware.entity.PurchaseEntity;
import java.util.Map;
/**
* 采购信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
public interface PurchaseService extends IService<PurchaseEntity> {
PageUtils queryPage(Map<String, Object> params);
}

View File

@ -0,0 +1,20 @@
package com.xunqi.gulimall.ware.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.gulimall.ware.entity.WareInfoEntity;
import java.util.Map;
/**
* 仓库信息
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
public interface WareInfoService extends IService<WareInfoEntity> {
PageUtils queryPage(Map<String, Object> params);
}

View File

@ -0,0 +1,20 @@
package com.xunqi.gulimall.ware.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.gulimall.ware.entity.WareOrderTaskDetailEntity;
import java.util.Map;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
public interface WareOrderTaskDetailService extends IService<WareOrderTaskDetailEntity> {
PageUtils queryPage(Map<String, Object> params);
}

View File

@ -0,0 +1,20 @@
package com.xunqi.gulimall.ware.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.gulimall.ware.entity.WareOrderTaskEntity;
import java.util.Map;
/**
* 库存工作单
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
public interface WareOrderTaskService extends IService<WareOrderTaskEntity> {
PageUtils queryPage(Map<String, Object> params);
}

View File

@ -0,0 +1,20 @@
package com.xunqi.gulimall.ware.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.gulimall.ware.entity.WareSkuEntity;
import java.util.Map;
/**
* 商品库存
*
* @author Bunny
* @email Bunny@gmail.com
* @date 2025-06-24 21:24:09
*/
public interface WareSkuService extends IService<WareSkuEntity> {
PageUtils queryPage(Map<String, Object> params);
}

View File

@ -0,0 +1,29 @@
package com.xunqi.gulimall.ware.service.impl;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.Query;
import com.xunqi.gulimall.ware.dao.PurchaseDetailDao;
import com.xunqi.gulimall.ware.entity.PurchaseDetailEntity;
import com.xunqi.gulimall.ware.service.PurchaseDetailService;
@Service("purchaseDetailService")
public class PurchaseDetailServiceImpl extends ServiceImpl<PurchaseDetailDao, PurchaseDetailEntity> implements PurchaseDetailService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
IPage<PurchaseDetailEntity> page = this.page(
new Query<PurchaseDetailEntity>().getPage(params),
new QueryWrapper<PurchaseDetailEntity>()
);
return new PageUtils(page);
}
}

View File

@ -0,0 +1,29 @@
package com.xunqi.gulimall.ware.service.impl;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.Query;
import com.xunqi.gulimall.ware.dao.PurchaseDao;
import com.xunqi.gulimall.ware.entity.PurchaseEntity;
import com.xunqi.gulimall.ware.service.PurchaseService;
@Service("purchaseService")
public class PurchaseServiceImpl extends ServiceImpl<PurchaseDao, PurchaseEntity> implements PurchaseService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
IPage<PurchaseEntity> page = this.page(
new Query<PurchaseEntity>().getPage(params),
new QueryWrapper<PurchaseEntity>()
);
return new PageUtils(page);
}
}

View File

@ -0,0 +1,29 @@
package com.xunqi.gulimall.ware.service.impl;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.Query;
import com.xunqi.gulimall.ware.dao.WareInfoDao;
import com.xunqi.gulimall.ware.entity.WareInfoEntity;
import com.xunqi.gulimall.ware.service.WareInfoService;
@Service("wareInfoService")
public class WareInfoServiceImpl extends ServiceImpl<WareInfoDao, WareInfoEntity> implements WareInfoService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
IPage<WareInfoEntity> page = this.page(
new Query<WareInfoEntity>().getPage(params),
new QueryWrapper<WareInfoEntity>()
);
return new PageUtils(page);
}
}

View File

@ -0,0 +1,29 @@
package com.xunqi.gulimall.ware.service.impl;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.Query;
import com.xunqi.gulimall.ware.dao.WareOrderTaskDetailDao;
import com.xunqi.gulimall.ware.entity.WareOrderTaskDetailEntity;
import com.xunqi.gulimall.ware.service.WareOrderTaskDetailService;
@Service("wareOrderTaskDetailService")
public class WareOrderTaskDetailServiceImpl extends ServiceImpl<WareOrderTaskDetailDao, WareOrderTaskDetailEntity> implements WareOrderTaskDetailService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
IPage<WareOrderTaskDetailEntity> page = this.page(
new Query<WareOrderTaskDetailEntity>().getPage(params),
new QueryWrapper<WareOrderTaskDetailEntity>()
);
return new PageUtils(page);
}
}

View File

@ -0,0 +1,29 @@
package com.xunqi.gulimall.ware.service.impl;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.Query;
import com.xunqi.gulimall.ware.dao.WareOrderTaskDao;
import com.xunqi.gulimall.ware.entity.WareOrderTaskEntity;
import com.xunqi.gulimall.ware.service.WareOrderTaskService;
@Service("wareOrderTaskService")
public class WareOrderTaskServiceImpl extends ServiceImpl<WareOrderTaskDao, WareOrderTaskEntity> implements WareOrderTaskService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
IPage<WareOrderTaskEntity> page = this.page(
new Query<WareOrderTaskEntity>().getPage(params),
new QueryWrapper<WareOrderTaskEntity>()
);
return new PageUtils(page);
}
}

View File

@ -0,0 +1,29 @@
package com.xunqi.gulimall.ware.service.impl;
import org.springframework.stereotype.Service;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xunqi.common.utils.PageUtils;
import com.xunqi.common.utils.Query;
import com.xunqi.gulimall.ware.dao.WareSkuDao;
import com.xunqi.gulimall.ware.entity.WareSkuEntity;
import com.xunqi.gulimall.ware.service.WareSkuService;
@Service("wareSkuService")
public class WareSkuServiceImpl extends ServiceImpl<WareSkuDao, WareSkuEntity> implements WareSkuService {
@Override
public PageUtils queryPage(Map<String, Object> params) {
IPage<WareSkuEntity> page = this.page(
new Query<WareSkuEntity>().getPage(params),
new QueryWrapper<WareSkuEntity>()
);
return new PageUtils(page);
}
}

View File

@ -0,0 +1,47 @@
server:
port: 7000
spring:
application:
name: gulimall-ware
datasource:
username: root
password: "123456"
url: jdbc:mysql://192.168.95.40:3306/gulimall_wms?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai
driver-class-name: com.mysql.cj.jdbc.Driver
# cloud:
# nacos:
# discovery:
# server-addr: localhost:8848
#
# sentinel:
# transport:
# #配置sentinel dashboard地址
# dashboard: localhost:8080
#
# #开启feign对sentinel的支持
# feign:
# sentinel:
# enabled: true
#
# jackson:
# date-format: yyyy-MM-dd HH:mm:ss
mybatis-plus:
mapper-locations: classpath:/mapper/**/*.xml
#\u8BBE\u7F6E\u5B9E\u4F53\u7C7B\u7684\u81EA\u589E\u4E3B\u952E
global-config:
db-config:
id-type: auto
logging:
level:
com.xunqi.gulimall: debug
# #暴露所有端点
# management:
# endpoints:
# web:
# exposure:
# include: '*'

View File

@ -0,0 +1,21 @@
<?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.xunqi.gulimall.ware.dao.PurchaseDao">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xunqi.gulimall.ware.entity.PurchaseEntity" id="purchaseMap">
<result property="id" column="id"/>
<result property="assigneeId" column="assignee_id"/>
<result property="assigneeName" column="assignee_name"/>
<result property="phone" column="phone"/>
<result property="priority" column="priority"/>
<result property="status" column="status"/>
<result property="wareId" column="ware_id"/>
<result property="amount" column="amount"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
</resultMap>
</mapper>

View File

@ -0,0 +1,18 @@
<?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.xunqi.gulimall.ware.dao.PurchaseDetailDao">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xunqi.gulimall.ware.entity.PurchaseDetailEntity" id="purchaseDetailMap">
<result property="id" column="id"/>
<result property="purchaseId" column="purchase_id"/>
<result property="skuId" column="sku_id"/>
<result property="skuNum" column="sku_num"/>
<result property="skuPrice" column="sku_price"/>
<result property="wareId" column="ware_id"/>
<result property="status" column="status"/>
</resultMap>
</mapper>

View File

@ -0,0 +1,15 @@
<?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.xunqi.gulimall.ware.dao.WareInfoDao">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xunqi.gulimall.ware.entity.WareInfoEntity" id="wareInfoMap">
<result property="id" column="id"/>
<result property="name" column="name"/>
<result property="address" column="address"/>
<result property="areacode" column="areacode"/>
</resultMap>
</mapper>

View File

@ -0,0 +1,25 @@
<?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.xunqi.gulimall.ware.dao.WareOrderTaskDao">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xunqi.gulimall.ware.entity.WareOrderTaskEntity" id="wareOrderTaskMap">
<result property="id" column="id"/>
<result property="orderId" column="order_id"/>
<result property="orderSn" column="order_sn"/>
<result property="consignee" column="consignee"/>
<result property="consigneeTel" column="consignee_tel"/>
<result property="deliveryAddress" column="delivery_address"/>
<result property="orderComment" column="order_comment"/>
<result property="paymentWay" column="payment_way"/>
<result property="taskStatus" column="task_status"/>
<result property="orderBody" column="order_body"/>
<result property="trackingNo" column="tracking_no"/>
<result property="createTime" column="create_time"/>
<result property="wareId" column="ware_id"/>
<result property="taskComment" column="task_comment"/>
</resultMap>
</mapper>

View File

@ -0,0 +1,16 @@
<?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.xunqi.gulimall.ware.dao.WareOrderTaskDetailDao">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xunqi.gulimall.ware.entity.WareOrderTaskDetailEntity" id="wareOrderTaskDetailMap">
<result property="id" column="id"/>
<result property="skuId" column="sku_id"/>
<result property="skuName" column="sku_name"/>
<result property="skuNum" column="sku_num"/>
<result property="taskId" column="task_id"/>
</resultMap>
</mapper>

View File

@ -0,0 +1,17 @@
<?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.xunqi.gulimall.ware.dao.WareSkuDao">
<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.xunqi.gulimall.ware.entity.WareSkuEntity" id="wareSkuMap">
<result property="id" column="id"/>
<result property="skuId" column="sku_id"/>
<result property="wareId" column="ware_id"/>
<result property="stock" column="stock"/>
<result property="skuName" column="sku_name"/>
<result property="stockLocked" column="stock_locked"/>
</resultMap>
</mapper>

View File

@ -7,7 +7,7 @@ spring:
type: com.alibaba.druid.pool.DruidDataSource
# MySQL配置
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://192.168.95.40:3306/gulimall_oms?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8&allowPublicKeyRetrieval=true
url: jdbc:mysql://192.168.95.40:3306/gulimall_wms?serverTimezone=GMT%2B8&useSSL=false&characterEncoding=utf-8&allowPublicKeyRetrieval=true
username: root
password: "123456"
# oracle配置

View File

@ -2,13 +2,13 @@
mainPath=com.xunqi
#\u5305\u540D
package=com.xunqi.gulimall
moduleName=order
moduleName=ware
#\u4F5C\u8005
author=Bunny
#Email
email=Bunny@gmail.com
#\u8868\u524D\u7F00(\u7C7B\u540D\u4E0D\u4F1A\u5305\u542B\u8868\u524D\u7F00)
tablePrefix=oms_
tablePrefix=wms_
#\u7C7B\u578B\u8F6C\u6362\uFF0C\u914D\u7F6E\u4FE1\u606F
tinyint=Integer
smallint=Integer