库存服务
本章开始编写库存服务相关的内容,首先把库存的微服务添加到注册中心中,添加配置文件:
spring:
datasource:
username: root
password: 123456
url: jdbc:mysql://IP地址/mall_wms?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
driver-class-name: com.mysql.cj.jdbc.Driver
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
application:
name: mall-ware
mybatis-plus:
mapper-locations: classpath:/mapper/**/*.xml
global-config:
db-config:
id-type: auto
server:
port: 11000
同时主程序开启注册发现的注解:
package com.lastingwar.mall.ware;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@EnableDiscoveryClient
@SpringBootApplication
public class MallWareApplication {
public static void main(String[] args) {
SpringApplication.run(MallWareApplication.class, args);
}
}
之后启动ware的微服务:
之后配置网关的路由规则
来到gateway的配置文件:
#库存服务
- id: ware_route
uri: lb://mall-ware
predicates:
- Path=/api/ware/**
filters:
- RewritePath=/api/(?<segment>.*),/$\{segment}
之后重启服务,能够正常访问前端的仓库页面:
同时逆向生成的代码,使用给出的添加修改删除功能也是可行的。
添加仓库查询系统
完成仓库维护中的模糊查询功能,来到查询请求对应的响应
@RestController
@RequestMapping("ware/wareinfo")
public class WareInfoController {
@Autowired
private WareInfoService wareInfoService;
/**
* 列表
*/
@RequestMapping("/list")
//@RequiresPermissions("ware:wareinfo:list")
public R list(@RequestParam Map<String, Object> params){
PageUtils page = wareInfoService.queryPage(params);
return R.ok().put("page", page);
}
进入到对应.queryPage(params),对方法进行修改,能够携带关键字的模糊查询:
/**
*
* @param params 请求内容
* @return 携带关键字模糊查询的分页内容
*/
@Override
public PageUtils queryPage(Map<String, Object> params) {
QueryWrapper<WareInfoEntity> wareInfoEntityQueryWrapper = new QueryWrapper<>();
String key = (String) params.get("key");
if(!StringUtils.isEmpty(key)){
wareInfoEntityQueryWrapper.eq("id",key).or()
.like("name",key)
.or().like("address",key)
.or().like("areacode",key);
}
IPage<WareInfoEntity> page = this.page(
new Query<WareInfoEntity>().getPage(params),
wareInfoEntityQueryWrapper
);
return new PageUtils(page);
}
查询库存
对应前端页面:
编写对应库存产品的查询功能,对应API文档:
02、查询商品库存
GET
/ware/waresku/list
请求参数
{
page: 1,//当前页码
limit: 10,//每页记录数
sidx: 'id',//排序字段
order: 'asc/desc',//排序方式
wareId: 123,//仓库id
skuId: 123//商品id
}
分页数据
响应数据
{