预约单改造;

This commit is contained in:
王奎兴
2026-06-27 18:06:31 +08:00
parent c6366ef728
commit 8f0e71fe2a
34 changed files with 329 additions and 58 deletions
@@ -99,7 +99,7 @@ public interface WmsServiceFeign {
@ApiOperation("oms取消下发单保存") @ApiOperation("oms取消下发单保存")
@PostMapping(value = "/stockOutOrderApi/cancelExecutionOrder") @PostMapping(value = "/stockOutOrderApi/cancelExecutionOrder")
public void cancelExecutionOrder(@RequestBody StockOutOrder stockOutOrder); public void omsCancelExecutionOrder(@RequestBody StockOutOrder stockOutOrder);
@ApiOperation("oms取消下发单自动分配") @ApiOperation("oms取消下发单自动分配")
@PostMapping(value = "/stockOutOrderApi/omsAutoAssign") @PostMapping(value = "/stockOutOrderApi/omsAutoAssign")
@@ -74,7 +74,7 @@ public class RemoteWmsFallbackFactory implements FallbackFactory<WmsServiceFeign
} }
@Override @Override
public void cancelExecutionOrder(StockOutOrder stockOutOrder) { public void omsCancelExecutionOrder(StockOutOrder stockOutOrder) {
} }
@@ -827,7 +827,7 @@ public class ExecutionStockOutOrderApplicationService {
} }
public Boolean cancelAuditState(ExecutionStockOutOrderDO stockOutOrderDO){ public Boolean cancelAuditState(ExecutionStockOutOrderDO stockOutOrderDO){
return stockOutOrderDomainService.auditState(stockOutOrderDO); return stockOutOrderDomainService.cancelAuditState(stockOutOrderDO);
} }
/** /**
@@ -315,19 +315,19 @@ public class ExecutionStockOutOrderDomainService {
String outOrderNumber = executionStockOutOrder.getOutOrderNumber(); String outOrderNumber = executionStockOutOrder.getOutOrderNumber();
StockOutOrder stockOutOrder = new StockOutOrder(); StockOutOrder stockOutOrder = new StockOutOrder();
stockOutOrder.setOutOrderNumber(outOrderNumber); stockOutOrder.setOutOrderNumber(outOrderNumber);
wmsServiceFeign.cancelExecutionOrder(stockOutOrder); wmsServiceFeign.omsCancelExecutionOrder(stockOutOrder);
//还原oms库存及调整记录 //还原oms库存及调整记录
} }
} }
return stockOutOrderService.update(null, new UpdateWrapper<ExecutionStockOutOrder>().lambda() return stockOutOrderService.update(null, new UpdateWrapper<ExecutionStockOutOrder>().lambda()
.set(ExecutionStockOutOrder::getIssueId, null) .set(ExecutionStockOutOrder::getIssueId, null)
.set(ExecutionStockOutOrder::getIssueName, userRealName) .set(ExecutionStockOutOrder::getIssueName, null)
.set(ExecutionStockOutOrder::getIssueTime, new Date()) .set(ExecutionStockOutOrder::getIssueTime, null)
.set(ExecutionStockOutOrder::getUpdateBy, loginUser.getUserid()) .set(ExecutionStockOutOrder::getUpdateBy, loginUser.getUserid())
.set(ExecutionStockOutOrder::getUpdateByName, userRealName) .set(ExecutionStockOutOrder::getUpdateByName, userRealName)
.set(ExecutionStockOutOrder::getUpdateTime, new Date()) .set(ExecutionStockOutOrder::getUpdateTime, new Date())
.set(ExecutionStockOutOrder::getIssueStatus, 0) .set(ExecutionStockOutOrder::getIssueStatus, 1)
.in(ExecutionStockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds())); .in(ExecutionStockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds()));
} }
@@ -333,6 +333,10 @@ public class ReservationStockInOrderApplicationService {
return stockInOrderDomainService.issueOrder(stockInOrderDO); return stockInOrderDomainService.issueOrder(stockInOrderDO);
} }
public Boolean cancelIssueOrder(ReservationStockInOrderDO stockInOrderDO){
return stockInOrderDomainService.cancelIssueOrder(stockInOrderDO);
}
public Boolean executeAndIssue(ReservationStockInOrderDO stockInOrderDO){ public Boolean executeAndIssue(ReservationStockInOrderDO stockInOrderDO){
return stockInOrderDomainService.executeAndIssue(stockInOrderDO); return stockInOrderDomainService.executeAndIssue(stockInOrderDO);
} }
@@ -539,6 +539,51 @@ public class ReservationStockInOrderDomainService {
return update; return update;
} }
@Transactional(rollbackFor = Exception.class)
public Boolean cancelIssueOrder(ReservationStockInOrderDO stockInOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名优先从UserPo获取如果为空则使用realname最后使用username作为兜底
String userRealName = loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null ? loginUser.getRealname() : loginUser.getUsername());
boolean update = stockInOrderService.update(null, new UpdateWrapper<ReservationStockInOrder>().lambda()
.set(ReservationStockInOrder::getIssueId, null)
.set(ReservationStockInOrder::getIssueName, null)
.set(ReservationStockInOrder::getIssueTime, null)
.set(ReservationStockInOrder::getIssueStatus, 2)
.set(ReservationStockInOrder::getUpdateBy, loginUser.getUserid())
.set(ReservationStockInOrder::getUpdateByName, userRealName)
.set(ReservationStockInOrder::getUpdateTime, new Date())
.in(ReservationStockInOrder::getInOrderId, stockInOrderDO.getInOrderIds()));
//todo下发推送到入库业务单
List<Long> inOrderIds = stockInOrderDO.getInOrderIds();
for (Long inOrderId : inOrderIds) {
ReservationStockInOrder byId = stockInOrderService.getById(inOrderId);
String inOrderNumber = byId.getInOrderNumber();
List<ExecutionStockInOrder> list = executionStockInOrderService.list(new QueryWrapper<ExecutionStockInOrder>().lambda()
.eq(ExecutionStockInOrder::getBusinessInOrderNumber, inOrderNumber)
.eq(ExecutionStockInOrder::getDelFlag, 1));
for (ExecutionStockInOrder executionStockInOrder : list) {
String inOrderNumber1 = executionStockInOrder.getInOrderNumber();
List<ExecutionInMaterialDetail> materialDetails = executionInMaterialDetailService.list(new QueryWrapper<ExecutionInMaterialDetail>().lambda()
.eq(ExecutionInMaterialDetail::getInOrderNumber, inOrderNumber1)
.eq(ExecutionInMaterialDetail::getDelFlag, 1));
materialDetails.forEach(materialDetail -> {
executionInMaterialDetailService.update(null, new UpdateWrapper<ExecutionInMaterialDetail>().lambda()
.set(ExecutionInMaterialDetail::getDelFlag, 2)
.eq(ExecutionInMaterialDetail::getMaterialDetailId, materialDetail.getMaterialDetailId()));
});
executionStockInOrderService.update(null, new UpdateWrapper<ExecutionStockInOrder>().lambda()
.set(ExecutionStockInOrder::getDelFlag, 2)
.eq(ExecutionStockInOrder::getInOrderId, executionStockInOrder.getInOrderId()));
}
}
return update;
}
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean executeAndIssue(ReservationStockInOrderDO stockInOrderDO) { public Boolean executeAndIssue(ReservationStockInOrderDO stockInOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
@@ -853,6 +853,9 @@ public class ReservationStockOutOrderApplicationService {
public Boolean issueOrder(ReservationStockOutOrderDO stockOutOrderDO){ public Boolean issueOrder(ReservationStockOutOrderDO stockOutOrderDO){
return stockOutOrderDomainService.issueOrder(stockOutOrderDO); return stockOutOrderDomainService.issueOrder(stockOutOrderDO);
} }
public Boolean cancelIssueOrder(ReservationStockOutOrderDO stockOutOrderDO){
return stockOutOrderDomainService.cancelIssueOrder(stockOutOrderDO);
}
public Boolean executeAndIssue(ReservationStockOutOrderDO stockOutOrderDO){ public Boolean executeAndIssue(ReservationStockOutOrderDO stockOutOrderDO){
return stockOutOrderDomainService.executeAndIssue(stockOutOrderDO); return stockOutOrderDomainService.executeAndIssue(stockOutOrderDO);
@@ -402,6 +402,50 @@ public class ReservationStockOutOrderDomainService {
return update; return update;
} }
@Transactional(rollbackFor = Exception.class)
public Boolean cancelIssueOrder(ReservationStockOutOrderDO stockOutOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser();
// 获取用户姓名优先从UserPo获取如果为空则使用realname最后使用username作为兜底
String userRealName = loginUser.getUserPo() != null && loginUser.getUserPo().getUserName() != null
? loginUser.getUserPo().getUserName()
: (loginUser.getRealname() != null ? loginUser.getRealname() : loginUser.getUsername());
boolean update = stockOutOrderService.update(null, new UpdateWrapper<ReservationStockOutOrder>().lambda()
.set(ReservationStockOutOrder::getIssueId, null)
.set(ReservationStockOutOrder::getIssueName, null)
.set(ReservationStockOutOrder::getIssueTime, null)
.set(ReservationStockOutOrder::getIssueStatus, 2)
.set(ReservationStockOutOrder::getUpdateBy, loginUser.getUserid())
.set(ReservationStockOutOrder::getUpdateByName, userRealName)
.set(ReservationStockOutOrder::getUpdateTime, new Date())
.in(ReservationStockOutOrder::getOutOrderId, stockOutOrderDO.getOutOrderIds()));
//todo下发推送到wms
List<Long> inOrderIds = stockOutOrderDO.getOutOrderIds();
for (Long inOrderId : inOrderIds) {
ReservationStockOutOrder byId = stockOutOrderService.getById(inOrderId);
String inOrderNumber = byId.getOutOrderNumber();
List<ExecutionStockOutOrder> list = executionStockOutOrderService.list(new QueryWrapper<ExecutionStockOutOrder>().lambda()
.eq(ExecutionStockOutOrder::getBusinessOutOrderNumber, inOrderNumber)
.eq(ExecutionStockOutOrder::getDelFlag, 1));
list.forEach(executionStockOutOrder -> {
String outOrderNumber = executionStockOutOrder.getOutOrderNumber();
List<ExecutionOutMaterialDetail> materialDetails = executionOutMaterialDetailService.list(new QueryWrapper<ExecutionOutMaterialDetail>().lambda()
.eq(ExecutionOutMaterialDetail::getOutOrderNumber, outOrderNumber)
.eq(ExecutionOutMaterialDetail::getDelFlag, 1));
materialDetails.forEach(executionOutMaterialDetail -> {
executionOutMaterialDetailService.update(null, new UpdateWrapper<ExecutionOutMaterialDetail>().lambda()
.set(ExecutionOutMaterialDetail::getDelFlag, 2)
.eq(ExecutionOutMaterialDetail::getMaterialDetailId, executionOutMaterialDetail.getMaterialDetailId()));
});
executionStockOutOrderService.update(null, new UpdateWrapper<ExecutionStockOutOrder>().lambda()
.set(ExecutionStockOutOrder::getDelFlag, 2)
.eq(ExecutionStockOutOrder::getOutOrderNumber, outOrderNumber));
});
}
return update;
}
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean executeAndIssue(ReservationStockOutOrderDO stockOutOrderDO) { public Boolean executeAndIssue(ReservationStockOutOrderDO stockOutOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
@@ -150,6 +150,13 @@ public class ReservationStockOutOrderApi extends BaseController {
return AjaxResult.success(stockOutOrderApplicationService.issueOrder(stockOutOrderDO)); return AjaxResult.success(stockOutOrderApplicationService.issueOrder(stockOutOrderDO));
} }
@ApiOperation("取消下发出库单")
@PostMapping(value = "/cancelIssueOrder")
public AjaxResult cancelIssueOrder(@RequestBody ReservationStockOutOrderDTO stockOutOrderDTO) {
ReservationStockOutOrderDO stockOutOrderDO = stockOutOrderAssembler.toDO(stockOutOrderDTO);
return AjaxResult.success(stockOutOrderApplicationService.cancelIssueOrder(stockOutOrderDO));
}
@ApiOperation("下发出库单") @ApiOperation("下发出库单")
@PostMapping(value = "/executeAndIssue") @PostMapping(value = "/executeAndIssue")
public AjaxResult executeAndIssue(@RequestBody ReservationStockOutOrderDTO stockOutOrderDTO) { public AjaxResult executeAndIssue(@RequestBody ReservationStockOutOrderDTO stockOutOrderDTO) {
@@ -155,7 +155,7 @@ public class ExecutionStockOutOrderApi extends BaseController {
@PostMapping(value = "/cancelAuditState") @PostMapping(value = "/cancelAuditState")
public AjaxResult cancelAuditState(@RequestBody ExecutionStockOutOrderDTO stockOutOrderDTO) { public AjaxResult cancelAuditState(@RequestBody ExecutionStockOutOrderDTO stockOutOrderDTO) {
ExecutionStockOutOrderDO stockOutOrderDO = stockOutOrderAssembler.toDO(stockOutOrderDTO); ExecutionStockOutOrderDO stockOutOrderDO = stockOutOrderAssembler.toDO(stockOutOrderDTO);
return AjaxResult.success(stockOutOrderApplicationService.auditState(stockOutOrderDO)); return AjaxResult.success(stockOutOrderApplicationService.cancelAuditState(stockOutOrderDO));
} }
@ApiOperation("关闭出库单") @ApiOperation("关闭出库单")
@@ -122,6 +122,13 @@ public class ReservationStockInOrderApi extends BaseController {
/** /**
* 下发入库单 * 下发入库单
*/ */
@ApiOperation("取消下发入库单")
@PostMapping(value = "/cancelIssueOrder")
public AjaxResult cancelIssueOrder(@RequestBody ReservationStockInOrderDTO stockInOrderDTO) {
ReservationStockInOrderDO stockInOrderDO = stockInOrderAssembler.toDO(stockInOrderDTO);
return AjaxResult.success(stockInOrderApplicationService.cancelIssueOrder(stockInOrderDO));
}
@ApiOperation("下发入库单") @ApiOperation("下发入库单")
@PostMapping(value = "/issueOrder") @PostMapping(value = "/issueOrder")
public AjaxResult issueOrder(@RequestBody ReservationStockInOrderDTO stockInOrderDTO) { public AjaxResult issueOrder(@RequestBody ReservationStockInOrderDTO stockInOrderDTO) {
@@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference; import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.mhd.common.core.domain.po.UserPo; import com.mhd.common.core.domain.po.UserPo;
import com.mhd.common.core.exception.ServiceException; import com.mhd.common.core.exception.ServiceException;
import com.mhd.common.core.enums.DictCode; import com.mhd.common.core.enums.DictCode;
@@ -54,13 +56,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.InputStream; import java.io.InputStream;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@@ -158,6 +154,8 @@ public class MaterialBaseInfoApplicationService {
} }
} }
} }
materialBaseInfoDO.setOrgId(String.valueOf(materialBaseInfoDO.getOrganizationId()));
materialBaseInfoDO.setOrganizationId(null);
List<MaterialBaseInfoPO> materialBaseInfoPOS = materialBaseInfoDomainService.queryList(materialBaseInfoDO); List<MaterialBaseInfoPO> materialBaseInfoPOS = materialBaseInfoDomainService.queryList(materialBaseInfoDO);
for (MaterialBaseInfoPO materialBaseInfoPO : materialBaseInfoPOS) { for (MaterialBaseInfoPO materialBaseInfoPO : materialBaseInfoPOS) {
//物料商品规则 //物料商品规则
@@ -557,6 +555,31 @@ public class MaterialBaseInfoApplicationService {
MaterialBaseInfo matched = findExistingMaterialByShipper(row); MaterialBaseInfo matched = findExistingMaterialByShipper(row);
if (matched != null) { if (matched != null) {
row.setShipperId(matched.getShipperId()); row.setShipperId(matched.getShipperId());
Long shipperId = matched.getShipperId();
String customerCodeNcJson = materialBaseInfoMapper.getCustomerCodeNcJson(shipperId.toString());
if (customerCodeNcJson != null && !customerCodeNcJson.isEmpty()) {
ObjectMapper objectMapper = new ObjectMapper();
List<Map<String, Object>> listNc = null;
try {
listNc = objectMapper.readValue(
customerCodeNcJson,
new com.fasterxml.jackson.core.type.TypeReference<List<Map<String, Object>>>() {}
);
String codeStr = "";
if (listNc != null && listNc.size() > 0) {
// 方式1Stream拼接逗号分隔
codeStr = listNc.stream()
.map(map -> map.get("code"))
.filter(Objects::nonNull) // 过滤code为空
.map(Object::toString)
.collect(Collectors.joining(","));
row.setOrgId(codeStr);
}
// codeStr 就是拼接好的字符串
} catch (JsonProcessingException e) {
throw new RuntimeException(e);
}
}
if (StringUtils.isBlank(row.getShipperCode())) { if (StringUtils.isBlank(row.getShipperCode())) {
row.setShipperCode(matched.getShipperCode()); row.setShipperCode(matched.getShipperCode());
} }
@@ -798,6 +821,31 @@ public class MaterialBaseInfoApplicationService {
return; return;
} }
row.setShipperId(userPo.getUserId()); row.setShipperId(userPo.getUserId());
Long shipperId = userPo.getUserId();
String customerCodeNcJson = materialBaseInfoMapper.getCustomerCodeNcJson(shipperId.toString());
if (customerCodeNcJson != null && !customerCodeNcJson.isEmpty()) {
ObjectMapper objectMapper = new ObjectMapper();
List<Map<String, Object>> listNc = null;
try {
listNc = objectMapper.readValue(
customerCodeNcJson,
new com.fasterxml.jackson.core.type.TypeReference<List<Map<String, Object>>>() {}
);
String codeStr = "";
if (listNc != null && listNc.size() > 0) {
// 方式1Stream拼接逗号分隔
codeStr = listNc.stream()
.map(map -> map.get("code"))
.filter(Objects::nonNull) // 过滤code为空
.map(Object::toString)
.collect(Collectors.joining(","));
row.setOrgId(codeStr);
}
// codeStr 就是拼接好的字符串
} catch (JsonProcessingException e) {
throw new RuntimeException(e);
}
}
if (!isValidOrgId(row.getOrganizationId()) && isValidOrgId(userPo.getOrganizationId())) { if (!isValidOrgId(row.getOrganizationId()) && isValidOrgId(userPo.getOrganizationId())) {
row.setOrganizationId(userPo.getOrganizationId()); row.setOrganizationId(userPo.getOrganizationId());
} }
@@ -1266,4 +1314,4 @@ public class MaterialBaseInfoApplicationService {
return tableDataInfo; return tableDataInfo;
} }
} }
@@ -845,7 +845,10 @@ public class StockOutOrderApplicationService {
public Boolean execution(String outOrderNumber){ public Boolean execution(String outOrderNumber){
//Boolean execution = stockOutOrderDomainService.execution(outOrderNumber); //Boolean execution = stockOutOrderDomainService.execution(outOrderNumber);
StockOutOrderDO stockOutOrderDO = new StockOutOrderDO(); StockOutOrderDO stockOutOrderDO = new StockOutOrderDO();
stockOutOrderDO.setOutOrderNumber(outOrderNumber); // stockOutOrderDO.setOutOrderNumber(outOrderNumber);
List<String> numbers = new ArrayList<>();
numbers.add(outOrderNumber);
stockOutOrderDO.setOutOrderNumbers(numbers);
Boolean b = omsAutoAssign(stockOutOrderDO); Boolean b = omsAutoAssign(stockOutOrderDO);
return b; return b;
} }
@@ -963,20 +966,20 @@ public class StockOutOrderApplicationService {
List<OutMaterialDetailDO> materialDetailList = cn.hutool.core.bean.BeanUtil.copyToList(outMaterialDetailList, OutMaterialDetailDO.class); List<OutMaterialDetailDO> materialDetailList = cn.hutool.core.bean.BeanUtil.copyToList(outMaterialDetailList, OutMaterialDetailDO.class);
List<OutMaterialDetailDO> materialDetailList2 = new ArrayList<>(); List<OutMaterialDetailDO> materialDetailList2 = new ArrayList<>();
for (OutMaterialDetailDO detail : materialDetailList) { for (OutMaterialDetailDO detail : materialDetailList) {
String batchRefNo = detail.getBatchRefNo(); // String batchRefNo = detail.getBatchRefNo();
String sheetRefNo = detail.getSheetRefNo(); // String sheetRefNo = detail.getSheetRefNo();
String boxPalletNo = detail.getBoxPalletNo(); // String boxPalletNo = detail.getBoxPalletNo();
Long materialBaseInfoId = detail.getMaterialBaseInfoId(); Long materialBaseInfoId = detail.getMaterialBaseInfoId();
Long warehouseId = detail.getWarehouseId(); Long warehouseId = detail.getWarehouseId();
List<MaterialInventory> materialInventories = materialInventoryMapper.selectList(new QueryWrapper<MaterialInventory>().lambda() List<MaterialInventory> materialInventories = materialInventoryMapper.selectList(new QueryWrapper<MaterialInventory>().lambda()
.eq(MaterialInventory::getBatchRefNo, batchRefNo) // .eq(MaterialInventory::getBatchRefNo, batchRefNo)
.eq(MaterialInventory::getSheetRefNo, sheetRefNo) // .eq(MaterialInventory::getSheetRefNo, sheetRefNo)
.eq(MaterialInventory::getBoxPalletNo, boxPalletNo) // .eq(MaterialInventory::getBoxPalletNo, boxPalletNo)
.eq(MaterialInventory::getWarehouseId, warehouseId) .eq(MaterialInventory::getWarehouseId, warehouseId)
.eq(MaterialInventory::getMaterialBaseInfoId, materialBaseInfoId)); .eq(MaterialInventory::getMaterialBaseInfoId, materialBaseInfoId));
if (materialInventories == null || materialInventories.isEmpty()) { // if (materialInventories == null || materialInventories.isEmpty()) {
throw new ServiceException("库存不存在:" + batchRefNo + " " + sheetRefNo + " " + boxPalletNo); // throw new ServiceException("库存不存在:" + batchRefNo + " " + sheetRefNo + " " + boxPalletNo);
} // }
BigDecimal remainingQuantity = detail.getQuantity(); // 计划数量 BigDecimal remainingQuantity = detail.getQuantity(); // 计划数量
for (MaterialInventory materialInventory : materialInventories) { for (MaterialInventory materialInventory : materialInventories) {
@@ -44,4 +44,10 @@ public interface IHandoverTaskOrderService extends IService<HandoverTaskOrder>
boolean taskDistribution(HandoverTaskOrderDO handoverTaskOrderDO); boolean taskDistribution(HandoverTaskOrderDO handoverTaskOrderDO);
public void updateOmsOrder(String orderNumber, Integer status); public void updateOmsOrder(String orderNumber, Integer status);
public void updateOmsExecutionOrder(String orderNumber, Integer status);
public Integer getExecutionRkCount(String orderNumber);
public String getBusinessOrdernumber(String orderNumber);
} }
@@ -23,4 +23,9 @@ public interface HandoverTaskOrderMapper extends BaseMapper<HandoverTaskOrder>
public void updateOmsOrder(@Param("orderNumber") String orderNumber, @Param("status") Integer status); public void updateOmsOrder(@Param("orderNumber") String orderNumber, @Param("status") Integer status);
public void updateOmsExecutionOrder(@Param("orderNumber") String orderNumber, @Param("status") Integer status);
public Integer getExecutionRkCount(@Param("orderNumber") String orderNumber);
public String getBusinessOrdernumber(@Param("orderNumber") String orderNumber);
} }
@@ -94,6 +94,21 @@ public class HandoverTaskOrderImpl extends ServiceImpl<HandoverTaskOrderMapper,
handoverTaskOrderMapper.updateOmsOrder(orderNumber, status); handoverTaskOrderMapper.updateOmsOrder(orderNumber, status);
} }
@Override
public void updateOmsExecutionOrder(String orderNumber, Integer status) {
handoverTaskOrderMapper.updateOmsExecutionOrder(orderNumber, status);
}
@Override
public Integer getExecutionRkCount(String orderNumber) {
return handoverTaskOrderMapper.getExecutionRkCount(orderNumber);
}
@Override
public String getBusinessOrdernumber(String orderNumber) {
return handoverTaskOrderMapper.getBusinessOrdernumber(orderNumber);
}
@Override @Override
public boolean taskDistribution(HandoverTaskOrderDO handoverTaskOrderDO) { public boolean taskDistribution(HandoverTaskOrderDO handoverTaskOrderDO) {
LoginUser loginUser = SecurityUtils.getLoginUser(); LoginUser loginUser = SecurityUtils.getLoginUser();
@@ -312,7 +312,14 @@ public class HandoverTaskOrderDomainService {
private void pushOms(Long handoverTaskOrderId) { private void pushOms(Long handoverTaskOrderId) {
HandoverTaskOrder handoverTaskOrder = handoverTaskOrderService.getById(handoverTaskOrderId); HandoverTaskOrder handoverTaskOrder = handoverTaskOrderService.getById(handoverTaskOrderId);
if (handoverTaskOrder != null) { if (handoverTaskOrder != null) {
handoverTaskOrderService.updateOmsOrder(handoverTaskOrder.getOrderNumber(),4); handoverTaskOrderService.updateOmsExecutionOrder(handoverTaskOrder.getOrderNumber(),4);
Integer executionRkCount = handoverTaskOrderService.getExecutionRkCount(handoverTaskOrder.getOrderNumber());
String businessOrdernumber = handoverTaskOrderService.getBusinessOrdernumber(handoverTaskOrder.getOrderNumber());
if (executionRkCount != null && executionRkCount > 0) {
if (businessOrdernumber != null) handoverTaskOrderService.updateOmsOrder(businessOrdernumber,5);
} else {
if (businessOrdernumber != null) handoverTaskOrderService.updateOmsOrder(businessOrdernumber,4);
}
} }
} }
@@ -237,4 +237,7 @@ public class MaterialBaseInfo extends BaseVOEntity {
@ApiModelProperty(name = "单位") @ApiModelProperty(name = "单位")
private String unit; private String unit;
@ApiModelProperty(name = "组织(多个用,分开)")
private String orgId;
} }
@@ -25,4 +25,5 @@ public interface MaterialBaseInfoMapper extends BaseMapper<MaterialBaseInfo>
List<MaterialBaseInfoPO> selectBatchByIds(@Param("materialBaseInfoIds") List<Long> materialBaseInfoIds); List<MaterialBaseInfoPO> selectBatchByIds(@Param("materialBaseInfoIds") List<Long> materialBaseInfoIds);
} String getCustomerCodeNcJson(@Param("actualInvoiceCustomerId") String actualInvoiceCustomerId);
}
@@ -286,4 +286,7 @@ public class MaterialBaseInfoPO extends BaseVOEntity {
@ApiModelProperty(name = "单位") @ApiModelProperty(name = "单位")
private String unit; private String unit;
@ApiModelProperty(name = "组织(多个用,分开)")
private String orgId;
} }
@@ -259,4 +259,7 @@ public class MaterialBaseInfoDO extends BaseVOEntity {
@ApiModelProperty(name = "单位") @ApiModelProperty(name = "单位")
private String unit; private String unit;
@ApiModelProperty(name = "组织(多个用,分开)")
private String orgId;
} }
@@ -49,9 +49,14 @@ public interface IStockShelfOrderService extends IService<StockShelfOrder>
*/ */
public StockShelfOrderPO getInfo(Long shelfOrderId); public StockShelfOrderPO getInfo(Long shelfOrderId);
public void updateOmsOrder(String orderNumber, Integer status, BigDecimal shelvesQuantity); public void updateOmsOrder(String orderNumber, Integer status, BigDecimal shelvesQuantity);
public Integer getExecutionCount(String orderNumber);
public String getBusinessOrderNumber(String orderNumber);
public void updateOmsExecutionOrder(String orderNumber, Integer status, BigDecimal shelvesQuantity);
public void updateOmsReserveOrder(String orderNumber, BigDecimal shelvesQuantity); public void updateOmsReserveOrder(String orderNumber, BigDecimal shelvesQuantity);
public void updateOmsDocument(BigDecimal shelvesQuantity, BigDecimal totalNetWeight, String omsInMaterialDetail); public void updateOmsDocument(BigDecimal shelvesQuantity, BigDecimal totalNetWeight, String omsInMaterialDetail);
@@ -24,6 +24,12 @@ public interface StockShelfOrderMapper extends BaseMapper<StockShelfOrder>
public void updateOmsOrder(@Param("orderNumber") String orderNumber, @Param("status") Integer status, @Param("shelvesQuantity") BigDecimal shelvesQuantity); public void updateOmsOrder(@Param("orderNumber") String orderNumber, @Param("status") Integer status, @Param("shelvesQuantity") BigDecimal shelvesQuantity);
public Integer getExecutionCount(@Param("orderNumber") String orderNumber);
public String getBusinessOrderNumber(@Param("orderNumber") String orderNumber);
public void updateOmsExecutionOrder(@Param("orderNumber") String orderNumber, @Param("status") Integer status, @Param("shelvesQuantity") BigDecimal shelvesQuantity);
public void updateOmsReserveOrder(@Param("orderNumber") String orderNumber, @Param("shelvesQuantity") BigDecimal shelvesQuantity); public void updateOmsReserveOrder(@Param("orderNumber") String orderNumber, @Param("shelvesQuantity") BigDecimal shelvesQuantity);
void updateOmsDocument(@Param("shelvesQuantity") BigDecimal shelvesQuantity, @Param("totalNetWeight") BigDecimal totalNetWeight, @Param("omsInMaterialDetail") String omsInMaterialDetail); void updateOmsDocument(@Param("shelvesQuantity") BigDecimal shelvesQuantity, @Param("totalNetWeight") BigDecimal totalNetWeight, @Param("omsInMaterialDetail") String omsInMaterialDetail);
@@ -115,6 +115,21 @@ public class StockShelfOrderImpl extends ServiceImpl<StockShelfOrderMapper, Stoc
stockShelfOrderMapper.updateOmsOrder(orderNumber, status,shelvesQuantity); stockShelfOrderMapper.updateOmsOrder(orderNumber, status,shelvesQuantity);
} }
@Override
public Integer getExecutionCount(String orderNumber) {
return stockShelfOrderMapper.getExecutionCount(orderNumber);
}
@Override
public String getBusinessOrderNumber(String orderNumber) {
return stockShelfOrderMapper.getBusinessOrderNumber(orderNumber);
}
@Override
public void updateOmsExecutionOrder(String orderNumber, Integer status,BigDecimal shelvesQuantity) {
stockShelfOrderMapper.updateOmsExecutionOrder(orderNumber, status,shelvesQuantity);
}
@Override @Override
public void updateOmsReserveOrder(String orderNumber, BigDecimal shelvesQuantity) { public void updateOmsReserveOrder(String orderNumber, BigDecimal shelvesQuantity) {
stockShelfOrderMapper.updateOmsReserveOrder(orderNumber, shelvesQuantity); stockShelfOrderMapper.updateOmsReserveOrder(orderNumber, shelvesQuantity);
@@ -863,9 +863,19 @@ public class StockShelfOrderDomainService {
markShelfTypeStockInTaskOrderOnComplete(stockShelfOrderPO.getShelfOrderNumber(), loginUser, userRealNameComplete); markShelfTypeStockInTaskOrderOnComplete(stockShelfOrderPO.getShelfOrderNumber(), loginUser, userRealNameComplete);
//推送业务数据到BMS系统 //推送业务数据到BMS系统
// pushSyncBmsDomainService.pushInShelfOrder(stockShelfOrderPO.getInOrderNumber()); // pushSyncBmsDomainService.pushInShelfOrder(stockShelfOrderPO.getInOrderNumber());
stockShelfOrderService.updateOmsOrder(stockShelfOrderPO.getInOrderNumber(), 4,
stockShelfOrderService.updateOmsExecutionOrder(stockShelfOrderPO.getInOrderNumber(), 4,
shelvesQuantity == null ? null : shelvesQuantity); shelvesQuantity == null ? null : shelvesQuantity);
stockShelfOrderService.updateOmsReserveOrder(stockShelfOrderPO.getInOrderNumber(), Integer executionCount = stockShelfOrderService.getExecutionCount(stockShelfOrderPO.getInOrderNumber());
String businessOrderNumber = stockShelfOrderService.getBusinessOrderNumber(stockShelfOrderPO.getInOrderNumber());
if (executionCount != null && executionCount > 0) {
if (businessOrderNumber != null) stockShelfOrderService.updateOmsOrder(businessOrderNumber, 5,
shelvesQuantity == null ? null : shelvesQuantity);
} else {
if (businessOrderNumber != null) stockShelfOrderService.updateOmsOrder(businessOrderNumber, 4,
shelvesQuantity == null ? null : shelvesQuantity);
}
if (businessOrderNumber != null) stockShelfOrderService.updateOmsReserveOrder(businessOrderNumber,
shelvesQuantity == null ? null : shelvesQuantity); shelvesQuantity == null ? null : shelvesQuantity);
return true; return true;
} }
@@ -311,4 +311,7 @@ public class MaterialBaseInfoDTO extends BaseVOEntity {
@ApiModelProperty(name = "单位") @ApiModelProperty(name = "单位")
private String unit; private String unit;
@ApiModelProperty(name = "组织(多个用,分开)")
private String orgId;
} }
@@ -361,7 +361,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectMaterialDetailPo"/> <include refid="selectMaterialDetailPo"/>
<include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPo"/> <include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPo"/>
from out_material_detail a from out_material_detail a
left join stock_out_order b on a.out_order_number = b.out_order_number left join stock_out_order b on a.out_order_number = b.out_order_number and b.del_flag = 1 and a.del_flag = 1
<where> <where>
<include refid="joinMaterialDetailPoWhere"/> <include refid="joinMaterialDetailPoWhere"/>
<include refid="joinStockOutOrderPoWhere"/> <include refid="joinStockOutOrderPoWhere"/>
@@ -151,6 +151,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select> </select>
<update id="updateOmsOrder"> <update id="updateOmsOrder">
update "NGWL_TEST_OMS".RESERVATION_STOCK_OUT_ORDER set ISSUE_STATUS = #{status},OUTBOUND_TIME = CURRENT_TIMESTAMP where OUT_ORDER_NUMBER = #{orderNumber} update "NGWL_TEST_OMS".RESERVATION_STOCK_OUT_ORDER set ISSUE_STATUS = #{status},OUTBOUND_TIME = CURRENT_TIMESTAMP where OUT_ORDER_NUMBER = #{orderNumber} and DELETE_FLAG = 1
</update> </update>
<update id="updateOmsExecutionOrder">
update "NGWL_TEST_OMS".EXECUTION_STOCK_OUT_ORDER set ISSUE_STATUS = #{status},OUTBOUND_TIME = CURRENT_TIMESTAMP where OUT_ORDER_NUMBER = #{orderNumber} and DELETE_FLAG = 1
</update>
<select id="getExecutionRkCount" parameterType="java.lang.String" resultType="java.lang.Integer">
select count(0) from "NGWL_TEST_OMS".EXECUTION_STOCK_OUT_ORDER where BUSINESS_OUT_ORDER_NUMBER = #{orderNumber} and ISSUE_STATUS != 4 and DELETE_FLAG = 1
</select>
<select id="getBusinessOrdernumber" parameterType="java.lang.String" resultType="java.lang.String">
select BUSINESS_OUT_ORDER_NUMBER from "NGWL_TEST_OMS".EXECUTION_STOCK_OUT_ORDER where OUT_ORDER_NUMBER = #{orderNumber} and DELETE_FLAG = 1
</select>
</mapper> </mapper>
@@ -147,7 +147,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SUM( omd.quantity ) AS material_quantity SUM( omd.quantity ) AS material_quantity
FROM FROM
out_material_detail omd out_material_detail omd
LEFT JOIN stock_out_order soo ON soo.out_order_number = omd.out_order_number LEFT JOIN stock_out_order soo ON soo.out_order_number = omd.out_order_number and omd.del_flag = 1 and soo.del_flag = 1
WHERE WHERE
soo.STATUS IN ( 7, 8 ) soo.STATUS IN ( 7, 8 )
GROUP BY GROUP BY
@@ -278,7 +278,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
rmd.check_quantity AS work_quantity rmd.check_quantity AS work_quantity
FROM FROM
out_material_detail rmd out_material_detail rmd
LEFT JOIN stock_out_order sio ON sio.out_order_number = rmd.out_order_number LEFT JOIN stock_out_order sio ON sio.out_order_number = rmd.out_order_number and sio.del_flag = 1 and rmd.del_flag = 1
WHERE WHERE
sio.STATUS IN ( 7, 8 ) sio.STATUS IN ( 7, 8 )
<include refid="whereForGetInfo"/> <include refid="whereForGetInfo"/>
@@ -107,6 +107,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="organizationId != null "> <if test="organizationId != null ">
and a.organization_id like concat('%', #{organizationId}, '%') and a.organization_id like concat('%', #{organizationId}, '%')
</if> </if>
<if test="orgId != null and orgId != '' ">
and a.org_id like concat('%', #{orgId}, '%')
</if>
<if test="materialBaseInfoId != null and materialBaseInfoId != ''"> <if test="materialBaseInfoId != null and materialBaseInfoId != ''">
and a.material_base_info_id = #{materialBaseInfoId} and a.material_base_info_id = #{materialBaseInfoId}
</if> </if>
@@ -325,5 +328,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</foreach> </foreach>
</select> </select>
<select id="getCustomerCodeNcJson" parameterType="java.lang.String" resultType="java.lang.String">
SELECT ORG_CODE FROM NGWL_TEST_USER."USER_SHIPPER" where del_flag = 1 and SHIPPER_ID = #{actualInvoiceCustomerId} limit 1
</select>
</mapper> </mapper>
@@ -818,7 +818,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM FROM
picking_material_detail c picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER and e.del_flag = 1
WHERE WHERE
c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
@@ -834,7 +834,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SUM(c.CHECK_QUANTITY) AS CHECK_QUANTITY SUM(c.CHECK_QUANTITY) AS CHECK_QUANTITY
FROM FROM
OUT_MATERIAL_DETAIL c OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER and c.del_flag = 1 and d.del_flag = 1
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12) d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12)
@@ -871,7 +871,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT MAX(c.update_time) SELECT MAX(c.update_time)
FROM picking_material_detail c FROM picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER and e.del_flag = 1
WHERE WHERE
c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
@@ -882,7 +882,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
( (
SELECT MAX(c.update_time) SELECT MAX(c.update_time)
FROM OUT_MATERIAL_DETAIL c FROM OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER and d.del_flag = 1
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12) d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12)
@@ -900,7 +900,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT MAX(c.update_time) SELECT MAX(c.update_time)
FROM picking_material_detail c FROM picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER and e.del_flag = 1
WHERE WHERE
c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
@@ -911,7 +911,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
IFNULL(( IFNULL((
SELECT MAX(c.update_time) SELECT MAX(c.update_time)
FROM OUT_MATERIAL_DETAIL c FROM OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER and d.del_flag = 1
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12) d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12)
@@ -1082,7 +1082,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM FROM
picking_material_detail c picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER and e.del_flag = 1
WHERE WHERE
c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
@@ -1102,7 +1102,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM FROM
picking_material_detail c picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER and e.del_flag = 1
WHERE WHERE
c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
@@ -1128,7 +1128,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SUM(c.CHECK_QUANTITY) AS CHECK_QUANTITY SUM(c.CHECK_QUANTITY) AS CHECK_QUANTITY
FROM FROM
OUT_MATERIAL_DETAIL c OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER and c.del_flag = 1 and d.del_flag = 1
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12) d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12)
@@ -1152,7 +1152,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SUM(c.CHECK_QUANTITY) AS CHECK_QUANTITY SUM(c.CHECK_QUANTITY) AS CHECK_QUANTITY
FROM FROM
OUT_MATERIAL_DETAIL c OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER and c.del_flag = 1 and d.del_flag = 1
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12) d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12)
@@ -1201,7 +1201,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT MAX(c.update_time) SELECT MAX(c.update_time)
FROM picking_material_detail c FROM picking_material_detail c
LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER LEFT JOIN picking_order d ON c.picking_order_number = d.PICKING_ORDER_NUMBER
left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER left join STOCK_OUT_ORDER e ON d.ORDER_NUMBER = e.OUT_ORDER_NUMBER and e.del_flag = 1
WHERE WHERE
c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7 c.del_flag = 1 and d.STATUS = 3 and e.STATUS = 7
AND d.warehouse_id = a.warehouse_id AND d.warehouse_id = a.warehouse_id
@@ -1212,7 +1212,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
IFNULL(( IFNULL((
SELECT MAX(c.update_time) SELECT MAX(c.update_time)
FROM OUT_MATERIAL_DETAIL c FROM OUT_MATERIAL_DETAIL c
LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER LEFT JOIN STOCK_OUT_ORDER d ON c.OUT_ORDER_NUMBER = d.OUT_ORDER_NUMBER and c.del_flag = 1 and d.del_flag = 1
LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER LEFT JOIN HANDOVER_TASK_ORDER e ON d.OUT_ORDER_NUMBER = e.ORDER_NUMBER
WHERE WHERE
d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12) d.CHECK_STATUS in (2,3) and e.STATUS = 1 and d.STATUS in (8,12)
@@ -112,7 +112,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectOutOrderAbnormalPo11"/> <include refid="selectOutOrderAbnormalPo11"/>
<include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPoYc"/> <include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPoYc"/>
from out_order_abnormal a from out_order_abnormal a
left join stock_out_order b on a.out_order_number = b.out_order_number left join stock_out_order b on a.out_order_number = b.out_order_number and b.del_flag = 1
<where> <where>
<include refid="selectOutOrderAbnormalPo1"/> <include refid="selectOutOrderAbnormalPo1"/>
<include refid="joinStockOutOrderPoWhere"/> <include refid="joinStockOutOrderPoWhere"/>
@@ -144,7 +144,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectPickingOrderPo"/> <include refid="selectPickingOrderPo"/>
,b.need_Declare_Flag ,b.need_Declare_Flag
from picking_order a from picking_order a
left join STOCK_OUT_ORDER b ON a.order_number = b.out_Order_number left join STOCK_OUT_ORDER b ON a.order_number = b.out_Order_number and b.del_flag = 1
<where> <where>
<include refid="selectPickingOrderPo1"/> <include refid="selectPickingOrderPo1"/>
</where> </where>
@@ -156,7 +156,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectPickingOrderPo"/> <include refid="selectPickingOrderPo"/>
<include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPo"/> <include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPo"/>
from picking_order a from picking_order a
left join stock_out_order b on a.order_number = b.out_order_number left join stock_out_order b on a.order_number = b.out_order_number and b.del_flag = 1
WHERE a.picking_order_id = #{pickingOrderId} WHERE a.picking_order_id = #{pickingOrderId}
</select> </select>
@@ -174,7 +174,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectPickingOrderPo"/> <include refid="selectPickingOrderPo"/>
<include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPo"/> <include refid="com.mhd.wms.domain.stockOutOrder.repository.mapper.StockOutOrderMapper.joinStockOutOrderPo"/>
from picking_order a from picking_order a
left join stock_out_order b on a.order_number = b.out_order_number left join stock_out_order b on a.order_number = b.out_order_number and b.del_flag = 1
WHERE a.order_number = #{orderNumber} WHERE a.order_number = #{orderNumber}
</select> </select>
@@ -151,34 +151,43 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ORDER BY a.create_time DESC ORDER BY a.create_time DESC
</select> </select>
<select id="getExecutionCount" resultType="java.lang.Integer" parameterType="java.lang.String">
select count(0) from "NGWL_TEST_OMS".EXECUTION_STOCK_IN_ORDER where BUSINESS_IN_ORDER_NUMBER = #{orderNumber} and ISSUE_STATUS != 4 and DELETE_FLAG = 1
</select>
<select id="getBusinessOrderNumber" resultType="java.lang.String" parameterType="java.lang.String">
select BUSINESS_IN_ORDER_NUMBER from "NGWL_TEST_OMS".EXECUTION_STOCK_IN_ORDER where IN_ORDER_NUMBER = #{orderNumber} and ISSUE_STATUS != 4 and DELETE_FLAG = 1
</select>
<update id="updateOmsOrder"> <update id="updateOmsOrder">
update "NGWL_TEST_OMS".RESERVATION_STOCK_IN_ORDER set ISSUE_STATUS = #{status},in_quantity = #{shelvesQuantity},STORAGE_TIME = CURRENT_TIMESTAMP where IN_ORDER_NUMBER = #{orderNumber} update "NGWL_TEST_OMS".RESERVATION_STOCK_IN_ORDER set ISSUE_STATUS = #{status},in_quantity = #{shelvesQuantity},STORAGE_TIME = CURRENT_TIMESTAMP where IN_ORDER_NUMBER = #{orderNumber} and DELETE_FLAG = 1
</update>
<update id="updateOmsExecutionOrder">
update "NGWL_TEST_OMS".EXECUTION_STOCK_IN_ORDER set ISSUE_STATUS = #{status},in_quantity = #{shelvesQuantity},STORAGE_TIME = CURRENT_TIMESTAMP where IN_ORDER_NUMBER = #{orderNumber} and DELETE_FLAG = 1
</update> </update>
<update id="updateOmsReserveOrder"> <update id="updateOmsReserveOrder">
update "NGWL_TEST_OMS".RESERVE_STOCK_IN_ORDER set in_quantity = #{shelvesQuantity},STORAGE_TIME = CURRENT_TIMESTAMP where IN_ORDER_NUMBER = #{orderNumber} update "NGWL_TEST_OMS".RESERVE_STOCK_IN_ORDER set in_quantity = #{shelvesQuantity},STORAGE_TIME = CURRENT_TIMESTAMP where IN_ORDER_NUMBER = #{orderNumber} and DELETE_FLAG = 1
</update> </update>
<update id="updateOmsDocument"> <update id="updateOmsDocument">
update "NGWL_TEST_OMS".RESERVATION_IN_MATERIAL_DETAIL set INBOUND_ITEMS = #{shelvesQuantity}, TOTAL_NET_WEIGHT= #{totalNetWeight},STORAGE_TIME = CURRENT_TIMESTAMP where MATERIAL_DETAIL_ID = #{omsInMaterialDetail} update "NGWL_TEST_OMS".RESERVATION_IN_MATERIAL_DETAIL set INBOUND_ITEMS = #{shelvesQuantity}, TOTAL_NET_WEIGHT= #{totalNetWeight},STORAGE_TIME = CURRENT_TIMESTAMP where MATERIAL_DETAIL_ID = #{omsInMaterialDetail} and DELETE_FLAG = 1
</update> </update>
<update id="updateOmsHandover"> <update id="updateOmsHandover">
update "NGWL_TEST_OMS".RESERVATION_OUT_MATERIAL_DETAIL set INBOUND_ITEMS = #{checkQuantity}, update "NGWL_TEST_OMS".RESERVATION_OUT_MATERIAL_DETAIL set INBOUND_ITEMS = #{checkQuantity},
TOTAL_NET_WEIGHT= #{totalNetWeight} TOTAL_NET_WEIGHT= #{totalNetWeight}
,STORAGE_TIME = CURRENT_TIMESTAMP ,STORAGE_TIME = CURRENT_TIMESTAMP
where OUT_ORDER_NUMBER = #{outOrderNumber} and UNIQUE_ID = #{uniqueId} where OUT_ORDER_NUMBER = #{outOrderNumber} and UNIQUE_ID = #{uniqueId} and DELETE_FLAG = 1
</update> </update>
<update id="updateOmsDocumentLot"> <update id="updateOmsDocumentLot">
update "NGWL_TEST_OMS".RESERVATION_IN_MATERIAL_DETAIL set INBOUND_ITEMS = #{shelvesQuantity}, TOTAL_NET_WEIGHT= #{totalNetWeight},STORAGE_TIME = CURRENT_TIMESTAMP update "NGWL_TEST_OMS".RESERVATION_IN_MATERIAL_DETAIL set INBOUND_ITEMS = #{shelvesQuantity}, TOTAL_NET_WEIGHT= #{totalNetWeight},STORAGE_TIME = CURRENT_TIMESTAMP and DELETE_FLAG = 1
where LOT_NO = #{lotNumber} where LOT_NO = #{lotNumber}
</update> </update>
<update id="updateOmsInventoryQuantity"> <update id="updateOmsInventoryQuantity">
update "NGWL_TEST_OMS".RESERVATION_MATERIAL_INVENTORY set INVENTORY_QUANTITY = #{quantity}, update "NGWL_TEST_OMS".RESERVATION_MATERIAL_INVENTORY set INVENTORY_QUANTITY = #{quantity},
ALLOCATION_QUANTITY= #{quantity} ALLOCATION_QUANTITY= #{quantity}
where IN_ORDER_NUMBER = #{inOrderNumber} and LOT_NUMBER = #{lotNumber} where IN_ORDER_NUMBER = #{inOrderNumber} and LOT_NUMBER = #{lotNumber} and DELETE_FLAG = 1
</update> </update>
<update id="updateOmsInventorySynchronization"> <update id="updateOmsInventorySynchronization">
update "NGWL_TEST_OMS".RESERVATION_MATERIAL_INVENTORY set INVENTORY_QUANTITY = INVENTORY_QUANTITY - #{checkQuantity}, update "NGWL_TEST_OMS".RESERVATION_MATERIAL_INVENTORY set INVENTORY_QUANTITY = INVENTORY_QUANTITY - #{checkQuantity},
ALLOCATION_QUANTITY= ALLOCATION_QUANTITY - #{checkQuantity} ALLOCATION_QUANTITY= ALLOCATION_QUANTITY - #{checkQuantity}
where IN_ORDER_NUMBER = #{inOrderNumber} and LOT_NUMBER = #{lotNo} where IN_ORDER_NUMBER = #{inOrderNumber} and LOT_NUMBER = #{lotNo} and DELETE_FLAG = 1
</update> </update>
<select id="getUserNcCode" parameterType="java.lang.Long" resultType="java.lang.String"> <select id="getUserNcCode" parameterType="java.lang.Long" resultType="java.lang.String">