Compare commits

..

No commits in common. "fa5be651bcd65ef5354f35bde951351bcbf2db0b" and "9f392d2142ad403f80dafdadc220fdd1ef6c19a8" have entirely different histories.

1 changed files with 4 additions and 71 deletions

View File

@ -66,19 +66,11 @@ public class AfterApproveSyncImsRule implements IRule<PMOAggVO> {
"nnum", "nastnum", "nplanputastnum", "nplanputnum", "nmmastnum", "nmmnum",
"ninastnum", "ninnum"
));
// ±íÍ·-·­Òë×ÖÎ
private Set<String> headTransferFields = new HashSet<>(Arrays.asList(
"pk_org", "cplanfactoryid", "approver", "billmaker", "creator"
));
// 表体-定义数值类型字段列表
private Set<String> bodyNumFields = new HashSet<>(Arrays.asList(
Set<String> bodyNumFields = new HashSet<>(Arrays.asList(
"nnum", "nastnum", "nplanputastnum", "nplanputnum", "nmmastnum", "nmmnum",
"ninastnum", "ninnum"
));
// ±íÌå-·­Òë×ÖÎ
private Set<String> bodyTransferFields = new HashSet<>(Arrays.asList(
"pk_org", "cmaterialvid", "cunitid", "castunitid", "cdeptid", "mocloser", "cinwarehouseid", "vbdef31"
));
@Override
@ -205,7 +197,7 @@ public class AfterApproveSyncImsRule implements IRule<PMOAggVO> {
}
private SQLParameter buildHeadParameters(PMOHeadVO pmoHeadVO, boolean isUpdate) throws BusinessException {
private SQLParameter buildHeadParameters(PMOHeadVO pmoHeadVO, boolean isUpdate) {
SQLParameter headParams = new SQLParameter();
if (isUpdate) {
@ -218,8 +210,6 @@ public class AfterApproveSyncImsRule implements IRule<PMOAggVO> {
Object value = pmoHeadVO.getAttributeValue(column);
if (headNumFields.contains(column)) {
value = skipNullForNumber(value);
} else if (headTransferFields.contains(column)) {
value = transferHeadFields(column, value);
} else {
value = skipNull(value);
}
@ -251,7 +241,7 @@ public class AfterApproveSyncImsRule implements IRule<PMOAggVO> {
return headParams;
}
private SQLParameter buildBodyParameters(PMOItemVO item, PMOHeadVO pmoHeadVO, boolean isUpdate) throws BusinessException {
private SQLParameter buildBodyParameters(PMOItemVO item, PMOHeadVO pmoHeadVO, boolean isUpdate) {
SQLParameter bodyParams = new SQLParameter();
if (isUpdate) {
@ -267,8 +257,6 @@ public class AfterApproveSyncImsRule implements IRule<PMOAggVO> {
// 数值字段需要特殊处理空值
if (bodyNumFields.contains(column)) {
value = skipNullForNumber(value);
} else if (bodyTransferFields.contains(column)) {
value = transferBodyFields(column, value);
} else {
value = skipNull(value);
}
@ -289,8 +277,6 @@ public class AfterApproveSyncImsRule implements IRule<PMOAggVO> {
// 数值字段需要特殊处理空值
if (bodyNumFields.contains(column)) {
value = skipNullForNumber(value);
} else if (bodyTransferFields.contains(column)) {
value = transferBodyFields(column, value);
} else {
value = skipNull(value);
}
@ -366,60 +352,7 @@ public class AfterApproveSyncImsRule implements IRule<PMOAggVO> {
NCCForUAPLogger.debug("gyIms-PMO-bodySql = " + bodySql);
}
}
}
private String transferHeadFields(String column, Object value) throws BusinessException {
String result = "";
if (value == null) {
return "";
}
String userSql = " select user_code from sm_user where dr = 0 and cuserid = '[value]' ";
if ("approver".equals(column) || "billmaker".equals(column) || "creator".equals(column)) {
userSql = userSql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(userSql, new ColumnProcessor());
} else if ("pk_org".equals(column)) {
String sql = " select code from org_factory where nvl(dr,0) = 0 and pk_factory = '[value]' ";
sql = sql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
} else if ("cplanfactoryid".equals(column)) {
String sql = " select code from org_orgs where nvl(dr,0) = 0 and pk_org = '[value]' ";
sql = sql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
}
return result;
}
private String transferBodyFields(String column, Object value) throws BusinessException {
String result = "";
if (value == null || "".equals(value) || "~".equals(value)) {
return "";
}
String userSql = " select user_code from sm_user where dr = 0 and cuserid = '[value]' ";
if ("mocloser".equals(column)) {
userSql = userSql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(userSql, new ColumnProcessor());
} else if ("pk_org".equals(column)) {
String sql = " select code from org_orgs where nvl(dr,0) = 0 and pk_org = '[value]' ";
sql = sql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
} else if ("cmaterialvid".equals(column)) {
String sql = " select code from bd_material where nvl(dr,0) = 0 and pk_material = '[value]' ";
sql = sql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
} else if ("cunitid".equals(column) || "castunitid".equals(column)) {
String sql = " select code from bd_measdoc where nvl(dr,0) = 0 and pk_measdoc = '[value]' ";
sql = sql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
} else if ("cdeptid".equals(column)) {
String sql = " select code from org_dept where nvl(dr,0) = 0 and pk_dept = '[value]' ";
sql = sql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
} else if ("cinwarehouseid".equals(column) || "vbdef31".equals(column)) {
String sql = " select code from bd_stordoc where nvl(dr,0) = 0 and pk_stordoc = '[value]' ";
sql = sql.replace("[value]", value.toString());
result = (String) baseDAO.executeQuery(sql, new ColumnProcessor());
}
return result;
// logger.error("gyIms-PMO-res = " + result);
}