diff --git a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/constant/StockTypeEnum.java b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/constant/StockTypeEnum.java new file mode 100644 index 000000000..1e7d9ce3c --- /dev/null +++ b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/constant/StockTypeEnum.java @@ -0,0 +1,22 @@ +package com.bsd.pjcloud.canteen.constant; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 库存类型 + */ +@AllArgsConstructor +@Getter +public enum StockTypeEnum { + + MATERIAL("1", "食材"), + DISH("2", "菜品"), + ONLINE_DISH("3", "在线菜品库存") + ; + private final String type; + private final String description; + + + +} diff --git a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/entity/CanteenStockEntity.java b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/entity/CanteenStockEntity.java index 195537222..86095c0b1 100644 --- a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/entity/CanteenStockEntity.java +++ b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/entity/CanteenStockEntity.java @@ -112,4 +112,7 @@ public class CanteenStockEntity extends Model { */ @Schema(description="租户编号") private Long tenantId; + + @Schema(description="部门id") + private Long deptId; } \ No newline at end of file diff --git a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/vo/erp/CanteenSpuStockVO.java b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/vo/erp/CanteenSpuStockVO.java index 04d02ea29..4db494a9a 100644 --- a/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/vo/erp/CanteenSpuStockVO.java +++ b/pjcloud-canteen/pjcloud-canteen-api/src/main/java/com/bsd/pjcloud/canteen/vo/erp/CanteenSpuStockVO.java @@ -41,4 +41,16 @@ public class CanteenSpuStockVO { */ @Schema(description = "当前库存") private Double currentStock; + + /** + * 库存上限 + */ + @Schema(description="库存上限") + private Integer inventoryUpperLimit; + + /** + * 库存下限 + */ + @Schema(description="库存下限") + private Integer inventoryLowerLimit; } \ No newline at end of file diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenSpuController.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenSpuController.java index 1c079198c..2b250f375 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenSpuController.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenSpuController.java @@ -6,10 +6,14 @@ import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bsd.pjcloud.canteen.constant.StockTypeEnum; import com.bsd.pjcloud.canteen.dto.CanteenDailySpuDTO; import com.bsd.pjcloud.canteen.dto.CanteenSpuUpdateStockReqDTO; import com.bsd.pjcloud.canteen.entity.CanteenErpMaterialEntity; import com.bsd.pjcloud.canteen.entity.CanteenOnlineSpuEntity; +import com.bsd.pjcloud.canteen.entity.CanteenStockEntity; +import com.bsd.pjcloud.canteen.mapper.CanteenStockMapper; +import com.bsd.pjcloud.canteen.service.CanteenStockService; import com.bsd.pjcloud.canteen.vo.erp.CanteenSpuSimpleVO; import com.bsd.pjcloud.canteen.vo.erp.CanteenSpuStockVO; import com.bsd.pjcloud.common.core.util.R; @@ -46,6 +50,8 @@ public class CanteenSpuController { private final CanteenSpuService canteenSpuService; + private final CanteenStockService canteenStockService; + /** * 分页查询 * @@ -121,7 +127,17 @@ public class CanteenSpuController { @PostMapping @PreAuthorize("@pms.hasPermission('canteen_canteenSpu_add')") public R save(@RequestBody CanteenSpuEntity canteenSpu) { - canteenSpu.setDeptId(SecurityUtils.getUser().getDeptId()); + Long deptId = SecurityUtils.getUser().getDeptId(); + canteenSpu.setDeptId(deptId); + CanteenStockEntity canteenStockEntity = new CanteenStockEntity(); + canteenStockEntity.setItemId(canteenSpu.getId()); + canteenStockEntity.setItemType(StockTypeEnum.DISH.getType()); + canteenStockEntity.setBaseStock(0D); + canteenStockEntity.setInventoryUpperLimit(0); + canteenStockEntity.setInventoryLowerLimit(0); + canteenStockEntity.setCurrentStock(0D); + canteenStockEntity.setDeptId(deptId); + canteenStockService.save(canteenStockEntity); return R.ok(canteenSpuService.save(canteenSpu)); } diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenStockController.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenStockController.java index 93a7a04e9..f8cd9c027 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenStockController.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenStockController.java @@ -124,7 +124,7 @@ public class CanteenStockController { @PostMapping("/canteen/ansync") - @PreAuthorize("@pms.hasPermission('canteen_canteenSpu_add')") + @PreAuthorize("@pms.hasPermission('canteen_canteenStock_add')" ) public R ansyncStock() { List list = canteenSpuService.list(); @@ -135,6 +135,7 @@ public class CanteenStockController { canteenStockEntity.setBaseStock(0D); canteenStockEntity.setItemType("2"); canteenStockEntity.setItemId(canteenSpuEntity.getId()); + canteenStockEntity.setDeptId(canteenSpuEntity.getDeptId()); canteenStockEntity.setInventoryUpperLimit(0); canteenStockEntity.setInventoryLowerLimit(0); canteenStockService.save(canteenStockEntity); diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenSpuService.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenSpuService.java index 5302e2561..bf1f2bbb2 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenSpuService.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenSpuService.java @@ -10,6 +10,8 @@ import com.bsd.pjcloud.canteen.vo.erp.CanteenSpuSimpleVO; import com.bsd.pjcloud.canteen.vo.erp.CanteenSpuStockVO; import com.bsd.pjcloud.common.core.util.R; +import java.util.List; + public interface CanteenSpuService extends IService { @@ -64,4 +66,6 @@ public interface CanteenSpuService extends IService { * @return 分页菜品库存VO */ Page erpPageScope(Page page, CanteenSpuEntity canteenSpu); + + } \ No newline at end of file diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java index 72ecfb178..51183c9ac 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java @@ -188,7 +188,6 @@ public class CanteenSpuServiceImpl extends ServiceImpl + \ No newline at end of file