修复盘点数据传 MES 逻辑
- 完善盘点数量和账面数量的处理逻辑 - 增加对 null 值的处理,避免数据传输错误 - 优化盘盈盘亏数量的计算方法,确保数据准确性
This commit is contained in:
parent
27225bf8f4
commit
5a8aa3a808
|
@ -24,11 +24,11 @@ import nc.vo.pubapp.pattern.exception.ExceptionUtils;
|
|||
import nc.vo.pubapp.pattern.pub.SqlBuilder;
|
||||
import nc.vo.vorg.DeptVersionVO;
|
||||
import nccloud.pubift.commen.itf.utils.IHttpPostOtherSys;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 盘点(审批后传MES)
|
||||
*/
|
||||
|
@ -135,27 +135,37 @@ public class AfterApprovingSynchronizeRuleMES implements IRule<InvCountBillVO> {
|
|||
detail.put("KW", transferCodeByPk(RackVO.getDefaultTableName(), RackVO.CODE, RackVO.PK_RACK, bvo.getClocationid()));
|
||||
// 物料批号
|
||||
detail.put("WLPH", getStringValue(bvo.getVbatchcode()));
|
||||
|
||||
// 盘存数量 -> 实盘主数量
|
||||
UFDouble pcNum = bvo.getNcountnum();
|
||||
// 账面主数量
|
||||
UFDouble zmNum = bvo.getNonhandnum();
|
||||
if (pcNum != null) {
|
||||
// 盘存数量 -> 实盘主数量
|
||||
// 如果盘存数量为null赋值为0
|
||||
if (pcNum == null) {
|
||||
detail.put("PCSL", 0);
|
||||
pcNum = new UFDouble(0);
|
||||
}
|
||||
// 如果账面数量为null赋值为0
|
||||
if (zmNum == null) {
|
||||
zmNum = new UFDouble(0);
|
||||
}
|
||||
// 如果二者相等 两个 想减为0 都传0
|
||||
if (pcNum.getDouble() == zmNum.getDouble()) {
|
||||
detail.put("PCSL", pcNum.getDouble());
|
||||
if (zmNum != null) {
|
||||
// 盘盈数量 -> 账面主数量 - 实盘主数量
|
||||
detail.put("PYSL", zmNum.getDouble() - pcNum.getDouble());
|
||||
// 盘亏数量 -> 实盘主数量 - 账面主数量
|
||||
detail.put("PKSL", pcNum.getDouble() - zmNum.getDouble());
|
||||
} else {
|
||||
detail.put("PYSL", null);
|
||||
detail.put("PKSL", null);
|
||||
}
|
||||
} else {
|
||||
detail.put("PCSL", null);
|
||||
detail.put("PYSL", null);
|
||||
detail.put("PKSL", null);
|
||||
detail.put("PYSL", 0);
|
||||
detail.put("PKSL", 0);
|
||||
}
|
||||
// 盘盈盘亏都是正数
|
||||
// 账面数据比实盘数据大时,为盘亏,此时盘盈没有值,盘亏为账面减去实盘;
|
||||
// 账面数据比实盘数据小时,为盘盈,此时盘亏没有值,盘盈为实盘减去账面
|
||||
if (zmNum.getDouble() > pcNum.getDouble()) {
|
||||
detail.put("PCSL", pcNum.getDouble());
|
||||
detail.put("PYSL", 0);
|
||||
detail.put("PKSL", Math.abs(zmNum.getDouble() - pcNum.getDouble()));
|
||||
}
|
||||
if (zmNum.getDouble() < pcNum.getDouble()) {
|
||||
detail.put("PCSL", pcNum.getDouble());
|
||||
detail.put("PYSL", Math.abs(pcNum.getDouble() - zmNum.getDouble()));
|
||||
detail.put("PKSL", 0);
|
||||
}
|
||||
// 盈亏单价
|
||||
detail.put("YCDJ", null);
|
||||
|
|
Loading…
Reference in New Issue