生成单号规则处理;+
This commit is contained in:
+38
-66
@@ -147,44 +147,44 @@ public class ReservationStockInOrderDomainService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insert(ReservationStockInOrderDO stockInOrderDO) {
|
||||
// if (stockInOrderDO.getInOrderNumber() == null) {
|
||||
if (stockInOrderDO.getInOrderNumber() == null) {
|
||||
|
||||
//设置入库单号
|
||||
Long warehouseId = stockInOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getInOrderNoPrefix();
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "RK";
|
||||
}
|
||||
Long organizationId = stockInOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockInOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = reserveStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(datePrefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = reserveStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(prefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
}
|
||||
// Long warehouseId = stockInOrderDO.getWarehouseId();
|
||||
// AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
// if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
// throw new ServiceException("获取仓库信息失败");
|
||||
// }
|
||||
// //仓库信息
|
||||
// WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
// String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
// String prefix = warehouseFeignPO.getInOrderNoPrefix();
|
||||
// if (prefix == null || prefix.isEmpty()) {
|
||||
// prefix = "RK";
|
||||
// }
|
||||
// Long organizationId = stockInOrderDO.getOrganizationId();
|
||||
// Long warehouseIdForCount = stockInOrderDO.getWarehouseId();
|
||||
// if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
// //日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
// String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
// String datePrefix = prefix + dateStr;
|
||||
// List<String> orderNumbers = reserveStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockInOrderDO.setInOrderNumber(datePrefix + seq);
|
||||
// stockInOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
// } else {
|
||||
// //历史累加: 前缀 + 历史最大序号+1
|
||||
// List<String> orderNumbers = reserveStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockInOrderDO.setInOrderNumber(prefix + seq);
|
||||
// stockInOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
// }
|
||||
|
||||
// stockInOrderDO.setInOrderNumber(generateReserveOrderNumber());
|
||||
// stockInOrderDO.setBusinessOrderNo(stockInOrderDO.getInOrderNumber());
|
||||
// }
|
||||
stockInOrderDO.setInOrderNumber(generateReserveOrderNumber());
|
||||
stockInOrderDO.setBusinessOrderNo(stockInOrderDO.getInOrderNumber());
|
||||
}
|
||||
// //设置默认值
|
||||
// setDefaultValues(stockInOrderDO);
|
||||
// //设置物料信息
|
||||
@@ -213,37 +213,9 @@ public class ReservationStockInOrderDomainService {
|
||||
public Boolean batchInsert(List<ReservationStockInOrderDO> stockInOrderDOList) {
|
||||
for (ReservationStockInOrderDO stockInOrderDO : stockInOrderDOList){
|
||||
|
||||
//设置入库单号
|
||||
Long warehouseId = stockInOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getInOrderNoPrefix();
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "RK";
|
||||
}
|
||||
Long organizationId = stockInOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockInOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = reserveStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(datePrefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = reserveStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(prefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
if (stockInOrderDO.getInOrderNumber() == null) {
|
||||
stockInOrderDO.setInOrderNumber(generateReserveOrderNumber());
|
||||
stockInOrderDO.setBusinessOrderNo(stockInOrderDO.getInOrderNumber());
|
||||
}
|
||||
|
||||
// //设置物料信息
|
||||
|
||||
+41
-69
@@ -157,42 +157,45 @@ public class ReservationStockOutOrderDomainService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insert(ReservationStockOutOrderDO stockOutOrderDO) {
|
||||
|
||||
if (stockOutOrderDO.getOutOrderNumber() == null) {
|
||||
stockOutOrderDO.setOutOrderNumber(generateReserveOrderNumber());
|
||||
stockOutOrderDO.setBusinessOrderNo(stockOutOrderDO.getOutOrderNumber());
|
||||
}
|
||||
//设置单号
|
||||
Long warehouseId = stockOutOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getOutOrderNoPrefix();
|
||||
if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) {
|
||||
prefix = warehouseFeignPO.getSampleOutOrderNoPrefix();
|
||||
}
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "CK";
|
||||
}
|
||||
Long organizationId = stockOutOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockOutOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = reserveStockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(datePrefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = reserveStockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(prefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
}
|
||||
// Long warehouseId = stockOutOrderDO.getWarehouseId();
|
||||
// AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
// if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
// throw new ServiceException("获取仓库信息失败");
|
||||
// }
|
||||
// //仓库信息
|
||||
// WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
// String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
// String prefix = warehouseFeignPO.getOutOrderNoPrefix();
|
||||
// if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) {
|
||||
// prefix = warehouseFeignPO.getSampleOutOrderNoPrefix();
|
||||
// }
|
||||
// if (prefix == null || prefix.isEmpty()) {
|
||||
// prefix = "CK";
|
||||
// }
|
||||
// Long organizationId = stockOutOrderDO.getOrganizationId();
|
||||
// Long warehouseIdForCount = stockOutOrderDO.getWarehouseId();
|
||||
// if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
// //日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
// String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
// String datePrefix = prefix + dateStr;
|
||||
// List<String> orderNumbers = reserveStockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockOutOrderDO.setOutOrderNumber(datePrefix + seq);
|
||||
// stockOutOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
// } else {
|
||||
// //历史累加: 前缀 + 历史最大序号+1
|
||||
// List<String> orderNumbers = reserveStockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockOutOrderDO.setOutOrderNumber(prefix + seq);
|
||||
// stockOutOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
// }
|
||||
|
||||
// 与 update / batchInsert 一致:前端传计划数量为 quantity,非 outboundQuantity
|
||||
setMaterialDetailInfo(stockOutOrderDO);
|
||||
@@ -235,40 +238,9 @@ public class ReservationStockOutOrderDomainService {
|
||||
for (ReservationStockOutOrderDO stockOutOrderDO : stockOutOrderDOList){
|
||||
|
||||
|
||||
//设置单号
|
||||
Long warehouseId = stockOutOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getOutOrderNoPrefix();
|
||||
if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) {
|
||||
prefix = warehouseFeignPO.getSampleOutOrderNoPrefix();
|
||||
}
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "CK";
|
||||
}
|
||||
Long organizationId = stockOutOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockOutOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = reserveStockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(datePrefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = reserveStockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(prefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
if (stockOutOrderDO.getOutOrderNumber() == null) {
|
||||
stockOutOrderDO.setOutOrderNumber(generateReserveOrderNumber());
|
||||
stockOutOrderDO.setBusinessOrderNo(stockOutOrderDO.getOutOrderNumber());
|
||||
}
|
||||
|
||||
//设置物料信息
|
||||
|
||||
+67
-62
@@ -103,39 +103,40 @@ public class ReserveStockInOrderDomainService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insert(ReserveStockInOrderDO stockInOrderDO) {
|
||||
// if (stockInOrderDO.getInOrderNumber() == null) {
|
||||
Long warehouseId = stockInOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getInOrderNoPrefix();
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "RK";
|
||||
}
|
||||
Long organizationId = stockInOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockInOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(datePrefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(prefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
}
|
||||
if (stockInOrderDO.getInOrderNumber() == null) {
|
||||
stockInOrderDO.setInOrderNumber(generateReserveOrderNumber());
|
||||
// Long warehouseId = stockInOrderDO.getWarehouseId();
|
||||
// AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
// if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
// throw new ServiceException("获取仓库信息失败");
|
||||
// }
|
||||
// //仓库信息
|
||||
// WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
// String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
// String prefix = warehouseFeignPO.getInOrderNoPrefix();
|
||||
// if (prefix == null || prefix.isEmpty()) {
|
||||
// prefix = "RK";
|
||||
// }
|
||||
// Long organizationId = stockInOrderDO.getOrganizationId();
|
||||
// Long warehouseIdForCount = stockInOrderDO.getWarehouseId();
|
||||
// if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
// //日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
// String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
// String datePrefix = prefix + dateStr;
|
||||
// List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockInOrderDO.setInOrderNumber(datePrefix + seq);
|
||||
// stockInOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
// } else {
|
||||
// //历史累加: 前缀 + 历史最大序号+1
|
||||
// List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockInOrderDO.setInOrderNumber(prefix + seq);
|
||||
// stockInOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
// }
|
||||
}
|
||||
// //设置默认值
|
||||
// setDefaultValues(stockInOrderDO);
|
||||
// //设置物料信息
|
||||
@@ -166,37 +167,41 @@ public class ReserveStockInOrderDomainService {
|
||||
*/
|
||||
public Boolean batchInsert(List<ReserveStockInOrderDO> stockInOrderDOList) {
|
||||
for (ReserveStockInOrderDO stockInOrderDO : stockInOrderDOList){
|
||||
Long warehouseId = stockInOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getInOrderNoPrefix();
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "RK";
|
||||
}
|
||||
Long organizationId = stockInOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockInOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(datePrefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockInOrderDO.setInOrderNumber(prefix + seq);
|
||||
stockInOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
String inOrderNumber = stockInOrderDO.getInOrderNumber();
|
||||
if (stockInOrderDO.getInOrderNumber() == null){
|
||||
stockInOrderDO.setInOrderNumber(generateReserveOrderNumber());
|
||||
}
|
||||
// Long warehouseId = stockInOrderDO.getWarehouseId();
|
||||
// AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
// if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
// throw new ServiceException("获取仓库信息失败");
|
||||
// }
|
||||
// //仓库信息
|
||||
// WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
// String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
// String prefix = warehouseFeignPO.getInOrderNoPrefix();
|
||||
// if (prefix == null || prefix.isEmpty()) {
|
||||
// prefix = "RK";
|
||||
// }
|
||||
// Long organizationId = stockInOrderDO.getOrganizationId();
|
||||
// Long warehouseIdForCount = stockInOrderDO.getWarehouseId();
|
||||
// if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
// //日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
// String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
// String datePrefix = prefix + dateStr;
|
||||
// List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockInOrderDO.setInOrderNumber(datePrefix + seq);
|
||||
// stockInOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
// } else {
|
||||
// //历史累加: 前缀 + 历史最大序号+1
|
||||
// List<String> orderNumbers = reservationStockInOrderMapper.getMaxStockInOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockInOrderDO.setInOrderNumber(prefix + seq);
|
||||
// stockInOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
// }
|
||||
// //设置物料信息
|
||||
// setMaterialDetailInfo(stockInOrderDO);
|
||||
// //统计总物料种数
|
||||
|
||||
+39
-68
@@ -124,41 +124,44 @@ public class ReserveStockOutOrderDomainService {
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean insert(ReserveStockOutOrderDO stockOutOrderDO) {
|
||||
if (stockOutOrderDO.getOutOrderNumber() == null) {
|
||||
stockOutOrderDO.setOutOrderNumber(generateReserveOrderNumber());
|
||||
}
|
||||
//设置单号
|
||||
Long warehouseId = stockOutOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getOutOrderNoPrefix();
|
||||
if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) {
|
||||
prefix = warehouseFeignPO.getSampleOutOrderNoPrefix();
|
||||
}
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "CK";
|
||||
}
|
||||
Long organizationId = stockOutOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockOutOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = stockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(datePrefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = stockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(prefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
}
|
||||
// Long warehouseId = stockOutOrderDO.getWarehouseId();
|
||||
// AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
// if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
// throw new ServiceException("获取仓库信息失败");
|
||||
// }
|
||||
// //仓库信息
|
||||
// WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
// String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
// String prefix = warehouseFeignPO.getOutOrderNoPrefix();
|
||||
// if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) {
|
||||
// prefix = warehouseFeignPO.getSampleOutOrderNoPrefix();
|
||||
// }
|
||||
// if (prefix == null || prefix.isEmpty()) {
|
||||
// prefix = "CK";
|
||||
// }
|
||||
// Long organizationId = stockOutOrderDO.getOrganizationId();
|
||||
// Long warehouseIdForCount = stockOutOrderDO.getWarehouseId();
|
||||
// if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
// //日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
// String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
// String datePrefix = prefix + dateStr;
|
||||
// List<String> orderNumbers = stockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockOutOrderDO.setOutOrderNumber(datePrefix + seq);
|
||||
// stockOutOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
// } else {
|
||||
// //历史累加: 前缀 + 历史最大序号+1
|
||||
// List<String> orderNumbers = stockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
// int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
// String seq = String.format("%03d", maxSeq + 1);
|
||||
// stockOutOrderDO.setOutOrderNumber(prefix + seq);
|
||||
// stockOutOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
// }
|
||||
|
||||
|
||||
// 与 update / batchInsert 一致:前端传计划数量为 quantity,非 outboundQuantity
|
||||
@@ -188,40 +191,8 @@ public class ReserveStockOutOrderDomainService {
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean batchInsert(List<ReserveStockOutOrderDO> stockOutOrderDOList) {
|
||||
for (ReserveStockOutOrderDO stockOutOrderDO : stockOutOrderDOList){
|
||||
//设置单号
|
||||
Long warehouseId = stockOutOrderDO.getWarehouseId();
|
||||
AjaxResult ajaxResult = systemServiceFeign.getWarehouseInfoByWarehouseId(warehouseId);
|
||||
if (!"200".equals(String.valueOf(ajaxResult.get("code")))) {
|
||||
throw new ServiceException("获取仓库信息失败");
|
||||
}
|
||||
//仓库信息
|
||||
WarehouseFeignPO warehouseFeignPO = com.alibaba.fastjson.JSON.parseObject(com.alibaba.fastjson2.JSONObject.toJSONString(ajaxResult.get("data")), WarehouseFeignPO.class);
|
||||
String orderNoGenerateRule = warehouseFeignPO.getOrderNoGenerateRule();
|
||||
String prefix = warehouseFeignPO.getOutOrderNoPrefix();
|
||||
if ("yang_pin_chu_ku".equals(stockOutOrderDO.getBusinessType())) {
|
||||
prefix = warehouseFeignPO.getSampleOutOrderNoPrefix();
|
||||
}
|
||||
if (prefix == null || prefix.isEmpty()) {
|
||||
prefix = "CK";
|
||||
}
|
||||
Long organizationId = stockOutOrderDO.getOrganizationId();
|
||||
Long warehouseIdForCount = stockOutOrderDO.getWarehouseId();
|
||||
if (orderNoGenerateRule != null && "0".equals(orderNoGenerateRule)) {
|
||||
//日期累加: 前缀 + 当前日期yymmdd + 当天最大序号+1
|
||||
String dateStr = new SimpleDateFormat("yyMMdd").format(new Date());
|
||||
String datePrefix = prefix + dateStr;
|
||||
List<String> orderNumbers = stockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(datePrefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, datePrefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(datePrefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(datePrefix + seq);
|
||||
} else {
|
||||
//历史累加: 前缀 + 历史最大序号+1
|
||||
List<String> orderNumbers = stockOutOrderMapper.getMaxStockOutOrderByPrefixAndOrgAndWarehouse(prefix, organizationId, warehouseIdForCount);
|
||||
int maxSeq = extractMaxSequenceNumber(orderNumbers, prefix.length());
|
||||
String seq = String.format("%03d", maxSeq + 1);
|
||||
stockOutOrderDO.setOutOrderNumber(prefix + seq);
|
||||
stockOutOrderDO.setBusinessOrderNo(prefix + seq);
|
||||
if (stockOutOrderDO.getOutOrderNumber() == null) {
|
||||
stockOutOrderDO.setOutOrderNumber(generateReserveOrderNumber());
|
||||
}
|
||||
//设置物料信息
|
||||
setMaterialDetailInfo(stockOutOrderDO);
|
||||
|
||||
Reference in New Issue
Block a user