+ * 设置发号器生成规则
+ */
+@Configuration
+public class SequenceConfig {
+
+ @Bean
+ public Sequence sequence(DataSource dataSource) {
+ return DbSeqBuilder
+ .create()
+ .bizName(new PjcloudBizName())// 定义切片规则
+ .dataSource(dataSource) // 注入数据源
+ .step(1000) // 每次获取数据的个数
+ .retryTimes(3) // 重试次数
+ .tableName("pjcloud_sequence") // 存储表名信息
+ .build();
+ }
+}
+
diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpCgPlanController.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpCgPlanController.java
index ac4e71798..c1f0a9371 100644
--- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpCgPlanController.java
+++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpCgPlanController.java
@@ -68,7 +68,7 @@ public class SmErpCgPlanController {
* @param page 分页对象
* @return
*/
- @Operation(summary = "分页查询" , description = "分页查询" )
+ @Operation(summary = "采购计划选择商品分页数据" , description = "采购计划选择商品分页数据" )
@GetMapping("/erpSpuPage" )
@PreAuthorize("@pms.hasPermission('supermarket_smErpInventoryRecords_view')" )
public R getErpSpuPage(@ParameterObject Page page, @ParameterObject ErpCgPlanDTO erpCgPlanDTO) {
diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpPurchaseController.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpCommonController.java
similarity index 85%
rename from pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpPurchaseController.java
rename to pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpCommonController.java
index e53da1458..b078dc765 100644
--- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpPurchaseController.java
+++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpCommonController.java
@@ -8,6 +8,8 @@ import com.bsd.pjcloud.common.core.util.BeanUtils;
import com.bsd.pjcloud.common.core.util.R;
import com.bsd.pjcloud.common.excel.annotation.ResponseExcel;
import com.bsd.pjcloud.common.log.annotation.SysLog;
+import com.bsd.pjcloud.common.sequence.sequence.Sequence;
+import com.bsd.pjcloud.supermarket.constant.InventoryTypeEnum;
import com.bsd.pjcloud.supermarket.constant.OrderTypeEnum;
import com.bsd.pjcloud.supermarket.dto.cgplan.ErpCgPlanDTO;
import com.bsd.pjcloud.supermarket.dto.cgplan.ErpCgPlanSaveDTO;
@@ -19,6 +21,7 @@ import io.swagger.v3.oas.annotations.security.SecurityRequirement;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.RequiredArgsConstructor;
import org.springdoc.core.annotations.ParameterObject;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
@@ -26,33 +29,38 @@ import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
- * 采购计划
+ * 超市公共接口
*
* @author pjcloud
* @date 2025-02-10 12:15:37
*/
@RestController
@RequiredArgsConstructor
-@RequestMapping("/smErpPurchase" )
+@RequestMapping("/sm/common" )
@Tag(description = "smErpPurchase" , name = "采购计划" )
@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
-public class SmErpPurchaseController {
+public class SmErpCommonController {
private final SmErpInventoryRecordsService smErpInventoryRecordsService;
private final SmErpSpuService smErpSpuService;
+ @Autowired
+ private Sequence sequence;
+
/**
* 采购计划选择商品分页数据
* 分页查询
- * @param page 分页对象
+ * @param type @link InventoryTypeEnum
* @return
*/
- @Operation(summary = "分页查询" , description = "分页查询" )
- @GetMapping("/erpSpuPage" )
- @PreAuthorize("@pms.hasPermission('supermarket_smErpInventoryRecords_view')" )
- public R getErpSpuPage(@ParameterObject Page page, @ParameterObject ErpCgPlanDTO erpCgPlanDTO) {
- return R.ok(smErpSpuService.getErpSpuPage(page, erpCgPlanDTO));
+ @Operation(summary = "获取业务流水编号" , description = "获取业务流水编号" )
+ @GetMapping("/getSequence")
+ public R getErpSpuPage(@RequestParam("type")Integer type) {
+ String valueByType = InventoryTypeEnum.getValueByType(type);
+ String s = sequence.nextNo();
+ String result = valueByType + "-" + s;
+ return R.ok(result);
}
diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java
index 90c1a9269..17a5b11c5 100644
--- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java
+++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpSpuController.java
@@ -15,11 +15,9 @@ import com.bsd.pjcloud.supermarket.dto.SupermarketSpuQueryDTO;
import com.bsd.pjcloud.supermarket.dto.SupermarketSpuUpdateStockReqDTO;
import com.bsd.pjcloud.supermarket.entity.SmErpAuxiliaryCodeEntity;
import com.bsd.pjcloud.supermarket.entity.SmErpSpuEntity;
+import com.bsd.pjcloud.supermarket.entity.SmErpStockEntity;
import com.bsd.pjcloud.supermarket.entity.SmErpUnitEntity;
-import com.bsd.pjcloud.supermarket.service.SmErpAuxiliaryCodeService;
-import com.bsd.pjcloud.supermarket.service.SmErpSpuService;
-import com.bsd.pjcloud.supermarket.service.SmErpUnitService;
-import com.bsd.pjcloud.supermarket.service.SmSpuService;
+import com.bsd.pjcloud.supermarket.service.*;
import com.bsd.pjcloud.supermarket.vo.app.SupermarketAppSpuVo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -56,6 +54,8 @@ public class SmErpSpuController {
private final SmSpuService smSpuService;
+ private final SmErpStockService smErpStockService;
+
/**
* 分页查询
* @param page 分页对象
@@ -102,6 +102,11 @@ public class SmErpSpuController {
@PreAuthorize("@pms.hasPermission('supermarket_supermarketSpu_view')" )
public R getById(@PathVariable("id" ) Long id) {
SmErpSpuEntity smErpSpuEntity = smErpSpuService.getById(id);
+ //库存
+ LambdaQueryWrapper