diff --git a/ruoyi-ui/src/views/mall/ware/waresku/waresku-add-or-update.vue b/ruoyi-ui/src/views/mall/ware/waresku/waresku-add-or-update.vue
index 30b8170d..a9da3744 100644
--- a/ruoyi-ui/src/views/mall/ware/waresku/waresku-add-or-update.vue
+++ b/ruoyi-ui/src/views/mall/ware/waresku/waresku-add-or-update.vue
@@ -1,5 +1,6 @@
-
+
@@ -20,13 +21,13 @@
-
+
-
+
-
+
diff --git a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/PurchaseDetailController.java b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/PurchaseDetailController.java
index ff744aa0..c1fb3540 100644
--- a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/PurchaseDetailController.java
+++ b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/PurchaseDetailController.java
@@ -1,9 +1,13 @@
package com.xjs.mall.ware.controller;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
import com.xjs.mall.ware.entity.PurchaseDetailEntity;
import com.xjs.mall.ware.service.PurchaseDetailService;
import com.xjs.utils.PageUtils;
import com.xjs.mall.other.R;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -11,16 +15,16 @@ import java.util.Arrays;
import java.util.Map;
-
/**
- *
+ * 采购需求
*
* @author xiejs
* @email 1294405880@qq.com
- * @date 2022-03-15 09:56:19
+ * @since 2022-03-15 09:56:19
*/
@RestController
@RequestMapping("ware/purchasedetail")
+@Api(tags = "商城-仓库-采购需求")
public class PurchaseDetailController {
@Autowired
private PurchaseDetailService purchaseDetailService;
@@ -28,8 +32,9 @@ public class PurchaseDetailController {
/**
* 列表
*/
- @RequestMapping("/list")
- public R list(@RequestParam Map params){
+ @GetMapping("/list")
+ @ApiOperation("列表")
+ public R list(@RequestParam Map params) {
PageUtils page = purchaseDetailService.queryPage(params);
return R.ok().put("page", page);
@@ -40,8 +45,9 @@ public class PurchaseDetailController {
* 信息
*/
@RequestMapping("/info/{id}")
- public R info(@PathVariable("id") Long id){
- PurchaseDetailEntity purchaseDetail = purchaseDetailService.getById(id);
+ @ApiOperation("信息")
+ public R info(@PathVariable("id") Long id) {
+ PurchaseDetailEntity purchaseDetail = purchaseDetailService.getById(id);
return R.ok().put("purchaseDetail", purchaseDetail);
}
@@ -50,8 +56,10 @@ public class PurchaseDetailController {
* 保存
*/
@RequestMapping("/save")
- public R save(@RequestBody PurchaseDetailEntity purchaseDetail){
- purchaseDetailService.save(purchaseDetail);
+ @ApiOperation("保存")
+ @Log(title = "采购需求", businessType = BusinessType.INSERT)
+ public R save(@RequestBody PurchaseDetailEntity purchaseDetail) {
+ purchaseDetailService.save(purchaseDetail);
return R.ok();
}
@@ -60,8 +68,10 @@ public class PurchaseDetailController {
* 修改
*/
@RequestMapping("/update")
- public R update(@RequestBody PurchaseDetailEntity purchaseDetail){
- purchaseDetailService.updateById(purchaseDetail);
+ @ApiOperation("修改")
+ @Log(title = "采购需求", businessType = BusinessType.UPDATE)
+ public R update(@RequestBody PurchaseDetailEntity purchaseDetail) {
+ purchaseDetailService.updateById(purchaseDetail);
return R.ok();
}
@@ -70,8 +80,10 @@ public class PurchaseDetailController {
* 删除
*/
@RequestMapping("/delete")
- public R delete(@RequestBody Long[] ids){
- purchaseDetailService.removeByIds(Arrays.asList(ids));
+ @ApiOperation("删除")
+ @Log(title = "采购需求", businessType = BusinessType.DELETE)
+ public R delete(@RequestBody Long[] ids) {
+ purchaseDetailService.removeByIds(Arrays.asList(ids));
return R.ok();
}
diff --git a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareInfoController.java b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareInfoController.java
index a0634a15..86b61576 100644
--- a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareInfoController.java
+++ b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareInfoController.java
@@ -1,5 +1,7 @@
package com.xjs.mall.ware.controller;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
import com.xjs.business.api.domain.Area;
import com.xjs.mall.other.R;
import com.xjs.mall.ware.entity.WareInfoEntity;
@@ -76,6 +78,7 @@ public class WareInfoController extends MyBaseController {
*/
@PostMapping("/save")
@ApiOperation("保存")
+ @Log(title = "仓库信息", businessType = BusinessType.INSERT)
public R save(@Validated(AddGroup.class) @RequestBody WareInfoEntity wareInfo) {
wareInfoService.save(wareInfo);
@@ -87,6 +90,7 @@ public class WareInfoController extends MyBaseController {
*/
@PutMapping("/update")
@ApiOperation("修改")
+ @Log(title = "仓库信息", businessType = BusinessType.UPDATE)
public R update(@Validated(UpdateGroup.class)@RequestBody WareInfoEntity wareInfo) {
wareInfoService.updateById(wareInfo);
@@ -98,6 +102,7 @@ public class WareInfoController extends MyBaseController {
*/
@DeleteMapping("/delete")
@ApiOperation("删除")
+ @Log(title = "仓库信息", businessType = BusinessType.DELETE)
public R delete(@RequestBody Long[] ids) {
wareInfoService.removeByIds(Arrays.asList(ids));
diff --git a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareSkuController.java b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareSkuController.java
index 2d638fdd..6f7f7dbc 100644
--- a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareSkuController.java
+++ b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/controller/WareSkuController.java
@@ -1,25 +1,29 @@
package com.xjs.mall.ware.controller;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
import com.xjs.mall.ware.entity.WareSkuEntity;
import com.xjs.mall.ware.service.WareSkuService;
import com.xjs.utils.PageUtils;
import com.xjs.mall.other.R;
+import com.xjs.validation.group.AddGroup;
+import com.xjs.validation.group.UpdateGroup;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.Map;
-
/**
* 商品库存
*
* @author xiejs
* @email 1294405880@qq.com
- * @since 2022-03-15 09:56:19
+ * @since 2022-03-15 09:56:19
*/
@RestController
@RequestMapping("ware/waresku")
@@ -33,7 +37,7 @@ public class WareSkuController {
*/
@GetMapping("/list")
@ApiOperation("列表")
- public R list(@RequestParam Map params){
+ public R list(@RequestParam Map params) {
PageUtils page = wareSkuService.queryPage(params);
return R.ok().put("page", page);
@@ -43,10 +47,10 @@ public class WareSkuController {
/**
* 信息
*/
- @RequestMapping("/info/{id}")
+ @GetMapping("/info/{id}")
@ApiOperation("信息")
- public R info(@PathVariable("id") Long id){
- WareSkuEntity wareSku = wareSkuService.getById(id);
+ public R info(@PathVariable("id") Long id) {
+ WareSkuEntity wareSku = wareSkuService.getById(id);
return R.ok().put("wareSku", wareSku);
}
@@ -54,10 +58,11 @@ public class WareSkuController {
/**
* 保存
*/
- @RequestMapping("/save")
+ @PostMapping("/save")
@ApiOperation("保存")
- public R save(@RequestBody WareSkuEntity wareSku){
- wareSkuService.save(wareSku);
+ @Log(title = "商品库存", businessType = BusinessType.INSERT)
+ public R save(@Validated(AddGroup.class) @RequestBody WareSkuEntity wareSku) {
+ wareSkuService.save(wareSku);
return R.ok();
}
@@ -65,10 +70,11 @@ public class WareSkuController {
/**
* 修改
*/
- @RequestMapping("/update")
+ @PutMapping("/update")
@ApiOperation("修改")
- public R update(@RequestBody WareSkuEntity wareSku){
- wareSkuService.updateById(wareSku);
+ @Log(title = "商品库存", businessType = BusinessType.UPDATE)
+ public R update(@Validated(UpdateGroup.class) @RequestBody WareSkuEntity wareSku) {
+ wareSkuService.updateById(wareSku);
return R.ok();
}
@@ -76,10 +82,11 @@ public class WareSkuController {
/**
* 删除
*/
- @RequestMapping("/delete")
+ @DeleteMapping("/delete")
@ApiOperation("删除")
- public R delete(@RequestBody Long[] ids){
- wareSkuService.removeByIds(Arrays.asList(ids));
+ @Log(title = "商品库存", businessType = BusinessType.DELETE)
+ public R delete(@RequestBody Long[] ids) {
+ wareSkuService.removeByIds(Arrays.asList(ids));
return R.ok();
}
diff --git a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/entity/WareSkuEntity.java b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/entity/WareSkuEntity.java
index 088a3059..0c586a22 100644
--- a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/entity/WareSkuEntity.java
+++ b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/entity/WareSkuEntity.java
@@ -2,14 +2,19 @@ package com.xjs.mall.ware.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.xjs.validation.group.AddGroup;
+import com.xjs.validation.group.UpdateGroup;
+import lombok.Data;
+import javax.validation.constraints.Max;
+import javax.validation.constraints.Min;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
import java.io.Serializable;
-import java.util.Date;
-import lombok.Data;
/**
* 商品库存
- *
+ *
* @author xiejs
* @email 1294405880@qq.com
* @date 2022-03-15 09:56:19
@@ -17,32 +22,41 @@ import lombok.Data;
@Data
@TableName("wms_ware_sku")
public class WareSkuEntity implements Serializable {
- private static final long serialVersionUID = 1L;
+ private static final long serialVersionUID = 1L;
- /**
- * id
- */
- @TableId
- private Long id;
- /**
- * sku_id
- */
- private Long skuId;
- /**
- * 仓库id
- */
- private Long wareId;
- /**
- * 库存数
- */
- private Integer stock;
- /**
- * sku_name
- */
- private String skuName;
- /**
- * 锁定库存
- */
- private Integer stockLocked;
+ /**
+ * id
+ */
+ @TableId
+ private Long id;
+ /**
+ * sku_id
+ */
+ @NotNull(message = "sku_id不能为空", groups = {AddGroup.class, UpdateGroup.class})
+ private Long skuId;
+ /**
+ * 仓库id
+ */
+ @NotNull(message = "仓库id不能为空", groups = {AddGroup.class, UpdateGroup.class})
+ private Long wareId;
+ /**
+ * 库存数
+ */
+ @NotNull(message = "库存数不能为空", groups = {AddGroup.class, UpdateGroup.class})
+ @Min(value = 0,message = "库存不能小于零",groups = {AddGroup.class,UpdateGroup.class})
+ @Max(value = 9999999,message = "库存不能大于9999999",groups = {AddGroup.class,UpdateGroup.class})
+ private Integer stock;
+ /**
+ * sku_name
+ */
+ @NotBlank(message = "sku_name不能为空", groups = {AddGroup.class, UpdateGroup.class})
+ private String skuName;
+ /**
+ * 锁定库存
+ */
+ @NotNull(message = "锁定库存不能为空", groups = {AddGroup.class, UpdateGroup.class})
+ @Min(value = 0,message = "锁定库存不能小于零",groups = {AddGroup.class,UpdateGroup.class})
+ @Max(value = 9999999,message = "锁定库存不能大于9999999",groups = {AddGroup.class,UpdateGroup.class})
+ private Integer stockLocked;
}
diff --git a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/PurchaseDetailServiceImpl.java b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/PurchaseDetailServiceImpl.java
index 37cd2cc7..aa3ce98e 100644
--- a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/PurchaseDetailServiceImpl.java
+++ b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/PurchaseDetailServiceImpl.java
@@ -1,8 +1,9 @@
package com.xjs.mall.ware.service.impl;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.utils.StringUtils;
import com.xjs.mall.ware.dao.PurchaseDetailDao;
import com.xjs.mall.ware.entity.PurchaseDetailEntity;
import com.xjs.mall.ware.service.PurchaseDetailService;
@@ -18,12 +19,23 @@ public class PurchaseDetailServiceImpl extends ServiceImpl params) {
- IPage page = this.page(
- new Query().getPage(params),
- new QueryWrapper()
- );
+ LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
+
+ String key = (String) params.get(Query.KEY_NAME);
+ String status = (String) params.get("status");
+ String wareId = (String) params.get("wareId");
+
+ wrapper.and(StringUtils.isNotEmpty(key), w -> {
+ w.eq(PurchaseDetailEntity::getPurchaseId, key)
+ .or()
+ .eq(PurchaseDetailEntity::getSkuId, key);
+ })
+ .eq(StringUtils.isNotEmpty(status), PurchaseDetailEntity::getStatus, status)
+ .eq(StringUtils.isNotEmpty(wareId), PurchaseDetailEntity::getWareId, wareId);
+
+ IPage page = this.page(new Query().getPage(params), wrapper);
return new PageUtils(page);
}
-}
\ No newline at end of file
+}
diff --git a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/WareSkuServiceImpl.java b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/WareSkuServiceImpl.java
index 9869492d..8e226e4a 100644
--- a/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/WareSkuServiceImpl.java
+++ b/xjs-business/xjs-project-mall/mall-ware/src/main/java/com/xjs/mall/ware/service/impl/WareSkuServiceImpl.java
@@ -4,33 +4,55 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.utils.bean.BeanUtils;
import com.xjs.mall.ware.dao.WareSkuDao;
+import com.xjs.mall.ware.entity.WareInfoEntity;
import com.xjs.mall.ware.entity.WareSkuEntity;
+import com.xjs.mall.ware.service.WareInfoService;
import com.xjs.mall.ware.service.WareSkuService;
+import com.xjs.mall.ware.vo.WareSkuVo;
import com.xjs.utils.PageUtils;
import com.xjs.utils.Query;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
@Service("wareSkuService")
public class WareSkuServiceImpl extends ServiceImpl implements WareSkuService {
+ @Autowired
+ private WareInfoService wareInfoService;
+
@Override
public PageUtils queryPage(Map params) {
LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>();
String key = (String) params.get(Query.KEY_NAME);
- if (StringUtils.isNotEmpty(key)) {
- wrapper.eq(WareSkuEntity::getSkuName, key).or()
- .eq(WareSkuEntity::getSkuId, key).or()
- .eq(WareSkuEntity::getWareId, key);
- }
-
- IPage page = this.page(new Query().getPage(params),wrapper);
-
- return new PageUtils(page);
+ String skuId = (String) params.get("skuId");
+ String wareId = (String) params.get("wareId");
+ wrapper.like(StringUtils.isNotEmpty(key), WareSkuEntity::getSkuName, key).or()
+ .eq(StringUtils.isNotEmpty(skuId), WareSkuEntity::getSkuId, skuId).or()
+ .eq(StringUtils.isNotEmpty(wareId), WareSkuEntity::getWareId, wareId);
+
+ IPage page = this.page(new Query().getPage(params), wrapper);
+
+ List