
145 changed files with 21536 additions and 0 deletions
@ -0,0 +1,36 @@ |
|||||
|
# 仓储系统 |
||||
|
|
||||
|
#### Description |
||||
|
简单的仓储系统,出库入库订单供应商商品库存。 |
||||
|
|
||||
|
#### Software Architecture |
||||
|
Software architecture description |
||||
|
|
||||
|
#### Installation |
||||
|
|
||||
|
1. xxxx |
||||
|
2. xxxx |
||||
|
3. xxxx |
||||
|
|
||||
|
#### Instructions |
||||
|
|
||||
|
1. xxxx |
||||
|
2. xxxx |
||||
|
3. xxxx |
||||
|
|
||||
|
#### Contribution |
||||
|
|
||||
|
1. Fork the repository |
||||
|
2. Create Feat_xxx branch |
||||
|
3. Commit your code |
||||
|
4. Create Pull Request |
||||
|
|
||||
|
|
||||
|
#### Gitee Feature |
||||
|
|
||||
|
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md |
||||
|
2. Gitee blog [blog.gitee.com](https://blog.gitee.com) |
||||
|
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) |
||||
|
4. The most valuable open source project [GVP](https://gitee.com/gvp) |
||||
|
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) |
||||
|
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) |
@ -0,0 +1,37 @@ |
|||||
|
# 仓储系统 |
||||
|
|
||||
|
#### 介绍 |
||||
|
简单的仓储系统,出库入库订单供应商商品库存。 |
||||
|
|
||||
|
#### 软件架构 |
||||
|
软件架构说明 |
||||
|
|
||||
|
|
||||
|
#### 安装教程 |
||||
|
|
||||
|
1. xxxx |
||||
|
2. xxxx |
||||
|
3. xxxx |
||||
|
|
||||
|
#### 使用说明 |
||||
|
|
||||
|
1. xxxx |
||||
|
2. xxxx |
||||
|
3. xxxx |
||||
|
|
||||
|
#### 参与贡献 |
||||
|
|
||||
|
1. Fork 本仓库 |
||||
|
2. 新建 Feat_xxx 分支 |
||||
|
3. 提交代码 |
||||
|
4. 新建 Pull Request |
||||
|
|
||||
|
|
||||
|
#### 特技 |
||||
|
|
||||
|
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md |
||||
|
2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) |
||||
|
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 |
||||
|
4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 |
||||
|
5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) |
||||
|
6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) |
@ -0,0 +1,97 @@ |
|||||
|
<?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" |
||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
||||
|
<modelVersion>4.0.0</modelVersion> |
||||
|
<groupId>com.wh</groupId> |
||||
|
<artifactId>wh</artifactId> |
||||
|
<version>1.0-SNAPSHOT</version> |
||||
|
<modules> |
||||
|
<module>wh-common</module> |
||||
|
<module>wh-manage</module> |
||||
|
</modules> |
||||
|
<!--指定打包方式 jar/war/pom聚合工程 --> |
||||
|
<packaging>pom</packaging> |
||||
|
|
||||
|
<!--引入父级工程--> |
||||
|
<parent> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-parent</artifactId> |
||||
|
<version>2.4.5</version> |
||||
|
<relativePath/> |
||||
|
</parent> |
||||
|
|
||||
|
|
||||
|
<properties> |
||||
|
<java.version>1.8</java.version> |
||||
|
<!--跳过测试类打包--> |
||||
|
<skipTests>true</skipTests> |
||||
|
</properties> |
||||
|
|
||||
|
<dependencies> |
||||
|
<!--SpringMVCjar包文件--> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-web</artifactId> |
||||
|
</dependency> |
||||
|
|
||||
|
<!-- 引入aop支持 --> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-aop</artifactId> |
||||
|
</dependency> |
||||
|
|
||||
|
<!--热部署工具--> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-devtools</artifactId> |
||||
|
<scope>runtime</scope> |
||||
|
<optional>true</optional> |
||||
|
</dependency> |
||||
|
<!--lombok插件--> |
||||
|
<dependency> |
||||
|
<groupId>org.projectlombok</groupId> |
||||
|
<artifactId>lombok</artifactId> |
||||
|
<optional>true</optional> |
||||
|
</dependency> |
||||
|
|
||||
|
<!--测试包--> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-test</artifactId> |
||||
|
<scope>test</scope> |
||||
|
</dependency> |
||||
|
|
||||
|
<!--引入jdbc包--> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-starter-jdbc</artifactId> |
||||
|
</dependency> |
||||
|
|
||||
|
<!--引入数据库驱动 --> |
||||
|
<dependency> |
||||
|
<groupId>mysql</groupId> |
||||
|
<artifactId>mysql-connector-java</artifactId> |
||||
|
<scope>runtime</scope> |
||||
|
</dependency> |
||||
|
|
||||
|
<!--spring整合mybatis-plus --> |
||||
|
<dependency> |
||||
|
<groupId>com.baomidou</groupId> |
||||
|
<artifactId>mybatis-plus-boot-starter</artifactId> |
||||
|
<version>3.4.2</version> |
||||
|
</dependency> |
||||
|
|
||||
|
<!--spring整合redis --> |
||||
|
<dependency> |
||||
|
<groupId>redis.clients</groupId> |
||||
|
<artifactId>jedis</artifactId> |
||||
|
</dependency> |
||||
|
<dependency> |
||||
|
<groupId>org.springframework.data</groupId> |
||||
|
<artifactId>spring-data-redis</artifactId> |
||||
|
</dependency> |
||||
|
</dependencies> |
||||
|
|
||||
|
<!--父级工程是一种结构 没有java代码 不需要执行运行,所以不需要build标签--> |
||||
|
</project> |
@ -0,0 +1,16 @@ |
|||||
|
<?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" |
||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
||||
|
<parent> |
||||
|
<artifactId>wh</artifactId> |
||||
|
<groupId>com.wh</groupId> |
||||
|
<version>1.0-SNAPSHOT</version> |
||||
|
</parent> |
||||
|
<modelVersion>4.0.0</modelVersion> |
||||
|
|
||||
|
<groupId>com.wh</groupId> |
||||
|
<artifactId>wh-common</artifactId> |
||||
|
|
||||
|
|
||||
|
</project> |
@ -0,0 +1,13 @@ |
|||||
|
package com.wh.api; |
||||
|
|
||||
|
import java.text.SimpleDateFormat; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
public class Api { |
||||
|
|
||||
|
public String getTime(){ |
||||
|
Date dNow = new Date( ); |
||||
|
SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss"); |
||||
|
return ft.format(dNow); |
||||
|
} |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.FieldFill; |
||||
|
import com.baomidou.mybatisplus.annotation.TableField; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.Date; |
||||
|
|
||||
|
//pojo基类,完成2个任务,2个日期,实现序列化
|
||||
|
@Data |
||||
|
@Accessors(chain=true) |
||||
|
public class BasePojo implements Serializable{ |
||||
|
@TableField(fill = FieldFill.INSERT) |
||||
|
private Date created; //表示入库时需要赋值
|
||||
|
@TableField(fill = FieldFill.INSERT_UPDATE) |
||||
|
private Date updated; //表示入库/更新时赋值.
|
||||
|
} |
@ -0,0 +1,22 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("in_storehouse") |
||||
|
public class InStorehouse { |
||||
|
@TableId("in_storehouse_id") |
||||
|
private String inStorehouseId; //入库单号
|
||||
|
private String receivingId; //接货单号
|
||||
|
private String locationId; //货位编码
|
||||
|
private String createPerson; //创建者
|
||||
|
private String createTime; //创建时间
|
||||
|
private String checkPerson; //审批人id
|
||||
|
private String checkTime; //审批时间
|
||||
|
private String status; //状态
|
||||
|
private String remarks; //备注
|
||||
|
} |
@ -0,0 +1,18 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("location") |
||||
|
public class Location { |
||||
|
private String name; //货位名称
|
||||
|
@TableId("location_id") |
||||
|
private String locationId; //货位编号
|
||||
|
private String type; //货位类型
|
||||
|
private String status; //货位状态
|
||||
|
private String storehouse; //所属仓库
|
||||
|
} |
@ -0,0 +1,13 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("location_type") |
||||
|
public class LocationType { |
||||
|
private Integer id; //类型序号
|
||||
|
private String type; //类型
|
||||
|
} |
@ -0,0 +1,29 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.ToString; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("on_shelves") |
||||
|
@ToString |
||||
|
public class OnShelves { |
||||
|
@TableId("shelves_id") |
||||
|
private String shelvesId; //上架单号
|
||||
|
private String barCode; //商品编码
|
||||
|
private String productName; //商品名称
|
||||
|
private String locationId; //货位编号
|
||||
|
private String locationName; //货位名称
|
||||
|
private String fromLocationId; //源货位编号
|
||||
|
private String fromLocationName; //源货位名称
|
||||
|
private Integer count; //数量
|
||||
|
private String status; //状态
|
||||
|
private String createPerson; //创建人
|
||||
|
private String createTime; //创建时间
|
||||
|
private String checkPerson; //审核人
|
||||
|
private String checkTime; //审核时间
|
||||
|
|
||||
|
} |
@ -0,0 +1,29 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("out_storehouse") |
||||
|
public class OutStorehouse { |
||||
|
@TableId("out_storehouse_id") |
||||
|
private String outStorehouseId; //出库单号
|
||||
|
private String pickingId; //拣货单号
|
||||
|
private String barCode; //商品条码
|
||||
|
private String productName; //商品名
|
||||
|
private Integer count; //数量
|
||||
|
private String locationId; //货位id
|
||||
|
private String status; //状态
|
||||
|
private String receivePerson; //收件人
|
||||
|
private String addr; //地址
|
||||
|
private String outTime; //出库时间
|
||||
|
private String createPerson; //创建人
|
||||
|
private String createTime; //创建时间
|
||||
|
private String checkPerson; //审核人
|
||||
|
private String checkTime; //审核时间
|
||||
|
|
||||
|
} |
@ -0,0 +1,22 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("picking") |
||||
|
public class Picking { |
||||
|
@TableId("picking_id") |
||||
|
private String pickingId; //拣货单号
|
||||
|
private String outStorehouseId; //出库单号
|
||||
|
private String status; //状态
|
||||
|
private String recipientPerson; //领取人
|
||||
|
private String recipientTime; //领取时间
|
||||
|
private String createPerson; //创建人
|
||||
|
private String createTime; //创建时间
|
||||
|
} |
@ -0,0 +1,24 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.ToString; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@TableName("product") |
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@ToString |
||||
|
public class Product { |
||||
|
@TableId("bar_code") |
||||
|
private String barCode; //条码
|
||||
|
private String name; //商品名
|
||||
|
private String anotherName; //别名
|
||||
|
private Double value; //价值
|
||||
|
private Double netWeight; //净重
|
||||
|
private Double roughWeight; //毛重
|
||||
|
private Integer effectiveDays; //有效天数
|
||||
|
private String warehouse; //所属仓库
|
||||
|
private String remarks; //备注
|
||||
|
} |
@ -0,0 +1,25 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.ToString; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("purchase") |
||||
|
@ToString |
||||
|
public class Purchase { |
||||
|
@TableId("purchase_id") |
||||
|
private String purchaseId; //订单编号
|
||||
|
private String product; //商品
|
||||
|
private String barCode; //条码
|
||||
|
private String supplier; //供应商名称
|
||||
|
private Integer count; //数量
|
||||
|
private String storehouse; //仓库名称
|
||||
|
private String status; //状态
|
||||
|
|
||||
|
} |
@ -0,0 +1,25 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableField; |
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("receiving") |
||||
|
public class Receiving { |
||||
|
@TableId("receiving_id") |
||||
|
private String receivingId; //接货单编号
|
||||
|
private String purchaseId; //采购单编号
|
||||
|
private String removeId; //调拨编号
|
||||
|
private String remarks; //备注
|
||||
|
private String receivingPerson; //接货人id
|
||||
|
private String receivingTime; //接货时间
|
||||
|
private String checkPerson; //审批人id
|
||||
|
private String checkTime; //审批时间
|
||||
|
private String status; //状态
|
||||
|
} |
@ -0,0 +1,28 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.IdType; |
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("remove") |
||||
|
public class Remove { |
||||
|
@TableId |
||||
|
private String removeId; //序号
|
||||
|
private String barCode; //商品编码
|
||||
|
private String productName; //商品名称
|
||||
|
private String locationId; //货位编号
|
||||
|
private String fromLocationId; //源货位编号
|
||||
|
private Integer count; //数量
|
||||
|
private String status; //状态
|
||||
|
private String createPerson; //创建人
|
||||
|
private String createTime; //创建时间
|
||||
|
private String checkPerson; //审核人
|
||||
|
private String checkTime; //审核时间
|
||||
|
|
||||
|
} |
@ -0,0 +1,23 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableField; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.wh.pojo.BasePojo; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@TableName("rights") |
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
public class Rights extends BasePojo { |
||||
|
private Integer id; //序号
|
||||
|
private String name; //选项名
|
||||
|
private Integer parentId; //父id
|
||||
|
private String path; //url路径
|
||||
|
private Integer level; //选项等级
|
||||
|
@TableField(exist = false) |
||||
|
private List<Rights> children; //不是表格固有属性
|
||||
|
} |
||||
|
|
@ -0,0 +1,20 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
public class Stock { |
||||
|
private String inStorehouseId; |
||||
|
@TableId("location_id") |
||||
|
private String locationId; |
||||
|
private String locationName; |
||||
|
private String barCode; |
||||
|
private String productName; |
||||
|
private Integer totalQuantity; |
||||
|
private Integer availableQuantity; |
||||
|
private Integer lockedQuantity; |
||||
|
private String status; |
||||
|
} |
@ -0,0 +1,17 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("storehouse") |
||||
|
public class Storehouse { |
||||
|
@TableId("name") |
||||
|
private String name; //仓库名称
|
||||
|
private String simpleName; //仓库简称
|
||||
|
private String addr; //仓库地址
|
||||
|
private String remarks; //备注
|
||||
|
} |
@ -0,0 +1,17 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("supplier") |
||||
|
public class Supplier { |
||||
|
@TableId("name") |
||||
|
private String name; //供应商名称
|
||||
|
private String contacts; //联系人
|
||||
|
private String number; //电话
|
||||
|
private String remarks; //备注
|
||||
|
} |
@ -0,0 +1,20 @@ |
|||||
|
package com.wh.pojo; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableId; |
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@TableName("user") |
||||
|
public class User { |
||||
|
@TableId("id") |
||||
|
private String id; |
||||
|
private String username; |
||||
|
private String password; |
||||
|
private String phone; |
||||
|
private String email; |
||||
|
private String status; |
||||
|
} |
@ -0,0 +1,13 @@ |
|||||
|
package com.wh.vo; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
import java.util.List; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
public class Options { |
||||
|
private String value; |
||||
|
private String label; |
||||
|
private List<Options> children; |
||||
|
} |
@ -0,0 +1,14 @@ |
|||||
|
package com.wh.vo; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
public class PageResult { |
||||
|
private String query; |
||||
|
private Integer pageNum; |
||||
|
private Integer pageSize; |
||||
|
private Long total; |
||||
|
private Object rows; |
||||
|
} |
@ -0,0 +1,11 @@ |
|||||
|
package com.wh.vo; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
public class PickingUser { |
||||
|
private String outStorehouseId; |
||||
|
private String user; |
||||
|
} |
@ -0,0 +1,13 @@ |
|||||
|
package com.wh.vo; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
public class QueryInfo { |
||||
|
private String barCode; |
||||
|
private String locationId; |
||||
|
private String fromLocationId; |
||||
|
private Integer count; |
||||
|
} |
@ -0,0 +1,43 @@ |
|||||
|
package com.wh.vo; |
||||
|
|
||||
|
import lombok.AllArgsConstructor; |
||||
|
import lombok.Data; |
||||
|
import lombok.NoArgsConstructor; |
||||
|
import lombok.experimental.Accessors; |
||||
|
|
||||
|
@Data |
||||
|
@Accessors(chain = true) |
||||
|
@NoArgsConstructor |
||||
|
@AllArgsConstructor |
||||
|
public class SysResult { |
||||
|
|
||||
|
private Integer status; //状态码信息 200成功 201失败
|
||||
|
private String msg; //服务器提示信息
|
||||
|
private Object data; //服务器返回值
|
||||
|
|
||||
|
public static SysResult fail(){ |
||||
|
return new com.wh.vo.SysResult(201,"服务器运行失败",null); |
||||
|
} |
||||
|
|
||||
|
public static com.wh.vo.SysResult success(){ |
||||
|
return new com.wh.vo.SysResult(200, "服务器运行成功", null); |
||||
|
} |
||||
|
|
||||
|
public static SysResult noAccess(){ |
||||
|
return new SysResult(202,"无访问权限",null); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
public static SysResult notEnough(){ |
||||
|
return new SysResult(203,"数量不足",null); |
||||
|
} |
||||
|
|
||||
|
public static com.wh.vo.SysResult success(Object data){ |
||||
|
|
||||
|
return new com.wh.vo.SysResult(200, "服务器运行成功", data); |
||||
|
} |
||||
|
|
||||
|
public static com.wh.vo.SysResult success(String msg, Object data){ |
||||
|
return new com.wh.vo.SysResult(200, msg, data); |
||||
|
} |
||||
|
} |
@ -0,0 +1,6 @@ |
|||||
|
public class Test { |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,47 @@ |
|||||
|
<?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" |
||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
||||
|
<parent> |
||||
|
<artifactId>wh</artifactId> |
||||
|
<groupId>com.wh</groupId> |
||||
|
<version>1.0-SNAPSHOT</version> |
||||
|
</parent> |
||||
|
<modelVersion>4.0.0</modelVersion> |
||||
|
|
||||
|
<artifactId>wh-manage</artifactId> |
||||
|
|
||||
|
<!-- 依赖工具API--> |
||||
|
<dependencies> |
||||
|
<dependency> |
||||
|
<groupId>com.wh</groupId> |
||||
|
<artifactId>wh-common</artifactId> |
||||
|
<version>1.0-SNAPSHOT</version> |
||||
|
</dependency> |
||||
|
<dependency> |
||||
|
<groupId>org.jetbrains</groupId> |
||||
|
<artifactId>annotations</artifactId> |
||||
|
<version>21.0.1</version> |
||||
|
<scope>compile</scope> |
||||
|
</dependency> |
||||
|
</dependencies> |
||||
|
|
||||
|
<!--添加build标签--> |
||||
|
<build> |
||||
|
<plugins> |
||||
|
<plugin> |
||||
|
<groupId>org.springframework.boot</groupId> |
||||
|
<artifactId>spring-boot-maven-plugin</artifactId> |
||||
|
<configuration> |
||||
|
<excludes> |
||||
|
<exclude> |
||||
|
<groupId>org.projectlombok</groupId> |
||||
|
<artifactId>lombok</artifactId> |
||||
|
</exclude> |
||||
|
</excludes> |
||||
|
</configuration> |
||||
|
</plugin> |
||||
|
</plugins> |
||||
|
</build> |
||||
|
|
||||
|
</project> |
@ -0,0 +1,14 @@ |
|||||
|
package com.wh; |
||||
|
|
||||
|
import org.mybatis.spring.annotation.MapperScan; |
||||
|
import org.springframework.boot.SpringApplication; |
||||
|
import org.springframework.boot.autoconfigure.SpringBootApplication; |
||||
|
|
||||
|
|
||||
|
@SpringBootApplication |
||||
|
@MapperScan("com.wh.mapper") |
||||
|
public class WarehouseApplication { |
||||
|
public static void main(String[] args) { |
||||
|
SpringApplication.run(WarehouseApplication.class,args); |
||||
|
} |
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
package com.wh.aop; |
||||
|
|
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.web.bind.annotation.ExceptionHandler; |
||||
|
import org.springframework.web.bind.annotation.RestControllerAdvice; |
||||
|
|
||||
|
@RestControllerAdvice |
||||
|
public class AOPException { |
||||
|
|
||||
|
@ExceptionHandler({RuntimeException.class}) |
||||
|
public Object Exception(){ |
||||
|
return SysResult.fail(); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,16 @@ |
|||||
|
package com.wh.config; |
||||
|
import com.wh.controller.UserInterceptor; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.context.annotation.Configuration; |
||||
|
import org.springframework.web.servlet.config.annotation.InterceptorRegistry; |
||||
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; |
||||
|
@Configuration |
||||
|
public class MyInterceptor implements WebMvcConfigurer { |
||||
|
// @Autowired
|
||||
|
// private UserInterceptor userInterceptor;
|
||||
|
|
||||
|
@Override |
||||
|
public void addInterceptors(InterceptorRegistry registry) { |
||||
|
// registry.addInterceptor(userInterceptor);
|
||||
|
} |
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
package com.wh.controller; |
||||
|
|
||||
|
import com.wh.pojo.Rights; |
||||
|
import com.wh.service.RightsService; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.CrossOrigin; |
||||
|
import org.springframework.web.bind.annotation.GetMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/rights") |
||||
|
public class RightsController { |
||||
|
|
||||
|
@Autowired |
||||
|
private RightsService rightsService; |
||||
|
|
||||
|
/** |
||||
|
* URL: /rights/getRightsList |
||||
|
* 参数: null |
||||
|
* 类型: get |
||||
|
* 返回值: SysResult对象 List |
||||
|
* 业务: 只查询前 2级权限 |
||||
|
*/ |
||||
|
@GetMapping("/getRightsList") |
||||
|
public SysResult getRightsList(){ |
||||
|
List<Rights> rightsList = |
||||
|
rightsService.findRightsList(); |
||||
|
return SysResult.success(rightsList); |
||||
|
} |
||||
|
} |
@ -0,0 +1,26 @@ |
|||||
|
package com.wh.controller; |
||||
|
|
||||
|
import com.wh.pojo.User; |
||||
|
import com.wh.service.UserService; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/user/") |
||||
|
public class UserController { |
||||
|
|
||||
|
@Autowired |
||||
|
private UserService userService; |
||||
|
@PostMapping("login") |
||||
|
public SysResult login(@RequestBody User user){ |
||||
|
String token = userService.findUserByUP(user); |
||||
|
if (StringUtils.hasLength(token)){ |
||||
|
return SysResult.success(token); |
||||
|
}else { |
||||
|
return SysResult.fail(); |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,33 @@ |
|||||
|
package com.wh.controller; |
||||
|
|
||||
|
import org.springframework.stereotype.Component; |
||||
|
import org.springframework.web.servlet.HandlerInterceptor; |
||||
|
import org.springframework.web.servlet.ModelAndView; |
||||
|
|
||||
|
import javax.servlet.http.HttpServletRequest; |
||||
|
import javax.servlet.http.HttpServletResponse; |
||||
|
|
||||
|
@Component |
||||
|
public class UserInterceptor implements HandlerInterceptor { |
||||
|
long start; |
||||
|
long end ; |
||||
|
@Override |
||||
|
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { |
||||
|
System.out.println("拦截器拦截成功"); |
||||
|
start = System.currentTimeMillis(); |
||||
|
return true; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { |
||||
|
end = System.currentTimeMillis(); |
||||
|
System.out.println("拦截结束"); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { |
||||
|
System.out.println("释放资源"+(end-start)+"ms"); |
||||
|
|
||||
|
} |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
package com.wh.controller.initial; |
||||
|
|
||||
|
import com.wh.pojo.Location; |
||||
|
import com.wh.pojo.LocationType; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.service.initial.LocationService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/location/") |
||||
|
public class LocationController { |
||||
|
|
||||
|
@Autowired |
||||
|
private LocationService locationService; |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getLocationList(PageResult pageResult){ |
||||
|
pageResult = locationService.getLocationList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addLocation") |
||||
|
public SysResult addLocation(@RequestBody Location location){ |
||||
|
locationService.addLocation(location); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataLocation") |
||||
|
public SysResult updataLocation(@RequestBody Location location){ |
||||
|
locationService.updataLocation(location); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("delete/{name}") |
||||
|
public SysResult deleteLocation(@PathVariable String name){ |
||||
|
locationService.deleteLocation(name); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getStorehouse") |
||||
|
public SysResult getStorehouse(){ |
||||
|
List<Storehouse> storehouseList = locationService.getStorehouse(); |
||||
|
return SysResult.success(storehouseList); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getType") |
||||
|
public SysResult getType(){ |
||||
|
List<LocationType> locationTypeList = locationService.getType(); |
||||
|
return SysResult.success(locationTypeList); |
||||
|
} |
||||
|
} |
@ -0,0 +1,50 @@ |
|||||
|
package com.wh.controller.initial; |
||||
|
|
||||
|
import com.wh.pojo.Product; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.service.initial.ProductService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/product/") |
||||
|
public class ProductController { |
||||
|
@Autowired |
||||
|
private ProductService productService; |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getProductList(PageResult pageResult){ |
||||
|
pageResult = productService.getProductList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addProduct") |
||||
|
public SysResult addProduct(@RequestBody Product product){ |
||||
|
productService.addProduct(product); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataProduct") |
||||
|
public SysResult updataProduct(@RequestBody Product product){ |
||||
|
productService.updataProduct(product); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("delete/{barCode}") |
||||
|
public SysResult deleteProduct(@PathVariable String barCode){ |
||||
|
productService.deleteProduct(barCode); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getStorehouse") |
||||
|
public SysResult getStorehouse(){ |
||||
|
List<Storehouse> storehouses = productService.getStorehouse(); |
||||
|
return SysResult.success(storehouses); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,41 @@ |
|||||
|
package com.wh.controller.initial; |
||||
|
|
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.service.initial.StorehouseService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/storehouse/") |
||||
|
public class StorehouseController { |
||||
|
|
||||
|
@Autowired |
||||
|
private StorehouseService storehouseService; |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getStorehouseList(PageResult pageResult){ |
||||
|
pageResult = storehouseService.getStorehouseList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addStorehouse") |
||||
|
public SysResult addStorehouse(@RequestBody Storehouse storehouse){ |
||||
|
storehouseService.addStorehouse(storehouse); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataStorehouse") |
||||
|
public SysResult updataStorehouse(@RequestBody Storehouse storehouse){ |
||||
|
storehouseService.updataStorehouse(storehouse); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("delete/{name}") |
||||
|
public SysResult deleteStorehouse(@PathVariable String name) throws Exception { |
||||
|
storehouseService.deleteStorehouse(name); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,41 @@ |
|||||
|
package com.wh.controller.initial; |
||||
|
|
||||
|
import com.wh.pojo.Supplier; |
||||
|
import com.wh.service.initial.SupplierService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/supplier/") |
||||
|
public class SupplierController { |
||||
|
|
||||
|
@Autowired |
||||
|
private SupplierService supplierService; |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getSupplierList(PageResult pageResult){ |
||||
|
pageResult = supplierService.getSupplierList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addSupplier") |
||||
|
public SysResult addSupplier(@RequestBody Supplier supplier){ |
||||
|
supplierService.addSupplier(supplier); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataSupplier") |
||||
|
public SysResult updataSupplier(@RequestBody Supplier supplier){ |
||||
|
supplierService.updataSupplier(supplier); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("delete/{name}") |
||||
|
public SysResult deleteSupplier(@PathVariable String name){ |
||||
|
supplierService.deleteSupplier(name); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,70 @@ |
|||||
|
package com.wh.controller.instorehouse; |
||||
|
|
||||
|
|
||||
|
import com.wh.controller.initial.StorehouseController; |
||||
|
import com.wh.pojo.Product; |
||||
|
import com.wh.pojo.Purchase; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.pojo.Supplier; |
||||
|
import com.wh.service.instorehouse.PurchaseService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/purchase/") |
||||
|
public class PurchaseController { |
||||
|
|
||||
|
@Autowired |
||||
|
private PurchaseService purchaseService; |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getPurchaseList(PageResult pageResult){ |
||||
|
pageResult = purchaseService.getPurchaseList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addPurchase") |
||||
|
public SysResult addPurchase(@RequestBody Purchase purchase){ |
||||
|
purchaseService.addPurchase(purchase); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getProductList") |
||||
|
public SysResult getProductList(Product product){ |
||||
|
// String name = (String) map.get("name");
|
||||
|
// System.out.println(product.getName());
|
||||
|
// System.out.println(map.toString());
|
||||
|
List<Product> productList = purchaseService.getProductList(product.getName()); |
||||
|
return SysResult.success(productList); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getSupplier") |
||||
|
public SysResult getSupplier(){ |
||||
|
List<Supplier> supplierList = purchaseService.getSupplier(); |
||||
|
return SysResult.success(supplierList); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getStorehouse") |
||||
|
public SysResult getStorehouse(){ |
||||
|
List<Storehouse> storehouseList = purchaseService.getStorehouse(); |
||||
|
return SysResult.success(storehouseList); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("delete/{purchaseId}") |
||||
|
public SysResult deletePurchase(@PathVariable String purchaseId){ |
||||
|
purchaseService.deletePurchase(purchaseId); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updata") |
||||
|
public SysResult updataPurchase(@RequestBody Purchase purchase){ |
||||
|
purchaseService.updataPurchase(purchase); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,52 @@ |
|||||
|
package com.wh.controller.instorehouse; |
||||
|
|
||||
|
import com.wh.pojo.Receiving; |
||||
|
import com.wh.service.instorehouse.ReceivingService; |
||||
|
import com.wh.vo.Options; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/receiving/") |
||||
|
public class ReceivingController { |
||||
|
|
||||
|
@Autowired |
||||
|
private ReceivingService receivingService; |
||||
|
|
||||
|
@GetMapping("getOptions") |
||||
|
public SysResult getOptions(){ |
||||
|
List<Options> optionsList = receivingService.getOptions(); |
||||
|
return SysResult.success(optionsList); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addReceiving") |
||||
|
public SysResult addReceiving(@RequestBody Map<String,String> map){ |
||||
|
System.out.println(map); |
||||
|
receivingService.addReceiving(map.get("id"),map.get("user")); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getReceiving") |
||||
|
public SysResult getReceiving(PageResult pageResult){ |
||||
|
pageResult = receivingService.getReceiving(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataReceiving") |
||||
|
public SysResult updataReceiving(@RequestBody Receiving receiving){ |
||||
|
receivingService.updataReceiving(receiving); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("deleteReceiving/{receivingId}/{purchaseId}") |
||||
|
public SysResult deleteReceiving(@PathVariable String receivingId,@PathVariable String purchaseId){ |
||||
|
receivingService.deleteReceiving(receivingId,purchaseId); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
package com.wh.controller.outstorehouse; |
||||
|
|
||||
|
import com.wh.pojo.OutStorehouse; |
||||
|
import com.wh.service.outstorehouse.OutStorehouseService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/outStorehouse/") |
||||
|
public class OutStorehouseController { |
||||
|
|
||||
|
@Autowired |
||||
|
private OutStorehouseService outStorehouseService; |
||||
|
|
||||
|
|
||||
|
|
||||
|
@GetMapping("getQuery") |
||||
|
public SysResult getQuery(OutStorehouse outStorehouse){ |
||||
|
Map<String,Object> map = outStorehouseService.getQuery(outStorehouse); |
||||
|
return SysResult.success(map); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getOutStorehouseList(PageResult pageResult){ |
||||
|
pageResult = outStorehouseService.getOutStorehouseList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addOutStorehouse") |
||||
|
public SysResult addOutStorehouse(@RequestBody OutStorehouse outStorehouse){ |
||||
|
outStorehouseService.addOutStorehouse(outStorehouse); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataOutStorehouse") |
||||
|
public SysResult updataOutStorehouse(@RequestBody OutStorehouse outStorehouse){ |
||||
|
outStorehouseService.updataOutStorehouse(outStorehouse); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("dalete/{outStorehouseId}") |
||||
|
public SysResult deleteOutStorehouse(@PathVariable String outStorehouseId){ |
||||
|
// outStorehouseService.deleteOutStorehouse(outStorehouseId);
|
||||
|
return SysResult.success("连接成功"); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("out") |
||||
|
public SysResult out(@RequestBody OutStorehouse outStorehouse){ |
||||
|
outStorehouseService.out(outStorehouse); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,46 @@ |
|||||
|
package com.wh.controller.outstorehouse; |
||||
|
|
||||
|
import com.wh.pojo.Picking; |
||||
|
import com.wh.service.outstorehouse.PickingService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.PickingUser; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/picking/") |
||||
|
public class PickingController { |
||||
|
|
||||
|
@Autowired |
||||
|
private PickingService pickingService; |
||||
|
|
||||
|
@GetMapping("getOptions") |
||||
|
public SysResult getOptions(){ |
||||
|
List<String> outStorehouseIdList = pickingService.getOptions(); |
||||
|
return SysResult.success(outStorehouseIdList); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("picking") |
||||
|
public SysResult picking(@RequestBody PickingUser pickingUser){ |
||||
|
pickingService.picking(pickingUser.getOutStorehouseId(),pickingUser.getUser()); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getPickingList(PageResult pageResult){ |
||||
|
pageResult = pickingService.getPickingList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("finish") |
||||
|
public SysResult finish(@RequestBody Picking picking){ |
||||
|
pickingService.finish(picking); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,26 @@ |
|||||
|
package com.wh.controller.stock; |
||||
|
|
||||
|
|
||||
|
import com.wh.service.stock.StockService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.CrossOrigin; |
||||
|
import org.springframework.web.bind.annotation.GetMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/stock/") |
||||
|
public class StockController { |
||||
|
|
||||
|
@Autowired |
||||
|
private StockService stockService; |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getStockList(PageResult pageResult){ |
||||
|
pageResult = stockService.getStockList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
} |
@ -0,0 +1,54 @@ |
|||||
|
package com.wh.controller.storehousemanage; |
||||
|
|
||||
|
|
||||
|
import com.wh.pojo.InStorehouse; |
||||
|
import com.wh.service.instorehouse.PutInService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/putIn/") |
||||
|
public class PutInController { |
||||
|
|
||||
|
@Autowired |
||||
|
private PutInService putInService; |
||||
|
|
||||
|
@GetMapping("getQuery") |
||||
|
public SysResult getQuery(InStorehouse inStorehouse){ |
||||
|
Map<String,Object> map = putInService.getQuery(inStorehouse); |
||||
|
return SysResult.success(map); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addInStorehouse") |
||||
|
public SysResult addInStorehouse(@RequestBody InStorehouse inStorehouse){ |
||||
|
String data = putInService.addInStorehouse(inStorehouse); |
||||
|
return SysResult.success(data); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getInStorehouseList(PageResult pageResult){ |
||||
|
pageResult = putInService.getInStorehouseList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataInStorehouse") |
||||
|
public SysResult updataInStorehouse(@RequestBody InStorehouse inStorehouse){ |
||||
|
// System.out.println(inStorehouse);
|
||||
|
putInService.updataInStorehouse(inStorehouse); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("deleteInStorehouse/{inStorehouseId}/{receivingId}") |
||||
|
public SysResult deleteInStorehouse(@PathVariable String inStorehouseId,@PathVariable String receivingId){ |
||||
|
String data = putInService.deleteInStorehouse(inStorehouseId,receivingId); |
||||
|
return SysResult.success(data); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,44 @@ |
|||||
|
package com.wh.controller.storehousemanage; |
||||
|
|
||||
|
import com.wh.pojo.Remove; |
||||
|
import com.wh.service.storehousemanage.RemoveService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.data.domain.Page; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/remove/") |
||||
|
public class RemoveController { |
||||
|
|
||||
|
@Autowired |
||||
|
private RemoveService removeService; |
||||
|
|
||||
|
@GetMapping("getQuery") |
||||
|
public SysResult getQuery(Remove remove){ |
||||
|
Map<String,Object> map = removeService.getQuery(remove); |
||||
|
return SysResult.success(map); |
||||
|
} |
||||
|
|
||||
|
@PostMapping("addRemove") |
||||
|
public SysResult addRemove(@RequestBody Remove remove){ |
||||
|
removeService.addRemove(remove); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("list") |
||||
|
public SysResult getRemoveList(PageResult pageResult){ |
||||
|
pageResult = removeService.getRemoveList(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updata") |
||||
|
public SysResult updataRemove(@RequestBody Remove remove){ |
||||
|
removeService.updataRemove(remove); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,57 @@ |
|||||
|
package com.wh.controller.storehousemanage; |
||||
|
|
||||
|
import com.wh.pojo.OnShelves; |
||||
|
import com.wh.service.storehousemanage.ShelvesService; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.QueryInfo; |
||||
|
import com.wh.vo.SysResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
@RestController |
||||
|
@CrossOrigin |
||||
|
@RequestMapping("/shelves/") |
||||
|
public class ShelvesController { |
||||
|
|
||||
|
@Autowired |
||||
|
private ShelvesService shelvesService; |
||||
|
|
||||
|
@GetMapping("getQuery") |
||||
|
public SysResult getQuery(QueryInfo queryInfo){ |
||||
|
Map<String,Object> map = shelvesService.getQuery(queryInfo); |
||||
|
if (map.size()==0){ |
||||
|
return SysResult.notEnough(); |
||||
|
}else { |
||||
|
return SysResult.success(map); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
@PostMapping("add") |
||||
|
public SysResult addShelves(@RequestBody OnShelves onShelves){ |
||||
|
// System.out.println(onShelves);
|
||||
|
shelvesService.addShelves(onShelves); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@GetMapping("getShelves") |
||||
|
public SysResult getShelves(PageResult pageResult){ |
||||
|
pageResult = shelvesService.getShelves(pageResult); |
||||
|
return SysResult.success(pageResult); |
||||
|
} |
||||
|
|
||||
|
@DeleteMapping("deleteShelves/{id}") |
||||
|
public SysResult deleteShelves(@PathVariable String id){ |
||||
|
shelvesService.deleteShelves(id); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
@PutMapping("updataShelves") |
||||
|
public SysResult updataShelves(@RequestBody OnShelves onShelves) throws Exception { |
||||
|
System.out.println(onShelves); |
||||
|
shelvesService.updataShelves(onShelves); |
||||
|
return SysResult.success(); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Rights; |
||||
|
|
||||
|
public interface RightsMapper extends BaseMapper<Rights> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.User; |
||||
|
|
||||
|
public interface UserMapper extends BaseMapper<User> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Location; |
||||
|
|
||||
|
public interface LocationMapper extends BaseMapper<Location> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.LocationType; |
||||
|
|
||||
|
public interface LocationTypeMapper extends BaseMapper<LocationType> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Product; |
||||
|
|
||||
|
public interface ProductMapper extends BaseMapper<Product> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
|
||||
|
public interface StorehouseMapper extends BaseMapper<Storehouse> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Supplier; |
||||
|
|
||||
|
public interface SupplierMapper extends BaseMapper<Supplier> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.instorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Purchase; |
||||
|
|
||||
|
public interface PurchaseMapper extends BaseMapper<Purchase> { |
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
package com.wh.mapper.instorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.InStorehouse; |
||||
|
|
||||
|
|
||||
|
public interface PutInMapper extends BaseMapper<InStorehouse> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.instorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Receiving; |
||||
|
|
||||
|
public interface ReceivingMapper extends BaseMapper<Receiving> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.outstorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.OutStorehouse; |
||||
|
|
||||
|
public interface OutStorehouseMapper extends BaseMapper<OutStorehouse> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.outstorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Picking; |
||||
|
|
||||
|
public interface PickingMapper extends BaseMapper<Picking> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.stock; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Stock; |
||||
|
|
||||
|
public interface StockMapper extends BaseMapper<Stock> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.storehousemanage; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.Remove; |
||||
|
|
||||
|
public interface RemoveMapper extends BaseMapper<Remove> { |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.mapper.storehousemanage; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.wh.pojo.OnShelves; |
||||
|
|
||||
|
public interface ShelvesMapper extends BaseMapper<OnShelves> { |
||||
|
} |
@ -0,0 +1,9 @@ |
|||||
|
package com.wh.service; |
||||
|
|
||||
|
import com.wh.pojo.Rights; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
public interface RightsService { |
||||
|
List<Rights> findRightsList(); |
||||
|
} |
@ -0,0 +1,42 @@ |
|||||
|
package com.wh.service; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.wh.mapper.RightsMapper; |
||||
|
import com.wh.pojo.Rights; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Service |
||||
|
public class RightsServiceImpl implements RightsService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private RightsMapper rightsMapper; |
||||
|
|
||||
|
/** |
||||
|
* 查询一级/二级菜单 |
||||
|
* 查询条件: 一级菜单 parent_id = 0 |
||||
|
* 二级菜单 parent_id = 一级的Id |
||||
|
* 作业: 利用左连接的方式 实现数据的封装 restMap |
||||
|
* @return |
||||
|
*/ |
||||
|
@Override |
||||
|
public List<Rights> findRightsList() { |
||||
|
//1.查询一级菜单数据
|
||||
|
QueryWrapper<Rights> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq("parent_id",0); |
||||
|
List<Rights> oneList = |
||||
|
rightsMapper.selectList(queryWrapper); |
||||
|
//2.如何查询二级菜单 父子关系的封装!!!
|
||||
|
for (Rights oneRights : oneList){ |
||||
|
//查询该元素的二级菜单
|
||||
|
//QueryWrapper<Rights> queryWrapper2 = new QueryWrapper<>();
|
||||
|
queryWrapper.clear(); |
||||
|
queryWrapper.eq("parent_id",oneRights.getId()); |
||||
|
List<Rights> twoList = rightsMapper.selectList(queryWrapper); |
||||
|
oneRights.setChildren(twoList); |
||||
|
} |
||||
|
return oneList; |
||||
|
} |
||||
|
} |
@ -0,0 +1,7 @@ |
|||||
|
package com.wh.service; |
||||
|
|
||||
|
import com.wh.pojo.User; |
||||
|
|
||||
|
public interface UserService { |
||||
|
String findUserByUP(User user); |
||||
|
} |
@ -0,0 +1,28 @@ |
|||||
|
package com.wh.service; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.wh.mapper.UserMapper; |
||||
|
import com.wh.pojo.User; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.DigestUtils; |
||||
|
|
||||
|
import java.util.UUID; |
||||
|
|
||||
|
@Service |
||||
|
public class UserServiceImpl implements UserService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private UserMapper userMapper; |
||||
|
|
||||
|
@Override |
||||
|
public String findUserByUP(User user) { |
||||
|
String md5Pass = DigestUtils.md5DigestAsHex(user.getPassword().getBytes()); |
||||
|
user.setPassword(md5Pass); |
||||
|
QueryWrapper queryWrapper = new QueryWrapper(user); |
||||
|
User userDB = userMapper.selectOne(queryWrapper); |
||||
|
|
||||
|
String token = UUID.randomUUID().toString().replace("-", "")+user.getUsername(); |
||||
|
return userDB==null?null:token; |
||||
|
} |
||||
|
} |
@ -0,0 +1,22 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
import com.wh.pojo.Location; |
||||
|
import com.wh.pojo.LocationType; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
public interface LocationService { |
||||
|
PageResult getLocationList(PageResult pageResult); |
||||
|
|
||||
|
void addLocation(Location location); |
||||
|
|
||||
|
void updataLocation(Location location); |
||||
|
|
||||
|
void deleteLocation(String name); |
||||
|
|
||||
|
List<Storehouse> getStorehouse(); |
||||
|
|
||||
|
List<LocationType> getType(); |
||||
|
} |
@ -0,0 +1,67 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.mapper.initial.LocationMapper; |
||||
|
import com.wh.mapper.initial.LocationTypeMapper; |
||||
|
import com.wh.mapper.initial.StorehouseMapper; |
||||
|
import com.wh.pojo.Location; |
||||
|
import com.wh.pojo.LocationType; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Service |
||||
|
public class LocationServiceImpl implements LocationService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private LocationTypeMapper locationTypeMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private StorehouseMapper storehouseMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private LocationMapper locationMapper; |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getLocationList(PageResult pageResult) { |
||||
|
Page<Location> locationPage = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
QueryWrapper<Location> queryWrapper = new QueryWrapper<>(); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
queryWrapper.like(flag,"name",pageResult.getQuery()); |
||||
|
locationPage = locationMapper.selectPage(locationPage,queryWrapper); |
||||
|
pageResult.setTotal((long) locationPage.getRecords().size()).setRows(locationPage.getRecords()); |
||||
|
|
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addLocation(Location location) { |
||||
|
locationMapper.insert(location); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataLocation(Location location) { |
||||
|
locationMapper.updateById(location); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deleteLocation(String name) { |
||||
|
locationMapper.deleteById(name); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<Storehouse> getStorehouse() { |
||||
|
return storehouseMapper.selectList(null); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<LocationType> getType() { |
||||
|
return locationTypeMapper.selectList(null); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
import com.wh.pojo.Product; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
public interface ProductService { |
||||
|
PageResult getProductList(PageResult pageResult); |
||||
|
|
||||
|
void addProduct(Product product); |
||||
|
|
||||
|
void updataProduct(Product product); |
||||
|
|
||||
|
void deleteProduct(String barCode); |
||||
|
|
||||
|
List<Storehouse> getStorehouse(); |
||||
|
} |
@ -0,0 +1,63 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.mapper.initial.ProductMapper; |
||||
|
import com.wh.mapper.initial.StorehouseMapper; |
||||
|
import com.wh.pojo.Product; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.HashMap; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
@Service |
||||
|
public class ProductServiceImpl implements ProductService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private StorehouseMapper storehouseMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ProductMapper productMapper; |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getProductList(PageResult pageResult) { |
||||
|
Page<Product> productPage = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
QueryWrapper<Product> queryWrapper = new QueryWrapper<>(); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
|
||||
|
queryWrapper.like(flag,"name",pageResult.getQuery()); |
||||
|
productPage = productMapper.selectPage(productPage,queryWrapper); |
||||
|
|
||||
|
pageResult.setTotal((long) productPage.getRecords().size()).setRows(productPage.getRecords()); |
||||
|
// System.out.println(productPage.getRecords().size());
|
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addProduct(Product product) { |
||||
|
productMapper.insert(product); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataProduct(Product product) { |
||||
|
productMapper.updateById(product); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deleteProduct(String barCode) { |
||||
|
Map<String,Object> map = new HashMap<>(); |
||||
|
map.put("bar_code",barCode); |
||||
|
productMapper.deleteByMap(map); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<Storehouse> getStorehouse() { |
||||
|
List<Storehouse> storehouses = storehouseMapper.selectList(null); |
||||
|
return storehouses; |
||||
|
} |
||||
|
} |
@ -0,0 +1,14 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
public interface StorehouseService { |
||||
|
PageResult getStorehouseList(PageResult pageResult); |
||||
|
|
||||
|
void addStorehouse(Storehouse storehouse); |
||||
|
|
||||
|
void updataStorehouse(Storehouse storehouse); |
||||
|
|
||||
|
void deleteStorehouse(String name) throws Exception; |
||||
|
} |
@ -0,0 +1,60 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.mapper.initial.LocationMapper; |
||||
|
import com.wh.mapper.initial.StorehouseMapper; |
||||
|
import com.wh.pojo.Location; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Service |
||||
|
public class StorehouseServiceImpl implements StorehouseService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private StorehouseMapper storehouseMapper; |
||||
|
|
||||
|
|
||||
|
@Autowired |
||||
|
private LocationMapper locationMapper; |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getStorehouseList(PageResult pageResult) { |
||||
|
Page<Storehouse> storehousePage = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
QueryWrapper<Storehouse> queryWrapper = new QueryWrapper<>(); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
queryWrapper.like(flag,"name",pageResult.getQuery()); |
||||
|
storehousePage = storehouseMapper.selectPage(storehousePage,queryWrapper); |
||||
|
pageResult.setTotal((long) storehousePage.getRecords().size()).setRows(storehousePage.getRecords()); |
||||
|
|
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addStorehouse(Storehouse storehouse) { |
||||
|
storehouseMapper.insert(storehouse); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataStorehouse(Storehouse storehouse) { |
||||
|
storehouseMapper.updateById(storehouse); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deleteStorehouse(String name) throws Exception { |
||||
|
Storehouse storehouse = storehouseMapper.selectById(name); |
||||
|
|
||||
|
QueryWrapper<Location> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq("storehouse",name); |
||||
|
List<Location> locationList = locationMapper.selectList(queryWrapper); |
||||
|
if (locationList.size() != 0) throw new Exception("出库中有货位"); |
||||
|
|
||||
|
|
||||
|
storehouseMapper.deleteById(name); |
||||
|
} |
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
|
||||
|
import com.wh.pojo.Supplier; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
public interface SupplierService { |
||||
|
PageResult getSupplierList(PageResult pageResult); |
||||
|
|
||||
|
void addSupplier(Supplier supplier); |
||||
|
|
||||
|
void updataSupplier(Supplier supplier); |
||||
|
|
||||
|
void deleteSupplier(String name); |
||||
|
} |
@ -0,0 +1,44 @@ |
|||||
|
package com.wh.service.initial; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.mapper.initial.SupplierMapper; |
||||
|
import com.wh.pojo.Supplier; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
@Service |
||||
|
public class SupplierServiceImpl implements SupplierService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private SupplierMapper supplierMapper; |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getSupplierList(PageResult pageResult) { |
||||
|
Page<Supplier> supplierPage = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
QueryWrapper<Supplier> queryWrapper = new QueryWrapper<>(); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
queryWrapper.like(flag,"name",pageResult.getQuery()); |
||||
|
supplierPage = supplierMapper.selectPage(supplierPage,queryWrapper); |
||||
|
pageResult.setTotal((long) supplierPage.getRecords().size()).setRows(supplierPage.getRecords()); |
||||
|
|
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addSupplier(Supplier supplier) { |
||||
|
supplierMapper.insert(supplier); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataSupplier(Supplier supplier) { |
||||
|
supplierMapper.updateById(supplier); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deleteSupplier(String name) { |
||||
|
supplierMapper.deleteById(name); |
||||
|
} |
||||
|
} |
@ -0,0 +1,25 @@ |
|||||
|
package com.wh.service.instorehouse; |
||||
|
|
||||
|
import com.wh.pojo.Product; |
||||
|
import com.wh.pojo.Purchase; |
||||
|
import com.wh.pojo.Storehouse; |
||||
|
import com.wh.pojo.Supplier; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
public interface PurchaseService { |
||||
|
PageResult getPurchaseList(PageResult pageResult); |
||||
|
|
||||
|
void addPurchase(Purchase purchase); |
||||
|
|
||||
|
List<Product> getProductList(String name); |
||||
|
|
||||
|
List<Supplier> getSupplier(); |
||||
|
|
||||
|
List<Storehouse> getStorehouse(); |
||||
|
|
||||
|
void deletePurchase(String purchaseId); |
||||
|
|
||||
|
void updataPurchase(Purchase purchase); |
||||
|
} |
@ -0,0 +1,84 @@ |
|||||
|
package com.wh.service.instorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.mapper.initial.ProductMapper; |
||||
|
import com.wh.mapper.initial.StorehouseMapper; |
||||
|
import com.wh.mapper.initial.SupplierMapper; |
||||
|
import com.wh.mapper.instorehouse.PurchaseMapper; |
||||
|
import com.wh.pojo.*; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Service |
||||
|
public class PurchaseServiceImpl implements PurchaseService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private StorehouseMapper storehouseMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private SupplierMapper supplierMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ProductMapper productMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private PurchaseMapper purchaseMapper; |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getPurchaseList(PageResult pageResult) { |
||||
|
Page<Purchase> purchasePage = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
QueryWrapper<Purchase> queryWrapper = new QueryWrapper<>(); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
queryWrapper.like(flag,"purchase_id",pageResult.getQuery()); |
||||
|
|
||||
|
purchasePage = purchaseMapper.selectPage(purchasePage,queryWrapper); |
||||
|
pageResult.setTotal((long) purchasePage.getRecords().size()).setRows(purchasePage.getRecords()); |
||||
|
// System.out.println(purchasePage.getRecords().size());
|
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addPurchase(Purchase purchase) { |
||||
|
purchaseMapper.insert(purchase); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<Product> getProductList(String name) { |
||||
|
boolean flag = StringUtils.hasLength(name); |
||||
|
QueryWrapper<Product> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq(flag,"name",name); |
||||
|
List<Product> productList = productMapper.selectList(queryWrapper); |
||||
|
return productList; |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<Supplier> getSupplier() { |
||||
|
List<Supplier> supplierList = supplierMapper.selectList(null); |
||||
|
return supplierList; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public List<Storehouse> getStorehouse() { |
||||
|
// QueryWrapper<Storehouse> queryWrapper = new QueryWrapper<>();
|
||||
|
// queryWrapper.eq("type","入库区");
|
||||
|
// return storehouseMapper.selectList(queryWrapper);
|
||||
|
return storehouseMapper.selectList(null); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deletePurchase(String purchaseId) { |
||||
|
purchaseMapper.deleteById(purchaseId); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataPurchase(Purchase purchase) { |
||||
|
purchaseMapper.updateById(purchase); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,20 @@ |
|||||
|
package com.wh.service.instorehouse; |
||||
|
|
||||
|
import com.wh.pojo.InStorehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
public interface PutInService { |
||||
|
Map<String, Object> getQuery(InStorehouse inStorehouse); |
||||
|
|
||||
|
String addInStorehouse(InStorehouse inStorehouse); |
||||
|
|
||||
|
PageResult getInStorehouseList(PageResult pageResult); |
||||
|
|
||||
|
void updataInStorehouse(InStorehouse inStorehouse); |
||||
|
|
||||
|
String deleteInStorehouse(String inStorehouseId, String receivingId); |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,220 @@ |
|||||
|
package com.wh.service.instorehouse; |
||||
|
|
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.api.Api; |
||||
|
import com.wh.mapper.initial.LocationMapper; |
||||
|
import com.wh.mapper.initial.ProductMapper; |
||||
|
import com.wh.mapper.instorehouse.PurchaseMapper; |
||||
|
import com.wh.mapper.instorehouse.ReceivingMapper; |
||||
|
import com.wh.mapper.stock.StockMapper; |
||||
|
import com.wh.mapper.instorehouse.PutInMapper; |
||||
|
import com.wh.mapper.storehousemanage.RemoveMapper; |
||||
|
import com.wh.pojo.*; |
||||
|
|
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
|
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.HashMap; |
||||
|
import java.util.List; |
||||
|
import java.util.Map; |
||||
|
|
||||
|
@Service |
||||
|
public class PutInServiceImpl implements PutInService { |
||||
|
|
||||
|
@Autowired |
||||
|
private PutInMapper putInMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ReceivingMapper receivingMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private LocationMapper locationMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private StockMapper stockMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private PurchaseMapper purchaseMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ProductMapper productMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private RemoveMapper removeMapper; |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
public Map<String, Object> getQuery(InStorehouse inStorehouse) { |
||||
|
Purchase purchase = new Purchase(); |
||||
|
if (StringUtils.hasLength(inStorehouse.getReceivingId())){ |
||||
|
Receiving receivingAble = receivingMapper.selectById(inStorehouse.getReceivingId()); |
||||
|
purchase = purchaseMapper.selectById(receivingAble.getPurchaseId()); |
||||
|
} |
||||
|
|
||||
|
QueryWrapper<Receiving> receivingQueryWrapper = new QueryWrapper<>(); |
||||
|
receivingQueryWrapper.eq("status","已审核") |
||||
|
.select("receiving_id"); |
||||
|
|
||||
|
|
||||
|
QueryWrapper<Location> locationQueryWrapper = new QueryWrapper<>(); |
||||
|
locationQueryWrapper.eq("status","空闲") |
||||
|
.eq("type","入库区") |
||||
|
.eq(StringUtils.hasLength(purchase.getStorehouse()),"storehouse",purchase.getStorehouse()) |
||||
|
.select("location_id"); |
||||
|
|
||||
|
List<Receiving> receivingList = receivingMapper.selectList(receivingQueryWrapper); |
||||
|
List<Location> locationList = locationMapper.selectList(locationQueryWrapper); |
||||
|
|
||||
|
List<String> receivingIdList = new ArrayList<>(); |
||||
|
List<String> locationIdList = new ArrayList<>(); |
||||
|
|
||||
|
for (Receiving receiving : receivingList){ |
||||
|
receivingIdList.add(receiving.getReceivingId()); |
||||
|
} |
||||
|
|
||||
|
if (locationList != null){ |
||||
|
for (Location location : locationList){ |
||||
|
locationIdList.add(location.getLocationId()); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
Map<String,Object> map = new HashMap<>(); |
||||
|
map.put("receivingIdList",receivingIdList); |
||||
|
map.put("locationIdList",locationIdList); |
||||
|
|
||||
|
return map; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public String addInStorehouse(InStorehouse inStorehouse) { |
||||
|
QueryWrapper<InStorehouse> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq("location_id",inStorehouse.getLocationId()); |
||||
|
if(putInMapper.selectCount(queryWrapper) != 0){ |
||||
|
return "已有记录"; |
||||
|
} |
||||
|
inStorehouse.setStatus("待审核") |
||||
|
.setInStorehouseId("IN" + System.currentTimeMillis()) |
||||
|
.setCreateTime(new Api().getTime()); |
||||
|
putInMapper.insert(inStorehouse); |
||||
|
Receiving receiving = receivingMapper.selectById(inStorehouse.getReceivingId()); |
||||
|
receiving.setStatus("进行中"); |
||||
|
receivingMapper.updateById(receiving); |
||||
|
return "添加成功"; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getInStorehouseList(PageResult pageResult) { |
||||
|
Page<InStorehouse> page = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
|
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
|
||||
|
QueryWrapper<InStorehouse> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.like(flag,"in_storehouse_id",pageResult.getQuery()); |
||||
|
|
||||
|
page = putInMapper.selectPage(page,queryWrapper); |
||||
|
|
||||
|
pageResult.setTotal((long) page.getRecords().size()).setRows(page.getRecords()); |
||||
|
|
||||
|
|
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
//
|
||||
|
public void updataInStorehouse(InStorehouse inStorehouse) { |
||||
|
//判断订单状态
|
||||
|
if (inStorehouse.getStatus().equals("已审核")){ |
||||
|
//设置审核时间
|
||||
|
inStorehouse.setCheckTime(new Api().getTime()); |
||||
|
check(inStorehouse); |
||||
|
}else if(inStorehouse.getStatus().equals("待审核")){ |
||||
|
inStorehouse.setCheckTime("") |
||||
|
.setCheckPerson(""); |
||||
|
stockMapper.deleteById(inStorehouse.getLocationId()); |
||||
|
|
||||
|
Location location = locationMapper.selectById(inStorehouse.getLocationId()); |
||||
|
location.setStatus("空闲"); |
||||
|
locationMapper.updateById(location); |
||||
|
|
||||
|
} |
||||
|
putInMapper.updateById(inStorehouse); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public String deleteInStorehouse(String inStorehouseId, String receivingId) { |
||||
|
Receiving receiving = receivingMapper.selectById(receivingId); |
||||
|
receiving.setStatus("已审核"); |
||||
|
receivingMapper.updateById(receiving); |
||||
|
putInMapper.deleteById(inStorehouseId); |
||||
|
return "撤销成功"; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
public void check(InStorehouse inStorehouse){ |
||||
|
Stock stock = new Stock(); |
||||
|
|
||||
|
//获取货位名称
|
||||
|
Location location = locationMapper.selectById(inStorehouse.getLocationId()); |
||||
|
String locationName = location.getName(); |
||||
|
|
||||
|
//获取商品条码
|
||||
|
String barCode = null; |
||||
|
//获取接货单
|
||||
|
Receiving receiving = receivingMapper.selectById(inStorehouse.getReceivingId()); |
||||
|
if (StringUtils.hasLength(receiving.getPurchaseId())) { |
||||
|
Purchase purchase = purchaseMapper.selectById(receiving.getPurchaseId()); |
||||
|
barCode = purchase.getBarCode(); |
||||
|
stock.setTotalQuantity(purchase.getCount()) |
||||
|
.setAvailableQuantity(purchase.getCount()); |
||||
|
} else { |
||||
|
Remove remove = removeMapper.selectById(receiving.getRemoveId()); |
||||
|
barCode = remove.getBarCode(); |
||||
|
stock.setTotalQuantity(remove.getCount()) |
||||
|
.setAvailableQuantity(remove.getCount()); |
||||
|
} |
||||
|
|
||||
|
//获取商品名称
|
||||
|
Product product = productMapper.selectById(barCode); |
||||
|
String productName = product.getName(); |
||||
|
|
||||
|
//赋值
|
||||
|
stock.setInStorehouseId(inStorehouse.getInStorehouseId()) |
||||
|
.setLocationId(inStorehouse.getLocationId()) |
||||
|
.setLocationName(locationName) |
||||
|
.setBarCode(barCode) |
||||
|
.setProductName(productName) |
||||
|
.setLockedQuantity(0) |
||||
|
.setStatus("待上架"); |
||||
|
|
||||
|
stockMapper.insert(stock); |
||||
|
|
||||
|
//修改移库源货位库存
|
||||
|
if (receiving.getRemoveId() != null){ |
||||
|
Remove remove = removeMapper.selectById(receiving.getRemoveId()); |
||||
|
Stock fromStock = stockMapper.selectById(remove.getFromLocationId()); |
||||
|
fromStock.setLockedQuantity(fromStock.getLockedQuantity() - remove.getCount()) |
||||
|
.setTotalQuantity(fromStock.getTotalQuantity() - remove.getCount()); |
||||
|
stockMapper.updateById(fromStock); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
location.setStatus(barCode); |
||||
|
locationMapper.updateById(location); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
package com.wh.service.instorehouse; |
||||
|
|
||||
|
import com.wh.pojo.Receiving; |
||||
|
import com.wh.vo.Options; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
public interface ReceivingService { |
||||
|
List<Options> getOptions(); |
||||
|
|
||||
|
void addReceiving(String id,String user); |
||||
|
|
||||
|
PageResult getReceiving(PageResult pageResult); |
||||
|
|
||||
|
void updataReceiving(Receiving receiving); |
||||
|
|
||||
|
void deleteReceiving(String receivingId,String purchaseId); |
||||
|
} |
@ -0,0 +1,132 @@ |
|||||
|
package com.wh.service.instorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.api.Api; |
||||
|
import com.wh.mapper.instorehouse.PurchaseMapper; |
||||
|
import com.wh.mapper.instorehouse.ReceivingMapper; |
||||
|
import com.wh.mapper.storehousemanage.RemoveMapper; |
||||
|
import com.wh.pojo.Purchase; |
||||
|
import com.wh.pojo.Receiving; |
||||
|
import com.wh.pojo.Remove; |
||||
|
import com.wh.vo.Options; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.text.SimpleDateFormat; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
@Service |
||||
|
public class ReceivingServiceImpl implements ReceivingService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private ReceivingMapper receivingMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private PurchaseMapper purchaseMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private RemoveMapper removeMapper; |
||||
|
|
||||
|
@Override |
||||
|
public List<Options> getOptions() { |
||||
|
List<Options> optionsList = new ArrayList<>(); |
||||
|
List<Options> optionsList2 = new ArrayList<>(); |
||||
|
List<Options> optionsList3 = new ArrayList<>(); |
||||
|
Options optionsPurchase = new Options(); |
||||
|
Options optionsRemove = new Options(); |
||||
|
QueryWrapper<Purchase> purchaseQueryWrapper = new QueryWrapper<>(); |
||||
|
purchaseQueryWrapper.eq("status","已审核"); |
||||
|
|
||||
|
|
||||
|
List<Purchase> purchaseList = purchaseMapper.selectList(purchaseQueryWrapper); |
||||
|
// System.out.println(purchaseList);
|
||||
|
// System.out.println(purchaseList.get(0).getPurchaseId());
|
||||
|
|
||||
|
for(Purchase purchase : purchaseList){ |
||||
|
optionsList2.add(new Options().setLabel(purchase.getPurchaseId()).setValue(purchase.getPurchaseId())); |
||||
|
} |
||||
|
optionsPurchase.setValue("purchase").setLabel("采购订单编号").setChildren(optionsList2); |
||||
|
// System.out.println(optionsList2);
|
||||
|
optionsList.add(optionsPurchase); |
||||
|
|
||||
|
QueryWrapper<Remove> removeQueryWrapper = new QueryWrapper<>(); |
||||
|
removeQueryWrapper.eq("status","已审核"); |
||||
|
List<Remove> removeList = removeMapper.selectList(removeQueryWrapper); |
||||
|
for(Remove remove : removeList){ |
||||
|
optionsList3.add(new Options().setLabel(remove.getRemoveId()).setValue(remove.getRemoveId())); |
||||
|
} |
||||
|
optionsRemove.setValue("remove").setLabel("移库编号").setChildren(optionsList3); |
||||
|
|
||||
|
|
||||
|
|
||||
|
optionsList.add(optionsRemove); |
||||
|
|
||||
|
System.out.println(optionsList); |
||||
|
return optionsList; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addReceiving(String id,String user) { |
||||
|
|
||||
|
|
||||
|
// System.out.println(purchase);
|
||||
|
|
||||
|
Receiving receiving = new Receiving(); |
||||
|
receiving.setReceivingId("IR" + Long.toString(System.currentTimeMillis())) |
||||
|
.setReceivingPerson(user) |
||||
|
.setReceivingTime(new Api().getTime()) |
||||
|
.setStatus("待审核"); |
||||
|
|
||||
|
|
||||
|
if (id.charAt(0) == 'I'){ |
||||
|
Purchase purchase = purchaseMapper.selectById(id); |
||||
|
receiving.setPurchaseId(purchase.getPurchaseId()); |
||||
|
purchase.setStatus("进行中"); |
||||
|
purchaseMapper.updateById(purchase); |
||||
|
}else { |
||||
|
Remove remove = removeMapper.selectById(id); |
||||
|
receiving.setRemoveId(remove.getRemoveId()); |
||||
|
remove.setStatus("进行中"); |
||||
|
removeMapper.updateById(remove); |
||||
|
} |
||||
|
receivingMapper.insert(receiving); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getReceiving(PageResult pageResult) { |
||||
|
Page<Receiving> receivingPage = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
QueryWrapper<Receiving> queryWrapper = new QueryWrapper<>(); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
queryWrapper.like(flag,"receiving_id",pageResult.getQuery()); |
||||
|
|
||||
|
receivingPage = receivingMapper.selectPage(receivingPage,queryWrapper); |
||||
|
pageResult.setTotal((long) receivingPage.getRecords().size()).setRows(receivingPage.getRecords()); |
||||
|
// System.out.println(receivingPage.getRecords().size());
|
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataReceiving(Receiving receiving) { |
||||
|
if (StringUtils.hasLength(receiving.getCheckPerson())){ |
||||
|
receiving.setCheckTime(new Api().getTime()); |
||||
|
} |
||||
|
receivingMapper.updateById(receiving); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deleteReceiving(String receivingId,String purchaseId) { |
||||
|
receivingMapper.deleteById(receivingId); |
||||
|
Purchase purchase = purchaseMapper.selectById(purchaseId); |
||||
|
purchase.setStatus("已审核"); |
||||
|
purchaseMapper.updateById(purchase); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,20 @@ |
|||||
|
package com.wh.service.outstorehouse; |
||||
|
|
||||
|
import com.wh.pojo.OutStorehouse; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
public interface OutStorehouseService { |
||||
|
Map<String, Object> getQuery(OutStorehouse outStorehouse); |
||||
|
|
||||
|
PageResult getOutStorehouseList(PageResult pageResult); |
||||
|
|
||||
|
void addOutStorehouse(OutStorehouse outStorehouse); |
||||
|
|
||||
|
void updataOutStorehouse(OutStorehouse outStorehouse); |
||||
|
|
||||
|
void deleteOutStorehouse(String id,Integer count , String locationId); |
||||
|
|
||||
|
void out(OutStorehouse outStorehouse); |
||||
|
} |
@ -0,0 +1,157 @@ |
|||||
|
package com.wh.service.outstorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.api.Api; |
||||
|
import com.wh.mapper.initial.ProductMapper; |
||||
|
import com.wh.mapper.outstorehouse.OutStorehouseMapper; |
||||
|
import com.wh.mapper.outstorehouse.PickingMapper; |
||||
|
import com.wh.mapper.stock.StockMapper; |
||||
|
import com.wh.pojo.*; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.*; |
||||
|
|
||||
|
@Service |
||||
|
public class OutStorehouseServiceImpl implements OutStorehouseService { |
||||
|
|
||||
|
@Autowired |
||||
|
private OutStorehouseMapper outStorehouseMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private StockMapper stockMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ProductMapper productMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private PickingMapper pickingMapper; |
||||
|
|
||||
|
@Override |
||||
|
public Map<String, Object> getQuery(OutStorehouse outStorehouse) { |
||||
|
Map<String,Object> map = new HashMap<>(); |
||||
|
Set<String> barCodeList = new HashSet<>(); |
||||
|
Set<String> locationIdList = new HashSet<>(); |
||||
|
String productName = ""; |
||||
|
Integer availableQuantity = 0; |
||||
|
|
||||
|
|
||||
|
boolean barCodeFlag = StringUtils.hasLength(outStorehouse.getBarCode()); |
||||
|
boolean locationIdFlag = StringUtils.hasLength(outStorehouse.getLocationId()); |
||||
|
|
||||
|
QueryWrapper<Stock> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq(barCodeFlag,"bar_code",outStorehouse.getBarCode()) |
||||
|
.eq(locationIdFlag,"location_id",outStorehouse.getLocationId()) |
||||
|
.eq("status","已上架"); |
||||
|
|
||||
|
List<Stock> stockList = stockMapper.selectList(queryWrapper); |
||||
|
|
||||
|
if (stockList.size() == 1){ |
||||
|
productName = stockList.get(0).getProductName(); |
||||
|
availableQuantity = stockList.get(0).getAvailableQuantity(); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
for (Stock stock : stockList){ |
||||
|
barCodeList.add(stock.getBarCode()); |
||||
|
locationIdList.add(stock.getLocationId()); |
||||
|
} |
||||
|
|
||||
|
map.put("barCodeList",barCodeList); |
||||
|
map.put("locationIdList",locationIdList); |
||||
|
map.put("availableQuantity",availableQuantity); |
||||
|
map.put("productName",productName); |
||||
|
|
||||
|
|
||||
|
return map; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getOutStorehouseList(PageResult pageResult) { |
||||
|
Page<OutStorehouse> page = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
QueryWrapper<OutStorehouse> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.like(flag,"out_storehouse_id",pageResult.getQuery()); |
||||
|
page = outStorehouseMapper.selectPage(page,queryWrapper); |
||||
|
pageResult.setTotal((long) page.getRecords().size()).setRows(page.getRecords()); |
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addOutStorehouse(OutStorehouse outStorehouse) { |
||||
|
outStorehouse.setCreateTime(new Api().getTime()); |
||||
|
/**修改stock*/ |
||||
|
Stock stock = stockMapper.selectById(outStorehouse.getLocationId()); |
||||
|
stock.setAvailableQuantity( |
||||
|
stock.getAvailableQuantity() - outStorehouse.getCount() |
||||
|
); |
||||
|
stockMapper.updateById(stock); |
||||
|
outStorehouseMapper.insert(outStorehouse); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataOutStorehouse(OutStorehouse outStorehouse) { |
||||
|
/** 修改stock*/ |
||||
|
Stock stock = stockMapper.selectById(outStorehouse.getLocationId()); |
||||
|
if (outStorehouse.getStatus().equals("已审核")){ |
||||
|
//设置锁定数量
|
||||
|
stock.setLockedQuantity( |
||||
|
stock.getLockedQuantity() + outStorehouse.getCount() |
||||
|
); |
||||
|
//设置审核时间
|
||||
|
outStorehouse.setCheckTime(new Api().getTime()); |
||||
|
//设置拣货id/添加拣货单
|
||||
|
if (!StringUtils.hasLength(outStorehouse.getPickingId())){ |
||||
|
String pickingId = "PI" + System.currentTimeMillis(); |
||||
|
outStorehouse.setPickingId(pickingId); |
||||
|
Picking picking = new Picking(); |
||||
|
picking.setPickingId(pickingId) |
||||
|
.setOutStorehouseId(outStorehouse.getOutStorehouseId()) |
||||
|
.setCreatePerson(outStorehouse.getCheckPerson()) |
||||
|
.setCreateTime(new Api().getTime()) |
||||
|
.setStatus("待拣货"); |
||||
|
pickingMapper.insert(picking); |
||||
|
} |
||||
|
} else if (outStorehouse.getStatus().equals("待审核")){ |
||||
|
stock.setLockedQuantity( |
||||
|
stock.getLockedQuantity() - outStorehouse.getCount() |
||||
|
); |
||||
|
if (StringUtils.hasLength(outStorehouse.getPickingId())){ |
||||
|
pickingMapper.deleteById(outStorehouse.getPickingId()); |
||||
|
} |
||||
|
outStorehouse.setPickingId("") |
||||
|
.setCheckPerson("") |
||||
|
.setCheckTime(""); |
||||
|
} |
||||
|
stockMapper.updateById(stock); |
||||
|
outStorehouseMapper.updateById(outStorehouse); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deleteOutStorehouse(String id , Integer count , String locationId) { |
||||
|
|
||||
|
Stock stock = stockMapper.selectById(locationId); |
||||
|
stock.setAvailableQuantity( |
||||
|
stock.getAvailableQuantity() + count |
||||
|
); |
||||
|
stockMapper.updateById(stock); |
||||
|
|
||||
|
outStorehouseMapper.deleteById(id); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void out(OutStorehouse outStorehouse) { |
||||
|
outStorehouse.setOutTime(new Api().getTime()); |
||||
|
outStorehouseMapper.updateById(outStorehouse); |
||||
|
|
||||
|
Stock stock = stockMapper.selectById(outStorehouse.getLocationId()); |
||||
|
stock.setTotalQuantity(stock.getTotalQuantity() - outStorehouse.getCount()) |
||||
|
.setLockedQuantity(stock.getLockedQuantity() - outStorehouse.getCount()); |
||||
|
stockMapper.updateById(stock); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,16 @@ |
|||||
|
package com.wh.service.outstorehouse; |
||||
|
|
||||
|
import com.wh.pojo.Picking; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
public interface PickingService { |
||||
|
List<String> getOptions(); |
||||
|
|
||||
|
void picking(String id,String user); |
||||
|
|
||||
|
PageResult getPickingList(PageResult pageResult); |
||||
|
|
||||
|
void finish(Picking picking); |
||||
|
} |
@ -0,0 +1,82 @@ |
|||||
|
package com.wh.service.outstorehouse; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.api.Api; |
||||
|
import com.wh.mapper.outstorehouse.OutStorehouseMapper; |
||||
|
import com.wh.mapper.outstorehouse.PickingMapper; |
||||
|
import com.wh.pojo.OutStorehouse; |
||||
|
import com.wh.pojo.Picking; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.apache.ibatis.annotations.Select; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.HashMap; |
||||
|
import java.util.List; |
||||
|
|
||||
|
@Service |
||||
|
public class PickingServiceImpl implements PickingService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private PickingMapper pickingMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private OutStorehouseMapper outStorehouseMapper; |
||||
|
|
||||
|
@Override |
||||
|
public List<String> getOptions() { |
||||
|
QueryWrapper<Picking> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq("status","待拣货"); |
||||
|
List<Picking> pickingList = pickingMapper.selectList(queryWrapper); |
||||
|
|
||||
|
List<String> outStorehouseIdList = new ArrayList<>(); |
||||
|
|
||||
|
for (Picking picking : pickingList){ |
||||
|
outStorehouseIdList.add(picking.getPickingId()); |
||||
|
} |
||||
|
return outStorehouseIdList; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void picking(String id , String user) { |
||||
|
Picking picking = pickingMapper.selectById(id); |
||||
|
OutStorehouse outStorehouse = outStorehouseMapper.selectById(picking.getOutStorehouseId()); |
||||
|
//更新拣货单
|
||||
|
picking.setStatus("拣货中") |
||||
|
.setRecipientPerson(user) |
||||
|
.setRecipientTime(new Api().getTime()); |
||||
|
pickingMapper.updateById(picking); |
||||
|
|
||||
|
//更新出库单
|
||||
|
outStorehouse.setStatus("拣货中"); |
||||
|
outStorehouseMapper.updateById(outStorehouse); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getPickingList(PageResult pageResult) { |
||||
|
Page<Picking> page = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
|
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
|
||||
|
QueryWrapper<Picking> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.like(flag,"pickingId",pageResult.getQuery()); |
||||
|
page = pickingMapper.selectPage(page,queryWrapper); |
||||
|
|
||||
|
pageResult.setRows(page.getRecords()).setTotal((long) page.getRecords().size()); |
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void finish(Picking picking) { |
||||
|
pickingMapper.updateById(picking); |
||||
|
OutStorehouse outStorehouse = outStorehouseMapper.selectById(picking.getOutStorehouseId()); |
||||
|
outStorehouse.setStatus("已拣货"); |
||||
|
outStorehouseMapper.updateById(outStorehouse); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,8 @@ |
|||||
|
package com.wh.service.stock; |
||||
|
|
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
public interface StockService { |
||||
|
|
||||
|
PageResult getStockList(PageResult pageResult); |
||||
|
} |
@ -0,0 +1,29 @@ |
|||||
|
package com.wh.service.stock; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.mapper.stock.StockMapper; |
||||
|
import com.wh.pojo.Stock; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
@Service |
||||
|
public class StockServiceImpl implements StockService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private StockMapper stockMapper; |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
public PageResult getStockList(PageResult pageResult) { |
||||
|
Page<Stock> page = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
QueryWrapper<Stock> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.like(flag,"product_name",pageResult.getQuery()); |
||||
|
page = stockMapper.selectPage(page,queryWrapper); |
||||
|
pageResult.setTotal((long) page.getRecords().size()).setRows(page.getRecords()); |
||||
|
return pageResult; |
||||
|
} |
||||
|
} |
@ -0,0 +1,17 @@ |
|||||
|
package com.wh.service.storehousemanage; |
||||
|
|
||||
|
import com.wh.pojo.Remove; |
||||
|
import com.wh.vo.PageResult; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
public interface RemoveService { |
||||
|
Map<String, Object> getQuery(Remove remove); |
||||
|
|
||||
|
void addRemove(Remove remove); |
||||
|
|
||||
|
|
||||
|
PageResult getRemoveList(PageResult pageResult); |
||||
|
|
||||
|
void updataRemove(Remove remove); |
||||
|
} |
@ -0,0 +1,119 @@ |
|||||
|
package com.wh.service.storehousemanage; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.api.Api; |
||||
|
import com.wh.mapper.initial.LocationMapper; |
||||
|
import com.wh.mapper.initial.ProductMapper; |
||||
|
import com.wh.mapper.stock.StockMapper; |
||||
|
import com.wh.mapper.storehousemanage.RemoveMapper; |
||||
|
import com.wh.pojo.Location; |
||||
|
import com.wh.pojo.Product; |
||||
|
import com.wh.pojo.Remove; |
||||
|
import com.wh.pojo.Stock; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import net.sf.jsqlparser.statement.select.Select; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.*; |
||||
|
|
||||
|
@Service |
||||
|
public class RemoveServiceImpl implements RemoveService{ |
||||
|
|
||||
|
@Autowired |
||||
|
private RemoveMapper removeMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private StockMapper stockMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private LocationMapper locationMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ProductMapper productMapper; |
||||
|
|
||||
|
//获取可用的库存
|
||||
|
@Override |
||||
|
public Map<String, Object> getQuery(Remove remove) { |
||||
|
|
||||
|
boolean barCodeFlag = StringUtils.hasLength(remove.getBarCode()); |
||||
|
boolean fromLocationIdFlag = StringUtils.hasLength(remove.getFromLocationId()); |
||||
|
|
||||
|
//获取传入条件下的商品
|
||||
|
QueryWrapper<Stock> stockQueryWrapper = new QueryWrapper<>(); |
||||
|
stockQueryWrapper.eq(barCodeFlag,"bar_code",remove.getBarCode()) |
||||
|
.eq(fromLocationIdFlag,"location_id",remove.getFromLocationId()); |
||||
|
List<Stock> stocks = stockMapper.selectList(stockQueryWrapper); |
||||
|
|
||||
|
|
||||
|
|
||||
|
Set<String> barCodeList = new HashSet<>(); |
||||
|
Set<String> fromLocationIdList = new HashSet<>(); |
||||
|
Integer availableQuantity = 0; |
||||
|
|
||||
|
Map<String,Object> map = new HashMap<>(); |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
for (Stock stock : stocks){ |
||||
|
barCodeList.add(stock.getBarCode()); |
||||
|
fromLocationIdList.add(stock.getLocationId()); |
||||
|
} |
||||
|
|
||||
|
if (stocks.size() == 1){ |
||||
|
availableQuantity = stocks.get(0).getAvailableQuantity(); |
||||
|
} |
||||
|
|
||||
|
map.put("barCodeList",barCodeList); |
||||
|
map.put("fromLocationIdList",fromLocationIdList); |
||||
|
map.put("availableQuantity",availableQuantity); |
||||
|
|
||||
|
|
||||
|
return map; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addRemove(Remove remove) { |
||||
|
//设置商品名
|
||||
|
Product product = productMapper.selectById(remove.getBarCode()); |
||||
|
remove.setProductName(product.getName()); |
||||
|
|
||||
|
//设置创建时间
|
||||
|
remove.setCreateTime(new Api().getTime()); |
||||
|
|
||||
|
//修改库存
|
||||
|
Stock fromStock = stockMapper.selectById(remove.getFromLocationId()); |
||||
|
fromStock.setLockedQuantity(fromStock.getLockedQuantity()+remove.getCount()) |
||||
|
.setAvailableQuantity(fromStock.getAvailableQuantity() - remove.getCount()); |
||||
|
stockMapper.updateById(fromStock); |
||||
|
|
||||
|
|
||||
|
//添加记录
|
||||
|
removeMapper.insert(remove); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getRemoveList(PageResult pageResult) { |
||||
|
Page<Remove> page = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
QueryWrapper<Remove> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.like(flag,"remove_id",pageResult.getQuery()); |
||||
|
page = removeMapper.selectPage(page,queryWrapper); |
||||
|
pageResult.setTotal((long) page.getRecords().size()).setRows(page.getRecords()); |
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataRemove(Remove remove) { |
||||
|
if (remove.getStatus().equals("已审核")) { |
||||
|
remove.setCheckTime(new Api().getTime()); |
||||
|
}else if (remove.getStatus().equals("待审核")){ |
||||
|
remove.setCheckTime("").setCheckPerson(""); |
||||
|
} |
||||
|
removeMapper.updateById(remove); |
||||
|
} |
||||
|
} |
@ -0,0 +1,19 @@ |
|||||
|
package com.wh.service.storehousemanage; |
||||
|
|
||||
|
import com.wh.pojo.OnShelves; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.QueryInfo; |
||||
|
|
||||
|
import java.util.Map; |
||||
|
|
||||
|
public interface ShelvesService { |
||||
|
Map<String, Object> getQuery(QueryInfo queryInfo); |
||||
|
|
||||
|
void addShelves(OnShelves onShelves); |
||||
|
|
||||
|
PageResult getShelves(PageResult pageResult); |
||||
|
|
||||
|
void deleteShelves(String id); |
||||
|
|
||||
|
void updataShelves(OnShelves onShelves) throws Exception; |
||||
|
} |
@ -0,0 +1,295 @@ |
|||||
|
package com.wh.service.storehousemanage; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
||||
|
import com.wh.api.Api; |
||||
|
import com.wh.mapper.initial.LocationMapper; |
||||
|
import com.wh.mapper.initial.ProductMapper; |
||||
|
import com.wh.mapper.instorehouse.PurchaseMapper; |
||||
|
import com.wh.mapper.instorehouse.ReceivingMapper; |
||||
|
import com.wh.mapper.stock.StockMapper; |
||||
|
import com.wh.mapper.instorehouse.PutInMapper; |
||||
|
import com.wh.mapper.storehousemanage.ShelvesMapper; |
||||
|
import com.wh.pojo.*; |
||||
|
import com.wh.vo.PageResult; |
||||
|
import com.wh.vo.QueryInfo; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.util.StringUtils; |
||||
|
|
||||
|
import java.util.*; |
||||
|
|
||||
|
@Service |
||||
|
public class ShelvesServiceImpl implements ShelvesService{ |
||||
|
@Autowired |
||||
|
private ShelvesMapper shelvesMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private StockMapper stockMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private LocationMapper locationMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ProductMapper productMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private PutInMapper putInMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private PurchaseMapper purchaseMapper; |
||||
|
|
||||
|
@Autowired |
||||
|
private ReceivingMapper receivingMapper; |
||||
|
|
||||
|
|
||||
|
@Override |
||||
|
public Map<String, Object> getQuery(QueryInfo queryInfo) { |
||||
|
|
||||
|
QueryWrapper<Stock> stockQueryWrapper = new QueryWrapper<>(); |
||||
|
stockQueryWrapper.eq(StringUtils.hasLength(queryInfo.getBarCode()),"bar_code",queryInfo.getBarCode()) |
||||
|
.eq(StringUtils.hasLength(queryInfo.getFromLocationId()),"Location_id",queryInfo.getFromLocationId()) |
||||
|
.eq("status","待上架") |
||||
|
.select("bar_code","location_id","available_quantity"); |
||||
|
List<Stock> stockList = stockMapper.selectList(stockQueryWrapper); |
||||
|
|
||||
|
QueryWrapper<Location> locationQueryWrapper = new QueryWrapper<>(); |
||||
|
locationQueryWrapper.eq("status","空闲").ne("type","入库区").or().eq("status",queryInfo.getBarCode()); |
||||
|
|
||||
|
List<Location> locationList = locationMapper.selectList(locationQueryWrapper); |
||||
|
|
||||
|
Map<String,Object> map = new HashMap<>(); |
||||
|
Set<String> barCodeSet = new HashSet<>(); |
||||
|
Set<String> locationIdSet = new HashSet<>(); |
||||
|
Set<String> fromLocationIdSet = new HashSet<>(); |
||||
|
for (Stock stock : stockList){ |
||||
|
barCodeSet.add(stock.getBarCode()); |
||||
|
fromLocationIdSet.add(stock.getLocationId()); |
||||
|
} |
||||
|
|
||||
|
for (Location location : locationList){ |
||||
|
locationIdSet.add(location.getLocationId()); |
||||
|
} |
||||
|
|
||||
|
locationIdSet.remove(queryInfo.getFromLocationId()); |
||||
|
fromLocationIdSet.remove(queryInfo.getLocationId()); |
||||
|
|
||||
|
map.put("barCode",barCodeSet); |
||||
|
map.put("locationId",locationIdSet); |
||||
|
map.put("fromLocationId",fromLocationIdSet); |
||||
|
map.put("availableQuantity",0); |
||||
|
|
||||
|
|
||||
|
|
||||
|
if (stockList.size()==1 && queryInfo.getCount()!=null && queryInfo.getCount()>stockList.get(0).getAvailableQuantity()){ |
||||
|
return new HashMap<>(); |
||||
|
}if (stockList.size()==1){ |
||||
|
map.replace("availableQuantity",stockList.get(0).getAvailableQuantity()); |
||||
|
return map; |
||||
|
}else{ |
||||
|
return map; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void addShelves(OnShelves onShelves) { |
||||
|
QueryWrapper<Location> locationQueryWrapper = new QueryWrapper<>(); |
||||
|
String locationName = locationMapper.selectById(onShelves.getLocationId()).getName(); |
||||
|
String fromLocationName = locationMapper.selectById(onShelves.getFromLocationId()).getName(); |
||||
|
String productName = productMapper.selectById(onShelves.getBarCode()).getName(); |
||||
|
String createTime = new Api().getTime(); |
||||
|
|
||||
|
onShelves.setFromLocationName(fromLocationName) |
||||
|
.setLocationName(locationName) |
||||
|
.setProductName(productName) |
||||
|
.setCreateTime(createTime) |
||||
|
.setStatus("待审核") |
||||
|
.setCreateTime(new Api().getTime()); |
||||
|
|
||||
|
shelvesMapper.insert(onShelves); |
||||
|
|
||||
|
Stock stock = stockMapper.selectById(onShelves.getFromLocationId()); |
||||
|
QueryWrapper<InStorehouse> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq("location_id",onShelves.getFromLocationId()); |
||||
|
InStorehouse inStorehouse = putInMapper.selectOne(queryWrapper); |
||||
|
inStorehouse.setStatus("进行中"); |
||||
|
putInMapper.updateById(inStorehouse); |
||||
|
|
||||
|
stock.setAvailableQuantity( |
||||
|
stock.getAvailableQuantity()-onShelves.getCount() |
||||
|
).setLockedQuantity( |
||||
|
stock.getLockedQuantity()+onShelves.getCount() |
||||
|
); |
||||
|
|
||||
|
stockMapper.updateById(stock); |
||||
|
|
||||
|
Location location = locationMapper.selectById(onShelves.getLocationId()); |
||||
|
location.setStatus(onShelves.getBarCode()); |
||||
|
locationMapper.updateById(location); |
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public PageResult getShelves(PageResult pageResult) { |
||||
|
Page<OnShelves> page = new Page<>(pageResult.getPageNum(),pageResult.getPageSize()); |
||||
|
boolean flag = StringUtils.hasLength(pageResult.getQuery()); |
||||
|
QueryWrapper<OnShelves> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.like(flag,"shelves_id",pageResult.getQuery()); |
||||
|
|
||||
|
page = shelvesMapper.selectPage(page,queryWrapper); |
||||
|
|
||||
|
pageResult.setTotal((long) page.getRecords().size()).setRows(page.getRecords()); |
||||
|
return pageResult; |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void deleteShelves(String id) { |
||||
|
OnShelves onShelves = shelvesMapper.selectById(id); |
||||
|
|
||||
|
//判断库位是否空闲,修改状态
|
||||
|
QueryWrapper<OnShelves> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq("location_id",onShelves.getLocationId()); |
||||
|
List<OnShelves> list = shelvesMapper.selectList(queryWrapper); |
||||
|
if (list.size() == 1){ |
||||
|
Location location = locationMapper.selectById(onShelves.getLocationId()); |
||||
|
location.setStatus("空闲"); |
||||
|
locationMapper.updateById(location); |
||||
|
} |
||||
|
|
||||
|
//更新源货位数据
|
||||
|
Stock stock = stockMapper.selectById(onShelves.getFromLocationId()); |
||||
|
stock.setAvailableQuantity(stock.getAvailableQuantity() + onShelves.getCount()) |
||||
|
.setLockedQuantity(stock.getLockedQuantity() - onShelves.getCount()); |
||||
|
stockMapper.updateById(stock); |
||||
|
|
||||
|
shelvesMapper.deleteById(id); |
||||
|
} |
||||
|
|
||||
|
@Override |
||||
|
public void updataShelves(OnShelves onShelves) throws Exception { |
||||
|
|
||||
|
|
||||
|
if (onShelves.getStatus().equals("已审核")){ |
||||
|
check(onShelves); |
||||
|
onShelves.setCheckTime(new Api().getTime()); |
||||
|
}else if (onShelves.getStatus().equals("待审核")){ |
||||
|
cancelCheck(onShelves); |
||||
|
onShelves.setCheckTime("").setCheckPerson(""); |
||||
|
} |
||||
|
shelvesMapper.updateById(onShelves); |
||||
|
|
||||
|
Stock stock = stockMapper.selectById(onShelves.getFromLocationId()); |
||||
|
if (stock == null) return; |
||||
|
QueryWrapper<OnShelves> onShelvesQueryWrapper = new QueryWrapper<>(); |
||||
|
onShelvesQueryWrapper.eq("from_location_id",onShelves.getFromLocationId()).eq("status","已审核"); |
||||
|
List<OnShelves> onShelvesList = shelvesMapper.selectList(onShelvesQueryWrapper); |
||||
|
Integer lockedQuantity = 0; |
||||
|
for (OnShelves onShelves1 : onShelvesList){ |
||||
|
lockedQuantity += onShelves1.getCount(); |
||||
|
} |
||||
|
|
||||
|
if (stock.getAvailableQuantity()==0 && stock.getLockedQuantity() == lockedQuantity){ |
||||
|
deleteStock(onShelves.getFromLocationId()); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
public void deleteStock(String locationId){ |
||||
|
Stock stock = stockMapper.selectById(locationId); |
||||
|
QueryWrapper<InStorehouse> queryWrapper = new QueryWrapper<>(); |
||||
|
queryWrapper.eq("location_id",locationId); |
||||
|
InStorehouse inStorehouse = putInMapper.selectOne(queryWrapper); |
||||
|
if (stock.getLockedQuantity() == 0){ |
||||
|
inStorehouse.setStatus("已审核"); |
||||
|
} |
||||
|
stockMapper.deleteById(locationId); |
||||
|
|
||||
|
Location location = locationMapper.selectById(locationId); |
||||
|
location.setStatus("空闲"); |
||||
|
locationMapper.updateById(location); |
||||
|
|
||||
|
} |
||||
|
|
||||
|
public void check(OnShelves onShelves){ |
||||
|
Stock stock = stockMapper.selectById(onShelves.getFromLocationId()); |
||||
|
|
||||
|
|
||||
|
QueryWrapper<Stock> stockQueryWrapper = new QueryWrapper<>(); |
||||
|
stockQueryWrapper.eq("location_id",onShelves.getLocationId()); |
||||
|
Integer num = stockMapper.selectCount(stockQueryWrapper); |
||||
|
System.out.println(num); |
||||
|
Stock newStock; |
||||
|
if (num == 0) { |
||||
|
newStock = new Stock(); |
||||
|
newStock.setAvailableQuantity(onShelves.getCount()) |
||||
|
.setTotalQuantity(onShelves.getCount()) |
||||
|
.setBarCode(onShelves.getBarCode()) |
||||
|
.setLockedQuantity(0) |
||||
|
.setInStorehouseId(stock.getInStorehouseId()) |
||||
|
.setLocationId(onShelves.getLocationId()) |
||||
|
.setLocationName(onShelves.getLocationName()) |
||||
|
.setProductName(onShelves.getProductName()) |
||||
|
.setStatus("已上架"); |
||||
|
stockMapper.insert(newStock); |
||||
|
|
||||
|
|
||||
|
Location location = locationMapper.selectById(onShelves.getLocationId()); |
||||
|
location.setStatus(onShelves.getBarCode()); |
||||
|
locationMapper.updateById(location); |
||||
|
|
||||
|
}else { |
||||
|
newStock = stockMapper.selectById(onShelves.getLocationId()); |
||||
|
newStock.setTotalQuantity(onShelves.getCount()+newStock.getAvailableQuantity()) |
||||
|
.setAvailableQuantity(onShelves.getCount()+newStock.getAvailableQuantity()); |
||||
|
stockMapper.updateById(newStock); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
||||
|
public void cancelCheck(OnShelves onShelves) throws Exception { |
||||
|
//获取商品库存
|
||||
|
Stock stock2 = stockMapper.selectById(onShelves.getLocationId()); |
||||
|
//可用数量
|
||||
|
Integer availableQuantity = stock2.getAvailableQuantity()-onShelves.getCount(); |
||||
|
|
||||
|
if (stock2.getAvailableQuantity()<onShelves.getCount()) throw new Exception("数量不足") ; |
||||
|
|
||||
|
|
||||
|
QueryWrapper<Stock> stockQueryWrapper = new QueryWrapper<>(); |
||||
|
stockQueryWrapper.eq("location_id",onShelves.getFromLocationId()); |
||||
|
Stock stock = new Stock(); |
||||
|
Integer c = stockMapper.selectCount(stockQueryWrapper); |
||||
|
if (stockMapper.selectCount(stockQueryWrapper) == 0) { |
||||
|
InStorehouse inStorehouse = putInMapper.selectById(stock2.getInStorehouseId()); |
||||
|
Receiving receiving = receivingMapper.selectById(inStorehouse.getReceivingId()); |
||||
|
Purchase purchase = purchaseMapper.selectById(receiving.getPurchaseId()); |
||||
|
|
||||
|
stock.setInStorehouseId(stock2.getInStorehouseId()) |
||||
|
.setLocationId(onShelves.getFromLocationId()) |
||||
|
.setLocationName(onShelves.getFromLocationName()) |
||||
|
.setBarCode(stock2.getBarCode()) |
||||
|
.setProductName(stock2.getProductName()) |
||||
|
.setTotalQuantity(purchase.getCount()) |
||||
|
.setAvailableQuantity(0) |
||||
|
.setLockedQuantity(purchase.getCount()) |
||||
|
.setStatus("待上架"); |
||||
|
stockMapper.insert(stock); |
||||
|
} |
||||
|
|
||||
|
if ( availableQuantity == 0){ |
||||
|
stockMapper.deleteById(onShelves.getLocationId()); |
||||
|
Location location = locationMapper.selectById(onShelves.getLocationId()); |
||||
|
location.setStatus("空闲"); |
||||
|
locationMapper.updateById(location); |
||||
|
}else { |
||||
|
stock2.setTotalQuantity(stock2.getTotalQuantity()-stock2.getAvailableQuantity()+availableQuantity) |
||||
|
.setAvailableQuantity(availableQuantity); |
||||
|
stockMapper.updateById(stock2); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,21 @@ |
|||||
|
server: |
||||
|
port: 9050 |
||||
|
servlet: |
||||
|
context-path: / |
||||
|
spring: |
||||
|
datasource: |
||||
|
url: jdbc:mysql://127.0.0.1:3306/warehouse2?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true |
||||
|
username: root |
||||
|
password: root |
||||
|
|
||||
|
|
||||
|
#mybatis-plush配置 |
||||
|
mybatis-plus: |
||||
|
type-aliases-package: com.wh.pojo |
||||
|
mapper-locations: classpath:/mappers/*.xml |
||||
|
configuration: |
||||
|
map-underscore-to-camel-case: true |
||||
|
|
||||
|
logging: |
||||
|
level: |
||||
|
com.jt.mapper: debug |
@ -0,0 +1,7 @@ |
|||||
|
<?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.wh.mapper.UserMapper"> |
||||
|
|
||||
|
</mapper> |
@ -0,0 +1,11 @@ |
|||||
|
import com.wh.mapper.initial.LocationMapper; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.boot.test.context.SpringBootTest; |
||||
|
|
||||
|
@SpringBootTest |
||||
|
public class Test01 { |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,3 @@ |
|||||
|
> 1% |
||||
|
last 2 versions |
||||
|
not dead |
@ -0,0 +1,5 @@ |
|||||
|
[*.{js,jsx,ts,tsx,vue}] |
||||
|
indent_style = space |
||||
|
indent_size = 2 |
||||
|
trim_trailing_whitespace = true |
||||
|
insert_final_newline = true |
@ -0,0 +1,26 @@ |
|||||
|
module.exports = { |
||||
|
root: true, |
||||
|
|
||||
|
env: { |
||||
|
node: true |
||||
|
}, |
||||
|
|
||||
|
extends: [ |
||||
|
'plugin:vue/essential', |
||||
|
'@vue/standard' |
||||
|
], |
||||
|
|
||||
|
parserOptions: { |
||||
|
parser: 'babel-eslint' |
||||
|
}, |
||||
|
|
||||
|
rules: { |
||||
|
'no-console': 'off', |
||||
|
'no-debugger': 'off' |
||||
|
}, |
||||
|
|
||||
|
extends: [ |
||||
|
'plugin:vue/essential', |
||||
|
'@vue/standard' |
||||
|
] |
||||
|
} |
@ -0,0 +1,23 @@ |
|||||
|
.DS_Store |
||||
|
node_modules |
||||
|
/dist |
||||
|
|
||||
|
|
||||
|
# local env files |
||||
|
.env.local |
||||
|
.env.*.local |
||||
|
|
||||
|
# Log files |
||||
|
npm-debug.log* |
||||
|
yarn-debug.log* |
||||
|
yarn-error.log* |
||||
|
pnpm-debug.log* |
||||
|
|
||||
|
# Editor directories and files |
||||
|
.idea |
||||
|
.vscode |
||||
|
*.suo |
||||
|
*.ntvs* |
||||
|
*.njsproj |
||||
|
*.sln |
||||
|
*.sw? |
@ -0,0 +1,24 @@ |
|||||
|
# project_demo |
||||
|
|
||||
|
## Project setup |
||||
|
``` |
||||
|
npm install |
||||
|
``` |
||||
|
|
||||
|
### Compiles and hot-reloads for development |
||||
|
``` |
||||
|
npm run serve |
||||
|
``` |
||||
|
|
||||
|
### Compiles and minifies for production |
||||
|
``` |
||||
|
npm run build |
||||
|
``` |
||||
|
|
||||
|
### Lints and fixes files |
||||
|
``` |
||||
|
npm run lint |
||||
|
``` |
||||
|
|
||||
|
### Customize configuration |
||||
|
See [Configuration Reference](https://cli.vuejs.org/config/). |
@ -0,0 +1,14 @@ |
|||||
|
module.exports = { |
||||
|
presets: [ |
||||
|
'@vue/cli-plugin-babel/preset' |
||||
|
], |
||||
|
plugins: [ |
||||
|
[ |
||||
|
'component', |
||||
|
{ |
||||
|
libraryName: 'element-ui', |
||||
|
styleLibraryName: 'theme-chalk' |
||||
|
} |
||||
|
] |
||||
|
] |
||||
|
} |
File diff suppressed because it is too large
@ -0,0 +1,38 @@ |
|||||
|
{ |
||||
|
"name": "project_demo", |
||||
|
"version": "0.1.0", |
||||
|
"private": true, |
||||
|
"scripts": { |
||||
|
"serve": "vue-cli-service serve", |
||||
|
"build": "vue-cli-service build", |
||||
|
"lint": "vue-cli-service lint" |
||||
|
}, |
||||
|
"dependencies": { |
||||
|
"axios": "^0.21.1", |
||||
|
"core-js": "^3.6.5", |
||||
|
"echarts": "^5.1.1", |
||||
|
"element-ui": "^2.4.5", |
||||
|
"less-loader": "^5.0.0", |
||||
|
"vue": "^2.6.11", |
||||
|
"vue-quill-editor": "^3.0.6", |
||||
|
"vue-router": "^3.2.0" |
||||
|
}, |
||||
|
"devDependencies": { |
||||
|
"@vue/cli-plugin-babel": "~4.5.0", |
||||
|
"@vue/cli-plugin-eslint": "~4.5.0", |
||||
|
"@vue/cli-plugin-router": "~4.5.0", |
||||
|
"@vue/cli-service": "~4.5.0", |
||||
|
"@vue/eslint-config-standard": "^5.1.2", |
||||
|
"babel-eslint": "^10.1.0", |
||||
|
"babel-plugin-component": "^1.1.1", |
||||
|
"eslint": "^6.7.2", |
||||
|
"eslint-plugin-import": "^2.20.2", |
||||
|
"eslint-plugin-node": "^11.1.0", |
||||
|
"eslint-plugin-promise": "^4.2.1", |
||||
|
"eslint-plugin-standard": "^4.0.0", |
||||
|
"eslint-plugin-vue": "^6.2.2", |
||||
|
"less": "^4.1.1", |
||||
|
"vue-cli-plugin-element": "^1.0.1", |
||||
|
"vue-template-compiler": "^2.6.11" |
||||
|
} |
||||
|
} |
Some files were not shown because too many files changed in this diff
Loading…
Reference in new issue