无货主流程;
This commit is contained in:
+4
@@ -1,5 +1,6 @@
|
|||||||
package com.mhd.basic.domain.materialBaseInfo.entity;
|
package com.mhd.basic.domain.materialBaseInfo.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.FieldStrategy;
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
@@ -44,14 +45,17 @@ public class MaterialBaseInfo extends BaseVOEntity{
|
|||||||
|
|
||||||
@ApiModelProperty("货主id")
|
@ApiModelProperty("货主id")
|
||||||
@Excel(name = "货主id")
|
@Excel(name = "货主id")
|
||||||
|
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||||
private Long shipperId;
|
private Long shipperId;
|
||||||
|
|
||||||
@ApiModelProperty("货主名称")
|
@ApiModelProperty("货主名称")
|
||||||
@Excel(name = "货主名称")
|
@Excel(name = "货主名称")
|
||||||
|
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||||
private String shipperName;
|
private String shipperName;
|
||||||
|
|
||||||
@ApiModelProperty("物料编码")
|
@ApiModelProperty("物料编码")
|
||||||
@Excel(name = "物料编码")
|
@Excel(name = "物料编码")
|
||||||
|
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||||
private String materialCode;
|
private String materialCode;
|
||||||
|
|
||||||
@ApiModelProperty("物料名称")
|
@ApiModelProperty("物料名称")
|
||||||
|
|||||||
+2
@@ -1,5 +1,6 @@
|
|||||||
package com.mhd.oms.domain.reserveStockInOrder.repository.vo;
|
package com.mhd.oms.domain.reserveStockInOrder.repository.vo;
|
||||||
|
|
||||||
|
import com.alibaba.excel.annotation.ExcelIgnore;
|
||||||
import com.alibaba.excel.annotation.ExcelProperty;
|
import com.alibaba.excel.annotation.ExcelProperty;
|
||||||
import com.alibaba.excel.annotation.format.DateTimeFormat;
|
import com.alibaba.excel.annotation.format.DateTimeFormat;
|
||||||
import com.mhd.oms.domain.reserveStockInOrder.repository.util.StringToBigDecimalConverter;
|
import com.mhd.oms.domain.reserveStockInOrder.repository.util.StringToBigDecimalConverter;
|
||||||
@@ -72,5 +73,6 @@ public class ReservedInventory {
|
|||||||
/**
|
/**
|
||||||
* WMS物料id(解析预览接口根据货物名称匹配后自动填充,匹配不到为空,不映射Excel)
|
* WMS物料id(解析预览接口根据货物名称匹配后自动填充,匹配不到为空,不映射Excel)
|
||||||
*/
|
*/
|
||||||
|
@ExcelIgnore
|
||||||
private Long materialBaseInfoId;
|
private Long materialBaseInfoId;
|
||||||
}
|
}
|
||||||
+4
@@ -47,4 +47,8 @@ public class ReservedInventoryOut {
|
|||||||
*/
|
*/
|
||||||
@ExcelIgnore
|
@ExcelIgnore
|
||||||
private Long materialInventoryId;
|
private Long materialInventoryId;
|
||||||
|
|
||||||
|
|
||||||
|
@ExcelIgnore
|
||||||
|
private Long materialBaseInfoId;
|
||||||
}
|
}
|
||||||
+1
@@ -1385,6 +1385,7 @@ public class ReserveStockOutOrderApplicationService {
|
|||||||
BigDecimal allocationQuantity = inventory.getAllocationQuantity() == null ? BigDecimal.ZERO : inventory.getAllocationQuantity();
|
BigDecimal allocationQuantity = inventory.getAllocationQuantity() == null ? BigDecimal.ZERO : inventory.getAllocationQuantity();
|
||||||
if (allocationQuantity.compareTo(importQuantity) > 0) {
|
if (allocationQuantity.compareTo(importQuantity) > 0) {
|
||||||
reservedInventory.setMaterialInventoryId(inventory.getMaterialInventoryId());
|
reservedInventory.setMaterialInventoryId(inventory.getMaterialInventoryId());
|
||||||
|
reservedInventory.setMaterialBaseInfoId(inventory.getMaterialBaseInfoId());
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+24
@@ -318,6 +318,8 @@ public class MaterialBaseInfoApplicationService {
|
|||||||
*/
|
*/
|
||||||
public Boolean update(MaterialBaseInfoDO materialBaseInfoDO) {
|
public Boolean update(MaterialBaseInfoDO materialBaseInfoDO) {
|
||||||
Long shipperId = materialBaseInfoDO.getShipperId();
|
Long shipperId = materialBaseInfoDO.getShipperId();
|
||||||
|
//设置货主信息
|
||||||
|
shipperParam(materialBaseInfoDO);
|
||||||
if (shipperId != null&&shipperId!=0l) {
|
if (shipperId != null&&shipperId!=0l) {
|
||||||
String customerCodeNcJson = materialBaseInfoMapper.getCustomerCodeNcJson(shipperId.toString());
|
String customerCodeNcJson = materialBaseInfoMapper.getCustomerCodeNcJson(shipperId.toString());
|
||||||
if (customerCodeNcJson != null && !customerCodeNcJson.isEmpty()) {
|
if (customerCodeNcJson != null && !customerCodeNcJson.isEmpty()) {
|
||||||
@@ -386,6 +388,28 @@ public class MaterialBaseInfoApplicationService {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description 封装货主信息
|
||||||
|
* @author ZhouGY
|
||||||
|
* @date 2024/5/9 20:43
|
||||||
|
* @param materialBaseInfoDO
|
||||||
|
*/
|
||||||
|
private void shipperParam(MaterialBaseInfoDO materialBaseInfoDO){
|
||||||
|
Long shipperId = materialBaseInfoDO.getShipperId();
|
||||||
|
if (shipperId != null && shipperId != 0l) {
|
||||||
|
AjaxResult ajaxResult = userServiceFeign.getInfo(materialBaseInfoDO.getShipperId());
|
||||||
|
if(!"200".equals(String.valueOf(ajaxResult.get("code")))){
|
||||||
|
throw new ServiceException("获取货主信息失败");
|
||||||
|
}
|
||||||
|
UserPo userPo = JSON.parseObject(JSONObject.toJSONString(ajaxResult.get("data")), UserPo.class);
|
||||||
|
// 如果原始shipperName不为空,保留原始值(导入或手动输入时应该保留完整名称)
|
||||||
|
// 只有在原始shipperName为空时,才使用查询到的userName
|
||||||
|
if (materialBaseInfoDO.getShipperName() == null || materialBaseInfoDO.getShipperName().trim().isEmpty()) {
|
||||||
|
materialBaseInfoDO.setShipperName(userPo.getUserName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 编辑物料时从库中反查子表主键,避免仅传 batchId 等字段时子表主键为 null 无法 UPDATE。
|
* 编辑物料时从库中反查子表主键,避免仅传 batchId 等字段时子表主键为 null 无法 UPDATE。
|
||||||
*/
|
*/
|
||||||
|
|||||||
+4
-4
@@ -1,9 +1,6 @@
|
|||||||
package com.mhd.wms.domain.materialBaseInfo.entity;
|
package com.mhd.wms.domain.materialBaseInfo.entity;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.*;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableName;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.mhd.common.core.annotation.Excel;
|
import com.mhd.common.core.annotation.Excel;
|
||||||
import com.mhd.common.core.handler.ListTypeHandler;
|
import com.mhd.common.core.handler.ListTypeHandler;
|
||||||
@@ -47,14 +44,17 @@ public class MaterialBaseInfo extends BaseVOEntity {
|
|||||||
|
|
||||||
@ApiModelProperty("货主id")
|
@ApiModelProperty("货主id")
|
||||||
@Excel(name = "货主id")
|
@Excel(name = "货主id")
|
||||||
|
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||||
private Long shipperId;
|
private Long shipperId;
|
||||||
|
|
||||||
@ApiModelProperty("货主编码")
|
@ApiModelProperty("货主编码")
|
||||||
@Excel(name = "货主编码")
|
@Excel(name = "货主编码")
|
||||||
|
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||||
private String shipperCode;
|
private String shipperCode;
|
||||||
|
|
||||||
@ApiModelProperty("货主名称")
|
@ApiModelProperty("货主名称")
|
||||||
@Excel(name = "货主名称")
|
@Excel(name = "货主名称")
|
||||||
|
@TableField(updateStrategy = FieldStrategy.IGNORED)
|
||||||
private String shipperName;
|
private String shipperName;
|
||||||
|
|
||||||
@ApiModelProperty("物料编码")
|
@ApiModelProperty("物料编码")
|
||||||
|
|||||||
@@ -122,7 +122,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
and a.top_organization_id = #{topOrganizationId}
|
and a.top_organization_id = #{topOrganizationId}
|
||||||
</if>
|
</if>
|
||||||
<if test="shipperId != null ">
|
<if test="shipperId != null ">
|
||||||
and a.shipper_id = #{shipperId}
|
and (a.shipper_id = #{shipperId} or a.shipper_id is null or a.shipper_id = 0)
|
||||||
</if>
|
</if>
|
||||||
<if test="shipperCode != null and shipperCode != ''">
|
<if test="shipperCode != null and shipperCode != ''">
|
||||||
and a.shipper_code like concat('%', #{shipperCode}, '%')
|
and a.shipper_code like concat('%', #{shipperCode}, '%')
|
||||||
@@ -268,7 +268,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
FROM ... LEFT JOIN material_base_info b ON ...
|
FROM ... LEFT JOIN material_base_info b ON ...
|
||||||
因此这里所有列名都加上 b. 前缀以避免和主表列名歧义 -->
|
因此这里所有列名都加上 b. 前缀以避免和主表列名歧义 -->
|
||||||
<if test="shipperId != null ">
|
<if test="shipperId != null ">
|
||||||
and b.shipper_id = #{shipperId}
|
and (b.shipper_id = #{shipperId} or b.shipper_id is null or b.shipper_id = 0)
|
||||||
</if>
|
</if>
|
||||||
<if test="shipperCode != null and shipperCode != ''">
|
<if test="shipperCode != null and shipperCode != ''">
|
||||||
and b.shipper_code like concat('%', #{shipperCode}, '%')
|
and b.shipper_code like concat('%', #{shipperCode}, '%')
|
||||||
|
|||||||
Reference in New Issue
Block a user